blob: 08962526ddd57814107c9bd0307ce8f4007a7248 [file] [log] [blame]
Ian Rogersafd9acc2014-06-17 08:21:54 -07001#
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 Murashkin37743352014-11-13 14:38:00 -080017ifndef ART_ANDROID_COMMON_BUILD_MK
18ART_ANDROID_COMMON_BUILD_MK = true
Ian Rogersafd9acc2014-06-17 08:21:54 -070019
20include art/build/Android.common.mk
21
22# These can be overridden via the environment or by editing to
23# enable/disable certain build configuration.
24#
25# For example, to disable everything but the host debug build you use:
26#
27# (export ART_BUILD_TARGET_NDEBUG=false && export ART_BUILD_TARGET_DEBUG=false && export ART_BUILD_HOST_NDEBUG=false && ...)
28#
29# Beware that tests may use the non-debug build for performance, notable 055-enum-performance
30#
31ART_BUILD_TARGET_NDEBUG ?= true
32ART_BUILD_TARGET_DEBUG ?= true
33ART_BUILD_HOST_NDEBUG ?= true
34ART_BUILD_HOST_DEBUG ?= true
Calin Juravle676ff8e2015-07-24 16:45:26 +010035
Ian Rogersafd9acc2014-06-17 08:21:54 -070036ifeq ($(ART_BUILD_TARGET_NDEBUG),false)
37$(info Disabling ART_BUILD_TARGET_NDEBUG)
38endif
39ifeq ($(ART_BUILD_TARGET_DEBUG),false)
40$(info Disabling ART_BUILD_TARGET_DEBUG)
41endif
42ifeq ($(ART_BUILD_HOST_NDEBUG),false)
43$(info Disabling ART_BUILD_HOST_NDEBUG)
44endif
45ifeq ($(ART_BUILD_HOST_DEBUG),false)
46$(info Disabling ART_BUILD_HOST_DEBUG)
47endif
Ian Rogers6f3dbba2014-10-14 17:41:57 -070048
Hiroshi Yamauchifd3161a2017-01-18 14:47:25 -080049# Enable the read barrier by default.
50ART_USE_READ_BARRIER ?= true
51
Mathieu Chartiera7f6b812017-12-11 13:34:29 -080052# Default compact dex level to none.
53ifeq ($(ART_DEFAULT_COMPACT_DEX_LEVEL),)
54ART_DEFAULT_COMPACT_DEX_LEVEL := none
55endif
56
Ian Rogers6f3dbba2014-10-14 17:41:57 -070057ART_CPP_EXTENSION := .cc
58
Ying Wanga28ff0f2014-12-08 14:29:34 -080059ifndef LIBART_IMG_HOST_BASE_ADDRESS
60 $(error LIBART_IMG_HOST_BASE_ADDRESS unset)
Ian Rogersafd9acc2014-06-17 08:21:54 -070061endif
Andreas Gamped1262282016-08-11 18:35:58 -070062
Ying Wanga28ff0f2014-12-08 14:29:34 -080063ifndef LIBART_IMG_TARGET_BASE_ADDRESS
64 $(error LIBART_IMG_TARGET_BASE_ADDRESS unset)
65endif
Bilyan Borisov3071f802016-03-31 17:15:53 +010066
Ian Rogers6f3dbba2014-10-14 17:41:57 -070067# Support for disabling certain builds.
Ian Rogersafd9acc2014-06-17 08:21:54 -070068ART_BUILD_TARGET := false
69ART_BUILD_HOST := false
Ian Rogersafd9acc2014-06-17 08:21:54 -070070ifeq ($(ART_BUILD_TARGET_NDEBUG),true)
71 ART_BUILD_TARGET := true
Ian Rogersafd9acc2014-06-17 08:21:54 -070072endif
73ifeq ($(ART_BUILD_TARGET_DEBUG),true)
74 ART_BUILD_TARGET := true
Ian Rogersafd9acc2014-06-17 08:21:54 -070075endif
76ifeq ($(ART_BUILD_HOST_NDEBUG),true)
77 ART_BUILD_HOST := true
Ian Rogersafd9acc2014-06-17 08:21:54 -070078endif
79ifeq ($(ART_BUILD_HOST_DEBUG),true)
80 ART_BUILD_HOST := true
Ian Rogersafd9acc2014-06-17 08:21:54 -070081endif
82
Igor Murashkin37743352014-11-13 14:38:00 -080083endif # ART_ANDROID_COMMON_BUILD_MK