curl/CMake
Viktor Szakats 146759716c
cmake: fix pkg-config-based detection in FindGSS.cmake
Before this patch `pkg-config`-based detection was ignored, and used
solely as a path hint for native detection.

- fix `pkg_search_module()` result prefix to match what code expects:
  `_GSS` (was: `_GSS_PKG`). Update variable that were in sync with old
  prefix.

- update the pkg-config codepath to use `_GSS_MODULE_NAME` to detect
  GSS flavour. This requires CMake 3.16.
  Otherwise fall back to the old method. (The old method doesn't seem to
  work anymore (?) as of CMake 3.30.1. Documented
  `<prefix>_<modulename>_VERSION` variable is defined, but empty.)

- update the pkg-config codepath to use `_GSS_VERSION` set by CMake.
  Resort to the old code when this variable is empty. (The old code
  doesn't seem to work anymore (?) as of CMake 3.30.1)

- fix pkg-config codepath to set the documented result variables.

- align native detection variable names with those generated by
  `pkg_search_module()` in the pkg-config codepath.

- GHA/macos: enable GSS Heimdal in a cmake job.
  Uses the native detection.

- GHA/linux: enable GSS Heimdal in cmake and autotools jobs.
  CMake uses `pkg-config`-based detection.

- suppress test 2077 and 2078 results on Linux + Heimdal.
  ```
  FAIL-IGNORED 2077: 'curl --fail --negotiate to unauthenticated service fails' HTTP, HTTP GET, GSS-API
  FAIL-IGNORED 2078: 'curl --negotiate should not send empty POST request only' HTTP, HTTP GET, GSS-API
  ```
  Failing with valgrind errors in both autotools and cmake builds:
  https://github.com/curl/curl/actions/runs/10282222581/job/28453472068?pr=14430#step:38:3638
  https://github.com/curl/curl/actions/runs/10282222581/job/28453473398?pr=14430#step:38:7831

Closes #14430
2024-08-07 15:13:07 +02:00
..
Platforms build: tidy up __builtin_available feature checks (Apple) 2024-07-10 11:42:46 +02:00
cmake_uninstall.cmake.in cmake: tidy-ups 2024-08-03 20:49:15 +02:00
CMakeConfigurableFile.in copyright: update all copyright lines and remove year ranges 2023-01-03 09:19:21 +01:00
curl-config.cmake.in cmake: bring curl-config.cmake closer to FindCURL 2024-06-13 11:17:32 +02:00
CurlSymbolHiding.cmake cmake: tidy-ups 2024-08-03 20:49:15 +02:00
CurlTests.c cmake: tidy-ups 2024-08-03 20:49:15 +02:00
FindBearSSL.cmake cmake: whitespace, formatting/tidy-up in comments 2024-05-27 18:07:10 +02:00
FindBrotli.cmake cmake: whitespace, formatting/tidy-up in comments 2024-05-27 18:07:10 +02:00
FindCARES.cmake cmake: tidy-ups 2024-08-03 20:49:15 +02:00
FindGSS.cmake cmake: fix pkg-config-based detection in FindGSS.cmake 2024-08-07 15:13:07 +02:00
FindLibPSL.cmake cmake: tidy-ups 2024-08-03 20:49:15 +02:00
FindLibSSH2.cmake cmake: tidy-ups 2024-08-03 20:49:15 +02:00
FindMbedTLS.cmake cmake: whitespace, formatting/tidy-up in comments 2024-05-27 18:07:10 +02:00
FindMSH3.cmake cmake: tidy-ups 2024-08-03 20:49:15 +02:00
FindNettle.cmake cmake: tidy-ups 2024-08-03 20:49:15 +02:00
FindNGHTTP2.cmake cmake: detect nghttp2 via pkg-config, enable by default 2024-08-03 09:22:26 +02:00
FindNGHTTP3.cmake cmake: tidy-ups 2024-08-03 20:49:15 +02:00
FindNGTCP2.cmake cmake: tidy-ups 2024-08-03 20:49:15 +02:00
FindQUICHE.cmake cmake: tidy-ups 2024-08-03 20:49:15 +02:00
FindWolfSSL.cmake cmake: improve wolfSSL detection 2024-07-01 17:49:14 +02:00
FindZstd.cmake cmake: tidy-ups 2024-08-03 20:49:15 +02:00
Macros.cmake cmake: tidy-ups 2024-08-03 20:49:15 +02:00
OtherTests.cmake build: use #error instead of invalid syntax 2024-07-14 14:03:00 +02:00
PickyWarnings.cmake tidy-up: OS names 2024-08-04 19:17:45 +02:00
Utilities.cmake cmake: fix function description in comment [ci skip] 2024-02-06 22:20:33 +00:00