Commit Graph

6746 Commits

Author SHA1 Message Date
Romain Jobredeaux
f2bcb862f3 Merge "Support arch variants in java's StaticLibs in bp2build" am: b2539d08ed am: 090223b966 am: d2c9df6b93
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2521437

Change-Id: If15fb36748be5ee25aa5783dc1c04437e8edc910
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-04-05 15:18:17 +00:00
Romain Jobredeaux
b2539d08ed Merge "Support arch variants in java's StaticLibs in bp2build" 2023-04-05 13:32:29 +00:00
Romain Jobredeaux
eb711b9f7c Support arch variants in java's StaticLibs in bp2build
Test: Presubmits
Bug: 276901800
Change-Id: I6058a726833ef10a5f470946e2d265b20fa547ce
2023-04-04 19:50:13 -04:00
Treehugger Robot
ef8646f41f Merge changes I0ab8459b,I2ef90f4d am: 28ba80665d am: 170e0c87a5 am: 15373a714b
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2521436

Change-Id: I401446ca9dc4a04da1092c1e4b76901ba491824f
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-04-04 19:41:03 +00:00
Treehugger Robot
28ba80665d Merge changes I0ab8459b,I2ef90f4d
* changes:
  Create core-lambda-stubs from .txt files
  Fix the suffix used in names of java_system_modules
2023-04-04 17:54:56 +00:00
Victor Chang
df60d440f6 Merge "Add com.android.tools.r8.emitRecordAnnotationsExInDex flag" am: 32952b975d am: 7e1f02b9b9 am: 6f43448019
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2495879

Change-Id: Ie88dc2712045c9ae57f9db440c3c3ea4da9b73b5
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-04-04 12:12:20 +00:00
Victor Chang
32952b975d Merge "Add com.android.tools.r8.emitRecordAnnotationsExInDex flag" 2023-04-04 11:12:05 +00:00
Jihoon Kang
a9e89fa323 Merge "Add dep_api_srcs property to java_api_library module" am: 91a86d4112 am: 6f8a62b72a am: 22bd36e459
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2485976

Change-Id: I18de957424949775bfa3a6fec6534d37bb0d4f86
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-04-04 00:58:19 +00:00
Spandan Das
760f880495 Create core-lambda-stubs from .txt files
APIs to compile lambda are part of art's toolchain api surface.
Generating stubs from .txt files allows us to prune the remaining sdk
dependencies on libcore/ that are not api files

Test: m core-lambda-stubs.from-text
(On top of change containing core.current.stubs.from-text
and turning enabled: true)

Change-Id: I0ab8459b9317cb055a434eb635ba06d38da5b92e
2023-04-03 23:42:08 +00:00
Spandan Das
0cb803a5d6 Fix the suffix used in names of java_system_modules
Test: N/A (enabled flag is still off)
Change-Id: I2ef90f4d9099bf183d65dcf8ebdf532d5fa445b6
2023-04-03 23:29:57 +00:00
Treehugger Robot
ee0ae49674 Merge changes Ib9ff4eb5,If27a050c am: 71585a0187 am: 2448d10b58 am: 7190c6776a
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2516456

Change-Id: Icfe3bdd0065b2c60233ea6a3b184a9b274d4896f
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-04-03 20:58:41 +00:00
Spandan Das
01d5dd882c Merge "Rename core stubs to .txt stubs if applicable" am: 77e3278c50 am: ac7b7d2a89 am: 83f7ac9d8d
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2514796

Change-Id: I13629ee9000f208c25ad53fe478bdd61b6be0823
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-04-03 20:57:43 +00:00
Jihoon Kang
01e522cac5 Add dep_api_srcs property to java_api_library module
Users can pass the jar-file creating module via dep_api_srcs property in
java_api_library to create the jar file not by compiling the stubs
generated from metalava but by extracting and zipping the class files
from the jar file of the input module.

Test: m android-non-updatable.stubs.from-text
Bug: 273381329
Change-Id: Id1b75179111cc7ff45faaff58388db1347bb18e5
2023-04-03 17:53:40 +00:00
Treehugger Robot
71585a0187 Merge changes Ib9ff4eb5,If27a050c
* changes:
  add *.from-text modules to the java test fixture
  Create a SetBuildFromTextStub method
