Android.common.mk revision 5ea047b386c5dac78eda62305d14dedf7b5611a8
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 271d3f114124b140629a7d22fa5cfa20ab8fc96934Elliott Hughesart_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 381d3f114124b140629a7d22fa5cfa20ab8fc96934Elliott HughesART_HOST_CFLAGS := $(art_cflags) -DANDROID_SMP=1 391d3f114124b140629a7d22fa5cfa20ab8fc96934Elliott Hughes 401d3f114124b140629a7d22fa5cfa20ab8fc96934Elliott HughesART_TARGET_CFLAGS := $(art_cflags) 411d3f114124b140629a7d22fa5cfa20ab8fc96934Elliott Hughesifeq ($(TARGET_CPU_SMP),true) 421d3f114124b140629a7d22fa5cfa20ab8fc96934Elliott Hughes ART_TARGET_CFLAGS += -DANDROID_SMP=1 431d3f114124b140629a7d22fa5cfa20ab8fc96934Elliott Hugheselse 441d3f114124b140629a7d22fa5cfa20ab8fc96934Elliott Hughes ART_TARGET_CFLAGS += -DANDROID_SMP=0 451d3f114124b140629a7d22fa5cfa20ab8fc96934Elliott Hughesendif 461d3f114124b140629a7d22fa5cfa20ab8fc96934Elliott Hughes 471d3f114124b140629a7d22fa5cfa20ab8fc96934Elliott Hughes 4869b15fb098162f19a4c20e6dccdcead04d9c77f0Brian CarlstromDEX2OAT_SRC_FILES := \ 4969b15fb098162f19a4c20e6dccdcead04d9c77f0Brian Carlstrom src/dex2oat.cc 5069b15fb098162f19a4c20e6dccdcead04d9c77f0Brian Carlstrom 5169b15fb098162f19a4c20e6dccdcead04d9c77f0Brian CarlstromOATEXEC_SRC_FILES := \ 5269b15fb098162f19a4c20e6dccdcead04d9c77f0Brian Carlstrom src/oatexec.cc 539bf84fd5b69f17ad3e3dca37aa021bdc4246259eCarl Shapiro 54934486cf07c578b6494417ca5dcbae89cf04b019Brian CarlstromLIBART_COMMON_SRC_FILES := \ 55a5d5cfda6239d8876937e75eba43222f639d2447Carl Shapiro src/assembler.cc \ 562c8f653c98d658419f464b6147c10e11a664d2e6Ian Rogers src/assembler_arm.cc \ 572c8f653c98d658419f464b6147c10e11a664d2e6Ian Rogers src/assembler_x86.cc \ 585ea047b386c5dac78eda62305d14dedf7b5611a8Elliott Hughes src/atomic.cc.arm \ 59b033c75ebda80ac75f936366fe78d1edf5cec937Ian Rogers src/calling_convention.cc \ 602c8f653c98d658419f464b6147c10e11a664d2e6Ian Rogers src/calling_convention_arm.cc \ 612c8f653c98d658419f464b6147c10e11a664d2e6Ian Rogers src/calling_convention_x86.cc \ 62a2501990dd0f68baf38ce19251949d7bb3ecfe5aElliott Hughes src/check_jni.cc \ 630e5d75d5ca2b8a44fab0c862276a466cbab39859Carl Shapiro src/class_linker.cc \ 641f87008b165d26541d832ff805250afdc89c253dBrian Carlstrom src/class_loader.cc \ 659ea1cb1a22be5b85dc2622e3836c46a1c48e3f25Brian Carlstrom src/compiler.cc \ 662cc022b653e1e84eed2522254ec684bd097572b8Brian Carlstrom src/compiler/Dataflow.cc \ 672cc022b653e1e84eed2522254ec684bd097572b8Brian Carlstrom src/compiler/Frontend.cc \ 682cc022b653e1e84eed2522254ec684bd097572b8Brian Carlstrom src/compiler/IntermediateRep.cc \ 692cc022b653e1e84eed2522254ec684bd097572b8Brian Carlstrom src/compiler/Ralloc.cc \ 702cc022b653e1e84eed2522254ec684bd097572b8Brian Carlstrom src/compiler/SSATransformation.cc \ 712cc022b653e1e84eed2522254ec684bd097572b8Brian Carlstrom src/compiler/Utility.cc \ 722cc022b653e1e84eed2522254ec684bd097572b8Brian Carlstrom src/compiler/codegen/RallocUtil.cc \ 732cc022b653e1e84eed2522254ec684bd097572b8Brian Carlstrom src/compiler/codegen/arm/ArchUtility.cc \ 742cc022b653e1e84eed2522254ec684bd097572b8Brian Carlstrom src/compiler/codegen/arm/ArmRallocUtil.cc \ 752cc022b653e1e84eed2522254ec684bd097572b8Brian Carlstrom src/compiler/codegen/arm/Assemble.cc \ 762cc022b653e1e84eed2522254ec684bd097572b8Brian Carlstrom src/compiler/codegen/arm/LocalOptimizations.cc \ 772cc022b653e1e84eed2522254ec684bd097572b8Brian Carlstrom src/compiler/codegen/arm/armv7-a/Codegen.cc \ 788daa0929f08a3080ea64dbd4e997e72f411e6fc9Elliott Hughes src/dalvik_system_VMStack.cc \ 797e49dca262933bc30cbc8b9f07cfc8cce2343389Brian Carlstrom src/dex_cache.cc \ 801fb8620309a4e94d11879aabc33364acfa733904Carl Shapiro src/dex_file.cc \ 8112eb78e651f13f2c1f0c2c922048a5a213253adfCarl Shapiro src/dex_instruction.cc \ 820e5d75d5ca2b8a44fab0c862276a466cbab39859Carl Shapiro src/dex_verifier.cc \ 83db4d54081f09abcbe97ffdf615874f2809a9e777Brian Carlstrom src/file.cc \ 84db4d54081f09abcbe97ffdf615874f2809a9e777Brian Carlstrom src/file_linux.cc \ 8569759eaa6fd4386f1e6d8748052ad221087b3476Carl Shapiro src/heap.cc \ 864a289ed61242964b921434de7d375f46480472a1Brian Carlstrom src/image.cc \ 87db4d54081f09abcbe97ffdf615874f2809a9e777Brian Carlstrom src/image_writer.cc \ 886c1a394b47c85c8d1723fc3b156a3b1b0b29a757Elliott Hughes src/indirect_reference_table.cc \ 897e93b50433cde2a44d99212e8040299bde498546Brian Carlstrom src/intern_table.cc \ 90d369bb76dee0df2d2a106e9bf7f4e6446ed6deaaElliott Hughes src/java_lang_Class.cc \ 91bf86d0438e9ef9c145ebcf16a2e74c4efaa2686aElliott Hughes src/java_lang_Object.cc \ 92bf86d0438e9ef9c145ebcf16a2e74c4efaa2686aElliott Hughes src/java_lang_Runtime.cc \ 93bf86d0438e9ef9c145ebcf16a2e74c4efaa2686aElliott Hughes src/java_lang_String.cc \ 94bf86d0438e9ef9c145ebcf16a2e74c4efaa2686aElliott Hughes src/java_lang_System.cc \ 958daa0929f08a3080ea64dbd4e997e72f411e6fc9Elliott Hughes src/java_lang_Thread.cc \ 961240dade91d6c4bbf4e367ca608fcdc15348da45Elliott Hughes src/java_lang_Throwable.cc \ 97bf86d0438e9ef9c145ebcf16a2e74c4efaa2686aElliott Hughes src/java_util_concurrent_atomic_AtomicLong.cc \ 98b033c75ebda80ac75f936366fe78d1edf5cec937Ian Rogers src/jni_compiler.cc \ 99df20fe0c097073f75f22d16e72fd3636a31d3ca1Ian Rogers src/jni_internal.cc \ 1002c8f653c98d658419f464b6147c10e11a664d2e6Ian Rogers src/jni_internal_arm.cc \ 1012c8f653c98d658419f464b6147c10e11a664d2e6Ian Rogers src/jni_internal_x86.cc \ 10242ee14279065352a4b9a3e8028d02c567e847d05Elliott Hughes src/logging.cc \ 10369759eaa6fd4386f1e6d8748052ad221087b3476Carl Shapiro src/mark_stack.cc \ 10469759eaa6fd4386f1e6d8748052ad221087b3476Carl Shapiro src/mark_sweep.cc \ 1052c8f653c98d658419f464b6147c10e11a664d2e6Ian Rogers src/managed_register_arm.cc \ 1062c8f653c98d658419f464b6147c10e11a664d2e6Ian Rogers src/managed_register_x86.cc \ 1071fb8620309a4e94d11879aabc33364acfa733904Carl Shapiro src/memory_region.cc \ 10869759eaa6fd4386f1e6d8748052ad221087b3476Carl Shapiro src/mspace.c \ 1098daa0929f08a3080ea64dbd4e997e72f411e6fc9Elliott Hughes src/mutex.cc \ 1103ee755da5c1c17b6a29052d171a8a63c0eb0b052Carl Shapiro src/object.cc \ 11169759eaa6fd4386f1e6d8748052ad221087b3476Carl Shapiro src/object_bitmap.cc \ 11269759eaa6fd4386f1e6d8748052ad221087b3476Carl Shapiro src/offsets.cc \ 113db4d54081f09abcbe97ffdf615874f2809a9e777Brian Carlstrom src/os_linux.cc \ 11411e45077acba2e757799a00b3be9d63fec36a7ccElliott Hughes src/reference_table.cc \ 115d4e48fdd5f8baad270a82120a912106b98074501Carl Shapiro src/runtime.cc \ 116e27955ca3ca960928d4dbd6cb79711fce06950b3Elliott Hughes src/signal_catcher.cc \ 11769759eaa6fd4386f1e6d8748052ad221087b3476Carl Shapiro src/space.cc \ 118b557353b22c728eecbd1c68593b482622c7782a8Carl Shapiro src/stringpiece.cc \ 119eb4f614f2eb53b92ebd416fa418f550861655887Elliott Hughes src/stringprintf.cc \ 12031384c59bb4b387f29f2b6d4d3db886c29b81170Shih-wei Liao src/stub_arm.cc \ 12131384c59bb4b387f29f2b6d4d3db886c29b81170Shih-wei Liao src/stub_x86.cc \ 122b0460eaa2cb131f1dbdd5a7217bd36b9a9f1b995Brian Carlstrom src/thread.cc \ 1238daa0929f08a3080ea64dbd4e997e72f411e6fc9Elliott Hughes src/thread_list.cc \ 124814e40397fe6c8a2c645bae99f356dbddd6dbe18Elliott Hughes src/utf.cc \ 12511e45077acba2e757799a00b3be9d63fec36a7ccElliott Hughes src/utils.cc \ 1265433072f589b61413e042eddf76e8190a048f71dbuzbee src/zip_archive.cc \ 1275433072f589b61413e042eddf76e8190a048f71dbuzbee src/runtime_support.S 128a5d5cfda6239d8876937e75eba43222f639d2447Carl Shapiro 129934486cf07c578b6494417ca5dcbae89cf04b019Brian CarlstromLIBART_TARGET_SRC_FILES := \ 130934486cf07c578b6494417ca5dcbae89cf04b019Brian Carlstrom $(LIBART_COMMON_SRC_FILES) \ 131ffe6736397d17457188727510f0a2953f69a383aElliott Hughes src/logging_android.cc \ 132b033c75ebda80ac75f936366fe78d1edf5cec937Ian Rogers src/runtime_android.cc \ 1338daa0929f08a3080ea64dbd4e997e72f411e6fc9Elliott Hughes src/thread_android.cc \ 134b033c75ebda80ac75f936366fe78d1edf5cec937Ian Rogers src/thread_arm.cc 135a5d5cfda6239d8876937e75eba43222f639d2447Carl Shapiro 136934486cf07c578b6494417ca5dcbae89cf04b019Brian CarlstromLIBART_HOST_SRC_FILES := \ 137934486cf07c578b6494417ca5dcbae89cf04b019Brian Carlstrom $(LIBART_COMMON_SRC_FILES) \ 138ffe6736397d17457188727510f0a2953f69a383aElliott Hughes src/logging_linux.cc \ 139b033c75ebda80ac75f936366fe78d1edf5cec937Ian Rogers src/runtime_linux.cc \ 1408daa0929f08a3080ea64dbd4e997e72f411e6fc9Elliott Hughes src/thread_linux.cc \ 141b033c75ebda80ac75f936366fe78d1edf5cec937Ian Rogers src/thread_x86.cc 142c981ace51da03ca6a9cd100c2c4d6c9bf6100138Jesse Wilson 143cdc8de4642ca447a7ed205f0d2203cb217e48aadBrian CarlstromLIBARTTEST_COMMON_SRC_FILES := \ 14431384c59bb4b387f29f2b6d4d3db886c29b81170Shih-wei Liao src/base64.cc \ 14531384c59bb4b387f29f2b6d4d3db886c29b81170Shih-wei Liao src/jni_tests.cc 146cdc8de4642ca447a7ed205f0d2203cb217e48aadBrian Carlstrom 147934486cf07c578b6494417ca5dcbae89cf04b019Brian CarlstromTEST_COMMON_SRC_FILES := \ 1480e5d75d5ca2b8a44fab0c862276a466cbab39859Carl Shapiro src/class_linker_test.cc \ 1497e49dca262933bc30cbc8b9f07cfc8cce2343389Brian Carlstrom src/dex_cache_test.cc \ 1501fb8620309a4e94d11879aabc33364acfa733904Carl Shapiro src/dex_file_test.cc \ 1511fb8620309a4e94d11879aabc33364acfa733904Carl Shapiro src/dex_instruction_visitor_test.cc \ 152ba5ebb944b7c5c6a1b754b6dd47eed96f39aea29jeffhao src/dex_verifier_test.cc \ 1532fb9753c58ce1a511fd6996856840120eb2930dbShih-wei Liao src/exception_test.cc \ 154db4d54081f09abcbe97ffdf615874f2809a9e777Brian Carlstrom src/file_test.cc \ 1551f87008b165d26541d832ff805250afdc89c253dBrian Carlstrom src/heap_test.cc \ 156db4d54081f09abcbe97ffdf615874f2809a9e777Brian Carlstrom src/image_test.cc \ 1576c1a394b47c85c8d1723fc3b156a3b1b0b29a757Elliott Hughes src/indirect_reference_table_test.cc \ 1587e93b50433cde2a44d99212e8040299bde498546Brian Carlstrom src/intern_table_test.cc \ 159cd2764fda5dc4eeccb0c66fcc06eb91f70b98e24Ian Rogers src/jni_internal_test.cc \ 160cd2764fda5dc4eeccb0c66fcc06eb91f70b98e24Ian Rogers src/jni_compiler_test.cc \ 1612c8f653c98d658419f464b6147c10e11a664d2e6Ian Rogers src/managed_register_arm_test.cc \ 1622c8f653c98d658419f464b6147c10e11a664d2e6Ian Rogers src/managed_register_x86_test.cc \ 163894d0fab562badca5c2f01a5c2adc8de756c08adCarl Shapiro src/object_test.cc \ 16411e45077acba2e757799a00b3be9d63fec36a7ccElliott Hughes src/reference_table_test.cc \ 165fc322c72d7a89a6f7a05c8bdc232d780aecd9232Carl Shapiro src/runtime_test.cc \ 166b0460eaa2cb131f1dbdd5a7217bd36b9a9f1b995Brian Carlstrom src/space_test.cc \ 16711e45077acba2e757799a00b3be9d63fec36a7ccElliott Hughes src/utils_test.cc \ 168c143c55718342519db5398e41dda31422cf16c79buzbee src/zip_archive_test.cc \ 169c143c55718342519db5398e41dda31422cf16c79buzbee src/compiler_test.cc 170008e41230a702ddb4c558fca95af5d84d56b51cbCarl Shapiro 171934486cf07c578b6494417ca5dcbae89cf04b019Brian CarlstromTEST_TARGET_SRC_FILES := \ 1722c8f653c98d658419f464b6147c10e11a664d2e6Ian Rogers $(TEST_COMMON_SRC_FILES) 173c981ace51da03ca6a9cd100c2c4d6c9bf6100138Jesse Wilson 174934486cf07c578b6494417ca5dcbae89cf04b019Brian CarlstromTEST_HOST_SRC_FILES := \ 175934486cf07c578b6494417ca5dcbae89cf04b019Brian Carlstrom $(TEST_COMMON_SRC_FILES) \ 1762c8f653c98d658419f464b6147c10e11a664d2e6Ian Rogers src/assembler_x86_test.cc 1779f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom 1789f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom# subdirectories of test/ 1799f30b38d74990286ce27c3a45368f73dbe3638f0Brian CarlstromTEST_DEX_DIRECTORIES := \ 1809f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom AllFields \ 1819f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom CreateMethodDescriptor \ 1829f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom Fibonacci \ 18369b15fb098162f19a4c20e6dccdcead04d9c77f0Brian Carlstrom HelloWorld \ 1849f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom IntMath \ 1859f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom Interfaces \ 1869f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom Main \ 1879f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom MyClass \ 1889f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom MyClassNatives \ 1899f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom Nested \ 1909f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom ProtoCompare \ 1919f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom ProtoCompare2 \ 1929f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom StaticLeafMethods \ 1939f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom Statics \ 1940f4c41d75c821162184501cd4b510a93f6eb580fElliott Hughes SystemMethods \ 195109bd6a38d0cd7c4b7797a9f2db8324c797d1368buzbee Invoke \ 1969f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom XandY 1974b620ffb1b4d0c96a94bb3afe314f35d53990ec6Brian Carlstrom 1984b620ffb1b4d0c96a94bb3afe314f35d53990ec6Brian CarlstromART_BUILD_TARGET := false 1994b620ffb1b4d0c96a94bb3afe314f35d53990ec6Brian CarlstromART_BUILD_HOST := false 2004b620ffb1b4d0c96a94bb3afe314f35d53990ec6Brian Carlstromifeq ($(ART_BUILD_TARGET_NDEBUG),true) 2014b620ffb1b4d0c96a94bb3afe314f35d53990ec6Brian Carlstrom ART_BUILD_TARGET := true 2024b620ffb1b4d0c96a94bb3afe314f35d53990ec6Brian Carlstromendif 2034b620ffb1b4d0c96a94bb3afe314f35d53990ec6Brian Carlstromifeq ($(ART_BUILD_TARGET_DEBUG),true) 2044b620ffb1b4d0c96a94bb3afe314f35d53990ec6Brian Carlstrom ART_BUILD_TARGET := true 2054b620ffb1b4d0c96a94bb3afe314f35d53990ec6Brian Carlstromendif 2064b620ffb1b4d0c96a94bb3afe314f35d53990ec6Brian Carlstromifeq ($(ART_BUILD_HOST_NDEBUG),true) 2074b620ffb1b4d0c96a94bb3afe314f35d53990ec6Brian Carlstrom ART_BUILD_HOST := true 2084b620ffb1b4d0c96a94bb3afe314f35d53990ec6Brian Carlstromendif 2094b620ffb1b4d0c96a94bb3afe314f35d53990ec6Brian Carlstromifeq ($(ART_BUILD_HOST_DEBUG),true) 2104b620ffb1b4d0c96a94bb3afe314f35d53990ec6Brian Carlstrom ART_BUILD_HOST := true 2114b620ffb1b4d0c96a94bb3afe314f35d53990ec6Brian Carlstromendif 212