Commit graph

66337 commits

Author SHA1 Message Date
Ulyana Trafimovich
8951930f21 Merge "Do not suppress compilation of boot images because of TARGET_BUILD_APPS." 2021-01-20 17:46:02 +00:00
Bill Peckham
ddf8f61ce5 Merge "Enable prebuilt hiddenapi CSV files." 2021-01-20 17:43:48 +00:00
Ulya Trafimovich
7f8b7a1123 Do not suppress compilation of boot images because of TARGET_BUILD_APPS.
Bug: 176171716
Test: build_mainline_modules.sh and ensure that the ART boot image is
    built: `find out -type f -name '*.art'` is nonempty for every arch.
Change-Id: I5163ebe1f8db3d4d921bab0f83cd388ba29419ec
2021-01-20 14:04:30 +00:00
Treehugger Robot
c895a8a817 Merge "Split out minimal ART dexpreopt config and use it in mainline builds." 2021-01-20 10:04:39 +00:00
Yo Chiang
865fd0c010 Merge "Specify --ramdisk_name for vendor ramdisks for vendor_boot v4" 2021-01-20 08:50:30 +00:00
Yo Chiang
95bd22edb6 Merge "Remove PRODUCT_COMPATIBLE_PROPERTY_OVERRIDE from gsi_release.mk" 2021-01-20 03:27:03 +00:00
Treehugger Robot
b45217bdc4 Merge "Includes recovery resources into vendor_boot-debug.img" 2021-01-20 02:06:10 +00:00
Inseob Kim
890f84fe71 Merge "Implement directed vendor snapshot" 2021-01-20 01:17:23 +00:00
Ryan Prichard
39ac1faf76 Merge "Switch platform EH unwinder to prebuilt LLVM libunwind" 2021-01-20 00:10:58 +00:00
Nicolas Geoffray
897fe0e8df Split out minimal ART dexpreopt config and use it in mainline builds.
The config sets a few system properties that end up in command-line
arguments passed to dex2oat. Without these properties dex2oat invocation
fails, because options -Xms and -Xmx are do not have an argument.

Test: buid_mainline_modules.sh
Bug: 176171716
Change-Id: I4fd1f059aad5d48495948bfd668307de8b3d9ee1
2021-01-19 17:03:30 +00:00
Yo Chiang
68ab626aac Specify --ramdisk_name for vendor ramdisks for vendor_boot v4
When building vendor_boot v4 with multiple vendor ramdisks, pass the
name of each ramdisk to mkbootimg.

Bug: 177882072
Test: Modify a device BoardConfig and verify the built vendor_boot.img
  with unpack_bootimg
Change-Id: I679d277aa88f1e10678d2f74b579e4140536e267
2021-01-19 18:58:43 +08:00
Bowgo Tsai
ceaa411fcb Includes recovery resources into vendor_boot-debug.img
Commit I56dda56bab7def1540f4fb506323e3e605620cd4 adds
BOARD_MOVE_RECOVERY_RESOURCES_TO_VENDOR_BOOT and includes
$(TARGET_RECOVERY_ROOT_OUT) directory when building vendor
ramdisk if BOARD_MOVE_RECOVERY_RESOURCES_TO_VENDOR_BOOT is set.

We should do the same thing when building the vendor debug
ramdisk as well. Otherwise, lacking some recovery files
makes the device unable to boot into fastbootd/recovery mode.

Bug: 177712689
Test: `make vendorbootimage_debug`, then unpack
      ./obj/PACKAGING/vendor-boot-debug_intermediates/vendor-ramdisk-debug.cpio.lz4
      to check it includes recovery resources via:
      `lz4 -d -c ../vendor-ramdisk-debug.cpio.lz4 | cpio -idm`
Test: device can boot into fastbootd after flashing vendor_boot-debug.img

Change-Id: I4744c6600866436ed7d5a321e67e20b8f3da8a81
2021-01-19 17:07:45 +08:00
Yo Chiang
2099e6eda2 Remove PRODUCT_COMPATIBLE_PROPERTY_OVERRIDE from gsi_release.mk
PRODUCT_COMPATIBLE_PROPERTY defaults to true now, so we don't need this
override anymore.

