IF(NOT TARGET ${_target})
# only add the target once
+ #
+ # Add a "guard file" rule: The purpose of interrupt_guard.cc is to
+ # force a complete rerun of this test (BUILD, RUN and DIFF stage)
+ # if interrupt_guard.cc is removed by run_test.cmake due to an
+ # interruption.
+ #
ADD_CUSTOM_COMMAND(
- OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${_target}/timeout_guard.cc
- COMMAND touch ${CMAKE_CURRENT_BINARY_DIR}/${_target}/timeout_guard.cc
+ OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${_target}/interrupt_guard.cc
+ COMMAND touch ${CMAKE_CURRENT_BINARY_DIR}/${_target}/interrupt_guard.cc
)
ADD_EXECUTABLE(${_target} EXCLUDE_FROM_ALL ${_test_name}.cc
- ${CMAKE_CURRENT_BINARY_DIR}/${_target}/timeout_guard.cc
+ ${CMAKE_CURRENT_BINARY_DIR}/${_target}/interrupt_guard.cc
)
SET_TARGET_PROPERTIES(${_target} PROPERTIES
-DEXPECT=${_expect}
-DADDITIONAL_OUTPUT=${ARGN}
-DDEAL_II_BINARY_DIR=${CMAKE_BINARY_DIR}
- -DGUARD_FILE=${CMAKE_CURRENT_BINARY_DIR}/${_target}/timeout_guard.cc
+ -DGUARD_FILE=${CMAKE_CURRENT_BINARY_DIR}/${_target}/interrupt_guard.cc
-P ${DEAL_II_SOURCE_DIR}/cmake/scripts/run_test.cmake
WORKING_DIRECTORY ${_test_directory}
)
# ADDITIONAL_OUTPUT - A list of additional output lines that should be printed
#
# GUARD_FILE - used to detect a forced interruption of this script: On
-# startup the backed up file ${GUARD_FILE}_back is put back
+# startup the backed up file ${GUARD_FILE}_bck is put back
# in place as ${GUARD_FILE} and on exit ${GUARD_FILE} is
-# backed up as ${GUARD_FILE}_back. If on startup a stale
+# backed up as ${GUARD_FILE}_bck. If on startup a stale
# ${GUARD_FILE} is found, it is deleted.
#
IF( "${TEST_PICKUP_REGEX}" STREQUAL "" OR
_test MATCHES "${TEST_PICKUP_REGEX}" )
+ #
+ # Add a "guard file" rule: The purpose of interrupt_guard.cc is to
+ # force a complete rerun of this test (BUILD stage) if
+ # interrupt_guard.cc is removed by run_test.cmake due to an
+ # interruption.
+ #
ADD_CUSTOM_COMMAND(
- OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${_target}_timeout_guard.cc
- COMMAND touch ${CMAKE_CURRENT_BINARY_DIR}/${_target}_timeout_guard.cc
+ OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${_target}_interrupt_guard.cc
+ COMMAND touch ${CMAKE_CURRENT_BINARY_DIR}/${_target}_interrupt_guard.cc
)
# Add an object library for each header file and build configuration:
ADD_LIBRARY(${_target} OBJECT EXCLUDE_FROM_ALL test_header.cc
- ${CMAKE_CURRENT_BINARY_DIR}/${_target}_timeout_guard.cc
+ ${CMAKE_CURRENT_BINARY_DIR}/${_target}_interrupt_guard.cc
)
SET_TARGET_PROPERTIES(${_target} PROPERTIES
ADD_TEST(NAME ${_test}
COMMAND ${CMAKE_COMMAND} -DTRGT=${_target}.build -DTEST=${_test}
-DDEAL_II_BINARY_DIR=${CMAKE_BINARY_DIR}
- -DGUARD_FILE=${CMAKE_CURRENT_BINARY_DIR}/${_target}_timeout_guard.cc
+ -DGUARD_FILE=${CMAKE_CURRENT_BINARY_DIR}/${_target}_interrupt_guard.cc
-P ${DEAL_II_SOURCE_DIR}/cmake/scripts/run_test.cmake
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
)
ENDIF()
ENDFOREACH()
+ #
+ # Add a "guard file" rule: The purpose of interrupt_guard is to force
+ # a complete rerun of this test (CONFIGURE, BUILD and RUN stage) if
+ # interrupt_guard is removed by run_test.cmake due to an
+ # interruption.
+ #
ADD_CUSTOM_COMMAND(
- OUTPUT ${_step_dir}/timeout_guard
+ OUTPUT ${_step_dir}/interrupt_guard
COMMAND ${CMAKE_COMMAND} -E make_directory ${_step_dir}
- COMMAND touch ${_step_dir}/timeout_guard
+ COMMAND touch ${_step_dir}/interrupt_guard
)
# A rule how to copy the example step to the current directory:
${_files}
${DEAL_II_TARGET_DEBUG}
${DEAL_II_TARGET_RELEASE}
- ${_step_dir}/timeout_guard
+ ${_step_dir}/interrupt_guard
)
# And a rule on how to configure the example step:
ADD_TEST(NAME ${_test}
COMMAND ${CMAKE_COMMAND} -DTRGT=${_target} -DTEST=${_test}
-DDEAL_II_BINARY_DIR=${CMAKE_BINARY_DIR}
- -DGUARD_FILE=${_step_dir}/timeout_guard
+ -DGUARD_FILE=${_step_dir}/interrupt_guard
-P ${DEAL_II_SOURCE_DIR}/cmake/scripts/run_test.cmake
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
)