Commit Graph

3542 Commits

Author SHA1 Message Date
Martin Stjernholm
cbe5663663 Merge "Recognise the Google-signed ART APEXes as well." am: cfcaddc5b2 am: b85c77714a
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1590194

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Ifa8f29e7a513ca4ee28b08727b496ead452b9e40
2021-03-02 19:49:59 +00:00
Martin Stjernholm
db5138230d Recognise the Google-signed ART APEXes as well.
Test: `m nothing` in internal tree
Bug: 180325915
Change-Id: I83eb660ad7cb480fba2a7874ee7e7f9d35646871
2021-03-01 22:33:51 +00:00
Paul Duffin
df806bcfca Merge "Avoid hiddenapi ignoring prebuilt with missing dex implementation jar" am: c572b5bf62 am: 551d57c064
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1609479

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I40d9a8d2ee00277bd1790bb80a8237020f3643ba
2021-03-01 20:10:01 +00:00
Paul Duffin
08515806b9 Merge "Allow java_sdk_library_import to contribute to hiddenapi processing" am: 69804ac388 am: 764a15f4e5
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1609478

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Ia22b20976de4b81e4e97026ceae4213309a28b5e
2021-03-01 20:09:21 +00:00
Paul Duffin
86d8214509 Merge "Retrieve dex implementation jars from apex for java_sdk_library_import" am: 0a8d5248ef am: b1426419ec
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1609477

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I0dc9e98b69c22ceb22d109ee412f59d3fb5e4819
2021-03-01 20:08:56 +00:00
Paul Duffin
c572b5bf62 Merge "Avoid hiddenapi ignoring prebuilt with missing dex implementation jar" 2021-03-01 17:04:53 +00:00
Paul Duffin
69804ac388 Merge "Allow java_sdk_library_import to contribute to hiddenapi processing" 2021-03-01 17:04:39 +00:00
Paul Duffin
0a8d5248ef Merge "Retrieve dex implementation jars from apex for java_sdk_library_import" 2021-03-01 17:04:27 +00:00
Paul Duffin
ec0fe1775b Avoid hiddenapi ignoring prebuilt with missing dex implementation jar
Previously, when a prebuilt was preferred but did not provide a
suitable boot dex jar both the source and the prebuilt were silently
ignored which meant that the "hiddenapi list" command was not given a
complete set of boot dex jars. That could either lead to incorrect
hiddenapi flags being set or the "hiddenapi list" command failing if it
could not find a class. Debugging the cause of either of those cases
can be very time consuming so this change fails early and makes the
cause very explicit.

Bug: 181267622
Test: m nothing
Change-Id: I6763ddb9ba90ed2e501d0cf7984f6655237e905d
2021-03-01 12:58:28 +00:00
Paul Duffin
3785673f9b Allow java_sdk_library_import to contribute to hiddenapi processing
Invokes hiddenAPIExtractInformation() on the java_sdk_library_import's
dex implementation jar provided by the deapexer (on behalf of
prebuilt_apex) so that hiddenAPI can extract the information it needs,
if anything, from the dex file.

The dex file provided by deapexer has already had the hiddenapi
information encoded into it so it does not need to do that again.

Usually, it would require a classes implementation jar as well in
order to extract information from UnsupportedAppUsage annotations but
that is not available for a java_sdk_library_import. Fortunately, the
modules that are currently affected by this do not contain any such
annotations. This just uses a public api stubs jar instead.

Bug: 181267622
Test: m nothing
Change-Id: I96275e46f8b7fecba88075319e9f2da5ae315c03
2021-03-01 12:58:28 +00:00
Paul Duffin
3985351df6 Retrieve dex implementation jars from apex for java_sdk_library_import
Bug: 181267622
Test: m nothing
Change-Id: Idd6af2482f48bd3a05db88b8a06dbbbdee01ef78
2021-03-01 12:58:28 +00:00
Treehugger Robot
416eb1e44b Merge "Remove global state from sysprop libraries" am: 5e510d6271 am: 184957859b
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1611293

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I10e6a378c6ef9cc1775b29e6d96c0aadc90a0ef1
2021-03-01 09:25:25 +00:00
Treehugger Robot
5541754e5a Merge "Propagate java resources in apps with no code" am: 2ee47272f5 am: f6316c4b1c
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1610973

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Ic9f21c21508658da4cad91202315e3589b939c7f
2021-02-28 02:09:14 +00:00
Colin Cross
75ce9eccf3 Remove global state from sysprop libraries
Sysprop libraries use a global list to rewrite dependencies from
implementation libraries to public stub libraries when appropriate.
Remove the global list, and instead add a dependency from the
implementation to the public stub that forwards the JavaInfo.

