Age | Commit message (Collapse) | Author |
|
Previously, java binaries had both common and the first arch variants.
This was origionally added in aosp/556843. The reasoning there was so
that a java binary could be used as the dependency of a genrule.
However, now with transition mutators, we can make the incoming
transition redirect the arch variant to the common variant if the module
only has a common variant. This allows genrules to depend on the common
arch variant easily. That change is also included in this cl.
Bug: 372091092
Test: m nothing --no-skip-soong-tests
Change-Id: Iea612d050bff608d661f81566884653239015213
|
|
main
|
|
main
|
|
For language feature support.
Test: build/make/tools/ide_query/ide_query.sh --lunch_target=aosp_cf_x86_64_phone-trunk_staging-eng frameworks/base/core/java/android/app/Activity.java
Test: go test ./java
Bug: 372192486
Change-Id: I9b66bb0bdb576ac3f1757591b2bbef965602f740
|
|
|
|
|
|
This is a followup AI from https://r.android.com/3288083, which installs
dexpreopt files of apex system server jars in the same partition as the
top-level apex. This CL enforces that the partition properties of the
apex and the java library match.
This has been implemented in a bottomup manner.
systemserverclasspath_fragment module sets
`LibraryNameToPartitionInfoProvider`. The top-level apex uses this info
and raies an exception if the partition properties do not match.
This enforcement is done only for source apexes for now. It is not
needed for prebuilts since
- The dexpreopt rules of jars in prebuilt apexes are generated in the
top-level `prebuiltApex`/ `apexSet`
- We do not have prebuilts of system_ext apexes today
(com.android.compos is not part of mainline)
Test: m nothing --no-skip-soong-tests
Change-Id: Ib4df634457f315d5421681bdb0afebc2b1bf92d9
|
|
|
|
|
|
This is no longer needed given that the modules no longer depend on the
top level java_sdk_library.
Test: diff out/soong/module_bp_java_deps.json
Change-Id: I035844b638e2c6b305257755a75e9af47c5aec61
|
|
Bug: 292141694
Flag: EXEMPT host test change only
Test: $ANDROID_BUILD_TOP/frameworks/base/ravenwood/scripts/run-ravenwood-tests.sh
Change-Id: Ia84a40a390e83e0ab297cbcc8261d19603003649
|
|
|
|
The use case for this is kythe builds, which still use the legacy
resource processor. https://r.android.com/3207856 special-cased kythe
builds to use the legacy resource processor and retain R.srcjar xrefs.
This unfortunately broke xrefs for android apps that have android
library dependencies with unresolved resource references.
With this CL, the resource verification will be done only on the
top-level app for both ResourceProcessorBusyBox and the legacy
processor builds.
Test: XREF_CORPUS=blah m Traceur-res # builds now
Test: presubmits
Bug: 354854007
Change-Id: Ibc0eaa220a2eb233078c325318ef3bece243f375
|
|
partition" into main
|
|
|
|
Bug: 353597491
Change-Id: I97e3efdb0943f4116bc2eb47759291c6dc0dbda8
|
|
e.g. If a system server jar providing apex is installed in /system_ext,
the dexpreopt files of that jar will also be installed in /system_ext.
Currently, all of these artifacts are installed in /system
This behavior will be flag guarded by
RELEASE_INSTALL_APEX_SYSTEMSERVER_DEXPREOPT_SAME_PARTITION. This is
necessary because the ART runtime needs to be updated to look in the new
/system_ext location. Since some release configs build with ART
prebuilts, the runtime in those prebuilt apexes will not have the
additional search path introduced in https://r.android.com/3287191
Test: Verified that "Could not check odex file" does not appear for
service-compos (a system_ext apex systemserver jar)
Bug: 369678122
Change-Id: I752bdc7f5f69226b503800ce25726a211302cb07
|
|
This adds jni_libs support back to device variants, which was removed in
https://r.android.com/3230584. These will be installed by the two packaging
systems in different ways
1. Kati: By being listed in `LOCAL_REQUIRED_MODULES` of the
autogenerated Android.mk
2. Soong: Via the`jniInstallTag`, whose `InstallDepNeeded` value is true
This CL also makes it an error for a native library to be listed in
`required` of a `java_binary(_host)`.
Test: m nothing --no-skip-soong-tests
Test: Verified that there are no diff in
system_intermediates/file_list.txt (device variants)
Test: m installclean && m <host_java_bin> ; verified that the jni
library is installed in out/host/linux-x86/lib64 (host variants)
Bug: 370110572
Change-Id: I6aebc648191ab39f2da15a5f2807d46abab22cb0
|
|
User-requested.
Fixes: 371213057
Test: m nothing --no-skip-soong-tests
Change-Id: I8026830ade283c527a08dd2b79ee0345d3eb51d4
|
|
|
|
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
|
|
The latest errorprone updates use a multi-release jar file:
https://github.com/google/error-prone/issues/3756
https://openjdk.org/jeps/238
The module-info.class existing under certain version folders caused
package-check.sh to fail. Currently errorprone only has a versioned
module-info.class file, but if it later adds versioned implementation
classes, we may also need to update package-check.sh to respect
multi-release jars.
Bug: 253827323
Test: m RUN_ERROR_PRONE=true out/soong/.intermediates/packages/modules/Media/apex/framework/updatable-media/android_common/package-check.stamp with errorprone update to 3.32.0
Change-Id: Ieaee73636aa5321494c14c221d38964e1b0cebb1
|
|
Remove part of the apex top down mutator by moving enforceAppUpdatability
to a check in GenerateAndroidBuildActions instead of mutating
dependencies. This requires annotating app dependencies of updatable
apexes with `updatable: true` in the Android.bp files.
Bug: 367784740
Test: builds
Flag: EXEMPT refactor
Change-Id: I234a457bba48c0f48410d53740aaa9b89661ca7c
|
|
All usages of the property has been converted to using select syntax.
Test: m nothing --no-skip-soong-tests
Bug: 368127911
Change-Id: I130f15d8524b56b6905c4dd3e7283731f437f88d
|
|
|
|
|
|
|
|
Bug: 323382414
Bug: 370563864
Test: m nothing --no-skip-soong-tests
Change-Id: Iae8f472c81fbbb192effb4b3cf0066b6160e6b6c
|
|
Summary: On certain devices, dex is automatically stripped. To generate a debuggable APK, you must export a specific flag and then run the build. When you do this, the build system tries to set a flag that doesn't exist in the dex compiler and breaks the build.
Test: Successful Build on master branch
Change-Id: I85bbcc7ab426e9810dc241c99a08077f65e265bc
Signed-off-by: Abdelrahman Daim <adaim@meta.com>
|
|
RELEASE_DEFAULT_UPDATABLE_MODULE_VERSION." into main
|
|
framework/base/config" into main
|
|
|
|
Bug: 323382414
Bug: 370563864
Test: m nothing --no-skip-soong-tests
Change-Id: I11d8350d338e44d27537c6e5529034ba8a38265c
|
|
|
|
framework/base/config
This is to decouple the framework and art profiles everywhere.
Bug: 260067246
Change-Id: I3bd3ef6397a4587e28d3cd1775f1714dbf846c76
Test: running `m`
Test: Verify PRODUCT_DEX_PREOPT_BOOT_IMAGE_PROFILE_LOCATION for multiple products https://paste.googleplex.com/5573555023773696
|
|
Both 32-bit and 64-bit variants of native deps were getting installed in
Soong-built system image if they were listed in `required` of
`java_binary`.
java_binary(s) have two variants, a "common" and an arch
variant (the first arch). Previously the common variant will create a
dependency to both 32-bit and 64-bit variants of their dependencies.
With this CL, common variant will not create a dependency on required
unless the requested `target` is also the common target.
Test: Ran the filelistdiff tool
Test: go test ./java -run TestNativeRequiredDepOfJavaBinary
Bug: 369678122
Change-Id: Ica97e12eefb45929ca653ec57c3339e4a3b72a76
|
|
|
|
Given that modules are not allowed to depend on java_sdk_library as
a compilation dependency anymore, do not set JavaInfoProvider in
java_sdk_library to prevent misusage of java_sdk_library via
`OtherModuleProvier(..., JavaInfoProvier)` in `VisitDirectDeps()`
Test: CI
Bug: 308827369
Change-Id: Id73287774ec1d1a19cfab45e1eaee27784d141f0
|
|
|
|
|
|
|
|
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
|
|
|
|
This reverts commit 75e7228204782f05d76c85197eebc23197498029.
Reason for revert: <Potential culprit for b/369983619 - verifying through ABTD before revert submission. This is part of the standard investigation process, and does not mean your CL will be reverted.>
Change-Id: Ie0e6b9c9c1618b06d87a2b6ac3639aefe802ab06
|
|
RELEASE_DEFAULT_UPDATABLE_MODULE_VERSION.
The build flag RELEASE_DEFAULT_UPDATABLE_MODULE_VERSION is set up to
allow the default version code of updatable apk and apex to be
configurable per release config. Use the value from flag and remove old constant value (DefaultUpdatableModuleVersion).
Bug: 369531931
Test: presubmit
Test: flash cf and check version
Change-Id: Ia0a8634360cbe83501cdafee888678836005620f
|
|
|
|
|
|
This will allow developers to easily create dumps of R8 compilations (input classfiles, proguard rules, flags, resources...)
Example usage:
$ mkdir /tmp/dumps
$ R8_DUMP_DIRECTORY=/tmp/dumps m -j77 Traceur
This will put the dump for Traceur into the /tmp/dumps directory
If your target has several R8 invocations then dumps for all of these will be generated into the dump directory
Bug: 369931283
Test: R8_DUMP_DIRECTORY=/tmp/dumps m -j77 Traceur
Change-Id: I69be3190c61a98402931767e42184cc01ef25804
|
|
With https://r.android.com/3199942, the dexpreopt profile file is
installed by s soong module. `DEXPREOPT_IMAGE_PROFILE_BUILT_INSTALLED`
does not need to be exported to make.
Test: no diff in system_intermediates/file_list.txt
Change-Id: I6f7e0648847a5647414f8914ce2b0f2c4737421b
|
|
These vars were exported by soong so that kati can generate installation
rules for these artifacts. With https://r.android.com/3272600, soong
will create the installation rules, therefore exporting these variables
is no longer necessary.
Test: m nothing --no-skip-soong-tests
Test: No diff in system_intermediates/file_list.txt
Change-Id: I949976024e22b297d261ab7eb6354d8e77f1b34e
|