diff options
Diffstat (limited to 'Tests/PerConfig/CMakeLists.txt')
-rw-r--r-- | Tests/PerConfig/CMakeLists.txt | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/Tests/PerConfig/CMakeLists.txt b/Tests/PerConfig/CMakeLists.txt new file mode 100644 index 0000000..7f461b0 --- /dev/null +++ b/Tests/PerConfig/CMakeLists.txt @@ -0,0 +1,34 @@ +project(PerConfig C) + +# Targets with per-configuration names. +add_library(pcStatic STATIC pcStatic.c) +set_property(TARGET pcStatic PROPERTY RELEASE_POSTFIX -opt) +set_property(TARGET pcStatic PROPERTY DEBUG_POSTFIX -dbg) +add_library(pcShared SHARED pcShared.c) +set_property(TARGET pcShared PROPERTY RELEASE_POSTFIX -opt) +set_property(TARGET pcShared PROPERTY DEBUG_POSTFIX -dbg) +set_property(TARGET pcShared PROPERTY VERSION 1.2) +set_property(TARGET pcShared PROPERTY SOVERSION 3) +if(UNIX AND NOT CYGWIN) + set(soname_file -DpcShared_soname_file=$<TARGET_SONAME_FILE:pcShared>) +endif() +add_executable(perconfig perconfig.c) +target_link_libraries(perconfig pcStatic pcShared) +set_property(TARGET perconfig PROPERTY RELEASE_POSTFIX -opt) +set_property(TARGET perconfig PROPERTY DEBUG_POSTFIX -dbg) + +set(PerConfig_COMMAND + ${CMAKE_COMMAND} + -Dconfiguration=$<CONFIGURATION> + -Dperconfig_file_dir=$<TARGET_FILE_DIR:perconfig> + -Dperconfig_file_name=$<TARGET_FILE_NAME:perconfig> + -Dperconfig_file=$<TARGET_FILE:perconfig> + -DpcStatic_file=$<TARGET_FILE:pcStatic> + -DpcStatic_linker_file=$<TARGET_LINKER_FILE:pcStatic> + -DpcShared_file=$<TARGET_FILE:pcShared> + -DpcShared_linker_file=$<TARGET_LINKER_FILE:pcShared> + ${soname_file} + -P ${PerConfig_SOURCE_DIR}/perconfig.cmake + ) +set(PerConfig_COMMAND "${PerConfig_COMMAND}" PARENT_SCOPE) +set(PerConfig_DEPENDS ${PerConfig_SOURCE_DIR}/perconfig.cmake perconfig pcStatic pcShared) |