Commit Graph

26184 Commits

Author SHA1 Message Date
Cindy Zhou
5d793fb740 Enable cfi for 32bit arch
Enabling cfi for 32-bit arch; b/35157333 seems to have been resolved in b/67507331.

Bug: 158010610

Test: manual interaction with Wimbley device: youtube video, chrome
navigations, gmail
MPTS testing on Sargo

Change-Id: I79eeb7e880ea09d857f8339901b67f77243a575c
2021-03-10 17:10:21 -08:00
Devin Moore
d6eab6f827 Add bootconfig to kernel cmdline when BOARD_BOOTCONFIG not empty
The 'bootconfig' kernel cmdline parameter needs to exist for the kernel
to search for bootconfig.
If BOARD_BOOTCONFIG contains anything, then add the parameter to the
kernel cmdline.

Test: Boot cuttlefish and verify /proc/cmdline has 'bootconfig' after
removing it from cuttlefish BoardConfig.mk
Bug: 173815685

Change-Id: I112a2a8e02ba7265c5547d9244298e07f26985ba
2021-03-10 16:28:49 -08:00
Devin Moore
b6840067c4 Merge "Throw an error if androidboot.hardware is used for bootconfig" 2021-03-10 22:42:12 +00:00
Petri Gynther
1426cab468 Copy vendor_ramdisk[-debug].img to out/dist
Test: make
Change-Id: Ibac6424f600b77d222585c17a91d59fb6985df26
2021-03-10 13:22:29 -08:00
Petri Gynther
d7946d13f0 Add support for building vendor_ramdisk-debug.img
Existing BoardConfig.mk variable:
BOARD_BUILD_VENDOR_RAMDISK_IMAGE := true

generates:
out/target/product/<name>/vendor_ramdisk.img

Extend the above to additionally generate:
out/target/product/<name>/vendor_ramdisk-debug.img

as the two ramdisks should be built together.

Test: make
Change-Id: Ief572e30c9225d0f5569e9ff89096c69accafc7f
2021-03-10 13:22:29 -08:00
Treehugger Robot
40ea7379a8 Merge "Workaround for existing packages check failure when the generic product is used with ART prebuilts." 2021-03-10 19:13:43 +00:00
Devin Moore
2e43e34d53 Throw an error if androidboot.hardware is used for bootconfig
Bootconfig does not allow the keys to have values and subkeys at the
same time.
"androidboot.hardware" and "androidboot.hardware.*" subkeys have existed as
kernel cmdline parameters. We want to throw an error at build time when
"androidboot.hardware" is use in bootconfig because it may be a common
occurence while migrating to bootconfig.
"hardware" should be used instead, without the "androidboot" prefix.

Test: build with and without "androidboot.hardware=test" in
BOARD_BOOTCONFIG
Bug: 173815685

Change-Id: Ic62a86cb23c9d79dbdbacd18eed3449210566ce7
2021-03-09 16:59:33 -08:00
Colin Cross
6023b1944d Merge "Fix kati regen due to build_number.txt" 2021-03-10 00:50:47 +00:00
Yifan Hong
fd150d3dcc VINTF logs ends in .log suffix.
This is so that it can be viewed in the web
browser directly.

Test: pass
Change-Id: Ib35a93ab6beac550a593ec46814100ff851f32a5
2021-03-09 12:19:33 -08:00
Martin Stjernholm
e564ec3502 Workaround for existing packages check failure when the generic
product is used with ART prebuilts.

The prebuilt packages in packages/modules/ArtPrebuilt don't get
Android.mk entries in the `generic` product (as opposed to e.g.
`aosp_arm`), so the enforce-product-packages-exist check fails there.

Exclude the ART APEX modules from the check as a workaround. It's also
necessary to remove the check for superfluous allow list entries, since
which modules are actually missing depends on many other variables (see
runtime_libart.mk).

Test: m nothing TARGET_PRODUCT=generic \
      SOONG_CONFIG_art_module_source_build=false
Bug: 172480615
Bug: 182105280
Change-Id: Id67278615f3e7c64c7658bbf1b2aa71ed6b381da
2021-03-09 12:49:06 +00:00
Ulyana Trafimovich
d534e22d10 Merge "Disable verify_uses_libraries check if dexpreopt is globally disabled." 2021-03-09 08:40:23 +00:00
Po Hu
6e64c14ce9 Fix kati regen due to build_number.txt
Do NOT touch build_number.txt if BUILD_NUMBER is explicitly set
but not changed from last build.

