Commit Graph

6999 Commits

Author SHA1 Message Date
Christopher Parsons
3092afc3c2 Merge "Refactor bp2build tests for allowlist v2" into main am: 06ac78ce40
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2755925

Change-Id: I67fedb5715b0d6cdb90f7f7af0187289a504f955
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-09-19 20:24:22 +00:00
Chris Parsons
cd209035aa Refactor bp2build tests for allowlist v2
Allowlist v2 will change bp2build by automatically disabling rdeps of
unconvertible modules. Many bp2build tests create bp2build stub modules
without an implementation,
This CL changes setup of such tests to also contain a BUILD file with
"stub implementations" of equivalent targets, to keep these test targets
convertible.

To verify this change in-place, this CL removes `bp2build_available:
false` from these dependencies.

This is a test-only change for bp2build tests.

Bug: 285631638
Test: m bp2build
Change-Id: I489480cbc4158a416b7abf57c35a6e2bc2ad6173
2023-09-19 17:04:11 +00:00
Jingwen Chen
3aaf1a80bd Merge "[bp2build] android_test bp2build." into main am: 088c4b652b
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2727561

Change-Id: Id15bc7e836370645f6777ecc4ad1f34cd678ba07
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-09-19 00:04:46 +00:00
Jingwen Chen
088c4b652b Merge "[bp2build] android_test bp2build." into main 2023-09-18 23:27:14 +00:00
Jihoon Kang
578ece61ed Merge "Create java_api_contribution_import from sdk_library_import" into main am: 18a33e51c6
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2748475

Change-Id: I86d682265a510ee60359c2517250c5f7459d3182
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-09-18 23:16:25 +00:00
Treehugger Robot
0efaada4cd Merge changes I8466db71,I83180699 into main am: e50b0f5558
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2752165

Change-Id: Ic32fdf1452442b879c86d52f94f9de03317ae566
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-09-18 23:15:08 +00:00
Jihoon Kang
18a33e51c6 Merge "Create java_api_contribution_import from sdk_library_import" into main 2023-09-18 22:24:51 +00:00
Treehugger Robot
e50b0f5558 Merge changes I8466db71,I83180699 into main
* changes:
  Sort api files by api surface in java_api_library
  Add java_api_contribution_import module type
2023-09-18 22:23:33 +00:00
Jihoon Kang
71c868340e Create java_api_contribution_import from sdk_library_import
This change modifies sdk_library_import so that it directly creates
java_api_contribution per api scope. The module creates api_contribution
module for api scopes where the api file is specified.

Test: m nothing && MODULE_BUILD_FROM_SOURCE=false m nothing
--build-from-text-stub and inspect ninja dependency of java_api_library
Bug: 300175323

Change-Id: I74be3b4f1efef7f7d1cb8bd7b6c893b9cef0f370
2023-09-18 19:33:28 +00:00
Jihoon Kang
8fe1982e8b Sort api files by api surface in java_api_library
metalava requires api files to be sorted in the narrower api scope to
the wider api scope when passed as inputs. Previously, the api files
were sorted based on the naming convention, but some api files in
prebuilts do not necessarily follow the naming convention (i.e.
*-current.txt). Therefore, utilize the api surface information provided
by the java_api_contribution provider instead of the naming convention
to sort the api files.

Test: m nothing
Bug: 300175323
Change-Id: I8466db712bff8fef906186bd272d85682877533d
2023-09-18 19:33:01 +00:00
Treehugger Robot
92547162cd Merge "Unconditionally generate hash-based proguard mapping files" into main am: 46465666cc
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2752996

Change-Id: I826e56a4f20739e0fc05f94ecddb68b6fc938309
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-09-18 18:56:21 +00:00
Treehugger Robot
16542620eb Merge "don't compress JNI libs extracted from aar_import" into main am: 35bc07cb2a
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2636192

