Commit Graph

6012 Commits

Author SHA1 Message Date
Paul Duffin
106a3a4bec Allow pruning of unsupported fields in structs in maps
Adds support for traversing into a field that is of type:
   map[...]*struct{...}

This is needed to allow java_sdk_library to mark scope specific
properties, e.g. public.annotations as being target build release
specific.

It was necessary to change the Scope field from:
   Scope map[*apiScope]scopeProperties
to:
   Scope map[*apiScope]*scopeProperties

That is because there is no way in go to change the field of a struct
value of a map. i.e. you cannot do the following, not even using
reflection:
   Scope[apiScopePublic].AnnotationsZip = nil

Bug: 204763318
Test: m nothing
Change-Id: Id103f70f55d4202971321ef4925cbec4b55f8136
2022-01-31 12:28:04 +00:00
Romain Jobredeaux
05169e81cc Merge "Basic bp2build converter for java_import." am: ea64e62dab am: bf670bc2c5 am: 9fcbe2509a am: fb012b7baa
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1965379

Change-Id: Ib1139bd6914423c79b45e7d673a2264e070d91b5
2022-01-29 21:15:26 +00:00
Romain Jobredeaux
ea64e62dab Merge "Basic bp2build converter for java_import." 2022-01-29 20:05:08 +00:00
Romain Jobredeaux
428a366703 Basic bp2build converter for java_import.
This only supports the `jars` property/attribute.

Test: b build external/error_prone:error_prone_core_jars
Bug: 215229744
Change-Id: If0d9c8c4e9c1c560d35a501c20bef9361ef45e15
2022-01-29 09:44:37 -05:00
Colin Cross
ce56425a6b Annotate more java dependencies for licensing
Annotate more dependencies as runtime linked or toolchain.

Bug: 207445310
Test: m checkbuild
Change-Id: Ia5dc3321a1e476b16058eee94d6dc494fe1e933e
2022-01-28 15:42:06 -08:00
Treehugger Robot
04236b4319 Merge "Limit JIT tier for javac" am: 52ef4c3373 am: cc5e84c5a1 am: 2f148420af am: 4fb4f5136a
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1964540

Change-Id: I6d82259156eeac59544b5305746ee250502e4670
2022-01-28 23:12:50 +00:00
Treehugger Robot
52ef4c3373 Merge "Limit JIT tier for javac" 2022-01-28 21:59:05 +00:00
Jared Duke
0849c14aea Limit JIT tier for javac
javac is generally a short-lived JVM invocation that doesn't greatly
benefit from deep JIT tiering. As such, favor faster startup time
by limiting to tier 1 JIT for javac execution. This should greatly
reduce overall CPU usage from Java compilation for an arbitrary
Android build (~20%), and deliver a small but modest improvement in
overall Java build times (~5%).

Representative incremental build times with this change:
  * real 18m3.507s
  * user 563m4.838s
and without:
  * real 19m11.909s
  * user 751m27.790s

Follow-up changes will apply similar flags for other short-lived JVM
build commands.

Bug: 205303544
Test: m
Change-Id: Ic6315b976063f4330902930a6cf5e5cb394c554c
2022-01-28 11:39:47 -08:00
Sam Gilbert
e607988f01 Adding metalava team to OWNERS to be able to disable metalava checks that will break platform build.
Change-Id: Ic560361afc8d982422beef33049278bf480e3964
2022-01-28 18:34:08 +00:00
Keyi Gui
15d2da292a Merge "Add new file name to output inputs/outputs of actions of modules into a new file when m json-module-graph is executed." am: 0107901dec am: 2b4514dc6f am: dc8ac9c98c am: 77177d1e82
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1959122

Change-Id: If0957203d0785453c9a04485d5051ccd84b4abca
2022-01-28 15:55:46 +00:00
Jiakai Zhang
e6e90db00a Allow installing boot images outside of APEX for prebuilt.
This change is similar to aosp/1947127, but for prebuilts.

After this change, if `bootImageConfig.installDirOnDevice` is set to a
path outside of the APEX, the build system will build a boot image from
the dex files and the profile extracted from the prebuilt APEX.
Otherwise, it keeps the current behavior: extracting the boot image from
the prebuilt APEX.

