blob: 74eee0b2cf893715dd26e78a38f0f75d7014ce7a [file] [log] [blame]
Carl Shapiro7b216702011-06-17 15:09:26 -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
Shih-wei Liaod1fec812012-02-13 09:51:10 -080017# Use llvm as the backend
18ifneq ($(wildcard art/USE_LLVM_COMPILER),)
19ART_USE_LLVM_COMPILER := true
20else
21ART_USE_LLVM_COMPILER := false
22endif
23
buzbee31a4a6f2012-02-28 15:36:15 -080024# Build for MIPS target (temporary)
25ifneq ($(wildcard art/MIPS_TARGET),)
26ART_MIPS_TARGET := true
27else
28ART_MIPS_TARGET := false
29endif
30
buzbeea7678db2012-03-05 15:35:46 -080031# Build for x86 target (temporary)
32ifneq ($(wildcard art/X86_TARGET),)
33ART_X86_TARGET := true
34else
35ART_X86_TARGET := false
36endif
37
Shih-wei Liaod1fec812012-02-13 09:51:10 -080038ifeq ($(ART_USE_LLVM_COMPILER),true)
39LLVM_ROOT_PATH := external/llvm
40include $(LLVM_ROOT_PATH)/llvm.mk
41endif
42
Brian Carlstrom32b4b2a2012-01-31 16:21:40 -080043# directory used for gtests on device
44ART_NATIVETEST_DIR := /data/nativetest/art
45ART_NATIVETEST_OUT := $(TARGET_OUT_DATA_NATIVE_TESTS)/art
46
Brian Carlstrom47a0d5a2011-10-12 21:20:05 -070047# directory used for tests on device
48ART_TEST_DIR := /data/art-test
49ART_TEST_OUT := $(TARGET_OUT_DATA)/art-test
50
Brian Carlstromcdc8de42011-07-19 14:23:17 -070051ART_CPP_EXTENSION := .cc
Carl Shapiro9bf84fd2011-06-17 17:05:25 -070052
Elliott Hughes0af55432011-08-17 18:37:28 -070053ART_C_INCLUDES := \
54 external/gtest/include \
55 external/icu4c/common \
56 external/icu4c/i18n \
Elliott Hughes8d768a92011-09-14 16:35:25 -070057 external/valgrind/dynamic_annotations \
buzbeec143c552011-08-20 17:38:58 -070058 external/zlib \
Elliott Hughesadb8c672012-03-06 16:49:32 -080059 art/src
Brian Carlstromb0460ea2011-07-29 10:08:05 -070060
Elliott Hughes1d3f1142011-09-13 12:00:00 -070061art_cflags := \
Ian Rogers646c3d72012-02-17 23:55:19 -080062 -O2 \
Carl Shapiro1fb86202011-06-27 17:43:13 -070063 -ggdb3 \
64 -Wall \
65 -Werror \
66 -Wextra \
67 -Wno-unused-parameter \
Elliott Hugheseaa200d2012-01-05 16:30:31 -080068 -Wstrict-aliasing=3 \
Carl Shapiro1fb86202011-06-27 17:43:13 -070069 -fno-align-jumps \
70 -fstrict-aliasing
71
Shih-wei Liaod1fec812012-02-13 09:51:10 -080072ifeq ($(ART_USE_LLVM_COMPILER),true)
Shih-wei Liao50e51022012-02-23 23:42:15 -080073art_cflags += -DART_USE_LLVM_COMPILER=1
Shih-wei Liaod1fec812012-02-13 09:51:10 -080074endif
75
buzbee31a4a6f2012-02-28 15:36:15 -080076# (temp) for testing
77ifeq ($(ART_MIPS_TARGET),true)
78art_cflags += -D__mips_hard_float
79endif
80
Brian Carlstrom69d7a6b2011-12-15 17:31:21 -080081ifeq ($(HOST_OS),linux)
Shih-wei Liao24782c62012-01-08 12:46:11 -080082 art_non_debug_cflags := \
Elliott Hughes3b6baaa2011-10-14 19:13:56 -070083 -Wframe-larger-than=1728
Brian Carlstrom69d7a6b2011-12-15 17:31:21 -080084endif
Elliott Hughes3b6baaa2011-10-14 19:13:56 -070085
86art_debug_cflags := \
Elliott Hughes06e3ad42012-02-07 14:51:57 -080087 -DDYNAMIC_ANNOTATIONS_ENABLED=1 \
Elliott Hughes3b6baaa2011-10-14 19:13:56 -070088 -UNDEBUG
89
Elliott Hughes1d3f1142011-09-13 12:00:00 -070090ART_HOST_CFLAGS := $(art_cflags) -DANDROID_SMP=1
91
92ART_TARGET_CFLAGS := $(art_cflags)
93ifeq ($(TARGET_CPU_SMP),true)
94 ART_TARGET_CFLAGS += -DANDROID_SMP=1
95else
96 ART_TARGET_CFLAGS += -DANDROID_SMP=0
97endif
98
Brian Carlstrom89521892011-12-07 22:05:07 -080099# To use oprofile_android --callgraph, uncomment this and recompile with "mmm art -B -j16"
100# ART_TARGET_CFLAGS += -fno-omit-frame-pointer -marm -mapcs
101
Elliott Hughes3b6baaa2011-10-14 19:13:56 -0700102ART_HOST_NON_DEBUG_CFLAGS := $(art_non_debug_cflags)
103ART_TARGET_NON_DEBUG_CFLAGS := $(art_non_debug_cflags)
104
Brian Carlstrom86927212011-09-15 11:31:11 -0700105# TODO: move -fkeep-inline-functions to art_debug_cflags when target gcc > 4.4
Elliott Hughes1ba27142012-01-20 15:32:00 -0800106ART_HOST_DEBUG_CFLAGS := $(art_debug_cflags) -fkeep-inline-functions
Elliott Hughesad6c9c32012-01-19 17:39:12 -0800107
108ifneq ($(HOST_OS),linux)
109 # Some Mac OS pthread header files are broken with -fkeep-inline-functions.
Elliott Hughes34cf5142012-01-20 16:39:13 -0800110 ART_HOST_DEBUG_CFLAGS := $(filter-out -fkeep-inline-functions,$(ART_HOST_DEBUG_CFLAGS))
Elliott Hughesad6c9c32012-01-19 17:39:12 -0800111endif
112
Brian Carlstrom86927212011-09-15 11:31:11 -0700113ART_TARGET_DEBUG_CFLAGS := $(art_debug_cflags)
Elliott Hughes1d3f1142011-09-13 12:00:00 -0700114
Brian Carlstrom69b15fb2011-09-03 12:25:21 -0700115DEX2OAT_SRC_FILES := \
116 src/dex2oat.cc
117
Brian Carlstrom78128a62011-09-15 17:21:19 -0700118OATDUMP_SRC_FILES := \
Ian Rogers3a5c1ce2012-02-29 10:06:46 -0800119 src/oatdump.cc \
120 src/disassembler.cc \
121 src/disassembler_arm.cc
Brian Carlstrom78128a62011-09-15 17:21:19 -0700122
Brian Carlstrom69b15fb2011-09-03 12:25:21 -0700123OATEXEC_SRC_FILES := \
124 src/oatexec.cc
Carl Shapiro9bf84fd2011-06-17 17:05:25 -0700125
Brian Carlstrom934486c2011-07-12 23:42:50 -0700126LIBART_COMMON_SRC_FILES := \
Carl Shapiroa5d5cfd2011-06-21 12:46:59 -0700127 src/assembler.cc \
Ian Rogers2c8f6532011-09-02 17:16:34 -0700128 src/assembler_arm.cc \
129 src/assembler_x86.cc \
Elliott Hughes5ea047b2011-09-13 14:38:18 -0700130 src/atomic.cc.arm \
Ian Rogersb033c752011-07-20 12:22:35 -0700131 src/calling_convention.cc \
Ian Rogers2c8f6532011-09-02 17:16:34 -0700132 src/calling_convention_arm.cc \
133 src/calling_convention_x86.cc \
Ian Rogers5d76c432011-10-31 21:42:49 -0700134 src/card_table.cc \
Ian Rogersc8b306f2012-02-17 21:34:44 -0800135 src/constants.cc \
Ian Rogersbdb03912011-09-14 00:55:44 -0700136 src/context.cc \
Elliott Hughes85d15452011-09-16 17:33:01 -0700137 src/context_arm.cc.arm \
138 src/context_x86.cc \
Elliott Hughesa2501992011-08-26 19:39:54 -0700139 src/check_jni.cc \
Carl Shapiro0e5d75d2011-07-06 18:28:37 -0700140 src/class_linker.cc \
Brian Carlstrom1f870082011-08-23 16:02:11 -0700141 src/class_loader.cc \
Brian Carlstrom3320cf42011-10-04 14:58:28 -0700142 src/compiled_method.cc \
Brian Carlstrom9ea1cb12011-08-24 23:18:18 -0700143 src/compiler.cc \
Brian Carlstromf91c8c32011-09-21 17:30:34 -0700144 src/dalvik_system_DexFile.cc \
Elliott Hughes01158d72011-09-19 19:47:10 -0700145 src/dalvik_system_VMDebug.cc \
Elliott Hughes7ede61e2011-09-14 18:18:06 -0700146 src/dalvik_system_VMRuntime.cc \
Elliott Hughes8daa0922011-09-11 13:46:25 -0700147 src/dalvik_system_VMStack.cc \
Elliott Hughes01158d72011-09-19 19:47:10 -0700148 src/dalvik_system_Zygote.cc \
Elliott Hughes872d4ec2011-10-21 17:07:15 -0700149 src/debugger.cc \
Brian Carlstrom7e49dca2011-07-22 18:07:34 -0700150 src/dex_cache.cc \
Carl Shapiro1fb86202011-06-27 17:43:13 -0700151 src/dex_file.cc \
jeffhao10037c82012-01-23 15:06:23 -0800152 src/dex_file_verifier.cc \
Carl Shapiro12eb78e2011-06-24 14:51:06 -0700153 src/dex_instruction.cc \
Carl Shapiro0e5d75d2011-07-06 18:28:37 -0700154 src/dex_verifier.cc \
Ian Rogers30fab402012-01-23 15:43:46 -0800155 src/dlmalloc.c \
Brian Carlstromdb4d5402011-08-09 12:18:28 -0700156 src/file.cc \
157 src/file_linux.cc \
Carl Shapiro69759ea2011-07-21 18:13:35 -0700158 src/heap.cc \
Elliott Hughes5e71b522011-10-20 13:12:32 -0700159 src/heap_bitmap.cc \
Jesse Wilsonc4824e62011-11-01 14:39:04 -0400160 src/hprof/hprof.cc \
Jesse Wilson0c54ac12011-11-09 15:14:05 -0500161 src/hprof/hprof_record.cc \
Brian Carlstrom4a289ed2011-08-16 17:17:49 -0700162 src/image.cc \
Brian Carlstromdb4d5402011-08-09 12:18:28 -0700163 src/image_writer.cc \
Elliott Hughes6c1a3942011-08-17 15:00:06 -0700164 src/indirect_reference_table.cc \
Brian Carlstrom7e93b502011-08-04 14:16:22 -0700165 src/intern_table.cc \
Elliott Hughesd369bb72011-09-12 14:41:14 -0700166 src/java_lang_Class.cc \
Elliott Hughesbf86d042011-08-31 17:53:14 -0700167 src/java_lang_Object.cc \
168 src/java_lang_Runtime.cc \
169 src/java_lang_String.cc \
170 src/java_lang_System.cc \
Elliott Hughes8daa0922011-09-11 13:46:25 -0700171 src/java_lang_Thread.cc \
Elliott Hughes1240dad2011-09-09 16:24:50 -0700172 src/java_lang_Throwable.cc \
Elliott Hughes64bf5a32011-09-20 14:43:12 -0700173 src/java_lang_VMClassLoader.cc \
Brian Carlstrom5b8e4c82011-09-18 01:38:59 -0700174 src/java_lang_reflect_Array.cc \
Elliott Hughes2a20cfd2011-09-23 19:30:41 -0700175 src/java_lang_reflect_Constructor.cc \
Brian Carlstromf867b6f2011-09-16 12:17:25 -0700176 src/java_lang_reflect_Field.cc \
177 src/java_lang_reflect_Method.cc \
Jesse Wilson95caa792011-10-12 18:14:17 -0400178 src/java_lang_reflect_Proxy.cc \
Elliott Hughesbf86d042011-08-31 17:53:14 -0700179 src/java_util_concurrent_atomic_AtomicLong.cc \
Elliott Hughes872d4ec2011-10-21 17:07:15 -0700180 src/jdwp/jdwp_constants.cc \
181 src/jdwp/jdwp_event.cc \
182 src/jdwp/jdwp_expand_buf.cc \
183 src/jdwp/jdwp_handler.cc \
184 src/jdwp/jdwp_main.cc \
185 src/jdwp/jdwp_socket.cc \
Ian Rogersdf20fe02011-07-20 20:34:16 -0700186 src/jni_internal.cc \
Elliott Hughes42ee1422011-09-06 12:33:32 -0700187 src/logging.cc \
Carl Shapiro69759ea2011-07-21 18:13:35 -0700188 src/mark_stack.cc \
189 src/mark_sweep.cc \
Ian Rogers2c8f6532011-09-02 17:16:34 -0700190 src/managed_register_arm.cc \
191 src/managed_register_x86.cc \
Brian Carlstrom27ec9612011-09-19 20:20:38 -0700192 src/mem_map.cc \
Carl Shapiro1fb86202011-06-27 17:43:13 -0700193 src/memory_region.cc \
Elliott Hughes54e7df12011-09-16 11:47:04 -0700194 src/monitor.cc \
Elliott Hughes8daa0922011-09-11 13:46:25 -0700195 src/mutex.cc \
Brian Carlstrome24fa612011-09-29 00:53:55 -0700196 src/oat.cc \
197 src/oat_file.cc \
198 src/oat_writer.cc \
Carl Shapiro3ee755d2011-06-28 12:11:04 -0700199 src/object.cc \
Carl Shapiro69759ea2011-07-21 18:13:35 -0700200 src/offsets.cc \
Brian Carlstrom395520e2011-09-25 19:35:00 -0700201 src/org_apache_harmony_dalvik_ddmc_DdmServer.cc \
Elliott Hughesf6a1e1e2011-10-25 16:28:04 -0700202 src/org_apache_harmony_dalvik_ddmc_DdmVmInternal.cc \
Brian Carlstromdb4d5402011-08-09 12:18:28 -0700203 src/os_linux.cc \
Brian Carlstromae826982011-11-09 01:33:42 -0800204 src/primitive.cc \
Elliott Hughes11e45072011-08-16 17:40:46 -0700205 src/reference_table.cc \
Elliott Hughes418d20f2011-09-22 14:00:39 -0700206 src/reflection.cc \
Carl Shapirod4e48fd2011-06-30 18:53:29 -0700207 src/runtime.cc \
Shih-wei Liaoa8a9c342012-03-03 22:35:16 -0800208 src/runtime_support.cc \
Elliott Hughese27955c2011-08-26 15:21:24 -0700209 src/signal_catcher.cc \
Carl Shapiro69759ea2011-07-21 18:13:35 -0700210 src/space.cc \
Elliott Hughes68e76522011-10-05 13:22:16 -0700211 src/stack.cc \
Carl Shapirob5573532011-07-12 18:22:59 -0700212 src/stringpiece.cc \
Elliott Hugheseb4f6142011-07-15 17:43:51 -0700213 src/stringprintf.cc \
Shih-wei Liao31384c52011-09-06 15:27:45 -0700214 src/stub_arm.cc \
215 src/stub_x86.cc \
Elliott Hughes5ee7a8b2011-09-13 16:40:07 -0700216 src/sun_misc_Unsafe.cc \
Brian Carlstromb0460ea2011-07-29 10:08:05 -0700217 src/thread.cc \
Elliott Hughes8daa0922011-09-11 13:46:25 -0700218 src/thread_list.cc \
jeffhaoe343b762011-12-05 16:36:44 -0800219 src/trace.cc \
Elliott Hughes814e4032011-08-23 12:07:56 -0700220 src/utf.cc \
Elliott Hughes11e45072011-08-16 17:40:46 -0700221 src/utils.cc \
Elliott Hughes5c9f0b42011-12-15 18:15:46 -0800222 src/zip_archive.cc
Carl Shapiroa5d5cfd2011-06-21 12:46:59 -0700223
Shih-wei Liaod1fec812012-02-13 09:51:10 -0800224ifeq ($(ART_USE_LLVM_COMPILER),true)
225LIBART_COMMON_SRC_FILES += \
Logan Chien8b977d32012-02-21 19:14:55 +0800226 src/compiler_llvm/compilation_unit.cc \
Shih-wei Liaod1fec812012-02-13 09:51:10 -0800227 src/compiler_llvm/compiler_llvm.cc \
Logan Chienc670a8d2011-12-20 21:25:56 +0800228 src/compiler_llvm/dalvik_reg.cc \
Shih-wei Liaod1fec812012-02-13 09:51:10 -0800229 src/compiler_llvm/frontend.cc \
Logan Chiene75a8cc2012-02-24 12:26:43 +0800230 src/compiler_llvm/generated/art_module.cc \
Logan Chienfca7e872011-12-20 20:08:22 +0800231 src/compiler_llvm/inferred_reg_category_map.cc \
Logan Chiene75a8cc2012-02-24 12:26:43 +0800232 src/compiler_llvm/ir_builder.cc \
Logan Chien88894ee2012-02-13 16:42:22 +0800233 src/compiler_llvm/jni_compiler.cc \
Logan Chien7e6e33d2012-01-31 09:22:09 +0800234 src/compiler_llvm/method_compiler.cc \
Shih-wei Liaoa8a9c342012-03-03 22:35:16 -0800235 src/compiler_llvm/runtime_support_llvm.cc \
Logan Chienf04364f2012-02-10 12:01:39 +0800236 src/compiler_llvm/upcall_compiler.cc \
Logan Chien7e6e33d2012-01-31 09:22:09 +0800237 src/compiler_llvm/utils_llvm.cc
Shih-wei Liaod1fec812012-02-13 09:51:10 -0800238else
239LIBART_COMMON_SRC_FILES += \
240 src/compiler/Dataflow.cc \
241 src/compiler/Frontend.cc \
242 src/compiler/IntermediateRep.cc \
243 src/compiler/Ralloc.cc \
244 src/compiler/SSATransformation.cc \
245 src/compiler/Utility.cc \
246 src/compiler/codegen/RallocUtil.cc \
Logan Chien9787ac42012-03-06 18:24:03 +0800247 src/jni_compiler.cc \
buzbee31a4a6f2012-02-28 15:36:15 -0800248 src/jni_internal_arm.cc \
249 src/jni_internal_x86.cc
250ifeq ($(ART_MIPS_TARGET),true)
251LIBART_COMMON_SRC_FILES += \
252 src/compiler/codegen/mips/ArchUtility.cc \
253 src/compiler/codegen/mips/MipsRallocUtil.cc \
254 src/compiler/codegen/mips/Assemble.cc \
255 src/compiler/codegen/mips/mips/Codegen.cc
256else
buzbeea7678db2012-03-05 15:35:46 -0800257ifeq ($(ART_X86_TARGET),true)
258LIBART_COMMON_SRC_FILES += \
259 src/compiler/codegen/x86/ArchUtility.cc \
260 src/compiler/codegen/x86/X86RallocUtil.cc \
261 src/compiler/codegen/x86/Assemble.cc \
262 src/compiler/codegen/x86/x86/Codegen.cc
263else
buzbee31a4a6f2012-02-28 15:36:15 -0800264LIBART_COMMON_SRC_FILES += \
Shih-wei Liaod1fec812012-02-13 09:51:10 -0800265 src/compiler/codegen/arm/ArchUtility.cc \
266 src/compiler/codegen/arm/ArmRallocUtil.cc \
267 src/compiler/codegen/arm/Assemble.cc \
buzbee31a4a6f2012-02-28 15:36:15 -0800268 src/compiler/codegen/arm/armv7-a/Codegen.cc
269endif
Shih-wei Liaod1fec812012-02-13 09:51:10 -0800270endif
buzbeea7678db2012-03-05 15:35:46 -0800271endif
Shih-wei Liaod1fec812012-02-13 09:51:10 -0800272
Brian Carlstrom934486c2011-07-12 23:42:50 -0700273LIBART_TARGET_SRC_FILES := \
274 $(LIBART_COMMON_SRC_FILES) \
Elliott Hughes872d4ec2011-10-21 17:07:15 -0700275 src/jdwp/jdwp_adb.cc \
Elliott Hughesffe67362011-07-17 12:09:27 -0700276 src/logging_android.cc \
Elliott Hughesfc861622011-10-17 17:57:47 -0700277 src/monitor_android.cc \
Ian Rogersb033c752011-07-20 12:22:35 -0700278 src/runtime_android.cc \
Elliott Hughes8daa0922011-09-11 13:46:25 -0700279 src/thread_android.cc \
Elliott Hughes5c9f0b42011-12-15 18:15:46 -0800280 src/thread_arm.cc \
281 src/runtime_support_arm.S
Carl Shapiroa5d5cfd2011-06-21 12:46:59 -0700282
Brian Carlstrom934486c2011-07-12 23:42:50 -0700283LIBART_HOST_SRC_FILES := \
284 $(LIBART_COMMON_SRC_FILES) \
Elliott Hughesffe67362011-07-17 12:09:27 -0700285 src/logging_linux.cc \
Elliott Hughesfc861622011-10-17 17:57:47 -0700286 src/monitor_linux.cc \
Ian Rogersb033c752011-07-20 12:22:35 -0700287 src/runtime_linux.cc \
Elliott Hughes8daa0922011-09-11 13:46:25 -0700288 src/thread_linux.cc \
Elliott Hughes5c9f0b42011-12-15 18:15:46 -0800289 src/thread_x86.cc \
290 src/runtime_support_x86.S
Jesse Wilsonc981ace2011-06-22 14:17:14 -0700291
Brian Carlstromcdc8de42011-07-19 14:23:17 -0700292LIBARTTEST_COMMON_SRC_FILES := \
Shih-wei Liaoa6af3c32011-10-17 15:25:11 -0700293 test/StackWalk/stack_walk_jni.cc \
294 test/ReferenceMap/stack_walk_refmap_jni.cc
Brian Carlstromcdc8de42011-07-19 14:23:17 -0700295
Brian Carlstrom934486c2011-07-12 23:42:50 -0700296TEST_COMMON_SRC_FILES := \
Carl Shapiro0e5d75d2011-07-06 18:28:37 -0700297 src/class_linker_test.cc \
Brian Carlstromaded5f72011-10-07 17:15:04 -0700298 src/compiler_test.cc \
Brian Carlstrom7e49dca2011-07-22 18:07:34 -0700299 src/dex_cache_test.cc \
Carl Shapiro1fb86202011-06-27 17:43:13 -0700300 src/dex_file_test.cc \
301 src/dex_instruction_visitor_test.cc \
jeffhaoba5ebb92011-08-25 17:24:37 -0700302 src/dex_verifier_test.cc \
Shih-wei Liao2fb97532011-08-11 16:17:23 -0700303 src/exception_test.cc \
Brian Carlstromdb4d5402011-08-09 12:18:28 -0700304 src/file_test.cc \
Brian Carlstrom1f870082011-08-23 16:02:11 -0700305 src/heap_test.cc \
Brian Carlstromdb4d5402011-08-09 12:18:28 -0700306 src/image_test.cc \
Elliott Hughes6c1a3942011-08-17 15:00:06 -0700307 src/indirect_reference_table_test.cc \
Brian Carlstrom7e93b502011-08-04 14:16:22 -0700308 src/intern_table_test.cc \
Ian Rogerscd2764f2011-09-02 15:38:24 -0700309 src/jni_internal_test.cc \
310 src/jni_compiler_test.cc \
Ian Rogers2c8f6532011-09-02 17:16:34 -0700311 src/managed_register_arm_test.cc \
312 src/managed_register_x86_test.cc \
Brian Carlstromcd74c4b2012-01-23 13:21:00 -0800313 src/mutex_test.cc \
Brian Carlstrome24fa612011-09-29 00:53:55 -0700314 src/oat_test.cc \
Carl Shapiro894d0fa2011-06-30 14:48:49 -0700315 src/object_test.cc \
Elliott Hughes11e45072011-08-16 17:40:46 -0700316 src/reference_table_test.cc \
Carl Shapirofc322c72011-07-27 00:20:01 -0700317 src/runtime_test.cc \
Brian Carlstromb0460ea2011-07-29 10:08:05 -0700318 src/space_test.cc \
Elliott Hughes11e45072011-08-16 17:40:46 -0700319 src/utils_test.cc \
Brian Carlstromaded5f72011-10-07 17:15:04 -0700320 src/zip_archive_test.cc
Jesse Wilsonc981ace2011-06-22 14:17:14 -0700321
Logan Chien7e6e33d2012-01-31 09:22:09 +0800322ifeq ($(ART_USE_LLVM_COMPILER),true)
323TEST_COMMON_SRC_FILES += \
324 src/compiler_llvm/utils_llvm_test.cc
325endif
326
Brian Carlstrom934486c2011-07-12 23:42:50 -0700327TEST_TARGET_SRC_FILES := \
Ian Rogers2c8f6532011-09-02 17:16:34 -0700328 $(TEST_COMMON_SRC_FILES)
Carl Shapiro008e4122011-06-23 17:27:46 -0700329
Brian Carlstrom934486c2011-07-12 23:42:50 -0700330TEST_HOST_SRC_FILES := \
331 $(TEST_COMMON_SRC_FILES) \
Ian Rogers2c8f6532011-09-02 17:16:34 -0700332 src/assembler_x86_test.cc
Brian Carlstrom9f30b382011-08-28 22:41:38 -0700333
Brian Carlstrom32b4b2a2012-01-31 16:21:40 -0800334# subdirectories of test/ which are used as inputs for gtests
Brian Carlstrom9f30b382011-08-28 22:41:38 -0700335TEST_DEX_DIRECTORIES := \
Shih-wei Liao303b01e2011-09-14 00:46:13 -0700336 AbstractMethod \
Brian Carlstrom9f30b382011-08-28 22:41:38 -0700337 AllFields \
Ian Rogers0571d352011-11-03 19:51:38 -0700338 CreateMethodSignature \
Brian Carlstrom33f741e2011-10-03 11:24:05 -0700339 ExceptionHandle \
Brian Carlstrom9f30b382011-08-28 22:41:38 -0700340 IntMath \
341 Interfaces \
342 Main \
343 MyClass \
344 MyClassNatives \
345 Nested \
346 ProtoCompare \
347 ProtoCompare2 \
348 StaticLeafMethods \
349 Statics \
jeffhaoabcfde32011-09-29 15:05:18 -0700350 StaticsFromCode \
Brian Carlstrom9f30b382011-08-28 22:41:38 -0700351 XandY
Brian Carlstrom4b620ff2011-09-11 01:11:01 -0700352
Brian Carlstrom32b4b2a2012-01-31 16:21:40 -0800353# subdirectories of test/ which are used with test-art-target-oat
354# Declare the simplest tests (Main, HelloWorld, and Fibonacci) first, the rest are alphabetical
355TEST_OAT_DIRECTORIES := \
356 Main \
357 HelloWorld \
358 Fibonacci \
359 \
360 ExceptionTest \
361 GrowthLimit \
362 IntMath \
363 Invoke \
364 MemUsage \
365 ParallelGC \
366 ReferenceMap \
367 ReflectionTest \
368 StackWalk \
369 ThreadStress
370
371# TODO: Enable when the StackWalk2 tests are passing
372# StackWalk2 \
373
Brian Carlstrom4b620ff2011-09-11 01:11:01 -0700374ART_BUILD_TARGET := false
375ART_BUILD_HOST := false
376ifeq ($(ART_BUILD_TARGET_NDEBUG),true)
377 ART_BUILD_TARGET := true
378endif
379ifeq ($(ART_BUILD_TARGET_DEBUG),true)
380 ART_BUILD_TARGET := true
381endif
382ifeq ($(ART_BUILD_HOST_NDEBUG),true)
383 ART_BUILD_HOST := true
384endif
385ifeq ($(ART_BUILD_HOST_DEBUG),true)
386 ART_BUILD_HOST := true
387endif