Commit Graph

25998 Commits

Author SHA1 Message Date
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
TreeHugger Robot
1ba06032f2 Merge "Merge ab/7061308 into stage." into stage-aosp-master 2021-02-23 08:43:06 +00:00
Joe Onorato
38a57bf1df Generate FlatConfig objects from GenericConfig objects.
Doesn't include tests. More of those will come later.

Test: build/make/tools/product_config/test.sh
Change-Id: Icd2b455ac5f7b4773ba332fc40e994dc6f024f1b
2021-02-22 17:18:07 -08:00
Treehugger Robot
d6a7f16416 Merge "Remove extra dot from depreceation, obsoletion warnings" 2021-02-23 00:16:40 +00:00
Ulya Trafimovich
5a09c2084d Add non-fatal mode for verify_uses_libraries check.
The new mode is enabled with environment variable
RELAX_USES_LIBRARY_CHECK. If the variable is set to true, then a
verify_uses_libraries check failure does not fail the build, instead it
sets a special compiler filter "extract" for dexpreopt, which means that
the DEX file will be extracted, but it won't be compiled to native code.
Class loader context will be set to empty in this case (not &, as it is
going to be deprecated soon).

If the variable RELAX_USES_LIBRARY_CHECK is unset or set to something
other than "true", then the old behaviour of the verify_uses_libraries
check is preserved.

The intended use case for this flag is to have a smoother migration path
for the Java modules that need to add <uses-library> information in
the build files. The flag allows to quickly silence build errors. This
flag should be used with caution and only as a temporary measure, as it
masks real errors and affects performance.

verify_uses_libraries check is reworked so that it writes the error
message to a status file (which is used instead of the former timestamp
file). Currently the stored error message is not used, but it may be
used later to produce a warning. Dexpreopt command checks if the status
file exists and is nonempty; if that is the case, then compiler filter
is set to "extract".

Bug: 132357300

Test: Manually add some mismatch between the libraries in the Android.bp
      and Android.mk files for dexpreopted apps, build with
      RELAX_USES_LIBRARY_CHECK=true and obsserve that the build doesn't
      fail and they are compiled with compiler-filter "extract".
      Unset RELAX_USES_LIBRARY_CHECK and observe that the build fails.

Change-Id: Ie1a6298c4dba2f368ca9ac8b9fee2de0a26e68e8
2021-02-22 14:49:47 +00:00
Christoffer Quist Adamsen
40c399732c Allow missing classes in R8 mk builds
Bug: 180878971
Bug: 72683872
Test: TARGET_PRODUCT=aosp_arm64 m -j core-oj
Change-Id: I4e3d49d4d8aa7e373bae6710db57f503eb95fab1
2021-02-22 13:21:00 +01:00
Bob Badour
d81abe7412 Merge "Avoid duplicate installed notice file rules." 2021-02-21 17:40:54 +00:00
Xin Li
7a133df4e0 Merge ab/7061308 into stage.
Bug: 180401296
Merged-In: Iee612ad0f443d5ae9fa9e469785f304394b3d40c
Change-Id: I818641fdaf6ec330c97bbd202c526a0862db6862
2021-02-21 09:28:34 -08:00
Bob Badour
3412a07822 Avoid duplicate installed notice file rules.
For cases with a my_register_name, move into $(call license-metadata-rule).

Bug: 68860345
Bug: 151177513
Bug: 151953481

Test: m nothing

Change-Id: Ib6c610960347db84503831b1e1519622696d4500
Merged-in: Ib6c610960347db84503831b1e1519622696d4500
2021-02-21 09:03:15 -08:00
Timi
baada2ad67 Remove extra dot from depreceation, obsoletion warnings
Remove extra dot from depreceation and obsoletion warnings to be consistent.
Changes
 x: warning: BOARD_PLAT_PUBLIC_SEPOLICY_DIR has been deprecated. Use SYSTEM_EXT_PUBLIC_SEPOLICY_DIRS instead..
to
 x: warning: BOARD_PLAT_PUBLIC_SEPOLICY_DIR has been deprecated. Use SYSTEM_EXT_PUBLIC_SEPOLICY_DIRS instead.

Test: m
Change-Id: I60a4258e549570e261252cffee69e5640f62295e
Signed-off-by: Timi <timi.rautamaki@gmail.com>
2021-02-21 15:26:00 +01:00
Treehugger Robot
3f631cf2ab Merge "Deprecate PRODUCT_ENFORCE_RRO_EXEMPTED_TARGETS" 2021-02-20 01:47:43 +00:00
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