37 lines
1.6 KiB
CMake
37 lines
1.6 KiB
CMake
# Older versions of CMake do not support an empty configuration name in
|
|
# CTEST_CONFIGURATION_TYPE for the 'testing' test.
|
|
SET(CONFIG_REQUIRED)
|
|
IF("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" LESS 2.6)
|
|
SET(CONFIG_REQUIRED 1)
|
|
ELSE("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" LESS 2.6)
|
|
IF("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" STREQUAL 2.6)
|
|
IF("${CMAKE_PATCH_VERSION}" LESS 3)
|
|
SET(CONFIG_REQUIRED 1)
|
|
ENDIF("${CMAKE_PATCH_VERSION}" LESS 3)
|
|
ENDIF("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" STREQUAL 2.6)
|
|
ENDIF("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" LESS 2.6)
|
|
|
|
IF(NOT CTEST_CONFIGURATION_TYPE AND CONFIG_REQUIRED)
|
|
SET(CTEST_CMD "@CMAKE_CTEST_COMMAND@@CMAKE_EXECUTABLE_SUFFIX@")
|
|
GET_FILENAME_COMPONENT(CTEST_DIR "${CTEST_CMD}" PATH)
|
|
GET_FILENAME_COMPONENT(CTEST_EXE "${CTEST_CMD}" NAME)
|
|
FOREACH(cfg Release Debug MinSizeRel RelWithDebInfo)
|
|
IF(NOT CTEST_CONFIGURATION_TYPE)
|
|
IF(EXISTS "${CTEST_DIR}/${cfg}/${CTEST_EXE}")
|
|
SET(CTEST_CONFIGURATION_TYPE ${cfg})
|
|
ENDIF(EXISTS "${CTEST_DIR}/${cfg}/${CTEST_EXE}")
|
|
ENDIF(NOT CTEST_CONFIGURATION_TYPE)
|
|
ENDFOREACH(cfg)
|
|
IF(NOT CTEST_CONFIGURATION_TYPE)
|
|
SET(CTEST_CONFIGURATION_TYPE NoConfig)
|
|
ENDIF(NOT CTEST_CONFIGURATION_TYPE)
|
|
MESSAGE("Guessing configuration ${CTEST_CONFIGURATION_TYPE}")
|
|
ENDIF(NOT CTEST_CONFIGURATION_TYPE AND CONFIG_REQUIRED)
|
|
|
|
# Fake a user home directory to avoid polluting the real one.
|
|
IF(DEFINED ENV{HOME})
|
|
SET(HOME "@CMake_BINARY_DIR@/Tests/CMakeFiles/TestHome")
|
|
FILE(MAKE_DIRECTORY "${HOME}")
|
|
SET(ENV{HOME} "${HOME}")
|
|
ENDIF(DEFINED ENV{HOME})
|