diff --git a/core/dex_preopt_odex_install.mk b/core/dex_preopt_odex_install.mk index aef5cd185..73c814667 100644 --- a/core/dex_preopt_odex_install.mk +++ b/core/dex_preopt_odex_install.mk @@ -53,7 +53,14 @@ 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) -# For a Java library, we build odex for both 1st arch and 2nd arch, if we have one. +# 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 # ################################################# # Odex for the 1st arch my_2nd_arch_prefix := @@ -61,8 +68,10 @@ include $(BUILD_SYSTEM)/setup_one_odex.mk # ################################################# # Odex for the 2nd arch ifdef TARGET_2ND_ARCH +ifneq (first,$(my_module_multilib)) my_2nd_arch_prefix := $(TARGET_2ND_ARCH_VAR_PREFIX) include $(BUILD_SYSTEM)/setup_one_odex.mk +endif # my_module_multilib is not first. endif # TARGET_2ND_ARCH # ################################################# else # must be APPS