Commit Graph

32579 Commits

Author SHA1 Message Date
Treehugger Robot
8cad077197 Merge "LOCAL_REQUIRED_MODULES from apex has ":32" or ":64" suffix" am: d684e04247
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1554988

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I8b48d2e124f936c85339426d93e474be67c59856
2021-01-21 15:34:46 +00:00
Treehugger Robot
d684e04247 Merge "LOCAL_REQUIRED_MODULES from apex has ":32" or ":64" suffix" 2021-01-21 14:34:37 +00:00
Inseob Kim
249609366d Merge "Truncate vendor snapshot header glob list after filtering it" am: ec7cab81f9
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1555161

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Icc5af4094ee54f24c91ca87c138afa029d4829cf
2021-01-21 07:05:06 +00:00
Inseob Kim
ec7cab81f9 Merge "Truncate vendor snapshot header glob list after filtering it" 2021-01-21 06:32:49 +00:00
Inseob Kim
9a7f405bc9 Merge "Speed up vendor snapshot header globs" am: ab15f9644b
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1554550

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I28e83f1869b7f3af37b15046bb783659ad5ec1d2
2021-01-21 01:21:29 +00:00
Jiyong Park
131cdd5c61 Merge changes Ifa1ed8de,I969bf4a2 am: 636b767835
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1553995

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I9160184009067e43b8d9fca97e8e2d73d72df735
2021-01-21 01:10:08 +00:00
Colin Cross
3a62a9cc2b Truncate vendor snapshot header glob list after filtering it
Test: m checkbuild
Change-Id: I4847bff5c03844194a9a80e8cb24a60694db6208
2021-01-21 00:46:46 +00:00
Inseob Kim
ab15f9644b Merge "Speed up vendor snapshot header globs" 2021-01-21 00:37:19 +00:00
Jiyong Park
636b767835 Merge changes Ifa1ed8de,I969bf4a2
* changes:
  Sign android_filesystem with avbtool
  Refactor filesystem.go to make it easy to build prop file
2021-01-21 00:21:24 +00:00
Colin Cross
5a9e13a2aa Move reflect.ValueOf out of product variable loop am: 0cec312660
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1554553

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Ibc821ee6f7caa931e36d978d19302d6b86550c03
2021-01-21 00:02:59 +00:00
Colin Cross
0cec312660 Move reflect.ValueOf out of product variable loop
Calling reflect.ValueOf for every variable for every module was
using ~3 seconds of CPU time on my AOSP builds.

Test: m checkbuild
Change-Id: Idf459ad8ddf5e07f6c0df0e58e2442aaa6ab3342
2021-01-20 19:32:42 +00:00
Colin Cross
0f93e5b9fb Speed up vendor snapshot header globs
The vendor snapshot header globs were repeated 9 times, once for each
possible header suffix.  Globbing is not a fast operation, so this
took 9.68s of CPU time in my AOSP builds.  Replace it instead with a
single glob, followed by filtering down to the desired header
extensions.

Test: m checkbuild
Change-Id: I9c8f8cdad8cbffc0a42217659a48dd9d676e4e4c
2021-01-20 18:36:25 +00:00
Nicolas Geoffray
d2aff3c2a1 Merge "dexpreopt: Use the dirty-image-objects path from frameworks/base." am: 324234bd00
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1555155

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I464d8e56844d77b2d04374950a99dcc4490b483c
2021-01-20 18:24:26 +00:00
Cindy Zhou
1efd2a75bf Merge "Build against cfi supported coverage lib" am: 0ae13ec307
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1546369

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Ieaadc9008312045ac136ffe21d52b5ce24b3d201
2021-01-20 18:24:09 +00:00
Colin Cross
f5cd3722cf Merge "Don't create SDK variants for native bridge modules" am: bdeafb93fd
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1553881

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Iac7ee26a007b3dea1ecbc300d0d5ebe971c7bf08
2021-01-20 18:23:46 +00:00
Ulyana Trafimovich
5602cf202b Merge "Support building boot images with disabled dexpreopt." am: 0caabb6e27
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1555134

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I3af267485a201e15e1ab8abba5f6ed3ed707dc80
2021-01-20 18:22:57 +00:00
Bill Peckham
24ac16d6e6 Merge changes from topic "prebuilt-hiddenapi" am: 1c8e5e817e
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1546365

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I3062b116fda3d05730d510bafd4dd5183e444cc2
2021-01-20 18:22:17 +00:00
Christopher Parsons
661302cf96 Merge "avoid error if bazel intermediates dir already exists" am: 965561ce43
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1553880

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I5e3e728fc79bdbe0bc5becf3328b6ff9499f70de
2021-01-20 18:21:27 +00:00
Nicolas Geoffray
324234bd00 Merge "dexpreopt: Use the dirty-image-objects path from frameworks/base." 2021-01-20 18:13:20 +00:00
Cindy Zhou
0ae13ec307 Merge "Build against cfi supported coverage lib" 2021-01-20 18:08:30 +00:00
Colin Cross
bdeafb93fd Merge "Don't create SDK variants for native bridge modules" 2021-01-20 17:49:36 +00:00
Ulyana Trafimovich
0caabb6e27 Merge "Support building boot images with disabled dexpreopt." 2021-01-20 17:46:02 +00:00
Bill Peckham
1c8e5e817e Merge changes from topic "prebuilt-hiddenapi"
* changes:
  Supply LOCAL_SOONG_DEX_JAR for java_import with compile_dex.
  Enable an apex to include a java_import.
  Enable prebuilt hiddenapi CSV files.