Change-Id: I7c94b0fb24d2c4a272308a932f1261638d94a546
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-09-18 18:56:02 +00:00
Treehugger Robot
46465666cc Merge "Unconditionally generate hash-based proguard mapping files" into main 2023-09-18 18:33:38 +00:00
Treehugger Robot
35bc07cb2a Merge "don't compress JNI libs extracted from aar_import" into main 2023-09-18 18:20:52 +00:00
Jared Duke
b832fbb643 Unconditionally generate hash-based proguard mapping files
Previously, this was restricted to targets that enable R8 full mode, but
that was really just a temporary carveout to avoid disrupting other
targets. Since then, R8 full mode has been enabled by default for all
app targets, and the hash-based mapping mechanism is further integrated
into various debugging and retracing pipelines.

As of now, there are are only a very small number of targets that have
enabled optimization/obfuscation and are still using R8 compat mode, so
the build-time impact of this change should be minimal, and there should
be no functional runtime side effects.

Bug: 297566172
Test: m framework-appsearch + inspect proguard mapping
Change-Id: I5dfea60f60dc37b8445c8fddba6a4eab0dc41d96
2023-09-18 16:05:16 +00:00
Jingwen Chen
e12c083198 [bp2build] android_test bp2build.
android_test is just an android_app, but the test bits are handled
purely in Starlark (tradefed_test_impl).

This enables building HelloWorldTests (android_test) with Bazel.

Bug: 297030120
Bug: 297029612
Test: WIP
Change-Id: I6d287c94b31698ea247da48e4cd6b5a75bc71e11
2023-09-18 12:39:06 +00:00
Jihoon Kang
fdf323697e Add java_api_contribution_import module type
java_api_contribution_import is a prebuilt module type of
java_api_contribution. It's build actions are identical to those of
java_api_contribution.

Test: m nothing
Bug: 300174357
Change-Id: I831806990b37b340af21858eb2bab5de62fdf7a9
2023-09-15 22:52:52 +00:00
Zi Wang
cccefd7433 Merge changes from topic "drop_deps_no_srcs" into main am: 5d982b398e
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2752995

Change-Id: I095b48f0bbe31fdc65df43a81693b7dfb7c60da8
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-09-15 20:59:17 +00:00
Zi Wang
5d982b398e Merge changes from topic "drop_deps_no_srcs" into main
* changes:
  Always drop deps from java_library with no srcs
  Do not append deps to exports when java_library has only proto srcs
2023-09-15 20:39:35 +00:00
Zi Wang
dd93636f1e Always drop deps from java_library with no srcs
This is the follow up from aosp/2750763

Test: CI and added unit test

Bug: 285952385
Change-Id: I64703ee4fa742b718ffb43f2af1b6ab43ddeb606
2023-09-15 10:37:16 -07:00
Usta (Tsering) Shrestha
8ae2b77eaa Merge "Bp2build-convert droiddoc_exported_dir" into main am: 4e86d7a342
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2734933

Change-Id: I27cccf8626c2ae3a29816b5fa4a94b9c67f7182d
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-09-14 20:44:17 +00:00
usta
72c6c6c8be Bp2build-convert droiddoc_exported_dir
Bug: 283299388
Test: `m bp2build` and manual inspection
Change-Id: Ieec2094e446bb030f30103a7e1a06e35cbdcc72e
2023-09-14 12:06:54 -04:00
Cole Faust
14469155af Merge "Error out if skip_preprocessed_apk_checks is set when it's not necessary" into main am: 3835509f95
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2744114

Change-Id: I271bc87a21adb967073ece7de25a602ff0b10894
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-09-13 23:50:22 +00:00
Cole Faust
3835509f95 Merge "Error out if skip_preprocessed_apk_checks is set when it's not necessary" into main 2023-09-13 22:38:33 +00:00
Zi Wang
f038cde8df Do not append deps to exports when java_library has only proto srcs
This is to address the comment in aosp/2748099

