Commit Graph

5669 Commits

Author SHA1 Message Date
Paul Duffin
d94e4f5554 Merge "List bootclasspath_fragments in module-info.json" 2022-03-08 11:50:54 +00:00
Sam Delmerico
881d72022a bp2build java_libraries depend on Android SDK
Soong adds an implicit dependency on the Android SDK for all
java_libraries (and related modules). This feature becomes apparent
after converting arch-variant srcs for android_apps, so we should suport
this for now. Eventually, we will want to replace this forced dependency
with a Bazel toolchain workaround.

Test: build/bazel/ci/bp2build.sh
Change-Id: Ic28e8c7690f69294b4bdcb9bb78a6f1f031fe97e
2022-03-07 15:50:42 +00:00
Treehugger Robot
0d4833b18c Merge "Disable BannedThrow check" 2022-03-05 02:17:56 +00:00
Colin Cross
59c1e6ac0e Support experimental building with OpenJDK 17
Use EXPERIMENTAL_USE_OPENJDK17_TOOLCHAIN=true to build with OpenJDK 17
while still targeting java language version 11.

Bug: 219098645
Test: m EXPERIMENTAL_USE_OPENJDK17_TOOLCHAIN=true
Change-Id: I89fb04ecde4dbd1e102098f316692624dd67f8a2
2022-03-04 21:40:02 +00:00
Sam Gilbert
049af11112 Disable BannedThrow check
Bug: 222738070
Test: N/A
Change-Id: Id9d393c9b5c5c21d69c8b3a8d5456c66358426d9
2022-03-04 16:19:19 -05:00
Paul Duffin
ea465fbd3b List bootclasspath_fragments in module-info.json
Bug: 202154151
Test: lunch aosp_cf_x86_64_phone-userdebug
      m out/target/product/vsoc_x86_64/module-info.json
Change-Id: I2bdb6783f7570d89f5c3150b39f1be920c2a8989
2022-03-04 18:44:47 +00:00
Sam Delmerico
d508a638c3 Merge "convert android_app certificate property, bp2build" 2022-03-04 17:30:31 +00:00
Colin Cross
ea74a4779f Merge "Increase errorprone heap size" 2022-02-28 23:02:12 +00:00
Colin Cross
8bf6cad170 Increase errorprone heap size
Increase the size of the errorprone heap to fix OOM exceptions.

Bug: 221480398
Test: forrest
Change-Id: Ia74fd4ecc57f08bcbaa1388e0734ee0cce8ae1a4
2022-02-28 13:10:50 -08:00
Thiébaud Weksteen
315352e71c Merge "Add AIDL enforce_permissions attribute" 2022-02-24 02:25:20 +00:00
Thiébaud Weksteen
de8417c707 Add AIDL enforce_permissions attribute
When set to true, this attribute will pass down the
-Wmissing-permission-annotation flag to the aidl compiler. It is
possible to declare a set of exceptions (for a graduable adoption). For
now, only Java is supported.

Test: build having the attribute enabled for frameworks/base
Bug: 220214993
Change-Id: I54350199b4d980aef0050519e3daf1fef616d08c
2022-02-24 10:15:27 +11:00
Aurimas Liutikas
8b99da5f37 Merge "Disable new ApiLint check temporarily" 2022-02-23 21:43:55 +00:00
Sam Delmerico
bc83b504ff Merge "convert java proto libraries with bp2build" 2022-02-23 16:13:15 +00:00
Anton Hansson
2ace628b86 Merge "Revert "Disable a few metalava checks that platform fails after improvements."" 2022-02-23 10:22:28 +00:00
Anton Hansson
ff5f3b9dc7 Revert "Disable a few metalava checks that platform fails after improvements."
This reverts commit 1a0fa38342.

Reason for revert: No longer needed
Bug: 217545629
Bug: 217552813

