Merge "Revert "Revert "Never strip and store dex files uncompressed when they are preopted on system."""

This commit is contained in:
Nicolas Geoffray 2019-02-13 11:59:39 +00:00 committed by Gerrit Code Review
commit cd75414f1e
4 changed files with 20 additions and 1 deletions

View file

@ -45,7 +45,11 @@ SYSTEM_OTHER_ODEX_FILTER ?= \
product/app/% \ product/app/% \
product/priv-app/% \ product/priv-app/% \
# The default values for pre-opting: always preopt PIC. # The default values for pre-opting. To support the runtime module we ensure no dex files
# get stripped.
ifeq ($(PRODUCT_DEX_PREOPT_NEVER_ALLOW_STRIPPING),)
PRODUCT_DEX_PREOPT_NEVER_ALLOW_STRIPPING := true
endif
# Conditional to building on linux, as dex2oat currently does not work on darwin. # Conditional to building on linux, as dex2oat currently does not work on darwin.
ifeq ($(HOST_OS),linux) ifeq ($(HOST_OS),linux)
WITH_DEXPREOPT ?= true WITH_DEXPREOPT ?= true
@ -134,6 +138,7 @@ ifeq ($(WRITE_SOONG_VARIABLES),true)
$(call add_json_str, DefaultCompilerFilter, $(PRODUCT_DEX_PREOPT_DEFAULT_COMPILER_FILTER)) $(call add_json_str, DefaultCompilerFilter, $(PRODUCT_DEX_PREOPT_DEFAULT_COMPILER_FILTER))
$(call add_json_str, SystemServerCompilerFilter, $(PRODUCT_SYSTEM_SERVER_COMPILER_FILTER)) $(call add_json_str, SystemServerCompilerFilter, $(PRODUCT_SYSTEM_SERVER_COMPILER_FILTER))
$(call add_json_bool, GenerateDmFiles, $(PRODUCT_DEX_PREOPT_GENERATE_DM_FILES)) $(call add_json_bool, GenerateDmFiles, $(PRODUCT_DEX_PREOPT_GENERATE_DM_FILES))
$(call add_json_bool, NeverAllowStripping, $(PRODUCT_DEX_PREOPT_NEVER_ALLOW_STRIPPING))
$(call add_json_bool, NoDebugInfo, $(filter false,$(WITH_DEXPREOPT_DEBUG_INFO))) $(call add_json_bool, NoDebugInfo, $(filter false,$(WITH_DEXPREOPT_DEBUG_INFO)))
$(call add_json_bool, AlwaysSystemServerDebugInfo, $(filter true,$(PRODUCT_SYSTEM_SERVER_DEBUG_INFO))) $(call add_json_bool, AlwaysSystemServerDebugInfo, $(filter true,$(PRODUCT_SYSTEM_SERVER_DEBUG_INFO)))
$(call add_json_bool, NeverSystemServerDebugInfo, $(filter false,$(PRODUCT_SYSTEM_SERVER_DEBUG_INFO))) $(call add_json_bool, NeverSystemServerDebugInfo, $(filter false,$(PRODUCT_SYSTEM_SERVER_DEBUG_INFO)))

View file

@ -120,6 +120,17 @@ my_dexpreopt_archs :=
my_dexpreopt_images := my_dexpreopt_images :=
ifdef LOCAL_DEX_PREOPT ifdef LOCAL_DEX_PREOPT
ifeq (,$(filter PRESIGNED,$(LOCAL_CERTIFICATE)))
# Store uncompressed dex files preopted in /system
ifeq ($(BOARD_USES_SYSTEM_OTHER_ODEX),true)
ifeq ($(call install-on-system-other, $(my_module_path)),)
LOCAL_UNCOMPRESS_DEX := true
endif # install-on-system-other
else # BOARD_USES_SYSTEM_OTHER_ODEX
LOCAL_UNCOMPRESS_DEX := true
endif
endif
ifeq ($(LOCAL_MODULE_CLASS),JAVA_LIBRARIES) ifeq ($(LOCAL_MODULE_CLASS),JAVA_LIBRARIES)
my_module_multilib := $(LOCAL_MULTILIB) 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. # If the module is not an SDK library and it's a system server jar, only preopt the primary arch.

View file

@ -180,6 +180,7 @@ _product_var_list := \
PRODUCT_DEX_PREOPT_PROFILE_DIR \ PRODUCT_DEX_PREOPT_PROFILE_DIR \
PRODUCT_DEX_PREOPT_BOOT_IMAGE_PROFILE_LOCATION \ PRODUCT_DEX_PREOPT_BOOT_IMAGE_PROFILE_LOCATION \
PRODUCT_DEX_PREOPT_GENERATE_DM_FILES \ PRODUCT_DEX_PREOPT_GENERATE_DM_FILES \
PRODUCT_DEX_PREOPT_NEVER_ALLOW_STRIPPING \
PRODUCT_USE_PROFILE_FOR_BOOT_IMAGE \ PRODUCT_USE_PROFILE_FOR_BOOT_IMAGE \
PRODUCT_SYSTEM_SERVER_COMPILER_FILTER \ PRODUCT_SYSTEM_SERVER_COMPILER_FILTER \
PRODUCT_SANITIZER_MODULE_CONFIGS \ PRODUCT_SANITIZER_MODULE_CONFIGS \

View file

@ -412,6 +412,8 @@ PRODUCT_DEX_PREOPT_BOOT_FLAGS := \
$(strip $(PRODUCTS.$(INTERNAL_PRODUCT).PRODUCT_DEX_PREOPT_BOOT_FLAGS)) $(strip $(PRODUCTS.$(INTERNAL_PRODUCT).PRODUCT_DEX_PREOPT_BOOT_FLAGS))
PRODUCT_DEX_PREOPT_PROFILE_DIR := \ PRODUCT_DEX_PREOPT_PROFILE_DIR := \
$(strip $(PRODUCTS.$(INTERNAL_PRODUCT).PRODUCT_DEX_PREOPT_PROFILE_DIR)) $(strip $(PRODUCTS.$(INTERNAL_PRODUCT).PRODUCT_DEX_PREOPT_PROFILE_DIR))
PRODUCT_DEX_PREOPT_NEVER_ALLOW_STRIPPING := \
$(strip $(PRODUCTS.$(INTERNAL_PRODUCT).PRODUCT_DEX_PREOPT_NEVER_ALLOW_STRIPPING))
# Boot image options. # Boot image options.
PRODUCT_USE_PROFILE_FOR_BOOT_IMAGE := \ PRODUCT_USE_PROFILE_FOR_BOOT_IMAGE := \