curl/CMake
Viktor Szakats 84a6579132
cmake: replace check_library_exists_concat()
The idea of `check_library_exists_concat()` is that it detects an
optional component and adds it to the list of libs that we also use in
subsequent component checks. This caused problems when detecting
components with unnecessary dependencies that were not yet built.

CMake offers the `CMAKE_REQUIRED_LIBRARIES` variable to set libs used
for component checks, which we already use in most cases. That left 4
uses of `check_library_exists_concat()`. Only one of these actually
needed the 'concat' feature (ldap/lber).

Delete this function and replace it with standard
`check_library_exists()` and manual management of our `CURL_LIBS`
list we use when linking build targets. And special logic to handle the
ldap/lber case.

(We have a similar function for headers: `check_include_file_concat()`.
It works, but problematic for performance reasons and because it hides
the actual headers required in `check_symbol_exists()` calls.)

Ref: #11537 #11558
Fixes #11285
Fixes #11648
Closes #12070
2023-10-15 20:48:17 +00:00
..
Platforms cmake: pre-cache HAVE_POLL_FINE on Windows 2023-10-01 18:02:25 +00:00
cmake_uninstall.cmake.in
CMakeConfigurableFile.in
curl-config.cmake.in cmake: fix to use variable for the curl namespace 2023-08-09 12:01:46 +00:00
CurlSymbolHiding.cmake cmake: lib CURL_STATICLIB fixes (Windows) 2023-09-25 22:05:29 +00:00
CurlTests.c lib: remove TIME_WITH_SYS_TIME 2023-09-28 22:58:36 +02:00
FindBearSSL.cmake
FindBrotli.cmake
FindCARES.cmake
FindGSS.cmake
FindLibPSL.cmake
FindLibSSH2.cmake
FindMbedTLS.cmake
FindMSH3.cmake
FindNGHTTP2.cmake
FindNGHTTP3.cmake
FindNGTCP2.cmake h3: add support for ngtcp2 with AWS-LC builds 2023-10-08 22:35:04 +00:00
FindQUICHE.cmake
FindWolfSSL.cmake
FindZstd.cmake
Macros.cmake cmake: replace check_library_exists_concat() 2023-10-15 20:48:17 +00:00
OtherTests.cmake cmake: fix HAVE_H_ERRNO_ASSIGNABLE detection 2023-10-12 06:46:21 +00:00
PickyWarnings.cmake
Utilities.cmake