CMake/Tests/Contracts/Trilinos/Dashboard.cmake.in
Zack Galbreath 5a4a5841d4 update Trilinos contract test
The old version encountered a compile error on newer versions of GCC.
Update to the latest supported release of Trilinos, remove the version
number from the name of the Contract, and some other minor tweaks to
get the test passing once more.
2013-08-28 15:28:14 -04:00

64 lines
1.9 KiB
CMake

# This "cmake -P" script may be configured to drive a dashboard on any machine.
#
set(CTEST_BINARY_DIRECTORY "@binary_dir@")
set(CTEST_BUILD_NAME "@BUILDNAME@")
set(CTEST_CMAKE_GENERATOR "@CMAKE_GENERATOR@")
set(CTEST_SITE "@SITE@")
set(CTEST_SOURCE_DIRECTORY "@source_dir@")
# Set the environment:
#
set(ENV{CTEST_BUILD_NAME} "${CTEST_BUILD_NAME}")
set(ENV{CTEST_CMAKE_GENERATOR} "${CTEST_CMAKE_GENERATOR}")
set(ENV{CTEST_SITE} "${CTEST_SITE}")
# Allow override of the environment on a per-client basis:
#
set(ENV_SCRIPT "$ENV{CMAKE_CONTRACT_Trilinos_ENV_SCRIPT}")
if(ENV_SCRIPT AND EXISTS "${ENV_SCRIPT}")
include("${ENV_SCRIPT}")
endif()
# Empty build dir to start with:
#
message("Cleaning binary dir '${CTEST_BINARY_DIRECTORY}'")
file(REMOVE_RECURSE "${CTEST_BINARY_DIRECTORY}")
# Generate 'do-configure' script:
#
file(WRITE "${CTEST_BINARY_DIRECTORY}/do-configure" "
\"${CMAKE_COMMAND}\" -G \"${CTEST_CMAKE_GENERATOR}\" \"${CTEST_SOURCE_DIRECTORY}\"
")
# Make the 'do-configure' script executable and execute it:
#
if(WIN32)
configure_file(
"${CTEST_BINARY_DIRECTORY}/do-configure"
"${CTEST_BINARY_DIRECTORY}/do-configure.cmd"
COPYONLY)
execute_process(COMMAND "${CTEST_BINARY_DIRECTORY}/do-configure.cmd"
WORKING_DIRECTORY "${CTEST_BINARY_DIRECTORY}")
else()
execute_process(COMMAND chmod +x "${CTEST_BINARY_DIRECTORY}/do-configure")
execute_process(COMMAND "${CTEST_BINARY_DIRECTORY}/do-configure"
WORKING_DIRECTORY "${CTEST_BINARY_DIRECTORY}")
endif()
# Run an experimental Trilinos dashboard:
#
execute_process(COMMAND
"${CMAKE_CTEST_COMMAND}"
-S "${CTEST_SOURCE_DIRECTORY}/cmake/tribits/ctest/experimental_build_test.cmake"
-VV
WORKING_DIRECTORY "${CTEST_BINARY_DIRECTORY}"
RESULT_VARIABLE rv
)
if(NOT "${rv}" STREQUAL "0")
message("error(s) (or warnings or test failures) running Trilinos dashboard
script experimental_build_test.cmake...
ctest returned rv='${rv}'
")
endif()