Bug: 177495407
Test: Presubmit
Change-Id: I7370570fe230e913d16520b7add9404f2d6ec913
2021-01-18 18:02:28 +08:00
Bill Peckham
e3cf60911a Enable prebuilt hiddenapi CSV files.
By enabling these hiddenapi CSV files to be prebuilt, it
becomes possible to create a split build that supports
the hiddenapi encode dex step, but doesn't contain all
of the java sources needed to generate the CSV files.

Bug: 175048716
Test: m nothing
Test: new TestHiddenAPISingletonWithPrebuiltCsvFile
Test: local build without prebuilt hiddenapi
Test: local build with prebuilt hiddenapi
Change-Id: Ia38c5016d2aeba54aa537a5ce601898d46330730
2021-01-16 22:07:40 +00:00
Daniel Norman
fc596c996f Merge "Stops including extra VNDK apexes if the VNDK current apex is on vendor." 2021-01-15 16:31:58 +00:00
Yabin Cui
7604390e4c Merge "Disable unsigned-shift-base by default." 2021-01-15 00:17:36 +00:00
Yabin Cui
462c12dfae Disable unsigned-shift-base by default.
New clang compiler enables unsigned-shift-base as part of
integer sanitizers. But it makes some daemons crash at
libc++.

Bug: 177566116
Test: build.
Change-Id: I6d64fa5002b6035be4d960441eb5176c97152af9
2021-01-14 14:14:08 -08:00
Daniel Norman
c3d7fff348 Stops including extra VNDK apexes if the VNDK current apex is on vendor.
This is needed for merged mixed-release builds where the vendor half on
release N contains VNDK current (vN) on /vendor. This change prevents
the system half on release N+k from placing another copy of VNDK vN
on /system_ext.

Test: Build and merge crosshatch with S system and R vendor, boot
Bug: 176993126
Change-Id: I5322931244e060b2e7c92d9578e5eb64b098d1d6
2021-01-14 20:22:48 +00:00
Treehugger Robot
d041e4babf Merge "Make ro.product.cpu.abilist.* to be fetched dynamically" 2021-01-14 18:34:22 +00:00
Janis Danisevskis
46b0d8c8ef Merge "Update gsi/current.txt with secure clock and shared secret services." 2021-01-14 18:04:02 +00:00
Martin Stjernholm
23e4ab2edf Merge "Add check that a module doesn't try to override itself." 2021-01-14 10:36:25 +00:00
Ryan Prichard
6f19c3e06f Switch platform EH unwinder to prebuilt LLVM libunwind
Bug: http://b/153025717
Test: device boots
Change-Id: I8efa33c8375d67a24eb7f6e7512d6149d718a467
2021-01-13 19:36:53 -08:00
Treehugger Robot
0c6951f829 Merge "jacoco-report-classes-all.jar doesn't depend on fake modules" 2021-01-14 00:28:17 +00:00
Yifan Hong
7a27574e5f Merge "GetBootImageBuildProp returns None if file does not exist" 2021-01-13 19:40:13 +00:00
Anton Hansson
75232ce489 Merge "Use 64 bit binder in module builds" 2021-01-13 18:21:04 +00:00
Nikita Ioffe
015b689271 Merge "Refactor apex signing logic in preparation for compressed apexes" 2021-01-13 14:54:49 +00:00
Jiyong Park
4a693b28e6 jacoco-report-classes-all.jar doesn't depend on fake modules
The reason that the jar file depended on modules_to_install was to
collect files from other partitions, not just system. It isn't the
intention to gather fake modules like phony modules and more importantly
their dependencies (LOCAL_REQUIRE_MODULES). This change explicitly
filters out the fake modules to make the intent clearer.

In fact, the jar file depending on fake modules can have a side effect
that overridden modules are installed. It can happen as follows:

PRODUCT_PACKAGES += A B C

LOCAL_MODULE := A
LOCAL_REQUIRED_MODULES := B
include $(BUILD_PHONY_PACKAGE)

