2
# CTest script that is used to do an experimental build/test right from a
3
# developer's own build directory.
5
# NOTE: You need a recent (CVS) version of CMake/CTest for this to work. You
6
# can't use CMake/CTest 2.6.x. If you don't have the right version, it will
11
# 1) First configure your directory without enabling any packages (to set the
12
# platform-specific and site-specific options). The CMakeCache.txt file that
13
# is created will then be modified by the script as packages are enabled and
14
# disabled. NOTE: For the safest results, start with an empty build directory
15
# (except for your configure script of course). This seems to be needed when
16
# switching back and forth between an 'Experimental' and 'Nightly' build for
19
# 2) Run the script (overriding any appropriate options) as:
21
# env Trilinos_PACKAGES="<PACKAGES>" \
22
# ctest -S $TRILINOS_HOME/cmake/ctest/experimental_build_test.cmake -VV
24
# where PACAKGES is the semi-colon-separated list of packages being tested
25
# (e.g. Trilinos_PACKAGES="Teuchos;Epetra;NOX") and TRILINOS_HOME points back
26
# to your home Trilinos directory. You can take off the -VV argument if you
27
# don't want this to be too verbose.
29
# There are a number of other options that you can change as
30
# environment varibles. See the macros SET_DEFAULT_AND_FROM_ENV(...)
31
# in the file TrilinosCTestDriverCore.cmake. One option that you
32
# might want to overridde, for instance is CTEST_BUILD_NAME so that
33
# you can insert a special name into the dashboard.
35
# When this script finishes running, the last package listed in
36
# Trilinos_PACAKGES will be enabled in the CMakeCache.txt file.
38
# NOTE: It is better to use the CMake-built make target 'experimental' to run
39
# this script as it takes care of the details of manipulating the cache and
40
# restoring the package enables when it is done.
47
# Do not modify any of this directly, use use environment variables instead!
51
# Include some CMake/CTest code files
54
SET( CMAKE_MODULE_PATH
55
"${CTEST_SCRIPT_DIRECTORY}"
56
"${CTEST_SCRIPT_DIRECTORY}/../utils"
59
INCLUDE(TrilinosCTestDriverCore)
60
INCLUDE(GetLastDirName)
63
# Override some configuration variables
66
# All these can be changed by env vars
67
SET(CTEST_TEST_TYPE Experimental)
68
SET(CTEST_DO_UPDATES FALSE)
69
SET(CTEST_GENERATE_DEPS_XML_OUTPUT_FILE FALSE)
70
SET(CTEST_START_WITH_EMPTY_BINARY_DIRECTORY FALSE)
71
SET(Trilinos_WARNINGS_AS_ERRORS_FLAGS "-Werror")
73
# Don't change this in env!
74
SET(CTEST_WIPE_CACHE FALSE)
76
SET(CTEST_SOURCE_DIRECTORY "${CTEST_SCRIPT_DIRECTORY}/../..")
77
GET_FILENAME_COMPONENT(PWD . REALPATH)
78
SET(CTEST_BINARY_DIRECTORY "${PWD}")
79
SET(CTEST_NOTES_FILES "${CTEST_BINARY_DIRECTORY}/do-configure")
81
GET_LAST_DIR_NAME("${CTEST_BINARY_DIRECTORY}" BUILD_DIR_NAME)
83
# Can be overridden by the environment
84
SET( CTEST_BUILD_NAME "${HOST_TYPE}-${BUILD_DIR_NAME}" )
87
# Run the build/test/submit driver
90
TRILINOS_CTEST_DRIVER()