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=$ -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=$ -D Log=${CMAKE_CURRENT_BINARY_DIR}/timeout.log -P ${CMAKE_CURRENT_SOURCE_DIR}/check.cmake ) SET_TESTS_PROPERTIES(CheckChild PROPERTIES DEPENDS TestTimeout)