Commit graph

37745 commits

Author SHA1 Message Date
Paul Duffin
a35f8db127 Make apex variants of prebuilt apex exported modules available in make
Previously, the apex variants of modules exported from prebuilt_apex
and apex_set modules were not exported to make. Neither by the modules
themselves or by the prebuilt apex module. The master-art build relied
on the platform variants of the conscrypt and core-icu4j libraries
being exported to make so that they could be used by vogar.

Unfortunately, a change to export the prebuilt_bootclasspath_fragment
modules that contain the conscrypt and core-icu4j prebuilt libraries
from the corresponding prebuilt_apex prevented the platform variants
of those libraries from being exported at all which broke the
master-art builds as it only has prebuilts of those modules. It did not
break the aosp/master build as that has source modules.

The difference between the two builds is that the apex module type
makes its contents available in make but the prebuilt_apex/apex_set
module types do not.

This change causes the prebuilt_apex/apex_set module types to behave
more like the apex module type by making its exported libraries
available in make.

Test: m droid
      - in aosp/master
      art/tools/buildbot-build.sh --target --installclean
      - in master-art and aosp/master
Change-Id: I57537d17d4920d37d896ed491c6aaa15302cb25d
2021-06-16 19:02:58 +01:00
Treehugger Robot
9bd077aa5e Merge "Switch to clang-r416183d" am: 2f1b9cb86a
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1737013

Change-Id: Idf0e9977f907f7623654bf598b7394c7baefff81
2021-06-16 18:00:27 +00:00
Paul Duffin
6717d88f46 Create APEX variant for prebuilt_apex/apex_set
Previously, the prebuilt_apex/apex_set did not have an apex specific
variant created which meant that they depended upon the platform
variant of the modules it depended upon. This change creates an
apex variant for them just as is done for the apex module type which
causes it to depend upon the apex specific variant of the modules it
depends upon.

Test: m droid
Bug: 179354495
Change-Id: I7d6f3609c267b3e90b90b9befe7d76f351a0c2bd
2021-06-16 18:54:19 +01:00
Treehugger Robot
2f1b9cb86a Merge "Switch to clang-r416183d" 2021-06-16 17:46:24 +00:00
Nikita Ioffe
e261ae64e2 Set default value of generate_hashtree property to true
Test: presubmit
Test: m
Bug: 190621617
Change-Id: I546730f168632c5d5d41c686853bde93a8ba7911
2021-06-16 18:15:03 +01:00
Colin Cross
ca1129695e Merge "Use a linker script for host bionic embedded linker sections" am: 956e32c1be
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1735344

Change-Id: I3f6af1b09775859aa40ffae64fe477fb33845310
2021-06-16 17:05:28 +00:00
Colin Cross
d701a34838 Merge changes Ie384089d,Ie2e954cd am: baf4f0c30a
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1735343

Change-Id: Ibf8b37498aab5fe24fb5845072874dd396c18667
2021-06-16 17:05:13 +00:00
Colin Cross
75decc4e97 Merge changes from topic "host_bionic_no_inject" am: f77d3804fc
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1735341

Change-Id: Ie55dfa7dacf0d27e2dd2a6916c60211c5fb02344
2021-06-16 17:05:01 +00:00
Colin Cross
dc6e968a3f Stop injecting symbols into host bionic binaries am: f04eb99acc
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1735453

Change-Id: Iad472fd7acfca99e5da994429fb62a66c1d6b719
2021-06-16 17:03:59 +00:00
Colin Cross
956e32c1be Merge "Use a linker script for host bionic embedded linker sections" 2021-06-16 16:51:10 +00:00
Colin Cross
baf4f0c30a Merge changes Ie384089d,Ie2e954cd
* changes:
  Support genrules as CrtBegin and CrtEnd
  Support multiple CrtBegin and CrtEnd files
