| cmake_minimum_required (VERSION 2.8) |
| project(CTestTestTimeout) |
| include(CTest) |
| |
| if(NOT TIMEOUT) |
| if(CYGWIN) |
| set(TIMEOUT 4) # Cygwin CMake sometimes takes > 1 second to load! |
| else() |
| set(TIMEOUT 1) |
| endif() |
| endif() |
| |
| add_definitions(-DTIMEOUT=${TIMEOUT}) |
| add_executable (Timeout timeout.c) |
| |
| add_test(NAME TestTimeout |
| COMMAND ${CMAKE_COMMAND} -D Timeout=$<TARGET_FILE:Timeout> |
| -D Log=${CMAKE_CURRENT_BINARY_DIR}/timeout.log |
| -P ${CMAKE_CURRENT_SOURCE_DIR}/timeout.cmake |
| ) |
| set_tests_properties(TestTimeout PROPERTIES TIMEOUT ${TIMEOUT}) |
| |
| add_test(NAME CheckChild |
| COMMAND ${CMAKE_COMMAND} -D Timeout=$<TARGET_FILE:Timeout> |
| -D Log=${CMAKE_CURRENT_BINARY_DIR}/timeout.log |
| -P ${CMAKE_CURRENT_SOURCE_DIR}/check.cmake |
| ) |
| set_tests_properties(CheckChild PROPERTIES DEPENDS TestTimeout) |