
Ensure that the CLICOLOR[_FORCE] environment variables are not set when running CMake's tests, as they cause especially RunCMake tests to produce output that doesn't match the test expectations, resulting in spurious test failures.
46 lines
1.6 KiB
CMake
46 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()
|
|
set(CTestTest_CONFIG "@CTestTest_CONFIG@")
|
|
endif()
|
|
|
|
# Choose a configuration that was built if none is given.
|
|
if(NOT CTEST_CONFIGURATION_TYPE)
|
|
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 IN ITEMS Release Debug MinSizeRel RelWithDebInfo)
|
|
if(NOT CTEST_CONFIGURATION_TYPE)
|
|
if(EXISTS "${CTEST_DIR}/${cfg}/${CTEST_EXE}")
|
|
set(CTEST_CONFIGURATION_TYPE ${cfg})
|
|
endif()
|
|
endif()
|
|
endforeach()
|
|
if(NOT CTEST_CONFIGURATION_TYPE)
|
|
if("@CMAKE_C_COMPILER_ID@;@CMAKE_C_SIMULATE_ID@;@CMAKE_C_COMPILER_FRONTEND_VARIANT@" STREQUAL "Clang;MSVC;GNU")
|
|
# A valid configuration is required for this compiler in tests that do not set CMP0091 to NEW.
|
|
set(CTEST_CONFIGURATION_TYPE Debug)
|
|
else()
|
|
set(CTEST_CONFIGURATION_TYPE NoConfig)
|
|
endif()
|
|
endif()
|
|
message("Guessing configuration ${CTEST_CONFIGURATION_TYPE}")
|
|
endif()
|
|
|
|
# Isolate tests from user configuration in the environment.
|
|
unset(ENV{CLICOLOR})
|
|
unset(ENV{CLICOLOR_FORCE})
|
|
unset(ENV{CMAKE_GENERATOR})
|
|
unset(ENV{CMAKE_GENERATOR_INSTANCE})
|
|
unset(ENV{CMAKE_GENERATOR_PLATFORM})
|
|
unset(ENV{CMAKE_GENERATOR_TOOLSET})
|
|
unset(ENV{CMAKE_EXPORT_COMPILE_COMMANDS})
|
|
|
|
# Verify that our module implementations do not recurse too much.
|
|
set(ENV{CMAKE_MAXIMUM_RECURSION_DEPTH} 100)
|
|
|
|
@TEST_CONFIG_ENV_CODE@
|
|
@TEST_HOME_ENV_CODE@
|
|
@TEST_WARN_VS_CODE@
|