Commit Graph

5855 Commits

Author SHA1 Message Date
Jiakai Zhang
f0a85f8611 Merge "Revert "Remove the primary boot image from the ART APEX."" am: e51b2377f5 am: 1283b87457 am: ba249a585c
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1984988

Change-Id: I2e9bae8c9322a700aa6b293a05c2eeff3d040cfe
2022-02-14 14:23:53 +00:00
Jiakai Zhang
e51b2377f5 Merge "Revert "Remove the primary boot image from the ART APEX."" 2022-02-14 13:39:57 +00:00
Jiakai Zhang
fb14676ed4 Revert "Remove the primary boot image from the ART APEX."
Revert submission 1946769-boot-image-flip-b211973309

Reason for revert: Broke golem
Reverted Changes:
I80ffd9160:Remove the primary boot image from the ART APEX.
I45aaa5984:Remove the primary boot image from the ART APEX.

Change-Id: I9167a12cb158ede140dd44dc4458b0770c858379
2022-02-14 12:14:01 +00:00
Jiakai Zhang
ecc46828c9 Merge "Remove the primary boot image from the ART APEX." am: 135103e381 am: 19cc01abc2 am: 6d44add326
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1947128

Change-Id: Iaec78f236c1f3819690ab36efd5acb8a11bbccbb
2022-02-14 11:17:07 +00:00
Jiakai Zhang
135103e381 Merge "Remove the primary boot image from the ART APEX." 2022-02-14 09:59:16 +00:00
Pedro Loureiro
fe7d5f48a3 Pass shared library updatability attributes as strings am: b638c62620 am: 123a7a7266 am: 59c7e5459d
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1982906

Change-Id: I9c305a750e6df8a9c7bb8836a86c63ac6816ee5f
2022-02-11 22:05:40 +00:00
Pedro Loureiro
b638c62620 Pass shared library updatability attributes as strings
Migrate from ints to Strings so we can pass codenames. Otherwise we
can't use these attributes representing a release in progress until that
release is finalized. I.e. if release T is in progress, we don't get the
correct behaviour if we use "T" in those attributes

Bug: 191978330

Test: m nothing
Change-Id: I35389da0a01549ba2f820f5e5b78f6ea88c2aea1
2022-02-11 17:59:36 +00:00
Treehugger Robot
5a2f2397e3 Merge "add support for java stream protos in protoDeps" am: d107272436 am: a5b9712117 am: 04f697ffc4 am: 9da60d7951
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1972759

Change-Id: If2c7d2e1f3935ed278c1e360f6f07897bcf337de
2022-02-11 02:45:34 +00:00
Treehugger Robot
d107272436 Merge "add support for java stream protos in protoDeps" 2022-02-11 01:19:32 +00:00
Gurpreet Singh
aa858d405c Merge "Manifest Fixer Params code refactor" am: 7761de5d4e am: bdf5b8030e am: 5f93fb0f44 am: e692318fe0
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1979469

Change-Id: I2cd15fc63d2e9f96b081732236c1f8aed6bb30e3
2022-02-10 19:11:08 +00:00
Gurpreet Singh
7761de5d4e Merge "Manifest Fixer Params code refactor" 2022-02-10 18:22:30 +00:00
Treehugger Robot
49c83cf6f5 Merge "Use Tiramisu instead of T in supported_build_releases" am: 52aad81d45 am: fcb871ac39 am: 5bf9b0691e am: b45e3d7b1a
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1979466

Change-Id: Ie9a5421b8e38f0643c5ea78ce75cf38ae85c02a5
2022-02-10 17:14:57 +00:00
Gurpreet Singh
7deabfacd0 Manifest Fixer Params code refactor
This CL refactors the code related to ManifestFixer parameters.
The required parameters android.ModuleContext, manifest android.Path are
passed separately as the parameters and the optional parameters are
kept as part of the ManifestFixerParams struct.

By default, the member variable of struct have the zero (nil, false,
empty string) values. Hence, it is only required to pass the
parameters of interest at the time of function call to
ManifestFixer.

Manual testing done to check the working of the code.

