diff options
Diffstat (limited to 'core/base_rules.mk')
-rw-r--r-- | core/base_rules.mk | 41 |
1 files changed, 19 insertions, 22 deletions
diff --git a/core/base_rules.mk b/core/base_rules.mk index 6722af4f27..0e3bd6893a 100644 --- a/core/base_rules.mk +++ b/core/base_rules.mk @@ -368,47 +368,44 @@ endif endif ########################################################### -## Compatibiliy suite files. +## Compatibility suite files. ########################################################### ifdef LOCAL_COMPATIBILITY_SUITE -ifneq ($(words $(LOCAL_COMPATIBILITY_SUITE)),1) -$(error $(LOCAL_PATH):$(LOCAL_MODULE) LOCAL_COMPATIBILITY_SUITE can be only one name) -endif # The module itself. -my_compat_dist := \ - $(LOCAL_BUILT_MODULE):$(COMPATIBILITY_TESTCASES_OUT_$(LOCAL_COMPATIBILITY_SUITE))/$(my_installed_module_stem) +$(foreach suite, $(LOCAL_COMPATIBILITY_SUITE), \ + $(eval my_compat_dist_$(suite) := $(foreach dir, $(call compatibility_suite_dirs,$(suite)), \ + $(LOCAL_BUILT_MODULE):$(dir)/$(my_installed_module_stem)))) # Make sure we only add the files once for multilib modules. ifndef $(my_prefix)$(LOCAL_MODULE_CLASS)_$(LOCAL_MODULE)_compat_files $(my_prefix)$(LOCAL_MODULE_CLASS)_$(LOCAL_MODULE)_compat_files := true # LOCAL_COMPATIBILITY_SUPPORT_FILES is a list of <src>[:<dest>]. -my_compat_dist += $(foreach f, $(LOCAL_COMPATIBILITY_SUPPORT_FILES),\ - $(eval p := $(subst :,$(space),$(f)))\ - $(eval s := $(word 1,$(p)))\ - $(eval d := $(COMPATIBILITY_TESTCASES_OUT_$(LOCAL_COMPATIBILITY_SUITE))/$(or $(word 2,$(p)),$(notdir $(word 1,$(p)))))\ - $(s):$(d)) +$(foreach suite, $(LOCAL_COMPATIBILITY_SUITE), \ + $(eval my_compat_dist_$(suite) += $(foreach f, $(LOCAL_COMPATIBILITY_SUPPORT_FILES), \ + $(eval p := $(subst :,$(space),$(f))) \ + $(eval s := $(word 1,$(p))) \ + $(eval n := $(or $(word 2,$(p)),$(notdir $(word 1, $(p))))) \ + $(foreach dir, $(call compatibility_suite_dirs,$(suite)), \ + $(s):$(dir)/$(n))))) + ifneq (,$(wildcard $(LOCAL_PATH)/AndroidTest.xml)) -my_compat_dist += \ - $(LOCAL_PATH)/AndroidTest.xml:$(COMPATIBILITY_TESTCASES_OUT_$(LOCAL_COMPATIBILITY_SUITE))/$(LOCAL_MODULE).config +$(foreach suite, $(LOCAL_COMPATIBILITY_SUITE), \ + $(eval my_compat_dist_$(suite) += $(foreach dir, $(call compatibility_suite_dirs,$(suite)), \ + $(LOCAL_PATH)/AndroidTest.xml:$(dir)/$(LOCAL_MODULE).config))) endif ifneq (,$(wildcard $(LOCAL_PATH)/DynamicConfig.xml)) -my_compat_dist += \ - $(LOCAL_PATH)/DynamicConfig.xml:$(COMPATIBILITY_TESTCASES_OUT_$(LOCAL_COMPATIBILITY_SUITE))/$(LOCAL_MODULE).dynamic +$(foreach suite, $(LOCAL_COMPATIBILITY_SUITE), \ + $(eval my_compat_dist_$(suite) += $(foreach dir, $(call compatibility_suite_dirs,$(suite)), \ + $(LOCAL_PATH)/DynamicConfig.xml:$(dir)/$(LOCAL_MODULE).dynamic))) endif endif # $(my_prefix)$(LOCAL_MODULE_CLASS)_$(LOCAL_MODULE)_compat_files -my_compat_files := $(call copy-many-files, $(my_compat_dist)) - -COMPATIBILITY.$(LOCAL_COMPATIBILITY_SUITE).FILES := \ - $(COMPATIBILITY.$(LOCAL_COMPATIBILITY_SUITE).FILES) \ - $(my_compat_files) +$(call create-suite-dependencies) -# Copy over the compatibility files when user runs mm/mmm. -$(my_register_name) : $(my_compat_files) endif # LOCAL_COMPATIBILITY_SUITE ########################################################### |