diff --git a/core/dex_preopt_libart.mk b/core/dex_preopt_libart.mk index ba2149767d..8c5e047f7c 100644 --- a/core/dex_preopt_libart.mk +++ b/core/dex_preopt_libart.mk @@ -90,8 +90,8 @@ LIBART_TARGET_BOOT_DEX_FILES := $(foreach jar,$(LIBART_TARGET_BOOT_JARS),$(call # is converted into to boot.art (to match the legacy assumption that boot.art # exists), and the rest are converted to boot-.art. # In addition, each .art file has an associated .oat file. -LIBART_TARGET_BOOT_ART_EXTRA_FILES := $(foreach jar,$(wordlist 2,999,$(LIBART_TARGET_BOOT_JARS)),boot-$(jar).art boot-$(jar).oat) -LIBART_TARGET_BOOT_ART_EXTRA_FILES += boot.oat +LIBART_TARGET_BOOT_ART_EXTRA_FILES := $(foreach jar,$(wordlist 2,999,$(LIBART_TARGET_BOOT_JARS)),boot-$(jar).art boot-$(jar).oat boot-$(jar).vdex) +LIBART_TARGET_BOOT_ART_EXTRA_FILES += boot.oat boot.vdex my_2nd_arch_prefix := include $(BUILD_SYSTEM)/dex_preopt_libart_boot.mk diff --git a/core/dex_preopt_odex_install.mk b/core/dex_preopt_odex_install.mk index 75178ad724..7a49f11b67 100644 --- a/core/dex_preopt_odex_install.mk +++ b/core/dex_preopt_odex_install.mk @@ -49,8 +49,11 @@ endif endif built_odex := +built_vdex := installed_odex := +installed_vdex := built_installed_odex := +built_installed_vdex := ifdef LOCAL_DEX_PREOPT dexpreopt_boot_jar_module := $(filter $(DEXPREOPT_BOOT_JARS_MODULES),$(LOCAL_MODULE)) ifdef dexpreopt_boot_jar_module @@ -99,7 +102,9 @@ endif # LOCAL_MODULE_CLASS endif # boot jar built_odex := $(strip $(built_odex)) +built_vdex := $(strip $(built_vdex)) installed_odex := $(strip $(installed_odex)) +installed_vdex := $(strip $(installed_vdex)) ifdef built_odex ifndef LOCAL_DEX_PREOPT_FLAGS @@ -110,11 +115,14 @@ endif endif $(built_odex): PRIVATE_DEX_PREOPT_FLAGS := $(LOCAL_DEX_PREOPT_FLAGS) +$(built_vdex): $(built_odex) endif # Add the installed_odex to the list of installed files for this module. ALL_MODULES.$(my_register_name).INSTALLED += $(installed_odex) +ALL_MODULES.$(my_register_name).INSTALLED += $(installed_vdex) ALL_MODULES.$(my_register_name).BUILT_INSTALLED += $(built_installed_odex) +ALL_MODULES.$(my_register_name).BUILT_INSTALLED += $(built_installed_vdex) # Record dex-preopt config. DEXPREOPT.$(LOCAL_MODULE).DEX_PREOPT := $(LOCAL_DEX_PREOPT) @@ -129,7 +137,7 @@ DEXPREOPT.MODULES.$(LOCAL_MODULE_CLASS) := $(sort \ $(DEXPREOPT.MODULES.$(LOCAL_MODULE_CLASS)) $(LOCAL_MODULE)) -# Make sure to install the .odex when you run "make " -$(my_register_name): $(installed_odex) +# Make sure to install the .odex and .vdex when you run "make " +$(my_register_name): $(installed_odex) $(installed_vdex) endif # LOCAL_DEX_PREOPT diff --git a/core/setup_one_odex.mk b/core/setup_one_odex.mk index 36b68171b8..37aeb607ea 100644 --- a/core/setup_one_odex.mk +++ b/core/setup_one_odex.mk @@ -34,8 +34,17 @@ $(my_built_odex) : $($(my_2nd_arch_prefix)DEXPREOPT_ONE_FILE_DEPENDENCY_BUILT_BO my_installed_odex := $(call get-odex-installed-file-path,$($(my_2nd_arch_prefix)DEX2OAT_TARGET_ARCH),$(LOCAL_INSTALLED_MODULE)) +my_built_vdex := $(patsubst %.odex,%.vdex,$(my_built_odex)) +my_installed_vdex := $(patsubst %.odex,%.vdex,$(my_installed_odex)) + $(eval $(call copy-one-file,$(my_built_odex),$(my_installed_odex))) +$(eval $(call copy-one-file,$(my_built_vdex),$(my_installed_vdex))) built_odex += $(my_built_odex) +built_vdex += $(my_built_vdex) + installed_odex += $(my_installed_odex) +installed_vdex += $(my_installed_vdex) + built_installed_odex += $(my_built_odex):$(my_installed_odex) +built_installed_vdex += $(my_built_vdex):$(my_installed_vdex)