Bug: 182221512
Test: BUILD_NUMBER=123 m nothing
Change-Id: Ic88f6e0d2b9767d84e1ec5c826018d1ea08c0fc0
2021-03-09 14:11:05 +08:00
Petri Gynther
728e0bd468 Cleanup: fileslist target commands
Remove unnecessary @ and $(hide) from fileslist target commands.
Keep @echo to print that line with a progress bar [ x% x/y ].

Test: make
Change-Id: I65c0c3c9c045cc7ca2c2801ee6b3b0c996be59a9
2021-03-08 14:12:35 -08:00
Petri Gynther
4c063e33c8 Cleanup: ram disk -> ramdisk
Test: make
Change-Id: I61740a309c6637c10b935806f7b379cfaf3ae855
2021-03-07 00:52:46 -08:00
Petri Gynther
6a6d6217d7 Cleanup: internal vendor ramdisk targets
Test: make
Change-Id: I356e82ab9b32164ff734567f489faf31021dfc4b
2021-03-07 00:51:40 -08:00
Petri Gynther
828828ba07 Add support for building vendor_ramdisk.img
Allow BoardConfig.mk to set:
BOARD_BUILD_VENDOR_RAMDISK_IMAGE := true

to build:
out/target/product/<name>/vendor_ramdisk.img

This is done to support GKI device kernel development.

Kernel developers build vmlinux + DTB + GKI kernel modules locally
and then use kernel build tools to output:

* vmlinux + ramdisk.img => boot.img
* GKI kernel modules + DTB + vendor_ramdisk.img => vendor_boot.img

In other words, kernel developers use ramdisk.img and vendor_ramdisk.img
as prebuilts for building flashable boot.img and vendor_boot.img
directly from the kernel development environment.

Test: make vendorramdisk with BOARD_BUILD_VENDOR_RAMDISK_IMAGE := true
Test: make vendorramdisk with BOARD_BUILD_VENDOR_RAMDISK_IMAGE omitted
Change-Id: Id67839887b6bf608f4a5f13384c551c12ee9fdbd
2021-03-05 17:45:03 -08:00
Martin Stjernholm
b579ef2cf9 Merge "Always use ART sources for Fuchsia." 2021-03-05 22:46:22 +00:00
Martin Stjernholm
399fc37446 Always use ART sources for Fuchsia.
Fuchsia currently adds a number of ART internal packages in
device/google/fuchsia/fuchsia.mk, so it cannot use prebuilts.

Test: m TARGET_PRODUCT=fuchsia_arm64 \
        TARGET_BUILD_VARIANT={user,eng} nothing
  with SOONG_CONFIG_art_module_source_build set to false by default.
Bug: 172480615
Change-Id: I6af54accd8cc724b92072ae112960ace8faa70d5
2021-03-05 15:59:20 +00:00
Treehugger Robot
5d8217afb7 Merge "Fix m bootimage_test_harness failure" 2021-03-05 15:03:39 +00:00
Ulya Trafimovich
6f06f9ea7a Disable verify_uses_libraries check if dexpreopt is globally disabled.
Without dexpreopt the check is not necessary, and although it is good to
have, it is difficult to maintain on non-linux build platforms where
dexpreopt is generally disabled (the check may fail due to various
unrelated reasons, such as a failure to get manifest from an APK).

Bug: 181570790
Bug: 132357300

Test: Emulate the failed no-dexpreopt build in b/181570790:
  - modify verify_uses_libraries to make a subcommand fail
  - check that the build with dexpreopt fails:
    $ lunch cf_x86_64_phone-userdebug && m
  - set `WITH_DEXPREOPT := false` in make/core/board_config.mk
  - check that the build without dexpreopt succeeds (allow boot image
    and system servert dexproept to avoid unrelated build failures, this
    does not affect verify_uses_libraries):
    $ WITH_DEXPREOPT_BOOT_IMG_AND_SYSTEM_SERVER_ONLY=true \
      lunch cf_x86_64_phone-userdebug && m

Change-Id: Ic456be4e3047a60415a21fae658077165fb03165
2021-03-04 12:35:02 +00:00
Bowgo Tsai
f85e68f554 Fix m bootimage_test_harness failure
Commit I66b57de91042bfd56ba54a3659843d8cf7873955 added the support
for different boot partition sizes but didn't consider the case of
building boot-test-harness.img. This CL fixes this by allowing
'boot-test-harness.img' as a boot image variant.

