Revert "Use framework boot image extension."
The revert is partial: we keep permitted paths to the ART apex
in the linker config.
This reverts commit 5c8cc64b5f1580faf510f27527e7e22987174963.
Reason for revert: breaks avd/avd_boot_health_check test
on cf_x86_phone-userdebug_coverage on branch rvc-release
(the device fails to boot).
Test: m
Test: aosp_walleye-userdebug boots
Bug: 145749668
Exempt-From-Owner-Approval: revert
Change-Id: I47f3e05a2f6beed9b4c4e9675a7668fbaafc0474
diff --git a/build/apex/art_apex_test.py b/build/apex/art_apex_test.py
index f41725a..9e4f46a 100755
--- a/build/apex/art_apex_test.py
+++ b/build/apex/art_apex_test.py
@@ -542,13 +542,17 @@
self._checker.check_optional_native_library('libclang_rt.hwasan*')
self._checker.check_optional_native_library('libclang_rt.ubsan*')
- # Check dexpreopt files for libcore bootclasspath jars
- self._checker.check_dexpreopt('boot')
- self._checker.check_dexpreopt('boot-apache-xml')
- self._checker.check_dexpreopt('boot-bouncycastle')
- self._checker.check_dexpreopt('boot-core-icu4j')
- self._checker.check_dexpreopt('boot-core-libart')
- self._checker.check_dexpreopt('boot-okhttp')
+ # Check dexpreopt files for libcore bootclasspath jars, unless this is a
+ # coverage build with EMMA_INSTRUMENT_FRAMEWORK=true (in that case we do not
+ # generate dexpreopt files because ART boot jars depend on framework and
+ # cannot be dexpreopted in isolation).
+ if 'EMMA_INSTRUMENT_FRAMEWORK' not in os.environ or not os.environ['EMMA_INSTRUMENT_FRAMEWORK']:
+ self._checker.check_dexpreopt('boot')
+ self._checker.check_dexpreopt('boot-apache-xml')
+ self._checker.check_dexpreopt('boot-bouncycastle')
+ self._checker.check_dexpreopt('boot-core-icu4j')
+ self._checker.check_dexpreopt('boot-core-libart')
+ self._checker.check_dexpreopt('boot-okhttp')
class ReleaseTargetChecker:
def __init__(self, checker):
diff --git a/libartbase/base/file_utils.cc b/libartbase/base/file_utils.cc
index beee348..5e164ec 100644
--- a/libartbase/base/file_utils.cc
+++ b/libartbase/base/file_utils.cc
@@ -275,12 +275,7 @@
}
std::string GetDefaultBootImageLocation(const std::string& android_root) {
- // Boot image consists of two parts:
- // - the primary boot image in the ART apex (contains the Core Libraries)
- // - boot image extension on the system partition (contains framework libraries)
- return StringPrintf("%s/javalib/boot.art:%s/framework/boot-framework.art",
- kAndroidArtApexDefaultPath,
- android_root.c_str());
+ return StringPrintf("%s/framework/boot.art", android_root.c_str());
}
std::string GetDefaultBootImageLocation(std::string* error_msg) {