Generates llvm assembly code for additions :-)
[ozulis.git] / src / ast / CMakeLists.txt
blob43506afaa3cfbc915bcf41ad37ccf0fc339d17d9
1 ADD_LIBRARY(ast-generator-utils generator-data.cc generator-lib.cc)
3 ADD_EXECUTABLE(ast-generator-visitor generator-visitor.cc)
4 TARGET_LINK_LIBRARIES(ast-generator-visitor core ast-generator-utils)
5 ADD_CUSTOM_COMMAND(
6   OUTPUT ${CMAKE_CURRENT_SOURCE_DIR}/visitor.hh
7   COMMAND ast-generator-visitor
8   ARGS ${CMAKE_CURRENT_SOURCE_DIR}
9   DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/ast-generator-visitor)
11 MACRO(AST_GENERATOR NAME)
12 ADD_EXECUTABLE(ast-generator-${NAME} generator-${NAME}.cc)
13 TARGET_LINK_LIBRARIES(ast-generator-${NAME} core ast-generator-utils)
14 ADD_CUSTOM_COMMAND(
15   OUTPUT ${CMAKE_CURRENT_SOURCE_DIR}/${NAME}.hh
16          ${CMAKE_CURRENT_SOURCE_DIR}/${NAME}.cc
17   COMMAND ast-generator-${NAME}
18   ARGS ${CMAKE_CURRENT_SOURCE_DIR}
19   DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/ast-generator-${NAME})
20 ENDMACRO(AST_GENERATOR)
22 AST_GENERATOR(ast)
23 AST_GENERATOR(default-visitor)
24 AST_GENERATOR(browse-visitor)
25 AST_GENERATOR(ascii-visitor)
27 ADD_LIBRARY(ast
28   visitor.hh # here because i need to force the generation of this file
29   ascii-visitor.cc
30   ast.cc
31   browse-visitor.cc
32   default-visitor.cc
33   llvm-generator-visitor.cc
34   type-checker-visitor.cc
35   simplify-visitor.cc
36   scope.cc
37   scope-builder-visitor.cc
38   )