2023-04-03 16:44:08 +00:00
Spandan Das
77e3278c50 Merge "Rename core stubs to .txt stubs if applicable" 2023-04-03 16:37:53 +00:00
Treehugger Robot
99fc0f1a2b Merge "Remove stub-annotations from art stubs system modules" am: 1c102d34b7 am: 5485148807 am: da56dee349
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2515531

Change-Id: I59aebc304bf7571fdc896f86bc85a0fdbcf26791
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-04-03 12:23:00 +00:00
Treehugger Robot
1c102d34b7 Merge "Remove stub-annotations from art stubs system modules" 2023-04-03 10:49:15 +00:00
Treehugger Robot
196382c13e Merge changes Ie9d465f5,Idd89d656,I0a13a0e7 am: cdbb1a999f am: 09a2632958 am: 5a512834bf
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2513924

Change-Id: Ibecb97ca51c3417413d2eaced72ff41b17f0b5f5
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-03-31 20:36:43 +00:00
Treehugger Robot
f5b59e98d4 Merge "rename aidl/library.bzl to aidl/aidl_library.bzl" am: 840d49a564 am: 0110b797e8 am: 2caef94970
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2515436

Change-Id: Ibe1ef9d638b20f38753b767d24674bc97b6c337d
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-03-31 20:10:39 +00:00
Treehugger Robot
cdbb1a999f Merge changes Ie9d465f5,Idd89d656,I0a13a0e7
* changes:
  Create core_platform system modules from .txt files
  Create system modules using .txt stubs
  Create a defaults module for stripping out annotations
2023-03-31 19:37:01 +00:00
Spandan Das
a335e1de36 Remove stub-annotations from art stubs system modules
This system module is used to compile conscrypt and icu stubs. These
have migrated to java_sdk_library that set `annotations_enabled: true`
explicitly.

Test: m
Test: TH
Change-Id: I65ceb1fbf0dcdbb3504b69ebce6ca8f0b67e964d
2023-03-31 19:28:55 +00:00
Treehugger Robot
840d49a564 Merge "rename aidl/library.bzl to aidl/aidl_library.bzl" 2023-03-31 18:26:33 +00:00
Treehugger Robot
bed1d1cb11 Merge changes I1ed3ab24,I68678ddf am: 2d704998f4 am: 9b9cda6b14 am: b05664f90c
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2513937

Change-Id: Ibc9e5b8bea86717c670ff8d22bb8bf9a814a9c23
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-03-31 17:08:05 +00:00
Sam Delmerico
e55bf08de2 rename aidl/library.bzl to aidl/aidl_library.bzl
Test: b test --config=android //build/bazel/...
Change-Id: I7e22ee5ffa391ddaf43a3eec17812be78f2d86ab
2023-03-31 09:48:27 -04:00
Victor Chang
397e7e2e89 Add com.android.tools.r8.emitRecordAnnotationsExInDex flag
It enables annotations for record components.

Bug: 272698028
Test: m droid
Change-Id: I9b45526c2dcdb2de458d874a0c222108a69eee71
2023-03-31 11:01:41 +01:00
Spandan Das
6bd19dd4c5 add *.from-text modules to the java test fixture
Test: go build ./java

Change-Id: Ib9ff4eb59ff63dc208b7a28626d42b53153c86d6
2023-03-30 21:37:54 +00:00
Treehugger Robot
ffddc94522 Merge "Modify Soong to utilize from-text android.jar in build" am: bc2906efef am: e518bf7c3d am: 5746993043
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2411272

Change-Id: Ibb008c511597b5746bc9c70c9368c4a3fe3322da
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-03-30 17:43:57 +00:00
Spandan Das
e339a2d9a3 Rename core stubs to .txt stubs if applicable
In scope:
- core.current.stubs
- system modules generated for core's public stubs
- system modules generated for core's module_lib stubs

The system modules generated for core_platform api surface will be
handled in aosp/2514755

Test: go build ./java
Change-Id: I34134f79c8ae6e5b218d0b85553de5a748a8cc3f
2023-03-30 02:59:22 +00:00
Spandan Das
a032c35320 Create core_platform system modules from .txt files
Create a parallel set of java_system_modules that build using stubs from
.txt files. decodeSdkDep will be updated to use these system modules
behind a flag.

