Smoothen out minor differences between Find modules.
- brotli, nghttp2: drop redundant `FOUND_VAR` specifiers from
`find_package_handle_standard_args()` calls.
This function sets both `<NAME_UPPER>_FOUND` and `<NAME>_FOUND`
by default.
- brotli: set result vars only when found.
- brotli: add missing `mark_as_advanced()` call.
- brotli: delete custom fail message.
- mbedtls, bearssl: use `REQUIRED_VARS` instead of `DEFAULT_MSG`.
- msh3, quiche: set `<NAME>_VERSION` (via pkg-config).
- wolfssl: also use `PC_WOLFSSL_INCLUDEDIR`, `PC_WOLFSSL_LIBDIR`
as hints.
- libpsl, libssh2, zstd: clear temporary variables used for version
detection.
- gss, msh3, nghttp2, nghttp3, ngtcp2, quiche, zstd: fix to apply
`mark_as_advanced()` to internal variables only.
Closes #14538
find_library(BEARSSL_LIBRARY "bearssl")
include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(BEARSSL DEFAULT_MSG
- BEARSSL_INCLUDE_DIRS
- BEARSSL_LIBRARY
+find_package_handle_standard_args(BEARSSL
+ REQUIRED_VARS
+ BEARSSL_INCLUDE_DIR
+ BEARSSL_LIBRARY
)
mark_as_advanced(BEARSSL_INCLUDE_DIRS BEARSSL_LIBRARY)
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(Brotli
- FOUND_VAR
- BROTLI_FOUND
REQUIRED_VARS
BROTLI_INCLUDE_DIR
BROTLIDEC_LIBRARY
BROTLICOMMON_LIBRARY
- FAIL_MESSAGE
- "Could NOT find Brotli"
)
-set(BROTLI_INCLUDE_DIRS ${BROTLI_INCLUDE_DIR})
-set(BROTLI_LIBRARIES ${BROTLIDEC_LIBRARY} ${BROTLICOMMON_LIBRARY})
+if(BROTLI_FOUND)
+ set(BROTLI_INCLUDE_DIRS ${BROTLI_INCLUDE_DIR})
+ set(BROTLI_LIBRARIES ${BROTLIDEC_LIBRARY} ${BROTLICOMMON_LIBRARY})
+endif()
+
+mark_as_advanced(BROTLI_INCLUDE_DIR BROTLIDEC_LIBRARY BROTLICOMMON_LIBRARY)
"Could NOT find GSS, try to set the path to GSS root folder in the system variable GSS_ROOT_DIR"
)
-mark_as_advanced(GSS_INCLUDE_DIR GSS_LIBRARIES)
+mark_as_advanced(_GSS_CFLAGS _GSS_FOUND _GSS_INCLUDE_DIRS _GSS_LDFLAGS _GSS_LIBRARIES _GSS_LIBRARY_DIRS _GSS_MODULE_NAME _GSS_PREFIX _GSS_VERSION)
if(LIBPSL_INCLUDE_DIR)
file(STRINGS "${LIBPSL_INCLUDE_DIR}/libpsl.h" _libpsl_version_str REGEX "^#define[\t ]+PSL_VERSION[\t ]+\"(.*)\"")
string(REGEX REPLACE "^.*\"([^\"]+)\"" "\\1" LIBPSL_VERSION "${_libpsl_version_str}")
+ unset(_libpsl_version_str)
endif()
include(FindPackageHandleStandardArgs)
if(LIBSSH2_INCLUDE_DIR)
file(STRINGS "${LIBSSH2_INCLUDE_DIR}/libssh2.h" _libssh2_version_str REGEX "^#define[\t ]+LIBSSH2_VERSION[\t ]+\"(.*)\"")
string(REGEX REPLACE "^.*\"([^\"]+)\"" "\\1" LIBSSH2_VERSION "${_libssh2_version_str}")
+ unset(_libssh2_version_str)
endif()
include(FindPackageHandleStandardArgs)
# MSH3_FOUND System has msh3
# MSH3_INCLUDE_DIRS The msh3 include directories
# MSH3_LIBRARIES The msh3 library names
+# MSH3_VERSION Version of msh3
if(CURL_USE_PKGCONFIG)
find_package(PkgConfig QUIET)
${PC_MSH3_LIBRARY_DIRS}
)
+if(PC_MSH3_VERSION)
+ set(MSH3_VERSION ${PC_MSH3_VERSION})
+endif()
+
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(MSH3
REQUIRED_VARS
MSH3_INCLUDE_DIR
MSH3_LIBRARY
+ VERSION_VAR
+ MSH3_VERSION
)
if(MSH3_FOUND)
set(MSH3_LIBRARIES ${MSH3_LIBRARY})
endif()
-mark_as_advanced(MSH3_INCLUDE_DIRS MSH3_LIBRARIES)
+mark_as_advanced(MSH3_INCLUDE_DIR MSH3_LIBRARY)
set(MBEDTLS_LIBRARIES "${MBEDTLS_LIBRARY}" "${MBEDX509_LIBRARY}" "${MBEDCRYPTO_LIBRARY}")
include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(MbedTLS DEFAULT_MSG
- MBEDTLS_INCLUDE_DIRS
- MBEDTLS_LIBRARY
- MBEDX509_LIBRARY
- MBEDCRYPTO_LIBRARY
+find_package_handle_standard_args(MbedTLS
+ REQUIRED_VARS
+ MBEDTLS_INCLUDE_DIRS
+ MBEDTLS_LIBRARY
+ MBEDX509_LIBRARY
+ MBEDCRYPTO_LIBRARY
)
mark_as_advanced(MBEDTLS_INCLUDE_DIRS MBEDTLS_LIBRARY MBEDX509_LIBRARY MBEDCRYPTO_LIBRARY)
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(NGHTTP2
- FOUND_VAR
- NGHTTP2_FOUND
REQUIRED_VARS
NGHTTP2_INCLUDE_DIR
NGHTTP2_LIBRARY
set(NGHTTP2_LIBRARIES ${NGHTTP2_LIBRARY})
endif()
-mark_as_advanced(NGHTTP2_INCLUDE_DIRS NGHTTP2_LIBRARIES)
+mark_as_advanced(NGHTTP2_INCLUDE_DIR NGHTTP2_LIBRARY)
set(NGHTTP3_LIBRARIES ${NGHTTP3_LIBRARY})
endif()
-mark_as_advanced(NGHTTP3_INCLUDE_DIRS NGHTTP3_LIBRARIES)
+mark_as_advanced(NGHTTP3_INCLUDE_DIR NGHTTP3_LIBRARY)
set(NGTCP2_LIBRARIES ${NGTCP2_LIBRARY} ${NGTCP2_CRYPTO_LIBRARY})
endif()
-mark_as_advanced(NGTCP2_INCLUDE_DIRS NGTCP2_LIBRARIES)
+mark_as_advanced(NGTCP2_INCLUDE_DIR NGTCP2_LIBRARY NGTCP2_CRYPTO_LIBRARY)
# QUICHE_FOUND System has quiche
# QUICHE_INCLUDE_DIRS The quiche include directories
# QUICHE_LIBRARIES The quiche library names
+# QUICHE_VERSION Version of quiche
if(CURL_USE_PKGCONFIG)
find_package(PkgConfig QUIET)
${PC_QUICHE_LIBRARY_DIRS}
)
+if(PC_QUICHE_VERSION)
+ set(QUICHE_VERSION ${PC_QUICHE_VERSION})
+endif()
+
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(QUICHE
REQUIRED_VARS
QUICHE_INCLUDE_DIR
QUICHE_LIBRARY
+ VERSION_VAR
+ QUICHE_VERSION
)
if(QUICHE_FOUND)
set(QUICHE_LIBRARIES ${QUICHE_LIBRARY})
endif()
-mark_as_advanced(QUICHE_INCLUDE_DIRS QUICHE_LIBRARIES)
+mark_as_advanced(QUICHE_INCLUDE_DIR QUICHE_LIBRARY)
find_path(WolfSSL_INCLUDE_DIR NAMES "wolfssl/ssl.h"
HINTS
+ ${PC_WOLFSSL_INCLUDEDIR}
${PC_WOLFSSL_INCLUDE_DIRS}
)
find_library(WolfSSL_LIBRARY NAMES "wolfssl"
HINTS
+ ${PC_WOLFSSL_LIBDIR}
${PC_WOLFSSL_LIBRARY_DIRS}
)
file(READ "${Zstd_INCLUDE_DIR}/zstd.h" _zstd_header)
string(REGEX MATCH ".*define ZSTD_VERSION_MAJOR *([0-9]+).*define ZSTD_VERSION_MINOR *([0-9]+).*define ZSTD_VERSION_RELEASE *([0-9]+)" _zstd_ver "${_zstd_header}")
set(Zstd_VERSION "${CMAKE_MATCH_1}.${CMAKE_MATCH_2}.${CMAKE_MATCH_3}")
+ unset(_zstd_header)
+ unset(_zstd_ver)
endif()
include(FindPackageHandleStandardArgs)
set(Zstd_LIBRARIES ${Zstd_LIBRARY})
endif()
-mark_as_advanced(Zstd_INCLUDE_DIRS Zstd_LIBRARIES)
+mark_as_advanced(Zstd_INCLUDE_DIR Zstd_LIBRARY)