Commit Graph

1366 Commits

Author SHA1 Message Date
Jaewoong Jung
29c01bf032 Merge "Java test code clean-up"
am: 66bb414fb7

Change-Id: I69304bb2b589b5c415a5eb57cadc0833fd1be02e
2019-07-18 12:17:26 -07:00
Jaewoong Jung
66bb414fb7 Merge "Java test code clean-up" 2019-07-18 17:35:18 +00:00
Jaewoong Jung
f9a0443a9c Java test code clean-up
Remove unused parameters and make testJava return the config.

Test: Ran all java tests.
Change-Id: Iaa123f3fd93188e2f55452b887e1d340429cc710
2019-07-17 11:15:09 -07:00
Colin Cross
9dbe4eea79 Merge changes from topic "buildnumberfromfile"
am: 223e6a65b6

Change-Id: I4e2f0514434ddf6833d03334dbf36869d762214e
2019-07-16 19:59:12 -07:00
Colin Cross
223e6a65b6 Merge changes from topic "buildnumberfromfile"
* changes:
  Allow jar wrapper to take quoted arguments
  Add rspfile support to RuleBuilder
  Prepare droiddoc for using RuleBuilder
  Manually escape BuildNumberFromFile
  Fix android.Expand and ninja escaping
  Add RuleBuilder helper functions for built and prebuilt tools
  Add documentation to droiddoc.go module types
2019-07-17 02:45:03 +00:00
Colin Cross
723cc24f2e Merge changes Ia106d48e,Ib6c0e778
am: 63f4b57a7f

Change-Id: I65b761fd319f820b9d02f2a652fa2d844c353cd4
2019-07-16 14:59:09 -07:00
Colin Cross
63f4b57a7f Merge changes Ia106d48e,Ib6c0e778
* changes:
  Remove use of deprecated ExtractSourcesDeps
  Dedup path properties across property structs
2019-07-16 21:31:09 +00:00
Colin Cross
1563815780 Prepare droiddoc for using RuleBuilder
Move the ninja escaping of Args later so that they can be passed to
RuleBuilder without double escaping.

Test: m docs
Change-Id: Iac3560a12c05d010e6bd0ad9c2d6b1e18ebf5f89
2019-07-16 11:12:04 -07:00
Colin Cross
5822b552ef Manually escape BuildNumberFromFile
Change ctx.Config().BuildNumberFromFile() to be unescaped, and then
escape it manually where necessary.  This will allow passing
ctx.Config().BuildNumberFromFile() to RuleBuilder, which will handle
the necessary escaping.

Test: no change to out/soong/build.ninja
Change-Id: I5329ab2ba70ccea49958864488aa81794a7e4b56
2019-07-16 10:23:41 -07:00
Colin Cross
5cfc70d1f6 Remove use of deprecated ExtractSourcesDeps
Tag DexImportProperties.Jars with `android:"path"` and remove the
call to ExtractSourcesDeps.

Test: m checkbuild
Change-Id: Ia106d48ecf7e3fc98637a757a9812edcf65f5b82
2019-07-16 09:52:23 -07:00
Jooyung Han
962982a731 Merge "soong: Fix AndroidMk with *Required properties"
am: 0f7dbd0d55

Change-Id: I588aeda47a66334b16294e36333f653001fd37b1
2019-07-15 19:31:36 -07:00
Treehugger Robot
0f7dbd0d55 Merge "soong: Fix AndroidMk with *Required properties" 2019-07-16 02:09:29 +00:00
Jiyong Park
9da7bcfd77 Fix the unbundled mainline module build
am: e3ef3c8f0c

Change-Id: Ic5fdbf4dc40d6744f5c97e9eafc3672f4aca975e
2019-07-15 15:20:20 -07:00
Jiyong Park
61b5d0672d Revert "Don't build hiddenapi flags or encode dex for unbundled builds"
am: 09cb629c15

Change-Id: I13583e6b4e6c59c2c2904349f61179a49a0a36ba
2019-07-15 15:20:14 -07:00
Jooyung Han
12df5fb471 soong: Fix AndroidMk with *Required properties
java.Module is using "Custom" function to write Android.mk.
And if "hostdex" is set to "true", it writes "hostdex" module definition
as well as original module.

As of now, Required/Host_required/Target_required props are filled in
the AndroidMkEntries structure(aosp/939505). But these are not
passed to old AndroidMkData.Custom function.

So, if a java_library declares "hostdex:true" and "required:[...]"
together, "required" is not applied to the "hostdex" variant.

This change copies *Required props from AndroidMkEntries to
AndroidMkData before calling its Custom callback.

Test: m (runs soong unit tests)
Change-Id: I5f85714f721a2a0917ab18072dbea52294c770e7
2019-07-16 02:28:29 +09:00
Jiyong Park
e3ef3c8f0c Fix the unbundled mainline module build
This change fixes two problems:

1) the prebuilt apexes are force disabled for the unbundled builds
because we need to build the modules from the source then

2) the dependencies from an sdk_library module to
*.stubs.{public|system|tests} are not added for the unbundled build
because the stubs modules are disabled.

