Commit graph

26019 commits

Author SHA1 Message Date
Treehugger Robot
6be34750a3 Merge "Remove module dependency on license metadata." 2021-02-19 22:11:01 +00:00
Jaewoong Jung
b6d7c5ccb0 Merge "Remove unwanted JNI libs outside inflating action." 2021-02-19 20:16:48 +00:00
Joe Onorato
2fd88e0600 Merge changes I9c1995f8,Id6763781,I52e5c07f,I4706e32f,I7d74b226
* changes:
  Keep the first and last snapshot of variables.
  Generate GenericConfig objects from MakeConfig objects.
  Emit and parse the product config variables from kati/make
  Add class to fork and exec kati, based on the commandline option given.
  Add a CSV parser to parse the output from kati.
2021-02-19 16:56:13 +00:00
Jeongik Cha
c5da20e886 Deprecate PRODUCT_ENFORCE_RRO_EXEMPTED_TARGETS
There is no module relying on PRODUCT_ENFORCE_RRO_EXEMPTED_TARGETS

Test: m
Bug: 150820813
Change-Id: I461ab2654513a3b921bec5d46c39d474b6324ca2
2021-02-19 21:49:59 +09:00
Bob Badour
0061204726 Remove module dependency on license metadata.
Test: m nothing
Change-Id: I3fb75261ec67eb80023b7ef085c459229d8950a6
2021-02-18 17:31:12 -08:00
Jaewoong Jung
c18ebafcb9 Remove unwanted JNI libs outside inflating action.
Take the unwanted JNI lib removal action out of JNI uncompression
function so that they work independently when building prebuilt apks.

Fixes: 180475879
Test: Manually with a test apk.
Change-Id: I7392d0bf4ca7db76f27e883df08f7cb256162440
2021-02-18 16:09:10 -08:00
Martin Stjernholm
714c4bceb3 Merge "Move the logic to add jacocoagent in instrumentation builds to make." 2021-02-18 07:52:09 +00:00
Chih-hung Hsieh
9f9236ec56 Merge "Do not append empty DEFAULT_TIDY_HEADER_DIRS" 2021-02-17 18:34:48 +00:00
Joe Onorato
64f3db2ec1 Keep the first and last snapshot of variables.
So we can compare our reconstruction of the variable state.

Test: treehugger
Change-Id: I9c1995f8969dcf95256aa7c05a01d0431e36caa2
2021-02-17 10:02:41 -08:00
Joe Onorato
f20c93afa3 Emit and parse the product config variables from kati/make
Test: cls && rm -rf out/config/ && m product-config-test product-config && java -jar out/host/linux-x86/testcases/product-config-test/product-config-test.jar && time ( product-config --ckati_bin /source/kati/ckati > ~/Desktop/out.txt )
Change-Id: I52e5c07f9aaf899f9d45680313275c6d9e246ff2
2021-02-17 10:02:41 -08:00
Martin Stjernholm
fa83228660 Move the logic to add jacocoagent in instrumentation builds to make.
This to allow operating on the complete ART_APEX_JARS list from make in
a follow-up CL.

Test: m nothing
Test: m nothing EMMA_INSTRUMENT=true EMMA_INSTRUMENT_FRAMEWORK=true
Bug: 180325915
Change-Id: Ic08148edf25738f6f4769e5359a573237a38b0e9
2021-02-17 12:55:49 +00:00
Treehugger Robot
69ac4b21cd Merge "Mark PRODUCT_SUPPORTS_xxx variables as single item instead of list" 2021-02-17 10:28:51 +00:00
Treehugger Robot
32b84909a1 Merge changes from topic "vendor_property_enforce"
* changes:
  Set BUILD_BROKEN_VENDOR_PROPERTY_NAMESPACE for goldfish
  Add BUILD_BROKEN_VENDOR_PROPERTY_NAMESPACE to BoardConfig
  Add PRODUCT_SHIPPING_API_LEVEL to productVariables
2021-02-17 07:12:30 +00:00
Bob Badour
17831e3da3 Remove LOCAL_LICENSE_KINDS from core makefiles.
Bug: 68860345
Bug: 151177513
Bug: 151953481

