From: Viktor Szakats Date: Tue, 17 Dec 2024 02:20:30 +0000 (+0100) Subject: Revert: cmake: enable `CURL_USE_PKGCONFIG` for cross-`MINGW` X-Git-Tag: curl-8_12_0~329 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=290607f9d4418a95435b2e4fc91bea25524fc362;p=thirdparty%2Fcurl.git Revert: cmake: enable `CURL_USE_PKGCONFIG` for cross-`MINGW` This reverts commit 39c06f7883f448c222082c0dbb3d9a4c5eae2826 #15005. Combined with most Find modules now supporting `pkg-config` (39c741b7b008b5959980b29ac721357ff75de3f5 #15408) this change made mingw-cross builds fragile by picking up OS-native components. Also adding `/usr/include` to the header path, confusing feature detection. --- diff --git a/CMake/curl-config.cmake.in b/CMake/curl-config.cmake.in index 4612d56b4c..aa9eb51ffd 100644 --- a/CMake/curl-config.cmake.in +++ b/CMake/curl-config.cmake.in @@ -23,7 +23,7 @@ ########################################################################### @PACKAGE_INIT@ -if(UNIX OR VCPKG_TOOLCHAIN OR MINGW) # Keep in sync with root CMakeLists.txt +if(UNIX OR VCPKG_TOOLCHAIN OR (MINGW AND NOT CMAKE_CROSSCOMPILING)) # Keep in sync with root CMakeLists.txt set(_curl_use_pkgconfig_default ON) else() set(_curl_use_pkgconfig_default OFF) diff --git a/CMakeLists.txt b/CMakeLists.txt index af21d81848..eae5925d64 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -279,7 +279,7 @@ else() endif() # Override to force-disable or force-enable the use of pkg-config. -if(UNIX OR VCPKG_TOOLCHAIN OR MINGW) # Keep in sync with CMake/curl-config.cmake.in +if(UNIX OR VCPKG_TOOLCHAIN OR (MINGW AND NOT CMAKE_CROSSCOMPILING)) # Keep in sync with CMake/curl-config.cmake.in set(_curl_use_pkgconfig_default ON) else() set(_curl_use_pkgconfig_default OFF) diff --git a/docs/INSTALL-CMAKE.md b/docs/INSTALL-CMAKE.md index 507d5fd48f..ec3c876c4a 100644 --- a/docs/INSTALL-CMAKE.md +++ b/docs/INSTALL-CMAKE.md @@ -276,7 +276,7 @@ Details via CMake - `CURL_USE_LIBUV`: Use libuv for event-based tests. Default: `OFF` - `CURL_USE_MBEDTLS`: Enable mbedTLS for SSL/TLS. Default: `OFF` - `CURL_USE_OPENSSL`: Enable OpenSSL for SSL/TLS. Default: `ON` if no other TLS backend was enabled. -- `CURL_USE_PKGCONFIG`: Enable `pkg-config` to detect dependencies. Default: `ON` for Unix, vcpkg, MinGW. +- `CURL_USE_PKGCONFIG`: Enable `pkg-config` to detect dependencies. Default: `ON` for Unix, vcpkg, MinGW if not cross-compiling. - `CURL_USE_RUSTLS`: Enable Rustls for SSL/TLS. Default: `OFF` - `CURL_USE_SCHANNEL`: Enable Windows native SSL/TLS (Schannel). Default: `OFF` - `CURL_USE_SECTRANSP`: Enable Apple OS native SSL/TLS (Secure Transport). Default: `OFF`