6620882f227938c9908a04eb565e57df4255e97b
[oota-llvm.git] / lib / Target / CMakeLists.txt
1 add_llvm_library(LLVMTarget
2   Mangler.cpp
3   Target.cpp
4   TargetData.cpp
5   TargetELFWriterInfo.cpp
6   TargetFrameLowering.cpp
7   TargetInstrInfo.cpp
8   TargetIntrinsicInfo.cpp
9   TargetLibraryInfo.cpp
10   TargetLoweringObjectFile.cpp
11   TargetMachine.cpp
12   TargetRegisterInfo.cpp
13   TargetRegistry.cpp
14   TargetSubtargetInfo.cpp
15   )
16
17 add_llvm_library_dependencies(LLVMTarget
18   LLVMCore
19   LLVMMC
20   LLVMSupport
21   )
22
23 set(LLVM_ENUM_ASM_PRINTERS "")
24 set(LLVM_ENUM_ASM_PARSERS "")
25 set(LLVM_ENUM_DISASSEMBLERS "")
26 foreach(t ${LLVM_TARGETS_TO_BUILD})
27   message(STATUS "Targeting ${t}")
28   add_subdirectory(${t})
29   set( td ${LLVM_MAIN_SRC_DIR}/lib/Target/${t} )
30   file(GLOB asmp_file "${td}/*AsmPrinter.cpp")
31   if( asmp_file )
32     set(LLVM_ENUM_ASM_PRINTERS
33       "${LLVM_ENUM_ASM_PRINTERS}LLVM_ASM_PRINTER(${t})\n")
34   endif()
35   if( EXISTS ${td}/AsmParser/CMakeLists.txt )
36     set(LLVM_ENUM_ASM_PARSERS
37       "${LLVM_ENUM_ASM_PARSERS}LLVM_ASM_PARSER(${t})\n")
38   endif()
39   if( EXISTS ${td}/Disassembler/CMakeLists.txt )
40     set(LLVM_ENUM_DISASSEMBLERS
41       "${LLVM_ENUM_DISASSEMBLERS}LLVM_DISASSEMBLER(${t})\n")
42   endif()
43 endforeach(t)
44
45 # Produce llvm/Config/AsmPrinters.def
46 configure_file(
47   ${LLVM_MAIN_INCLUDE_DIR}/llvm/Config/AsmPrinters.def.in
48   ${LLVM_BINARY_DIR}/include/llvm/Config/AsmPrinters.def
49   )
50
51 # Produce llvm/Config/AsmParsers.def
52 configure_file(
53   ${LLVM_MAIN_INCLUDE_DIR}/llvm/Config/AsmParsers.def.in
54   ${LLVM_BINARY_DIR}/include/llvm/Config/AsmParsers.def
55   )
56
57 # Produce llvm/Config/Disassemblers.def
58 configure_file(
59   ${LLVM_MAIN_INCLUDE_DIR}/llvm/Config/Disassemblers.def.in
60   ${LLVM_BINARY_DIR}/include/llvm/Config/Disassemblers.def
61   )