diff options
Diffstat (limited to 'src/CMakeLists.txt')
-rw-r--r-- | src/CMakeLists.txt | 61 |
1 files changed, 35 insertions, 26 deletions
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 5bde94a5d..2cb3457e1 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -887,6 +887,8 @@ libcvc5_add_sources( theory/quantifiers/quantifiers_statistics.h theory/quantifiers/query_generator.cpp theory/quantifiers/query_generator.h + theory/quantifiers/query_generator_unsat.cpp + theory/quantifiers/query_generator_unsat.h theory/quantifiers/relevant_domain.cpp theory/quantifiers/relevant_domain.h theory/quantifiers/single_inv_partition.cpp @@ -1242,36 +1244,43 @@ if (BUILD_DOCS) ) endif() +# The mkoptions.py script only updates its output files if their content would +# actually change. This mechanism makes sure that running the script does not +# automatically trigger a full rebuild, but only a rebuild of those parts that +# include files that did actually change. +# This approach also means that the output files (which gen-options used to +# depend on) may not actually be updated and thus cmake would keep re-running +# mkoptions.py over and over again. +# We thus have an artificial options.stamp file that mkoptions.py always writes +# to, and can thus be used to communicate that all options files have been +# properly updated. add_custom_command( - OUTPUT - ${options_gen_cpp_files} ${options_gen_h_files} - ${options_gen_doc_files} - COMMAND - ${CMAKE_COMMAND} -E make_directory ${CMAKE_CURRENT_BINARY_DIR}/options - COMMAND - ${PYTHON_EXECUTABLE} - ${CMAKE_CURRENT_LIST_DIR}/options/mkoptions.py - ${CMAKE_CURRENT_LIST_DIR} - ${CMAKE_BINARY_DIR} - ${CMAKE_CURRENT_BINARY_DIR} - ${abs_toml_files} - DEPENDS - options/mkoptions.py - ${options_toml_files} - main/options_template.cpp - options/module_template.h - options/module_template.cpp - options/options_public_template.cpp - options/options_template.h - options/options_template.cpp -) - -add_custom_target(gen-options + OUTPUT + options/options.stamp + COMMAND + ${CMAKE_COMMAND} -E make_directory ${CMAKE_CURRENT_BINARY_DIR}/options + COMMAND + ${PYTHON_EXECUTABLE} + ${CMAKE_CURRENT_LIST_DIR}/options/mkoptions.py + ${CMAKE_CURRENT_LIST_DIR} + ${CMAKE_BINARY_DIR} + ${CMAKE_CURRENT_BINARY_DIR} + ${abs_toml_files} + BYPRODUCTS + ${options_gen_cpp_files} ${options_gen_h_files} ${options_gen_doc_files} DEPENDS - ${options_gen_cpp_files} - ${options_gen_h_files} + options/mkoptions.py + ${options_toml_files} + main/options_template.cpp + options/module_template.h + options/module_template.cpp + options/options_public_template.cpp + options/options_template.h + options/options_template.cpp ) +add_custom_target(gen-options DEPENDS options/options.stamp) + #-----------------------------------------------------------------------------# |