Bug: 181367697
Test: sysprop_test.go
Change-Id: Ia7995feb3c079ca9bb6a403daaae3e3329fd7f6a
2021-02-26 16:28:12 -08:00
Colin Cross
b014f0787e Propagate java resources in apps with no code
Use the java resources jar as the dex jar when building apps that
have no code.

Also remove maybeStrippedDexJar, the dex jar is never stripped now.

Fixes: 176305357
Test: TestAppJavaResources
Change-Id: Ic8b1165bd35d71237d307e7f5f895764e203a10d
2021-02-26 16:28:12 -08:00
Jaewoong Jung
f4f0d09eb8 Merge "Fix the releax_check flag format verb." am: fc3bfe54c3 am: cfeffdc6ec
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1607177

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: If52ad78efd887f1a5221fd8feee7a4d448b1e75d
2021-02-25 16:50:59 +00:00
Jaewoong Jung
8431282af4 Fix the releax_check flag format verb.
%b prints base 2 numbers. %t is the right one to use for booleans.

Test: TreeHugger
Change-Id: Ifbae0170ba03583182ae848bcfc6bb104f1be7e0
2021-02-24 21:09:10 -08:00
Paul Duffin
ea4ad11547 Merge "Allow pre-singleton types to be registered in RegistrationContext" am: ebbf33c42b am: de8121e465
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1605033

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I8e4a06b96a9754be64cc423b8ac46ceeed461177
2021-02-24 21:51:46 +00:00
Paul Duffin
eafc16bf14 Allow pre-singleton types to be registered in RegistrationContext
Bug: 181070625
Test: m droid
Change-Id: I708b78ed0b42ec55b0442307f40531cfe1233c2b
2021-02-24 10:17:19 +00:00
Christoffer Quist Adamsen
561178ba14 Merge "Allow missing classes in R8 builds" am: a72571f0d1 am: c3ae5578c9
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1597934

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Ib9679603b87f3bae63fd2e6441b2e55532152148
2021-02-24 08:55:10 +00:00
Christoffer Quist Adamsen
a72571f0d1 Merge "Allow missing classes in R8 builds" 2021-02-24 07:25:18 +00:00
Treehugger Robot
46b8066072 Merge "Update soong copy of java binaries when Make copy is installed" am: 9a4279309f am: 5ee786ff3f
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1602454

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I73bd8e457459661e5dffafef1a4cb6014fd85298
2021-02-24 01:49:19 +00:00
Treehugger Robot
04246701f7 Merge "Add non-fatal mode for verify_uses_libraries check." am: 7eacdbf8a6 am: d078b18f64
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1592411

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Iabb151ce223f538a346140d8cd78cb0f9c5b6234
2021-02-24 01:49:10 +00:00
Paul Duffin
07a776ea1f Merge changes from topic "hiddenapi_additional_annotations" am: ece454400d am: 7b9e857f9f
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1590193

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I6a1c0937a2cfcda928c11cacd442fb4e435945c0
2021-02-24 01:24:29 +00:00
Paul Duffin
2232ee00c0 Remove duplicates in monolithic hidden API files am: 82b3fcf123 am: f36d0e21c3
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1587496

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I40e1bc0c070332a3a02035962d00294d01a43028
2021-02-24 01:24:26 +00:00
Paul Duffin
0b27470f71 Remove implicit dependency from <x> -> <x>-hiddenapi am: f8f4af8f1a am: 44091b4387
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1587495

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Ibc49adf73da7a01a7c848b539a4eadfc9186f67d
2021-02-24 01:24:21 +00:00
Paul Duffin
f36d0e21c3 Remove duplicates in monolithic hidden API files am: 82b3fcf123
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1587496

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I7b6bbc33ff1bae69ca09dafafa4c65690451b5b9
2021-02-24 00:49:24 +00:00
Paul Duffin
44091b4387 Remove implicit dependency from <x> -> <x>-hiddenapi am: f8f4af8f1a
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1587495

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I5f701167d78771a53ab6e0f082a12c44871d22ec
2021-02-24 00:48:45 +00:00
Treehugger Robot
9a4279309f Merge "Update soong copy of java binaries when Make copy is installed" 2021-02-23 21:35:20 +00:00
Treehugger Robot
7eacdbf8a6 Merge "Add non-fatal mode for verify_uses_libraries check." 2021-02-23 20:45:42 +00:00
Colin Cross
44b85d01c9 Update soong copy of java binaries when Make copy is installed
m <modulename> is handled by Make and installs the Make copy of a host
java binary in out/host/linux-x86/bin, and doesn't depend on the Soong
copy in out/soong/host/linux-x86/bin.  That can leave a stale binary
in the Soong directory, and since the Soong directory is first in the
path set up by envsetup.sh, can result in confusing behavior to end
users.

