Commit Graph

67394 Commits

Author SHA1 Message Date
Ulya Trafimovich 2bf587713b Consolidate manifest_check for different module types.
Move manifest_check (a.k.a. verify_uses_libraries check) from makefiles
for specific module types to common makefile dex_preopt_odex_install.mk,
which is included by all Java modules that may require dexpreopt. If a
modules locally disables dexpreopt, it still goes through manifest_check
(unless dexpreopt is globally disabled or the module has no Java code).

This CL allows to have manifest_check and dexpreopt in the same makefile
(which is needed for a follow-up CL that will reuse dexpreopt variables
for manifest_check).

Bug: 132357300
Test: lunch cf_x86_64_phone-userdebug && m
Change-Id: Ia217cfc247ae43d8fc716bfc1fe9dcce1d00aa7f
2021-03-19 11:00:51 +00:00
Treehugger Robot 5dcd959a90 Merge "Define ro.board.first_api_level property" 2021-03-19 08:50:36 +00:00
Treehugger Robot 6a1722dddd Merge "Update size limit for madvising odex, vdex files" 2021-03-19 08:48:33 +00:00
Inseob Kim 19b0ef8949 Merge "Add sepolicy related variables" 2021-03-19 00:07:58 +00:00
Justin Yun 25dc5ea096 Merge "Define __ANDROID_VENDOR__ and __ANDROID_PRODUCT__" 2021-03-18 23:33:43 +00:00
Jagadeesh Pakaravoor 3a10cc5c11 Update size limit for madvising odex, vdex files
Update the size limit for madvising (MADV_WILLNEED)
odex and vdex files to 100MB.

Art file continues to be madvised fully, with a UINT_MAX limit.

Test: presubmit
Bug: 178853586
Change-Id: Ie46a0658bf30a6a9908ab30b28ce097e434e7e2d
2021-03-18 15:29:01 -07:00
Tianjie Xu c63bf0ad7a Merge "Check that sum of DAP groups is smaller than super" 2021-03-18 17:33:29 +00:00
Ulyana Trafimovich f0e648688a Merge "Add missing dependency on aapt." 2021-03-18 17:28:12 +00:00
Ulya Trafimovich 78d96e8742 Add missing dependency on aapt.
The missing dependency on AAPT did not cause build failures in AOSP,
because the build order happens to be such that AAPT is always built by
the time it's needed. But this is accidental and needs to be fixed.

Bug: 183010666
Bug: 132357300
Test: treehugger
Change-Id: I170e878bf36aafbdb93e9ba54faffd455d3e33c2
Merged-In: I8c78e48345bee5b77de41af03bdac77c402d04a1
2021-03-18 12:36:15 +00:00
Treehugger Robot 2245dee0d7 Merge "verity_utils.py is a standalone binary" 2021-03-17 23:37:04 +00:00
Yifan Hong 2b4d131e15 Merge "Add PRODUCT_OTA_ENFORCE_VINTF_KERNEL_REQUIREMENTS to check_vintf_compatible_log" 2021-03-17 18:30:48 +00:00
Inseob Kim a3ae471485 Add sepolicy related variables
Bug: 33691272
Test: build
Change-Id: Ifbcd2c49d6ecf6d7e69d6b95bace168eccd17f13
2021-03-17 18:04:56 +09:00
Jiyong Park b92b8f48fc verity_utils.py is a standalone binary
verity_utils.py gets an entry point and becomes a host binary. This is
to support signing images from the "bootimg" module type. Previously
this was done by directly invoking "avbtool" from the soong module, but
that required people to know the partition_size priori. The partition
size may not be known before actually building the partition image
especially when the partition is not for a physical partition but for a
partition in a composite image.

verity_utils.py, when the partition_size is not given, is capable of
calculating the mininum required partition size based on the size of the
unsigned input image file.

Bug: 180676957
Test: m microdroid_boot-5.10
Change-Id: I7bef292fb141c90899b7bdc0748895f95f964829
2021-03-17 16:28:16 +09:00
Justin Yun f39f080c80 Define ro.board.first_api_level property
When a device define BOARD_SHIPPING_API_LEVEL with an API level, it
sets a vendor property ro.board.first_api_level in vendor/build.prop.
This is for the GRF devices. Non-GRF devices must not define this
property.

Bug: 176950752
Test: getprop ro.board.first_api_level
Change-Id: I6921d7fe6acca3f73a5fd0fbaa3d4f1e9394541b
2021-03-17 15:00:23 +09:00
Tianjie 8ba4270e24 Check that sum of DAP groups is smaller than super
The maximum size of all dynamic partition groups should not exceed
the super size - DAP metadata size. Today the configuration of
some devices don't take the metadata into acount. So turn the CheckLe
into CheckLt.