Test: CI

Bug: 285952385
Change-Id: I0bc8c76e2bc9ee113ced8642e0ab93a95799211c
2023-09-13 10:15:10 -07:00
Jihoon Kang
8f9e1c9f85 Merge "Utilize -quiet flag in java_api_library" into main am: ef1fc04e1a
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2749441

Change-Id: I4adba57beef04d888e794f48b573c74de8f9d18f
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-09-13 16:19:57 +00:00
Jihoon Kang
ef1fc04e1a Merge "Utilize -quiet flag in java_api_library" into main 2023-09-13 15:57:11 +00:00
Paul Duffin
3f23d2686b Merge "Replace --api-overloaded-method--order with --format-defaults" into main am: 93961bfbe5
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2748754

Change-Id: Ie90cc44469ca4ffdd27070d0c9cb956e31140050
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-09-13 13:02:00 +00:00
Paul Duffin
93961bfbe5 Merge "Replace --api-overloaded-method--order with --format-defaults" into main 2023-09-13 11:57:03 +00:00
Zi Wang
bc36c7e264 Merge "Bp2build: handle the case where java_library has only proto srcs" into main am: c90e1ec784
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2748099

Change-Id: I61e88db98415997ea27b0d590e65f36dc8f1e153
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-09-13 01:19:40 +00:00
Jihoon Kang
d02a43668a Utilize -quiet flag in java_api_library
java_api_library finds and zips class files based on pattern matching,
leading to multiple missing files warnings being printed to console
during from-text stub build. This change passes the `-quiet` flag to
soong_zip to prevent such warnings from being printed.

Test: m --build-from-text-stub and inspect console output
Bug: 300166930
Change-Id: I23d49b5e3a29d2127f5e917169620e18a98bc06b
2023-09-13 00:11:01 +00:00
Paul Duffin
504d356579 Replace --api-overloaded-method--order with --format-defaults
Bug: 300052204
Test: m checkapi
Change-Id: I8952a828437872ceebf7f9da4dc297173ed2a90b
2023-09-13 00:00:58 +01:00
Zi Wang
774c6eaf10 Bp2build: handle the case where java_library has only proto srcs
java_library doesn't accept deps when there are no srcs because
no compilation happens, but it accepts exports.

The deps from the module are not necessary for compiling the protos,
in which case they are unnecessary as deps on the java_library as well
since they are not be propagated to any dependencies.

So we can put the deps to exports and drop deps here.

Test: CI and added unit test

Bug: 285952385
Change-Id: Ie54a4ac0db592fb96fede64f0e67df309dca9c1d
2023-09-12 10:41:42 -07:00
Romain Jobredeaux
80a3c08c0c Merge "Re-order android_app bp2build converter logic." into main am: 2195f24ec4
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2744723

Change-Id: I9415e5badd071725187936d3b5f11243e27fbb15
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-09-12 14:32:34 +00:00
Romain Jobredeaux
d2cc5037c2 Re-order android_app bp2build converter logic.
This change is a no-op but makes it easier to single out framework-res
for conversion in subsequent CL aosp/2720593.

Bug: 276928228
Test: CI
Change-Id: I7c7338add1857697912dec3c34b7c43e06d2d12d
2023-09-11 16:37:50 -04:00
Treehugger Robot
3a9ce197a9 Merge changes I86f30b99,I2769c0d5 into main am: 3fb2002c9e
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2746855

Change-Id: Ie61359bea67a9afdf9e1e2e3e29568edfeccba79
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-09-08 16:31:33 +00:00
Treehugger Robot
3fb2002c9e Merge changes I86f30b99,I2769c0d5 into main
* changes:
  Do not convert resource dirs without resources
  Do not convert java libraries with core_platform
2023-09-08 16:04:45 +00:00
Liz Kammer
33dddf5a7e Do not convert resource dirs without resources
Previously we would convert to java_resources when there were no
resources and get an error.

