Move core-icu4j.jar down in PRODUCT_BOOT_JARS.

For go/updatable-bootclasspath it would simplify the logic if all
system boot jars were in a single block, instead of having some apex
jars in between them.

core-icu4j.jar used to be part of ART_APEX_JARS before it moved to its
own apex. However, this change puts it after system jars in relative
ordering.

Bug: 180105615
Test: presubmit
Change-Id: Icadc1b67191172bb02d1a15bdfa3d2e6f69227aa
This commit is contained in:
satayev 2021-04-27 15:33:08 +01:00
parent 243f9ea65f
commit 188082ae34
1 changed files with 24 additions and 3 deletions

View File

@ -18,16 +18,37 @@ ifeq ($(ART_APEX_JARS),)
$(error ART_APEX_JARS is empty; cannot initialize PRODUCT_BOOT_JARS variable)
endif
# The order matters for runtime class lookup performance.
# Order of the jars on BOOTCLASSPATH follows:
# 1. ART APEX jars
# 2. System jars
# 3. System_ext jars
# 4. Non-updatable APEX jars
# 5. Updatable APEX jars
#
# ART APEX jars (1) are defined in ART_APEX_JARS. System, system_ext, and non updatable boot jars
# are defined below in PRODUCT_BOOT_JARS. All updatable APEX boot jars are part of
# PRODUCT_UPDATABLE_BOOT_JARS.
#
# The actual runtime ordering matching above is determined by derive_classpath service at runtime.
# See packages/modules/SdkExtensions/README.md for more details.
# The order of PRODUCT_BOOT_JARS matters for runtime class lookup performance.
PRODUCT_BOOT_JARS := \
$(ART_APEX_JARS) \
$(ART_APEX_JARS)
# /system and /system_ext boot jars.
PRODUCT_BOOT_JARS += \
framework-minus-apex \
ext \
com.android.i18n:core-icu4j \
telephony-common \
voip-common \
ims-common
# Non-updatable APEX jars. Keep the list sorted.
PRODUCT_BOOT_JARS += \
com.android.i18n:core-icu4j
# Updatable APEX jars. Keep the list sorted.
PRODUCT_UPDATABLE_BOOT_JARS := \
com.android.conscrypt:conscrypt \
com.android.media:updatable-media \