From 1ef0a635f370acf22c8a23ec608d8d03508274ba Mon Sep 17 00:00:00 2001 From: Ying Wang Date: Wed, 28 May 2014 13:34:59 -0700 Subject: [PATCH] Fix pattern rules for $(installed_odex) for libdvm. When the VM is libdvm, we don't put the odex files in an arch specific subdirectory. The previous pattern rules don't work because of the extra "/". With this change, % evaluates to empty string when it's built for libdvm; % evaluates to "/" when it's built for libart. Also removed use of $(create-empty-package), which may causes file name (dummy) conflict with the rule of package.apk. Bug: 15311527 (cherry picked from commit 994c226b91d0b9695cfde8dabb8f243e9f53be64) Change-Id: I5469ef1994f2ba91a9c25126349156752fc35b4b --- core/dex_preopt_odex_install.mk | 4 ++-- core/package_internal.mk | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/core/dex_preopt_odex_install.mk b/core/dex_preopt_odex_install.mk index 33f44f0745..caaa16dba9 100644 --- a/core/dex_preopt_odex_install.mk +++ b/core/dex_preopt_odex_install.mk @@ -123,8 +123,8 @@ endif # boot jar ifdef built_odex # Use pattern rule - we may have multiple installed odex files. # Ugly syntax - See the definition get-odex-file-path. -$(installed_odex) : $(dir $(LOCAL_INSTALLED_MODULE))%/$(notdir $(word 1,$(installed_odex))) \ - : $(dir $(LOCAL_BUILT_MODULE))%/$(notdir $(word 1,$(built_odex))) \ +$(installed_odex) : $(dir $(LOCAL_INSTALLED_MODULE))%$(notdir $(word 1,$(installed_odex))) \ + : $(dir $(LOCAL_BUILT_MODULE))%$(notdir $(word 1,$(built_odex))) \ | $(ACP) @echo "Install: $@" $(copy-file-to-target) diff --git a/core/package_internal.mk b/core/package_internal.mk index c8d919638d..d2681e5cd6 100644 --- a/core/package_internal.mk +++ b/core/package_internal.mk @@ -385,7 +385,7 @@ endif ifdef LOCAL_DEX_PREOPT $(built_odex): PRIVATE_DEX_FILE := $(built_dex) $(built_odex) : $(built_dex) - $(create-empty-package) + $(hide) mkdir -p $(dir $@) && rm -f $@ $(add-dex-to-package) $(hide) mv $@ $@.input $(call dexpreopt-one-file,$@.input,$@)