diff options
Diffstat (limited to 'src/theory/CMakeLists.txt')
-rw-r--r-- | src/theory/CMakeLists.txt | 51 |
1 files changed, 37 insertions, 14 deletions
diff --git a/src/theory/CMakeLists.txt b/src/theory/CMakeLists.txt index 01a98aff8..43592c48b 100644 --- a/src/theory/CMakeLists.txt +++ b/src/theory/CMakeLists.txt @@ -1,14 +1,37 @@ -add_subdirectory(arith) -add_subdirectory(arrays) -add_subdirectory(booleans) -add_subdirectory(builtin) -add_subdirectory(bv) -add_subdirectory(datatypes) -add_subdirectory(example) -add_subdirectory(fp) -add_subdirectory(idl) -add_subdirectory(quantifiers) -add_subdirectory(sep) -add_subdirectory(sets) -add_subdirectory(strings) -add_subdirectory(uf) +file(GLOB kinds_files ${PROJECT_SOURCE_DIR}/src/theory/*/kinds) + +set(mktheorytraits_script ${CMAKE_CURRENT_LIST_DIR}/mktheorytraits) +set(mkrewriter_script ${CMAKE_CURRENT_LIST_DIR}/mkrewriter) + +add_custom_command( + COMMAND + ${mkrewriter_script} + ${CMAKE_CURRENT_LIST_DIR}/rewriter_tables_template.h + ${kinds_files} + > ${CMAKE_CURRENT_BINARY_DIR}/rewriter_tables.h + DEPENDS mkrewriter rewriter_tables_template.h + OUTPUT rewriter_tables.h + COMMENT "Generating rewriter_tables.h." +) + +add_custom_command( + COMMAND + ${mktheorytraits_script} + ${CMAKE_CURRENT_LIST_DIR}/theory_traits_template.h + ${kinds_files} + > ${CMAKE_CURRENT_BINARY_DIR}/theory_traits.h + DEPENDS mktheorytraits theory_traits_template.h + OUTPUT theory_traits.h + COMMENT "Generating theory_traits.h." +) + +add_custom_command( + COMMAND + ${mktheorytraits_script} + ${CMAKE_CURRENT_LIST_DIR}/type_enumerator_template.cpp + ${kinds_files} + > ${CMAKE_CURRENT_BINARY_DIR}/type_enumerator.cpp + DEPENDS mktheorytraits type_enumerator_template.cpp + OUTPUT type_enumerator.cpp + COMMENT "Generating type_enumerator.cpp." +) |