Also, display a warning if the reserved size for DAP metadata is less
than 1M.

Bug: 182431975
Test: mm -j32 check-all-partition-sizes
Change-Id: Ie278f224321083e457d68da000c2b22ec8a54085
2021-03-16 22:13:13 -07:00
Treehugger Robot 69973f0aa1 Merge "Add "ktgrep" for Kotlin" 2021-03-16 19:26:42 +00:00
Colin Cross 67f1a24b87 Merge "Do not pack symbolic link instead copying" 2021-03-16 18:14:45 +00:00
Justin DeMartino 0f05976472 Merge "Allow extending of the list of directories to be scanned for VSDK" 2021-03-16 15:12:17 +00:00
Ulyana Trafimovich d3109e2514 Merge "Reimplement verify_uses_libraries.sh in manifest_check.py." 2021-03-16 13:37:03 +00:00
Taesu Lee ea0cecd9e4 Add "ktgrep" for Kotlin
New ktgrep is added and sgrep/treegrep also scan *.kt files.

Test: kgrep/sgrep/treegrep for Kotlin files.

Signed-off-by: Taesu Lee <taesu82.lee@samsung.com>
Change-Id: Ie615aa86c4958310785392f18ee7bddaf64706a9
2021-03-16 15:10:34 +09:00
Mitch Phillips 82a4cfb397 Merge "Add MTE ELF note to makefile-generated native tests." 2021-03-15 21:33:07 +00:00
Mitch Phillips 1a8405f827 Add MTE ELF note to makefile-generated native tests.
The MTE ELF note is intended to be added to all aarch64 test binaries.
This is already implemented for cc_test in soong, but we should also add
it to makefile-generated tests.

Bug: 156029370
Bug: 181133973

Test: atest CtsBionicTestCases on QEMU+MTE, observe previously-failing
      tests will now succeed.
Test: m camera_client_test; readelf -t <snip>/camera_client_test | grep
      memtag, make sure there's the elf note.

Change-Id: I2e7c4d1379ccdef04f05dd7aff675e6834d4799b
2021-03-15 10:45:05 -07:00
Ulya Trafimovich a2404510af Reimplement verify_uses_libraries.sh in manifest_check.py.
Previously there were two different scripts that did similar things:
1) build/soong/scripts/manifest_check.py
2) build/make/core/verify_uses_libraries.sh

Both scripts extracted <uses-library> tags and `targetSdkVersion` from
the manifests of Java modules, but 1) worked for XML manifests, and 2)
worked for APKs. This CL reimplements the functionality from 2) in 1),
so that one script can handle both XML manifests and APKs.

Bug: 132357300

Test: lunch cf_x86_64_phone-userdebug && m && launch_cvd \
      adb wait-for-device && adb root && adb logcat \
      | grep -E 'ClassLoaderContext [a-z ]+ mismatch'
      # empty grep output, no errors

Change-Id: I386aa1a37699182cdf6f3f94ef8aa7b96a4017d3
2021-03-15 13:50:57 +00:00
Justin Yun 69f7191d5d Define __ANDROID_VENDOR__ and __ANDROID_PRODUCT__
__ANDROID_VNDK__ is defined for the modules that are able to use the
VNDK libraries. As both product and vendor variants define
__ANDROID_VNDK__, we don't know if a module is built for vendor or
product on build time.

__ANDROID_VENDOR__ and __ANDROID_PRODUCT__ macros can be used to
specify the image-variant-dependent codes.

Bug: 180646847
Test: m nothing
Change-Id: I9a37607b1e1e4e16eab02fb6c96d1a92158c96b8
2021-03-15 18:17:35 +09:00
goodway.wang_cp 50acc66276 Do not pack symbolic link instead copying
Change-Id: I43f56276541addfd6063655e53f21fe483780bc1
Signed-off-by: goodway.wang_cp <sz755cp2369@gmail.com>
2021-03-15 17:13:50 +08:00
Treehugger Robot 4d71d70496 Merge "Enable madvising of odex, vdex and art files" 2021-03-13 02:13:52 +00:00
Devin Moore a74a5a19bf Merge "Add bootconfig to kernel cmdline when BOARD_BOOTCONFIG not empty" 2021-03-12 22:57:58 +00:00
Jagadeesh Pakaravoor bee9f1d3f7 Enable madvising of odex, vdex and art files
Enable madvsing odex, vdex and art files to MADV_WILLNEED by setting the
size limits to UINT32_MAX.

