mirror of
https://github.com/Z3Prover/z3
synced 2025-04-25 18:15:32 +00:00
74 lines
1.8 KiB
CMake
74 lines
1.8 KiB
CMake
set(generated_files
|
|
api_commands.cpp
|
|
api_log_macros.cpp
|
|
api_log_macros.h
|
|
)
|
|
|
|
# Sanity check
|
|
foreach (gen_file ${generated_files})
|
|
if (EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/${gen_file}")
|
|
message(FATAL_ERROR "\"${CMAKE_CURRENT_SOURCE_DIR}/${gen_file}\""
|
|
${z3_polluted_tree_msg})
|
|
endif()
|
|
endforeach()
|
|
|
|
set(full_path_generated_files "")
|
|
foreach (gen_file ${generated_files})
|
|
list(APPEND full_path_generated_files "${CMAKE_CURRENT_BINARY_DIR}/${gen_file}")
|
|
endforeach()
|
|
|
|
add_custom_command(OUTPUT ${generated_files}
|
|
COMMAND "${PYTHON_EXECUTABLE}"
|
|
"${CMAKE_SOURCE_DIR}/scripts/update_api.py"
|
|
${Z3_FULL_PATH_API_HEADER_FILES_TO_SCAN}
|
|
"--api_output_dir"
|
|
"${CMAKE_CURRENT_BINARY_DIR}"
|
|
DEPENDS "${CMAKE_SOURCE_DIR}/scripts/update_api.py"
|
|
${Z3_GENERATED_FILE_EXTRA_DEPENDENCIES}
|
|
${Z3_FULL_PATH_API_HEADER_FILES_TO_SCAN}
|
|
# FIXME: When update_api.py no longer uses ``mk_util`` drop this dependency
|
|
"${CMAKE_SOURCE_DIR}/scripts/mk_util.py"
|
|
COMMENT "Generating ${generated_files}"
|
|
${ADD_CUSTOM_COMMAND_USES_TERMINAL_ARG}
|
|
VERBATIM
|
|
)
|
|
|
|
z3_add_component(api
|
|
SOURCES
|
|
api_algebraic.cpp
|
|
api_arith.cpp
|
|
api_array.cpp
|
|
api_ast.cpp
|
|
api_ast_map.cpp
|
|
api_ast_vector.cpp
|
|
api_bv.cpp
|
|
api_config_params.cpp
|
|
api_context.cpp
|
|
api_datalog.cpp
|
|
api_datatype.cpp
|
|
api_fpa.cpp
|
|
api_goal.cpp
|
|
api_interp.cpp
|
|
api_log.cpp
|
|
api_model.cpp
|
|
api_numeral.cpp
|
|
api_opt.cpp
|
|
api_params.cpp
|
|
api_parsers.cpp
|
|
api_pb.cpp
|
|
api_polynomial.cpp
|
|
api_qe.cpp
|
|
api_quant.cpp
|
|
api_rcf.cpp
|
|
api_seq.cpp
|
|
api_solver.cpp
|
|
api_stats.cpp
|
|
api_tactic.cpp
|
|
z3_replayer.cpp
|
|
${full_path_generated_files}
|
|
COMPONENT_DEPENDENCIES
|
|
interp
|
|
opt
|
|
portfolio
|
|
realclosure
|
|
)
|