blob: 94b0fbc9cd208970934aca7daa4ed4164e17e376 [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
Brian Carlstromcdc8de42011-07-19 14:23:17 -070017ART_CPP_EXTENSION := .cc
Carl Shapiro9bf84fd2011-06-17 17:05:25 -070018
Elliott Hughes0af55432011-08-17 18:37:28 -070019ART_C_INCLUDES := \
20 external/gtest/include \
21 external/icu4c/common \
22 external/icu4c/i18n \
buzbeec143c552011-08-20 17:38:58 -070023 external/zlib \
24 art/src \
25 dalvik/libdex
Brian Carlstromb0460ea2011-07-29 10:08:05 -070026
Elliott Hughes1d3f1142011-09-13 12:00:00 -070027art_cflags := \
Elliott Hughes7f40ffc2011-09-04 10:50:01 -070028 -O2 \
Carl Shapiro1fb86202011-06-27 17:43:13 -070029 -ggdb3 \
30 -Wall \
31 -Werror \
32 -Wextra \
33 -Wno-unused-parameter \
Carl Shapiro1fb86202011-06-27 17:43:13 -070034 -Wstrict-aliasing=2 \
35 -fno-align-jumps \
36 -fstrict-aliasing
37
Elliott Hughes1d3f1142011-09-13 12:00:00 -070038ART_HOST_CFLAGS := $(art_cflags) -DANDROID_SMP=1
39
40ART_TARGET_CFLAGS := $(art_cflags)
41ifeq ($(TARGET_CPU_SMP),true)
42 ART_TARGET_CFLAGS += -DANDROID_SMP=1
43else
44 ART_TARGET_CFLAGS += -DANDROID_SMP=0
45endif
46
47
Brian Carlstrom69b15fb2011-09-03 12:25:21 -070048DEX2OAT_SRC_FILES := \
49 src/dex2oat.cc
50
51OATEXEC_SRC_FILES := \
52 src/oatexec.cc
Carl Shapiro9bf84fd2011-06-17 17:05:25 -070053
Brian Carlstrom934486c2011-07-12 23:42:50 -070054LIBART_COMMON_SRC_FILES := \
Carl Shapiroa5d5cfd2011-06-21 12:46:59 -070055 src/assembler.cc \
Ian Rogers2c8f6532011-09-02 17:16:34 -070056 src/assembler_arm.cc \
57 src/assembler_x86.cc \
Elliott Hughes5ea047b2011-09-13 14:38:18 -070058 src/atomic.cc.arm \
Ian Rogersb033c752011-07-20 12:22:35 -070059 src/calling_convention.cc \
Ian Rogers2c8f6532011-09-02 17:16:34 -070060 src/calling_convention_arm.cc \
61 src/calling_convention_x86.cc \
Elliott Hughesa2501992011-08-26 19:39:54 -070062 src/check_jni.cc \
Carl Shapiro0e5d75d2011-07-06 18:28:37 -070063 src/class_linker.cc \
Brian Carlstrom1f870082011-08-23 16:02:11 -070064 src/class_loader.cc \
Brian Carlstrom9ea1cb12011-08-24 23:18:18 -070065 src/compiler.cc \
Brian Carlstrom2cc022b2011-08-25 10:05:39 -070066 src/compiler/Dataflow.cc \
67 src/compiler/Frontend.cc \
68 src/compiler/IntermediateRep.cc \
69 src/compiler/Ralloc.cc \
70 src/compiler/SSATransformation.cc \
71 src/compiler/Utility.cc \
72 src/compiler/codegen/RallocUtil.cc \
73 src/compiler/codegen/arm/ArchUtility.cc \
74 src/compiler/codegen/arm/ArmRallocUtil.cc \
75 src/compiler/codegen/arm/Assemble.cc \
76 src/compiler/codegen/arm/LocalOptimizations.cc \
77 src/compiler/codegen/arm/armv7-a/Codegen.cc \
Elliott Hughes8daa0922011-09-11 13:46:25 -070078 src/dalvik_system_VMStack.cc \
Brian Carlstrom7e49dca2011-07-22 18:07:34 -070079 src/dex_cache.cc \
Carl Shapiro1fb86202011-06-27 17:43:13 -070080 src/dex_file.cc \
Carl Shapiro12eb78e2011-06-24 14:51:06 -070081 src/dex_instruction.cc \
Carl Shapiro0e5d75d2011-07-06 18:28:37 -070082 src/dex_verifier.cc \
Brian Carlstromdb4d5402011-08-09 12:18:28 -070083 src/file.cc \
84 src/file_linux.cc \
Carl Shapiro69759ea2011-07-21 18:13:35 -070085 src/heap.cc \
Brian Carlstrom4a289ed2011-08-16 17:17:49 -070086 src/image.cc \
Brian Carlstromdb4d5402011-08-09 12:18:28 -070087 src/image_writer.cc \
Elliott Hughes6c1a3942011-08-17 15:00:06 -070088 src/indirect_reference_table.cc \
Brian Carlstrom7e93b502011-08-04 14:16:22 -070089 src/intern_table.cc \
Elliott Hughesd369bb72011-09-12 14:41:14 -070090 src/java_lang_Class.cc \
Elliott Hughesbf86d042011-08-31 17:53:14 -070091 src/java_lang_Object.cc \
92 src/java_lang_Runtime.cc \
93 src/java_lang_String.cc \
94 src/java_lang_System.cc \
Elliott Hughes8daa0922011-09-11 13:46:25 -070095 src/java_lang_Thread.cc \
Elliott Hughes1240dad2011-09-09 16:24:50 -070096 src/java_lang_Throwable.cc \
Elliott Hughesbf86d042011-08-31 17:53:14 -070097 src/java_util_concurrent_atomic_AtomicLong.cc \
Ian Rogersb033c752011-07-20 12:22:35 -070098 src/jni_compiler.cc \
Ian Rogersdf20fe02011-07-20 20:34:16 -070099 src/jni_internal.cc \
Ian Rogers2c8f6532011-09-02 17:16:34 -0700100 src/jni_internal_arm.cc \
101 src/jni_internal_x86.cc \
Elliott Hughes42ee1422011-09-06 12:33:32 -0700102 src/logging.cc \
Carl Shapiro69759ea2011-07-21 18:13:35 -0700103 src/mark_stack.cc \
104 src/mark_sweep.cc \
Ian Rogers2c8f6532011-09-02 17:16:34 -0700105 src/managed_register_arm.cc \
106 src/managed_register_x86.cc \
Carl Shapiro1fb86202011-06-27 17:43:13 -0700107 src/memory_region.cc \
Carl Shapiro69759ea2011-07-21 18:13:35 -0700108 src/mspace.c \
Elliott Hughes8daa0922011-09-11 13:46:25 -0700109 src/mutex.cc \
Carl Shapiro3ee755d2011-06-28 12:11:04 -0700110 src/object.cc \
Carl Shapiro69759ea2011-07-21 18:13:35 -0700111 src/object_bitmap.cc \
112 src/offsets.cc \
Brian Carlstromdb4d5402011-08-09 12:18:28 -0700113 src/os_linux.cc \
Elliott Hughes11e45072011-08-16 17:40:46 -0700114 src/reference_table.cc \
Carl Shapirod4e48fd2011-06-30 18:53:29 -0700115 src/runtime.cc \
Elliott Hughese27955c2011-08-26 15:21:24 -0700116 src/signal_catcher.cc \
Carl Shapiro69759ea2011-07-21 18:13:35 -0700117 src/space.cc \
Carl Shapirob5573532011-07-12 18:22:59 -0700118 src/stringpiece.cc \
Elliott Hugheseb4f6142011-07-15 17:43:51 -0700119 src/stringprintf.cc \
Shih-wei Liao31384c52011-09-06 15:27:45 -0700120 src/stub_arm.cc \
121 src/stub_x86.cc \
Elliott Hughes5ee7a8b2011-09-13 16:40:07 -0700122 src/sun_misc_Unsafe.cc \
Brian Carlstromb0460ea2011-07-29 10:08:05 -0700123 src/thread.cc \
Elliott Hughes8daa0922011-09-11 13:46:25 -0700124 src/thread_list.cc \
Elliott Hughes814e4032011-08-23 12:07:56 -0700125 src/utf.cc \
Elliott Hughes11e45072011-08-16 17:40:46 -0700126 src/utils.cc \
buzbee54330722011-08-23 16:46:55 -0700127 src/zip_archive.cc \
128 src/runtime_support.S
Carl Shapiroa5d5cfd2011-06-21 12:46:59 -0700129
Brian Carlstrom934486c2011-07-12 23:42:50 -0700130LIBART_TARGET_SRC_FILES := \
131 $(LIBART_COMMON_SRC_FILES) \
Elliott Hughesffe67362011-07-17 12:09:27 -0700132 src/logging_android.cc \
Ian Rogersb033c752011-07-20 12:22:35 -0700133 src/runtime_android.cc \
Elliott Hughes8daa0922011-09-11 13:46:25 -0700134 src/thread_android.cc \
Ian Rogersb033c752011-07-20 12:22:35 -0700135 src/thread_arm.cc
Carl Shapiroa5d5cfd2011-06-21 12:46:59 -0700136
Brian Carlstrom934486c2011-07-12 23:42:50 -0700137LIBART_HOST_SRC_FILES := \
138 $(LIBART_COMMON_SRC_FILES) \
Elliott Hughesffe67362011-07-17 12:09:27 -0700139 src/logging_linux.cc \
Ian Rogersb033c752011-07-20 12:22:35 -0700140 src/runtime_linux.cc \
Elliott Hughes8daa0922011-09-11 13:46:25 -0700141 src/thread_linux.cc \
Ian Rogersb033c752011-07-20 12:22:35 -0700142 src/thread_x86.cc
Jesse Wilsonc981ace2011-06-22 14:17:14 -0700143
Brian Carlstromcdc8de42011-07-19 14:23:17 -0700144LIBARTTEST_COMMON_SRC_FILES := \
Shih-wei Liao31384c52011-09-06 15:27:45 -0700145 src/base64.cc \
146 src/jni_tests.cc
Brian Carlstromcdc8de42011-07-19 14:23:17 -0700147
Brian Carlstrom934486c2011-07-12 23:42:50 -0700148TEST_COMMON_SRC_FILES := \
Carl Shapiro0e5d75d2011-07-06 18:28:37 -0700149 src/class_linker_test.cc \
Brian Carlstrom7e49dca2011-07-22 18:07:34 -0700150 src/dex_cache_test.cc \
Carl Shapiro1fb86202011-06-27 17:43:13 -0700151 src/dex_file_test.cc \
152 src/dex_instruction_visitor_test.cc \
jeffhaoba5ebb92011-08-25 17:24:37 -0700153 src/dex_verifier_test.cc \
Shih-wei Liao2fb97532011-08-11 16:17:23 -0700154 src/exception_test.cc \
Brian Carlstromdb4d5402011-08-09 12:18:28 -0700155 src/file_test.cc \
Brian Carlstrom1f870082011-08-23 16:02:11 -0700156 src/heap_test.cc \
Brian Carlstromdb4d5402011-08-09 12:18:28 -0700157 src/image_test.cc \
Elliott Hughes6c1a3942011-08-17 15:00:06 -0700158 src/indirect_reference_table_test.cc \
Brian Carlstrom7e93b502011-08-04 14:16:22 -0700159 src/intern_table_test.cc \
Ian Rogerscd2764f2011-09-02 15:38:24 -0700160 src/jni_internal_test.cc \
161 src/jni_compiler_test.cc \
Ian Rogers2c8f6532011-09-02 17:16:34 -0700162 src/managed_register_arm_test.cc \
163 src/managed_register_x86_test.cc \
Carl Shapiro894d0fa2011-06-30 14:48:49 -0700164 src/object_test.cc \
Elliott Hughes11e45072011-08-16 17:40:46 -0700165 src/reference_table_test.cc \
Carl Shapirofc322c72011-07-27 00:20:01 -0700166 src/runtime_test.cc \
Brian Carlstromb0460ea2011-07-29 10:08:05 -0700167 src/space_test.cc \
Elliott Hughes11e45072011-08-16 17:40:46 -0700168 src/utils_test.cc \
buzbeec143c552011-08-20 17:38:58 -0700169 src/zip_archive_test.cc \
170 src/compiler_test.cc
Jesse Wilsonc981ace2011-06-22 14:17:14 -0700171
Brian Carlstrom934486c2011-07-12 23:42:50 -0700172TEST_TARGET_SRC_FILES := \
Ian Rogers2c8f6532011-09-02 17:16:34 -0700173 $(TEST_COMMON_SRC_FILES)
Carl Shapiro008e4122011-06-23 17:27:46 -0700174
Brian Carlstrom934486c2011-07-12 23:42:50 -0700175TEST_HOST_SRC_FILES := \
176 $(TEST_COMMON_SRC_FILES) \
Ian Rogers2c8f6532011-09-02 17:16:34 -0700177 src/assembler_x86_test.cc
Brian Carlstrom9f30b382011-08-28 22:41:38 -0700178
179# subdirectories of test/
180TEST_DEX_DIRECTORIES := \
181 AllFields \
182 CreateMethodDescriptor \
183 Fibonacci \
Brian Carlstrom69b15fb2011-09-03 12:25:21 -0700184 HelloWorld \
Brian Carlstrom9f30b382011-08-28 22:41:38 -0700185 IntMath \
186 Interfaces \
187 Main \
188 MyClass \
189 MyClassNatives \
190 Nested \
191 ProtoCompare \
192 ProtoCompare2 \
193 StaticLeafMethods \
194 Statics \
Elliott Hughes0f4c41d2011-09-04 14:58:03 -0700195 SystemMethods \
buzbee109bd6a2011-09-06 13:58:41 -0700196 Invoke \
Brian Carlstrom9f30b382011-08-28 22:41:38 -0700197 XandY
Brian Carlstrom4b620ff2011-09-11 01:11:01 -0700198
199ART_BUILD_TARGET := false
200ART_BUILD_HOST := false
201ifeq ($(ART_BUILD_TARGET_NDEBUG),true)
202 ART_BUILD_TARGET := true
203endif
204ifeq ($(ART_BUILD_TARGET_DEBUG),true)
205 ART_BUILD_TARGET := true
206endif
207ifeq ($(ART_BUILD_HOST_NDEBUG),true)
208 ART_BUILD_HOST := true
209endif
210ifeq ($(ART_BUILD_HOST_DEBUG),true)
211 ART_BUILD_HOST := true
212endif