builds (reland).
- Use art/build/boot/boot-image-profile.txt for the primary boot image
in the ART module, both when it's built from source in platform and
as an unbundled module.
- Use frameworks/base/boot/boot-image-profile.txt for the framework
extension image in platform, but not in unbundled builds.
This should obsolete the combined profile
frameworks/base/config/boot-image-profile.txt.
This relands https://r.android.com/1881863 with a fix to allow multiple
values on PRODUCT_DEX_PREOPT_BOOT_IMAGE_PROFILE_LOCATION.
Test: build/soong/soong_ui.bash --dumpvar-mode \
PRODUCT_DEX_PREOPT_BOOT_IMAGE_PROFILE_LOCATION
and check that it prints both art/build/boot/boot-image-profile.txt
and frameworks/base/boot/boot-image-profile.txt in a platform build
on master.
Test: build/soong/soong_ui.bash --dumpvar-mode \
PRODUCT_DEX_PREOPT_BOOT_IMAGE_PROFILE_LOCATION
and check that it prints only art/build/boot/boot-image-profile.txt
in an unbundled build on master-art.
Test: banchan com.android.art && m
on master-art and check that
out/soong/.intermediates/art/build/apex/com.android.art/android_common_com.android.art_image/image.apex/javalib/x86_64/boot.oat
shrinks from 14 MB to 4.7.
Test: m droid
on master together with https://r.android.com/1895131 and check that
out/soong/.intermediates/art/build/apex/com.android.art/android_common_com.android.art_image/image.apex/javalib/x86_64/boot.oat
and out/target/product/vsoc_x86_64/system/framework/x86_64/boot-framework.oat
are identical.
Test: lunch armv8-eng && art/tools/buildbot-build.sh
on master-art
Bug: 174746397
Change-Id: I9114271bc69cf0888150b2c778a086bc50b73045
In preparation for Soong handling the installation rules, extract
the primary APK from the apk set in Soong.
Bug: 204136549
Test: build test android_app_set
Change-Id: I416b57009101ca4c05c11102f260e102af13bf0d
mk2rbc would already translate notdir calls,
but since there was no implementation it would
fail at runtime.
Bug: 201700692
Test: m rbcrun; rbcrun build/make/tests/run.rbc
Change-Id: Ie0f4e7b65448e612fa56f87b0bc138648cc0ad58
The board configuration doesn't use init_globals(),
which is where _soong_config_namespaces_key normally
is set. Just assume empty dictionaries in
soong_config_namespace where appropriate.
Bug: 201700692
Test: build/bazel/ci/rbc_product_config.sh -b armv8-userdebug
Change-Id: I5f1e52fa0bdde32bff0e8db54861557dcb327190
Host modules shouldn't use the logic for device modules to determine
the java language version to use, always default to 1.9.
Bug: 202761304
Test: m checkbuild
Change-Id: I268dd34d887db4646e188858c7f2aedc30966856
Soong creates install rules and lists them in LOCAL_SOONG_INSTALL_PAIRS,
where they get copied to ALL_MODULE.$(m).BUILT_INSTALLED. BUILT_INSTALLED
is used by package-modules.mk to copy the built modules to alternate
install locations for building zips like continuous_native_tests.zip.
Translate Soong's built module location, which is listed in
LOCAL_PREBUILT_MODULE_FILE, into $(LOCAL_BUILT_MODULE) when setting
BUILT_INSTALLED so that package-modules.mk copies from
$(LOCAL_BUILT_MODULE) instead of $(LOCAL_PREBUILT_MODULE_FILE). This
ensures that the transitive dependencies added to $(LOCAL_BUILT_MODULE),
for example the unstripped symbols files, are present when
continuous_native_tests.zip is built.
Bug: 206137439
Test: manual
Change-Id: I1a45cd6d3c81d6435a10f4d29557e521753068a4
Much of soong_cc_prebuilt.mk is duplicated in soong_rust_prebuilt.mk.
This adds maintenance burden and increases the risk of bugs or
inconsistencies. Merge the two to simplify this.
Bug: N/A, clean-up
Test: m
Change-Id: I833fba94e299006b34f8e53d5519c6b19f684d39