2021-06-16 16:50:59 +00:00
Colin Cross
f77d3804fc Merge changes from topic "host_bionic_no_inject"
* changes:
  Give extracted linker sections pretty names
  Stop injecting symbols into host bionic binaries
2021-06-16 16:50:05 +00:00
Jingwen Chen
b93952e849 Merge "Make SharedLibraryInfo comment clearer." am: d51502d238
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1736516

Change-Id: I013330dd3d54b7468828d0b6ce4a216a83ecc714
2021-06-16 12:14:30 +00:00
Jingwen Chen
d51502d238 Merge "Make SharedLibraryInfo comment clearer." 2021-06-16 12:01:21 +00:00
Paul Duffin
a9c8110470 Dedup apex/Prebuilt and apex/ApexSet
Moves common properties, fields and method into the prebuiltCommon
type.

One slight change is that this change causes the Prebuilt module to use
the outputApex when generating the AndroidMkEntries instead of the
inputApex that it used before. They are the exact same files as the
inputApex is simply copied to the outputApex. The only impact will be
on build time as some rules now depend on the cp rule being run when
they did not before and the base name of the file may be different.

Test: m droid
      - check generated out/soong/Android...mk file before and after
        to make sure the only difference is due to switching from the
	inputApex to outputApex.
Bug: 179354495
Change-Id: I8437af00d6bb7d0d339f25b3b02cd1cf67d6938a
Merged-In: I8437af00d6bb7d0d339f25b3b02cd1cf67d6938a
2021-06-16 10:35:48 +01:00
satayev
142ed27e32 Rename ClasspathFragmentToConfiguredJarList methods to configuredJars.
They are internal implementation details of individual fragments.

Bug: 191127295
Test: m
Change-Id: Ib350135f5f6720741492f362f7b3203e5107772e
2021-06-16 10:13:55 +01:00
Jingwen Chen
7fc226d257 bp2build: group shared/static attrs into a struct. am: c4dc9b4f08
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1733748

Change-Id: I0e9616eb608efdb08ae51da51c04a85e39aca424
2021-06-16 07:18:42 +00:00
Jingwen Chen
c4dc9b4f08 bp2build: group shared/static attrs into a struct.
This makes bp2build generate these attrs into a Starlark dictionary,
passed into the cc_library macro directly. This makes the BUILD target
representation more similar to the Android.bp one, and also makes
it more legible.

Test: TH
Change-Id: I42b427cc4b22c6376d3d24e40b9af1692bb0c692
2021-06-16 05:40:37 +00:00
Jingwen Chen
702963e74d Make SharedLibraryInfo comment clearer.
Nit from aosp/1727935

Test: TH
Change-Id: I4cf6d63fb3b1f0bd1762d5e4ea261aa8f5a4b580
2021-06-15 23:44:13 +00:00
Treehugger Robot
ffa60aa20f Merge changes I0aee679a,I7fb380a3 am: 3420b834d8
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1728214

Change-Id: I68ad5c8402ea94f4cadd23102cb51cc5a172d5f2
2021-06-15 23:16:58 +00:00
Treehugger Robot
3420b834d8 Merge changes I0aee679a,I7fb380a3
* changes:
  Add systemapi as an APEX synonym for stub maps.
  Refactor tag handling code in stub generator.
2021-06-15 22:59:10 +00:00
Treehugger Robot
d4bca70a75 Merge "Don't enforce ordering for ABI validation." am: 45d7289e7c
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1737316

Change-Id: I6c660e138d7036a19f2974c0db2d3b675f33c9a1
2021-06-15 22:04:55 +00:00
Treehugger Robot
45d7289e7c Merge "Don't enforce ordering for ABI validation." 2021-06-15 21:41:57 +00:00
Pirama Arumuga Nainar
9375585937 Merge "Mark more fields in BaseLinkerProperties as arch variant" am: f9d141ee9a
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1737314

