summaryrefslogtreecommitdiffstats
path: root/Tests/CTestTestTimeout/CMakeLists.txt
blob: 0fd1cebb3073d70a45390a61576460865c8c08e1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
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)