enable_language(C) set(CMAKE_VERBOSE_MAKEFILE ON) set(CMAKE_C_USE_RESPONSE_FILE_FOR_OBJECTS OFF) # ensure no temp file will be used string(REPLACE "${CMAKE_START_TEMP_FILE}" "" CMAKE_C_COMPILE_OBJECT "${CMAKE_C_COMPILE_OBJECT}") string(REPLACE "${CMAKE_END_TEMP_FILE}" "" CMAKE_C_COMPILE_OBJECT "${CMAKE_C_COMPILE_OBJECT}") add_library(lib1 STATIC) target_sources(lib1 PUBLIC FILE_SET a TYPE SOURCES FILES lib1.c) set_property(FILE_SET a TARGET lib1 PROPERTY COMPILE_OPTIONS -DOPT_FS) set_property(TARGET lib1 PROPERTY COMPILE_OPTIONS -DOPT_TGT) set_property(SOURCE lib1.c PROPERTY COMPILE_OPTIONS -DOPT_SRC)