diff options
author | torne@chromium.org <torne@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-06-05 14:50:00 +0000 |
---|---|---|
committer | torne@chromium.org <torne@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-06-05 14:50:00 +0000 |
commit | ce0e15915b9ee6c01d210151af1e4669195d1da0 (patch) | |
tree | 9696b0ee05b16cfa69fa879cbf6db56a67343e40 /Android.mk | |
parent | d480d0e4974707af2c9af65f08d1df54278e6609 (diff) | |
download | chromium_src-ce0e15915b9ee6c01d210151af1e4669195d1da0.zip chromium_src-ce0e15915b9ee6c01d210151af1e4669195d1da0.tar.gz chromium_src-ce0e15915b9ee6c01d210151af1e4669195d1da0.tar.bz2 |
Android WebView: make use of host multilib support.
Set the gyp variables that control the use of the Android build system's
host multilib support so that we can:
1) not break host multilib builds
2) correctly specify whether we want our host binaries to be build as 32
or 64 bit, fixing Mac host builds of V8 for 64-bit targets.
BUG=358141
NOTRY=true
R=mkosiba@chromium.org
Review URL: https://codereview.chromium.org/305163002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@275110 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'Android.mk')
-rw-r--r-- | Android.mk | 40 |
1 files changed, 36 insertions, 4 deletions
@@ -21,21 +21,53 @@ include $(CHROMIUM_DIR)/android_webview/Android.mk # If the gyp-generated makefile exists for the current host OS and primary # target architecture, we need to include it. If it doesn't exist then just do # nothing, since we may not have finished bringing up this architecture yet. +ifneq (,$(wildcard $(CHROMIUM_DIR)/GypAndroid.$(HOST_OS)-$(TARGET_ARCH).mk)) + # We set GYP_VAR_PREFIX to the empty string to indicate that we are building for # the primary target architecture. -ifneq (,$(wildcard $(CHROMIUM_DIR)/GypAndroid.$(HOST_OS)-$(TARGET_ARCH).mk)) GYP_VAR_PREFIX := -include $(CHROMIUM_DIR)/GypAndroid.$(HOST_OS)-$(TARGET_ARCH).mk + +# If the host is declared as being 64-bit, set the host multilib variables +# appropriately to ensure that the host targets are the same "bitness" as the +# primary target, which is required by V8. +ifeq ($(HOST_IS_64_BIT),true) +ifeq ($(TARGET_IS_64_BIT),true) +GYP_HOST_VAR_PREFIX := +GYP_HOST_MULTILIB := 64 +else # Target is 32-bit. +GYP_HOST_VAR_PREFIX := $(HOST_2ND_ARCH_VAR_PREFIX) +GYP_HOST_MULTILIB := 32 endif +endif + +include $(CHROMIUM_DIR)/GypAndroid.$(HOST_OS)-$(TARGET_ARCH).mk + +endif # End primary architecture handling. # Do the same check for the secondary architecture; if this doesn't exist then # the current target platform probably doesn't have a secondary architecture and # we can just do nothing. +ifneq (,$(wildcard $(CHROMIUM_DIR)/GypAndroid.$(HOST_OS)-$(TARGET_2ND_ARCH).mk)) + # We set GYP_VAR_PREFIX to $(TARGET_2ND_ARCH_VAR_PREFIX) to indicate that we are # building for the secondary target architecture. -ifneq (,$(wildcard $(CHROMIUM_DIR)/GypAndroid.$(HOST_OS)-$(TARGET_2ND_ARCH).mk)) GYP_VAR_PREFIX := $(TARGET_2ND_ARCH_VAR_PREFIX) -include $(CHROMIUM_DIR)/GypAndroid.$(HOST_OS)-$(TARGET_2ND_ARCH).mk + +# If the host is declared as being 64-bit, set the host multilib variables +# appropriately to ensure that the host targets are the same "bitness" as the +# secondary target, which is required by V8. +ifeq ($(HOST_IS_64_BIT),true) +ifeq ($(2ND_TARGET_IS_64_BIT),true) +GYP_HOST_VAR_PREFIX := +GYP_HOST_MULTILIB := 64 +else # Second target is 32-bit. +GYP_HOST_VAR_PREFIX := $(HOST_2ND_ARCH_VAR_PREFIX) +GYP_HOST_MULTILIB := 32 endif +endif + +include $(CHROMIUM_DIR)/GypAndroid.$(HOST_OS)-$(TARGET_2ND_ARCH).mk + +endif # End secondary architecture handling. endif |