Colin Cross | e6e48f6 | 2014-03-21 12:29:32 -0700 | [diff] [blame] | 1 | # Translate LOCAL_32_BIT_ONLY and LOCAL_NO_2ND_ARCH to LOCAL_MULTILIB, |
| 2 | # and check LOCAL_MULTILIB is a valid value. Returns module's multilib |
| 3 | # setting in my_module_multilib, or empty if not set. |
| 4 | |
| 5 | my_module_multilib := $(strip $(LOCAL_MULTILIB)) |
| 6 | ifndef my_module_multilib |
| 7 | ifeq ($(LOCAL_32_BIT_ONLY)|$(LOCAL_NO_2ND_ARCH),true|true) |
| 8 | ifdef TARGET_2ND_ARCH |
| 9 | # Both LOCAL_32_BIT_ONLY and LOCAL_NO_2ND_ARCH specified on 64-bit target |
| 10 | # skip the module completely |
| 11 | my_module_multilib := none |
| 12 | else |
| 13 | # Both LOCAL_32_BIT_ONLY and LOCAL_NO_2ND_ARCH specified on 32-bit target |
| 14 | # build for 32-bit |
| 15 | my_module_multilib := 32 |
| 16 | endif |
| 17 | else ifeq ($(LOCAL_32_BIT_ONLY),true) |
| 18 | my_module_multilib := 32 |
| 19 | else ifeq ($(LOCAL_NO_2ND_ARCH),true) |
| 20 | my_module_multilib := first |
| 21 | endif |
| 22 | else # my_module_multilib defined |
Colin Cross | dc1c95a | 2014-04-10 11:28:04 -0700 | [diff] [blame^] | 23 | ifeq (,$(filter 32 64 first both none,$(my_module_multilib))) |
Colin Cross | e6e48f6 | 2014-03-21 12:29:32 -0700 | [diff] [blame] | 24 | $(error $(LOCAL_PATH): Invalid LOCAL_MULTILIB specified for module $(LOCAL_MODULE)) |
| 25 | endif |
| 26 | endif # my_module_multilib defined |