Test: m all
Change-Id: I4deec3e07862e89dd32880774efb4624a9723cf2
2021-02-16 04:37:23 -08:00
Treehugger Robot
14201eb3a3 Merge "[LSC] Add LOCAL_LICENSE_KINDS to build/make" 2021-02-15 23:21:48 +00:00
Martin Stjernholm
ae2af082ca Merge "Build the ART modules from source if they are listed in TARGET_BUILD_APPS." 2021-02-15 10:53:50 +00:00
Yo Chiang
b84604198c Merge "Kernel modules: add modules.blocklist build support" 2021-02-15 06:45:57 +00:00
Bob Badour
0390580262 [LSC] Add LOCAL_LICENSE_KINDS to build/make
Added SPDX-license-identifier-Apache-2.0 to:
  target/product/sysconfig/Android.bp
  tools/apicheck/Android.bp
  tools/product_config/Android.bp
  tools/releasetools/Android.bp
  tools/signapk/Android.bp
  tools/signtos/Android.bp
  tools/zipalign/Android.bp
  tools/ziptime/Android.bp

Added SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD
    SPDX-license-identifier-CC-BY SPDX-license-identifier-GPL
    SPDX-license-identifier-GPL-2.0 SPDX-license-identifier-LGPL
    SPDX-license-identifier-MIT legacy_not_a_contribution
    legacy_restricted
to:
  Android.bp

Added SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD
    SPDX-license-identifier-CC-BY SPDX-license-identifier-GPL
    SPDX-license-identifier-MIT
to:
  tools/Android.bp
  tools/droiddoc/Android.bp

Added SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD
    SPDX-license-identifier-GPL SPDX-license-identifier-GPL-2.0
    SPDX-license-identifier-LGPL SPDX-license-identifier-MIT
to:
  core/base_rules.mk
  core/dex_preopt_libart.mk
  core/package_internal.mk

Added SPDX-license-identifier-Apache-2.0 legacy_not_a_contribution
to:
  target/board/Android.mk

Added legacy_restricted
to:
  core/tasks/tools/package-modules.mk
  target/product/gsi/Android.bp
  target/product/gsi/Android.mk
  target/product/security/Android.bp
  target/product/security/Android.mk
  tools/acp/Android.bp
  tools/atree/Android.bp
  tools/fs_config/Android.bp
  tools/fs_config/Android.mk
  tools/fs_get_stats/Android.bp
  tools/libhost/Android.bp

Bug: 68860345
Bug: 151177513
Bug: 151953481

Test: m all

Exempt-From-Owner-Approval: janitorial work
Change-Id: Id67a4eb1312940f999643b2ae57f45f34f120724
2021-02-14 10:37:20 -08:00
Martin Stjernholm
f4bf5d5e62 Build the ART modules from source if they are listed in
TARGET_BUILD_APPS.

Test: Run build_mainline_modules.sh and check that
      SOONG_CONFIG_art_module_source_build is true even if the fallback
      default is false.
Bug: 172480615
Change-Id: Ie0e9566d4d09b1e54af00c06021aa355adcf0a1a
2021-02-12 21:20:40 +00:00
Chih-Hung Hsieh
2e4fdbdda1 Do not append empty DEFAULT_TIDY_HEADER_DIRS
* Default value will be empty and not work in -header-filter.

Bug: 179530304
Test: make with WITH_TIDY=1 and various setting of DEFAULT_TIDY_HEADER_DIRS
Change-Id: I3f784f545acd12285a5bf6dcae1bab42c9185fe7
2021-02-11 22:36:04 -08:00
Ulya Trafimovich
8edad8f7a3 Preserve <uses-library> order in dexpreopt.config files.
Library order is important because it is used to construct class loader
context, which is then written into OAT/ODEX files and chacked against
class loader context constructed by PackageManager on the device. If the
orders are different, dexpreopted code is rejected.

This CL fixes a few problems that caused reordering:

- 'filter' function arguments are swapped so that patterns list comes
  first, and the library list second

