[Cmake-commits] [cmake-commits] king committed CMakeLists.txt 1.1.2.2 1.1.2.3 check.cmake NONE 1.1.2.2 test.cmake.in 1.1.2.2 1.1.2.3 timeout.c 1.2.2.2 1.2.2.3 timeout.cmake NONE 1.1.2.2

cmake-commits at cmake.org cmake-commits at cmake.org
Thu Jan 28 16:48:15 EST 2010


Update of /cvsroot/CMake/CMake/Tests/CTestTestTimeout
In directory public:/mounts/ram/cvs-serv23913/Tests/CTestTestTimeout

Modified Files:
      Tag: CMake-2-8
	CMakeLists.txt test.cmake.in timeout.c 
Added Files:
      Tag: CMake-2-8
	check.cmake timeout.cmake 
Log Message:
CMake 2.8.1-rc1


--- NEW FILE: check.cmake ---
# Block just as long as timeout.cmake would if it were not killed.
execute_process(COMMAND ${Timeout})

# Verify that the log is empty, which indicates that the grandchild
# was killed before it finished sleeping.
file(READ "${Log}" LOG)
if(NOT "${LOG}" STREQUAL "")
  message(FATAL_ERROR "${LOG}")
endif()

Index: test.cmake.in
===================================================================
RCS file: /cvsroot/CMake/CMake/Tests/CTestTestTimeout/test.cmake.in,v
retrieving revision 1.1.2.2
retrieving revision 1.1.2.3
diff -C 2 -d -r1.1.2.2 -r1.1.2.3
*** test.cmake.in	1 Oct 2009 21:21:23 -0000	1.1.2.2
--- test.cmake.in	28 Jan 2010 21:48:12 -0000	1.1.2.3
***************
*** 9,14 ****
  SET(CTEST_BINARY_DIRECTORY              "@CMake_BINARY_DIR@/Tests/CTestTestTimeout")
  SET(CTEST_CVS_COMMAND                   "@CVSCOMMAND@")
- SET(CMAKE_TEST_MAKEPROGRAM              "@CMAKE_TEST_MAKEPROGRAM@")
- SET(MAKECOMMAND                         "@MAKECOMMAND@")
  SET(CTEST_CMAKE_GENERATOR               "@CMAKE_TEST_GENERATOR@")
  SET(CTEST_BUILD_CONFIGURATION           "$ENV{CMAKE_CONFIG_TYPE}")
--- 9,12 ----
***************
*** 22,28 ****
  
  FILE(WRITE "${CTEST_BINARY_DIRECTORY}/CMakeCache.txt" "
! CMAKE_TEST_GENERATOR:STRING=@CMAKE_TEST_GENERATOR@
! CMAKE_TEST_MAKEPROGRAM:FILEPATH=@CMAKE_TEST_MAKEPROGRAM@
! MAKECOMMAND:STRING=@MAKECOMMAND@
  ")
  
--- 20,24 ----
  
  FILE(WRITE "${CTEST_BINARY_DIRECTORY}/CMakeCache.txt" "
! TIMEOUT:STRING=@CTestTestTimeout_TIME@
  ")
  

Index: CMakeLists.txt
===================================================================
RCS file: /cvsroot/CMake/CMake/Tests/CTestTestTimeout/CMakeLists.txt,v
retrieving revision 1.1.2.2
retrieving revision 1.1.2.3
diff -C 2 -d -r1.1.2.2 -r1.1.2.3
*** CMakeLists.txt	1 Oct 2009 21:21:23 -0000	1.1.2.2
--- CMakeLists.txt	28 Jan 2010 21:48:12 -0000	1.1.2.3
***************
*** 1,18 ****
! cmake_minimum_required (VERSION 2.6)
  PROJECT(CTestTestTimeout)
  
! SET(DART_ROOT "" CACHE STRING "" FORCE)
! ENABLE_TESTING()
! INCLUDE (${CMAKE_ROOT}/Modules/Dart.cmake)
! 
! GET_FILENAME_COMPONENT(CTEST_COMMAND "${CMAKE_COMMAND}" PATH)
! SET(CTEST_COMMAND "${CTEST_COMMAND}/ctest")
  
  ADD_EXECUTABLE (Timeout timeout.c)
  
! ENABLE_TESTING ()
! 
! ADD_TEST (TestTimeout Timeout)
! SET_TESTS_PROPERTIES(TestTimeout PROPERTIES TIMEOUT 1)
  
! INCLUDE (CTest)
--- 1,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)

Index: timeout.c
===================================================================
RCS file: /cvsroot/CMake/CMake/Tests/CTestTestTimeout/timeout.c,v
retrieving revision 1.2.2.2
retrieving revision 1.2.2.3
diff -C 2 -d -r1.2.2.2 -r1.2.2.3
*** timeout.c	1 Oct 2009 21:21:23 -0000	1.2.2.2
--- timeout.c	28 Jan 2010 21:48:12 -0000	1.2.2.3
***************
*** 5,15 ****
  #endif
  
  int main(void)
  {
  #if defined(_WIN32)
!   Sleep(5000);
  #else
!   sleep(5);
  #endif
    return -1;
  }
--- 5,18 ----
  #endif
  
+ #include <stdio.h>
+ 
  int main(void)
  {
  #if defined(_WIN32)
!   Sleep((TIMEOUT+4)*1000);
  #else
!   sleep((TIMEOUT+4));
  #endif
+   printf("timeout process finished sleeping!\n");
    return -1;
  }

--- NEW FILE: timeout.cmake ---
# Remove the log file.
file(REMOVE ${Log})

# Run a child that sleeps longer than the timout of this test.
# Log its output so check.cmake can verify it dies.
execute_process(COMMAND ${Timeout} OUTPUT_FILE ${Log})



More information about the Cmake-commits mailing list