Change-Id: I34ca0cf872b0655a5e305942946c02a360eeca08
2021-06-15 21:29:55 +00:00
Pirama Arumuga Nainar
f9d141ee9a Merge "Mark more fields in BaseLinkerProperties as arch variant" 2021-06-15 21:14:14 +00:00
Dan Albert
4922703e86 Don't enforce ordering for ABI validation.
We care that these run, but they don't need to complete before we use
the sysroot.

Test: mm in CTS, saw ABI dump run
Bug: None
Change-Id: Iff1961d1ff03430d808caa83b3ca1fc1eceecfcd
2021-06-15 13:26:55 -07:00
Spandan Das
875ab39271 Merge "Bootstrap empty glob file" am: 7e81e1efbc
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1735978

Change-Id: I551d19fb1e5cfaf3973e354e86691e7728abf07e
2021-06-15 19:46:19 +00:00
Spandan Das
7e81e1efbc Merge "Bootstrap empty glob file" 2021-06-15 19:23:48 +00:00
Pirama Arumuga Nainar
250c5217a2 Mark more fields in BaseLinkerProperties as arch variant
Bug: http://b/189438896

This allows setting a different version script for vendor and
platform variants.

Test: The following blueprint snippet builds:
      target: { android_arm64: {
        target: vendor: {
            version_script: "..." } } }
Change-Id: I47e7afeaee3c9124f4231bf0eece7b6844b5313d
2021-06-15 11:03:48 -07:00
Spandan Das
8f99ae6bc0 Bootstrap empty glob file
1. Initialize an empty glob file for .bootstrap/build.ninja. Initializing
in soong_ui (and not soong_build) prevents inadvertently creating the
file inside the source tree
2. Remove soong-build-globs.ninja, which is not used during the build

Bug: 187194795
Test: Ran the following command locally for the target
art-target-arm:git_master-art
```
. ./build/envsetup.sh && lunch armv8-eng &&
art/tools/buildbot-build.sh --target
```

Change-Id: Ibe6eeff65ea1ab25136642299e9878d0da1cac42
2021-06-15 17:50:46 +00:00
Lukács T. Berki
4c8d04dcf5 Merge "Update some comments about the image mutator." am: 84a1601804
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1737526

Change-Id: If26c2b2f3a91801db45d5439aed6dcd53c7edee1
2021-06-15 16:33:42 +00:00
Lukács T. Berki
84a1601804 Merge "Update some comments about the image mutator." 2021-06-15 15:50:11 +00:00
Chris Parsons
e6819aa944 Support cc_library_shared for mixed builds am: 94a0bba5a9
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1727935

Change-Id: I278a624b027540e5a637d982785d57fd0f4cef36
2021-06-15 15:13:31 +00:00
Lukacs T. Berki
2f5c340b49 Update some comments about the image mutator.
Test: It's just comment changes.
Change-Id: Idac69f5369caad028f3daa6aa5c1088d697c07e2
2021-06-15 15:49:51 +02:00
Chris Parsons
94a0bba5a9 Support cc_library_shared for mixed builds
Authors: cparsons, eakammer, jingwen

This CL also contains .toc file integration between Bazel and Make.

Fixes: b/190524879

Test: build/bazel/ci/mixed_droid.sh

Co-authored-by: Christopher Parsons <cparsons@google.com>
Co-authored-by: Liz Kammer <eakammer@google.com>
Co-authored-by: Jingwen Chen <jingwen@google.com>

Change-Id: If484042a58cb9f0db6d30a460f415f5684b4cbf6
2021-06-15 12:40:28 +00:00
Treehugger Robot
a7496dbf4c Merge "Wrapper script to use Starlark-based configuration" am: 79e04280ba
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1736354

Change-Id: I9ac44b1be88debb9d9f50bcef5b619b7230788a8
2021-06-15 06:08:01 +00:00
Treehugger Robot
79e04280ba Merge "Wrapper script to use Starlark-based configuration" 2021-06-15 05:52:34 +00:00
Colin Cross
c113e3cbe7 Use LateStaticLibs for ndk_libandroid_support
This will obsolete the workaround in prebuilts/ndk/Android.bp to
export the ndk_libandroid_support headers from ndk_libc++_shared,
which would no longer have worked after the next patch.

