From: Viktor Szakats Date: Sat, 9 Aug 2025 15:36:40 +0000 (+0200) Subject: cmake: set `CURL_DIRSUFFIX` automatically in multi-config builds X-Git-Tag: curl-8_16_0~205 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=7fd7d561c455fb4c807e05aaffaaf4488510eb13;p=thirdparty%2Fcurl.git cmake: set `CURL_DIRSUFFIX` automatically in multi-config builds To make it easier to run tests when using the Visual Studio generator, also perhaps Xcode. Also drop manual settings from CI. Closes #18241 --- diff --git a/.github/workflows/windows.yml b/.github/workflows/windows.yml index 5d9aac713b..6b8fd89b8b 100644 --- a/.github/workflows/windows.yml +++ b/.github/workflows/windows.yml @@ -912,7 +912,6 @@ jobs: env: TFLAGS: '${{ matrix.tflags }}' run: | - export CURL_DIRSUFFIX="${MATRIX_TYPE}" TFLAGS="-j8 ${TFLAGS}" TFLAGS+=' !498' # 'Reject too large HTTP response headers on endless redirects' HTTP, HTTP GET (runtests detecting result code 2009 instead of 56 returned by curl) if [[ "${MATRIX_INSTALL_MSYS2}" = *'libssh2-wincng'* || \ diff --git a/appveyor.sh b/appveyor.sh index e9871415e0..767ec1638e 100644 --- a/appveyor.sh +++ b/appveyor.sh @@ -141,7 +141,6 @@ fi if [ "${TFLAGS}" != 'skipall' ] && \ [ "${TFLAGS}" != 'skiprun' ]; then - export CURL_DIRSUFFIX="${PRJ_CFG}" if [ -x "$(cygpath "${SYSTEMROOT}/System32/curl.exe")" ]; then TFLAGS+=" -ac $(cygpath "${SYSTEMROOT}/System32/curl.exe")" elif [ -x "$(cygpath 'C:/msys64/usr/bin/curl.exe')" ]; then diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index 56241b889a..014fe0db87 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -61,6 +61,10 @@ function(curl_add_runtests _targetname _test_flags) endif() list(APPEND _depends "testdeps") endif() + set(_setenv "") + if(CMAKE_CONFIGURATION_TYPES) + set(_setenv "${CMAKE_COMMAND}" -E env "CURL_DIRSUFFIX=$") + endif() # Use a special '$TFLAGS' placeholder as last argument which will be # replaced by the contents of the environment variable in runtests.pl. # This is a workaround for CMake's limitation where commands executed by @@ -68,6 +72,7 @@ function(curl_add_runtests _targetname _test_flags) string(REPLACE " " ";" _test_flags_list "${_test_flags}") add_custom_target(${_targetname} COMMAND + ${_setenv} "${PERL_EXECUTABLE}" "${CMAKE_CURRENT_SOURCE_DIR}/runtests.pl" ${_test_flags_list} "\$TFLAGS"