Bug: 181618515
Test: `m bootimage_test_harness` pass
Change-Id: I190d3bf26725ac54999758efbca66a94c5cd5c86
2021-03-04 14:41:16 +08:00
Petri Gynther
b10f7d2a9c Merge "Rename vendor-ramdisk to vendor_ramdisk" 2021-03-04 04:40:04 +00:00
Petri Gynther
dc24d88aa9 Rename vendor-ramdisk to vendor_ramdisk
Rename to get consistent ramdisk directory naming in
out/target/product/<name>:
  debug_ramdisk
  ramdisk
  vendor_debug_ramdisk
  vendor_ramdisk

Test: build and inspect out/target/product/<name>
Change-Id: I81d8f2cafe5e1b9024196cd74772b78d4a4aec58
2021-03-03 13:56:48 -08:00
Xin Li
2b1c89090f Merge "Merge RQ2A.210305.007" 2021-03-03 21:41:41 +00:00
android-build-team Robot
f1ea820b87 Version bump to RQ2A.210405.005 [core/build_id.mk]
Change-Id: I1fb1443acb22211b66326d3e4ebb80b6295a282c
2021-03-03 01:37:48 +00:00
Martin Stjernholm
efe6a4d748 Add a product variable to override APEX modules in boot jar lists.
Test: m droid SOONG_CONFIG_art_module_source_build=false
      on internal branch
Bug: 180325915
Change-Id: I3ab64860fe4a60468ec8dad6517d1d67f72f13c7
2021-03-02 20:53:59 +00:00
Treehugger Robot
7e3f5430a8 Merge "Include android_soong_config_vars.mk in the make (kati) step." am: 36c1435ec4
Original change: https://android-review.googlesource.com/c/platform/build/+/1595337

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Ifc7f272e273f54df843650e7e74fcad40a76994a
2021-03-02 19:58:45 +00:00
Treehugger Robot
f2507339e5 Merge "Fix typo in sysprop.mk and Changes.md" am: 1996d581d8
Original change: https://android-review.googlesource.com/c/platform/build/+/1612294

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Iaac0c7796e5ed0c91df42f14d1d23bf861e74ac0
2021-03-02 19:58:12 +00:00
Treehugger Robot
36c1435ec4 Merge "Include android_soong_config_vars.mk in the make (kati) step." 2021-03-02 09:20:37 +00:00
Donghyun Jo
8c65ef6574 Fix typo in sysprop.mk and Changes.md
android_info_pro -> android_info_prop
partititon -> partition
PRODUCT_SYSTEM_PROPERITES -> PRODUCT_SYSTEM_PROPERTIES

Test: build and manual test

Signed-off-by: Donghyun Jo <donghyun.jo@samsung.com>
Change-Id: I0b7f0566aaa5ce8844003bb4f373389c20ddeb88
2021-03-02 08:51:03 +09:00
Martin Stjernholm
786bbea407 Include android_soong_config_vars.mk in the make (kati) step.
Test: `m nothing` with https://r.android.com/1592872
Bug: 172480615
Change-Id: I960cd234a5dd607f4f5af6bb68ae15b9bd104e7a
2021-03-01 23:14:10 +00:00
Xin Li
3f904dd415 Merge RQ2A.210305.007 into stage.
Bug: 180401296
Merged-In: I6d6542306c51ac1682f02cbce6701688d2bdbea2
Change-Id: I1c3a82d5c420fbb97e81379034947d35024b0925
2021-03-01 00:54:23 -08:00
Treehugger Robot
38cbde20c0 Merge "Add dependency from target-files.zip to rsync'd recovery ramdisk files" am: 0e0307b0a2
Original change: https://android-review.googlesource.com/c/platform/build/+/1606554

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I3252e0bdce61ee240dd42d6a287705433956aa9a
2021-02-25 06:30:02 +00:00
Treehugger Robot
0e0307b0a2 Merge "Add dependency from target-files.zip to rsync'd recovery ramdisk files" 2021-02-25 06:03:01 +00:00
Colin Cross
e643120c75 Add dependency from target-files.zip to rsync'd recovery ramdisk files
target-files.zip may indirectly depend on the rsync'd recovery ramdisk
files when BOARD_MOVE_RECOVERY_RESOURCES_TO_VENDOR_BOOT is true.