Since stub generation from .txt is not available at ToT yet, these
modules have been marked "enabled: false"

Test: None (will test when the enabled flag is turned on)
Change-Id: Ie9d465f5542a5430f03ba2e0861325011ac8e8c5
2023-03-30 00:34:36 +00:00
Spandan Das
877f39d535 Use stubs from .txt files for hiddenapi
Hiddenapi processing uses the stub libraries to determine the api
surface boundaries. Use JavaLibraryName function to redirect the usage
of stubs from .txt files based on config.

This should be a no-op for now.

Bug: 271443071
Test: go test ./java
Change-Id: I1ed3ab2485c903bc57f627dc1acf1a3fbc0a3c4d
2023-03-30 00:34:36 +00:00
Spandan Das
4f771f144c Create system modules using .txt stubs
Create a parallel set of java_system_modules provided by the SDK. This
parallel set will build using stubs of core libraries generated from
.txt files. Since stub generation from .txt is not available at ToT yet,
these modules have been marked "enabled: false". decodeSdkDep will be
updated to use these systemModules behind a flag.

(Will create java_system_modules for core_platform in a future CL)

Test: None (will test when the enabled flag is turned on)
Change-Id: Idd89d656fcbc87e8698fe05d65a685ade4488546
2023-03-30 00:34:36 +00:00
Spandan Das
b0f3d42df2 Create a defaults module for stripping out annotations
This reduces code duplication in preparation for checking in a
java_system_modules created using stubs from .txt files

Test: No diff in the 4 java_system_modules
Change-Id: I0a13a0e7bf402cbe8f0dd3942b1f737cc6ac0de7
2023-03-30 00:34:36 +00:00
Treehugger Robot
bc2906efef Merge "Modify Soong to utilize from-text android.jar in build" 2023-03-29 20:31:20 +00:00
Spandan Das
e81fad3c7a Merge "Compile stubs to .dex" am: 709dbd08a0 am: bfbca5848b am: 0f9f20e2b4
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2503215

Change-Id: I09c3798da462c1ad09f1ce4b0de064f34130ab48
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-03-29 00:27:00 +00:00
Spandan Das
709dbd08a0 Merge "Compile stubs to .dex" 2023-03-28 22:56:41 +00:00
Jihoon Kang
1bff0349d4 Modify Soong to utilize from-text android.jar in build
Context
- from-text android.jar files are built using Metalava, and these can be
  utilized in `decodeSdkDep` so that any modules that depends on APIs
  can be compiled using from-text android.jars
- This change removes dependency on source java files when compiling
  stub android.jar files

Implementation
- Modify java_api_library module to create system modules using the
  generated android.jar
- Replace modules in decodeSdkDep to link against java_api_library
  modules
- Add --build-from-text-stub flag to hide the feature behind a flag

Test: m --build-from-text-stub
Bug: 271154441
Change-Id: I104df595edc65c0006820d5ae5b15f1fb167e190
2023-03-28 21:53:45 +00:00
Spandan Das
3362f1161a Merge "Update max_sdk_version from SdkSpec to ApiLevel" am: 5aade5f52d am: 8620bbd365 am: ab45f70472
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2494321

Change-Id: I8a5cdfd8bc72400954d9b5a3621ec4d832aeb421
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-03-28 20:11:16 +00:00
Spandan Das
5aade5f52d Merge "Update max_sdk_version from SdkSpec to ApiLevel" 2023-03-28 19:17:48 +00:00
Treehugger Robot
78da5815e2 Merge "Add apex_available aidl + aidl&lang libraries" am: 8fdb210be2 am: 67c5d36be5 am: 663faa6f80
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2507365

Change-Id: I3f3dc62bcd62e1a8901536ad4849285c00c86d50
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-03-25 02:18:12 +00:00
Liz Kammer
2b3f56ed22 Add apex_available aidl + aidl&lang libraries
Test: b build com.android.neuralnetworks com.android.media.swcodec
Change-Id: I008b915b22e4c8c2cf1f0aee6cfdaf17374cb3a9
2023-03-24 15:14:53 -04:00
Spandan Das
1c03772aa9 Merge "Update target_sdk_version from SdkSpec to ApiLevel" am: f5d3906505 am: 569b1d2730 am: c52b576571
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2494320

