diff --git a/core/dex_preopt_odex_install.mk b/core/dex_preopt_odex_install.mk index ff49fe841..6a892e23a 100644 --- a/core/dex_preopt_odex_install.mk +++ b/core/dex_preopt_odex_install.mk @@ -55,7 +55,7 @@ ifneq (,$(filter $(LOCAL_MODULE_TAGS),tests)) endif # If we have product-specific config for this module? -ifeq (disable,$(DEXPREOPT.$(TARGET_PRODUCT).$(LOCAL_MODULE).CONFIG)) +ifneq (,$(filter $(LOCAL_MODULE),$(DEXPREOPT_DISABLED_MODULES))) LOCAL_DEX_PREOPT := endif diff --git a/core/product_config.mk b/core/product_config.mk index 27af09e7f..577bafe73 100644 --- a/core/product_config.mk +++ b/core/product_config.mk @@ -423,6 +423,7 @@ PRODUCT_OTHER_JAVA_DEBUG_INFO := \ # Resolve and setup per-module dex-preopt configs. PRODUCT_DEX_PREOPT_MODULE_CONFIGS := \ $(strip $(PRODUCTS.$(INTERNAL_PRODUCT).PRODUCT_DEX_PREOPT_MODULE_CONFIGS)) +DEXPREOPT_DISABLED_MODULES := # If a module has multiple setups, the first takes precedence. _pdpmc_modules := $(foreach c,$(PRODUCT_DEX_PREOPT_MODULE_CONFIGS),\ @@ -431,7 +432,9 @@ $(foreach c,$(PRODUCT_DEX_PREOPT_MODULE_CONFIGS),\ $(eval _pdpmc_modules += $(m))\ $(eval cf := $(patsubst $(m)=%,%,$(c)))\ $(eval cf := $(subst $(_PDPMC_SP_PLACE_HOLDER),$(space),$(cf)))\ - $(eval DEXPREOPT.$(TARGET_PRODUCT).$(m).CONFIG := $(cf)))) + $(if $(filter disable,$(cf)),\ + $(eval DEXPREOPT_DISABLED_MODULES += $(m)),\ + $(eval DEXPREOPT.$(TARGET_PRODUCT).$(m).CONFIG := $(cf))))) _pdpmc_modules := # Resolve and setup per-module sanitizer configs. diff --git a/core/soong_config.mk b/core/soong_config.mk index 2f978fa6b..7a884e083 100644 --- a/core/soong_config.mk +++ b/core/soong_config.mk @@ -123,6 +123,11 @@ $(call add_json_list, DeviceSystemSdkVersions, $(BOARD_SYSTEMSDK_VERSI $(call add_json_list, Platform_systemsdk_versions, $(PLATFORM_SYSTEMSDK_VERSIONS)) $(call add_json_bool, Malloc_not_svelte, $(call invert_bool,$(filter true,$(MALLOC_SVELTE)))) $(call add_json_str, Override_rs_driver, $(OVERRIDE_RS_DRIVER)) +$(call add_json_bool, UncompressPrivAppDex, $(call invert_bool,$(filter true,$(DONT_UNCOMPRESS_PRIV_APPS_DEXS)))) +$(call add_json_list, ModulesLoadedByPrivilegedModules, $(PRODUCT_LOADED_BY_PRIVILEGED_MODULES)) +$(call add_json_bool, DefaultStripDex, $(call invert_bool,$(filter nostripping,$(DEX_PREOPT_DEFAULT)))) +$(call add_json_bool, DisableDexPreopt, $(filter false,$(WITH_DEXPREOPT))) +$(call add_json_list, DisableDexPreoptModules, $(DEXPREOPT_DISABLED_MODULES)) $(call add_json_bool, Product_is_iot, $(filter true,$(PRODUCT_IOT)))