Age | Commit message (Collapse) | Author |
|
Bug: 292141694
Flag: EXEMPT host test change only
Test: $ANDROID_BUILD_TOP/frameworks/base/ravenwood/scripts/run-ravenwood-tests.sh
Change-Id: Ia84a40a390e83e0ab297cbcc8261d19603003649
|
|
Provide a new property to send the "--strip-mockito" argument to the
Ravenizer tool through Android.bp.
Bug: 292141694
Flag: EXEMPT host test change only
Test: $ANDROID_BUILD_TOP/frameworks/base/ravenwood/scripts/run-ravenwood-tests.sh
Change-Id: I88a11640244f02e9a02858245307f9ad887eedda
|
|
All usages of the property has been converted to using select syntax.
Test: m nothing --no-skip-soong-tests
Bug: 368127911
Change-Id: I130f15d8524b56b6905c4dd3e7283731f437f88d
|
|
|
|
Now that blueprint_go_binary modules are wrapped in a module type
that implements android.Module Soong should never see a blueprint.Module.
Remove the versions of the context methods that allow working with
blueprint.Modules.
Genrules still need VisitDirectDepsAllowDisabled, as they use a hack
that adds dependencies on host tools after the prebuilts mutators have
run, which means they may have a dependency on a disabled prebuilt
and need to manually forward it to the corresponding source module.
Test: all soong tests pass
Flag: EXEMPT refactor
Change-Id: I9147b450269749326e8fe75c5af310bd2d898d8c
|
|
|
|
|
|
Instead, provide the information of the source/prebuilt java_sdk_library
to the rdeps via the SdkLibraryInfoProvider.
Test: m nothing --no-skip-soong-tests && diff ninja file
Bug: 348040422
Change-Id: If6cd3cd260a8ce8dccead7f302840cabf68a9fae
|
|
|
|
Bug: b/348040422
Test: lint_test.go
Flag: EXEMPT refactor
Change-Id: I420bee2c7056a3f4acee3af5955f79c504ea61d9
|
|
Coverage instrumentation is performed on the combined jar contaning
all the transitive dependencies, replace the exported list of
transitive dependencies with the instrumented jar.
This relands I1f417f5b4dc8e895eb1800da39121e0aefc754d9 with a fix
to prevent using the instrumented jar as a dependency.
Bug: 368161965
Test: TestCoverage
Flag: EXEMPT bugfix
Change-Id: I73ba60bcda241e6b4522310a9c65f717869638a6
|
|
The check adds restriction on inter-partition dependencies. This is
now a no-op given that the container enforcement serves the same
purpose. Also, the error guides the user to depend on java_sdk_library
for inter-partition dependency, while depending on java_sdk_library
directly is now restricted.
Test: m nothing
Bug: 308827369
Change-Id: I29f88b7b61e3d98d047e185e8757b9ffcf09582e
|
|
Instead, the module should specify the submodule it actually depends on.
This is a prereq change to removing the java_sdk_library "magic"
Test: m nothing --no-skip-soong-tests
Bug: 366069293
Change-Id: Idb4b0b0a953f5391c24e50294c940522b73c34f2
|
|
Spurred by ag/27778860
Test: m nothing --no-skip-soong-tests
Change-Id: I0e48144172eee1c589f46875cd94e3aa19d43873
|
|
* changes:
Add kotlin kzips to build_kzip.bash
Create .kzip files for kotlin translation units
|
|
This CL creates the build rules to invoke the standalone kotlin
extractor and create .kzip files for each kotlin translation unit. These
will be indexed by the internal g3 kotlin indexers
Implementation details
- Create a `kotlinKytheExtract` static rule. Its inputs will be source
.kt/.srcjar files and other verbatim args passed to kotlinc. The
extrator will serialize this information into a .kzip file. The .kzip
file should contain the necessary information to "replay" the
compilation
- Create a xref_kotlin phony rule to build all .kzip files corresponding
to kotlin translation units.
This implementation has one limitation. Since the kotlin indexers
"replay" the compilation using its own version of kotlinc-jvm, there
might be indexing issues caused by kotlinc version skew between android
builds and indexing builds. `-kotlin-home` can likely solve that, but
this CL defers that for now.
Bug: 265428637
Test: Built the phony `xref_kotlin`, and ran the indexer locally using go/kythe-git-local-run#indexing-to-local-xrefs-server
Change-Id: Ifb370f2df8aa46f71df3fe1ae7d7aa5da773cc8b
|
|
|
|
|
|
Ravenizer and the other rules that modify the output jar also need to
replace the implementation jar depset with the modified output jar.
Bug: 308016794
Test: atest CtsOsTestCasesRavenwood
Flag: build.RELEASE_USE_TRANSITIVE_JARS_IN_CLASSPATH
Change-Id: I87ec143431c09ed878f8e1c3541b56d8077e23b5
|
|
|
|
Bug: 362579941
Test: m nothing --no-skip-soong-tests
Change-Id: Iccc93cf14753aae1adb26c6eedd00aabf1c2f6a6
|
|
151446cb41
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/3254252
Change-Id: Ib1d5f7a2fa7491e1ecbb4873513c182d309275f1
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
|
Skip combining jars into turbine-combined, combined, and withres jars
and instead collect transitive jars to use in the classpath and to
produce the final dexed jar.
This reduces the size of a `m checkbuild` in git_main by 11%, from
1300 KiB to 1154 KiB. It may also improve caching and reduce uplink
network bandwidth when building with RBE, as now the classpath inputs
to rules are themselves outputs of previous rules and so already in
the RBE CAS.
The downside is that the classpath inputs to each rule are now much
longer, increasing the Soong ninja file size 11%, from 4.6 GiB to
5.1 GiB. This could be mitigated in the future by supporting something
like depsets in the generated ninja file to reduce duplication.
Bug: 308016794
Test: TestSimple, TestKotlin, TestClasspath
Flag: build.RELEASE_USE_TRANSITIVE_JARS_IN_CLASSPATH
Change-Id: I2b7b4261375494370da70f98597c8719f1d561cf
|
|
The `m Run*RoboTests` test runner is no longer supported, remove the
code to generate the Make rules for it.
Also reduce the number of combining steps by passing the extra jars
that need to be combined into the compile step.
This relands Icf05079bf570bed7a10962cbf03459bd53c51f99 with a fix to
reorder the instrumented app classes after dependency classes.
Test: atest --host SystemUiRoboTests
Flag: EXEMPT refactor
Change-Id: I174ceb95af5557e1859eeb12a2f5fac2332975a8
|
|
build actions." into main am: c55b25f125
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/3249489
Change-Id: I43e2ee71097e95e313eab8631742acb8048e36d4
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
|
build actions." into main
|
|
actions.
Bug: 358425833
Test: Manually verified the generated ninja and mk files and CI.
Change-Id: Ieebb822c46f37c0ff55fad08531e9870a76cbd7b
|
|
main am: 13d8e82c5e
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/3216678
Change-Id: I8a425dc292fd5ce81a2e5343fd18f21fa3d472d6
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
|
|
|
ca3bf2be39
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/3237626
Change-Id: Id72a093f81785ece92211cc63a73c0a53576fb7b
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
|
|
|
a596b12878
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/3249673
Change-Id: Ifd8f3a190c3794aed0dec5d872915fa294440db7
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
|
|
|
collectTransitiveHeaderJarsForR8 visits direct dependencies and collects
all transitive libs and static_libs header jars. The semantics of the
collected jars are odd (it collects combined jars that contain the static
libs, but also the static libs, and it collects transitive libs dependencies
of static_libs), so these are only used to expand the --library arguments
to R8. Rename the method and all the fields it uses with a "ForR8"
suffix to avoid confusion when more transitive header jar collection is
added to support transitive classpaths.
Bug: 308016794
Test: all soong tests pass
Change-Id: I291a86fbbc2e2f088598fb309d1b992080d60941
|
|
Pass the name of Soong's checkbuild target for each module to
Make so that it can depend on it from the main checkbuild rule.
This will give better control over which files get built, allowing
checkbuild to skip the jar combining step when transitive classpath
jars are enabled. The per-module checkbuild targets are passed to
make instead of added directly as a dependency of checkbuild in order
to maintain the existing behavior of only building modules exposed
to make in checkbuild.
Also tweak the existing calls to CheckbuildFile and add
InstallFileWithoutCheckbuild to match the files that are
in the Make-based checkbuild.
Bug: 308016794
Test: m checkbuild
Change-Id: Ic5140819381d58f4d00f23a7a12447950c4cf268
|
|
Apimapper is a tool to instrument android tests to log potentail API calls at the run time.
The real tool is developed internally. We use a placeholder binary in
AOSP before the real tool is ready.
The tool will only take affect when the enviroment var EMMA_API_MAPPER
is set to true.
Test: m cts
Bug: 328699028
Change-Id: Iece53b8afdb9803334b7393527f4fa24e22f71a8
|
|
7344482ff3
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/3248019
Change-Id: I440053bd684fa56172b82b4012348bd0a93e84c5
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
|
This change introduces a method to detect violating inter-container
dependencies between modules. The method is run in
`ModuleBase.GenerateBuildActions`, after the container info provider is
set. Given that the provider of the direct dependencies would have been
set at this time, the method utilizes this information to determine
the violations, which are introduced in https://r.android.com/3141104.
Note that this enforcement does not turn all inter-container
dependencies as errors. Instead, it will only turn dependencies that
matches the pre-defined violations into errors. Even if the dependency
matches the violation, an error will not be thrown if the dependency
satisfies any of the exception functions (e.g. the dependent module is
stubs, or the two modules belong to the same apexes).
Test: m nothing --no-skip-soong-tests
Bug: 338660802
Change-Id: Ib9ddc0761fa46f1309b1a1a4f759d9a4e04fd70e
|
|
88a8daf8ca
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/3248525
Change-Id: I7969a4be11e013e100f4be9fb13914244b094b7f
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
|
2a88491afc72707c21a125b81f7dcd252d2fc5f1
Change-Id: Iba4527f391a093703978fe01177b56fec4604b28
|
|
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/3247222
Change-Id: Id0c06c93eda0e4978d9df052542370f28e64da38
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
|
This change introduces a method to detect violating inter-container
dependencies between modules. The method is run in
`ModuleBase.GenerateBuildActions`, after the container info provider is
set. Given that the provider of the direct dependencies would have been
set at this time, the method utilizes this information to determine
the violations, which are introduced in https://r.android.com/3141104.
Note that this enforcement does not turn all inter-container
dependencies as errors. Instead, it will only turn dependencies that
matches the pre-defined violations into errors. Even if the dependency
matches the violation, an error will not be thrown if the dependency
satisfies any of the exception functions (e.g. the dependent module is
stubs, or the two modules belong to the same apexes).
Test: m nothing --no-skip-soong-tests
Bug: 338660802
Change-Id: Ia693c4a53369c757a3e96656a769405c759b111c
|
|
f2d6e5004f
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/3244001
Change-Id: Ibfcf7b1965a52402917a32a203bf55cb82d1626b
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
|
|
|
This reverts commit bb678f82d6bb5cd89bf282e88a879123d9763d61.
Reason for revert: Droidmonitor created revert due to b/362639013. Will be verifying through ABTD before submission.
Change-Id: I1dcb71672eeb44a17cf176d3731bcaf9aaf81edf
|
|
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/3155659
Change-Id: Id60c6920d6c964193b53c8b5f7026472c5fcacb0
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
|
|
|
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/3246818
Change-Id: Ia2b721e9967c0772acd7dd261ec18315f6c26b5e
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
|
The IDEInfo() methods read properties. To make those properties
configurable, we need a context to evaluate them with.
Bug: 362579941
Test: m nothing --no-skip-soong-tests
Change-Id: I26d4b7084439b3006e50b02277298f74a929e1aa
|
|
This change introduces a method to detect violating inter-container
dependencies between modules. The method is run in
`ModuleBase.GenerateBuildActions`, after the container info provider is
set. Given that the provider of the direct dependencies would have been
set at this time, the method utilizes this information to determine
the violations, which are introduced in https://r.android.com/3141104.
Note that this enforcement does not turn all inter-container
dependencies as errors. Instead, it will only turn dependencies that
matches the pre-defined violations into errors. Even if the dependency
matches the violation, an error will not be thrown if the dependency
satisfies any of the exception functions (e.g. the dependent module is
stubs, or the two modules belong to the same apexes).
Test: m nothing --no-skip-soong-tests
Bug: 338660802
Change-Id: I36e9cd956c5a076a53635be0c6ff27f77725516e
|