Bug: 137282010
Test: unbundled mainline builds are successful
Test: build com.android.media and inspect the jar file to see if
hiddenapi flags are there
$ cd out/dist/mainline_modules_arm
$ unzip com.android.media.apex apex_payload.img
$ mkdir -p mnt
$ sudo mount -o ro,loop apex_payload.img mnt
$ dexdump2 mnt/javalib/updatable-media.jar | grep hiddenapi
shows results

Change-Id: I2c00af07aac4a15770d3acab011a36e2e4803bfc
2019-07-15 17:20:05 +09:00
Jiyong Park
09cb629c15 Revert "Don't build hiddenapi flags or encode dex for unbundled builds"
This reverts commit 7b8a567f44.

Bug: 137282010
Test: With the CL above this one, the unbundled mainline module build
does not fail.

Change-Id: I2f49fa7dbe1da92cb282a9bc14acd5830888ed17
2019-07-15 17:17:31 +09:00
Colin Cross
2647ced06e Fix android.Expand and ninja escaping
RuleBuilder does its own ninja escaping, so values that will be
passed to RuleBuilder must not be pre-escaped.  Add a new
android.ExpandNinjaEscaped method that explicitly handles ninja
escaping.  Some of the expansion functions return ninja values
(like "${in}") that need to stay unescaped, so add a bool return
value to the expansion function in android.ExpandNinjaEscaped.

Test: expand_test.go
Change-Id: Ib03d4db38b5e3e5bffbd87acf14f55e276a53d04
2019-07-11 14:52:17 -07:00
Jaewoong Jung
9c7c376566 Merge "Add java_sdk_library summary to soong docs."
am: 66abc58aa2

Change-Id: Id4dd68586b94cc9873cec36140e9a6078fdbbe95
2019-07-11 14:29:59 -07:00
Treehugger Robot
66abc58aa2 Merge "Add java_sdk_library summary to soong docs." 2019-07-11 20:59:35 +00:00
Colin Cross
ee94d6ab14 Add RuleBuilder helper functions for built and prebuilt tools
Replace the common pattern of:
cmd.Tool(ctx.Config().HostToolPath(ctx, "tool"))
with:
cmd.BuiltTool("tool")

And similarly for PrebuiltBuildTool.

Test: m checkbuild
Change-Id: I7d63188505362c7df6a3b3e7330b4a2cca5a2409
2019-07-11 13:05:19 -07:00
Colin Cross
a3002fc7ab Add documentation to droiddoc.go module types
Test: none
Change-Id: Ic842e4ffda5c6121d15724671f5dcbe02ab373ba
2019-07-11 13:05:19 -07:00
Jaewoong Jung
4f158eed0d Add java_sdk_library summary to soong docs.
Test: m soong_docs
Change-Id: Ibaf09cd263966fad90d22d2b17161432c247cbbb
2019-07-11 10:45:40 -07:00
Sasha Smundak
e26ae3f2bf Merge "Tune invocations and print full diagnostics on crash for d8 and r8."
am: a89cf59a4f

Change-Id: I9afd4b5af3119e57bbd21ed1e42c340ca35d1962
2019-07-10 13:45:01 -07:00
Treehugger Robot
a89cf59a4f Merge "Tune invocations and print full diagnostics on crash for d8 and r8." 2019-07-10 19:59:11 +00:00
Jaewoong Jung
c40949db97 Merge "Improve android_app_import.dpi_variants handling."
am: 3af8661af7

Change-Id: Iafb8f55dac9caaa3acb3d6fc46f0ad8452147660
2019-07-10 09:57:24 -07:00
Jaewoong Jung
3af8661af7 Merge "Improve android_app_import.dpi_variants handling." 2019-07-10 16:39:53 +00:00
Jaewoong Jung
3e18b19442 Improve android_app_import.dpi_variants handling.
Instead of circumventing the limitation of Prebuilt implementation by
picking a source path itself, it now uses the same mechanism as
archMutator and replaces the source path in advance so that Prebuilt
always sees the corrent source path.

Because this requires the Apk field to be a string pointer, the single
source prebuilt implementation is being updated to be reflection-based.

Test: Soong unit tests, m soong_docs, TreeHugger
Change-Id: I2304f15e32d632f74f95f0d9e9bf1f75ff3e2225
2019-07-09 15:00:15 -07:00
Sasha Smundak
ee5c60384f Tune invocations and print full diagnostics on crash for d8 and r8.
Bug: 132766811
Test: treehugger
Change-Id: Id6943008e65b9dc3479e8758445e8d679529a8cb
2019-07-09 11:26:20 -07:00
Jaewoong Jung
f0cb835ebf Merge "Dist NOTICE outputs for app targets."
am: b1907ee587

Change-Id: I3f33053028a9564d42b9ce2b18fdfa5ff8a760c8
2019-07-08 17:12:15 -07:00
Jaewoong Jung
9877279855 Dist NOTICE outputs for app targets.
Bug: 136501164
Test: m NetworkStack, TreeHugger
Change-Id: I2279eeb0e50b1b5685e23130a8da6ab090f37f56
2019-07-08 09:26:02 -07:00
Jeongik Cha
218964e76e Merge "Enforce hidden api usage in vendor (soong)" am: e65d84c84c
am: 7a22534a47

