diff options
author | Ying Wang <wangying@google.com> | 2014-05-17 03:03:43 +0000 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2014-05-17 03:03:44 +0000 |
commit | 4636abe5899272e1e9051e2c98516409107c4e8c (patch) | |
tree | deddb8c379c5cd2945218d69b37a380f552f7741 | |
parent | 5ee3f0960dbc6a14333e3b98252d59f5d8d18a7d (diff) | |
parent | 34d5f1b27e862bf0653d89b9111d38f7de1f9c95 (diff) | |
download | build-4636abe5899272e1e9051e2c98516409107c4e8c.tar.gz |
Merge "Real "LOCAL_MULTILIB := both" for prebuilts"
-rw-r--r-- | core/multilib.mk | 2 | ||||
-rw-r--r-- | core/package.mk | 1 | ||||
-rw-r--r-- | core/prebuilt.mk | 26 | ||||
-rw-r--r-- | core/prebuilt_internal.mk | 8 |
4 files changed, 26 insertions, 11 deletions
diff --git a/core/multilib.mk b/core/multilib.mk index f630c94430..a3ced65d2c 100644 --- a/core/multilib.mk +++ b/core/multilib.mk @@ -1,4 +1,4 @@ -# Translate LOCAL_32_BIT_ONLY and LOCAL_NO_2ND_ARCH to LOCAL_MULTILIB, +# Translate LOCAL_32_BIT_ONLY to LOCAL_MULTILIB, # and check LOCAL_MULTILIB is a valid value. Returns module's multilib # setting in my_module_multilib, or empty if not set. diff --git a/core/package.mk b/core/package.mk index 0861a79bc7..78b65db107 100644 --- a/core/package.mk +++ b/core/package.mk @@ -1,6 +1,5 @@ # We don't automatically set up rules to build packages for both # TARGET_ARCH and TARGET_2ND_ARCH. -# By default, an package is built for TARGET_ARCH. # To build it for TARGET_2ND_ARCH in a 64bit product, use "LOCAL_MULTILIB := 32". my_prefix := TARGET_ diff --git a/core/prebuilt.mk b/core/prebuilt.mk index c280900af6..33f5dc6c2f 100644 --- a/core/prebuilt.mk +++ b/core/prebuilt.mk @@ -14,26 +14,36 @@ endif include $(BUILD_SYSTEM)/multilib.mk -ifndef my_module_multilib -# prebuilts default to building for either architecture, -# the first if its supported, otherwise the second. -my_module_multilib := both -endif +my_skip_non_preferred_arch := # check if first arch is supported include $(BUILD_SYSTEM)/module_arch_supported.mk ifeq ($(my_module_arch_supported),true) # first arch is supported include $(BUILD_SYSTEM)/prebuilt_internal.mk -else ifneq (,$($(my_prefix)2ND_ARCH)) +ifneq ($(my_module_multilib),both) +my_skip_non_preferred_arch := true +endif # $(my_module_multilib) +endif # $(my_module_arch_supported) + +ifndef my_skip_non_preferred_arch +ifneq (,$($(my_prefix)2ND_ARCH)) # check if secondary arch is supported LOCAL_2ND_ARCH_VAR_PREFIX := $($(my_prefix)2ND_ARCH_VAR_PREFIX) include $(BUILD_SYSTEM)/module_arch_supported.mk ifeq ($(my_module_arch_supported),true) # secondary arch is supported +OVERRIDE_BUILT_MODULE_PATH := +LOCAL_BUILT_MODULE := +LOCAL_INSTALLED_MODULE := +LOCAL_MODULE_STEM := +LOCAL_BUILT_MODULE_STEM := +LOCAL_INSTALLED_MODULE_STEM := +LOCAL_INTERMEDIATE_TARGETS := include $(BUILD_SYSTEM)/prebuilt_internal.mk -endif -endif # $(my_prefix)2ND_ARCH +endif # $(my_module_arch_supported) +endif # $($(my_prefix)2ND_ARCH) +endif # $(my_skip_non_preferred_arch) not true LOCAL_2ND_ARCH_VAR_PREFIX := diff --git a/core/prebuilt_internal.mk b/core/prebuilt_internal.mk index 089cc6300f..f63d29184c 100644 --- a/core/prebuilt_internal.mk +++ b/core/prebuilt_internal.mk @@ -19,13 +19,19 @@ endif # Not much sense to check build prebuilts LOCAL_DONT_CHECK_MODULE := true +my_32_64_bit_suffix := $(if $($(LOCAL_2ND_ARCH_VAR_PREFIX)$(my_prefix)IS_64_BIT),64,32) + ifdef LOCAL_PREBUILT_MODULE_FILE my_prebuilt_src_file := $(LOCAL_PREBUILT_MODULE_FILE) else ifdef LOCAL_SRC_FILES_$($(my_prefix)$(LOCAL_2ND_ARCH_VAR_PREFIX)ARCH) my_prebuilt_src_file := $(LOCAL_PATH)/$(LOCAL_SRC_FILES_$($(my_prefix)$(LOCAL_2ND_ARCH_VAR_PREFIX)ARCH)) else - my_prebuilt_src_file := $(LOCAL_PATH)/$(LOCAL_SRC_FILES) + ifdef LOCAL_SRC_FILES_$(my_32_64_bit_suffix) + my_prebuilt_src_file := $(LOCAL_PATH)/$(LOCAL_SRC_FILES_$(my_32_64_bit_suffix)) + else + my_prebuilt_src_file := $(LOCAL_PATH)/$(LOCAL_SRC_FILES) + endif endif endif |