This is a no-op change. Current behavior is not affected.

Bug: 211973309
Test: m nothing
Test: -
  On internal master:
  1. Patch aosp/1947128.
  2. Patch ag/16743847 and ag/16746804.
  3. m SOONG_CONFIG_art_module_source_build=false com.google.android.art
  4. See the boot image being installed in `/system/framework/<arch>`.
Change-Id: I24ca525309fecaf3ab7a67960fbf118cd00ecd1d
2022-01-28 15:08:06 +00:00
Keyi Gui
0107901dec Merge "Add new file name to output inputs/outputs of actions of modules into a new file when m json-module-graph is executed." 2022-01-28 14:39:31 +00:00
Pedro Loureiro
029d01c158 Merge "Add special case for test-only module in configuredJars method" am: e4c255cb04 am: f4ddb097e5 am: b30ad5c950 am: c85877030d
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1960850

Change-Id: If0bfc07720e517139f93f0e59d34847e77cd4f8b
2022-01-28 10:51:31 +00:00
Pedro Loureiro
e4c255cb04 Merge "Add special case for test-only module in configuredJars method" 2022-01-28 09:50:36 +00:00
kgui
67007248a5 Add new file name to output inputs/outputs of actions of modules into a new file when m json-module-graph is executed.
And also delete the logic in droidstubs to output JSONDataActions.

Test: local.

Change-Id: Ib5d6f1f69c16c41f128e481131775c7699f96464
2022-01-28 13:52:50 +08:00
Jiakai Zhang
87847baf41 Remove the primary boot image from the ART APEX.
Move to `/system/framework`.

Bug: 211973309
Test: m
Change-Id: I80ffd9160654a2de96038250b9e9a28ecdba0a81
2022-01-27 23:17:24 +00:00
Sam Delmerico
e647d0bbb5 Merge "build device binary for java_test_host" am: af20c7cad1 am: a4a08a2bcb am: 4a428735e9 am: 95b3310514
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1957100

Change-Id: If9c805a47b5d35d3e6ae87035e8f6d7924c210f7
2022-01-27 15:43:16 +00:00
Sam Delmerico
af20c7cad1 Merge "build device binary for java_test_host" 2022-01-27 14:30:39 +00:00
Sam Delmerico
b3342ce580 build device binary for java_test_host
This commit adds support for a java_host_test that requires a target
binary to run. If the binary has host and target variants and is added
as a dependency in the `data` attribute, then the host variant is used.
Instead, we need a way to force the use of the target variant.

Bug: 182919153
Test: add code from aosp/1647282/1 && atest AuthFsHostTest
Change-Id: I68a6259b41a5e6809e1b82eec3122ffdf5067f56
2022-01-26 19:57:27 +00:00
Pedro Loureiro
561c7765de Add special case for test-only module in configuredJars method
Same pattern used for com.android.sdkext / test_framework-sdkextensions

Test: m nothing
Test: also tried this with related CLs that make use of this
functionality

Bug: 195732042
Change-Id: I5adfb0e8650e2e262bf646e56b29965798d0a42f
2022-01-26 18:48:07 +00:00
Sorin Basca
a1ab606045 Merge "Revert^2: "Setting Java 11 as the default version"" am: eb76d218e9 am: 9aef4c5930 am: f982c27555 am: a27fd80f3f
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1957404

Change-Id: Ic137f0b90b7cdda77059f99d2f8acfbcefa9c070
2022-01-25 07:01:48 +00:00
Sorin Basca
18ecf61090 Revert^2: "Setting Java 11 as the default version"
Reverted Change: I2f9866deff41406aede24758f6eda5e5808c7f29

Reason for revert: Post-submission failure have been fixed.

Test: presubmit
Bug: 195387473
Change-Id: If5db1614ef455e2f1eae1d36cf514e13e7aab993
2022-01-24 13:31:05 +00:00
Romain Jobredeaux
9246215c1d Merge "Revert "Revert "Add static_libs support to android_app bp2build converter.""" am: f49ca9e40d am: 2303c67479 am: b2e3ee4575 am: 0b93c3e3f1
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1948956

