CMake/Tests/EnforceConfig.cmake.in

39 lines
1.6 KiB
CMake

# Choose a configuration with which to drive CTest tests.
IF(CTEST_CONFIGURATION_TYPE)
SET(CTestTest_CONFIG "${CTEST_CONFIGURATION_TYPE}")
ELSE(CTEST_CONFIGURATION_TYPE)
SET(CTestTest_CONFIG "@CTestTest_CONFIG@")
ENDIF(CTEST_CONFIGURATION_TYPE)
# 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)
@TEST_HOME_ENV_CODE@