Test: m checkbuild
Test: TestIncludeDirectoryOrdering
Change-Id: I9b4e5799d939433da547661b862e9db5a4aacb09
2021-06-14 18:12:58 -07:00
Colin Cross
fe9acfecb3 Move LateStaticLibs after SharedLibs in the dependency include order
LateStaticLibs has always been after StaticLibs, move it after
SharedLibs too so that exported headers from LateStaticLibs
dependencies come after exported headers from SharedLibs dependencies.
This will be used to ensure the ndk_libandroid_support headers come
after the ndk_libc++_shared headers.

Test: m checkbuild
Change-Id: I5ef180c99cefcd823c6970c06d0e772a10fa0456
2021-06-14 18:12:58 -07:00
Colin Cross
ae62818dd8 Test include directory ordering
Add a test to verify include directory ordering on the command line.

Test: TestIncludeDirectryOrdering
Change-Id: Iaf03c57201e9ec7a8daf417cb91470a5215e4053
2021-06-14 18:12:52 -07:00
Treehugger Robot
e7e443b820 Merge "Add a build flag to always enable errorprone per-target" am: 768692bc69
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1735975

Change-Id: I7fc8b462d0a8b504e3aa4066c9e27fb158483851
2021-06-15 00:50:29 +00:00
Treehugger Robot
768692bc69 Merge "Add a build flag to always enable errorprone per-target" 2021-06-15 00:32:41 +00:00
Sasha Smundak
a3be792b10 Wrapper script to use Starlark-based configuration
Test: manual
Bug: 181797530
Change-Id: I51edea16982386a1022c77ddd282e95b2c5d77a2
2021-06-14 15:52:08 -07:00
Cole Faust
75fffb14b8 Add a build flag to always enable errorprone per-target
Currently, errorprone is only run if the RUN_ERROR_PRONE
enviornment variable is true. Add a flag that individual
modules can use to always enable errorprone.

In a followup cl, I plan to add another flag that will
force all errorprone checks to be errors, so that modules
can be confident that they're not ignoring any errorprone
checks.

Bug: 190944875
Test: New unit test and manually
Change-Id: Iab0c81642ed22a736add054147829e91a891d179
2021-06-14 15:31:32 -07:00
Paul Duffin
e63e0cc94e Merge "Avoid passing around []hiddenAPIModule" am: 881baf5573
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1736224

Change-Id: Ia794359e5a581d6b8b705d213eb17fae51454504
2021-06-14 22:19:04 +00:00
Paul Duffin
881baf5573 Merge "Avoid passing around []hiddenAPIModule" 2021-06-14 22:02:42 +00:00
Nikita Ioffe
571a72a46b Merge "Rename test_only_no_hashtree to generate_hashtree" am: 5868ba016d
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1734152

Change-Id: I475c6159f198a84cd6b31b888b99567a7c32ec8a
2021-06-14 20:22:42 +00:00
Paul Duffin
d0a7be3222 Improve error reporting when a rule cannot be found am: 4dbf6cfbae
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1736223

Change-Id: Ida5552db4748838406f41d66f101aff1a7b3443c
2021-06-14 20:20:22 +00:00
Nikita Ioffe
5868ba016d Merge "Rename test_only_no_hashtree to generate_hashtree" 2021-06-14 20:16:21 +00:00
Martin Stjernholm
6fe860b47f Clean up statsd-module-sdk-for-art.
No longer needed.

Test: build/soong/scripts/build-mainline-modules.sh
Bug: 188761143
Bug: 180769414
Change-Id: I3524095d0399710e5f474fcc322eba008abfb797
2021-06-14 19:50:58 +01:00