Android.common.mk revision cd2764fda5dc4eeccb0c66fcc06eb91f70b98e24
17b21670581d13db32f1384a3b2692bcfc8f57320Carl Shapiro#
27b21670581d13db32f1384a3b2692bcfc8f57320Carl Shapiro# Copyright (C) 2011 The Android Open Source Project
37b21670581d13db32f1384a3b2692bcfc8f57320Carl Shapiro#
47b21670581d13db32f1384a3b2692bcfc8f57320Carl Shapiro# Licensed under the Apache License, Version 2.0 (the "License");
57b21670581d13db32f1384a3b2692bcfc8f57320Carl Shapiro# you may not use this file except in compliance with the License.
67b21670581d13db32f1384a3b2692bcfc8f57320Carl Shapiro# You may obtain a copy of the License at
77b21670581d13db32f1384a3b2692bcfc8f57320Carl Shapiro#
87b21670581d13db32f1384a3b2692bcfc8f57320Carl Shapiro#      http://www.apache.org/licenses/LICENSE-2.0
97b21670581d13db32f1384a3b2692bcfc8f57320Carl Shapiro#
107b21670581d13db32f1384a3b2692bcfc8f57320Carl Shapiro# Unless required by applicable law or agreed to in writing, software
117b21670581d13db32f1384a3b2692bcfc8f57320Carl Shapiro# distributed under the License is distributed on an "AS IS" BASIS,
127b21670581d13db32f1384a3b2692bcfc8f57320Carl Shapiro# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
137b21670581d13db32f1384a3b2692bcfc8f57320Carl Shapiro# See the License for the specific language governing permissions and
147b21670581d13db32f1384a3b2692bcfc8f57320Carl Shapiro# limitations under the License.
157b21670581d13db32f1384a3b2692bcfc8f57320Carl Shapiro#
167b21670581d13db32f1384a3b2692bcfc8f57320Carl Shapiro
17cdc8de4642ca447a7ed205f0d2203cb217e48aadBrian CarlstromART_CPP_EXTENSION := .cc
189bf84fd5b69f17ad3e3dca37aa021bdc4246259eCarl Shapiro
190af5543f8ea20c3e655b2d748a1b7dcf283792feElliott HughesART_C_INCLUDES := \
200af5543f8ea20c3e655b2d748a1b7dcf283792feElliott Hughes	external/gtest/include \
210af5543f8ea20c3e655b2d748a1b7dcf283792feElliott Hughes	external/icu4c/common \
220af5543f8ea20c3e655b2d748a1b7dcf283792feElliott Hughes	external/icu4c/i18n \
23c143c55718342519db5398e41dda31422cf16c79buzbee	external/zlib \
24c143c55718342519db5398e41dda31422cf16c79buzbee	art/src \
25c143c55718342519db5398e41dda31422cf16c79buzbee	dalvik/libdex
26b0460eaa2cb131f1dbdd5a7217bd36b9a9f1b995Brian Carlstrom
27cdc8de4642ca447a7ed205f0d2203cb217e48aadBrian CarlstromART_CFLAGS := \
281fb8620309a4e94d11879aabc33364acfa733904Carl Shapiro	-O0 \
291fb8620309a4e94d11879aabc33364acfa733904Carl Shapiro	-ggdb3 \
301fb8620309a4e94d11879aabc33364acfa733904Carl Shapiro	-Wall \
311fb8620309a4e94d11879aabc33364acfa733904Carl Shapiro	-Werror \
321fb8620309a4e94d11879aabc33364acfa733904Carl Shapiro	-Wextra \
331fb8620309a4e94d11879aabc33364acfa733904Carl Shapiro	-Wno-unused-parameter \
341fb8620309a4e94d11879aabc33364acfa733904Carl Shapiro	-Wstrict-aliasing=2 \
351fb8620309a4e94d11879aabc33364acfa733904Carl Shapiro	-fno-align-jumps \
361fb8620309a4e94d11879aabc33364acfa733904Carl Shapiro	-fstrict-aliasing
371fb8620309a4e94d11879aabc33364acfa733904Carl Shapiro
38934486cf07c578b6494417ca5dcbae89cf04b019Brian CarlstromAEXEC_SRC_FILES := \
399bf84fd5b69f17ad3e3dca37aa021bdc4246259eCarl Shapiro	src/main.cc
409bf84fd5b69f17ad3e3dca37aa021bdc4246259eCarl Shapiro
41934486cf07c578b6494417ca5dcbae89cf04b019Brian CarlstromLIBART_COMMON_SRC_FILES := \
42a5d5cfda6239d8876937e75eba43222f639d2447Carl Shapiro	src/assembler.cc \
43b033c75ebda80ac75f936366fe78d1edf5cec937Ian Rogers	src/calling_convention.cc \
44a2501990dd0f68baf38ce19251949d7bb3ecfe5aElliott Hughes	src/check_jni.cc \
450e5d75d5ca2b8a44fab0c862276a466cbab39859Carl Shapiro	src/class_linker.cc \
461f87008b165d26541d832ff805250afdc89c253dBrian Carlstrom	src/class_loader.cc \
479ea1cb1a22be5b85dc2622e3836c46a1c48e3f25Brian Carlstrom	src/compiler.cc \
482cc022b653e1e84eed2522254ec684bd097572b8Brian Carlstrom	src/compiler/Dataflow.cc \
492cc022b653e1e84eed2522254ec684bd097572b8Brian Carlstrom	src/compiler/Frontend.cc \
502cc022b653e1e84eed2522254ec684bd097572b8Brian Carlstrom	src/compiler/IntermediateRep.cc \
512cc022b653e1e84eed2522254ec684bd097572b8Brian Carlstrom	src/compiler/Ralloc.cc \
522cc022b653e1e84eed2522254ec684bd097572b8Brian Carlstrom	src/compiler/SSATransformation.cc \
532cc022b653e1e84eed2522254ec684bd097572b8Brian Carlstrom	src/compiler/Utility.cc \
542cc022b653e1e84eed2522254ec684bd097572b8Brian Carlstrom	src/compiler/codegen/RallocUtil.cc \
552cc022b653e1e84eed2522254ec684bd097572b8Brian Carlstrom	src/compiler/codegen/arm/ArchUtility.cc \
562cc022b653e1e84eed2522254ec684bd097572b8Brian Carlstrom	src/compiler/codegen/arm/ArmRallocUtil.cc \
572cc022b653e1e84eed2522254ec684bd097572b8Brian Carlstrom	src/compiler/codegen/arm/Assemble.cc \
582cc022b653e1e84eed2522254ec684bd097572b8Brian Carlstrom	src/compiler/codegen/arm/LocalOptimizations.cc \
592cc022b653e1e84eed2522254ec684bd097572b8Brian Carlstrom	src/compiler/codegen/arm/armv7-a/Codegen.cc \
607b1b86d68244b0bb4ea3f43505eb45fdd46814d6buzbee	src/compiler/RuntimeUtilities.cc \
617e49dca262933bc30cbc8b9f07cfc8cce2343389Brian Carlstrom	src/dex_cache.cc \
621fb8620309a4e94d11879aabc33364acfa733904Carl Shapiro	src/dex_file.cc \
6312eb78e651f13f2c1f0c2c922048a5a213253adfCarl Shapiro	src/dex_instruction.cc \
640e5d75d5ca2b8a44fab0c862276a466cbab39859Carl Shapiro	src/dex_verifier.cc \
65db4d54081f09abcbe97ffdf615874f2809a9e777Brian Carlstrom	src/file.cc \
66db4d54081f09abcbe97ffdf615874f2809a9e777Brian Carlstrom	src/file_linux.cc \
6769759eaa6fd4386f1e6d8748052ad221087b3476Carl Shapiro	src/heap.cc \
684a289ed61242964b921434de7d375f46480472a1Brian Carlstrom	src/image.cc \
69db4d54081f09abcbe97ffdf615874f2809a9e777Brian Carlstrom	src/image_writer.cc \
706c1a394b47c85c8d1723fc3b156a3b1b0b29a757Elliott Hughes	src/indirect_reference_table.cc \
717e93b50433cde2a44d99212e8040299bde498546Brian Carlstrom	src/intern_table.cc \
72bf86d0438e9ef9c145ebcf16a2e74c4efaa2686aElliott Hughes	src/java_lang_Object.cc \
73bf86d0438e9ef9c145ebcf16a2e74c4efaa2686aElliott Hughes	src/java_lang_Runtime.cc \
74bf86d0438e9ef9c145ebcf16a2e74c4efaa2686aElliott Hughes	src/java_lang_String.cc \
75bf86d0438e9ef9c145ebcf16a2e74c4efaa2686aElliott Hughes	src/java_lang_System.cc \
76bf86d0438e9ef9c145ebcf16a2e74c4efaa2686aElliott Hughes	src/java_util_concurrent_atomic_AtomicLong.cc \
77b033c75ebda80ac75f936366fe78d1edf5cec937Ian Rogers	src/jni_compiler.cc \
78df20fe0c097073f75f22d16e72fd3636a31d3ca1Ian Rogers	src/jni_internal.cc \
7969759eaa6fd4386f1e6d8748052ad221087b3476Carl Shapiro	src/mark_stack.cc \
8069759eaa6fd4386f1e6d8748052ad221087b3476Carl Shapiro	src/mark_sweep.cc \
811fb8620309a4e94d11879aabc33364acfa733904Carl Shapiro	src/memory_region.cc \
8269759eaa6fd4386f1e6d8748052ad221087b3476Carl Shapiro	src/mspace.c \
833ee755da5c1c17b6a29052d171a8a63c0eb0b052Carl Shapiro	src/object.cc \
8469759eaa6fd4386f1e6d8748052ad221087b3476Carl Shapiro	src/object_bitmap.cc \
8569759eaa6fd4386f1e6d8748052ad221087b3476Carl Shapiro	src/offsets.cc \
86db4d54081f09abcbe97ffdf615874f2809a9e777Brian Carlstrom	src/os_linux.cc \
8711e45077acba2e757799a00b3be9d63fec36a7ccElliott Hughes	src/reference_table.cc \
88d4e48fdd5f8baad270a82120a912106b98074501Carl Shapiro	src/runtime.cc \
89e27955ca3ca960928d4dbd6cb79711fce06950b3Elliott Hughes	src/signal_catcher.cc \
9069759eaa6fd4386f1e6d8748052ad221087b3476Carl Shapiro	src/space.cc \
91b557353b22c728eecbd1c68593b482622c7782a8Carl Shapiro	src/stringpiece.cc \
92eb4f614f2eb53b92ebd416fa418f550861655887Elliott Hughes	src/stringprintf.cc \
93b0460eaa2cb131f1dbdd5a7217bd36b9a9f1b995Brian Carlstrom	src/thread.cc \
94814e40397fe6c8a2c645bae99f356dbddd6dbe18Elliott Hughes	src/utf.cc \
9511e45077acba2e757799a00b3be9d63fec36a7ccElliott Hughes	src/utils.cc \
965433072f589b61413e042eddf76e8190a048f71dbuzbee	src/zip_archive.cc \
975433072f589b61413e042eddf76e8190a048f71dbuzbee	src/runtime_support.S
98a5d5cfda6239d8876937e75eba43222f639d2447Carl Shapiro
99934486cf07c578b6494417ca5dcbae89cf04b019Brian CarlstromLIBART_TARGET_SRC_FILES := \
100934486cf07c578b6494417ca5dcbae89cf04b019Brian Carlstrom	$(LIBART_COMMON_SRC_FILES) \
101eb4f614f2eb53b92ebd416fa418f550861655887Elliott Hughes	src/assembler_arm.cc \
102b033c75ebda80ac75f936366fe78d1edf5cec937Ian Rogers	src/calling_convention_arm.cc \
1039b9ba28b1277b4ddb967c5a968c6d550febce6afCarl Shapiro	src/jni_internal_arm.cc \
104ffe6736397d17457188727510f0a2953f69a383aElliott Hughes	src/logging_android.cc \
105b033c75ebda80ac75f936366fe78d1edf5cec937Ian Rogers	src/managed_register_arm.cc \
106b033c75ebda80ac75f936366fe78d1edf5cec937Ian Rogers	src/runtime_android.cc \
107b033c75ebda80ac75f936366fe78d1edf5cec937Ian Rogers	src/thread_arm.cc
108a5d5cfda6239d8876937e75eba43222f639d2447Carl Shapiro
109934486cf07c578b6494417ca5dcbae89cf04b019Brian CarlstromLIBART_HOST_SRC_FILES := \
110934486cf07c578b6494417ca5dcbae89cf04b019Brian Carlstrom	$(LIBART_COMMON_SRC_FILES) \
111eb4f614f2eb53b92ebd416fa418f550861655887Elliott Hughes	src/assembler_x86.cc \
112b033c75ebda80ac75f936366fe78d1edf5cec937Ian Rogers	src/calling_convention_x86.cc \
1139b9ba28b1277b4ddb967c5a968c6d550febce6afCarl Shapiro	src/jni_internal_x86.cc \
114ffe6736397d17457188727510f0a2953f69a383aElliott Hughes	src/logging_linux.cc \
115b033c75ebda80ac75f936366fe78d1edf5cec937Ian Rogers	src/managed_register_x86.cc \
116b033c75ebda80ac75f936366fe78d1edf5cec937Ian Rogers	src/runtime_linux.cc \
117b033c75ebda80ac75f936366fe78d1edf5cec937Ian Rogers	src/thread_x86.cc
118c981ace51da03ca6a9cd100c2c4d6c9bf6100138Jesse Wilson
119cdc8de4642ca447a7ed205f0d2203cb217e48aadBrian CarlstromLIBARTTEST_COMMON_SRC_FILES := \
120cdc8de4642ca447a7ed205f0d2203cb217e48aadBrian Carlstrom	src/base64.cc
121cdc8de4642ca447a7ed205f0d2203cb217e48aadBrian Carlstrom
122934486cf07c578b6494417ca5dcbae89cf04b019Brian CarlstromTEST_COMMON_SRC_FILES := \
1230e5d75d5ca2b8a44fab0c862276a466cbab39859Carl Shapiro	src/class_linker_test.cc \
1247e49dca262933bc30cbc8b9f07cfc8cce2343389Brian Carlstrom	src/dex_cache_test.cc \
1251fb8620309a4e94d11879aabc33364acfa733904Carl Shapiro	src/dex_file_test.cc \
1261fb8620309a4e94d11879aabc33364acfa733904Carl Shapiro	src/dex_instruction_visitor_test.cc \
127ba5ebb944b7c5c6a1b754b6dd47eed96f39aea29jeffhao	src/dex_verifier_test.cc \
1282fb9753c58ce1a511fd6996856840120eb2930dbShih-wei Liao	src/exception_test.cc \
129db4d54081f09abcbe97ffdf615874f2809a9e777Brian Carlstrom	src/file_test.cc \
1301f87008b165d26541d832ff805250afdc89c253dBrian Carlstrom	src/heap_test.cc \
131db4d54081f09abcbe97ffdf615874f2809a9e777Brian Carlstrom	src/image_test.cc \
1326c1a394b47c85c8d1723fc3b156a3b1b0b29a757Elliott Hughes	src/indirect_reference_table_test.cc \
1337e93b50433cde2a44d99212e8040299bde498546Brian Carlstrom	src/intern_table_test.cc \
134cd2764fda5dc4eeccb0c66fcc06eb91f70b98e24Ian Rogers	src/jni_internal_test.cc \
135cd2764fda5dc4eeccb0c66fcc06eb91f70b98e24Ian Rogers	src/jni_compiler_test.cc \
136894d0fab562badca5c2f01a5c2adc8de756c08adCarl Shapiro	src/object_test.cc \
13711e45077acba2e757799a00b3be9d63fec36a7ccElliott Hughes	src/reference_table_test.cc \
138fc322c72d7a89a6f7a05c8bdc232d780aecd9232Carl Shapiro	src/runtime_test.cc \
139b0460eaa2cb131f1dbdd5a7217bd36b9a9f1b995Brian Carlstrom	src/space_test.cc \
14011e45077acba2e757799a00b3be9d63fec36a7ccElliott Hughes	src/utils_test.cc \
141c143c55718342519db5398e41dda31422cf16c79buzbee	src/zip_archive_test.cc \
142c143c55718342519db5398e41dda31422cf16c79buzbee	src/compiler_test.cc
143008e41230a702ddb4c558fca95af5d84d56b51cbCarl Shapiro
144934486cf07c578b6494417ca5dcbae89cf04b019Brian CarlstromTEST_TARGET_SRC_FILES := \
145b033c75ebda80ac75f936366fe78d1edf5cec937Ian Rogers	$(TEST_COMMON_SRC_FILES) \
146b033c75ebda80ac75f936366fe78d1edf5cec937Ian Rogers	src/managed_register_arm_test.cc
147c981ace51da03ca6a9cd100c2c4d6c9bf6100138Jesse Wilson
148934486cf07c578b6494417ca5dcbae89cf04b019Brian CarlstromTEST_HOST_SRC_FILES := \
149934486cf07c578b6494417ca5dcbae89cf04b019Brian Carlstrom	$(TEST_COMMON_SRC_FILES) \
150b033c75ebda80ac75f936366fe78d1edf5cec937Ian Rogers	src/assembler_x86_test.cc \
151b033c75ebda80ac75f936366fe78d1edf5cec937Ian Rogers	src/managed_register_x86_test.cc
1529f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom
1539f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom# subdirectories of test/
1549f30b38d74990286ce27c3a45368f73dbe3638f0Brian CarlstromTEST_DEX_DIRECTORIES := \
1559f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom	AllFields \
1569f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom	CreateMethodDescriptor \
1579f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom	Fibonacci \
1589f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom	IntMath \
1599f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom	Interfaces \
1609f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom	Main \
1619f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom	MyClass \
1629f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom	MyClassNatives \
1639f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom	Nested \
1649f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom	ProtoCompare \
1659f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom	ProtoCompare2 \
1669f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom	StaticLeafMethods \
1679f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom	Statics \
1689f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom	XandY
169