Oscar Fuentes | 3d01fc7 | 2008-09-22 01:08:49 +0000 | [diff] [blame] | 1 | add_llvm_library(LLVMTarget |
Benjamin Kramer | dbc130f | 2010-01-16 22:23:09 +0000 | [diff] [blame] | 2 | Mangler.cpp |
Oscar Fuentes | 3d01fc7 | 2008-09-22 01:08:49 +0000 | [diff] [blame] | 3 | Target.cpp |
Oscar Fuentes | 3d01fc7 | 2008-09-22 01:08:49 +0000 | [diff] [blame] | 4 | TargetData.cpp |
Bruno Cardoso Lopes | d00d415 | 2009-06-11 22:13:00 +0000 | [diff] [blame] | 5 | TargetELFWriterInfo.cpp |
Anton Korobeynikov | 7af6fad | 2011-01-10 12:39:23 +0000 | [diff] [blame] | 6 | TargetFrameLowering.cpp |
Oscar Fuentes | 3d01fc7 | 2008-09-22 01:08:49 +0000 | [diff] [blame] | 7 | TargetInstrInfo.cpp |
Ted Kremenek | c55db82 | 2009-07-21 17:43:20 +0000 | [diff] [blame] | 8 | TargetIntrinsicInfo.cpp |
Chris Lattner | ce99120 | 2011-02-18 21:50:34 +0000 | [diff] [blame] | 9 | TargetLibraryInfo.cpp |
Chris Lattner | f014412 | 2009-07-28 03:13:23 +0000 | [diff] [blame] | 10 | TargetLoweringObjectFile.cpp |
Oscar Fuentes | 3d01fc7 | 2008-09-22 01:08:49 +0000 | [diff] [blame] | 11 | TargetMachine.cpp |
Oscar Fuentes | 3d01fc7 | 2008-09-22 01:08:49 +0000 | [diff] [blame] | 12 | TargetRegisterInfo.cpp |
Evan Cheng | 5b1b4489 | 2011-07-01 21:01:15 +0000 | [diff] [blame] | 13 | TargetSubtargetInfo.cpp |
Oscar Fuentes | 3d01fc7 | 2008-09-22 01:08:49 +0000 | [diff] [blame] | 14 | ) |
Oscar Fuentes | 6d857ca | 2011-02-18 22:06:14 +0000 | [diff] [blame] | 15 | |
Chandler Carruth | ac03e73 | 2011-07-29 00:14:25 +0000 | [diff] [blame] | 16 | add_llvm_library_dependencies(LLVMTarget |
| 17 | LLVMCore |
| 18 | LLVMMC |
| 19 | LLVMSupport |
| 20 | ) |
| 21 | |
Oscar Fuentes | 6d857ca | 2011-02-18 22:06:14 +0000 | [diff] [blame] | 22 | set(LLVM_ENUM_ASM_PRINTERS "") |
| 23 | set(LLVM_ENUM_ASM_PARSERS "") |
| 24 | set(LLVM_ENUM_DISASSEMBLERS "") |
| 25 | foreach(t ${LLVM_TARGETS_TO_BUILD}) |
| 26 | message(STATUS "Targeting ${t}") |
| 27 | add_subdirectory(${t}) |
Oscar Fuentes | 6d857ca | 2011-02-18 22:06:14 +0000 | [diff] [blame] | 28 | set( td ${LLVM_MAIN_SRC_DIR}/lib/Target/${t} ) |
| 29 | file(GLOB asmp_file "${td}/*AsmPrinter.cpp") |
| 30 | if( asmp_file ) |
| 31 | set(LLVM_ENUM_ASM_PRINTERS |
| 32 | "${LLVM_ENUM_ASM_PRINTERS}LLVM_ASM_PRINTER(${t})\n") |
| 33 | endif() |
Oscar Fuentes | 6d857ca | 2011-02-18 22:06:14 +0000 | [diff] [blame] | 34 | if( EXISTS ${td}/AsmParser/CMakeLists.txt ) |
Oscar Fuentes | 6d857ca | 2011-02-18 22:06:14 +0000 | [diff] [blame] | 35 | set(LLVM_ENUM_ASM_PARSERS |
| 36 | "${LLVM_ENUM_ASM_PARSERS}LLVM_ASM_PARSER(${t})\n") |
| 37 | endif() |
| 38 | if( EXISTS ${td}/Disassembler/CMakeLists.txt ) |
Oscar Fuentes | 6d857ca | 2011-02-18 22:06:14 +0000 | [diff] [blame] | 39 | set(LLVM_ENUM_DISASSEMBLERS |
| 40 | "${LLVM_ENUM_DISASSEMBLERS}LLVM_DISASSEMBLER(${t})\n") |
| 41 | endif() |
Oscar Fuentes | 6d857ca | 2011-02-18 22:06:14 +0000 | [diff] [blame] | 42 | endforeach(t) |
| 43 | |
| 44 | # Produce llvm/Config/AsmPrinters.def |
| 45 | configure_file( |
| 46 | ${LLVM_MAIN_INCLUDE_DIR}/llvm/Config/AsmPrinters.def.in |
| 47 | ${LLVM_BINARY_DIR}/include/llvm/Config/AsmPrinters.def |
| 48 | ) |
| 49 | |
| 50 | # Produce llvm/Config/AsmParsers.def |
| 51 | configure_file( |
| 52 | ${LLVM_MAIN_INCLUDE_DIR}/llvm/Config/AsmParsers.def.in |
| 53 | ${LLVM_BINARY_DIR}/include/llvm/Config/AsmParsers.def |
| 54 | ) |
| 55 | |
| 56 | # Produce llvm/Config/Disassemblers.def |
| 57 | configure_file( |
| 58 | ${LLVM_MAIN_INCLUDE_DIR}/llvm/Config/Disassemblers.def.in |
| 59 | ${LLVM_BINARY_DIR}/include/llvm/Config/Disassemblers.def |
| 60 | ) |