Android.common.mk revision 2c8f653c98d658419f464b6147c10e11a664d2e6
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 := \
287f40ffcb953870fb0df7646c447ffdc7b3ef0b2cElliott Hughes	-O2 \
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
3869b15fb098162f19a4c20e6dccdcead04d9c77f0Brian CarlstromDEX2OAT_SRC_FILES := \
3969b15fb098162f19a4c20e6dccdcead04d9c77f0Brian Carlstrom	src/dex2oat.cc
4069b15fb098162f19a4c20e6dccdcead04d9c77f0Brian Carlstrom
4169b15fb098162f19a4c20e6dccdcead04d9c77f0Brian CarlstromOATEXEC_SRC_FILES := \
4269b15fb098162f19a4c20e6dccdcead04d9c77f0Brian Carlstrom	src/oatexec.cc
439bf84fd5b69f17ad3e3dca37aa021bdc4246259eCarl Shapiro
44934486cf07c578b6494417ca5dcbae89cf04b019Brian CarlstromLIBART_COMMON_SRC_FILES := \
45a5d5cfda6239d8876937e75eba43222f639d2447Carl Shapiro	src/assembler.cc \
462c8f653c98d658419f464b6147c10e11a664d2e6Ian Rogers	src/assembler_arm.cc \
472c8f653c98d658419f464b6147c10e11a664d2e6Ian Rogers	src/assembler_x86.cc \
48b033c75ebda80ac75f936366fe78d1edf5cec937Ian Rogers	src/calling_convention.cc \
492c8f653c98d658419f464b6147c10e11a664d2e6Ian Rogers	src/calling_convention_arm.cc \
502c8f653c98d658419f464b6147c10e11a664d2e6Ian Rogers	src/calling_convention_x86.cc \
51a2501990dd0f68baf38ce19251949d7bb3ecfe5aElliott Hughes	src/check_jni.cc \
520e5d75d5ca2b8a44fab0c862276a466cbab39859Carl Shapiro	src/class_linker.cc \
531f87008b165d26541d832ff805250afdc89c253dBrian Carlstrom	src/class_loader.cc \
549ea1cb1a22be5b85dc2622e3836c46a1c48e3f25Brian Carlstrom	src/compiler.cc \
552cc022b653e1e84eed2522254ec684bd097572b8Brian Carlstrom	src/compiler/Dataflow.cc \
562cc022b653e1e84eed2522254ec684bd097572b8Brian Carlstrom	src/compiler/Frontend.cc \
572cc022b653e1e84eed2522254ec684bd097572b8Brian Carlstrom	src/compiler/IntermediateRep.cc \
582cc022b653e1e84eed2522254ec684bd097572b8Brian Carlstrom	src/compiler/Ralloc.cc \
592cc022b653e1e84eed2522254ec684bd097572b8Brian Carlstrom	src/compiler/SSATransformation.cc \
602cc022b653e1e84eed2522254ec684bd097572b8Brian Carlstrom	src/compiler/Utility.cc \
612cc022b653e1e84eed2522254ec684bd097572b8Brian Carlstrom	src/compiler/codegen/RallocUtil.cc \
622cc022b653e1e84eed2522254ec684bd097572b8Brian Carlstrom	src/compiler/codegen/arm/ArchUtility.cc \
632cc022b653e1e84eed2522254ec684bd097572b8Brian Carlstrom	src/compiler/codegen/arm/ArmRallocUtil.cc \
642cc022b653e1e84eed2522254ec684bd097572b8Brian Carlstrom	src/compiler/codegen/arm/Assemble.cc \
652cc022b653e1e84eed2522254ec684bd097572b8Brian Carlstrom	src/compiler/codegen/arm/LocalOptimizations.cc \
662cc022b653e1e84eed2522254ec684bd097572b8Brian Carlstrom	src/compiler/codegen/arm/armv7-a/Codegen.cc \
677b1b86d68244b0bb4ea3f43505eb45fdd46814d6buzbee	src/compiler/RuntimeUtilities.cc \
687e49dca262933bc30cbc8b9f07cfc8cce2343389Brian Carlstrom	src/dex_cache.cc \
691fb8620309a4e94d11879aabc33364acfa733904Carl Shapiro	src/dex_file.cc \
7012eb78e651f13f2c1f0c2c922048a5a213253adfCarl Shapiro	src/dex_instruction.cc \
710e5d75d5ca2b8a44fab0c862276a466cbab39859Carl Shapiro	src/dex_verifier.cc \
72db4d54081f09abcbe97ffdf615874f2809a9e777Brian Carlstrom	src/file.cc \
73db4d54081f09abcbe97ffdf615874f2809a9e777Brian Carlstrom	src/file_linux.cc \
7469759eaa6fd4386f1e6d8748052ad221087b3476Carl Shapiro	src/heap.cc \
754a289ed61242964b921434de7d375f46480472a1Brian Carlstrom	src/image.cc \
76db4d54081f09abcbe97ffdf615874f2809a9e777Brian Carlstrom	src/image_writer.cc \
776c1a394b47c85c8d1723fc3b156a3b1b0b29a757Elliott Hughes	src/indirect_reference_table.cc \
787e93b50433cde2a44d99212e8040299bde498546Brian Carlstrom	src/intern_table.cc \
79bf86d0438e9ef9c145ebcf16a2e74c4efaa2686aElliott Hughes	src/java_lang_Object.cc \
80bf86d0438e9ef9c145ebcf16a2e74c4efaa2686aElliott Hughes	src/java_lang_Runtime.cc \
81bf86d0438e9ef9c145ebcf16a2e74c4efaa2686aElliott Hughes	src/java_lang_String.cc \
82bf86d0438e9ef9c145ebcf16a2e74c4efaa2686aElliott Hughes	src/java_lang_System.cc \
83bf86d0438e9ef9c145ebcf16a2e74c4efaa2686aElliott Hughes	src/java_util_concurrent_atomic_AtomicLong.cc \
84b033c75ebda80ac75f936366fe78d1edf5cec937Ian Rogers	src/jni_compiler.cc \
85df20fe0c097073f75f22d16e72fd3636a31d3ca1Ian Rogers	src/jni_internal.cc \
862c8f653c98d658419f464b6147c10e11a664d2e6Ian Rogers	src/jni_internal_arm.cc \
872c8f653c98d658419f464b6147c10e11a664d2e6Ian Rogers	src/jni_internal_x86.cc \
8842ee14279065352a4b9a3e8028d02c567e847d05Elliott Hughes	src/logging.cc \
8969759eaa6fd4386f1e6d8748052ad221087b3476Carl Shapiro	src/mark_stack.cc \
9069759eaa6fd4386f1e6d8748052ad221087b3476Carl Shapiro	src/mark_sweep.cc \
912c8f653c98d658419f464b6147c10e11a664d2e6Ian Rogers	src/managed_register_arm.cc \
922c8f653c98d658419f464b6147c10e11a664d2e6Ian Rogers	src/managed_register_x86.cc \
931fb8620309a4e94d11879aabc33364acfa733904Carl Shapiro	src/memory_region.cc \
9469759eaa6fd4386f1e6d8748052ad221087b3476Carl Shapiro	src/mspace.c \
953ee755da5c1c17b6a29052d171a8a63c0eb0b052Carl Shapiro	src/object.cc \
9669759eaa6fd4386f1e6d8748052ad221087b3476Carl Shapiro	src/object_bitmap.cc \
9769759eaa6fd4386f1e6d8748052ad221087b3476Carl Shapiro	src/offsets.cc \
98db4d54081f09abcbe97ffdf615874f2809a9e777Brian Carlstrom	src/os_linux.cc \
9911e45077acba2e757799a00b3be9d63fec36a7ccElliott Hughes	src/reference_table.cc \
100d4e48fdd5f8baad270a82120a912106b98074501Carl Shapiro	src/runtime.cc \
101e27955ca3ca960928d4dbd6cb79711fce06950b3Elliott Hughes	src/signal_catcher.cc \
10269759eaa6fd4386f1e6d8748052ad221087b3476Carl Shapiro	src/space.cc \
103b557353b22c728eecbd1c68593b482622c7782a8Carl Shapiro	src/stringpiece.cc \
104eb4f614f2eb53b92ebd416fa418f550861655887Elliott Hughes	src/stringprintf.cc \
105b0460eaa2cb131f1dbdd5a7217bd36b9a9f1b995Brian Carlstrom	src/thread.cc \
106814e40397fe6c8a2c645bae99f356dbddd6dbe18Elliott Hughes	src/utf.cc \
10711e45077acba2e757799a00b3be9d63fec36a7ccElliott Hughes	src/utils.cc \
1085433072f589b61413e042eddf76e8190a048f71dbuzbee	src/zip_archive.cc \
1095433072f589b61413e042eddf76e8190a048f71dbuzbee	src/runtime_support.S
110a5d5cfda6239d8876937e75eba43222f639d2447Carl Shapiro
111934486cf07c578b6494417ca5dcbae89cf04b019Brian CarlstromLIBART_TARGET_SRC_FILES := \
112934486cf07c578b6494417ca5dcbae89cf04b019Brian Carlstrom	$(LIBART_COMMON_SRC_FILES) \
113ffe6736397d17457188727510f0a2953f69a383aElliott Hughes	src/logging_android.cc \
114b033c75ebda80ac75f936366fe78d1edf5cec937Ian Rogers	src/runtime_android.cc \
115b033c75ebda80ac75f936366fe78d1edf5cec937Ian Rogers	src/thread_arm.cc
116a5d5cfda6239d8876937e75eba43222f639d2447Carl Shapiro
117934486cf07c578b6494417ca5dcbae89cf04b019Brian CarlstromLIBART_HOST_SRC_FILES := \
118934486cf07c578b6494417ca5dcbae89cf04b019Brian Carlstrom	$(LIBART_COMMON_SRC_FILES) \
119ffe6736397d17457188727510f0a2953f69a383aElliott Hughes	src/logging_linux.cc \
120b033c75ebda80ac75f936366fe78d1edf5cec937Ian Rogers	src/runtime_linux.cc \
121b033c75ebda80ac75f936366fe78d1edf5cec937Ian Rogers	src/thread_x86.cc
122c981ace51da03ca6a9cd100c2c4d6c9bf6100138Jesse Wilson
123cdc8de4642ca447a7ed205f0d2203cb217e48aadBrian CarlstromLIBARTTEST_COMMON_SRC_FILES := \
124cdc8de4642ca447a7ed205f0d2203cb217e48aadBrian Carlstrom	src/base64.cc
125cdc8de4642ca447a7ed205f0d2203cb217e48aadBrian Carlstrom
126934486cf07c578b6494417ca5dcbae89cf04b019Brian CarlstromTEST_COMMON_SRC_FILES := \
1270e5d75d5ca2b8a44fab0c862276a466cbab39859Carl Shapiro	src/class_linker_test.cc \
1287e49dca262933bc30cbc8b9f07cfc8cce2343389Brian Carlstrom	src/dex_cache_test.cc \
1291fb8620309a4e94d11879aabc33364acfa733904Carl Shapiro	src/dex_file_test.cc \
1301fb8620309a4e94d11879aabc33364acfa733904Carl Shapiro	src/dex_instruction_visitor_test.cc \
131ba5ebb944b7c5c6a1b754b6dd47eed96f39aea29jeffhao	src/dex_verifier_test.cc \
1322fb9753c58ce1a511fd6996856840120eb2930dbShih-wei Liao	src/exception_test.cc \
133db4d54081f09abcbe97ffdf615874f2809a9e777Brian Carlstrom	src/file_test.cc \
1341f87008b165d26541d832ff805250afdc89c253dBrian Carlstrom	src/heap_test.cc \
135db4d54081f09abcbe97ffdf615874f2809a9e777Brian Carlstrom	src/image_test.cc \
1366c1a394b47c85c8d1723fc3b156a3b1b0b29a757Elliott Hughes	src/indirect_reference_table_test.cc \
1377e93b50433cde2a44d99212e8040299bde498546Brian Carlstrom	src/intern_table_test.cc \
138cd2764fda5dc4eeccb0c66fcc06eb91f70b98e24Ian Rogers	src/jni_internal_test.cc \
139cd2764fda5dc4eeccb0c66fcc06eb91f70b98e24Ian Rogers	src/jni_compiler_test.cc \
1402c8f653c98d658419f464b6147c10e11a664d2e6Ian Rogers	src/managed_register_arm_test.cc \
1412c8f653c98d658419f464b6147c10e11a664d2e6Ian Rogers	src/managed_register_x86_test.cc \
142894d0fab562badca5c2f01a5c2adc8de756c08adCarl Shapiro	src/object_test.cc \
14311e45077acba2e757799a00b3be9d63fec36a7ccElliott Hughes	src/reference_table_test.cc \
144fc322c72d7a89a6f7a05c8bdc232d780aecd9232Carl Shapiro	src/runtime_test.cc \
145b0460eaa2cb131f1dbdd5a7217bd36b9a9f1b995Brian Carlstrom	src/space_test.cc \
14611e45077acba2e757799a00b3be9d63fec36a7ccElliott Hughes	src/utils_test.cc \
147c143c55718342519db5398e41dda31422cf16c79buzbee	src/zip_archive_test.cc \
148c143c55718342519db5398e41dda31422cf16c79buzbee	src/compiler_test.cc
149008e41230a702ddb4c558fca95af5d84d56b51cbCarl Shapiro
150934486cf07c578b6494417ca5dcbae89cf04b019Brian CarlstromTEST_TARGET_SRC_FILES := \
1512c8f653c98d658419f464b6147c10e11a664d2e6Ian Rogers	$(TEST_COMMON_SRC_FILES)
152c981ace51da03ca6a9cd100c2c4d6c9bf6100138Jesse Wilson
153934486cf07c578b6494417ca5dcbae89cf04b019Brian CarlstromTEST_HOST_SRC_FILES := \
154934486cf07c578b6494417ca5dcbae89cf04b019Brian Carlstrom	$(TEST_COMMON_SRC_FILES) \
1552c8f653c98d658419f464b6147c10e11a664d2e6Ian Rogers	src/assembler_x86_test.cc
1569f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom
1579f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom# subdirectories of test/
1589f30b38d74990286ce27c3a45368f73dbe3638f0Brian CarlstromTEST_DEX_DIRECTORIES := \
1599f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom	AllFields \
1609f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom	CreateMethodDescriptor \
1619f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom	Fibonacci \
16269b15fb098162f19a4c20e6dccdcead04d9c77f0Brian Carlstrom	HelloWorld \
1639f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom	IntMath \
1649f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom	Interfaces \
1659f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom	Main \
1669f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom	MyClass \
1679f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom	MyClassNatives \
1689f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom	Nested \
1699f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom	ProtoCompare \
1709f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom	ProtoCompare2 \
1719f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom	StaticLeafMethods \
1729f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom	Statics \
1730f4c41d75c821162184501cd4b510a93f6eb580fElliott Hughes	SystemMethods \
174109bd6a38d0cd7c4b7797a9f2db8324c797d1368buzbee	Invoke \
1759f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom	XandY
176