Change-Id: I6db416c6f30a662752687b33c9824bbd8fa9fd2b
2022-02-22 14:09:05 +00:00
Anton Hansson
d2149e6a81 Merge changes from topics "extdir", "threadvars"
* changes:
  Add support for sdk extensions in prebuilt_apis
  Refactor prebuilt_apis.go
  Add base sdk extension version to the config
2022-02-22 13:46:47 +00:00
Anton Hansson
3a3f169b56 Add support for sdk extensions in prebuilt_apis
This makes it possible to pass an extensions_dir containing finalized
module APIs to prebuilt_apis. The extension versions are compared to the
api level versions to figure out what the "latest" finalized API is for
each module. This is done using the base_sdk_extension_version, such
that any extension higher than than base_sdk_extension_version is
assumed to be finalized after any of the existing api level versions.

Bug: 220086085
Test: prebuilt_apis_test.go
Test: existing module in prebuilts/sdk
Change-Id: Ib792f84202d436f594ba5e8716c6a187f9cd60dc
2022-02-21 16:43:43 +00:00
Sam Delmerico
9dfb139b6d convert android_app certificate property, bp2build
The android_app certificate property can be converted to the
@android_rules debug_signing_keys attribute in Bazel after converting
the .pk8/.pem key pairs to a JKS keystore in Starlark.

Test: b build -s //frameworks/base/tests/appwidgets/AppWidgetHostTest
  and verify includes SignApk action with generated keystore
Bug: 194133023
Change-Id: I2c4276f94a7856fc68a7674e89742f887dca31b4
2022-02-18 20:17:01 +00:00
Anton Hansson
3c0779a6b1 Sort the list of hidden warnings
The list was difficult to read.

Test: m nothing
Change-Id: I55c55033e411f891083264942c543dcd45540c75
2022-02-18 19:24:30 +00:00
Anton Hansson
377318b33f Refactor prebuilt_apis.go
Improve code re-use and improve the names and data types of various vars
and functions. This makes it easier to extend it for the new use-case of
also supporting sdk extension versions on top of the current api level
versions.

This change is intended to be a noop.

Bug: 220086085
Test: m nothing (existing soong tests)
Change-Id: Icf4b320285f791e3b335f71f3c8b1ac52129dbc9
2022-02-18 15:34:37 +00:00
Treehugger Robot
59060e093d Merge "Revert^2 "Remove the primary boot image from the ART APEX."" 2022-02-17 10:31:42 +00:00
Jiakai Zhang
d7f55164a0 Revert^2 "Remove the primary boot image from the ART APEX."
fb14676ed4

Change-Id: I221cb84e7a38393a42ddda2042d25af3aad1ccf1
2022-02-16 17:45:39 +00:00
Sam Delmerico
c768102bce convert java proto libraries with bp2build
Allow java_libraries that depend on protobufs to be converted with
bp2build.

Bug: 215230097
Test: build/bazel/ci/bp2build.sh
Change-Id: I3ce52389e7e4e82755605ee277c1e527a6aebc6b
2022-02-15 21:04:59 +00:00
Sam Gilbert
09cb5dbe29 Disable new ApiLint check temporarily
This should be reverted/re-enabled once car-lib no longer throws
errors for the method fixed in aosp/1840533

Test: n/a
Bug: 144855352
Change-Id: Ifc1a135360d9d357237f5dbe5904f6e77b18a94a
2022-02-15 16:48:40 +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
135103e381 Merge "Remove the primary boot image from the ART APEX." 2022-02-14 09:59:16 +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
d107272436 Merge "add support for java stream protos in protoDeps" 2022-02-11 01:19:32 +00:00
Gurpreet Singh
7761de5d4e Merge "Manifest Fixer Params code refactor" 2022-02-10 18:22:30 +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
e95d77b964 Merge "Add support for excluding libraries from class loader contexts" 2022-02-07 17:52:27 +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
75664acd70 Merge "add target_compatible_with stanza for host targets" 2022-02-04 19:15:04 +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
a6c0ac6529 Merge "Disable a few metalava checks that platform fails after improvements." 2022-02-03 14:28:42 +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
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
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
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
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