X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=lib%2FTarget%2FCMakeLists.txt;h=09b48ce632f2e0db2eb67f3a942de0f6e03f1b53;hb=58f04fd22a3bbbb5b2620b6feecc36cf1b878dbd;hp=7cffd0e53c17892c861d5e320d7fcad333703194;hpb=908e058b85df4c5b8eb63f103ebe1eb5f9ca0bef;p=oota-llvm.git diff --git a/lib/Target/CMakeLists.txt b/lib/Target/CMakeLists.txt index 7cffd0e53c1..09b48ce632f 100644 --- a/lib/Target/CMakeLists.txt +++ b/lib/Target/CMakeLists.txt @@ -1,18 +1,57 @@ add_llvm_library(LLVMTarget - DarwinTargetAsmInfo.cpp - ELFTargetAsmInfo.cpp + Mangler.cpp SubtargetFeature.cpp Target.cpp TargetAsmInfo.cpp + TargetAsmLexer.cpp TargetData.cpp TargetELFWriterInfo.cpp - TargetFrameInfo.cpp + TargetFrameLowering.cpp TargetInstrInfo.cpp - TargetMachOWriterInfo.cpp + TargetIntrinsicInfo.cpp + TargetLibraryInfo.cpp + TargetLoweringObjectFile.cpp TargetMachine.cpp - TargetMachineRegistry.cpp TargetRegisterInfo.cpp TargetSubtarget.cpp ) -# TODO: Support other targets besides X86. See Makefile. +set(LLVM_ENUM_ASM_PRINTERS "") +set(LLVM_ENUM_ASM_PARSERS "") +set(LLVM_ENUM_DISASSEMBLERS "") +foreach(t ${LLVM_TARGETS_TO_BUILD}) + message(STATUS "Targeting ${t}") + add_subdirectory(${t}) + set( td ${LLVM_MAIN_SRC_DIR}/lib/Target/${t} ) + file(GLOB asmp_file "${td}/*AsmPrinter.cpp") + if( asmp_file ) + set(LLVM_ENUM_ASM_PRINTERS + "${LLVM_ENUM_ASM_PRINTERS}LLVM_ASM_PRINTER(${t})\n") + endif() + if( EXISTS ${td}/AsmParser/CMakeLists.txt ) + set(LLVM_ENUM_ASM_PARSERS + "${LLVM_ENUM_ASM_PARSERS}LLVM_ASM_PARSER(${t})\n") + endif() + if( EXISTS ${td}/Disassembler/CMakeLists.txt ) + set(LLVM_ENUM_DISASSEMBLERS + "${LLVM_ENUM_DISASSEMBLERS}LLVM_DISASSEMBLER(${t})\n") + endif() +endforeach(t) + +# Produce llvm/Config/AsmPrinters.def +configure_file( + ${LLVM_MAIN_INCLUDE_DIR}/llvm/Config/AsmPrinters.def.in + ${LLVM_BINARY_DIR}/include/llvm/Config/AsmPrinters.def + ) + +# Produce llvm/Config/AsmParsers.def +configure_file( + ${LLVM_MAIN_INCLUDE_DIR}/llvm/Config/AsmParsers.def.in + ${LLVM_BINARY_DIR}/include/llvm/Config/AsmParsers.def + ) + +# Produce llvm/Config/Disassemblers.def +configure_file( + ${LLVM_MAIN_INCLUDE_DIR}/llvm/Config/Disassemblers.def.in + ${LLVM_BINARY_DIR}/include/llvm/Config/Disassemblers.def + )