1#
2# Copyright (C) 2011 The Android Open Source Project
3#
4# Licensed under the Apache License, Version 2.0 (the "License");
5# you may not use this file except in compliance with the License.
6# You may obtain a copy of the License at
7#
8#      http://www.apache.org/licenses/LICENSE-2.0
9#
10# Unless required by applicable law or agreed to in writing, software
11# distributed under the License is distributed on an "AS IS" BASIS,
12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13# See the License for the specific language governing permissions and
14# limitations under the License.
15#
16
17ifndef ANDROID_COMMON_PATH_MK
18ANDROID_COMMON_PATH_MK := true
19
20include art/build/Android.common.mk
21
22# Directory used for dalvik-cache on device.
23ART_TARGET_DALVIK_CACHE_DIR := /data/dalvik-cache
24
25# Directory used for gtests on device.
26# $(TARGET_OUT_DATA_NATIVE_TESTS) will evaluate to the nativetest directory in the target part on
27# the host, so we can strip everything but the directory to find out whether it is "nativetest" or
28# "nativetest64."
29ART_TARGET_NATIVETEST_DIR := /data/$(notdir $(TARGET_OUT_DATA_NATIVE_TESTS))/art
30
31ART_TARGET_NATIVETEST_OUT := $(TARGET_OUT_DATA_NATIVE_TESTS)/art
32
33# Directory used for oat tests on device.
34ART_TARGET_TEST_DIR := /data/art-test
35ART_TARGET_TEST_OUT := $(TARGET_OUT_DATA)/art-test
36
37# Directory used for temporary test files on the host.
38ifneq ($(TMPDIR),)
39ART_HOST_TEST_DIR := $(TMPDIR)/test-art-$(shell echo $$PPID)
40else
41ART_HOST_TEST_DIR := /tmp/test-art-$(shell echo $$PPID)
42endif
43
44# Core.oat location on the device.
45TARGET_CORE_OAT := $(ART_TARGET_TEST_DIR)/$(DEX2OAT_TARGET_ARCH)/core.oat
46ifdef TARGET_2ND_ARCH
472ND_TARGET_CORE_OAT := $(ART_TARGET_TEST_DIR)/$($(TARGET_2ND_ARCH_VAR_PREFIX)DEX2OAT_TARGET_ARCH)/core.oat
48endif
49
50# Core.oat locations under the out directory.
51HOST_CORE_OAT_OUT := $(HOST_OUT_JAVA_LIBRARIES)/$(ART_HOST_ARCH)/core.oat
52ifneq ($(HOST_PREFER_32_BIT),true)
532ND_HOST_CORE_OAT_OUT := $(HOST_OUT_JAVA_LIBRARIES)/$(2ND_ART_HOST_ARCH)/core.oat
54endif
55TARGET_CORE_OAT_OUT := $(ART_TARGET_TEST_OUT)/$(DEX2OAT_TARGET_ARCH)/core.oat
56ifdef TARGET_2ND_ARCH
572ND_TARGET_CORE_OAT_OUT := $(ART_TARGET_TEST_OUT)/$($(TARGET_2ND_ARCH_VAR_PREFIX)DEX2OAT_TARGET_ARCH)/core.oat
58endif
59
60# Core.art locations under the out directory.
61HOST_CORE_IMG_OUT := $(HOST_OUT_JAVA_LIBRARIES)/$(ART_HOST_ARCH)/core.art
62ifneq ($(HOST_PREFER_32_BIT),true)
632ND_HOST_CORE_IMG_OUT := $(HOST_OUT_JAVA_LIBRARIES)/$(2ND_ART_HOST_ARCH)/core.art
64endif
65TARGET_CORE_IMG_OUT := $(ART_TARGET_TEST_OUT)/$(DEX2OAT_TARGET_ARCH)/core.art
66ifdef TARGET_2ND_ARCH
672ND_TARGET_CORE_IMG_OUT := $(ART_TARGET_TEST_OUT)/$($(TARGET_2ND_ARCH_VAR_PREFIX)DEX2OAT_TARGET_ARCH)/core.art
68endif
69
70# Oat location of core.art.
71HOST_CORE_IMG_LOCATION := $(HOST_OUT_JAVA_LIBRARIES)/core.art
72TARGET_CORE_IMG_LOCATION := $(ART_TARGET_TEST_OUT)/core.art
73
74# Jar files for core.art.
75TARGET_CORE_JARS := core-libart conscrypt okhttp core-junit bouncycastle
76HOST_CORE_JARS := $(addsuffix -hostdex,$(TARGET_CORE_JARS))
77
78HOST_CORE_DEX_LOCATIONS   := $(foreach jar,$(HOST_CORE_JARS),  $(HOST_OUT_JAVA_LIBRARIES)/$(jar).jar)
79TARGET_CORE_DEX_LOCATIONS := $(foreach jar,$(TARGET_CORE_JARS),/$(DEXPREOPT_BOOT_JAR_DIR)/$(jar).jar)
80
81HOST_CORE_DEX_FILES   := $(foreach jar,$(HOST_CORE_JARS),  $(call intermediates-dir-for,JAVA_LIBRARIES,$(jar),t,COMMON)/javalib.jar)
82TARGET_CORE_DEX_FILES := $(foreach jar,$(TARGET_CORE_JARS),$(call intermediates-dir-for,JAVA_LIBRARIES,$(jar), ,COMMON)/javalib.jar)
83endif # ANDROID_COMMON_PATH_MK
84