find_package(Python COMPONENTS Interpreter REQUIRED) add_custom_command(OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/clar.suite" COMMAND "${Python_EXECUTABLE}" "${CMAKE_SOURCE_DIR}/generate.py" --output "${CMAKE_CURRENT_BINARY_DIR}" DEPENDS main.c sample.c clar_test.h WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}" ) add_executable(clar_test) set_target_properties(clar_test PROPERTIES C_STANDARD 90 C_STANDARD_REQUIRED ON C_EXTENSIONS OFF ) # MSVC generates all kinds of warnings. We may want to fix these in the future # and then unconditionally treat warnings as errors. if(NOT MSVC) set_target_properties(clar_test PROPERTIES COMPILE_WARNING_AS_ERROR ON ) endif() target_sources(clar_test PRIVATE main.c sample.c "${CMAKE_CURRENT_BINARY_DIR}/clar.suite" ) target_compile_definitions(clar_test PRIVATE CLAR_FIXTURE_PATH="${CMAKE_CURRENT_SOURCE_DIR}/resources/" ) target_compile_options(clar_test PRIVATE $,/W4,-Wall> ) target_include_directories(clar_test PRIVATE "${CMAKE_SOURCE_DIR}" "${CMAKE_CURRENT_BINARY_DIR}" ) target_link_libraries(clar_test clar)