diff options
Diffstat (limited to 'core/config.mk')
-rw-r--r-- | core/config.mk | 46 |
1 files changed, 33 insertions, 13 deletions
diff --git a/core/config.mk b/core/config.mk index 322f258803..715038053c 100644 --- a/core/config.mk +++ b/core/config.mk @@ -217,6 +217,13 @@ combo_target := HOST_ combo_2nd_arch_prefix := include $(BUILD_SYSTEM)/combo/select.mk +# Load the 2nd host arch if it's needed. +ifdef HOST_2ND_ARCH +combo_target := HOST_ +combo_2nd_arch_prefix := $(HOST_2ND_ARCH_VAR_PREFIX) +include $(BUILD_SYSTEM)/combo/select.mk +endif + # on windows, the tools have .exe at the end, and we depend on the # host config stuff being done first @@ -351,13 +358,13 @@ endif # --------------------------------------------------------------- # Generic tools. -LEX := prebuilts/misc/$(BUILD_OS)-$(BUILD_ARCH)/flex/flex-2.5.39 +LEX := prebuilts/misc/$(BUILD_OS)-$(HOST_PREBUILT_ARCH)/flex/flex-2.5.39 # The default PKGDATADIR built in the prebuilt bison is a relative path # external/bison/data. # To run bison from elsewhere you need to set up enviromental variable # BISON_PKGDATADIR. BISON_PKGDATADIR := $(PWD)/external/bison/data -BISON := prebuilts/misc/$(BUILD_OS)-$(BUILD_ARCH)/bison/bison +BISON := prebuilts/misc/$(BUILD_OS)-$(HOST_PREBUILT_ARCH)/bison/bison YACC := $(BISON) -d DOXYGEN:= doxygen @@ -501,29 +508,39 @@ $(TARGET_2ND_ARCH_VAR_PREFIX)TARGET_GLOBAL_CFLAGS += $($(TARGET_2ND_ARCH_VAR_PRE $(TARGET_2ND_ARCH_VAR_PREFIX)TARGET_GLOBAL_CPPFLAGS += $($(TARGET_2ND_ARCH_VAR_PREFIX)TARGET_RELEASE_CPPFLAGS) endif +ifdef HOST_2ND_ARCH +$(HOST_2ND_ARCH_VAR_PREFIX)HOST_GLOBAL_CFLAGS += $(COMMON_GLOBAL_CFLAGS) +$(HOST_2ND_ARCH_VAR_PREFIX)HOST_RELEASE_CFLAGS += $(COMMON_RELEASE_CFLAGS) +$(HOST_2ND_ARCH_VAR_PREFIX)HOST_GLOBAL_CPPFLAGS += $(COMMON_GLOBAL_CPPFLAGS) +$(HOST_2ND_ARCH_VAR_PREFIX)HOST_RELEASE_CPPFLAGS += $(COMMON_RELEASE_CPPFLAGS) +$(HOST_2ND_ARCH_VAR_PREFIX)HOST_GLOBAL_LD_DIRS += -L$($(HOST_2ND_ARCH_VAR_PREFIX)HOST_OUT_INTERMEDIATE_LIBRARIES) +$(HOST_2ND_ARCH_VAR_PREFIX)HOST_PROJECT_INCLUDES := $(HOST_PROJECT_INCLUDES) +$(HOST_2ND_ARCH_VAR_PREFIX)HOST_GLOBAL_CFLAGS += $($(HOST_2ND_ARCH_VAR_PREFIX)HOST_RELEASE_CFLAGS) +$(HOST_2ND_ARCH_VAR_PREFIX)HOST_GLOBAL_CPPFLAGS += $($(HOST_2ND_ARCH_VAR_PREFIX)HOST_RELEASE_CPPFLAGS) +endif + # allow overriding default Java libraries on a per-target basis ifeq ($(TARGET_DEFAULT_JAVA_LIBRARIES),) TARGET_DEFAULT_JAVA_LIBRARIES := core core-junit ext framework framework2 endif +TARGET_CPU_SMP ?= true + # Flags for DEX2OAT DEX2OAT_TARGET_ARCH := $(TARGET_ARCH) DEX2OAT_TARGET_CPU_VARIANT := $(TARGET_CPU_VARIANT) DEX2OAT_TARGET_INSTRUCTION_SET_FEATURES := default +ifneq (,$(filter $(DEX2OAT_TARGET_CPU_VARIANT),cortex-a7 cortex-a15 krait denver)) + DEX2OAT_TARGET_INSTRUCTION_SET_FEATURES := div +endif -# If for a 64bit build we have a 2nd architecture but the zygote isn't 64bit, -# assume DEX2OAT should DEXPREOPT for the 2nd architecture. ifdef TARGET_2ND_ARCH - ifeq (true,$(TARGET_IS_64_BIT)) - ifeq ($(filter ro.zygote=zygote64,$(PRODUCT_DEFAULT_PROPERTY_OVERRIDES)),) - DEX2OAT_TARGET_ARCH := $(TARGET_2ND_ARCH) - DEX2OAT_TARGET_CPU_VARIANT := $(TARGET_2ND_CPU_VARIANT) - endif - endif +$(TARGET_2ND_ARCH_VAR_PREFIX)DEX2OAT_TARGET_ARCH := $(TARGET_2ND_ARCH) +$(TARGET_2ND_ARCH_VAR_PREFIX)DEX2OAT_TARGET_CPU_VARIANT := $(TARGET_2ND_CPU_VARIANT) +$(TARGET_2ND_ARCH_VAR_PREFIX)DEX2OAT_TARGET_INSTRUCTION_SET_FEATURES := default +ifneq (,$(filter $($(TARGET_2ND_ARCH_VAR_PREFIX)DEX2OAT_TARGET_CPU_VARIANT),cortex-a7 cortex-a15 krait denver)) + $(TARGET_2ND_ARCH_VAR_PREFIX)DEX2OAT_TARGET_INSTRUCTION_SET_FEATURES := div endif - -ifneq (,$(filter $(DEX2OAT_TARGET_CPU_VARIANT),cortex-a7 cortex-a15 krait)) - DEX2OAT_TARGET_INSTRUCTION_SET_FEATURES := div endif # define clang/llvm tools and global flags @@ -562,6 +579,9 @@ INTERNAL_PLATFORM_API_FILE := $(TARGET_OUT_COMMON_INTERMEDIATES)/PACKAGING/publi # This is the standard way to name a directory containing prebuilt target # objects. E.g., prebuilt/$(TARGET_PREBUILT_TAG)/libc.so TARGET_PREBUILT_TAG := android-$(TARGET_ARCH) +ifdef TARGET_2ND_ARCH +TARGET_2ND_PREBUILT_TAG := android-$(TARGET_2ND_ARCH) +endif # Set up RS prebuilt variables for compatibility library |