diff --git a/core/Makefile b/core/Makefile index 8a27ee829..3cc9831a7 100644 --- a/core/Makefile +++ b/core/Makefile @@ -183,18 +183,18 @@ FINAL_VENDOR_DEFAULT_PROPERTIES += \ # Add cpu properties for bionic and ART. FINAL_VENDOR_DEFAULT_PROPERTIES += ro.bionic.arch=$(TARGET_ARCH) -FINAL_VENDOR_DEFAULT_PROPERTIES += ro.bionic.cpu_variant=$(TARGET_CPU_VARIANT) +FINAL_VENDOR_DEFAULT_PROPERTIES += ro.bionic.cpu_variant=$(TARGET_CPU_VARIANT_RUNTIME) FINAL_VENDOR_DEFAULT_PROPERTIES += ro.bionic.2nd_arch=$(TARGET_2ND_ARCH) -FINAL_VENDOR_DEFAULT_PROPERTIES += ro.bionic.2nd_cpu_variant=$(TARGET_2ND_CPU_VARIANT) +FINAL_VENDOR_DEFAULT_PROPERTIES += ro.bionic.2nd_cpu_variant=$(TARGET_2ND_CPU_VARIANT_RUNTIME) FINAL_VENDOR_DEFAULT_PROPERTIES += persist.sys.dalvik.vm.lib.2=libart.so -FINAL_VENDOR_DEFAULT_PROPERTIES += dalvik.vm.isa.$(TARGET_ARCH).variant=$(DEX2OAT_TARGET_CPU_VARIANT) +FINAL_VENDOR_DEFAULT_PROPERTIES += dalvik.vm.isa.$(TARGET_ARCH).variant=$(DEX2OAT_TARGET_CPU_VARIANT_RUNTIME) ifneq ($(DEX2OAT_TARGET_INSTRUCTION_SET_FEATURES),) FINAL_VENDOR_DEFAULT_PROPERTIES += dalvik.vm.isa.$(TARGET_ARCH).features=$(DEX2OAT_TARGET_INSTRUCTION_SET_FEATURES) endif ifdef TARGET_2ND_ARCH - FINAL_VENDOR_DEFAULT_PROPERTIES += dalvik.vm.isa.$(TARGET_2ND_ARCH).variant=$($(TARGET_2ND_ARCH_VAR_PREFIX)DEX2OAT_TARGET_CPU_VARIANT) + FINAL_VENDOR_DEFAULT_PROPERTIES += dalvik.vm.isa.$(TARGET_2ND_ARCH).variant=$($(TARGET_2ND_ARCH_VAR_PREFIX)DEX2OAT_TARGET_CPU_VARIANT_RUNTIME) ifneq ($($(TARGET_2ND_ARCH_VAR_PREFIX)DEX2OAT_TARGET_INSTRUCTION_SET_FEATURES),) FINAL_VENDOR_DEFAULT_PROPERTIES += dalvik.vm.isa.$(TARGET_2ND_ARCH).features=$($(TARGET_2ND_ARCH_VAR_PREFIX)DEX2OAT_TARGET_INSTRUCTION_SET_FEATURES) endif diff --git a/core/config.mk b/core/config.mk index 518e138db..5f08f2f94 100644 --- a/core/config.mk +++ b/core/config.mk @@ -298,12 +298,24 @@ TARGET_PRODUCT_KERNEL_HEADERS := $(patsubst %/,%,$(TARGET_PRODUCT_KERNEL_HEADERS $(call validate-kernel-headers,$(TARGET_PRODUCT_KERNEL_HEADERS)) # Clean up/verify variables defined by the board config file. +# TODO: Move this to right after the BoardConfig parsing. TARGET_BOOTLOADER_BOARD_NAME := $(strip $(TARGET_BOOTLOADER_BOARD_NAME)) TARGET_CPU_ABI := $(strip $(TARGET_CPU_ABI)) ifeq ($(TARGET_CPU_ABI),) $(error No TARGET_CPU_ABI defined by board config: $(board_config_mk)) endif TARGET_CPU_ABI2 := $(strip $(TARGET_CPU_ABI2)) +TARGET_CPU_VARIANT := $(strip $(TARGET_CPU_VARIANT)) +TARGET_CPU_VARIANT_RUNTIME := $(strip $(TARGET_CPU_VARIANT_RUNTIME)) + +TARGET_2ND_CPU_ABI := $(strip $(TARGET_2ND_CPU_ABI)) +TARGET_2ND_CPU_ABI2 := $(strip $(TARGET_2ND_CPU_ABI2)) +TARGET_2ND_CPU_VARIANT := $(strip $(TARGET_2ND_CPU_VARIANT)) +TARGET_2ND_CPU_VARIANT_RUNTIME := $(strip $(TARGET_2ND_CPU_VARIANT_RUNTIME)) + +# Default *_CPU_VARIANT_RUNTIME to CPU_VARIANT if unspecified. +TARGET_CPU_VARIANT_RUNTIME := $(or $(TARGET_CPU_VARIANT_RUNTIME),$(TARGET_CPU_VARIANT)) +TARGET_2ND_CPU_VARIANT_RUNTIME := $(or $(TARGET_2ND_CPU_VARIANT_RUNTIME),$(TARGET_2ND_CPU_VARIANT)) BOARD_KERNEL_BASE := $(strip $(BOARD_KERNEL_BASE)) BOARD_KERNEL_PAGESIZE := $(strip $(BOARD_KERNEL_PAGESIZE)) @@ -1135,11 +1147,13 @@ endif first_non_empty_of_three = $(if $(1),$(1),$(if $(2),$(2),$(3))) DEX2OAT_TARGET_ARCH := $(TARGET_ARCH) DEX2OAT_TARGET_CPU_VARIANT := $(call first_non_empty_of_three,$(TARGET_CPU_VARIANT),$(TARGET_ARCH_VARIANT),default) +DEX2OAT_TARGET_CPU_VARIANT_RUNTIME := $(call first_non_empty_of_three,$(TARGET_CPU_VARIANT_RUNTIME),$(TARGET_ARCH_VARIANT),default) DEX2OAT_TARGET_INSTRUCTION_SET_FEATURES := default ifdef TARGET_2ND_ARCH $(TARGET_2ND_ARCH_VAR_PREFIX)DEX2OAT_TARGET_ARCH := $(TARGET_2ND_ARCH) $(TARGET_2ND_ARCH_VAR_PREFIX)DEX2OAT_TARGET_CPU_VARIANT := $(call first_non_empty_of_three,$(TARGET_2ND_CPU_VARIANT),$(TARGET_2ND_ARCH_VARIANT),default) +$(TARGET_2ND_ARCH_VAR_PREFIX)DEX2OAT_TARGET_CPU_VARIANT_RUNTIME := $(call first_non_empty_of_three,$(TARGET_2ND_CPU_VARIANT_RUNTIME),$(TARGET_2ND_ARCH_VARIANT),default) $(TARGET_2ND_ARCH_VAR_PREFIX)DEX2OAT_TARGET_INSTRUCTION_SET_FEATURES := default endif diff --git a/core/product.mk b/core/product.mk index 8a539829f..efe029bc1 100644 --- a/core/product.mk +++ b/core/product.mk @@ -375,11 +375,13 @@ _product_stash_var_list := $(_product_var_list) \ TARGET_CPU_ABI \ TARGET_CPU_ABI2 \ TARGET_CPU_VARIANT \ + TARGET_CPU_VARIANT_RUNTIME \ TARGET_2ND_ARCH \ TARGET_2ND_ARCH_VARIANT \ TARGET_2ND_CPU_ABI \ TARGET_2ND_CPU_ABI2 \ TARGET_2ND_CPU_VARIANT \ + TARGET_2ND_CPU_VARIANT_RUNTIME \ TARGET_BOARD_PLATFORM \ TARGET_BOARD_PLATFORM_GPU \ TARGET_BOARD_KERNEL_HEADERS \