| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687 |
- #
- # Testing
- #
- cmake_minimum_required (VERSION 2.7)
- PROJECT (Testing)
- #
- # Lib and exe path
- #
- SET (LIBRARY_OUTPUT_PATH
- ${Testing_BINARY_DIR}/bin/ CACHE PATH
- "Single output directory for building all libraries.")
- SET (EXECUTABLE_OUTPUT_PATH
- ${Testing_BINARY_DIR}/bin/ CACHE PATH
- "Single output directory for building all executables.")
- #
- # Where will executable tests be written ?
- #
- IF (EXECUTABLE_OUTPUT_PATH)
- SET (CXX_TEST_PATH ${EXECUTABLE_OUTPUT_PATH})
- ELSE (EXECUTABLE_OUTPUT_PATH)
- SET (CXX_TEST_PATH .)
- ENDIF (EXECUTABLE_OUTPUT_PATH)
- #
- # Include Dart
- # (will also set NSLOOKUP, HOSTNAME, etc.)
- #
- INCLUDE (${CMAKE_ROOT}/Modules/Dart.cmake)
- #
- # Extra coverage
- #
- BUILD_COMMAND(BUILD_COMMAND_VAR ${CMAKE_MAKE_PROGRAM})
- BUILD_NAME(BUILD_NAME_VAR)
- SITE_NAME(SITE_NAME_VAR)
- #
- # Enable testing
- #
- ENABLE_TESTING()
- #
- # Add test
- #
- ADD_EXECUTABLE(testing testing.cxx)
- ADD_TEST(testing.1 ${Testing_BINARY_DIR}/bin/testing)
- #
- # skip level test
- #
- 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(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)
- 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
- )
|