cc_binary already has the Make binary depend on the Soong binary
so that they are both updated.  Do the same for java_binary.

Fixes: 180405155
Test: m metalava
Change-Id: Ic84a131a2851cc4a18ce3725da3c4067137d6120
2021-02-23 11:19:57 -08:00
Paul Duffin
ece454400d Merge changes from topic "hiddenapi_additional_annotations"
* changes:
  Sort hiddenapi monolithic files by signature
  Remove duplicates in monolithic hidden API files
  Remove implicit dependency from <x> -> <x>-hiddenapi
2021-02-23 12:48:24 +00:00
Treehugger Robot
98f5b4b6e0 Merge "Fix infinite recursion when printing unrecognized linktype" am: f0f152484b am: 2cf358677b
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1600834

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I9d51880f8ccdbbdc5f281e182f987f543b4b3ed2
2021-02-23 08:42:44 +00:00
Colin Cross
24bdd3ae4f Merge "Add ArcSettings and SettingsGoogle to the legacy allowlist" into rvc-qpr-dev-plus-aosp 2021-02-23 04:12:51 +00:00
Jiyong Park
d4cbf34032 Fix infinite recursion when printing unrecognized linktype
Bug: N/A
Test: remove some cases from String() so that some linktypes go to the
default path. Then run m nothing. No infinite recursion. Error is
correctly shown.
PANIC=String method: unrecognized linktype: 5
Change-Id: I424755bc89871fc2144ff22d6391f57157cd434d

Change-Id: Ice791025dc50f44ffabd1050bafc5ea35023d32c
2021-02-23 04:02:23 +00:00
Treehugger Robot
173eeb8ca0 Merge "Add ctx to AndroidMkExtraEntriesFunc" am: 277303f042 am: 5b72de988f
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1360943

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I90ae8f53df60dd6bdbc9ae040c44a28a334017e3
2021-02-23 01:45:26 +00:00
Treehugger Robot
398253b55c Merge "Limit the number of the Java source files in a single compilation unit" am: a61a042fa6 am: 3e97f39674
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1590694

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I887bfca8ce13ced6aa4005afa97a8c7e425716b4
2021-02-23 01:45:06 +00:00
Treehugger Robot
277303f042 Merge "Add ctx to AndroidMkExtraEntriesFunc" 2021-02-22 22:40:31 +00:00
Treehugger Robot
a61a042fa6 Merge "Limit the number of the Java source files in a single compilation unit" 2021-02-22 19:54:00 +00:00
Ulya Trafimovich
8c35fcf4d5 Add non-fatal mode for verify_uses_libraries check.
The new mode is enabled with environment variable
RELAX_USES_LIBRARY_CHECK. If the variable is set to true, then a
verify_uses_libraries check failure does not fail the build, instead it
sets a special compiler filter "extract" for dexpreopt, which means that
the DEX file will be extracted, but it won't be compiled to native code.
Class loader context will be set to empty in this case (not &, as it is
going to be deprecated soon).