Test: m nothing && m test_com.android.sdkext
Test: manually tested the generation of AndroidManifest in the out
directory with the testOnly attribute
Test: atest manifest_fixer_test --host
To test the existing unittests are not breaking.

Change-Id: I20cb6c06c57f8fe7811050288bcb03945dc0425b
2022-02-10 13:37:50 +00:00
Paul Duffin
e7babdbfe1 Use Tiramisu instead of T in supported_build_releases
Make this consistent with how code names are used in the rest of Soong.

Bug: 204763318
Test: m nothing
Change-Id: I1f2f40310df9d619db6aaaad3ed7339bb5e79194
2022-02-10 13:06:54 +00:00
Sam Delmerico
9f047d9f18 add support for java stream protos in protoDeps
The java module currently supports full, lite, micro, and nano protobuf
types, but it doesn't support the stream type. This commit fixes that.

Bug: 217241348
Test: go test ./java -run TestProto
Change-Id: Ifae51734103d424892b66da43ca51e7b6fbe45ba
2022-02-07 22:39:38 +00:00
Paul Duffin
3ed2d0e53c Merge "Add support for excluding libraries from class loader contexts" am: e95d77b964 am: ab9e6fe18f am: 7c89c48887 am: 10ccb6c274
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1971343

Change-Id: Ia03300d88199034f2cf07dbb9ca229e5e13ceb00
2022-02-07 18:39:48 +00:00
Paul Duffin
e95d77b964 Merge "Add support for excluding libraries from class loader contexts" 2022-02-07 17:52:27 +00:00
Treehugger Robot
cd814286bc Merge "Allow installing boot images outside of APEX for prebuilt." am: 210957500c am: fd08d7e9a5 am: 941eaf9fa1 am: cbe9579d13
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1964908

Change-Id: I85428312f74919580a4c177d637f917cf6211639
2022-02-07 16:47:29 +00:00
Treehugger Robot
210957500c Merge "Allow installing boot images outside of APEX for prebuilt." 2022-02-07 15:58:36 +00:00
Paul Duffin
0653057603 Add support for excluding libraries from class loader contexts
A number of tests in the cts/tests/signature/api-check check for the
accessibility of classes from the android.test.base,
android.test.runner and android.test.mock libraries. Some tests expect
to find the classes other do not. Unfortunately, the tests use
libraries, specifically compatibility-device-util-axt, that depend on
the android.test... libraries which causes Soong to implicitly add
<uses-library> entries to the manifest so that they will be accessible
at runtime. That causes the tests that do not expect to find the
classes to fail.

Bug: 209607558
Test: m nothing
Change-Id: I54c194ab23d5a70df790ece3fe98f2b3d6a1c1f6
2022-02-07 14:57:53 +00:00
Sam Delmerico
67a4f2511b Merge "add target_compatible_with stanza for host targets" am: 75664acd70 am: c9c5269342 am: 608b32f41a am: d3b10485f0
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1966480

Change-Id: I521a6c7e2ef12516bebe06661086ebe3338a1bad
2022-02-04 20:15:02 +00:00
Sam Delmerico
75664acd70 Merge "add target_compatible_with stanza for host targets" 2022-02-04 19:15:04 +00:00
Romain Jobredeaux
a50778b117 Merge "Use common java library attributes for android_app bp2build converter." am: 99a81c8dfd am: abf2323829 am: 7b368117a6 am: 9be703df2c
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1969119

Change-Id: I49791f01bdeced17d8ce5964d7e170ef588b922a
2022-02-03 22:16:09 +00:00
Romain Jobredeaux
99a81c8dfd Merge "Use common java library attributes for android_app bp2build converter." 2022-02-03 21:09:26 +00:00
Sam Delmerico
75539d62ae add target_compatible_with stanza for host targets
Soong modules that are specific for the host platform (e.g.
java_library_host, cc_binary_host, java_genrule_host, etc.) should
not be built on the target platform (Android), so we add a
target_compatible_with attribute to skip this type of module on an
Android target build.