2021-01-20 17:43:48 +00:00
Christopher Parsons
965561ce43 Merge "avoid error if bazel intermediates dir already exists" 2021-01-20 17:41:18 +00:00
Mohammad Islam
68a9c0aff2 Merge "Fix capex build rule when building using RBE" am: 43c2fe1620
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1554058

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I50c97d736e11fb830c6494899f304255f018f28c
2021-01-20 14:50:05 +00:00
Nicolas Geoffray
1086e604b9 dexpreopt: Use the dirty-image-objects path from frameworks/base.
Test: m
Bug: 176171716
Change-Id: Ifbc08ae03e2b1bec7161948970bd197386e3b305
2021-01-20 14:31:32 +00:00
Mohammad Islam
43c2fe1620 Merge "Fix capex build rule when building using RBE" 2021-01-20 14:21:17 +00:00
Ulya Trafimovich
a4a1c4ee98 Support building boot images with disabled dexpreopt.
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: Ibc45581eef2b205c750a30709780cf659ba7cfa1
2021-01-20 14:03:07 +00:00
Jiyong Park
57621b29c4 LOCAL_REQUIRED_MODULES from apex has ":32" or ":64" suffix
Currently, when a module is included in an APEX, the dependencies of the
modules are listed in LOCAL_REQUIRED_MODULES of the APEX. There are two
purposes for this:

1) for native dependencies, they are installed to
$(TARGET_OUT)/apex/<apexname> directories which isn't packaged as an
*.img. However, as a side effect of the installation, their symbol files
are placed under $(TARGET_OUT)/symbols directory to aid debugging.

2) to implement the symlink optimization. When the APEX is not
updatable, the dependencies are not included inside the APEX, but
installed directly to /system partition because the same files might be
used outside of the APEX. The files in the APEX are replaced with
symlinks to the system copy.

So far, the module name like "libfoo" was directly used in
LOCAL_REQUIRED_MODULES. This becomes problematic when only a single arch
variant of the module is used by the APEX. The build system will install
both arch variants to the system partition.

This change fixes the problem by appending ":32" or ":64" suffix
when composing LOCAL_REQUIRED_MODULES.

Bug: N/A
Test: m
Test: Cherry-pick I285c5d1bb9b27265c8589f2588d95eafa324d412 and its
dependencies from internal master. `m nothing` doesn't show the artifact
path requirement error.

Change-Id: I78feae1d5b18f93b0f984d3b1558812fd1689a96
2021-01-20 20:44:35 +09:00
Chih-Hung Hsieh
6b6b7353f8 Add clang-analyzer check if selected. am: 04f8d379e6
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1554894

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I5d02e3e380aa3c19053546a1b91a8878b5883bff
2021-01-20 07:47:05 +00:00
Chih-Hung Hsieh
04f8d379e6 Add clang-analyzer check if selected.
* WITH_TIDY=1 should not include clang-analyzer-* checks
  because they are too slow.
* Nightly builds will use both WITH_TIDY=1 and
  CLANG_ANALYZER_CHECKS=1.

