Commit Graph

30 Commits

Author SHA1 Message Date
Bowgo Tsai 3ac95b53f4 Revert "Fix build error for sdk_gphone_x86_64-userdebug"
This reverts commit 6924b25729.

Reason for revert: with the following fix, this workaround is no longer needed.
  https://android-review.googlesource.com/c/platform/build/+/762663

Bug: 112322265
Change-Id: I07363f6a5aa1697b6f7702343f3120e1049f07d8
Test: build sdk_gphone_x86_64-userdebug
2018-10-04 04:35:55 +00:00
Bowgo Tsai 6924b25729 Fix build error for sdk_gphone_x86_64-userdebug
Increases BOARD_SYSTEMIMAGE_PARTITION_RESERVED_SIZE to 128MB to fix
the build break. This is because we enabled AVB signing in the following
CL. And verified boot metadata will consume the reserved size in current
build system.

  https://android-review.googlesource.com/c/platform/build/+/745691

Bug: None
Test: build sdk_gphone_x86_64-userdebug
Change-Id: If1f44dccbc3a69b1b38a23e979f50c2c52401a25
2018-09-11 19:23:14 +08:00
Bowgo Tsai 9d28638cfc Enable AVB signing on GSI
In current GSI builds, AVB signing is not allowed.
We should allow signing GSI image, while building a vbmeta.img with
AVB_VBMETA_IMAGE_FLAGS_VERIFICATION_DISABLED (flag 2).

When need to disable AVB, use the vbmeta.img above together with the
GSI. When need enable AVB on GSI, include the GSI public key into the
device-specific vbmeta.img. Note that GSI is a chain partition so the
keys used to sign GSI and vbmeta.img are different.

Bug: 112293933
Test: build aosp_arm64-userdebug, checks flag 2 is set in vbmeta.img
      and there is AVB HASHTREE in system.img
      `avbtool info_image --image $OUT/system.img`
      `avbtool info_image --image $OUT/vbmeta.img`

Change-Id: If1eff317621882994e7dcbf37cd35f5bfa16b69a
2018-09-06 09:41:42 +08:00
Treehugger Robot aa47189e1c Merge "Remove default BUILD_BROKEN_DUP_RULES := false" 2018-08-14 23:32:20 +00:00
Dan Willemsen d1f319bc48 Remove default BUILD_BROKEN_DUP_RULES := false
This is now false by default.

Bug: 77611511
Test: build_test on git_master
Change-Id: I37ad52a3846c77da184725e7d6f4daae9f4b7f1c
2018-08-14 13:23:49 -07:00
Colin Cross a110579e31 Remove TARGET_USES_MKE2FS
Nothing reads TARGET_USES_MKE2FS any more, mke2fs is always used.
Remove the requirement that TARGET_USES_MKE2FS is set, and remove
the places it is set.

Bug: 112241651
Test: m checkbuild
Change-Id: Ibdca062bbe7dcd19ba8f7ee7f8291ce746b74e65
2018-08-13 17:40:26 +00:00
SzuWei Lin a2da9a3361 Enable dyanmic image size for GSI
The original size number of GSI are fixed size. Change to give
size by the content with appending 64M bytes space.

Bug: 71970853
Test: `make systemimage` and check the out system.img
Change-Id: I345f5e22c2fee7b553fc3337e9bff0ba28f579e1
Merged-In: I345f5e22c2fee7b553fc3337e9bff0ba28f579e1
2018-08-03 14:47:43 +08:00
SzuWei Lin 494d2fe97b Enable metadata in GSI
am: 5d356e2397

Change-Id: I2086d56e42b2318a8080d16f13d48c9ee4a23bf1
2018-05-30 11:05:42 -07:00
SzuWei Lin 5d356e2397 Enable metadata in GSI
Add BOARD_USES_METADATA_PARTITION to GSI to enable metadata folder
under the root folder.

Bug: 80407843
Bug: 79781913
Test: Boot on a Pixel device with GSI applied the patch
Change-Id: I5544b76b54300aa5a87aa4fa3c0ec6feff13a554
2018-05-30 17:01:49 +08:00
Dan Willemsen c7ecbfe34d Merge "Revert "Remove flags to turn overriding commands into errors"" am: 5c19615b55
am: 36850e37c9

Change-Id: Ic762fafaae579bd50960584878a4408ef1c47247
2018-04-06 17:21:02 -07:00
Dan Willemsen 07a7227776 Revert "Remove flags to turn overriding commands into errors"
This reverts commit 1d8e86139c.