Bug: 215229742
Test: go test ./bp2build
Change-Id: Ifb76ef4e0dc4cb3adb6a64b5c375ce36f7973e48
2022-02-03 19:25:12 +00:00
Sam Gilbert
b020b55a4c Merge "Disable a few metalava checks that platform fails after improvements." am: a6c0ac6529 am: 1d71e6047d am: 94dc2dbbbc am: 7efc7ddc37
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1968699

Change-Id: I7bb246d0f727fda4b14d941f957d0aa430dab8f6
2022-02-03 15:47:53 +00:00
Sam Gilbert
a6c0ac6529 Merge "Disable a few metalava checks that platform fails after improvements." 2022-02-03 14:28:42 +00:00
Treehugger Robot
8bf220137e Merge changes Ie5939628,Id103f70f am: d519b331f2 am: 6aa1338f6c am: 1a8394b6de am: 9d86abb522
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1963154

Change-Id: Ic15fc6c61d91a81331a4e33f72ff0996fc83017a
2022-02-02 18:53:55 +00:00
Sam Gilbert
1a0fa38342 Disable a few metalava checks that platform fails after improvements.
Change-Id: Iead8d6a26ba3c75d3612dccc5bebd82c39b5aad8
Tests: none
Bug: 217545629
Bug: 217552813
Bug: 217553717
2022-02-02 17:56:57 +00:00
Treehugger Robot
d519b331f2 Merge changes Ie5939628,Id103f70f
* changes:
  Only output annotations properties in snapshots for T+
  Allow pruning of unsupported fields in structs in maps
2022-02-02 17:43:57 +00:00
Romain Jobredeaux
e8acade177 Use common java library attributes for android_app bp2build converter.
Change-Id: I4dc7600fbe80eddc54a7fadd6418d6911af0b7f2
Test: go test ./bp2build
2022-02-02 12:18:37 -05:00
Sam Delmerico
0967bbd2b9 Merge changes I09902215,I4f86780c am: ca1701f518 am: 1a55f241a3 am: ab2fb64e8f am: b97ce907cf
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1963619

Change-Id: I7746497fa9c3f2dbcdbd13058139c9e6b72c64e3
2022-02-02 15:42:05 +00:00
Sam Delmerico
ca1701f518 Merge changes I09902215,I4f86780c
* changes:
  convert java_plugin with bp2build
  convert java static dependencies
2022-02-02 14:27:32 +00:00
Sam Delmerico
c06ea03c9e convert java_plugin with bp2build
Also, because java_plugin is only intended to be built for the host
platform to make additions to the javac compiler, a compatibility
requirement is added to java_plugin that ensure that it is not built
for android targets.

Bug: 215229742
Test: go test ./bp2build
Change-Id: I09902215a9f1e8b14d4de5a51328d08a7a0a4450
2022-02-01 22:59:19 +00:00
Sam Delmerico
fde9fb5c9c convert java static dependencies
This commit enables conversions of java_library_static and adds the
static_deps Soong attribute to Bazel deps for all Java libraries.
Currently, Soong handles static dependencies for Java differently, and
Bp2build may need to address that later (see b/217236083).

Bug: 215229742
Test: go test ./bp2build
Change-Id: I4f86780c634dca0a2cfb9294084b14e139cc2375
2022-02-01 22:59:04 +00:00
Gurpreet Singh
7286c45a7c Merge "Add testOnly attribute to AndroidManifest file of apex_test" am: ac0a9b00a4 am: dc3ffc8c3a am: 95068d632f am: 00568743ba
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1959021

Change-Id: I35cbfea1d3411bf8c6a5d05d5aaf09fd5f6073a8
2022-02-01 15:38:57 +00:00
Gurpreet Singh
ac0a9b00a4 Merge "Add testOnly attribute to AndroidManifest file of apex_test" 2022-02-01 14:25:16 +00:00
Gurpreet Singh
75d65f360c Add testOnly attribute to AndroidManifest file of apex_test
If the build file contains the apex_test module, add the
testOnly attribute to the application element of the
corresponding AndroidManifest file and set its value to true.
If the testOnly attribute is already present and has value
false, then do nothing.

Tests added in manifest_fixer_test.py to check if the updated
AndroidManifest file has the testOnly attribute set to true or not.

