From 294ab115b287d31eb4c45ad1515be2d1158c8d4d Mon Sep 17 00:00:00 2001 From: Chih-Wei Huang Date: Mon, 15 Apr 2013 17:12:19 +0800 Subject: Fix /system/app/$app.odex not updated issue $(built_odex) depends on $(LOCAL_BUILT_MODULE) but doesn't have any build recipe. It is built by the rules of $(LOCAL_BUILT_MODULE) that results in a subtle bug: $(built_odex) is always newer than $(LOCAL_BUILT_MODULE) if $(LOCAL_BUILT_MODULE) rebuilt. Therefore 'make' thinks the targets (/system/app/$app.odex) depending on $(built_odex) don't need to be updated. It seems an allegedly optimization bug of 'make'. The simple fix is to explicitly add $(LOCAL_BUILT_MODULE) as a dependency of $(installed_odex). Conflicts: core/base_rules.mk Change-Id: Ia62695eeb9a9709f7115301cbf27eb1fd77a1573 --- core/base_rules.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/base_rules.mk b/core/base_rules.mk index 40d1fa6..4a58e49 100644 --- a/core/base_rules.mk +++ b/core/base_rules.mk @@ -510,7 +510,7 @@ endif ifdef LOCAL_DEX_PREOPT installed_odex := $(basename $(LOCAL_INSTALLED_MODULE)).odex built_odex := $(basename $(LOCAL_BUILT_MODULE)).odex -$(installed_odex) : $(built_odex) | $(ACP) +$(installed_odex) : $(built_odex) $(LOCAL_BUILT_MODULE) | $(ACP) @echo -e ${CL_CYN}"Install: $@"${CL_RST} $(copy-file-to-target) -- cgit v1.1