LOCAL_MODULE := B
include $(BUILD_XXX)
...

LOCAL_MODULE := C
LOCAL_OVERRIDES_MODULES := B
include $(BUILD_XXX)

modules_to_install is set to

out/target/product/xxx/fake_packages/A-timestamp
out/target/product/xxx/system/.../C

; B is correctly overridden.

But there still is an order-only dependency from A to B which is created
by add-all-target-to-target-required-modules-deps. Unfortunately,
overridden isn't take into account here.

So, if the jacoco jar file depends on modules_to_install, both B and C
are installed. And if the creation of system.img happens later, the two
are included together, which is an error.

A preferred way of fixing this is to amend
add-all-target-to-target-required-modules-deps so that override is take
into account. However, it will likely to require more Make tricks. This
change takes a much easier path; pruning the fake packages from the
dependencies so that its dependencies which might be wrong can't be
installed.

Bug: 175400393
Test: build/soong/soong_ui.bash --make-mode SKIP_ABI_CHECKS=true
SOONG_COLLECT_JAVA_DEPS=true TARGET_PRODUCT=cf_x86_phone
TARGET_BUILD_VARIANT=userdebug
TARGET_USERDATAIMAGE_PARTITION_SIZE=17179869184 droid dist
DIST_DIR=out/dist EMMA_INSTRUMENT=true EMMA_INSTRUMENT_FRAMEWORK=true
CLANG_COVERAGE=true NATIVE_COVERAGE_PATHS="*"
NATIVE_COVERAGE_EXCLUDE_PATHS="art bionic/libc device"
continuous_instrumentation_tests continuous_native_tests device-tests
platform_tests
No com.android.art.apex in system.img

Change-Id: Ie8a917b7c3985c3a4f19372a4430accd84124e83
2021-01-13 22:12:52 +09:00
Anton Hansson
0bafe32068 Use 64 bit binder in module builds
Add a new BoardConfigModuleCommon for settings of this sort.

Bug: 176840868
Test: forrest module coverage build
Merged-In: Ie62261ecc0f0967f677a890a382fa1da060f7ff2
Change-Id: Ie62261ecc0f0967f677a890a382fa1da060f7ff2
(cherry picked from commit c0423c8dae)
2021-01-13 11:05:20 +00:00
Orion Hodson
f79835fca2 Merge "Remove implicit include path for jni.h" 2021-01-13 06:11:03 +00:00
Treehugger Robot
9d2219c2da Merge "Add dependencies on java resources when packaging APK without classes" 2021-01-13 00:57:08 +00:00
Tianjie Xu
2de3459680 Merge "Fix errors from validate_target_files" 2021-01-13 00:02:36 +00:00
Treehugger Robot
eebe61d354 Merge "Add missing dependencies to releasetools_common and binary defaults." 2021-01-12 23:58:58 +00:00
Colin Cross
9644ec811f Add dependencies on java resources when packaging APK without classes
When an APK is packaged without any classes.dex files the resources
are packaged directly, and so the packaging rule must depend on the
resources.

Fixes: 177295654
Test: prebuilts/build-tools/linux-x86/bin/ninja -f out/combined-aosp_cf_x86_64_phone.ninja -t query out/target/product/vsoc_x86_64/obj/APPS/CtsSplitApp_x86_64_intermediates/package.apk
Change-Id: I786e71439f11e7bd5e20e010b66fbf529eb57a5a
2021-01-12 15:08:08 -08:00
Nikita Ioffe
6068e8dd52 Refactor apex signing logic in preparation for compressed apexes
Logic for signing compressed apex will be added in the follow-up cl.

Test: python -m unittest test_sign_apex
Bug: 172912232
Change-Id: I8dc1d334c17e11f9eed8fe0a575b6dfcf337ab5d
2021-01-12 22:29:58 +00:00
Tianjie
2e0b835d28 Fix errors from validate_target_files
We should skip lines that don't contain '=', e.g. empty lines.
Also, pop a warning instead of an error if a prop is defined
multiple times with the same value