If the variable RELAX_USES_LIBRARY_CHECK is unset or set to something
other than "true", then the old behaviour of the verify_uses_libraries
check is preserved.

The intended use case for this flag is to have a smoother migration path
for the Java modules that need to add <uses-library> information in
the build files. The flag allows to quickly silence build errors. This
flag should be used with caution and only as a temporary measure, as it
masks real errors and affects performance.

verify_uses_libraries check is reworked so that it writes the error
message to a status file (which is used instead of the former timestamp
file). Currently the stored error message is not used, but it may be
used later to produce a warning. Dexpreopt command checks if the status
file exists and is nonempty; if that is the case, then compiler filter
is set to "extract".
Bug: 132357300

Test: Manually add some mismatch between the libraries in the Android.bp
      and Android.mk files for dexpreopted apps, build with
      RELAX_USES_LIBRARY_CHECK=true and obsserve that the build doesn't
      fail and they are compiled with compiler-filter "extract".
      Unset RELAX_USES_LIBRARY_CHECK and observe that the build fails.

Change-Id: Ibb5d993a25b1df1d2e70b7d5aafc6997f9d64e67
2021-02-22 15:41:03 +00:00
Christoffer Quist Adamsen
e850737ee4 Allow missing classes in R8 builds
Bug: 180878971
Bug: 72683872
Test: TARGET_PRODUCT=aosp_arm64 m -j core-oj
Change-Id: I663220567eb8f034d3efccc60228aef91c716e8e
2021-02-22 12:09:01 +00:00
Treehugger Robot
a9cf772572 Merge "Remove EnforceRROExemptedTargets" am: f0a869847a am: 7a7c1491c4
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1596231

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Ic7fc17dd2f173a1e28509012b4eb7c8bc3872c43
2021-02-20 03:24:59 +00:00
Treehugger Robot
f0a869847a Merge "Remove EnforceRROExemptedTargets" 2021-02-20 01:47:43 +00:00
Colin Cross
aa2555387d Add ctx to AndroidMkExtraEntriesFunc
Add a ctx parameter to AndroidMkExtraEntriesFunc to allow them to
access providers.

Test: m checkbuild
Change-Id: Id6becc1e425c3c3d8519248f8c0ce80777fac7cc
Merged-In: Id6becc1e425c3c3d8519248f8c0ce80777fac7cc
2021-02-19 23:05:40 +00:00
Colin Cross
fdc78fd88d Add ArcSettings and SettingsGoogle to the legacy allowlist
Settings-core is already in the allowlist, ArcSettings and
SettingsGoogle need to compile the same source files but were
in Android.mk files.  Add them to the allowlist so they can
be converted to Android.bp.

This relands I73bef76ecc517223827ac6f3cb1f0624c738fb9d.

Bug: 175124789
Change-Id: I6e116b5d4574990c8513371bbbb5175f2516c98f
Test: m RunSettingsGoogleRoboTests RunArcSettingsRoboTests
2021-02-19 19:18:41 +00:00
Jeongik Cha
cee5ba973d Remove EnforceRROExemptedTargets
There is no more target relying on EnforceRROExemptedTargets

Bug: 150820813
Test: m
Change-Id: If50d22c0e4f99e8c50d6a30cb94a0c3a5646b6fa
2021-02-19 12:16:12 +09:00
Pedro Loureiro
2464363376 Merge "Add support for lint baseline files" am: 8a75058d3f am: 85c97f861a
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1589498

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I4a43fdd2881f47d00611e9cf5c145100d996e135
2021-02-18 16:52:26 +00:00
Pedro Loureiro
8a75058d3f Merge "Add support for lint baseline files" 2021-02-18 15:53:13 +00:00
Treehugger Robot
3d23a56d6b Merge "Further simplify the link type check routine" am: ca52bfcf0f am: 48d587d67a
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1593592

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I545f48aac7a1bf76973b3e05b289590e9c039286
2021-02-18 15:49:26 +00:00
Jiyong Park
605bc52821 Merge "Linktype check error message becomes more correct" am: 4941e4b9d1 am: 4de1a5651f
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1593811

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I3f9b8a7add946d82ea2adecc53ffc44176aea01f
2021-02-18 15:46:44 +00:00