Warn when defining a 32-bit product on a 64-bit device.
Building a 32-bit-app-only product on a 64-bit capable device is likely to be unintentional. Print a warning if this is done implicitly, e.g. via forgetting to define the TARGET_SUPPORTS_64_BIT_APPS variable. Also change existing references to only treat 'true' as a positive value, rather than all non-empty ones. Bug: 110918674 Test: lunched 64-bit-device product that does and doesn't set this var Change-Id: I021157c94ec3ac1c690547c8992768e58c89c287
This commit is contained in:
@@ -368,10 +368,18 @@ TARGET_PREFER_32_BIT_APPS := true
|
|||||||
TARGET_PREFER_32_BIT_EXECUTABLES := true
|
TARGET_PREFER_32_BIT_EXECUTABLES := true
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq (,$(TARGET_SUPPORTS_32_BIT_APPS)$(TARGET_SUPPORTS_64_BIT_APPS))
|
ifeq (,$(filter true,$(TARGET_SUPPORTS_32_BIT_APPS) $(TARGET_SUPPORTS_64_BIT_APPS)))
|
||||||
TARGET_SUPPORTS_32_BIT_APPS := true
|
TARGET_SUPPORTS_32_BIT_APPS := true
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
# Sanity check to warn about likely cryptic errors later in the build.
|
||||||
|
ifeq ($(TARGET_IS_64_BIT),true)
|
||||||
|
ifeq (,$(filter true false,$(TARGET_SUPPORTS_64_BIT_APPS)))
|
||||||
|
$(warning Building a 32-bit-app-only product on a 64-bit device. \
|
||||||
|
If this is intentional, set TARGET_SUPPORTS_64_BIT_APPS := false)
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
# "ro.product.cpu.abilist32" and "ro.product.cpu.abilist64" are
|
# "ro.product.cpu.abilist32" and "ro.product.cpu.abilist64" are
|
||||||
# comma separated lists of the 32 and 64 bit ABIs (in order of
|
# comma separated lists of the 32 and 64 bit ABIs (in order of
|
||||||
# preference) that the target supports. If TARGET_CPU_ABI_LIST_{32,64}_BIT
|
# preference) that the target supports. If TARGET_CPU_ABI_LIST_{32,64}_BIT
|
||||||
|
@@ -8,7 +8,9 @@ my_prefix := TARGET_
|
|||||||
include $(BUILD_SYSTEM)/multilib.mk
|
include $(BUILD_SYSTEM)/multilib.mk
|
||||||
|
|
||||||
ifeq ($(TARGET_TRANSLATE_2ND_ARCH),true)
|
ifeq ($(TARGET_TRANSLATE_2ND_ARCH),true)
|
||||||
ifneq ($(TARGET_SUPPORTS_64_BIT_APPS)|$(my_module_multilib),|64)
|
ifeq ($(TARGET_SUPPORTS_64_BIT_APPS),true)
|
||||||
|
my_module_multilib := first
|
||||||
|
else ifneq ($(my_module_multilib),64)
|
||||||
my_module_multilib := first
|
my_module_multilib := first
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
Reference in New Issue
Block a user