Change-Id: Iffbacc0f98fb208e6f71919bcefa19cb0e57efca
2019-06-30 19:53:19 -07:00
Treehugger Robot
e65d84c84c Merge "Enforce hidden api usage in vendor (soong)" 2019-07-01 02:06:57 +00:00
Jeongik Cha
6bd33c13bb Enforce hidden api usage in vendor (soong)
From aosp/588578, if vendor app doesn't fill sdk_version, build scirpt overwrites system_current to sdk_version.
But there is no similar enforcement in soong.

So, as make does, sdkVersion() returns "system_current" if it is device-specific or soc-specific module. and sdk_version is not filled.

Test: pass soong test
Bug: 132780927

Change-Id: I69bb3d7bfcf7c27c2db4d0efbe046f9c7879b4bc
2019-06-28 14:56:59 +09:00
Mathieu Chartier
f137467b49 Merge "Revert "Revert "Remove option to create boot image based on preloaded classes""" am: 8a255acae2
am: abbcf54625

Change-Id: I65f5927b59ebb4d8999fe4e31a10fd9bcd192063
2019-06-27 09:33:28 -07:00
Mathieu Chartier
8a255acae2 Merge "Revert "Revert "Remove option to create boot image based on preloaded classes""" 2019-06-27 15:56:52 +00:00
Paul Duffin
eebd76179f Merge "core_current does not include framework libraries" am: bf46d96c60
am: 3704c26631

Change-Id: Ia24a9ceef1cf09fc61f1073e91acfbf7d2d48749
2019-06-27 05:22:14 -07:00
Paul Duffin
bf46d96c60 Merge "core_current does not include framework libraries" 2019-06-27 11:43:32 +00:00
Mathieu Chartier
6adeee1131 Revert "Revert "Remove option to create boot image based on preloaded classes""
Test: make
Test: build/soong/scripts/build-ndk-prebuilts.sh

This reverts commit d3f688b521.

Change-Id: Ia8898d11d67e5f0c4d8886f13d29f5dbd5f8609b
2019-06-26 14:54:47 -07:00
Colin Cross
6e07ef95ef Merge "Don't pass --legacy by default to aapt2 compile" am: b2e4f475c3
am: 2eda0f6f5d

Change-Id: I3e5a027c57de092e9748ede5fc3366e26f643cc9
2019-06-26 11:36:40 -07:00
Paul Duffin
de24d21f87 Merge "Remove unused condition in decodeSdkDep(...)" am: 25bdad9f2c
am: ee9d638968

Change-Id: Ib5e3b295b3ea7f471da697d22ef6620701225745
2019-06-26 10:56:00 -07:00
Mathieu Chartier
ec53d83a95 Merge "Revert "Remove option to create boot image based on preloaded classes"" am: a6c4ff2cc8
am: c286a25894

Change-Id: I2ea16e342d9bea29cf98ab6ed277a7654861eb29
2019-06-26 10:52:54 -07:00
Colin Cross
b2e4f475c3 Merge "Don't pass --legacy by default to aapt2 compile" 2019-06-26 17:05:34 +00:00
Mathieu Chartier
a6c4ff2cc8 Merge "Revert "Remove option to create boot image based on preloaded classes"" 2019-06-26 16:52:45 +00:00
Mathieu Chartier
af939a71e2 Merge "Remove option to create boot image based on preloaded classes" am: e2a8e7f0ec
am: 26f8e25cc1

Change-Id: I0d76c25c482be86090bf4666e4633ffa9059a24d
2019-06-26 09:50:37 -07:00
Mathieu Chartier
d3f688b521 Revert "Remove option to create boot image based on preloaded classes"
This reverts commit 4a0473175e.

Reason for revert: NDK build broken

Change-Id: Id98bf9d5f82ed72d8c489264cf9d754e8ea1d27e
2019-06-26 16:44:38 +00:00
Mathieu Chartier
e2a8e7f0ec Merge "Remove option to create boot image based on preloaded classes" 2019-06-26 15:56:36 +00:00
Paul Duffin
7aae6e7794 core_current does not include framework libraries
Bug: 134566750
Test: m droid
Change-Id: I9496a121e28fabe0c60959ac8ccea60ec4b58544
2019-06-26 14:38:00 +01:00
Paul Duffin
735d03c65c Remove unused condition in decodeSdkDep(...)
The string "core.platform.api.stubs" is never passed to the toModule
function since change I6bb6c1a0ea24437c8253dc5d8fabd37edabc9d3e.

Bug: 134566750
Test: m droid
Change-Id: Ia425a433cd762bba30be72e837fa4199580e5b6c
2019-06-26 14:37:31 +01:00
Colin Cross
f5300d729e Merge "Uncompress dex in unbundled privileged apps" am: 49eb5477c7
am: d7f9313e5b

Change-Id: I2f9baa99918d5730af3f7df1fc0671d4b6644ebe
2019-06-25 18:54:13 -07:00