Bug: 177240467
Test: unittest, run validate_target_files
Change-Id: Ifc9eadb91e5dda7170a19d875016e5a47e8fc592
2021-01-12 14:04:58 -08:00
Yifan Hong
14a8712c4d Add missing dependencies to releasetools_common and binary defaults.
When GetBootImageBuildProp is moved to common, its dependencies
(toybox, lz4 and unpack_bootimg) aren't moved accordingly.
Copy the dependencies over.

Test: pass
Change-Id: Iaa8f41ae0109e8eb1c058ecd7dd854bb7de9391a
2021-01-12 14:04:19 -08:00
Evgenii Stepanov
de32b6d59c Merge "Include/exclude paths for memtag sanitizer." 2021-01-12 19:33:02 +00:00
Yifan Hong
7dc5117ffd GetBootImageBuildProp returns None if file does not exist
If system/etc/ramdisk/build.prop does not exist in the ramdisk,
GetBootImageBuildProp should return None instead of a path
to a non-existant file.

Test: pass
Bug: 177171706
Change-Id: I34e447bc315d203e136e8c0d59d00961f81301e3
2021-01-12 11:27:55 -08:00
Ulyana Trafimovich
c275c68dfd Merge "Initialize DEX_PREOPT_DEFAULT based on global dexpreopt settings." 2021-01-12 10:12:14 +00:00
Chengyou Ho
fe1d9d4336 Merge "Add AuthSecret HAL to VNDK-core list" 2021-01-12 07:51:37 +00:00
ChengYou Ho
c2adfd8efe Add AuthSecret HAL to VNDK-core list
Bug: 176107318
Change-Id: I13dfb105e8aed296028118ec5cc806c220797ff8
2021-01-12 06:01:07 +00:00
Evgenii Stepanov
10b4d0ad5d Include/exclude paths for memtag sanitizer.
Bug: b/135772972
Test: none
Change-Id: Ib198c359b92b82573cb66fd6d993aece0e9ff7d9
2021-01-11 21:15:21 -08:00
Treehugger Robot
7c6370772f Merge "Add unit_test option to module-info.json" 2021-01-12 02:37:47 +00:00
Nikita Ioffe
8f8522a83b Merge "Fix test_sign_apex" 2021-01-12 01:51:48 +00:00
SzuWei Lin
7240eca439 Merge "Skip generate-common-build-props for older devices without /product" 2021-01-12 01:28:36 +00:00
Nikita Ioffe
c3fdfed11b Fix test_sign_apex
Test: python -m unittest test_sign_apex
Change-Id: I2a27a394b3de32fa29e487bea0b7721502a8bd98
2021-01-11 23:50:31 +00:00
Peter Collingbourne
4e98e687ec Merge "Remove ANDROID_EXPERIMENTAL_MTE." 2021-01-11 20:42:44 +00:00
Peter Collingbourne
fcd9ccf4a1 Remove ANDROID_EXPERIMENTAL_MTE.
Now that the feature guarded by this flag has landed in Linux 5.10
we no longer need the flag, so we can remove it.

Bug: 135772972
Change-Id: I02fa50848cbd0486c23c8a229bb8f1ab5dd5a56f
2021-01-11 10:55:51 -08:00
Ulya Trafimovich
e245e00d7b Initialize DEX_PREOPT_DEFAULT based on global dexpreopt settings.
Bug: 177214554
Test: lunch cf_x86_phone-userdebug && m
Test: Ensure that `find out -name dexpreopt.config` lists before and
    after the fix are identical (for target cf_x86_phone-userdebug).
Test: TARGET_PRODUCT=mainline_modules_x86_64 \
    TARGET_BUILD_VARIANT=userdebug \
    build/soong/soong_ui.bash --make-mode UipbUtil
Change-Id: I28b38c08ad570d53dc679f9b42975545d457416e
2021-01-11 17:02:16 +00:00
Chengyou Ho
991fe0a7d5 Merge "Add OemLock HAL to VNDK-core list" 2021-01-11 06:12:40 +00:00