diff --git a/core/dex_preopt.mk b/core/dex_preopt.mk index e0dde01e9..6499b638e 100644 --- a/core/dex_preopt.mk +++ b/core/dex_preopt.mk @@ -19,6 +19,13 @@ DEXPREOPT_BOOT_JAR_DIR_FULL_PATH := $(DEXPREOPT_PRODUCT_DIR_FULL_PATH)/$(DEXPREO # The default value for LOCAL_DEX_PREOPT DEX_PREOPT_DEFAULT ?= true +# The default values for pre-opting: always preopt PIC. +# Conditional to building on linux, as dex2oat currently does not work on darwin. +ifeq ($(HOST_OS),linux) + WITH_DEXPREOPT_PIC ?= true + WITH_DEXPREOPT ?= true +endif + # $(1): the .jar or .apk to remove classes.dex define dexpreopt-remove-classes.dex $(hide) zip --quiet --delete $(1) classes.dex; \ diff --git a/core/main.mk b/core/main.mk index aa6d15f36..211e06a5e 100644 --- a/core/main.mk +++ b/core/main.mk @@ -368,18 +368,6 @@ ifneq (,$(user_variant)) enable_target_debugging := endif - # Turn on Dalvik preoptimization for user builds, but only if not - # explicitly disabled and the build is running on Linux (since host - # Dalvik isn't built for non-Linux hosts). - ifeq (,$(WITH_DEXPREOPT)) - ifeq ($(user_variant),user) - ifeq ($(HOST_OS),linux) - # TODO: turn on WITH_DEXPREOPT for libart user builds. - # WITH_DEXPREOPT := true - endif - endif - endif - # Disallow mock locations by default for user builds ADDITIONAL_DEFAULT_PROPERTIES += ro.allow.mock.location=0 @@ -415,10 +403,8 @@ ifneq ($(filter ro.setupwizard.mode=ENABLED, $(call collapse-pairs, $(ADDITIONAL ro.setupwizard.mode=OPTIONAL endif ifndef is_sdk_build - # Don't verify or compile the image on eng builds to speed startup. + # To speedup startup of non-preopted builds, don't verify or compile the boot image. ADDITIONAL_BUILD_PROPERTIES += dalvik.vm.image-dex2oat-filter=verify-at-runtime - # Don't verify or compile apps on eng builds to speed startup. - ADDITIONAL_BUILD_PROPERTIES += dalvik.vm.dex2oat-filter=verify-at-runtime endif endif