From 994c226b91d0b9695cfde8dabb8f243e9f53be64 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 Change-Id: I9f9089bc1896b78c1f47834afdb28a3a51d34480 --- 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 db2314076..713f595ec 100644 --- a/core/dex_preopt_odex_install.mk +++ b/core/dex_preopt_odex_install.mk @@ -117,8 +117,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 cb1e4244a..528561668 100644 --- a/core/package_internal.mk +++ b/core/package_internal.mk @@ -377,7 +377,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,$@)