From 4568c2d908eee03edea5793b4081565cfdea74cf Mon Sep 17 00:00:00 2001 From: Mathieu Chartier Date: Fri, 6 Jul 2018 13:29:43 -0700 Subject: [PATCH] Add logic to preopt both archs for SDK libs Update stale PRODUCT_SYSTEM_SERVER_JARS list since com.android.location.provider was renamed to com.android.location.provider.impl. Added logic to preopt both archs for SDK libs that are also system server JARS. Bug: 110780021 Test: manual and verify speed compiled Change-Id: I34e728444ffda6db3375b638028d54b6ab623209 --- core/dex_preopt_odex_install.mk | 9 +++++++-- target/product/core_minimal.mk | 2 +- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/core/dex_preopt_odex_install.mk b/core/dex_preopt_odex_install.mk index fd122af5f6..30c3c85bac 100644 --- a/core/dex_preopt_odex_install.mk +++ b/core/dex_preopt_odex_install.mk @@ -187,14 +187,19 @@ installed_odex := $(DEFAULT_DEX_PREOPT_INSTALLED_IMAGE) installed_odex += $($(TARGET_2ND_ARCH_VAR_PREFIX)DEFAULT_DEX_PREOPT_INSTALLED_IMAGE) else # boot jar ifeq ($(LOCAL_MODULE_CLASS),JAVA_LIBRARIES) + +my_module_multilib := $(LOCAL_MULTILIB) +# If the module is not an SDK library and it's a system server jar, only preopt the primary arch. +my_filtered_lib_name := $(patsubst %.impl,%,$(LOCAL_MODULE)) +ifeq (,$(filter $(JAVA_SDK_LIBRARIES),$(my_filtered_lib_name))) # For a Java library, by default we build odex for both 1st arch and 2nd arch. # But it can be overridden with "LOCAL_MULTILIB := first". ifneq (,$(filter $(PRODUCT_SYSTEM_SERVER_JARS),$(LOCAL_MODULE))) # For system server jars, we build for only "first". my_module_multilib := first -else -my_module_multilib := $(LOCAL_MULTILIB) endif +endif + # ################################################# # Odex for the 1st arch my_2nd_arch_prefix := diff --git a/target/product/core_minimal.mk b/target/product/core_minimal.mk index e9816bc27c..3a2a6237a8 100644 --- a/target/product/core_minimal.mk +++ b/target/product/core_minimal.mk @@ -81,7 +81,7 @@ PRODUCT_SYSTEM_SERVER_JARS := \ services \ ethernet-service \ wifi-service \ - com.android.location.provider \ + com.android.location.provider.impl \ # Adoptable external storage supports both ext4 and f2fs PRODUCT_PACKAGES += \