1#################################### 2# dexpreopt support - typically used on user builds to run dexopt (for Dalvik) or dex2oat (for ART) ahead of time 3# 4#################################### 5 6include $(BUILD_SYSTEM)/dex_preopt_config.mk 7 8# Method returning whether the install path $(1) should be for system_other. 9# Under SANITIZE_LITE, we do not want system_other. Just put things under /data/asan. 10ifeq ($(SANITIZE_LITE),true) 11install-on-system-other = 12else 13install-on-system-other = $(filter-out $(PRODUCT_DEXPREOPT_SPEED_APPS) $(PRODUCT_SYSTEM_SERVER_APPS),$(basename $(notdir $(filter $(foreach f,$(SYSTEM_OTHER_ODEX_FILTER),$(TARGET_OUT)/$(f)),$(1))))) 14endif 15 16ifeq ($(WITH_DEXPREOPT), true) 17ifneq ($(WITH_DEXPREOPT_ART_BOOT_IMG_ONLY), true) 18ifeq ($(PRODUCT_USES_DEFAULT_ART_CONFIG), true) 19 20# Infix can be 'art' (ART image for testing), 'boot' (primary), or 'mainline' (mainline extension). 21# Soong creates a set of variables for Make, one or each boot image. The only reason why the ART 22# image is exposed to Make is testing (art gtests) and benchmarking (art golem benchmarks). Install 23# rules that use those variables are in dex_preopt_libart.mk. Here for dexpreopt purposes the infix 24# is always 'boot' or 'mainline'. 25DEXPREOPT_INFIX := $(if $(filter true,$(DEX_PREOPT_WITH_UPDATABLE_BCP)),mainline,boot) 26 27endif #PRODUCT_USES_DEFAULT_ART_CONFIG 28endif #WITH_DEXPREOPT_ART_BOOT_IMG_ONLY 29endif #WITH_DEXPREOPT 30