Change-Id: I8ba757d3164908e6c2f9361cb2d6f8735c67a98b
2022-01-21 22:13:58 +00:00
Sam Delmerico
77f2c94fa7 Merge "bp2build converts java_genrule and java_genrule_host" am: 925a30496a am: 61294da112 am: 3964495e4c am: 37e836de84
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1946827

Change-Id: I120d73136558b79e00aa208df840409c8fba8f2c
2022-01-21 21:13:59 +00:00
Romain Jobredeaux
f49ca9e40d Merge "Revert "Revert "Add static_libs support to android_app bp2build converter.""" 2022-01-21 20:51:06 +00:00
Sam Delmerico
cd1b80f067 bp2build converts java_genrule and java_genrule_host
Bp2build currently supports building genrules for cc modules, but does
not support building java_genrule* modules. This commit adds this
functionality.

Bug: 213480907
Test: go test ./bp2build
Change-Id: I473196c5bcf5582ba0c8faa65b5005f81ac973a4
2022-01-21 17:50:40 +00:00
Sorin Basca
c43bb629e5 Merge "Revert "Setting Java 11 as the default version"" am: e7421c15dd am: a0abe6e74e am: cee0e6bf57 am: 902ad4c260
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1956197

Change-Id: Ie3984b088be52bf07333c174e6c931e390f9f471
2022-01-20 16:57:02 +00:00
Sorin Basca
8d3e0bb25e Revert "Setting Java 11 as the default version"
Revert submission 1944928-default-java11

Reason for revert: Post-submit failures
Reverted Changes:
Ia9a0aa2a4:Setting Java 11 as the default version
Ibf5d10521:Setting Java 11 as the default version

Fixes: 215504708
Fixes: 215502091
Fixes: 215502091
Change-Id: I2f9866deff41406aede24758f6eda5e5808c7f29
2022-01-20 15:37:11 +00:00
Sorin Basca
471c660a4d Merge "Setting Java 11 as the default version" am: 2c32bbfd73 am: cc0930b609 am: fe7d51f352 am: 9ac9f195d2
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1946707

Change-Id: I0b4cfadabc1b7d8b0b6944e374bae74c8c4770f3
2022-01-20 11:24:28 +00:00
Romain Jobredeaux
355851b520 Revert "Revert "Add static_libs support to android_app bp2build converter.""
This reverts commit b33e0b8b5b.

Reason for revert: CI failure deemed to be a fluke

Change-Id: Ia804d531092921e4ad090740420c4a4e02e6ff00
2022-01-19 21:13:51 +00:00
Sorin Basca
171c2103b8 Setting Java 11 as the default version
Test: m
Change-Id: Ia9a0aa2a4aa02d7b67ad8e1cb6083d33c3d75e70
2022-01-18 09:05:34 +00:00
Jiakai Zhang
594ed5022a Merge "Allow installing boot images outside of APEX." am: 0cd2a0e2bf am: c1744ee0a0 am: d437de134a am: 91c7d55489
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1947127

Change-Id: Id50d66720662cf5e06b2a8441feab2c5300aaf60
2022-01-14 18:51:40 +00:00
Jiakai Zhang
0cd2a0e2bf Merge "Allow installing boot images outside of APEX." 2022-01-14 17:31:04 +00:00
Romain Jobredeaux
cd41dd5c33 Merge "Revert "Add static_libs support to android_app bp2build converter."" am: 8a9a97b4a0 am: 474eddd20b am: 9b36f4b981 am: c19a2c16bd
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1948756

Change-Id: I36a0fd3f7147ef9975f55b61e872020a4bcd6c9e
2022-01-13 17:57:52 +00:00
Romain Jobredeaux
8a9a97b4a0 Merge "Revert "Add static_libs support to android_app bp2build converter."" 2022-01-13 17:03:26 +00:00
Romain Jobredeaux
8a36f521f8 Merge "Add static_libs support to android_app bp2build converter." am: 24431448b2 am: 6eae04a33f am: 519e09f11d am: 9dbe366934
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1917405

Change-Id: I253922076c5eb0e947bcc6948987b8d38e9c4f06
2022-01-13 16:02:34 +00:00
Romain Jobredeaux
b33e0b8b5b Revert "Add static_libs support to android_app bp2build converter."
This reverts commit de722acd96.