Change-Id: I26868afda4e3e7b715b754b1aad48e7f6d0b6333
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-03-24 02:03:47 +00:00
Spandan Das
cb368ea88a Compile stubs to .dex
Although stubs are not installable on device, we need to compile .dex to
support hiddenapi metadata generation.

Bug: 271443071
Test: Built out/soong/hiddenapi/hiddenapi-stub-flags.txt with
aosp/2487266
(There is still some delta due to missing signatures in child classes)
(Will address them in a followup CL)
Change-Id: Iac1330c449934085a479c487a1489aa1695a75ee

Change-Id: I1baa9c0f45eb8fc93f5c3177389ea5a2b7ca0a0b
2023-03-23 20:41:22 +00:00
Spandan Das
a26eda7f2c Update max_sdk_version from SdkSpec to ApiLevel
max_sdk_version signifies device version and does not need an sdkKind to
describe it fully. Update the type and cleanup existing usages. As a
side benefit, we also get better error handling since users can no
longer enter something like `public_30` as a valid max_sdk_version in bp
files

Bug: 208456999
Test: no change in ninja file (this should be a no-op)
Test: TH
Change-Id: I304b5ad802bde200137d8e225182828dfd6f7227
2023-03-23 19:38:56 +00:00
Spandan Das
ca70fc40bd Update target_sdk_version from SdkSpec to ApiLevel
target_sdk_version signifies device version and does not need an sdkKind to
describe it fully. Update the type and cleanup existing usages. As a
side benefit, we also get better error handling since users can no
longer enter something like `public_30` as a valid target_sdk_version in bp
files

Test: m nothing
Test: no change in ninja files (this should be a no-op)
Bug: 208456999

Change-Id: I3c19245e29184bd9e5660ad8981966f64dfa9424
2023-03-23 19:31:17 +00:00
Spandan Das
7ab0894ea4 Merge "Update min_sdk_version from SdkSpec to ApiLevel" am: ddfab60014 am: f1058758db am: a14f1b45cb
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2503257

Change-Id: I02d90d724f78eec72e7e7d6f80c2c2d15e25e9f7
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-03-23 18:38:52 +00:00
Spandan Das
ddfab60014 Merge "Update min_sdk_version from SdkSpec to ApiLevel" 2023-03-23 16:33:36 +00:00
Treehugger Robot
a811b8603a Merge "Android Lint: allow local override of --exitcode flag" am: 5c309aa37a am: f7cbb22206 am: de2c79af6c
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2502955

Change-Id: I901464c0faf9d2f8fb68c6dbbc81fd4de4349aee
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-03-23 04:56:26 +00:00
Treehugger Robot
5c309aa37a Merge "Android Lint: allow local override of --exitcode flag" 2023-03-23 03:19:30 +00:00
Spandan Das
8c9ae7ed67 Update min_sdk_version from SdkSpec to ApiLevel
This relands aosp/2457063. The original change broke T and U since those
branches still contain soong modules of type (kind+level). Those soong
modules have been cleaned up now

Test: Used go/abtd to test T and U branches with this change

Bug: 208456999
Change-Id: I0ef7933c055f88cb512a02108f1173e51156ef1c
2023-03-22 20:15:45 +00:00
mattgilbride
b597abdeb1 Android Lint: allow local override of --exitcode flag
The --exitcode flag tells lint to exit with an error code if any
incidents at ERROR level or above are found.  Unfortunately, that means
an invocation of lint against the entire tree will fail with whichever
module fails first. This covers up any other failures and makes updating
lint in AOSP more cumbersome.

This change allows one to set `ANDROID_LINT_SUPPRESS_EXIT_CODE=true` to
modify this behavior and collect full lint results even if there are
errors in some modules.

Bug: 274780888
Test: Tested manually by changing code to trigger lint errors, and
settig/unsetting this flag.

Change-Id: I71ab89c9bffafe6eb83171102c2c253171450266
2023-03-22 17:52:56 +00:00