Bug: 213310150
Test: atest --host manifest_fixer_test
Test: m nothing
Test: manually checked the AndroidManifest file generated
Change-Id: I36247dbe0261c342d451a4422c314fd8fe0c2369
2022-02-01 12:03:48 +00:00
Treehugger Robot
75ecfec54f Merge changes from topic "sdk_repo_license" am: 97cffec54e am: 3e17f67a38 am: 211d8cd822 am: 7e7e0032ce
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1965242

Change-Id: I0ef64acca04c3a014e83df14b7d1fad16375141e
2022-02-01 00:31:56 +00:00
Treehugger Robot
97cffec54e Merge changes from topic "sdk_repo_license"
* changes:
  Generate sdk_repo notice files from license metadata
  Annotate more java dependencies for licensing
  Track transitive packaged license deps of containers
2022-01-31 23:34:59 +00:00
Treehugger Robot
d929bfdef7 Merge "Adding metalava team to OWNERS to be able to disable metalava checks that will break platform build." am: b8df4b890c am: 0f89a61d36 am: 4cff831ac7 am: 8c90024559
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1965539

Change-Id: Ia243d6fd870acc89a74c12fa675da131f0519d93
2022-01-31 18:55:53 +00:00
Treehugger Robot
b8df4b890c Merge "Adding metalava team to OWNERS to be able to disable metalava checks that will break platform build." 2022-01-31 17:49:47 +00:00
Paul Duffin
a54016c3ba Only output annotations properties in snapshots for T+
Marks the `scopeProperties.AnnotationsZip` property as only being
supported on T builds and above.

Bug: 204763318
Test: m nothing
Change-Id: Ie59396287c08da77a6a1f15d4be202429e011e17
2022-01-31 12:28:04 +00:00
Paul Duffin
106a3a4bec Allow pruning of unsupported fields in structs in maps
Adds support for traversing into a field that is of type:
   map[...]*struct{...}

This is needed to allow java_sdk_library to mark scope specific
properties, e.g. public.annotations as being target build release
specific.

It was necessary to change the Scope field from:
   Scope map[*apiScope]scopeProperties
to:
   Scope map[*apiScope]*scopeProperties

That is because there is no way in go to change the field of a struct
value of a map. i.e. you cannot do the following, not even using
reflection:
   Scope[apiScopePublic].AnnotationsZip = nil

Bug: 204763318
Test: m nothing
Change-Id: Id103f70f55d4202971321ef4925cbec4b55f8136
2022-01-31 12:28:04 +00:00
Romain Jobredeaux
05169e81cc Merge "Basic bp2build converter for java_import." am: ea64e62dab am: bf670bc2c5 am: 9fcbe2509a am: fb012b7baa
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1965379

Change-Id: Ib1139bd6914423c79b45e7d673a2264e070d91b5
2022-01-29 21:15:26 +00:00
Romain Jobredeaux
ea64e62dab Merge "Basic bp2build converter for java_import." 2022-01-29 20:05:08 +00:00
Romain Jobredeaux
428a366703 Basic bp2build converter for java_import.
This only supports the `jars` property/attribute.

Test: b build external/error_prone:error_prone_core_jars
Bug: 215229744
Change-Id: If0d9c8c4e9c1c560d35a501c20bef9361ef45e15
2022-01-29 09:44:37 -05:00
Colin Cross
ce56425a6b Annotate more java dependencies for licensing
Annotate more dependencies as runtime linked or toolchain.

Bug: 207445310
Test: m checkbuild
Change-Id: Ia5dc3321a1e476b16058eee94d6dc494fe1e933e
2022-01-28 15:42:06 -08:00
Treehugger Robot
04236b4319 Merge "Limit JIT tier for javac" am: 52ef4c3373 am: cc5e84c5a1 am: 2f148420af am: 4fb4f5136a
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1964540

Change-Id: I6d82259156eeac59544b5305746ee250502e4670
2022-01-28 23:12:50 +00:00
Treehugger Robot
52ef4c3373 Merge "Limit JIT tier for javac" 2022-01-28 21:59:05 +00:00