Reason for revert: fixed art + mac bug

Change-Id: I53a4d490ef32270aaaa8051f5c44958d0bec6469
Test: on mac: m nothing
2018-04-06 21:00:17 +00:00
Dan Willemsen 19f96c9297 Merge "Remove flags to turn overriding commands into errors" am: dc348501f0
am: 9ea760ecd2

Change-Id: I155f5d5d4993fc12e11f5f7940905758c0be22f7
2018-04-06 11:46:32 -07:00
Dan Willemsen 1d8e86139c Remove flags to turn overriding commands into errors
This is a partial revert of I43b645658f468c23a5b9ebcfcd9d4516537db540

On at least a generic_x86 build internally:

art/build/Android.gtest.mk:121: error: overriding commands for target `Uncompressed', previously defined at art/build/Android.gtest.mk:101

Bug: 77611511
Test: none
Change-Id: I78ca65e6f0c81f09e7da848eda797b3a8f97a521
2018-04-06 10:50:45 -07:00
Dan Willemsen d9a2594d1f Merge "Allow boards to turn overriding commands into an error" am: 3c93dbfa61
am: 1533d14754

Change-Id: I032fbc08fc17fb4c4f5d7f4e1f2ace0560407276
2018-04-06 09:12:29 -07:00
Dan Willemsen ac406f5c68 Allow boards to turn overriding commands into an error
Many boards have warnings like this, saying that we defined a build
rule, but later something else came in and overrode it with something
else:

art/build/Android.gtest.mk:677: warning: overriding commands for target `test-art-target-gtest-cmdline_parser_test'
art/build/Android.gtest.mk:674: warning: ignoring old commands for target `test-art-target-gtest-cmdline_parser_test'

Beyond the obvious problem of replacing the rule with something else,
target-specific variables can be combined as well, leading to some very
strange problems.

Since so many boards still have problems like this, but we don't
currently have any global problems, add a flag so that we can mark
boards as not broken. This should prevent regressions while we clean up
the individual problems.

Once the non-broken devices number significantly more than the broken
devices, we'll switch this default. And once they're all cleaned up this
variable will become obsolete, and these warnings will always be errors.

Bug: 77611511
Test: lunch aosp_arm-eng; m nothing
Test: lunch aosp_marlin-eng; m nothing
Test: build_test on all downstream branches
Change-Id: I43b645658f468c23a5b9ebcfcd9d4516537db540
2018-04-05 17:26:35 -07:00
SzuWei Lin d24396d4df Remove adding /odm from GSI makefile
The odm/ is default created under the root directory.
We don't need adding /odm mount pointer now in GSI.

Bug: 77297861
Test: build aosp_arm64_ab-userdebug and boot on a Pixel 2 device.
Change-Id: Ied48439f366acc33595b958b75c2f30d8f6ad57e
2018-03-30 13:39:49 +08:00
Nicolas Geoffray a66c727b7b Merge "Remove copy/paste code." am: 08e7159672
am: 0cd49dcaf2

Change-Id: I5a8911c30a563f6a49880ae79790e30d1b161c04
2018-01-11 09:26:14 +00:00
Nicolas Geoffray b7c5e3bbb9 Remove copy/paste code.
The options passed are already the default.

This is also to reduce the difference between user and userdebug
related to dexopt.

Test: m
Change-Id: Id62c38f145909b511761b471160028915000fc23
2018-01-10 10:01:11 +00:00
SzuWei Lin 2a1e87c92a Merge "Correct some GSI settings to board makefile" am: b2e9b2b34f
am: c32a3396a9

Change-Id: Id008f877e63bf77192396f706b27c291b5c48cab
2018-01-05 08:26:34 +00:00
SzuWei Lin 83890eb262 Correct some GSI settings to board makefile
Some setting currently in target/product/treble_common.mk, but
they should be board config variables. So, move them to
target/board/treble_common.mk.

Bug: 70951849
Test: Build pass and check on a Pixel device with GSI
Change-Id: I511fbc481583555182dab76503e67c5f56efa8eb
Merged-In: I511fbc481583555182dab76503e67c5f56efa8eb
2017-12-26 03:36:33 +00:00
SzuWei Lin 7494beccb3 Merge changes I8f20db07,Id3a8dd20,I0275a5d4 am: 6553fd6cad
am: 90cb321f88

Change-Id: I6df8c64d5fb0176b09e77eed0f90f569586814d5
2017-12-12 05:02:32 +00:00
SzuWei Lin 596c026fd6 Enable VNDK runtime checking
GSI enabled "BOARD_VNDK_VERSION := current" on O-MR1,
but disabled VNDK runtime checking. This patch enables the checking

Bug: 69393797
Test: Build pass and boot to home screen on a Pixel device with GSI
Change-Id: I8f20db0798a07e63c453a9fe64638b99b41cd166
Merged-In: I8f20db0798a07e63c453a9fe64638b99b41cd166
(cherry picked from commit 7323f1d4ec)
2017-12-11 02:05:50 +00:00
SzuWei Lin 00033a8bfd Merge "Add make_f2fs into GSI" into oc-mr1-dev
am: 4c06d64955

Change-Id: I4a055848eb7652ecc567b9036976510b42a4fb5d
2017-10-19 17:41:34 +00:00
SzuWei Lin c867f1b681 Add make_f2fs into GSI
The userdata partition of some devices is formatted in f2fs,
and could be formatted in runtime. This is a configurable
feature of AOSP, so GSI enables the setting:

    TARGET_USERIMAGES_USE_F2FS

to support it.

Bug: 67916560
Bug: 66925248
Test: build pass and check the make_f2fs in the image
Test: boot a pixel device with GSI to home screen
Change-Id: Id350c4e07a9c0dc0f0a547b3146626053c88b8ab
2017-10-19 02:07:35 +00:00
Jiyong Park 4b61a94f70 Don't reserve size for bad blocks when checking image size
When checking *.img size with the partition size, the build system
reserves additional bits for spare bits and spare bad blocks.

However, for emmc and ufs, the space bits and blocks are entirely
managed by the underlying controller and thus not visible from outside
of the controller. In fact the check routine was made for legacy MTD
storages where raw flash blocks are directly exposed.

This makes the size checking a little bit conservative in modern devices.
Builds were failed even though the *.img can actually fit into the
partition. To handle this problem, the additional size is no longer
reserved when checking *.img size with the partition size.

This change also removes following build flags that are meaningful
only for devices having MTD storages:
BOARD_NAND_PAGE_SIZE
BOARD_NAND_SPARE_SIZE
Further use of them breaks the build

Bug: 35790399
Bug: 66399382
Test: build

Merged-In: I954bf261441b53844e75d05788866f1692a2ad43
Change-Id: I954bf261441b53844e75d05788866f1692a2ad43
2017-10-05 09:32:01 +09:00
SzuWei Lin 04f6ff5adb Disable VNDK runtime checking
GSI enabled the VNDK, but devices need to fix the depedency of
libraries. Before that, disable the VNDK runtime checking temporary.

Bug: 65190702
Test: Test on a device which doesn't fix VNDK dependency with GSI
Change-Id: Ib942a7efdc75beca93c60d1e0484835342efcfd2
2017-09-20 14:28:18 +08:00
Bowgo Tsai 882c99a33b GSI: adds /odm mount point in root dir
Bug: 64700195
Test: boot A/B device with /odm
Change-Id: Ie014a052a333b2cb8d89bc43e4326be81e638dcd
2017-08-18 16:18:35 +08:00
SzuWei Lin 3cbe82df5f Apply vndk_package to generic system image
Add vndk_package into PRODUCT_PACKAGES, which includes
HAL interfaces, VNDK, VNDK-SP and LL-NDK.

vndk_package increases the total size of GSI content, so
changes the system partition size of:

* 64 bits projects to 1.5GB
* 32 bits projects to 1.0GB

Bug: 64654641
Test: build all GSI projects
Change-Id: I3c66c966eceebd63ee19f6a3de778beed0be6de5
2017-08-17 15:12:53 +08:00
SzuWei Lin cc1d9c35fc Reduce the system partition size of generic system images
Some device has small ROM size, so the GSI should be as small as
possible. The patch change the image sizes to be:

- 64 projects (default):    1.25GB (1280MB)
- 32 projects (default):    0.75GB  (768MB)
- ARM32 projects:                    734MB

Bug: 64458958
Test: Build all GSI projects
Change-Id: I7f7a266e48e99b0b4d5c6a84b8187b56e4482c94
2017-08-10 17:05:45 +08:00
SzuWei Lin 80755694f3 Move common settings in BoardConfig.mk into a common makefile
Bug: 63878637
Test: Build pass and boot into home screen with aosp_arm64_ab of GSI
Change-Id: I1b843fcccd83e2e30eba66451b10f093ccfd458f
2017-08-10 15:03:21 +08:00