diff options
author | Brad King <brad.king@kitware.com> | 2009-08-11 13:56:02 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2009-08-11 13:56:02 (GMT) |
commit | 875c478b64de0e0986394e2d642254f7943ec588 (patch) | |
tree | 6d0f976715e3434f2f0d08c87eaf59e6e1c80070 /Tests/Testing/CMakeLists.txt | |
parent | d2e1f2b4d6d87c171464b5dc41b00b609c90bf26 (diff) | |
download | CMake-875c478b64de0e0986394e2d642254f7943ec588.zip CMake-875c478b64de0e0986394e2d642254f7943ec588.tar.gz CMake-875c478b64de0e0986394e2d642254f7943ec588.tar.bz2 |
Test add_test() generator expressions
This teaches the 'testing' test to try generator expressions in
arguments to add_test(NAME). This test case mimics a common use-case of
passing executables to test driver scripts. We excercise the syntax for
per-configuration target file names.
Diffstat (limited to 'Tests/Testing/CMakeLists.txt')
-rw-r--r-- | Tests/Testing/CMakeLists.txt | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/Tests/Testing/CMakeLists.txt b/Tests/Testing/CMakeLists.txt index 462f20f..f857407 100644 --- a/Tests/Testing/CMakeLists.txt +++ b/Tests/Testing/CMakeLists.txt @@ -54,7 +54,34 @@ ADD_TEST(testing.1 ${Testing_BINARY_DIR}/bin/testing) ADD_SUBDIRECTORY(Sub/Sub2) # Per-config target name test. +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(NOT WIN32) + 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) ADD_TEST(NAME testing.perconfig COMMAND perconfig) + +# Test using a driver script with generator expressions. +ADD_TEST(NAME testing.driver + 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 ${Testing_SOURCE_DIR}/driver.cmake + ) |