Test: presubmit
Bug: 178853586
Change-Id: I7647a4be214dcd43341f216aba0a7791f877e379
2021-03-12 13:20:09 -08:00
Justin DeMartino f15053ee39 Allow extending of the list of directories to be scanned for VSDK
Bug: 180925851
Test: m nothing, manually
Change-Id: I499f084f04e45eb719882be97e3a581ff868cc98
2021-03-12 19:38:14 +00:00
Treehugger Robot b7ade64e3f Merge "Trigger data wipe on spl-downgrade as well" 2021-03-12 18:50:38 +00:00
Cindy Zhou e48dccaa83 Merge "Enable cfi for 32bit arch" 2021-03-12 12:41:39 +00:00
Treehugger Robot c2643ead16 Merge "check_all_partition_sizes_log -> .log" 2021-03-12 06:57:08 +00:00
David Anderson 0260435d70 Merge "Add --disable_vabc to ota_from_target_files help text." 2021-03-12 02:51:22 +00:00
Yifan Hong d11953c3b7 check_all_partition_sizes_log -> .log
So that it can be viewed directly in the web browser.
Test: pass

Change-Id: Ic90a5d1511153a74726f1bdee5d9a058756f2d19
2021-03-11 14:47:59 -08:00
David Anderson 45b4230726 Add --disable_vabc to ota_from_target_files help text.
Bug: N/A
Test: N/A
Change-Id: Ib8f9cd5dae746b0f2dac15d4de378116f4b93178
2021-03-11 13:01:31 -08:00
Petri Gynther 3296b3136e Merge changes I899810c7,If73b15d7
* changes:
  Add vendor_dlkm, odm, odm_dlkm to dynamic partition filter
  Fix typo: DLKIMMAGE
2021-03-11 20:00:25 +00:00
Petri Gynther 345294f459 Merge changes Ibac6424f,Ief572e30
* changes:
  Copy vendor_ramdisk[-debug].img to out/dist
  Add support for building vendor_ramdisk-debug.img
2021-03-11 19:55:02 +00:00
Treehugger Robot e4adbd3306 Merge "[LSC] Add LOCAL_LICENSE_KINDS to build/make" 2021-03-11 09:51:40 +00:00
Bob Badour a8cf0e040e [LSC] Add LOCAL_LICENSE_KINDS to build/make
Added SPDX-license-identifier-Apache-2.0 to:
  core/tasks/tools/package-modules.mk

Bug: 68860345
Bug: 151177513
Bug: 151953481

Test: m nothing

Exempt-From-Owner-Approval: janitorial work
Change-Id: I751a3d65c9791c5397e1bcdb89342c0b61647411
2021-03-10 23:31:03 -08:00
Petri Gynther 09865a4911 Add vendor_dlkm, odm, odm_dlkm to dynamic partition filter
When building images in -without-vendor clients, we need to filter out:
vendor, vendor_dlkm, odm, odm_dlkm

from the dynamic partitions list for the OTA image build to succeed.

Bug: 173653839
Bug: 182319837
Test: add vendor_dlkm, odm, odm_dlkm to dynamic partitions + make dist
Change-Id: I899810c7f46e40730280d89b94047779705b6e2f
2021-03-10 21:34:07 -08:00
Petri Gynther 689e11a7ce Fix typo: DLKIMMAGE
Fix two typos in Makefile.

It turns out that BOARD_ODM_VENDOR_DLKMIMAGE is not correct.
Need to replace it with BOARD_PREBUILT_ODM_DLKMIMAGE.

Test: use grep to check usage
Change-Id: If73b15d7abb7504aa313d616f6cef2d80d76705d
2021-03-10 21:07:41 -08:00
Yifan Hong 80ab21490b Add PRODUCT_OTA_ENFORCE_VINTF_KERNEL_REQUIREMENTS to check_vintf_compatible_log
If kernel checks are missing, this can tell
us explicitly that the flag was disabled.

Test: pass
Change-Id: If5de88edbf352c163bc725c3e02a8cd29312e7f5
2021-03-10 18:10:13 -08:00
Treehugger Robot 3eca99ee7a Merge "VINTF logs ends in .log suffix." 2021-03-11 02:07:23 +00:00
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
Kelvin Zhang 06400177a3 Trigger data wipe on spl-downgrade as well
Test: make an spl-downgrade pkg
Change-Id: I3220719a1b3fe6b2f07bfb9fd526ec6e94ca16ba
2021-03-10 11:06:10 -05:00