cmake_minimum_required(VERSION 3.13) project(ds18b20_instance C) add_library(ds18b20_instance STATIC Src/ds18b20.c) target_include_directories(ds18b20_instance PUBLIC Inc) set_target_properties(ds18b20_instance PROPERTIES C_STANDARD 99 C_STANDARD_REQUIRED YES) enable_testing() foreach(name copy_delay incremental_search) add_executable(test_ds18b20_${name} Tests/test_ds18b20_${name}.c) target_link_libraries(test_ds18b20_${name} PRIVATE ds18b20_instance) add_test(NAME ds18b20_${name} COMMAND test_ds18b20_${name}) endforeach()