- JSON representation of class loader context is changed to avoid
  unmarshaling it to Go maps, which may reorder keys

- library list is no longer sorted (it's unclear why it was sorted)

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: Ie76996d497e60da0948f1879d6db589ff3e968a2
2021-02-11 17:09:19 +00:00
Oli Lan
b976c07d85 Merge "Add build task for cts_root." 2021-02-11 14:30:39 +00:00
Oli Lan
9c8cafe38f Add build task for cts_root.
This adds the configuration necessary to allow the cts_root
test suite to be built.

Bug: 162933947
Test: m cts_root
Merged-In: I4732bf82d3cedc77e30d7fa5eff285d382992853
Change-Id: I4732bf82d3cedc77e30d7fa5eff285d382992853
2021-02-11 10:34:01 +00:00
Martin Stjernholm
52d0490d9b Ensure ART module prebuilts aren't used in sanitizer builds.
Change-Id: I128e116e182ba937ecb603f5ba92516a28cb28f9
Test: presubmits
Bug: 172480615
2021-02-11 08:06:43 +00:00
Sasha Smundak
94da140c70 Mark PRODUCT_SUPPORTS_xxx variables as single item instead of list
Evidenced by assignments across code base.

Test: treehugger
Bug: 116769560
Change-Id: I900217fc5745d3c29f844b968f9abc338b3a56ff
2021-02-10 22:36:25 -08:00
Jose Galmes
7185c6c500 Implement directed recovery snapshot.
Bug: 177451657
Test: m -j nothing
Change-Id: I902afe71e7577c1c41371f1422512170edf6e492
2021-02-09 07:41:40 -08:00
Treehugger Robot
a5dcac761f Merge "Turn missing jarjar output files into errors" 2021-02-08 22:00:02 +00:00
Colin Cross
a1271eb343 Turn missing jarjar output files into errors
Jarjar doesn't exit with a nonzero return code when there is a syntax
error in a rules file and doesn't write the output file.  Without a
nonzero return code ninja prints a warning but continues, which leads
to stale results on incremental builds where the output file already
exists, or delayed errors on clean builds whre the output file didn't
exist.

Delete the output file before running jarjar, and then check if it
exists after running jarjar.

Fixes: 119516143
Test: m out/target/common/obj/JAVA_LIBRARIES/noto-emoji-compat-java_intermediates/classes-jarjar.jar
Change-Id: Ib99167403948ee11f039dd4d2d7e63052bb92136
2021-02-08 10:55:05 -08:00
Ioannis Ilkos
8e568c52ab Remove Use_lmkd_stats_log from build
Use_lmkd_stats_log used to control LMKD_LOG_STATS when compiling lmkd.

However, for newer Android releases, we mandate that lmkd informs statsd of process kills (change id I8cb123b9488fbc6e88863c2f0e75f1422bcd282e)
After aosp/1555318 we compile lmkd with statsd by default, so this setting is a noop.

Change-Id: I91bd08198fe2275fb8aca77ae5ea637df360d416
Test: build
Bug: 177985094
2021-02-08 11:17:55 +00:00
Treehugger Robot
bff5273dd0 Merge "Adding repack_bootimg into otatools.zip" 2021-02-06 08:00:55 +00:00
Colin Cross
effaa0414b Merge "Use RSP file for soong_zip in target_files.zip" 2021-02-05 21:33:37 +00:00
Treehugger Robot
530b39afc9 Merge "Add logic to ensure the ART APEXes are built from source in coverage builds." 2021-02-05 13:49:53 +00:00
Ulyana Trafimovich
966928196d Merge "Don't patch build path to DEX jar in dex_preopt_config_merger.py." 2021-02-05 11:10:03 +00:00
Bowgo Tsai
6c37c172c6 Adding repack_bootimg into otatools.zip
repack_bootimg is useful to add files into a ramdisk, then repack
a boot.img. Note that mkbootimg, unpack_bootimg, lz4, minigzip, etc.,
that repack_bootimg depends are already in otatools.zip.

Bug: 174443192
Test: `m otatools-package`, unzip $OUT/otatools.zip, export $PATH
      with ./otatools/bin and checks unpack_bootimg can run
Change-Id: Id4fbf2076b50522b95ab46dfeb1e2b7115d6606d
2021-02-05 18:14:34 +08:00
Yi-Yo Chiang
c12dd84d01 Kernel modules: add modules.blocklist build support
BOARD_<partition>_KERNEL_MODULES_BLOCKLIST_FILE<kernel_version> checks
the syntax of and installs a prebuilt modules.blocklist file.

Example usage:
```
BOARD_VENDOR_KERNEL_MODULES_BLOCKLIST_FILE := \
  $(wildcard <path to prebuilt modules.blocklist>)
```

Then the modules blocklist would be install to
(vendor|vendor_dlkm)/lib/modules/modules.blocklist.

Bug: 175165656
Test: Create a blocklist with incorrect syntax, verify build fails
Test: Verify the new macro indeed installs the blocklist file
Change-Id: Icb75aae1bdb45546792f28f4c4e8d06d9439391a
2021-02-05 16:28:34 +08:00
android-build-team Robot
b5290f8271 Version bump to RQ2A.210305.007 [core/build_id.mk]
Change-Id: I196a6acebe0e40411bccb96da8e475c8dea94b1a
2021-02-04 22:27:50 +00:00
Bill Yi
250a0420ea Merge "Merge RQ1A.210205.004 to aosp-master - DO NOT MERGE" 2021-02-04 17:08:42 +00:00
Ulya Trafimovich
38cd0624f3 Don't patch build path to DEX jar in dex_preopt_config_merger.py.
The initial path value is correct, there's no need to patch it.

Bug: 132357300
Test: lunch aosp_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: Iaa9171e7db348ad469ec56b977b5f2226f353284
2021-02-04 09:55:57 +00:00
Ulyana Trafimovich
015fd9e71b Merge "Quick and dirty filtering of present LOCAL_OPTIONAL_USES_LIBRARIES." 2021-02-04 06:16:03 +00:00
Bill Yi
3248ef4e4f Merge RQ1A.210205.004 to aosp-master - DO NOT MERGE
Merged-In: Ibf5ea0aaf1cf42c08f32e435b1164598410ac44a
Merged-In: I155689df9ad55e5056baebe975ee14f2d2622cef
Change-Id: Iaa90ab536a2fa336db81e3af04648ce68f138cab
2021-02-03 17:01:38 -08:00
Colin Cross
17e98b7ca2 Use RSP file for soong_zip in target_files.zip
target_files.zip passes a list of files to soong_zip in a file list
file, which soong_zip interprets as a glob.  Adding a file called "["
causes soong_zip to error with "syntax error in pattern".  Use an RSP
file instead, which after I1de7829c668538204fc4a2ac793a4f88dbc886c9
does not interpret entries as globs.

Bug: 179297188
Test: m target-files-package
soong_zip: don't glob RSP file entries

File arguments are considered globs, but RSP file entries should be
considered filenames without globbing.  Escape RSP file entries so
they don't get treated as globs later.

Bug: 179297188
Test: zip_test.go
Change-Id: I0736f2d1802114217cba03ee32b67479c9d98da8
2021-02-03 16:03:55 -08:00
Martin Stjernholm
7704497315 Add logic to ensure the ART APEXes are built from source in coverage
builds.

This CL is a nop since the default is still true, but it gives us a way
to toggle it without affecting coverage builds.

Test: env NATIVE_COVERAGE=true build/soong/soong_ui.bash \
        --dumpvar-mode SOONG_CONFIG_art_module_source_build
      env CLANG_COVERAGE=true build/soong/soong_ui.bash \
        --dumpvar-mode SOONG_CONFIG_art_module_source_build
      env NATIVE_COVERAGE=true CLANG_COVERAGE=true \
        build/soong/soong_ui.bash \
        --dumpvar-mode SOONG_CONFIG_art_module_source_build
  check that all these print "true" when the default in the "else"
  clause is "false".
Bug: 172480615
Change-Id: I648ed911773c59a5b2a117dbf3ddcb2ef338830d
2021-02-03 23:16:01 +00:00
Ulya Trafimovich
156c719179 Quick and dirty filtering of present LOCAL_OPTIONAL_USES_LIBRARIES.
Filter LOCAL_OPTIONAL_USES_LIBRARIES by PRODUCT_PACKAGES. This has the
drawback that some present libraries may be filtered out as well, as the
full list of product packages is unknown until all Android.mk files have
been read.

This CL unblocks <uses-library> fixes for individual apps, which will be
necessary to dexpreopt them in the nearest future when the &-classpath
hack is removed in ART. Apps that are not fixed by then will loose
dexpreopt completely. This fix, although not perfect, lowers the risk of
loosing dexpreopt for many apps. In the future it may be replaced with a
better solution.

Bug: 132357300
Test: lunch aosp_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: I188cf240259f7a448623450e6a949e0784a21f87
2021-02-03 15:05:42 +00:00
Inseob Kim
43f4ef0221 Add BUILD_BROKEN_VENDOR_PROPERTY_NAMESPACE to BoardConfig
Bug: 175526482
Test: m vendor_property_contexts after making violations
Change-Id: I81512fefbe952ecaf31fd4b5d276fd32c6253c7f
2021-02-03 18:17:49 +09:00
Treehugger Robot
1d77ebad18 Merge "Install init_rc for recovery modules correctly." 2021-02-03 07:35:04 +00:00
Inseob Kim
a0884b90ae Add PRODUCT_SHIPPING_API_LEVEL to productVariables
Bug: 175526482
Test: m selinux_policy
Change-Id: I10195730e47398bdb455d554a1cb7d6b7ac28634
2021-02-03 16:23:42 +09:00
Yifan Hong
83d1c2ed4b Install init_rc for recovery modules correctly.
If a module is installed to TARGET_RECOVERY_ROOT_OUT,
then its init rc file (declared in LOCAL_INIT_RC) is installed
to $OUT/recovery/root/system/etc/init instead of
$TARGET(partition)_OUT_ETC/init.

Fixes: 178859897
Test: m snapuserd.recovery

Change-Id: I82d0f40d6d7047e271612204391c5a027f84f52f
2021-02-02 17:04:53 -08:00
android-build-team Robot
9e2d21f913 Version bump to RQ2A.210305.006 [core/build_id.mk]
Change-Id: Ib6b8ab30e7fe756e52258ac3182a640dcd738435
2021-02-03 01:00:57 +00:00
Ulya Trafimovich
c77a379241 Fix typo in variable name.
Bug: 132357300
Test: m nothing
Change-Id: I0e770aa7ab179aa90ae0d12d7c101e65ca345bee
2021-02-02 12:22:04 +00:00
Ulyana Trafimovich
d04a95a97f Merge "Merge <uses-library> dependency configs into dexpreopt.config files." 2021-02-01 10:16:57 +00:00
android-build-team Robot
f38e5869be Version bump to RQ2A.210305.005 [core/build_id.mk]
Change-Id: I895b6d26ecfad502bf07458eedf53e6bc0298af4
2021-01-30 00:20:47 +00:00
Tamas Petz
1c879b8822 Add armv8-a-branchprot arch variant
This empty file is required to be present.

Test: fvp_mini-eng* builds and boots on FVP

*: with TARGET_ARCH_VARIANT := armv8-a-branchprot

Change-Id: I689033f16663822e263f45ab5e46c9f120c9dca0
2021-01-28 17:10:24 +01:00
Ulya Trafimovich
558cb6c5ac Merge <uses-library> dependency configs into dexpreopt.config files.
Since Make does not visit modules in topological order of their
<uses-library> dependencies, information from dependencies to the
dexpreopted module has to be passed via dexpreopt.config files. A build
rule for a dexpreopt.config file depends on dexpreopt.config files for
<uses-library> dependencies, and dex_preopt_config_merger.py script
extracts the necessary information from dependency configs and patches
the module's config.

Bug: 132357300
Test: lunch aosp_cf_x86_phone-userdebug && m
Change-Id: Id0b71170a4d2ab1d33059de0e9ad9d7e61f2345e
2021-01-28 14:59:14 +00:00
Nikita Ioffe
3608148612 Add support for signing a compressed apex
Test: atest releasetools_test
Bug: 172912232
Change-Id: I4630578694afbab675db770b46898cc32f1861f3
2021-01-27 01:27:11 +00:00
android-build-team Robot
f1d225ccf9 Version bump to RQ2A.210305.004 [core/build_id.mk]
Change-Id: I71ed229ff4c6867c1a4f9cb5f4f77eb9cc628942
2021-01-27 00:34:56 +00:00
Treehugger Robot
5b62daa03c Merge "Add soong config var for library linking strategy" 2021-01-26 16:57:55 +00:00
Ulyana Trafimovich
bcabefa689 Merge "Add LOCAL_PROVIDES_USES_LIBRARY and use it in module dexpreopt config." 2021-01-25 14:32:59 +00:00
Ulyana Trafimovich
0d20c7cf5e Merge "Add subcontexts field to JSON class loader context representation." 2021-01-25 14:32:23 +00:00
Treehugger Robot
c12f1084c0 Merge "Moving $OUT/vendor-ramdisk-debug.cpio.lz4 to intermediate dir" 2021-01-24 14:53:43 +00:00
android-build-team Robot
bd325f4148 Version bump to RQ2A.210305.003 [core/build_id.mk]
Change-Id: Ie97631ff9629e4987def3e31ac345b7f7072e265
2021-01-23 00:01:47 +00:00
Liz Kammer
c8381ba16b Add soong config var for library linking strategy
Support building cc modules with different library linking strategies
for apexes, to support different apex strategies pre/post S

Test: m APEX_BUILD_FOR_PRE_S_DEVICES
      library_linking_strategy_sample_binary
Bug: 154663937
Change-Id: Ic95ddce5e2b0619adff5b6b8a4e2da0d44df7173
2021-01-22 13:08:00 -05:00
Ulya Trafimovich
514d809b20 Add LOCAL_PROVIDES_USES_LIBRARY and use it in module dexpreopt config.
The new variable stores the name of the <uses-library>, if for some
reason it is different than the name of the module for that library
(normally they are the same, but sometimes differ). If the variable is
undefined or defined to an empty string, the name of the <uses-library>
is considered to be the same as the name of its module. It is recorded
in a module's dexpreopt.config file as "ProvidesUsesLibrary" field.

Bug: 132357300
Test: lunch aosp_cf_x86_phone-userdebug && m
Change-Id: Iac1be0fac79a944e4c26867cc58e274b76709da8
2021-01-22 12:09:30 +00:00
Ulya Trafimovich
1047a0a4be Add subcontexts field to JSON class loader context representation.
For now the subcontexts are always empty. A follow-up change will
actually populate that field from dependencies' dexpreopt.config files.

Bug: 132357300
Test: lunch aosp_cf_x86_phone-userdebug && m
Change-Id: I6cf0e8363dff4b406cb62ba3d76d566dbfec57e7
2021-01-22 12:00:24 +00:00
Evgenii Stepanov
d0bd7f0db6 Merge "Support memtag_heap sanitizer type in make." 2021-01-21 20:21:13 +00:00
Jiyong Park
3c87560119 Add a missing guard around JACOCO_REPORT_CLASSES_ALL
Fixing a mistake that was made by
https://android-review.googlesource.com/c/platform/build/+/1549484/

Bug: N/A
Test: m nothing
Change-Id: I5d4c14934e9fa3fc493dcddb2916d39054da7422
2021-01-21 12:48:11 +09:00
Treehugger Robot
75c4e3483f Merge "Concat INTERNAL_*IMAGE_FILES into INTERNAL_ALLIMAGES_FILES" 2021-01-21 00:28:02 +00:00
Evgenii Stepanov
3330b2fe0b Support memtag_heap sanitizer type in make.
Bug: b/135772972
Test: build with SANITIZE_TARGET=memtag_heap
Change-Id: I0f66649e7a689c9f050dc49974e218b56698254c
2021-01-20 22:27:49 +00:00
Treehugger Robot
6e455b8ca3 Merge "Emit virtual_ab_compression prop to dynamic_parttiion_info.txt" 2021-01-20 19:04:11 +00:00
Nicolas Geoffray
c6c4f08a8c Merge "Remove unused variables." 2021-01-20 18:13:20 +00:00
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
Bowgo Tsai
7ac96037c3 Moving $OUT/vendor-ramdisk-debug.cpio.lz4 to intermediate dir
vendor-ramdisk-debug.cpio.lz4 will be packed into a
vendor_boot-debug.img and usually won't be flashed directly.

Moving it to the intermediate build directory.

Bug: None
Test: make vendorbootimage_debug
Change-Id: I86ea72c7a3484a90286139624408d07ce4bf994c
2021-01-20 22:33:13 +08:00
Nicolas Geoffray
ed9395a929 Remove unused variables.
Test: m
Bug: 176171716
Change-Id: I203d08607688ae6f165f0d5c7eee5d13c61eeefa
2021-01-20 14:32:55 +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
Yo Chiang
865fd0c010 Merge "Specify --ramdisk_name for vendor ramdisks for vendor_boot v4" 2021-01-20 08:50:30 +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
Kelvin Zhang
239a79ae19 Emit virtual_ab_compression prop to dynamic_parttiion_info.txt
Test: mm -j && mm -j dist, make sure virtual_ab_compression is set to
true in dynamic_partition_info.txt of target_File.zip

Change-Id: Id0d46bd8ed738b2b69a0c01481b7db0c7127f773
2021-01-19 16:11:32 -05: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
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
android-build-team Robot
46048438dd Make change and version bump to RQ2A.210305.002
Change-Id: I44c2bbb22fe285162d612e5e5b88ea7e7a5504b9
2021-01-15 00:28:19 +00:00
Paul Scovanner
2ca855c5f5 Update Security String to 2021-03-05
Bug: 177091143
Change-Id: I6d6542306c51ac1682f02cbce6701688d2bdbea2
(cherry picked from commit 9c4665257c)
2021-01-15 00:28:05 +00:00
android-build-team Robot
e4ee55a60e Version bump to RQ2A.210305.001 [core/build_id.mk]
Change-Id: I493f0c3fdb3df02fc685ecc0e8936bf5e74a12e1
2021-01-14 23:05:22 +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
android-build-team Robot
2a85407c26 Version bump to RQ2A.210105.005 [core/build_id.mk]
Change-Id: I8c24b12224ceadc26a8098e11f9302364f010547
2021-01-14 20:57:31 +00:00
Treehugger Robot
d041e4babf Merge "Make ro.product.cpu.abilist.* to be fetched dynamically" 2021-01-14 18:34:22 +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
android-build-team Robot
73e7049dea Version bump to RQ2A.210105.004 [core/build_id.mk]
Change-Id: I9eabaedf9e8e7024ea1b152b14af27f581ef9772
2021-01-14 07:55:04 +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
Jiyong Park
f66f0ececc Concat INTERNAL_*IMAGE_FILES into INTERNAL_ALLIMAGES_FILES
As we add more partitions, INTERNAL_*IMAGE_FILES variables has grown
and the places where the variables are referenced had to be touched
everytime. This change introduces a new variable
INTERNAL_ALLIMAGES_FILES which concatnates INTERNAL_*IMAGE_FILES, and
replaces the uses of the variables with the new one.

Bug: N/A
Test: m
Change-Id: I62a0f725a0f6999421d04a6261370be9124e62d7
2021-01-14 11:23:12 +09:00
Treehugger Robot
0c6951f829 Merge "jacoco-report-classes-all.jar doesn't depend on fake modules" 2021-01-14 00:28:17 +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
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
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
Evgenii Stepanov
de32b6d59c Merge "Include/exclude paths for memtag sanitizer." 2021-01-12 19:33:02 +00:00
Ulyana Trafimovich
c275c68dfd Merge "Initialize DEX_PREOPT_DEFAULT based on global dexpreopt settings." 2021-01-12 10:12:14 +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