Merge "Fix off by one comparison."
diff --git a/Android.mk b/Android.mk
index 54c96ab..1a5daff 100644
--- a/Android.mk
+++ b/Android.mk
@@ -489,12 +489,19 @@
# Also include libartbenchmark, we always include it when running golem.
# libstdc++ is needed when building for ART_TARGET_LINUX.
#
+# Also include the bootstrap Bionic libraries (libc, libdl, libm).
+# These are required as the "main" libc, libdl, and libm have moved to
+# the Runtime APEX. This is a temporary change needed until Golem
+# fully supports the Runtime APEX.
+# TODO(b/121117762): Remove this when the ART Buildbot and Golem have
+# full support for the Runtime APEX.
+#
# Also include a copy of the ICU .dat prebuilt files in
# /system/etc/icu on target (see module `icu-data-art-test`), so that
# it can found even if the Runtime APEX is not available, by setting
# the environment variable `ART_TEST_ANDROID_RUNTIME_ROOT` to
-# "/system" on device. This is a temporary change needed until both
-# the ART Buildbot and Golem fully support the Runtime APEX.
+# "/system" on device. This is a temporary change needed until Golem
+# fully supports the Runtime APEX.
# TODO(b/121117762): Remove this when the ART Buildbot and Golem have
# full support for the Runtime APEX.
ART_TARGET_SHARED_LIBRARY_BENCHMARK := $(TARGET_OUT_SHARED_LIBRARIES)/libartbenchmark.so
@@ -506,6 +513,7 @@
$(ART_TARGET_SHARED_LIBRARY_BENCHMARK) \
$(TARGET_CORE_IMG_OUT_BASE).art \
$(TARGET_CORE_IMG_OUT_BASE)-interpreter.art \
+ libc.bootstrap libdl.bootstrap libm.bootstrap \
icu-data-art-test
# remove debug libraries from public.libraries.txt because golem builds
# won't have it.
diff --git a/build/apex/Android.bp b/build/apex/Android.bp
index 79f67a2..47729c1 100644
--- a/build/apex/Android.bp
+++ b/build/apex/Android.bp
@@ -43,11 +43,12 @@
"libadbconnectiond",
]
-// Files associated with bionic / managed core library time zone APIs.
-art_runtime_time_zone_prebuilts = [
+// Data files associated with bionic / managed core library APIs.
+art_runtime_data_file_prebuilts = [
"apex_tz_version",
"apex_tzdata",
"apex_tzlookup.xml",
+ "apex_icu.dat",
]
// Modules listed in LOCAL_REQUIRED_MODULES for module art-tools in art/Android.mk.
@@ -115,7 +116,7 @@
binaries: [],
}
},
- prebuilts: art_runtime_time_zone_prebuilts
+ prebuilts: art_runtime_data_file_prebuilts
+ ["com.android.runtime.ld.config.txt"],
key: "com.android.runtime.key",
}
@@ -145,7 +146,7 @@
binaries: art_tools_device_binaries,
}
},
- prebuilts: art_runtime_time_zone_prebuilts
+ prebuilts: art_runtime_data_file_prebuilts
+ ["com.android.runtime.ld.config.txt"],
key: "com.android.runtime.key",
}
diff --git a/tools/art b/tools/art
index 9efc470..d99e2d8 100644
--- a/tools/art
+++ b/tools/art
@@ -464,7 +464,7 @@
# Extract the dex2oat flags from the list of arguments.
# -Xcompiler-options arguments are stored in DEX2OAT_FLAGS array
# -cp argument is split by ':' and stored in DEX2OAT_CLASSPATH
-# -Ximage argument is stored in DEX2OAT_BOOTIMAGE
+# -Ximage argument is stored in DEX2OAT_BOOT_IMAGE
extract_dex2oat_flags "$@"
# If ANDROID_DATA is the system ANDROID_DATA or is not set, use our own,
@@ -486,7 +486,7 @@
exit 1
fi
-if [[ "$DEX2OAT_BOOT_IMAGE" = *core.art && "$DEX2OAT_BCP" = "" ]]; then
+if [[ "$DEX2OAT_BOOT_IMAGE" = *core*.art && "$DEX2OAT_BCP" = "" ]]; then
# Note: This must start with the CORE_IMG_JARS in Android.common_path.mk
# because that's what we use for compiling the core.art image.
# It may contain additional modules from TEST_CORE_JARS.
diff --git a/tools/buildbot-build.sh b/tools/buildbot-build.sh
index d4888f9..755104b 100755
--- a/tools/buildbot-build.sh
+++ b/tools/buildbot-build.sh
@@ -83,6 +83,14 @@
fi
# Build the Debug Runtime APEX (which is a superset of the Release Runtime APEX).
make_command+=" com.android.runtime.debug"
+ # Build the bootstrap Bionic libraries (libc, libdl, libm). These are required
+ # as the "main" libc, libdl, and libm have moved to the Runtime APEX. This is
+ # a temporary change needed until both the ART Buildbot and Golem fully
+ # support the Runtime APEX.
+ #
+ # TODO(b/121117762): Remove this when the ART Buildbot and Golem have full
+ # support for the Runtime APEX.
+ make_command+=" libc.bootstrap libdl.bootstrap libm.bootstrap"
# Create a copy of the ICU .dat prebuilt files in /system/etc/icu on target,
# so that it can found even if the Runtime APEX is not available, by setting
# the environment variable `ART_TEST_ANDROID_RUNTIME_ROOT` to "/system" on