Commit Graph

6067 Commits

Author SHA1 Message Date
Colin Cross
9bb9bfb349 Don't pass static libs to r8
r8 gets the static libs in the program jar, it shouldn't also get
them as library jars.  Keep a separate classpath for dexing that
includes libs but not static_libs.

Bug: 222468116
Test: m checkbuild
Test: TestD8
Test: TestR8
Change-Id: Icca3393f496cbcadcc633f3b156761e6c145f975
2022-03-18 20:48:27 +00:00
Paul Duffin
e3b56cb45f Merge "Make bootclasspath_fragment hidden API package checks exhaustive" am: 2cb89166df am: bbf4ec6965 am: 50ed6e64a5
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2028212

Change-Id: I125679a87a40deedc1f5435b8459bf8c8d96a419
2022-03-18 19:30:46 +00:00
Paul Duffin
2cb89166df Merge "Make bootclasspath_fragment hidden API package checks exhaustive" 2022-03-18 18:42:37 +00:00
Nicolas Geoffray
c219c50030 Merge "Pass --preloaded-classes to boot image compilation." am: 1a9df2604c am: d06a2b083e am: feb00d5550
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2024665

Change-Id: I105fcb8757171c12ecb32879a41b9849bb2b3360
2022-03-18 14:24:25 +00:00
Nicolas Geoffray
1a9df2604c Merge "Pass --preloaded-classes to boot image compilation." 2022-03-18 13:41:59 +00:00
Paul Duffin
846beb7f54 Make bootclasspath_fragment hidden API package checks exhaustive
Previously, the bootclasspath_fragment's hidden_api.split_packages and
hidden_api.package_prefixes properties did not specify an exhaustive
set of packages that were provided by the fragment. They excluded
packages which were either not split or which could not be used as a
package prefix because it would match sub-packages provided by other
bootclasspath modules.

This change adds the hidden_api.single_packages list to specify those
additional packages and then uses that information to verify that any
bootclasspath_fragment that specifies at least one of split_packages,
single_packages or package_prefixes properties only contains classes
from a package that matches one of those properties. That will
prevent a module from accidentally including unexpected classes, such
as might happen when statically including a common utility library.

It also adds coverage specific versions of the properties as additional
packages are added to the art-bootclasspath-fragment when building
coverage builds.

Bug: 194063708
Test: atest signature_patterns_test
      m out/soong/hiddenapi/hiddenapi-flags.csv
      m EMMA_INSTRUMENT=true EMMA_INSTRUMENT_FRAMEWORK=true out/soong/hiddenapi/hiddenapi-flags.csv
      # Breaks without corresponding change to add android.system to
      # the art-bootclasspath-fragment.
      /usr/bin/pylint --rcfile $ANDROID_BUILD_TOP/tools/repohooks/tools/pylintrc scripts/hiddenapi/signature_patterns*.py
      pyformat -s 4 --force_quote_type single -i scripts/hiddenapi/signature_patterns*.py
Change-Id: Iddf6c59cd4dc8c36dde7943a9840ccef5794b320
2022-03-18 10:54:51 +00:00
Colin Cross
5a2ccb5914 Merge "Export the license metadata files for dexpreopted bootjars to Make" am: 143b8d4eb1 am: dbd09f2192 am: 3401e518a6
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2026929

Change-Id: I07050fd64e4b7f408a87a8effeeab3bd83a49508
2022-03-17 03:50:38 +00:00
Colin Cross
143b8d4eb1 Merge "Export the license metadata files for dexpreopted bootjars to Make" 2022-03-17 01:48:47 +00:00
Patrick Rohr
f6337e86f7 Merge "Remove ethernet-service jar dependency." 2022-03-16 16:03:30 +00:00
Colin Cross
e7fe0962f4 Export the license metadata files for dexpreopted bootjars to Make
Track the license metadata file of the module used to dexpreopt
bootjars and pass it to Make.

Bug: 224612665
Test: m alllicensemetadata reportmissinglicenses
Change-Id: I8466c3d8edf7dc44976c2a343bd38799c6617db2
2022-03-15 19:56:45 -07:00
Xiao Ma
488ecd2999 Remove ethernet-service jar dependency.
ethernet service source code is going to be moved into Connectivity
mainline module, and start the ethernet service from the module. The
old ethernet-service lib will be deprecated, remove it from soong
build rule.

Bug: 210586283
Test: m
Change-Id: I8de35246dabba8eb2dda3a154436e43fe19cf384
Merged-In: I19697d13f3809d91c83e37c6d0d403e79eb28664
2022-03-16 00:52:40 +00:00
Nicolas Geoffray
b9a46fb624 Pass --preloaded-classes to boot image compilation.
Test: m
Bug: 162110941
Change-Id: I0df016c5d170ca101cd18cacc331499ae76677a6
2022-03-15 14:28:38 +00:00
Xiao Ma
855222e389 Remove ethernet-service jar dependency.
ethernet service source code is going to be moved into Connectivity
mainline module, and start the ethernet service from the module. The
old ethernet-service lib will be deprecated, remove it from soong
build rule.

Bug: 210586283
Test: m
Change-Id: I19697d13f3809d91c83e37c6d0d403e79eb28664
2022-03-15 21:52:26 +09:00
Treehugger Robot
2c326eedd9 Merge "bp2build supports arch variant srcs for java_library" am: 7db79508c7 am: 2f624bc824 am: 4dc497f88e
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1989486

Change-Id: I59d9d933590cc2c7d1fe83af5b83a48d9c2c47be
2022-03-14 18:22:55 +00:00
Treehugger Robot
7db79508c7 Merge "bp2build supports arch variant srcs for java_library" 2022-03-14 17:06:01 +00:00
Treehugger Robot
df3e81e702 Merge "Suppress ChangedDefault (in another location)" am: 1571419fab am: 23a4c2b1f4 am: 1c708af98e
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2018296