Reason for revert: broke bp2build CI

Change-Id: I535e8746e846c20f1a47c2a1eb0362276af49206
2022-01-13 15:16:12 +00:00
Romain Jobredeaux
24431448b2 Merge "Add static_libs support to android_app bp2build converter." 2022-01-13 15:00:44 +00:00
Jiakai Zhang
6decef916c Allow installing boot images outside of APEX.
After this change, `bootImageConfig.installDirOnDevice` can be set to a
path outside of the APEX, in which case, the boot image will not be
installed in the APEX. Instead, it will be installed to the given path
by Make.

This is a no-op change. Current behavior is not affected.

Bug: 211973309
Test: m nothing
Test: -
  1. m com.android.art
  2. See the boot image still being installed in the ART APEX.
Test: -
  1. Change `installDirOnDevice` of the ART boot image config to
     `system/framework`.
  2. See the boot image being installed in `/system/framework/<arch>`.
Change-Id: Ib13b17cc9e94dc5754c9b51b04df3307323b8783
2022-01-13 14:50:05 +00:00
Paul Duffin
ad103d80ba Merge "Prevent using android_app_import in instrumentation_for property" am: da88a2599a am: 4a2fbb6a17 am: 2c7ba94992 am: 7d009dd8a8
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1945101

Change-Id: I6d020f9267740539ed45d479792847dff17741dc
2022-01-13 12:54:14 +00:00
Paul Duffin
da88a2599a Merge "Prevent using android_app_import in instrumentation_for property" 2022-01-13 11:56:52 +00:00
Muhammad Haseeb Ahmad
bc0ad4ffb6 Merge "Add java_fuzz_packaging" am: be63328574 am: 6b0cfa88ea am: f449abc292 am: 725085406e
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1943870

Change-Id: I0dd77b3ca53368b2ce0ae08dc3e5a1549b6598fb
2022-01-13 02:09:52 +00:00
Wei Li
404d42f619 Merge "Correct the comments on property exclude_kotlinc_generated_file, which defaults to false actually." am: 3842a91f54 am: 702c570b45 am: 5404c75493 am: eff2e3e226
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1947488

Change-Id: Ib405482683f75b112353b7d6f845c3dc526ef6a8
2022-01-13 02:09:27 +00:00
Muhammad Haseeb Ahmad
be63328574 Merge "Add java_fuzz_packaging" 2022-01-13 01:22:16 +00:00
Wei Li
92cd54b29d Correct the comments on property exclude_kotlinc_generated_file, which defaults to false actually.
Bug: 204888276
Test: Treehugger

Change-Id: Ib0405395da9a8cf8dd7bb1983fcd13425fe69b34
2022-01-12 13:27:36 -08:00
Muhammad Haseeb Ahmad
e380310a9e Add java_fuzz_packaging
java_fuzz_package is a prelude to a haiku-java build target.

Test: m example_java_fuzzer
Change-Id: I78caa53d7687e24f7180c7e16013b668991d6fe6
2022-01-12 18:48:39 +00:00
Liz Kammer
a2ba7e53f8 Merge "Add SetProperties to json-module-graph" am: adf1b2a2cd am: b6fdee8f0a am: bbd97028b8 am: 4d7be9bab5
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1937639

Change-Id: Ia1044eb2791c272f2600e6d3ddc346c3f8652b5c
2022-01-12 14:18:24 +00:00
Liz Kammer
adf1b2a2cd Merge "Add SetProperties to json-module-graph" 2022-01-12 13:23:33 +00:00
Wei Li
1d0f46e58d Merge "Add new property "exclude_files_in_output" for excluding files from the output files of Java related modules." am: 9ab9437b40 am: b2ee4a8aa0 am: 6cf2fdb71e am: b55a98dd1f
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1944246

Change-Id: Ide374c607d6cee008a3732c3d19a581319cbaeab
2022-01-12 10:38:34 +00:00
Wei Li
9ab9437b40 Merge "Add new property "exclude_files_in_output" for excluding files from the output files of Java related modules." 2022-01-12 09:25:22 +00:00