Bug: 173736193
Test: make with WITH_TIDY=1 and CLANG_ANALYZER_CHECKS=1
Change-Id: I3885fd0e20475ceee5e3798bffc11a61994ac113
2021-01-19 19:21:39 -08:00
Inseob Kim
bc657cb78a Merge "Implement directed vendor snapshot" am: 9bd66d1537
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1541208

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I6ae6bd7c9cd2469c424fab657258fb87bb452796
2021-01-20 01:54:01 +00:00
Inseob Kim
1ee0c0c4ba Merge "Refine sysprop_library header rules" am: 4c4de0edc3
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1553459

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I837872321fa1673ae485b13fe477104910779f66
2021-01-20 01:53:13 +00:00
Inseob Kim
9bd66d1537 Merge "Implement directed vendor snapshot" 2021-01-20 01:17:25 +00:00
Inseob Kim
4c4de0edc3 Merge "Refine sysprop_library header rules" 2021-01-20 01:17:22 +00:00
Ryan Prichard
048809c624 Merge "Switch platform EH unwinder to prebuilt LLVM libunwind" am: 809eac3057
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1551580

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Iec876d769dd1a5370069650c322445e314379127
2021-01-20 00:44:05 +00:00
JaeMan Park
4198b5c05a Merge "Make TestJavaSdkLibraryEnforce faster" am: cdbbb1ea68
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1549896

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I7e834445708aedf78cb3a1e64affe3be5d963968
2021-01-20 00:41:51 +00:00
Ryan Prichard
809eac3057 Merge "Switch platform EH unwinder to prebuilt LLVM libunwind" 2021-01-20 00:10:59 +00:00
JaeMan Park
cdbbb1ea68 Merge "Make TestJavaSdkLibraryEnforce faster" 2021-01-20 00:00:54 +00:00
Jiyong Park
71baa7690a Sign android_filesystem with avbtool
Use_avb and other avb_* properties allows us to sign an
android_filesystem module with avbtool.

Bug: 172415113
Test: m

Change-Id: Ifa1ed8ded1b10170aaca9b34e6a14f0179dbab5d
2021-01-20 08:39:54 +09:00
Jiyong Park
7267831086 Refactor filesystem.go to make it easy to build prop file
The creation of the prop file is refactored to a function.

Bug: 172415113
Test: m

Change-Id: I969bf4a2476f7a4aa9571945d3645d7af52ff09a
2021-01-20 08:35:52 +09:00
Colin Cross
94e347e6a5 Don't create SDK variants for native bridge modules
Native bridge modules never need to build against NDK stubs, so
don't create SDK variants.  Also clear the sdk_version property
for modules that don't have SDK variants so that later code doesn't
use it to trigger SDK behaviors.

Test: m checkbuild
Change-Id: I1920fa82e9fab06235f01a62624382efa16cc6e3
2021-01-19 15:00:45 -08:00
Chris Parsons
07c1e4aba1 avoid error if bazel intermediates dir already exists
Previously, the build failed if the directory already existed,
so mixed builds had to be null builds.

Test: lunch aosp_flame && USE_BAZEL=1 USE_BAZEL_ANAYSIS=1 m libc &&
  USE_BAZEL=1 USE_ANALYSIS=1 m libc
Change-Id: I167cb82b3e47e9388a1ebca7daffe45f91474125
2021-01-19 17:19:16 -05:00
Treehugger Robot
e652936aac Merge "Implement code-generation step for bp2build." am: de1357378b
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1527838

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: If317f9a9df8edf99b704c75acdbd710e3875a422
2021-01-19 18:35:18 +00:00
Bill Peckham
fb04df4d57 Supply LOCAL_SOONG_DEX_JAR for java_import with compile_dex.
Without LOCAL_SOONG_DEX_JAR, ninja fails with a missing
dependency error.

Test: m nothing
Test: new TestImportSoongDexJar
Bug: 173705556
Change-Id: I54a4c6ea93877667a3fb97f8b2621c42e431f577
2021-01-19 18:15:16 +00:00
Bill Peckham
a41a6963b4 Enable an apex to include a java_import.
With the addition of the compile_dex property to the
java_import module it becomes possible to include a
java_import module in an apex. This change allows the
dependency and adds a test.

Bug: 177228901
Test: m nothing
Test: new TestApexWithJavaImport
Change-Id: I9336dade1857109e2fd21f7d57e1dc4abc4a402c
2021-01-19 18:15:03 +00:00
Bill Peckham
bae4749de2 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: I805ea3ec05860d2df211a3985ec025bf36f0d775
2021-01-19 10:07:45 -08:00
Treehugger Robot
de1357378b Merge "Implement code-generation step for bp2build." 2021-01-19 17:41:59 +00:00
Jingwen Chen
daa54bcbba Implement code-generation step for bp2build.
Implement bp2build codegen as a discrete step that runs after an
alternatively registered pipeline of mutators, instead of a
presingleton.

bp2build codegen requires a Context that supports VisitAllModules and
PathContext, so this CL also makes a BpToBuildWrapperContext that
conforms to PathContext by adding two method implementations.

Test: GENERATE_BAZEL_FILES=true m nothing && bazel query //... --config=bp2build | wc -l # 31433
Test: m queryview && bazel query //... --config=queryview # 63638

Change-Id: I0dd359746584b228046d2d0ff00895f28f9bdfc3
2021-01-19 11:03:36 -05:00
Christopher Parsons
3f4738431b Merge "Improve aquery-related validation and error handling" am: ad3421aacf
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1553034

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Ibe6ad11a7af4f36284f73a279176531cf137e724
2021-01-19 15:11:55 +00:00