summaryrefslogtreecommitdiff
path: root/lib/Target/CMakeLists.txt
diff options
context:
space:
mode:
authorOscar Fuentes <ofv@wanadoo.es>2011-02-18 22:06:14 +0000
committerOscar Fuentes <ofv@wanadoo.es>2011-02-18 22:06:14 +0000
commit6d857ca4d71548f5cdb57b106cc1a12fc2c93e9d (patch)
treeb9cee0ab1c312b750d15cdcaf557671ba8949ccc /lib/Target/CMakeLists.txt
parentba05c01dabc40373760a20c874103fc58d4377f0 (diff)
downloadllvm-6d857ca4d71548f5cdb57b106cc1a12fc2c93e9d.tar.gz
llvm-6d857ca4d71548f5cdb57b106cc1a12fc2c93e9d.tar.bz2
llvm-6d857ca4d71548f5cdb57b106cc1a12fc2c93e9d.tar.xz
Move library stuff out of the toplevel CMakeLists.txt file.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125968 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/CMakeLists.txt')
-rw-r--r--lib/Target/CMakeLists.txt50
1 files changed, 50 insertions, 0 deletions
diff --git a/lib/Target/CMakeLists.txt b/lib/Target/CMakeLists.txt
index f7a98664a3..fe9a126495 100644
--- a/lib/Target/CMakeLists.txt
+++ b/lib/Target/CMakeLists.txt
@@ -15,3 +15,53 @@ add_llvm_library(LLVMTarget
TargetRegisterInfo.cpp
TargetSubtarget.cpp
)
+
+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})
+ add_subdirectory(${t}/TargetInfo)
+ 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}/InstPrinter/CMakeLists.txt )
+ add_subdirectory(${t}/InstPrinter)
+ endif()
+ if( EXISTS ${td}/AsmParser/CMakeLists.txt )
+ add_subdirectory(${t}/AsmParser)
+ set(LLVM_ENUM_ASM_PARSERS
+ "${LLVM_ENUM_ASM_PARSERS}LLVM_ASM_PARSER(${t})\n")
+ endif()
+ if( EXISTS ${td}/Disassembler/CMakeLists.txt )
+ add_subdirectory(${t}/Disassembler)
+ set(LLVM_ENUM_DISASSEMBLERS
+ "${LLVM_ENUM_DISASSEMBLERS}LLVM_DISASSEMBLER(${t})\n")
+ endif()
+ if( EXISTS ${td}/Utils/CMakeLists.txt )
+ add_subdirectory(${td}/Utils)
+ endif()
+ set(CURRENT_LLVM_TARGET)
+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
+ )