Age | Commit message (Collapse) | Author |
|
Bug: 358427516
Test: Manually verified genereated ninja and mk files, unit tests.
Change-Id: I53a6dd718232735decbeb93febfd269dd9449e86
|
|
Bug: 377723687
Test: Unit tests and compare the ninja and mk files generated.
Change-Id: If0d132c2310eb958c066747f9c16251cc24fedd0
|
|
Bug: 377723687
Test: Unit tests and compare the ninja and mk files generated.
Change-Id: I1ce8bc782666586633ded9cfaf1b9590e3c0efde
|
|
|
|
|
|
Dexpreopt files started to be missed from Soong defined system images.
Package those files so they can be added into the system image in the
same way with KATI system image.
Bug: 370352548
Test: Soong defined system image build succeeded
Change-Id: I1b665b9a891d89d3f042c0ad8a4ffca6cd567b2e
|
|
Bug: 377723687
Test: Unit tests and compare the ninja and mk files generated.
Change-Id: I8c7b3b493877a9857ca433b015e6e49ad8387f91
|
|
|
|
Use the ApexInfo instead of a string as the TransitionInfo for apex
variations. This removes the need for apexInfoMutator, which is the
last remaining top down mutator.
This has a variety of ramifications. One is that it is no longer
possible to add a dependency onto the apex variation of a module,
as that would require constructing a matching ApexInfo. Instead,
anything that wants to add a dependency on the apex variation has
to depend on the apex instead, and get to the module by walking
its transistive dependencies.
Another ramification is that modules in apexes can no longer
determine which apexes they are in (unless they set
UniqueApexVariations so that each variation is in exactly one
apex). This prevents some of the existing container violation
checks from working after this CL, tracked in b/394955484.
It also requires using unique variation names for the prebuilt
and source dependencies of apexes, so the apex variations
for dependencies of prebuilts now have a prebuilt_ prefix.
Bug: 372543712
Bug: 394955484
Test: go test ./...
Change-Id: I3d08aca1ac956ab0e343ec3f235a736cd93be0e1
|
|
Currently APEX ignores vintf_fragments modules within the APEX, and all
VINTF fragments are installed with prebuilt_etc modules. This change
installs vintf_fragment modules in the APEX, so any additional
prebuilt_etc modules are not required as long as binaries define
vintf_fragment_modules references.
Bug: 363105686
Test: AOSP CF x86_64 build succeeded
Change-Id: I33b58178cd51dc2c4bb9226fdd68e7990dccd6a2
Merged-In: I33b58178cd51dc2c4bb9226fdd68e7990dccd6a2
|
|
into apex" into main
|
|
System server jars in apexes currently use a heuristic to determine
whether or not they are the "main" variant in order to create rules
that copy their dexpreopt artifacts to the final installed location
and their dex jars to a known location for other modules to reference.
The heuristic depends on knowing all apexes that depend on the
module, which will not be possible when the apex info mutator is
rewritten to support future incremental analysis.
Instead, export the dexpreopt artifacts and dex jars, and let the
apex decide whether or not to install them.
Bug: 372543712
Test: all soong tests pass
Change-Id: I478bc2edceca4614e08e9a695b05d091e5437ba1
|
|
This is a partial revert of aosp/3308088. We need the symbol file
to still be installed, because a later ctx.InstallSymlink file adds
a dependency on the it.
We removed that install initially so that it didn't get installed in
filesystems, to replace that, just exclude files installed to the
"apex" partition from filesystems.
Bug: 393617060
Test: cd bionic; mm
Change-Id: Id4abe966c630d1e356575386af233eab92849934
|
|
Apexes such as com.android.runtime install additional symlinks in the
staging $PRODUCT_OUT/apex directory. It uses
PathForModuleInPartition("apex") to avoid the side affect of
inadvertently copying this into rdeps such as system.img
To prevent non-null builds when switching between `m` and `m
--soong-only`, remove this special case.
Test: m nothing
Bug: 390471378
Change-Id: I81ff7b9c18f84cbe83836e6992124080c93359d2
|
|
module.PartitionTag(DeviceConfig) doesn't work for validations because
it tells the physical partition where the apex is installed. It returns
"system" even for vendor APEXes when "VendorPath" is set to
"system/vendor".
For validations, we need logical partition tag. So, "vendor:true" apexes
should be "vendor" even when it's installed in /system/vendor.
Bug: 384988749
Test: m --no-skip-soong-tests
Change-Id: Ib478caa62c98808bc94fe350a2f182f1d2b42a46
|
|
It was a workaround to build a vendor apex which needs to read
apex_manifest and run on SDK 34, which doesn't have
vendor_apex_metadata_file yet.
Vendor_apex_metadata_file is available since SDK 35, we can remove
the workaround.
Bug: 388964457
Test: m --no-skip-soong-tests
Change-Id: Iad91bee7c689c96322e342485301152739baa92a
|
|
This turns on apex_sepolicy_tests for erofs apexes. The test now uses
`apex-ls` (a new tool to print security contexts for apex contents).
Bug: 353896817
Test: OVERRIDE_PRODUCT_DEFAULT_APEX_PAYLOAD_TYPE=erofs m run_apex_sepolicy_tests
Change-Id: Ia42d0641be7a5007fb73337257893235f9a98f22
|
|
Vendor apex shouldn't use system_file_type contexts.
Bug: 387192232
Test: m
Change-Id: Icce6eeee147ffb4175ede2d56420483788103cb4
|
|
|
|
|
|
We don't need an alias for mkfs.erofs.
Bug: 383669618
Test: m
Change-Id: Ib242553689ff3d38179360b8d130c3f03740bcb6
|
|
When RELEASE_FINGERPRINT_ACONFIG_PACKAGE is true, the storage file
version will be v2 for aconfig create-storage.
Test: manual
Change-Id: I6861ac1bfe8680ff7311e26efb627e0ac7c58f05
|
|
e451ed647f
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/3408300
Change-Id: Ifcf1ea84d37513820a2904d1da75e4a223311249
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
|
Installed files currently add dependencies on their associated
initrc / vintf fragment files. InitRc and vintf fragment files are
special: multiple modules are allowed to install them, and then they're
deduplicated in the androidmk singleton before emitting rules to build
them. The androidmk singleton doesn't run in soong-only mode, so they
never get build rules emitted. We don't actually care about the
"fully installed" files in soong-only builds for the most part (host
tools are probably an exception), so just rmeove the dependency on
these files for now.
There's also an issue with an apex symbol file symlink missing.
This issue I understand much less well, I beleive it's related to
aosp/3308088. However, again, we don't really care about installed
files, so I just disabled the apex symbol file symlinks in soong-only
builds.
Bug: 380109595
Test: m --soong-only
Change-Id: I6ca4a7f241044937edc50c65f5a8120e6984136e
|
|
main am: 110e0a8ff2
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/3398639
Change-Id: I748dbf934e66076a7b794c7b42363ab5a29090ff
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
|
|
|
c8914a47c1
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/3393476
Change-Id: I1fbd5340b612e33c31f4fec1486e55eafe0d710d
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
|
Due to go/aml-default-version-code, we are required to use the last digit for version code as 9.
Bug: 381839073
Test: presubmit
Test: adb install
Change-Id: Ia3534d687541a85042a328c307daf78b294b5d89
|
|
Bug: 377723687
Test: Unit tests and compare the ninja and mk files generated.
Change-Id: I7527d331b31a3a97587ca76105e9facb99624bde
|
|
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/3367941
Change-Id: Icb2627b5945102dc06da542f7168fef1f399e009
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
|
Run validations for apex_test modules as well. If a test apex needs to
be invalid for testing, it needs to specify which validation it needs to
skip. This is to prevent cases like using apex_test to avoid a certain
validation, but accidentally skipping all validations.
For now, host_apex_verifier/apex_sepolicy_tests can be skipped.
Bug: 363090062
Test: m nothing --no-skip-soong-tests
Test: mmma system/apex
Change-Id: I2d14f25f579eabe92ed2bd0e28b5ed19583df99d
|
|
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/3348988
Change-Id: Ifc69292893cb2e242487878610d6392d5601c597
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/+/3349192
Change-Id: Id4d26216d8d9b0314a72eab62075dc79cf95114a
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
|
A lot of the time, you really mean android.Path or android.WriteablePath
instead of OutputPath.
Also, many modules were holding onto OutputPaths/WriteablePaths
after the files had already been generated, meaning they should no
longer be treated as writable paths and are instead inputs into other
actions. Change the type of those paths to just android.Path.
Test: verified ninja files were unchanged on aosp_arm64-trunk_staging-userdebug
Change-Id: Id773171bef59d855ba33c4b85cef268031cbec39
|
|
A rule that uses echo -e may execute in a dash shell instead of bash
when running on the build servers. The dash echo builtin is posix
compliant, and does not treat -e as an option[1]. Replace all uses
of echo -e with echo if it does not need escape sequences, or printf
if it does.
[1] https://wiki.ubuntu.com/DashAsBinSh#echo
Bug: 378931009
Test: manual
Change-Id: I2974f59ea10a613bc3bd36e3591fd81f38a1769a
|
|
Bug: 370570306
Merged-In: I417880c1689390ebdc9caabef705bce739bb0baf
Change-Id: Ie978c93db9016c520e95eaa72c5ec063c87d6b3d
|
|
Bug: 377723687
Test: Compare ninja and mk files generated.
Change-Id: I428b0965b217adb20a792ebde88374e0c6fae9d6
|
|
trim_against is never set in Android.bp files, and PRODUCT_TRIMMED_APEX
is never set to set the TrimmedApex config variable. Delete all the
dead code that is never reached.
Test: builds
Flag: EXEMPT dead code removal
Change-Id: I1dd2e2a5bcb1c38148149264776c718e02291649
|
|
|
|
The motivation for this is to prevent the internal deps of apexes from
being installed in the top-level `android_filesystem`.
This CL does not get rid of the internal androidmk modules created by
apexes. Symbols listed in `LOCAL_SOONG_JNI_LIBS_SYMBOLS` will be copied
to $PRODUCT_OUT/apex/<apex> if <apex> is built. However, these
additional files will not be registed in ctx.packagingSpecs of the apex.
Test: go test ./apex
Test: no changes in the merged `jacoco-report-classes-all.jar` of
coverage builds
Change-Id: I5ca4b8069af6c4b464fd13e9a6553379eef3a57b
|
|
host_apex_verifier can check partition-specific checks. For example,
.rc files in APEX don't support 'on' if the APEX is from /system.
To support this, pass the partition tag to host_apex_verifier.
Bug: 223896570
Test: m
Test: host_apex_verifier --apex=<path> --partition_tag=system
# fails when the apex has .rc file with 'on' section.
Change-Id: I62141aad5823cedb114434fd19bed5d31f6c3bbc
|
|
Requested by a user.
Fixes: 371213057
Test: m nothing --no-skip-soong-tests
Change-Id: I4268257b03d632f068c38a572896582cddb81ecd
|
|
RELEASE_DEFAULT_UPDATABLE_MODULE_VERSION." into main
|
|
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
|
|
The enforce_strict_updatability_linting and apex_strict_updatability_lint
are some of the last top down mutators, and removing them will help
with incremental analysis. Both mutators are used to propagate a flag
to transitive java dependencies that causes them to add extra checks to
their lint rules to require that baselines not include any skipped
NewApi checks.
Instead of modifying dependencies to check the baselines, propagate the
baselines up to the modules that are requesting the checks, and perform
the checks on all transitive baselines there.
Bug: 367784740
Test: TestJavaLintStrictUpdatabilityLinting
Test: TestApexStrictUpdtabilityLint
Flag: EXEMPT refactor
Change-Id: Ief2e3b26d745da61f13e621d635a5879d9c56779
|
|
|
|
|
|
Replace ModuleContext with BaseModuleContext in WalkPayloadDeps
and all of the callbacks used with it to allow using WalkPayloadDeps
from mutators.
Test: builds
Flag: EXEMPT refactor
Change-Id: Ie9d6cb7e9977b1d963cfbb3e43d6749307b4b1e0
|
|
Bug: b/348040422
Test: lint_test.go
Flag: EXEMPT refactor
Change-Id: I420bee2c7056a3f4acee3af5955f79c504ea61d9
|