1
0
mirror of https://github.com/Kitware/CMake.git synced 2025-10-14 02:08:27 +08:00

cmCurl: Suppress curl 8.15 deprecation warning for curl 8.[3-5] workaround

Curl 8.15 removed support for Secure Transport and deprecated the
corresponding `CURLSSLBACKEND_SECURETRANSPORT` constant.  We still need
the constant in a workaround for a runtime-checked range of older curl
versions.  Suppress the deprecation warning at compile time.

Fixes: #27086
This commit is contained in:
Brad King
2025-07-24 11:25:23 -04:00
parent dbe9d4593f
commit 00c34a7d25

View File

@@ -64,7 +64,23 @@ static_assert(CURL_SSLVERSION_LAST == 8,
// curl 8.3.0 through 8.5.x did not re-initialize LibreSSL correctly,
// so prefer the Secure Transport backend by default in those versions.
if (cv->version_num >= 0x080300 && cv->version_num < 0x080600) {
# if defined(__clang__)
# define CM_CURL_DEPRECATED_CURLSSLBACKEND_SECURETRANSPORT_CLANG
# pragma clang diagnostic push
# pragma clang diagnostic ignored "-Wdeprecated-declarations"
# elif defined(__GNUC__)
# define CM_CURL_DEPRECATED_CURLSSLBACKEND_SECURETRANSPORT_GCC
# pragma GCC diagnostic push
# pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# endif
curl_global_sslset(CURLSSLBACKEND_SECURETRANSPORT, NULL, NULL);
# if defined(CM_CURL_DEPRECATED_CURLSSLBACKEND_SECURETRANSPORT_CLANG)
# undef CM_CURL_DEPRECATED_CURLSSLBACKEND_SECURETRANSPORT_CLANG
# pragma clang diagnostic pop
# elif defined(CM_CURL_DEPRECATED_CURLSSLBACKEND_SECURETRANSPORT_GCC)
# undef CM_CURL_DEPRECATED_CURLSSLBACKEND_SECURETRANSPORT_GCC
# pragma GCC diagnostic pop
# endif
}
}
#endif