summaryrefslogtreecommitdiff
path: root/tools/llvmc2/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'tools/llvmc2/CMakeLists.txt')
-rw-r--r--tools/llvmc2/CMakeLists.txt32
1 files changed, 32 insertions, 0 deletions
diff --git a/tools/llvmc2/CMakeLists.txt b/tools/llvmc2/CMakeLists.txt
new file mode 100644
index 0000000000..6f4872b2d0
--- /dev/null
+++ b/tools/llvmc2/CMakeLists.txt
@@ -0,0 +1,32 @@
+set(LLVM_LINK_COMPONENTS support system)
+set(LLVM_REQUIRES_EH 1)
+
+macro(tgen ofn)
+ add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${ofn}
+ COMMAND tblgen ${ARGN} -I ${CMAKE_CURRENT_SOURCE_DIR} -I ${CMAKE_SOURCE_DIR}/lib/Target -I ${llvm_include_path} ${CMAKE_CURRENT_SOURCE_DIR}/Graph.td -o ${ofn}
+ DEPENDS
+ tblgen
+ ${CMAKE_CURRENT_SOURCE_DIR}/Common.td
+ ${CMAKE_CURRENT_SOURCE_DIR}/Graph.td
+ ${CMAKE_CURRENT_SOURCE_DIR}/Tools.td
+ COMMENT "Building ${ofn}..."
+ )
+endmacro(tgen ofn)
+
+tgen(AutoGenerated.inc -gen-llvmc)
+
+add_custom_target(AutoGenerated_ct echo Tablegenning
+ DEPENDS
+ ${CMAKE_CURRENT_BINARY_DIR}/AutoGenerated.inc
+ )
+
+include_directories( ${CMAKE_CURRENT_BINARY_DIR} )
+
+add_llvm_tool(llvmc2
+ Action.cpp
+ AutoGenerated.cpp
+ CompilationGraph.cpp
+ llvmc.cpp
+ )
+
+add_dependencies(llvmc2 AutoGenerated_ct)