Carl Shapiro | 7b21670 | 2011-06-17 15:09:26 -0700 | [diff] [blame] | 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 | |
Igor Murashkin | 3774335 | 2014-11-13 14:38:00 -0800 | [diff] [blame] | 17 | ifndef ART_ANDROID_COMMON_MK |
| 18 | ART_ANDROID_COMMON_MK = true |
Dragos Sbirlea | 37c19bc | 2013-07-29 09:38:31 -0700 | [diff] [blame] | 19 | |
Andreas Gampe | 1a5c406 | 2015-01-15 12:10:47 -0800 | [diff] [blame] | 20 | ART_TARGET_SUPPORTED_ARCH := arm arm64 mips mips64 x86 x86_64 |
Ian Rogers | afd9acc | 2014-06-17 08:21:54 -0700 | [diff] [blame] | 21 | ART_HOST_SUPPORTED_ARCH := x86 x86_64 |
Colin Cross | dc781a1 | 2014-02-04 16:22:03 -0800 | [diff] [blame] | 22 | |
Dan Albert | 31fb260 | 2014-09-30 22:10:10 -0700 | [diff] [blame] | 23 | ART_COVERAGE := false |
| 24 | |
| 25 | ifeq ($(ART_COVERAGE),true) |
| 26 | # https://gcc.gnu.org/onlinedocs/gcc/Cross-profiling.html |
| 27 | GCOV_PREFIX := /data/local/tmp/gcov |
| 28 | # GCOV_PREFIX_STRIP is an integer that defines how many levels should be |
| 29 | # stripped off the beginning of the path. We want the paths in $GCOV_PREFIX to |
| 30 | # be relative to $ANDROID_BUILD_TOP so we can just adb pull from the top and not |
| 31 | # have to worry about placing things ourselves. |
| 32 | GCOV_PREFIX_STRIP := $(shell echo $(ANDROID_BUILD_TOP) | grep -o / | wc -l) |
| 33 | GCOV_ENV := GCOV_PREFIX=$(GCOV_PREFIX) GCOV_PREFIX_STRIP=$(GCOV_PREFIX_STRIP) |
| 34 | else |
| 35 | GCOV_ENV := |
| 36 | endif |
| 37 | |
Ian Rogers | afd9acc | 2014-06-17 08:21:54 -0700 | [diff] [blame] | 38 | ifeq (,$(filter $(TARGET_ARCH),$(ART_TARGET_SUPPORTED_ARCH))) |
Colin Cross | dc781a1 | 2014-02-04 16:22:03 -0800 | [diff] [blame] | 39 | $(warning unsupported TARGET_ARCH=$(TARGET_ARCH)) |
| 40 | endif |
Ian Rogers | afd9acc | 2014-06-17 08:21:54 -0700 | [diff] [blame] | 41 | ifeq (,$(filter $(HOST_ARCH),$(ART_HOST_SUPPORTED_ARCH))) |
| 42 | $(warning unsupported HOST_ARCH=$(HOST_ARCH)) |
Brian Carlstrom | afdc560 | 2014-06-10 15:42:52 -0700 | [diff] [blame] | 43 | endif |
Andreas Gampe | 922141a | 2014-03-12 10:59:26 -0700 | [diff] [blame] | 44 | |
Andreas Gampe | afbaa1a | 2014-03-25 18:09:32 -0700 | [diff] [blame] | 45 | # Primary vs. secondary |
| 46 | 2ND_TARGET_ARCH := $(TARGET_2ND_ARCH) |
Ian Rogers | afd9acc | 2014-06-17 08:21:54 -0700 | [diff] [blame] | 47 | TARGET_INSTRUCTION_SET_FEATURES := $(DEX2OAT_TARGET_INSTRUCTION_SET_FEATURES) |
| 48 | 2ND_TARGET_INSTRUCTION_SET_FEATURES := $($(TARGET_2ND_ARCH_VAR_PREFIX)DEX2OAT_TARGET_INSTRUCTION_SET_FEATURES) |
Andreas Gampe | afbaa1a | 2014-03-25 18:09:32 -0700 | [diff] [blame] | 49 | ifdef TARGET_2ND_ARCH |
Andreas Gampe | afbaa1a | 2014-03-25 18:09:32 -0700 | [diff] [blame] | 50 | ifneq ($(filter %64,$(TARGET_ARCH)),) |
Andreas Gampe | afbaa1a | 2014-03-25 18:09:32 -0700 | [diff] [blame] | 51 | ART_PHONY_TEST_TARGET_SUFFIX := 64 |
| 52 | 2ND_ART_PHONY_TEST_TARGET_SUFFIX := 32 |
Brian Carlstrom | 0e12bdc | 2014-05-14 17:44:28 -0700 | [diff] [blame] | 53 | ART_TARGET_ARCH_32 := $(TARGET_2ND_ARCH) |
| 54 | ART_TARGET_ARCH_64 := $(TARGET_ARCH) |
Andreas Gampe | afbaa1a | 2014-03-25 18:09:32 -0700 | [diff] [blame] | 55 | else |
| 56 | # TODO: ??? |
| 57 | $(error Do not know what to do with this multi-target configuration!) |
| 58 | endif |
Andreas Gampe | afbaa1a | 2014-03-25 18:09:32 -0700 | [diff] [blame] | 59 | else |
Nicolas Geoffray | 7372b76 | 2014-11-07 10:10:39 +0000 | [diff] [blame] | 60 | ifneq ($(filter %64,$(TARGET_ARCH)),) |
| 61 | ART_PHONY_TEST_TARGET_SUFFIX := 64 |
| 62 | 2ND_ART_PHONY_TEST_TARGET_SUFFIX := |
| 63 | ART_TARGET_ARCH_32 := |
| 64 | ART_TARGET_ARCH_64 := $(TARGET_ARCH) |
| 65 | else |
| 66 | ART_PHONY_TEST_TARGET_SUFFIX := 32 |
| 67 | 2ND_ART_PHONY_TEST_TARGET_SUFFIX := |
| 68 | ART_TARGET_ARCH_32 := $(TARGET_ARCH) |
| 69 | ART_TARGET_ARCH_64 := |
| 70 | endif |
Andreas Gampe | afbaa1a | 2014-03-25 18:09:32 -0700 | [diff] [blame] | 71 | endif |
Brian Carlstrom | 47a0d5a | 2011-10-12 21:20:05 -0700 | [diff] [blame] | 72 | |
Ian Rogers | 665de8a | 2014-06-24 21:34:09 -0700 | [diff] [blame] | 73 | ART_HOST_SHLIB_EXTENSION := $(HOST_SHLIB_SUFFIX) |
| 74 | ART_HOST_SHLIB_EXTENSION ?= .so |
Ian Rogers | afd9acc | 2014-06-17 08:21:54 -0700 | [diff] [blame] | 75 | ifeq ($(HOST_PREFER_32_BIT),true) |
| 76 | ART_PHONY_TEST_HOST_SUFFIX := 32 |
| 77 | 2ND_ART_PHONY_TEST_HOST_SUFFIX := |
| 78 | ART_HOST_ARCH_32 := x86 |
| 79 | ART_HOST_ARCH_64 := |
| 80 | ART_HOST_ARCH := x86 |
| 81 | 2ND_ART_HOST_ARCH := |
| 82 | 2ND_HOST_ARCH := |
Ian Rogers | 665de8a | 2014-06-24 21:34:09 -0700 | [diff] [blame] | 83 | ART_HOST_LIBRARY_PATH := $(HOST_LIBRARY_PATH) |
Ian Rogers | afd9acc | 2014-06-17 08:21:54 -0700 | [diff] [blame] | 84 | ART_HOST_OUT_SHARED_LIBRARIES := $(2ND_HOST_OUT_SHARED_LIBRARIES) |
| 85 | 2ND_ART_HOST_OUT_SHARED_LIBRARIES := |
Elliott Hughes | 1d3f114 | 2011-09-13 12:00:00 -0700 | [diff] [blame] | 86 | else |
Ian Rogers | afd9acc | 2014-06-17 08:21:54 -0700 | [diff] [blame] | 87 | ART_PHONY_TEST_HOST_SUFFIX := 64 |
| 88 | 2ND_ART_PHONY_TEST_HOST_SUFFIX := 32 |
| 89 | ART_HOST_ARCH_32 := x86 |
| 90 | ART_HOST_ARCH_64 := x86_64 |
| 91 | ART_HOST_ARCH := x86_64 |
| 92 | 2ND_ART_HOST_ARCH := x86 |
| 93 | 2ND_HOST_ARCH := x86 |
Ian Rogers | 665de8a | 2014-06-24 21:34:09 -0700 | [diff] [blame] | 94 | ART_HOST_LIBRARY_PATH := $(HOST_LIBRARY_PATH) |
Ian Rogers | afd9acc | 2014-06-17 08:21:54 -0700 | [diff] [blame] | 95 | ART_HOST_OUT_SHARED_LIBRARIES := $(HOST_OUT_SHARED_LIBRARIES) |
| 96 | 2ND_ART_HOST_OUT_SHARED_LIBRARIES := $(2ND_HOST_OUT_SHARED_LIBRARIES) |
Elliott Hughes | 1d3f114 | 2011-09-13 12:00:00 -0700 | [diff] [blame] | 97 | endif |
Andreas Gampe | 2fe0792 | 2014-04-21 07:50:39 -0700 | [diff] [blame] | 98 | |
Igor Murashkin | 3774335 | 2014-11-13 14:38:00 -0800 | [diff] [blame] | 99 | endif # ART_ANDROID_COMMON_MK |