Android.common.mk revision 3e778f7ee62fe75912379531022a09230c25f5f8
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 17f1eedca3a34bce42bb25bb8432b5d5df12103d16Elliott Hughes# TODO: move the LLVM compiler out into a separate shared library too... 18d1fec81868a3567560a3868350e0a945248e925bShih-wei Liao# Use llvm as the backend 19d1fec81868a3567560a3868350e0a945248e925bShih-wei Liaoifneq ($(wildcard art/USE_LLVM_COMPILER),) 20d1fec81868a3567560a3868350e0a945248e925bShih-wei LiaoART_USE_LLVM_COMPILER := true 21d1fec81868a3567560a3868350e0a945248e925bShih-wei Liaoelse 22d1fec81868a3567560a3868350e0a945248e925bShih-wei LiaoART_USE_LLVM_COMPILER := false 23d1fec81868a3567560a3868350e0a945248e925bShih-wei Liaoendif 24d1fec81868a3567560a3868350e0a945248e925bShih-wei Liao 25d1fec81868a3567560a3868350e0a945248e925bShih-wei Liaoifeq ($(ART_USE_LLVM_COMPILER),true) 26d1fec81868a3567560a3868350e0a945248e925bShih-wei LiaoLLVM_ROOT_PATH := external/llvm 27d1fec81868a3567560a3868350e0a945248e925bShih-wei Liaoinclude $(LLVM_ROOT_PATH)/llvm.mk 28d1fec81868a3567560a3868350e0a945248e925bShih-wei Liaoendif 29d1fec81868a3567560a3868350e0a945248e925bShih-wei Liao 3032b4b2a30636360756058524f8491ee4cd81c423Brian Carlstrom# directory used for gtests on device 3132b4b2a30636360756058524f8491ee4cd81c423Brian CarlstromART_NATIVETEST_DIR := /data/nativetest/art 3232b4b2a30636360756058524f8491ee4cd81c423Brian CarlstromART_NATIVETEST_OUT := $(TARGET_OUT_DATA_NATIVE_TESTS)/art 3332b4b2a30636360756058524f8491ee4cd81c423Brian Carlstrom 3447a0d5a6f221066c3daf7f67f2122ed9c9cd217cBrian Carlstrom# directory used for tests on device 3547a0d5a6f221066c3daf7f67f2122ed9c9cd217cBrian CarlstromART_TEST_DIR := /data/art-test 3647a0d5a6f221066c3daf7f67f2122ed9c9cd217cBrian CarlstromART_TEST_OUT := $(TARGET_OUT_DATA)/art-test 3747a0d5a6f221066c3daf7f67f2122ed9c9cd217cBrian Carlstrom 38cdc8de4642ca447a7ed205f0d2203cb217e48aadBrian CarlstromART_CPP_EXTENSION := .cc 399bf84fd5b69f17ad3e3dca37aa021bdc4246259eCarl Shapiro 400af5543f8ea20c3e655b2d748a1b7dcf283792feElliott HughesART_C_INCLUDES := \ 410af5543f8ea20c3e655b2d748a1b7dcf283792feElliott Hughes external/gtest/include \ 420af5543f8ea20c3e655b2d748a1b7dcf283792feElliott Hughes external/icu4c/common \ 430af5543f8ea20c3e655b2d748a1b7dcf283792feElliott Hughes external/icu4c/i18n \ 448d768a954b101a9532f980253ac46be2c53aba11Elliott Hughes external/valgrind/dynamic_annotations \ 45c143c55718342519db5398e41dda31422cf16c79buzbee external/zlib \ 46adb8c67f6d87a160d4e3a8afea7cb93f6c14568bElliott Hughes art/src 47b0460eaa2cb131f1dbdd5a7217bd36b9a9f1b995Brian Carlstrom 481d3f114124b140629a7d22fa5cfa20ab8fc96934Elliott Hughesart_cflags := \ 49646c3d7b965122bc88706307704d6d50e26df758Ian Rogers -O2 \ 501fb8620309a4e94d11879aabc33364acfa733904Carl Shapiro -ggdb3 \ 511fb8620309a4e94d11879aabc33364acfa733904Carl Shapiro -Wall \ 521fb8620309a4e94d11879aabc33364acfa733904Carl Shapiro -Werror \ 531fb8620309a4e94d11879aabc33364acfa733904Carl Shapiro -Wextra \ 54eaa200d9b8a28f1a23b6ded7875d2b8fca555254Elliott Hughes -Wstrict-aliasing=3 \ 551fb8620309a4e94d11879aabc33364acfa733904Carl Shapiro -fno-align-jumps \ 561fb8620309a4e94d11879aabc33364acfa733904Carl Shapiro -fstrict-aliasing 571fb8620309a4e94d11879aabc33364acfa733904Carl Shapiro 5869d7a6b9f87afbf6308e28c66bbcab7ff94c8049Brian Carlstromifeq ($(HOST_OS),linux) 5924782c6aa7abf396de057d7eb15035b4c594a3b4Shih-wei Liao art_non_debug_cflags := \ 603b6baaa203fa63f1522b2172a1645f90412afdaeElliott Hughes -Wframe-larger-than=1728 6169d7a6b9f87afbf6308e28c66bbcab7ff94c8049Brian Carlstromendif 623b6baaa203fa63f1522b2172a1645f90412afdaeElliott Hughes 633b6baaa203fa63f1522b2172a1645f90412afdaeElliott Hughesart_debug_cflags := \ 6406e3ad4a651c2c58dba5e865cd06d2f98462bf1dElliott Hughes -DDYNAMIC_ANNOTATIONS_ENABLED=1 \ 653b6baaa203fa63f1522b2172a1645f90412afdaeElliott Hughes -UNDEBUG 663b6baaa203fa63f1522b2172a1645f90412afdaeElliott Hughes 671d3f114124b140629a7d22fa5cfa20ab8fc96934Elliott HughesART_HOST_CFLAGS := $(art_cflags) -DANDROID_SMP=1 681d3f114124b140629a7d22fa5cfa20ab8fc96934Elliott Hughes 6908e1ba3c5899213e63007b0158e0a491f2449ea4Logan ChienART_TARGET_CFLAGS := $(art_cflags) -DART_TARGET 701d3f114124b140629a7d22fa5cfa20ab8fc96934Elliott Hughesifeq ($(TARGET_CPU_SMP),true) 711d3f114124b140629a7d22fa5cfa20ab8fc96934Elliott Hughes ART_TARGET_CFLAGS += -DANDROID_SMP=1 721d3f114124b140629a7d22fa5cfa20ab8fc96934Elliott Hugheselse 731d3f114124b140629a7d22fa5cfa20ab8fc96934Elliott Hughes ART_TARGET_CFLAGS += -DANDROID_SMP=0 741d3f114124b140629a7d22fa5cfa20ab8fc96934Elliott Hughesendif 751d3f114124b140629a7d22fa5cfa20ab8fc96934Elliott Hughes 7689521898b56f2ebc3fb68acfb6bc6dde9b6f5c38Brian Carlstrom# To use oprofile_android --callgraph, uncomment this and recompile with "mmm art -B -j16" 7789521898b56f2ebc3fb68acfb6bc6dde9b6f5c38Brian Carlstrom# ART_TARGET_CFLAGS += -fno-omit-frame-pointer -marm -mapcs 7889521898b56f2ebc3fb68acfb6bc6dde9b6f5c38Brian Carlstrom 793b6baaa203fa63f1522b2172a1645f90412afdaeElliott HughesART_HOST_NON_DEBUG_CFLAGS := $(art_non_debug_cflags) 803b6baaa203fa63f1522b2172a1645f90412afdaeElliott HughesART_TARGET_NON_DEBUG_CFLAGS := $(art_non_debug_cflags) 813b6baaa203fa63f1522b2172a1645f90412afdaeElliott Hughes 828692721dd8a3679ca874c3d1be0cecb62ff148f6Brian Carlstrom# TODO: move -fkeep-inline-functions to art_debug_cflags when target gcc > 4.4 831ba271478b17b25ca634563fc915fb6263efd492Elliott HughesART_HOST_DEBUG_CFLAGS := $(art_debug_cflags) -fkeep-inline-functions 84ad6c9c3dbf7541340f22ccbb333f08556ad7e000Elliott Hughes 85ad6c9c3dbf7541340f22ccbb333f08556ad7e000Elliott Hughesifneq ($(HOST_OS),linux) 86ad6c9c3dbf7541340f22ccbb333f08556ad7e000Elliott Hughes # Some Mac OS pthread header files are broken with -fkeep-inline-functions. 8734cf51471a40d55dd63897daf855fec8179b0f7fElliott Hughes ART_HOST_DEBUG_CFLAGS := $(filter-out -fkeep-inline-functions,$(ART_HOST_DEBUG_CFLAGS)) 88ad6c9c3dbf7541340f22ccbb333f08556ad7e000Elliott Hughesendif 89ad6c9c3dbf7541340f22ccbb333f08556ad7e000Elliott Hughes 908692721dd8a3679ca874c3d1be0cecb62ff148f6Brian CarlstromART_TARGET_DEBUG_CFLAGS := $(art_debug_cflags) 911d3f114124b140629a7d22fa5cfa20ab8fc96934Elliott Hughes 9258e63f9e999605bce6e8dc301eaf5e2ee0981e03TDYaifeq ($(ART_USE_LLVM_COMPILER),true) 9358e63f9e999605bce6e8dc301eaf5e2ee0981e03TDYaPARALLEL_ART_COMPILE_JOBS := -j8 9458e63f9e999605bce6e8dc301eaf5e2ee0981e03TDYaendif 9558e63f9e999605bce6e8dc301eaf5e2ee0981e03TDYa 9669b15fb098162f19a4c20e6dccdcead04d9c77f0Brian CarlstromDEX2OAT_SRC_FILES := \ 9769b15fb098162f19a4c20e6dccdcead04d9c77f0Brian Carlstrom src/dex2oat.cc 9869b15fb098162f19a4c20e6dccdcead04d9c77f0Brian Carlstrom 9978128a63b2615744760b7f8ab83df9764a5d4a95Brian CarlstromOATDUMP_SRC_FILES := \ 1003e778f7ee62fe75912379531022a09230c25f5f8Elliott Hughes src/oatdump.cc 10178128a63b2615744760b7f8ab83df9764a5d4a95Brian Carlstrom 10269b15fb098162f19a4c20e6dccdcead04d9c77f0Brian CarlstromOATEXEC_SRC_FILES := \ 10369b15fb098162f19a4c20e6dccdcead04d9c77f0Brian Carlstrom src/oatexec.cc 1049bf84fd5b69f17ad3e3dca37aa021bdc4246259eCarl Shapiro 105934486cf07c578b6494417ca5dcbae89cf04b019Brian CarlstromLIBART_COMMON_SRC_FILES := \ 1065ea047b386c5dac78eda62305d14dedf7b5611a8Elliott Hughes src/atomic.cc.arm \ 1075d76c435082332ef79a22962386fa92a0870e378Ian Rogers src/card_table.cc \ 108a2501990dd0f68baf38ce19251949d7bb3ecfe5aElliott Hughes src/check_jni.cc \ 1090e5d75d5ca2b8a44fab0c862276a466cbab39859Carl Shapiro src/class_linker.cc \ 1101f87008b165d26541d832ff805250afdc89c253dBrian Carlstrom src/class_loader.cc \ 1113320cf46afd082398aa401b246e6f301cebdf64dBrian Carlstrom src/compiled_method.cc \ 1129ea1cb1a22be5b85dc2622e3836c46a1c48e3f25Brian Carlstrom src/compiler.cc \ 113872d4ec7225444d9400d30f9027247deb91012fdElliott Hughes src/debugger.cc \ 1147e49dca262933bc30cbc8b9f07cfc8cce2343389Brian Carlstrom src/dex_cache.cc \ 1151fb8620309a4e94d11879aabc33364acfa733904Carl Shapiro src/dex_file.cc \ 11610037c866b04550fc5461058c398c2e3e509381ajeffhao src/dex_file_verifier.cc \ 11712eb78e651f13f2c1f0c2c922048a5a213253adfCarl Shapiro src/dex_instruction.cc \ 1183e778f7ee62fe75912379531022a09230c25f5f8Elliott Hughes src/disassembler.cc \ 1193e778f7ee62fe75912379531022a09230c25f5f8Elliott Hughes src/disassembler_arm.cc \ 1203e778f7ee62fe75912379531022a09230c25f5f8Elliott Hughes src/disassembler_mips.cc \ 1213e778f7ee62fe75912379531022a09230c25f5f8Elliott Hughes src/disassembler_x86.cc \ 12230fab40ee5a07af6b8c3b6b0e9438071695a57f4Ian Rogers src/dlmalloc.c \ 123db4d54081f09abcbe97ffdf615874f2809a9e777Brian Carlstrom src/file.cc \ 124db4d54081f09abcbe97ffdf615874f2809a9e777Brian Carlstrom src/file_linux.cc \ 12569759eaa6fd4386f1e6d8748052ad221087b3476Carl Shapiro src/heap.cc \ 1265e71b52a6f2c16fd02b389d220e60808cbc8f74aElliott Hughes src/heap_bitmap.cc \ 127c4824e60fef6cb9fdf0f8442408338f4141e09deJesse Wilson src/hprof/hprof.cc \ 1280c54ac102a3c489d284a8db5d91189da5b455c40Jesse Wilson src/hprof/hprof_record.cc \ 1294a289ed61242964b921434de7d375f46480472a1Brian Carlstrom src/image.cc \ 130db4d54081f09abcbe97ffdf615874f2809a9e777Brian Carlstrom src/image_writer.cc \ 1316c1a394b47c85c8d1723fc3b156a3b1b0b29a757Elliott Hughes src/indirect_reference_table.cc \ 1327e93b50433cde2a44d99212e8040299bde498546Brian Carlstrom src/intern_table.cc \ 133872d4ec7225444d9400d30f9027247deb91012fdElliott Hughes src/jdwp/jdwp_event.cc \ 134872d4ec7225444d9400d30f9027247deb91012fdElliott Hughes src/jdwp/jdwp_expand_buf.cc \ 135872d4ec7225444d9400d30f9027247deb91012fdElliott Hughes src/jdwp/jdwp_handler.cc \ 136872d4ec7225444d9400d30f9027247deb91012fdElliott Hughes src/jdwp/jdwp_main.cc \ 137872d4ec7225444d9400d30f9027247deb91012fdElliott Hughes src/jdwp/jdwp_socket.cc \ 138df20fe0c097073f75f22d16e72fd3636a31d3ca1Ian Rogers src/jni_internal.cc \ 13942ee14279065352a4b9a3e8028d02c567e847d05Elliott Hughes src/logging.cc \ 14069759eaa6fd4386f1e6d8748052ad221087b3476Carl Shapiro src/mark_stack.cc \ 14169759eaa6fd4386f1e6d8748052ad221087b3476Carl Shapiro src/mark_sweep.cc \ 14227ec961a1da540ba7f16c07a682585ab167317adBrian Carlstrom src/mem_map.cc \ 1431fb8620309a4e94d11879aabc33364acfa733904Carl Shapiro src/memory_region.cc \ 14454e7df1896a4066cbb9fe6f72249829f0b8c49c6Elliott Hughes src/monitor.cc \ 1458daa0929f08a3080ea64dbd4e997e72f411e6fc9Elliott Hughes src/mutex.cc \ 1460dae08ead9112adb81ad507b81187f00f77bc168Ian Rogers src/native/dalvik_system_DexFile.cc \ 1470dae08ead9112adb81ad507b81187f00f77bc168Ian Rogers src/native/dalvik_system_VMDebug.cc \ 1480dae08ead9112adb81ad507b81187f00f77bc168Ian Rogers src/native/dalvik_system_VMRuntime.cc \ 1490dae08ead9112adb81ad507b81187f00f77bc168Ian Rogers src/native/dalvik_system_VMStack.cc \ 1500dae08ead9112adb81ad507b81187f00f77bc168Ian Rogers src/native/dalvik_system_Zygote.cc \ 1510dae08ead9112adb81ad507b81187f00f77bc168Ian Rogers src/native/java_lang_Class.cc \ 1520dae08ead9112adb81ad507b81187f00f77bc168Ian Rogers src/native/java_lang_Object.cc \ 1530dae08ead9112adb81ad507b81187f00f77bc168Ian Rogers src/native/java_lang_Runtime.cc \ 1540dae08ead9112adb81ad507b81187f00f77bc168Ian Rogers src/native/java_lang_String.cc \ 1550dae08ead9112adb81ad507b81187f00f77bc168Ian Rogers src/native/java_lang_System.cc \ 1560dae08ead9112adb81ad507b81187f00f77bc168Ian Rogers src/native/java_lang_Thread.cc \ 1570dae08ead9112adb81ad507b81187f00f77bc168Ian Rogers src/native/java_lang_Throwable.cc \ 1580dae08ead9112adb81ad507b81187f00f77bc168Ian Rogers src/native/java_lang_VMClassLoader.cc \ 1590dae08ead9112adb81ad507b81187f00f77bc168Ian Rogers src/native/java_lang_reflect_Array.cc \ 1600dae08ead9112adb81ad507b81187f00f77bc168Ian Rogers src/native/java_lang_reflect_Constructor.cc \ 1610dae08ead9112adb81ad507b81187f00f77bc168Ian Rogers src/native/java_lang_reflect_Field.cc \ 1620dae08ead9112adb81ad507b81187f00f77bc168Ian Rogers src/native/java_lang_reflect_Method.cc \ 1630dae08ead9112adb81ad507b81187f00f77bc168Ian Rogers src/native/java_lang_reflect_Proxy.cc \ 1640dae08ead9112adb81ad507b81187f00f77bc168Ian Rogers src/native/java_util_concurrent_atomic_AtomicLong.cc \ 1650dae08ead9112adb81ad507b81187f00f77bc168Ian Rogers src/native/org_apache_harmony_dalvik_ddmc_DdmServer.cc \ 1660dae08ead9112adb81ad507b81187f00f77bc168Ian Rogers src/native/org_apache_harmony_dalvik_ddmc_DdmVmInternal.cc \ 1670dae08ead9112adb81ad507b81187f00f77bc168Ian Rogers src/native/sun_misc_Unsafe.cc \ 168776ac1fa61237db645adb4370a4aab888530caf4Ian Rogers src/oat/runtime/arm/stub_arm.cc \ 169776ac1fa61237db645adb4370a4aab888530caf4Ian Rogers src/oat/runtime/x86/stub_x86.cc \ 170776ac1fa61237db645adb4370a4aab888530caf4Ian Rogers src/oat/utils/arm/assembler_arm.cc \ 171776ac1fa61237db645adb4370a4aab888530caf4Ian Rogers src/oat/utils/arm/managed_register_arm.cc \ 172776ac1fa61237db645adb4370a4aab888530caf4Ian Rogers src/oat/utils/assembler.cc \ 173776ac1fa61237db645adb4370a4aab888530caf4Ian Rogers src/oat/utils/x86/assembler_x86.cc \ 174776ac1fa61237db645adb4370a4aab888530caf4Ian Rogers src/oat/utils/x86/managed_register_x86.cc \ 175e24fa61603a60ade3797e4a0c8b3fccb346cb048Brian Carlstrom src/oat.cc \ 176e24fa61603a60ade3797e4a0c8b3fccb346cb048Brian Carlstrom src/oat_file.cc \ 177e24fa61603a60ade3797e4a0c8b3fccb346cb048Brian Carlstrom src/oat_writer.cc \ 1783ee755da5c1c17b6a29052d171a8a63c0eb0b052Carl Shapiro src/object.cc \ 17969759eaa6fd4386f1e6d8748052ad221087b3476Carl Shapiro src/offsets.cc \ 180db4d54081f09abcbe97ffdf615874f2809a9e777Brian Carlstrom src/os_linux.cc \ 181ae826983f7903bc0a6bbbe8426bf393fb2f6d747Brian Carlstrom src/primitive.cc \ 18211e45077acba2e757799a00b3be9d63fec36a7ccElliott Hughes src/reference_table.cc \ 183418d20fc407052d4152157f61e7453359f902383Elliott Hughes src/reflection.cc \ 184d4e48fdd5f8baad270a82120a912106b98074501Carl Shapiro src/runtime.cc \ 185a8a9c3490776ab897a15bebd31119c94ede5c19aShih-wei Liao src/runtime_support.cc \ 18688c5c355fc3d881f905564911d746b2313d5fc89Elliott Hughes src/scoped_thread_list_lock.cc \ 187e27955ca3ca960928d4dbd6cb79711fce06950b3Elliott Hughes src/signal_catcher.cc \ 18869759eaa6fd4386f1e6d8748052ad221087b3476Carl Shapiro src/space.cc \ 18968e76526e98432625464022cb26f66b9ef6f5af4Elliott Hughes src/stack.cc \ 190b557353b22c728eecbd1c68593b482622c7782a8Carl Shapiro src/stringpiece.cc \ 191eb4f614f2eb53b92ebd416fa418f550861655887Elliott Hughes src/stringprintf.cc \ 192b0460eaa2cb131f1dbdd5a7217bd36b9a9f1b995Brian Carlstrom src/thread.cc \ 1938daa0929f08a3080ea64dbd4e997e72f411e6fc9Elliott Hughes src/thread_list.cc \ 194e343b76af81a005ef64f5e75a555389fd9147dabjeffhao src/trace.cc \ 195814e40397fe6c8a2c645bae99f356dbddd6dbe18Elliott Hughes src/utf.cc \ 19611e45077acba2e757799a00b3be9d63fec36a7ccElliott Hughes src/utils.cc \ 197776ac1fa61237db645adb4370a4aab888530caf4Ian Rogers src/zip_archive.cc \ 198776ac1fa61237db645adb4370a4aab888530caf4Ian Rogers src/verifier/gc_map.cc \ 199776ac1fa61237db645adb4370a4aab888530caf4Ian Rogers src/verifier/method_verifier.cc \ 200776ac1fa61237db645adb4370a4aab888530caf4Ian Rogers src/verifier/reg_type.cc \ 201776ac1fa61237db645adb4370a4aab888530caf4Ian Rogers src/verifier/reg_type_cache.cc \ 202776ac1fa61237db645adb4370a4aab888530caf4Ian Rogers src/verifier/register_line.cc 203a5d5cfda6239d8876937e75eba43222f639d2447Carl Shapiro 204d1fec81868a3567560a3868350e0a945248e925bShih-wei Liaoifeq ($(ART_USE_LLVM_COMPILER),true) 205d1fec81868a3567560a3868350e0a945248e925bShih-wei LiaoLIBART_COMMON_SRC_FILES += \ 2063fe0c60b00f32274f0763feb6b51bb05dff2abb9Logan Chien src/compiler_llvm/elf_loader.cc \ 207fca7e87c4831ac52073bdd0b2c7342488ce286d8Logan Chien src/compiler_llvm/inferred_reg_category_map.cc \ 208937105a220983351695bf4c8924171ba5d17a68cLogan Chien src/compiler_llvm/runtime_support_llvm.cc 2096e94f144e2d41c75c17c11f41ee8daba3455980bShih-wei Liaoendif 2106e94f144e2d41c75c17c11f41ee8daba3455980bShih-wei Liao 21157b86d47b66322693a070185fadfb43cb9c12eabIan RogersLIBART_COMMON_SRC_FILES += \ 21257b86d47b66322693a070185fadfb43cb9c12eabIan Rogers src/oat/runtime/context.cc \ 21357b86d47b66322693a070185fadfb43cb9c12eabIan Rogers src/oat/runtime/support_alloc.cc \ 21457b86d47b66322693a070185fadfb43cb9c12eabIan Rogers src/oat/runtime/support_cast.cc \ 21557b86d47b66322693a070185fadfb43cb9c12eabIan Rogers src/oat/runtime/support_debug.cc \ 21657b86d47b66322693a070185fadfb43cb9c12eabIan Rogers src/oat/runtime/support_dexcache.cc \ 21757b86d47b66322693a070185fadfb43cb9c12eabIan Rogers src/oat/runtime/support_field.cc \ 21857b86d47b66322693a070185fadfb43cb9c12eabIan Rogers src/oat/runtime/support_fillarray.cc \ 21957b86d47b66322693a070185fadfb43cb9c12eabIan Rogers src/oat/runtime/support_invoke.cc \ 22057b86d47b66322693a070185fadfb43cb9c12eabIan Rogers src/oat/runtime/support_jni.cc \ 22157b86d47b66322693a070185fadfb43cb9c12eabIan Rogers src/oat/runtime/support_locks.cc \ 22257b86d47b66322693a070185fadfb43cb9c12eabIan Rogers src/oat/runtime/support_math.cc \ 22357b86d47b66322693a070185fadfb43cb9c12eabIan Rogers src/oat/runtime/support_proxy.cc \ 22457b86d47b66322693a070185fadfb43cb9c12eabIan Rogers src/oat/runtime/support_stubs.cc \ 22557b86d47b66322693a070185fadfb43cb9c12eabIan Rogers src/oat/runtime/support_thread.cc \ 22657b86d47b66322693a070185fadfb43cb9c12eabIan Rogers src/oat/runtime/support_throw.cc \ 227776ac1fa61237db645adb4370a4aab888530caf4Ian Rogers src/oat/runtime/support_trace.cc 228d1fec81868a3567560a3868350e0a945248e925bShih-wei Liao 229934486cf07c578b6494417ca5dcbae89cf04b019Brian CarlstromLIBART_TARGET_SRC_FILES := \ 230934486cf07c578b6494417ca5dcbae89cf04b019Brian Carlstrom $(LIBART_COMMON_SRC_FILES) \ 231872d4ec7225444d9400d30f9027247deb91012fdElliott Hughes src/jdwp/jdwp_adb.cc \ 232ffe6736397d17457188727510f0a2953f69a383aElliott Hughes src/logging_android.cc \ 233fc86162ce2a3467acb690e18cc8bd9b3daafc606Elliott Hughes src/monitor_android.cc \ 234b033c75ebda80ac75f936366fe78d1edf5cec937Ian Rogers src/runtime_android.cc \ 2355147733292cd0b80ca7da3099e43cc549d67526bBrian Carlstrom src/thread_android.cc 2365147733292cd0b80ca7da3099e43cc549d67526bBrian Carlstrom 2375147733292cd0b80ca7da3099e43cc549d67526bBrian Carlstromifeq ($(TARGET_ARCH),arm) 23857b86d47b66322693a070185fadfb43cb9c12eabIan RogersLIBART_TARGET_SRC_FILES += \ 23957b86d47b66322693a070185fadfb43cb9c12eabIan Rogers src/oat/runtime/arm/context_arm.cc.arm \ 24057b86d47b66322693a070185fadfb43cb9c12eabIan Rogers src/oat/runtime/arm/oat_support_entrypoints_arm.cc \ 241776ac1fa61237db645adb4370a4aab888530caf4Ian Rogers src/oat/runtime/arm/runtime_support_arm.S 2425147733292cd0b80ca7da3099e43cc549d67526bBrian Carlstromelse # TARGET_ARCH != arm 2435147733292cd0b80ca7da3099e43cc549d67526bBrian Carlstromifeq ($(TARGET_ARCH),x86) 24457b86d47b66322693a070185fadfb43cb9c12eabIan RogersLIBART_TARGET_SRC_FILES += \ 24557b86d47b66322693a070185fadfb43cb9c12eabIan Rogers src/oat/runtime/x86/context_x86.cc \ 24657b86d47b66322693a070185fadfb43cb9c12eabIan Rogers src/oat/runtime/x86/oat_support_entrypoints_x86.cc \ 247776ac1fa61237db645adb4370a4aab888530caf4Ian Rogers src/oat/runtime/x86/runtime_support_x86.S 2485147733292cd0b80ca7da3099e43cc549d67526bBrian Carlstromelse # TARGET_ARCH != x86 2495147733292cd0b80ca7da3099e43cc549d67526bBrian Carlstromifeq ($(TARGET_ARCH),mips) 25057b86d47b66322693a070185fadfb43cb9c12eabIan RogersLIBART_TARGET_SRC_FILES += \ 25157b86d47b66322693a070185fadfb43cb9c12eabIan Rogers src/oat/runtime/mips/oat_support_entrypoints_mips.cc \ 252776ac1fa61237db645adb4370a4aab888530caf4Ian Rogers src/oat/runtime/mips/runtime_support_mips.S 253776ac1fa61237db645adb4370a4aab888530caf4Ian Rogerselse # TARGET_ARCH != mips 254776ac1fa61237db645adb4370a4aab888530caf4Ian Rogers$(error unsupported TARGET_ARCH=$(TARGET_ARCH)) 255776ac1fa61237db645adb4370a4aab888530caf4Ian Rogersendif # TARGET_ARCH != mips 256776ac1fa61237db645adb4370a4aab888530caf4Ian Rogersendif # TARGET_ARCH != x86 257776ac1fa61237db645adb4370a4aab888530caf4Ian Rogersendif # TARGET_ARCH != arm 258776ac1fa61237db645adb4370a4aab888530caf4Ian Rogers 259776ac1fa61237db645adb4370a4aab888530caf4Ian Rogersifeq ($(TARGET_ARCH),arm) 260776ac1fa61237db645adb4370a4aab888530caf4Ian RogersLIBART_TARGET_SRC_FILES += src/thread_arm.cc 261776ac1fa61237db645adb4370a4aab888530caf4Ian Rogerselse # TARGET_ARCH != arm 262776ac1fa61237db645adb4370a4aab888530caf4Ian Rogersifeq ($(TARGET_ARCH),x86) 263776ac1fa61237db645adb4370a4aab888530caf4Ian RogersLIBART_TARGET_SRC_FILES += src/thread_x86.cc 264776ac1fa61237db645adb4370a4aab888530caf4Ian Rogerselse # TARGET_ARCH != x86 265776ac1fa61237db645adb4370a4aab888530caf4Ian Rogersifeq ($(TARGET_ARCH),mips) 266776ac1fa61237db645adb4370a4aab888530caf4Ian RogersLIBART_TARGET_SRC_FILES += src/thread_mips.cc 2675147733292cd0b80ca7da3099e43cc549d67526bBrian Carlstromelse # TARGET_ARCH != mips 2685147733292cd0b80ca7da3099e43cc549d67526bBrian Carlstrom$(error unsupported TARGET_ARCH=$(TARGET_ARCH)) 2695147733292cd0b80ca7da3099e43cc549d67526bBrian Carlstromendif # TARGET_ARCH != mips 2705147733292cd0b80ca7da3099e43cc549d67526bBrian Carlstromendif # TARGET_ARCH != x86 2715147733292cd0b80ca7da3099e43cc549d67526bBrian Carlstromendif # TARGET_ARCH != arm 272a5d5cfda6239d8876937e75eba43222f639d2447Carl Shapiro 273934486cf07c578b6494417ca5dcbae89cf04b019Brian CarlstromLIBART_HOST_SRC_FILES := \ 274934486cf07c578b6494417ca5dcbae89cf04b019Brian Carlstrom $(LIBART_COMMON_SRC_FILES) \ 275ffe6736397d17457188727510f0a2953f69a383aElliott Hughes src/logging_linux.cc \ 276fc86162ce2a3467acb690e18cc8bd9b3daafc606Elliott Hughes src/monitor_linux.cc \ 277b033c75ebda80ac75f936366fe78d1edf5cec937Ian Rogers src/runtime_linux.cc \ 2785147733292cd0b80ca7da3099e43cc549d67526bBrian Carlstrom src/thread_linux.cc 2795147733292cd0b80ca7da3099e43cc549d67526bBrian Carlstrom 2805147733292cd0b80ca7da3099e43cc549d67526bBrian Carlstromifeq ($(HOST_ARCH),x86) 28157b86d47b66322693a070185fadfb43cb9c12eabIan RogersLIBART_HOST_SRC_FILES += \ 28257b86d47b66322693a070185fadfb43cb9c12eabIan Rogers src/oat/runtime/x86/oat_support_entrypoints_x86.cc \ 28357b86d47b66322693a070185fadfb43cb9c12eabIan Rogers src/oat/runtime/x86/context_x86.cc \ 284776ac1fa61237db645adb4370a4aab888530caf4Ian Rogers src/oat/runtime/x86/runtime_support_x86.S 2855147733292cd0b80ca7da3099e43cc549d67526bBrian Carlstromelse # HOST_ARCH != x86 2865147733292cd0b80ca7da3099e43cc549d67526bBrian Carlstrom$(error unsupported HOST_ARCH=$(HOST_ARCH)) 2875147733292cd0b80ca7da3099e43cc549d67526bBrian Carlstromendif # HOST_ARCH != x86 288776ac1fa61237db645adb4370a4aab888530caf4Ian Rogers 289776ac1fa61237db645adb4370a4aab888530caf4Ian Rogersifeq ($(HOST_ARCH),x86) 290776ac1fa61237db645adb4370a4aab888530caf4Ian RogersLIBART_HOST_SRC_FILES += src/thread_x86.cc 291776ac1fa61237db645adb4370a4aab888530caf4Ian Rogerselse # HOST_ARCH != x86 292776ac1fa61237db645adb4370a4aab888530caf4Ian Rogers$(error unsupported HOST_ARCH=$(HOST_ARCH)) 293776ac1fa61237db645adb4370a4aab888530caf4Ian Rogersendif # HOST_ARCH != x86 294776ac1fa61237db645adb4370a4aab888530caf4Ian Rogers 295c981ace51da03ca6a9cd100c2c4d6c9bf6100138Jesse Wilson 2960e57ccbbc2de9eeaeecd699575aab22a3f555619Elliott HughesLIBART_ENUM_OPERATOR_OUT_HEADER_FILES := \ 2970e57ccbbc2de9eeaeecd699575aab22a3f555619Elliott Hughes src/indirect_reference_table.h \ 2980e57ccbbc2de9eeaeecd699575aab22a3f555619Elliott Hughes src/instruction_set.h \ 2990e57ccbbc2de9eeaeecd699575aab22a3f555619Elliott Hughes src/invoke_type.h \ 300460384f04f933f94546db7bfbfa02896b9e77962Elliott Hughes src/jdwp/jdwp.h \ 301460384f04f933f94546db7bfbfa02896b9e77962Elliott Hughes src/jdwp/jdwp_constants.h \ 30234e069606d6f1698cd3c33b39e72b79ae27e1c7bElliott Hughes src/mutex.h \ 303776ac1fa61237db645adb4370a4aab888530caf4Ian Rogers src/thread.h \ 304776ac1fa61237db645adb4370a4aab888530caf4Ian Rogers src/verifier/method_verifier.h 3050e57ccbbc2de9eeaeecd699575aab22a3f555619Elliott Hughes 306cdc8de4642ca447a7ed205f0d2203cb217e48aadBrian CarlstromLIBARTTEST_COMMON_SRC_FILES := \ 307a6af3c35cd671014b68ffae3137559ffdcf6475fShih-wei Liao test/StackWalk/stack_walk_jni.cc \ 308a6af3c35cd671014b68ffae3137559ffdcf6475fShih-wei Liao test/ReferenceMap/stack_walk_refmap_jni.cc 309cdc8de4642ca447a7ed205f0d2203cb217e48aadBrian Carlstrom 310934486cf07c578b6494417ca5dcbae89cf04b019Brian CarlstromTEST_COMMON_SRC_FILES := \ 3110e5d75d5ca2b8a44fab0c862276a466cbab39859Carl Shapiro src/class_linker_test.cc \ 312aded5f7ab991f3c1132851599d3bc60ff6707eedBrian Carlstrom src/compiler_test.cc \ 3137e49dca262933bc30cbc8b9f07cfc8cce2343389Brian Carlstrom src/dex_cache_test.cc \ 3141fb8620309a4e94d11879aabc33364acfa733904Carl Shapiro src/dex_file_test.cc \ 3151fb8620309a4e94d11879aabc33364acfa733904Carl Shapiro src/dex_instruction_visitor_test.cc \ 3162fb9753c58ce1a511fd6996856840120eb2930dbShih-wei Liao src/exception_test.cc \ 317db4d54081f09abcbe97ffdf615874f2809a9e777Brian Carlstrom src/file_test.cc \ 3181f87008b165d26541d832ff805250afdc89c253dBrian Carlstrom src/heap_test.cc \ 319db4d54081f09abcbe97ffdf615874f2809a9e777Brian Carlstrom src/image_test.cc \ 3206c1a394b47c85c8d1723fc3b156a3b1b0b29a757Elliott Hughes src/indirect_reference_table_test.cc \ 3217e93b50433cde2a44d99212e8040299bde498546Brian Carlstrom src/intern_table_test.cc \ 322cd2764fda5dc4eeccb0c66fcc06eb91f70b98e24Ian Rogers src/jni_internal_test.cc \ 323cd2764fda5dc4eeccb0c66fcc06eb91f70b98e24Ian Rogers src/jni_compiler_test.cc \ 32457b86d47b66322693a070185fadfb43cb9c12eabIan Rogers src/oat/utils/arm/managed_register_arm_test.cc \ 32557b86d47b66322693a070185fadfb43cb9c12eabIan Rogers src/oat/utils/x86/managed_register_x86_test.cc \ 326cd74c4b3a6893c876c6e03fd99a1264249653d80Brian Carlstrom src/mutex_test.cc \ 327e24fa61603a60ade3797e4a0c8b3fccb346cb048Brian Carlstrom src/oat_test.cc \ 328894d0fab562badca5c2f01a5c2adc8de756c08adCarl Shapiro src/object_test.cc \ 32911e45077acba2e757799a00b3be9d63fec36a7ccElliott Hughes src/reference_table_test.cc \ 330fc322c72d7a89a6f7a05c8bdc232d780aecd9232Carl Shapiro src/runtime_test.cc \ 331b0460eaa2cb131f1dbdd5a7217bd36b9a9f1b995Brian Carlstrom src/space_test.cc \ 33211e45077acba2e757799a00b3be9d63fec36a7ccElliott Hughes src/utils_test.cc \ 333776ac1fa61237db645adb4370a4aab888530caf4Ian Rogers src/zip_archive_test.cc \ 334776ac1fa61237db645adb4370a4aab888530caf4Ian Rogers src/verifier/method_verifier_test.cc \ 335776ac1fa61237db645adb4370a4aab888530caf4Ian Rogers src/verifier/reg_type_test.cc 336008e41230a702ddb4c558fca95af5d84d56b51cbCarl Shapiro 337934486cf07c578b6494417ca5dcbae89cf04b019Brian CarlstromTEST_TARGET_SRC_FILES := \ 3382c8f653c98d658419f464b6147c10e11a664d2e6Ian Rogers $(TEST_COMMON_SRC_FILES) 339c981ace51da03ca6a9cd100c2c4d6c9bf6100138Jesse Wilson 340934486cf07c578b6494417ca5dcbae89cf04b019Brian CarlstromTEST_HOST_SRC_FILES := \ 341934486cf07c578b6494417ca5dcbae89cf04b019Brian Carlstrom $(TEST_COMMON_SRC_FILES) \ 34257b86d47b66322693a070185fadfb43cb9c12eabIan Rogers src/oat/utils/x86/assembler_x86_test.cc 3439f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom 34432b4b2a30636360756058524f8491ee4cd81c423Brian Carlstrom# subdirectories of test/ which are used as inputs for gtests 3459f30b38d74990286ce27c3a45368f73dbe3638f0Brian CarlstromTEST_DEX_DIRECTORIES := \ 346303b01ed0d36017371e29b1f1e209dd19896ac9eShih-wei Liao AbstractMethod \ 3479f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom AllFields \ 3480571d357843c53e042f370f5f2c2e9aa3fe803a9Ian Rogers CreateMethodSignature \ 34933f741eefef8f8012f6c190b39355f2e0430d535Brian Carlstrom ExceptionHandle \ 3509f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom IntMath \ 3519f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom Interfaces \ 3529f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom Main \ 3539f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom MyClass \ 3549f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom MyClassNatives \ 3559f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom Nested \ 35677405796564c6c1353807cda18b28678a719bd68Elliott Hughes NonStaticLeafMethods \ 3579f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom ProtoCompare \ 3589f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom ProtoCompare2 \ 3599f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom StaticLeafMethods \ 3609f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom Statics \ 361abcfde3b9661618a88e170fac6fdf092a59eb993jeffhao StaticsFromCode \ 3629f30b38d74990286ce27c3a45368f73dbe3638f0Brian Carlstrom XandY 3634b620ffb1b4d0c96a94bb3afe314f35d53990ec6Brian Carlstrom 36432b4b2a30636360756058524f8491ee4cd81c423Brian Carlstrom# subdirectories of test/ which are used with test-art-target-oat 36532b4b2a30636360756058524f8491ee4cd81c423Brian Carlstrom# Declare the simplest tests (Main, HelloWorld, and Fibonacci) first, the rest are alphabetical 36632b4b2a30636360756058524f8491ee4cd81c423Brian CarlstromTEST_OAT_DIRECTORIES := \ 36732b4b2a30636360756058524f8491ee4cd81c423Brian Carlstrom Main \ 36832b4b2a30636360756058524f8491ee4cd81c423Brian Carlstrom HelloWorld \ 36932b4b2a30636360756058524f8491ee4cd81c423Brian Carlstrom Fibonacci \ 37032b4b2a30636360756058524f8491ee4cd81c423Brian Carlstrom \ 37132b4b2a30636360756058524f8491ee4cd81c423Brian Carlstrom ExceptionTest \ 37232b4b2a30636360756058524f8491ee4cd81c423Brian Carlstrom GrowthLimit \ 37332b4b2a30636360756058524f8491ee4cd81c423Brian Carlstrom IntMath \ 37432b4b2a30636360756058524f8491ee4cd81c423Brian Carlstrom Invoke \ 37532b4b2a30636360756058524f8491ee4cd81c423Brian Carlstrom MemUsage \ 37632b4b2a30636360756058524f8491ee4cd81c423Brian Carlstrom ParallelGC \ 37732b4b2a30636360756058524f8491ee4cd81c423Brian Carlstrom ReferenceMap \ 37832b4b2a30636360756058524f8491ee4cd81c423Brian Carlstrom ReflectionTest \ 37932b4b2a30636360756058524f8491ee4cd81c423Brian Carlstrom StackWalk \ 38032b4b2a30636360756058524f8491ee4cd81c423Brian Carlstrom ThreadStress 38132b4b2a30636360756058524f8491ee4cd81c423Brian Carlstrom 38232b4b2a30636360756058524f8491ee4cd81c423Brian Carlstrom# TODO: Enable when the StackWalk2 tests are passing 38332b4b2a30636360756058524f8491ee4cd81c423Brian Carlstrom# StackWalk2 \ 38432b4b2a30636360756058524f8491ee4cd81c423Brian Carlstrom 3854b620ffb1b4d0c96a94bb3afe314f35d53990ec6Brian CarlstromART_BUILD_TARGET := false 3864b620ffb1b4d0c96a94bb3afe314f35d53990ec6Brian CarlstromART_BUILD_HOST := false 3874b620ffb1b4d0c96a94bb3afe314f35d53990ec6Brian Carlstromifeq ($(ART_BUILD_TARGET_NDEBUG),true) 3884b620ffb1b4d0c96a94bb3afe314f35d53990ec6Brian Carlstrom ART_BUILD_TARGET := true 3894b620ffb1b4d0c96a94bb3afe314f35d53990ec6Brian Carlstromendif 3904b620ffb1b4d0c96a94bb3afe314f35d53990ec6Brian Carlstromifeq ($(ART_BUILD_TARGET_DEBUG),true) 3914b620ffb1b4d0c96a94bb3afe314f35d53990ec6Brian Carlstrom ART_BUILD_TARGET := true 3924b620ffb1b4d0c96a94bb3afe314f35d53990ec6Brian Carlstromendif 3934b620ffb1b4d0c96a94bb3afe314f35d53990ec6Brian Carlstromifeq ($(ART_BUILD_HOST_NDEBUG),true) 3944b620ffb1b4d0c96a94bb3afe314f35d53990ec6Brian Carlstrom ART_BUILD_HOST := true 3954b620ffb1b4d0c96a94bb3afe314f35d53990ec6Brian Carlstromendif 3964b620ffb1b4d0c96a94bb3afe314f35d53990ec6Brian Carlstromifeq ($(ART_BUILD_HOST_DEBUG),true) 3974b620ffb1b4d0c96a94bb3afe314f35d53990ec6Brian Carlstrom ART_BUILD_HOST := true 3984b620ffb1b4d0c96a94bb3afe314f35d53990ec6Brian Carlstromendif 399