Change-Id: Idbbbd339d0ffcaefd1d267bb9acb3a51196e2c49
2022-03-09 23:03:23 +00:00
Sam Gilbert
28e41289fb Suppress ChangedDefault (in another location)
Change-Id: I71fe558bd379818e254bb031a6a8dc855bb8235d
Test: N/A
Bug: 223382732
2022-03-09 17:01:29 +00:00
Treehugger Robot
92edbe38e8 Merge "Disable ChangedDefault" am: 4a5110f046 am: 61ebc18fd5 am: 4932817776
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2015695

Change-Id: I9afca3fb46a41003aa193bc3bf470fd7218bbd8e
2022-03-09 10:49:30 +00:00
Romain Jobredeaux
c9f48bbcd7 Merge "Add source extension information for java_*/android_* modules in module-graph.json." am: d9eba6611f am: 55b5ac1221 am: 1c1e60ef18
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1875414

Change-Id: Iedc1f0ac6439d2ab37d92b096eb1129994df73f7
2022-03-09 10:48:46 +00:00
Paul Duffin
f9c70add3b Merge "List bootclasspath_fragments in module-info.json" am: d94e4f5554 am: efa9bd7422 am: 1482bcdc7c
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2007227

Change-Id: I4095dcb27137b70090a23214cfdc2242df1cecb9
2022-03-09 10:48:28 +00:00
Sam Gilbert
675f0b41be Disable ChangedDefault
Bug: 223382732
Test: N/A
Change-Id: I45b70824650544b465fa656cb09983bf90f923b6
2022-03-08 11:24:44 -05:00
Romain Jobredeaux
d9eba6611f Merge "Add source extension information for java_*/android_* modules in module-graph.json." 2022-03-08 14:52:17 +00:00
Paul Duffin
d94e4f5554 Merge "List bootclasspath_fragments in module-info.json" 2022-03-08 11:50:54 +00:00
Sam Delmerico
79f0c88760 Merge "bp2build java_libraries depend on Android SDK" am: 1b8942d4c8 am: 75249f9ed9 am: 16efeb08ee
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1997330

Change-Id: I29ff13d5d2df7d0ab0a1cde9cb63fc6915e3373b
2022-03-07 21:23:50 +00:00
Sam Delmerico
e91d0303f2 bp2build supports arch variant srcs for java_library
Bug: 209577426
Test: build/bazel/ci/bp2build.sh
Change-Id: I6799bda904d286616e580f2395601ce4f764180f
2022-03-07 16:15:56 +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
c83334b556 Merge "Disable BannedThrow check" am: 0d4833b18c am: a33b682d0e am: e7d4370c57
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2006775

Change-Id: I2fcfd510bbc61af0ee111e04207217ef106ad64c
2022-03-05 03:28:59 +00:00
Colin Cross
cf58ee5321 Support experimental building with OpenJDK 17 am: 59c1e6ac0e am: 6984e882eb am: a1a1d6051a
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2006781

Change-Id: Iade0b38332bcca9742ab46284f8e62c088de8830
2022-03-05 03:28:41 +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
865358d90c Merge "convert android_app certificate property, bp2build" am: d508a638c3 am: 9e3f98b8cf am: 19b7975f03
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1980606

Change-Id: Iaa8fb9a85d42e2c299fadd34f81fe0b55bcd1a9a
2022-03-04 18:39:36 +00:00
Sam Delmerico
d508a638c3 Merge "convert android_app certificate property, bp2build" 2022-03-04 17:30:31 +00:00
Colin Cross
d1a81a9ac9 Merge "Increase errorprone heap size" am: ea74a4779f am: 16836c4613 am: 025c13b6cc
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2003070

Change-Id: Iedfc5c83d5b8b0c75e751f5d7522b456f9f71276
2022-03-01 00:13:48 +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
76be154bbd Merge "Add AIDL enforce_permissions attribute" am: 315352e71c am: 7268797ae1 am: f0432a89d9
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1989107

Change-Id: Idcb6487c5d09e6ea166b0ba0ce547b9376e8d41e
2022-02-24 03:48:19 +00:00
Thiébaud Weksteen
315352e71c Merge "Add AIDL enforce_permissions attribute" 2022-02-24 02:25:20 +00:00
Aurimas Liutikas
b49d0deed1 Merge "Disable new ApiLint check temporarily" am: 8b99da5f37 am: 9e69e0e221 am: b1485db02d
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1846434

Change-Id: I0d50ce54e3fcffa769a9999586ceee212ff8d73b
2022-02-23 23:20:10 +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
b80790ec41 Merge "convert java proto libraries with bp2build" am: bc83b504ff am: 4dc3df7be7 am: 0d8dd4692b
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1975287

Change-Id: Ie93ce69b956aedbd4999283886ef9340d88fe530
2022-02-23 17:57:13 +00:00
Anton Hansson
c74bf242ce Merge "Revert "Disable a few metalava checks that platform fails after improvements."" am: 2ace628b86 am: 2c1345a2a5 am: 3955122289
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1994313

Change-Id: I0f12d6723b85f88a55398e04be7ae1898ad4c207
2022-02-23 17:56:57 +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
75d6c5ee4e Merge changes from topics "extdir", "threadvars" am: d2149e6a81 am: df4ea086a4 am: 8a05c8df34
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1988355

Change-Id: I32ff394f3ad40300c74ae3b6ece49d5863cd5fb6
2022-02-22 15:04:19 +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