Test: b build //external/libphonenumber/... --config=android
Change-Id: I86f30b993a3ffdb20000f6a4c5261e2c4c74263c
2023-09-08 09:44:00 -04:00
Liz Kammer
65942c8467 Do not convert java libraries with core_platform
Test: go bp2build tests
Change-Id: I2769c0d589c304caeb24a8ecba38a4a5ee6c63e5
2023-09-08 09:43:57 -04:00
Treehugger Robot
040d3deedb Merge "android_app APEX_GLOBAL_MIN_SDK_VERSION_OVERRIDE" into main am: 8763530dff
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2718294

Change-Id: I4d70528e0eda3cdf229c64ddb8cc99eb119015d8
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-09-07 17:20:02 +00:00
Cole Faust
70f839fe01 Merge "Revert^2 "Only allow setting presigned without preprocessed on targetSdk < 30"" into main am: 1b365e350a
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2744898

Change-Id: I6472d8ab1c2fbc221f04f6c63cb6be77d38688fe
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-09-07 17:19:06 +00:00
Treehugger Robot
8763530dff Merge "android_app APEX_GLOBAL_MIN_SDK_VERSION_OVERRIDE" into main 2023-09-07 16:55:45 +00:00
Cole Faust
1b365e350a Merge "Revert^2 "Only allow setting presigned without preprocessed on targetSdk < 30"" into main 2023-09-07 16:42:08 +00:00
Treehugger Robot
f7fc893c2a Merge "Modify static lib stub library visiblity" into main am: 968c735108
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2744913

Change-Id: Idbe5d3ee533ceabb35172a586cd89ae567d16554
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-09-07 13:14:13 +00:00
Treehugger Robot
968c735108 Merge "Modify static lib stub library visiblity" into main 2023-09-07 12:07:17 +00:00
Cole Faust
51d7bfd9a1 Revert^2 "Only allow setting presigned without preprocessed on targetSdk < 30"
This reverts commit d293e28f52.

Reason for revert: The underlying issue was fixed in ag/24685010

Change-Id: I06810d37dba37aa12f9a1e14b0749f1e1eb41136
2023-09-07 05:31:32 +00:00
Karl Shaffer
f6182066f9 Merge "Revert "Only allow setting presigned without preprocessed on targetSdk < 30"" into main am: d79c10f71f
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2744115

Change-Id: I5c43aac2f67fe33f6a021aafedb1d9222e133147
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-09-07 02:01:09 +00:00
Jihoon Kang
786df93db0 Modify static lib stub library visiblity
java_sdk_library generates stub java_library module which compiles the
stub generated from either source or txt files, which is toggled based
on the build configuration. The java_api_library/java_library module
that compiles the stubs should not be directly accessible to the modules
outside of the sdk_library module scope, thus modify their visibility as
private.

Test: m nothing
Bug: 299373105
Change-Id: Ia4a08bf6e65c521814c82f54ea43cc8d367834e3
2023-09-07 01:22:12 +00:00
Karl Shaffer
d79c10f71f Merge "Revert "Only allow setting presigned without preprocessed on targetSdk < 30"" into main 2023-09-07 00:58:24 +00:00
Karl Shaffer
d293e28f52 Revert "Only allow setting presigned without preprocessed on targetSdk < 30"
This reverts commit 6158528e15.

Reason for revert: DroidMonitor-triggered revert due to breakage https://android-build.corp.google.com/builds/quarterdeck?branch=git_udc-d1-dev-plus-aosp&target=aosp_bramble-trunk_staging-userdebug&lkgb=10771573&lkbb=10771600&fkbb=10771587, bug https://buganizer.corp.google.com/issues/299369971

BUG: 299369971

Change-Id: I6bf6eb5c0fb9e30197e145121adc7ed58871526f
2023-09-07 00:51:09 +00:00