Bug: 181095653
Test: manual
Change-Id: I673bb48b1fbb7a54455cda411f9444f05ddaa24f
2021-02-24 11:44:55 -08:00
Joe Onorato
2dba15bd2e Merge "ALLOW_RULES_IN_PRODUCT_CONFIG" am: 6af489099a
Original change: https://android-review.googlesource.com/c/platform/build/+/1598613

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Id5d2194f8d3e8b9cd5f5d7499cd27041d5919d15
2021-02-24 18:26:11 +00:00
Joe Onorato
6af489099a Merge "ALLOW_RULES_IN_PRODUCT_CONFIG" 2021-02-24 17:43:37 +00:00
Devin Moore
93934ba177 Merge "Support vendor bootconfig creation" am: fd4f3c4c63
Original change: https://android-review.googlesource.com/c/platform/build/+/1579696

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I7528a81e41df69cd932a40eaeeea7a1651f366b8
2021-02-24 16:40:07 +00:00
Devin Moore
fd4f3c4c63 Merge "Support vendor bootconfig creation" 2021-02-24 15:56:48 +00:00
Christoffer Quist Adamsen
d3fa1a2a5e Merge "Allow missing classes in R8 mk builds" am: 3bae96b3b0
Original change: https://android-review.googlesource.com/c/platform/build/+/1598221

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I91ba1c91e33a8364a0ec11241a14358128f7c1e5
2021-02-24 08:14:57 +00:00
Christoffer Quist Adamsen
3bae96b3b0 Merge "Allow missing classes in R8 mk builds" 2021-02-24 07:25:18 +00:00
Joe Onorato
01dfa5b3df Merge "Generate FlatConfig objects from GenericConfig objects." am: fbabf70394
Original change: https://android-review.googlesource.com/c/platform/build/+/1580999

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I18eff3e57f0d00b2858cd9e755cbcc8747bb0cc3
2021-02-24 06:57:54 +00:00
Joe Onorato
749c1955a2 ALLOW_RULES_IN_PRODUCT_CONFIG
If ALLOW_RULES_IN_PRODUCT_CONFIG is set, pass it to kati via
.KATI_ALLOW_RULES, to issue warnings or errors about rules
during product configuration.

Test: CHECK_FOR_RULES=true ./build/make/tools/product_config/test.sh
Test: ALLOW_RULES_IN_PRODUCT_CONFIG=error m nothing
Test: ALLOW_RULES_IN_PRODUCT_CONFIG=warning m nothing
Test: m nothing
Change-Id: I35dd9ffe4ec71f97beaa8b8a2f10d80502088af2
2021-02-23 22:40:39 -08:00
Joe Onorato
fbabf70394 Merge "Generate FlatConfig objects from GenericConfig objects." 2021-02-24 05:57:33 +00:00
Treehugger Robot
7f4ae8df3c Merge "Creates a combined split-sepolicy file in merge_target_files.py." am: 2793fd2e6d
Original change: https://android-review.googlesource.com/c/platform/build/+/1578904

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I33de196cbbf5285cdfaa7a637db1ecb9381f6bf6
2021-02-24 04:26:56 +00:00
Treehugger Robot
2793fd2e6d Merge "Creates a combined split-sepolicy file in merge_target_files.py." 2021-02-24 03:50:44 +00:00
Treehugger Robot
e15ec38deb Merge "Add non-fatal mode for verify_uses_libraries check." am: c66465a4b0
Original change: https://android-review.googlesource.com/c/platform/build/+/1592373

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I36b852e328b5cd7f993766be01db2835dc67a80c
2021-02-24 01:30:04 +00:00
Treehugger Robot
c66465a4b0 Merge "Add non-fatal mode for verify_uses_libraries check." 2021-02-23 20:45:42 +00:00
Daniel Norman
48603ff158 Creates a combined split-sepolicy file in merge_target_files.py.
This follows the same steps as OpenSplitPolicy() in
system/core/init/selinux.cpp on the device.

Bug: 178864050
Test: merge_target_files for R+S and S+S devices
Test: test_merge_target_files
Change-Id: Ia41a436bfda8e2cb65706122f0ff3805b99d16e1
2021-02-23 11:41:29 -08:00
Devin Moore
50509015bf Support vendor bootconfig creation
Gather all BOARD_BOOTCONFIG parameters.
Create vendor-bootconfig.img with parameters seperated by newlines. Pass
that file to mkbootimg as --vendor_bootconfig to add it to the
vendor_boot.img.

Test: Add BOARD_BOOTCONFIG parameters in cuttlefish .mk file
      Check vendor-bootconfig.img for expected output
      Verify expected vendor_boot.img format with:
      unpack_bootimg --boot_image vendor_boot.img
Test: Update Cuttlefish bootloader to handle the new vendor_boot.img and
      check /proc/bootconfig for the expexted parameters.
Bug: 173815685
Change-Id: Iaa9b71b4bc64375777a5353396e83bb2beb25c47
2021-02-23 07:42:05 -08:00