@crossbind/port-curl-ios 2.0.0-beta.56 → 2.0.0-beta.58

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/curl.xcframework/ios-arm64/Headers/curl/curl.h +42 -16
  2. package/curl.xcframework/ios-arm64/Headers/curl/curlver.h +5 -6
  3. package/curl.xcframework/ios-arm64/Headers/curl/multi.h +14 -14
  4. package/curl.xcframework/ios-arm64/Headers/curl/typecheck-gcc.h +7 -3
  5. package/curl.xcframework/ios-arm64/Headers/curl/urlapi.h +1 -0
  6. package/curl.xcframework/ios-arm64/libcurl.a +0 -0
  7. package/curl.xcframework/ios-arm64-simulator/Headers/curl/curl.h +42 -16
  8. package/curl.xcframework/ios-arm64-simulator/Headers/curl/curlver.h +5 -6
  9. package/curl.xcframework/ios-arm64-simulator/Headers/curl/multi.h +14 -14
  10. package/curl.xcframework/ios-arm64-simulator/Headers/curl/typecheck-gcc.h +7 -3
  11. package/curl.xcframework/ios-arm64-simulator/Headers/curl/urlapi.h +1 -0
  12. package/curl.xcframework/ios-arm64-simulator/libcurl.a +0 -0
  13. package/dist/prebuilt/ios-iphoneos-mt-release/crossbind-source.fingerprint +1 -1
  14. package/dist/prebuilt/ios-iphoneos-mt-release/include/curl/curl.h +42 -16
  15. package/dist/prebuilt/ios-iphoneos-mt-release/include/curl/curlver.h +5 -6
  16. package/dist/prebuilt/ios-iphoneos-mt-release/include/curl/multi.h +14 -14
  17. package/dist/prebuilt/ios-iphoneos-mt-release/include/curl/typecheck-gcc.h +7 -3
  18. package/dist/prebuilt/ios-iphoneos-mt-release/include/curl/urlapi.h +1 -0
  19. package/dist/prebuilt/ios-iphoneos-mt-release/lib/cmake/CURL/CURLConfig.cmake +4 -4
  20. package/dist/prebuilt/ios-iphoneos-mt-release/lib/cmake/CURL/CURLConfigVersion.cmake +3 -3
  21. package/dist/prebuilt/ios-iphoneos-mt-release/lib/cmake/CURL/FindGSS.cmake +130 -112
  22. package/dist/prebuilt/ios-iphoneos-mt-release/lib/cmake/CURL/FindLibgsasl.cmake +1 -0
  23. package/dist/prebuilt/ios-iphoneos-mt-release/lib/cmake/CURL/FindNettle.cmake +13 -9
  24. package/dist/prebuilt/ios-iphoneos-mt-release/lib/cmake/CURL/FindZstd.cmake +2 -2
  25. package/dist/prebuilt/ios-iphoneos-mt-release/lib/libcurl.a +0 -0
  26. package/dist/prebuilt/ios-iphoneos-mt-release/lib/pkgconfig/libcurl.pc +7 -4
  27. package/dist/prebuilt/ios-iphoneos-mt-release/share/man/man1/curl-config.1 +1 -1
  28. package/dist/prebuilt/ios-iphonesimulator-mt-release/crossbind-source.fingerprint +1 -1
  29. package/dist/prebuilt/ios-iphonesimulator-mt-release/include/curl/curl.h +42 -16
  30. package/dist/prebuilt/ios-iphonesimulator-mt-release/include/curl/curlver.h +5 -6
  31. package/dist/prebuilt/ios-iphonesimulator-mt-release/include/curl/multi.h +14 -14
  32. package/dist/prebuilt/ios-iphonesimulator-mt-release/include/curl/typecheck-gcc.h +7 -3
  33. package/dist/prebuilt/ios-iphonesimulator-mt-release/include/curl/urlapi.h +1 -0
  34. package/dist/prebuilt/ios-iphonesimulator-mt-release/lib/cmake/CURL/CURLConfig.cmake +4 -4
  35. package/dist/prebuilt/ios-iphonesimulator-mt-release/lib/cmake/CURL/CURLConfigVersion.cmake +3 -3
  36. package/dist/prebuilt/ios-iphonesimulator-mt-release/lib/cmake/CURL/FindGSS.cmake +130 -112
  37. package/dist/prebuilt/ios-iphonesimulator-mt-release/lib/cmake/CURL/FindLibgsasl.cmake +1 -0
  38. package/dist/prebuilt/ios-iphonesimulator-mt-release/lib/cmake/CURL/FindNettle.cmake +13 -9
  39. package/dist/prebuilt/ios-iphonesimulator-mt-release/lib/cmake/CURL/FindZstd.cmake +2 -2
  40. package/dist/prebuilt/ios-iphonesimulator-mt-release/lib/libcurl.a +0 -0
  41. package/dist/prebuilt/ios-iphonesimulator-mt-release/lib/pkgconfig/libcurl.pc +7 -4
  42. package/dist/prebuilt/ios-iphonesimulator-mt-release/share/man/man1/curl-config.1 +1 -1
  43. package/package.json +5 -5
@@ -32,12 +32,12 @@
32
32
 
33
33
  /* This is the version number of the libcurl package from which this header
34
34
  file origins: */
35
- #define LIBCURL_VERSION "8.21.0"
35
+ #define LIBCURL_VERSION "8.22.0"
36
36
 
37
37
  /* The numeric version number is also available "in parts" by using these
38
38
  defines: */
39
39
  #define LIBCURL_VERSION_MAJOR 8
40
- #define LIBCURL_VERSION_MINOR 21
40
+ #define LIBCURL_VERSION_MINOR 22
41
41
  #define LIBCURL_VERSION_PATCH 0
42
42
  /* This is the numeric version of the libcurl version number, meant for easier
43
43
  parsing and comparisons by programs. The LIBCURL_VERSION_NUM define always
@@ -56,9 +56,8 @@
56
56
 
57
57
  Note: This define is the full hex number and _does not_ use the
58
58
  CURL_VERSION_BITS() macro since curl's own configure script greps for it
59
- and needs it to contain the full number.
60
- */
61
- #define LIBCURL_VERSION_NUM 0x081500
59
+ and needs it to contain the full number. */
60
+ #define LIBCURL_VERSION_NUM 0x081600
62
61
 
63
62
  /*
64
63
  * This is the date and time when the full source package was created. The
@@ -69,7 +68,7 @@
69
68
  *
70
69
  * "2007-11-23"
71
70
  */
72
- #define LIBCURL_TIMESTAMP "2026-06-24"
71
+ #define LIBCURL_TIMESTAMP "2026-09-02"
73
72
 
74
73
  #define CURL_VERSION_BITS(x, y, z) ((x) << 16 | (y) << 8 | (z))
75
74
  #define CURL_AT_LEAST_VERSION(x, y, z) \
@@ -24,20 +24,20 @@
24
24
  *
25
25
  ***************************************************************************/
26
26
  /*
27
- This is an "external" header file. Do not give away any internals here!
28
-
29
- GOALS
30
-
31
- o Enable a "pull" interface. The application that uses libcurl decides where
32
- and when to ask libcurl to get/send data.
33
-
34
- o Enable multiple simultaneous transfers in the same thread without making it
35
- complicated for the application.
36
-
37
- o Enable the application to select() on its own file descriptors and curl's
38
- file descriptors simultaneous easily.
39
-
40
- */
27
+ * This is an "external" header file. Do not give away any internals here!
28
+ *
29
+ * GOALS
30
+ *
31
+ * o Enable a "pull" interface. The application that uses libcurl decides where
32
+ * and when to ask libcurl to get/send data.
33
+ *
34
+ * o Enable multiple simultaneous transfers in the same thread without making
35
+ * it complicated for the application.
36
+ *
37
+ * o Enable the application to select() on its own file descriptors and curl's
38
+ * file descriptors simultaneous easily.
39
+ *
40
+ */
41
41
 
42
42
  /*
43
43
  * This header file should not really need to include "curl.h" since curl.h
@@ -496,6 +496,9 @@ CURLWARNING(Wcurl_easy_getinfo_err_curl_off_t,
496
496
  (option) == CURLOPT_USERAGENT || \
497
497
  (option) == CURLOPT_USERNAME || \
498
498
  (option) == CURLOPT_AWS_SIGV4 || \
499
+ (option) == CURLOPT_HTTPSIG_HEADERS || \
500
+ (option) == CURLOPT_HTTPSIG_KEY || \
501
+ (option) == CURLOPT_HTTPSIG_KEYID || \
499
502
  (option) == CURLOPT_USERPWD || \
500
503
  (option) == CURLOPT_XOAUTH2_BEARER || \
501
504
  0)
@@ -605,9 +608,10 @@ CURLWARNING(Wcurl_easy_getinfo_err_curl_off_t,
605
608
  * == or whatsoever.
606
609
  */
607
610
 
608
- /* XXX: should evaluate to true if expr is a pointer */
611
+ /* XXX: should evaluate to true if expr is a pointer or a char[] array */
609
612
  #define curlcheck_any_ptr(expr) \
610
- (sizeof(expr) == sizeof(void *))
613
+ (sizeof(expr) == sizeof(void *) || \
614
+ __builtin_types_compatible_p(__typeof__(expr), char[]))
611
615
 
612
616
  /* evaluates to true if expr is NULL */
613
617
  /* XXX: must not evaluate expr, so this check is not accurate */
@@ -674,7 +678,7 @@ CURLWARNING(Wcurl_easy_getinfo_err_curl_off_t,
674
678
  (__builtin_types_compatible_p(__typeof__(expr), curl_off_t))
675
679
 
676
680
  /* evaluates to true if expr is abuffer suitable for CURLOPT_ERRORBUFFER */
677
- /* XXX: also check size of an char[] array? */
681
+ /* XXX: also check size of a char[] array? */
678
682
  #define curlcheck_error_buffer(expr) \
679
683
  (curlcheck_NULL(expr) || \
680
684
  __builtin_types_compatible_p(__typeof__(expr), char *) || \
@@ -64,6 +64,7 @@ typedef enum {
64
64
  CURLUE_BAD_USER, /* 29 */
65
65
  CURLUE_LACKS_IDN, /* 30 */
66
66
  CURLUE_TOO_LARGE, /* 31 */
67
+ CURLUE_BACKSLASH, /* 32 */
67
68
  CURLUE_LAST
68
69
  } CURLUcode;
69
70
 
@@ -54,7 +54,7 @@ option(CURL_USE_PKGCONFIG "Enable pkg-config to detect CURL dependencies. Defaul
54
54
 
55
55
  if(CMAKE_VERSION VERSION_LESS 3.18)
56
56
  message(STATUS "CURL: CURL-specific Find modules require "
57
- "CMake 3.18 or upper, found: ${CMAKE_VERSION}.")
57
+ "CMake 3.18 or greater, found: ${CMAKE_VERSION}.")
58
58
  endif()
59
59
 
60
60
  include(CMakeFindDependencyMacro)
@@ -98,7 +98,7 @@ if("")
98
98
  list(APPEND _curl_libs CURL::cares)
99
99
  endif()
100
100
  if("")
101
- find_dependency(GSS MODULE)
101
+ find_dependency(GSS MODULE COMPONENTS "")
102
102
  list(APPEND _curl_libs CURL::gss)
103
103
  endif()
104
104
  if("")
@@ -188,13 +188,13 @@ if(NOT TARGET CURL::libcurl)
188
188
  endif()
189
189
 
190
190
  # For compatibility with CMake's FindCURL.cmake
191
- set(CURL_VERSION_STRING "8.21.0")
191
+ set(CURL_VERSION_STRING "8.22.0")
192
192
  set(CURL_LIBRARIES CURL::libcurl)
193
193
  set(CURL_LIBRARIES_PRIVATE "/Users/runner/work/crossbind/crossbind/ports/openssl/ios/ssl.xcframework/ios-arm64/libssl.a;/Users/runner/work/crossbind/crossbind/ports/openssl/ios/crypto.xcframework/ios-arm64/libcrypto.a;/Users/runner/work/crossbind/crossbind/ports/openssl/ios/crypto.xcframework/ios-arm64/libcrypto.a;/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/usr/lib/libz.tbd")
194
194
  set_and_check(CURL_INCLUDE_DIRS "${PACKAGE_PREFIX_DIR}/include")
195
195
 
196
196
  set(CURL_SUPPORTED_PROTOCOLS "DICT;FILE;FTP;FTPS;GOPHER;GOPHERS;HTTP;HTTPS;IMAP;IMAPS;IPFS;IPNS;MQTT;MQTTS;POP3;POP3S;RTSP;SMTP;SMTPS;TELNET;TFTP;WS;WSS")
197
- set(CURL_SUPPORTED_FEATURES "alt-svc;AsynchDNS;HSTS;HTTPS-proxy;Largefile;libz;SSL;threadsafe;TLS-SRP;UnixSockets")
197
+ set(CURL_SUPPORTED_FEATURES "alt-svc;AsynchDNS;HSTS;HTTPS-proxy;Largefile;libz;SSL;threadsafe;UnixSockets")
198
198
 
199
199
  foreach(_curl_item IN LISTS CURL_SUPPORTED_PROTOCOLS CURL_SUPPORTED_FEATURES)
200
200
  set(CURL_SUPPORTS_${_curl_item} TRUE)
@@ -15,19 +15,19 @@
15
15
  # The variable CVF_VERSION must be set before calling configure_file().
16
16
 
17
17
 
18
- set(PACKAGE_VERSION "8.21.0")
18
+ set(PACKAGE_VERSION "8.22.0")
19
19
 
20
20
  if(PACKAGE_VERSION VERSION_LESS PACKAGE_FIND_VERSION)
21
21
  set(PACKAGE_VERSION_COMPATIBLE FALSE)
22
22
  else()
23
23
 
24
- if("8.21.0" MATCHES "^([0-9]+)\\.")
24
+ if("8.22.0" MATCHES "^([0-9]+)\\.")
25
25
  set(CVF_VERSION_MAJOR "${CMAKE_MATCH_1}")
26
26
  if(NOT CVF_VERSION_MAJOR VERSION_EQUAL 0)
27
27
  string(REGEX REPLACE "^0+" "" CVF_VERSION_MAJOR "${CVF_VERSION_MAJOR}")
28
28
  endif()
29
29
  else()
30
- set(CVF_VERSION_MAJOR "8.21.0")
30
+ set(CVF_VERSION_MAJOR "8.22.0")
31
31
  endif()
32
32
 
33
33
  if(PACKAGE_FIND_VERSION_RANGE)
@@ -23,6 +23,10 @@
23
23
  ###########################################################################
24
24
  # Find the GSS Kerberos library
25
25
  #
26
+ # This module accepts optional COMPONENTS to control the GSS library flavor:
27
+ #
28
+ # - Apple
29
+ #
26
30
  # Input variables:
27
31
  #
28
32
  # - `GSS_ROOT_DIR`: Absolute path to the root installation of GSS. (also supported as environment)
@@ -32,7 +36,7 @@
32
36
  # - `GSS_FOUND`: System has GSS.
33
37
  # - `GSS_VERSION`: Version of GSS.
34
38
  # - `CURL::gss`: GSS library target.
35
- # - `INTERFACE_CURL_GSS_FLAVOR`: Custom property. "GNU" or "MIT" if detected.
39
+ # - `INTERFACE_CURL_GSS_FLAVOR`: Custom property. "Apple", "GNU" or "MIT" if detected.
36
40
 
37
41
  set(_gnu_modname "gss")
38
42
  set(_mit_modname "mit-krb5-gssapi")
@@ -46,8 +50,12 @@ set(_gss_root_hints "${GSS_ROOT_DIR}" "$ENV{GSS_ROOT_DIR}")
46
50
  set(_gss_CFLAGS "")
47
51
  set(_gss_LIBRARY_DIRS "")
48
52
 
53
+ if(NOT APPLE AND GSS_FIND_COMPONENTS STREQUAL "Apple")
54
+ set(GSS_FIND_COMPONENTS "")
55
+ endif()
56
+
49
57
  # Try to find library using system pkg-config if user did not specify root dir
50
- if(NOT GSS_ROOT_DIR AND NOT "$ENV{GSS_ROOT_DIR}")
58
+ if(NOT GSS_ROOT_DIR AND NOT "$ENV{GSS_ROOT_DIR}" AND NOT GSS_FIND_COMPONENTS STREQUAL "Apple")
51
59
  if(CURL_USE_PKGCONFIG)
52
60
  find_package(PkgConfig QUIET)
53
61
  pkg_search_module(_gss ${_mit_modname} ${_gnu_modname})
@@ -60,136 +68,146 @@ if(NOT GSS_ROOT_DIR AND NOT "$ENV{GSS_ROOT_DIR}")
60
68
  endif()
61
69
 
62
70
  if(NOT _gss_FOUND) # Not found by pkg-config. Let us take more traditional approach.
63
- find_file(_gss_configure_script NAMES "krb5-config" PATH_SUFFIXES "bin" HINTS ${_gss_root_hints}
64
- NO_CMAKE_PATH NO_CMAKE_ENVIRONMENT_PATH)
65
- # If not found in user-supplied directories, maybe system knows better
66
- find_file(_gss_configure_script NAMES "krb5-config" PATH_SUFFIXES "bin")
67
-
68
- if(_gss_configure_script)
69
-
70
- set(_gss_INCLUDE_DIRS "")
71
- set(_gss_LIBRARIES "")
72
-
73
- execute_process(COMMAND ${_gss_configure_script} "--cflags" "gssapi"
74
- OUTPUT_VARIABLE _gss_cflags_raw
75
- RESULT_VARIABLE _gss_configure_failed
76
- OUTPUT_STRIP_TRAILING_WHITESPACE)
77
- message(STATUS "FindGSS krb5-config --cflags: ${_gss_cflags_raw}")
78
-
79
- if(NOT _gss_configure_failed) # 0 means success
80
- # Should also work in an odd case when multiple directories are given.
81
- string(STRIP "${_gss_cflags_raw}" _gss_cflags_raw)
82
- string(REGEX REPLACE " +-(I)" ";-\\1" _gss_cflags_raw "${_gss_cflags_raw}")
83
- string(REGEX REPLACE " +-([^I][^ \\t;]*)" ";-\\1" _gss_cflags_raw "${_gss_cflags_raw}")
84
-
85
- foreach(_flag IN LISTS _gss_cflags_raw)
86
- if(_flag MATCHES "^-I")
87
- string(REGEX REPLACE "^-I" "" _flag "${_flag}")
88
- list(APPEND _gss_INCLUDE_DIRS "${_flag}")
89
- else()
90
- list(APPEND _gss_CFLAGS "${_flag}")
91
- endif()
92
- endforeach()
93
- endif()
71
+ if(GSS_FIND_COMPONENTS STREQUAL "Apple")
72
+ find_path(_gss_INCLUDE_DIRS NAMES "GSS/gssapi.h" PATH_SUFFIXES "include")
73
+ find_library(_gss_LIBRARIES NAMES "GSS")
94
74
 
95
- execute_process(COMMAND ${_gss_configure_script} "--libs" "gssapi"
96
- OUTPUT_VARIABLE _gss_lib_flags
97
- RESULT_VARIABLE _gss_configure_failed
98
- OUTPUT_STRIP_TRAILING_WHITESPACE)
99
- message(STATUS "FindGSS krb5-config --libs: ${_gss_lib_flags}")
100
-
101
- if(NOT _gss_configure_failed) # 0 means success
102
- # This script gives us libraries and link directories.
103
- string(STRIP "${_gss_lib_flags}" _gss_lib_flags)
104
- string(REGEX REPLACE " +-(L|l)" ";-\\1" _gss_lib_flags "${_gss_lib_flags}")
105
- string(REGEX REPLACE " +-([^Ll][^ \\t;]*)" ";-\\1" _gss_lib_flags "${_gss_lib_flags}")
106
-
107
- foreach(_flag IN LISTS _gss_lib_flags)
108
- if(_flag MATCHES "^-l")
109
- string(REGEX REPLACE "^-l" "" _flag "${_flag}")
110
- list(APPEND _gss_LIBRARIES "${_flag}")
111
- elseif(_flag MATCHES "^-L")
112
- string(REGEX REPLACE "^-L" "" _flag "${_flag}")
113
- list(APPEND _gss_LIBRARY_DIRS "${_flag}")
114
- endif()
115
- endforeach()
75
+ if(_gss_INCLUDE_DIRS AND _gss_LIBRARIES)
76
+ message(STATUS "Found AppleGSS: ${_gss_INCLUDE_DIRS}")
77
+ set(_gss_flavor "Apple")
116
78
  endif()
79
+ else()
80
+ find_file(_gss_configure_script NAMES "krb5-config" PATH_SUFFIXES "bin" HINTS ${_gss_root_hints}
81
+ NO_CMAKE_PATH NO_CMAKE_ENVIRONMENT_PATH)
82
+ # If not found in user-supplied directories, maybe system knows better
83
+ find_file(_gss_configure_script NAMES "krb5-config" PATH_SUFFIXES "bin")
117
84
 
118
- execute_process(COMMAND ${_gss_configure_script} "--version"
119
- OUTPUT_VARIABLE _gss_version
120
- RESULT_VARIABLE _gss_configure_failed
121
- OUTPUT_STRIP_TRAILING_WHITESPACE)
122
-
123
- # Older versions may not have the "--version" parameter. In this case we do not care.
124
- if(_gss_configure_failed)
125
- set(_gss_version 0)
126
- else()
127
- # Strip prefix string to leave the version number only
128
- string(REPLACE "Kerberos 5 release " "" _gss_version "${_gss_version}")
129
- endif()
85
+ if(_gss_configure_script)
130
86
 
131
- execute_process(COMMAND ${_gss_configure_script} "--vendor"
132
- OUTPUT_VARIABLE _gss_vendor
133
- RESULT_VARIABLE _gss_configure_failed
134
- OUTPUT_STRIP_TRAILING_WHITESPACE)
87
+ set(_gss_INCLUDE_DIRS "")
88
+ set(_gss_LIBRARIES "")
135
89
 
136
- # Older versions may not have the "--vendor" parameter. In this case we do not care.
137
- if(NOT _gss_configure_failed AND NOT _gss_vendor MATCHES "Heimdal|heimdal")
138
- set(_gss_flavor "MIT") # assume a default, should not really matter
139
- endif()
90
+ execute_process(COMMAND ${_gss_configure_script} "--cflags" "gssapi"
91
+ OUTPUT_VARIABLE _gss_cflags_raw
92
+ RESULT_VARIABLE _gss_configure_failed
93
+ OUTPUT_STRIP_TRAILING_WHITESPACE)
94
+ message(STATUS "FindGSS krb5-config --cflags: ${_gss_cflags_raw}")
140
95
 
141
- else() # Either there is no config script or we are on a platform that does not provide one (Windows?)
96
+ if(NOT _gss_configure_failed) # 0 means success
97
+ # Should also work in an odd case when multiple directories are given.
98
+ string(STRIP "${_gss_cflags_raw}" _gss_cflags_raw)
99
+ string(REGEX REPLACE " +-(I)" ";-\\1" _gss_cflags_raw "${_gss_cflags_raw}")
100
+ string(REGEX REPLACE " +-([^I][^ \\t;]*)" ";-\\1" _gss_cflags_raw "${_gss_cflags_raw}")
142
101
 
143
- find_path(_gss_INCLUDE_DIRS NAMES "gssapi/gssapi.h" HINTS ${_gss_root_hints} PATH_SUFFIXES "include" "inc")
102
+ foreach(_flag IN LISTS _gss_cflags_raw)
103
+ if(_flag MATCHES "^-I")
104
+ string(REGEX REPLACE "^-I" "" _flag "${_flag}")
105
+ list(APPEND _gss_INCLUDE_DIRS "${_flag}")
106
+ else()
107
+ list(APPEND _gss_CFLAGS "${_flag}")
108
+ endif()
109
+ endforeach()
110
+ endif()
144
111
 
145
- if(_gss_INCLUDE_DIRS) # We have found something
146
- set(_gss_libdir_suffixes "")
112
+ execute_process(COMMAND ${_gss_configure_script} "--libs" "gssapi"
113
+ OUTPUT_VARIABLE _gss_lib_flags
114
+ RESULT_VARIABLE _gss_configure_failed
115
+ OUTPUT_STRIP_TRAILING_WHITESPACE)
116
+ message(STATUS "FindGSS krb5-config --libs: ${_gss_lib_flags}")
147
117
 
148
- cmake_push_check_state()
149
- list(APPEND CMAKE_REQUIRED_INCLUDES "${_gss_INCLUDE_DIRS}")
150
- check_include_files("gssapi/gssapi_generic.h;gssapi/gssapi_krb5.h" _gss_have_mit_headers)
151
- cmake_pop_check_state()
118
+ if(NOT _gss_configure_failed) # 0 means success
119
+ # This script gives us libraries and link directories.
120
+ string(STRIP "${_gss_lib_flags}" _gss_lib_flags)
121
+ string(REGEX REPLACE " +-(L|l)" ";-\\1" _gss_lib_flags "${_gss_lib_flags}")
122
+ string(REGEX REPLACE " +-([^Ll][^ \\t;]*)" ";-\\1" _gss_lib_flags "${_gss_lib_flags}")
152
123
 
153
- if(_gss_have_mit_headers)
154
- set(_gss_flavor "MIT")
155
- if(WIN32)
156
- if(CMAKE_SIZEOF_VOID_P EQUAL 8)
157
- list(APPEND _gss_libdir_suffixes "lib/AMD64")
158
- set(_gss_libname "gssapi64")
159
- else()
160
- list(APPEND _gss_libdir_suffixes "lib/i386")
161
- set(_gss_libname "gssapi32")
124
+ foreach(_flag IN LISTS _gss_lib_flags)
125
+ if(_flag MATCHES "^-l")
126
+ string(REGEX REPLACE "^-l" "" _flag "${_flag}")
127
+ list(APPEND _gss_LIBRARIES "${_flag}")
128
+ elseif(_flag MATCHES "^-L")
129
+ string(REGEX REPLACE "^-L" "" _flag "${_flag}")
130
+ list(APPEND _gss_LIBRARY_DIRS "${_flag}")
162
131
  endif()
163
- else()
164
- list(APPEND _gss_libdir_suffixes "lib" "lib64") # those suffixes are not checked for HINTS
165
- set(_gss_libname "gssapi_krb5")
166
- endif()
132
+ endforeach()
167
133
  endif()
168
- else()
169
- find_path(_gss_INCLUDE_DIRS NAMES "gss.h" HINTS ${_gss_root_hints} PATH_SUFFIXES "include")
170
134
 
171
- if(_gss_INCLUDE_DIRS)
172
- set(_gss_flavor "GNU")
173
- set(_gss_pc_requires ${_gnu_modname})
174
- set(_gss_libname "gss")
135
+ execute_process(COMMAND ${_gss_configure_script} "--version"
136
+ OUTPUT_VARIABLE _gss_version
137
+ RESULT_VARIABLE _gss_configure_failed
138
+ OUTPUT_STRIP_TRAILING_WHITESPACE)
139
+
140
+ # Older versions may not have the "--version" parameter. In this case we do not care.
141
+ if(_gss_configure_failed)
142
+ set(_gss_version 0)
143
+ else()
144
+ # Strip prefix string to leave the version number only
145
+ string(REPLACE "Kerberos 5 release " "" _gss_version "${_gss_version}")
175
146
  endif()
176
- endif()
177
147
 
178
- # If we have headers, look up libraries
179
- if(_gss_flavor)
180
- set(_gss_libdir_hints ${_gss_root_hints})
181
- if(CMAKE_VERSION VERSION_GREATER_EQUAL 3.20)
182
- cmake_path(GET _gss_INCLUDE_DIRS PARENT_PATH _gss_calculated_potential_root)
148
+ execute_process(COMMAND ${_gss_configure_script} "--vendor"
149
+ OUTPUT_VARIABLE _gss_vendor
150
+ RESULT_VARIABLE _gss_configure_failed
151
+ OUTPUT_STRIP_TRAILING_WHITESPACE)
152
+
153
+ # Older versions may not have the "--vendor" parameter. In this case we do not care.
154
+ if(NOT _gss_configure_failed AND NOT _gss_vendor MATCHES "Heimdal|heimdal")
155
+ set(_gss_flavor "MIT") # assume a default, should not really matter
156
+ endif()
157
+
158
+ else() # Either there is no config script or we are on a platform that does not provide one (Windows?)
159
+
160
+ find_path(_gss_INCLUDE_DIRS NAMES "gssapi/gssapi.h" HINTS ${_gss_root_hints} PATH_SUFFIXES "include" "inc")
161
+
162
+ if(_gss_INCLUDE_DIRS) # We have found something
163
+ set(_gss_libdir_suffixes "")
164
+
165
+ cmake_push_check_state()
166
+ list(APPEND CMAKE_REQUIRED_INCLUDES "${_gss_INCLUDE_DIRS}")
167
+ check_include_files("gssapi/gssapi_generic.h;gssapi/gssapi_krb5.h" _gss_have_mit_headers)
168
+ cmake_pop_check_state()
169
+
170
+ if(_gss_have_mit_headers)
171
+ set(_gss_flavor "MIT")
172
+ if(WIN32)
173
+ if(CMAKE_SIZEOF_VOID_P EQUAL 8)
174
+ list(APPEND _gss_libdir_suffixes "lib/AMD64")
175
+ set(_gss_libname "gssapi64")
176
+ else()
177
+ list(APPEND _gss_libdir_suffixes "lib/i386")
178
+ set(_gss_libname "gssapi32")
179
+ endif()
180
+ else()
181
+ list(APPEND _gss_libdir_suffixes "lib" "lib64") # those suffixes are not checked for HINTS
182
+ set(_gss_libname "gssapi_krb5")
183
+ endif()
184
+ endif()
183
185
  else()
184
- get_filename_component(_gss_calculated_potential_root "${_gss_INCLUDE_DIRS}" DIRECTORY)
186
+ find_path(_gss_INCLUDE_DIRS NAMES "gss.h" HINTS ${_gss_root_hints} PATH_SUFFIXES "include")
187
+
188
+ if(_gss_INCLUDE_DIRS)
189
+ set(_gss_flavor "GNU")
190
+ set(_gss_pc_requires ${_gnu_modname})
191
+ set(_gss_libname "gss")
192
+ endif()
185
193
  endif()
186
- list(APPEND _gss_libdir_hints ${_gss_calculated_potential_root})
187
194
 
188
- find_library(_gss_LIBRARIES NAMES ${_gss_libname} HINTS ${_gss_libdir_hints} PATH_SUFFIXES ${_gss_libdir_suffixes})
195
+ # If we have headers, look up libraries
196
+ if(_gss_flavor)
197
+ set(_gss_libdir_hints ${_gss_root_hints})
198
+ if(CMAKE_VERSION VERSION_GREATER_EQUAL 3.20)
199
+ cmake_path(GET _gss_INCLUDE_DIRS PARENT_PATH _gss_calculated_potential_root)
200
+ else()
201
+ get_filename_component(_gss_calculated_potential_root "${_gss_INCLUDE_DIRS}" DIRECTORY)
202
+ endif()
203
+ list(APPEND _gss_libdir_hints ${_gss_calculated_potential_root})
204
+
205
+ find_library(_gss_LIBRARIES NAMES ${_gss_libname} HINTS ${_gss_libdir_hints} PATH_SUFFIXES ${_gss_libdir_suffixes})
206
+ endif()
189
207
  endif()
190
208
  endif()
191
209
  if(NOT _gss_flavor)
192
- message(FATAL_ERROR "GNU or MIT GSS is required")
210
+ message(FATAL_ERROR "MIT, GNU or Apple GSS is required")
193
211
  endif()
194
212
  else()
195
213
  if(_gss_MODULE_NAME STREQUAL _gnu_modname)
@@ -199,7 +217,7 @@ else()
199
217
  set(_gss_flavor "MIT")
200
218
  set(_gss_pc_requires ${_mit_modname})
201
219
  else()
202
- message(FATAL_ERROR "GNU or MIT GSS is required")
220
+ message(FATAL_ERROR "MIT, GNU or Apple GSS is required")
203
221
  endif()
204
222
  message(STATUS "Found GSS/${_gss_flavor} (via pkg-config): ${_gss_INCLUDE_DIRS} (found version \"${_gss_version}\")")
205
223
  endif()
@@ -46,6 +46,7 @@ endif()
46
46
  if(_libgsasl_FOUND)
47
47
  set(Libgsasl_FOUND TRUE)
48
48
  set(LIBGSASL_FOUND TRUE)
49
+ set(LIBGSASL_VERSION ${_libgsasl_VERSION})
49
50
  message(STATUS "Found Libgsasl (via pkg-config): ${_libgsasl_INCLUDE_DIRS} (found version \"${LIBGSASL_VERSION}\")")
50
51
  else()
51
52
  find_path(LIBGSASL_INCLUDE_DIR NAMES "gsasl.h")
@@ -25,19 +25,21 @@
25
25
  #
26
26
  # Input variables:
27
27
  #
28
- # - `NETTLE_INCLUDE_DIR`: Absolute path to nettle include directory.
29
- # - `NETTLE_LIBRARY`: Absolute path to `nettle` library.
28
+ # - `NETTLE_INCLUDE_DIR`: Absolute path to nettle include directory.
29
+ # - `NETTLE_HOGWEED_LIBRARY`: Absolute path to `hogweed` library.
30
+ # - `NETTLE_LIBRARY`: Absolute path to `nettle` library.
30
31
  #
31
32
  # Defines:
32
33
  #
33
- # - `NETTLE_FOUND`: System has nettle.
34
- # - `NETTLE_VERSION`: Version of nettle.
35
- # - `CURL::nettle`: nettle library target.
34
+ # - `NETTLE_FOUND`: System has nettle.
35
+ # - `NETTLE_VERSION`: Version of nettle.
36
+ # - `CURL::nettle`: nettle library target.
36
37
 
37
- set(_nettle_pc_requires "nettle")
38
+ set(_nettle_pc_requires "hogweed" "nettle")
38
39
 
39
40
  if(CURL_USE_PKGCONFIG AND
40
41
  NOT DEFINED NETTLE_INCLUDE_DIR AND
42
+ NOT DEFINED NETTLE_HOGWEED_LIBRARY AND
41
43
  NOT DEFINED NETTLE_LIBRARY)
42
44
  find_package(PkgConfig QUIET)
43
45
  pkg_check_modules(_nettle ${_nettle_pc_requires})
@@ -46,10 +48,11 @@ endif()
46
48
  if(_nettle_FOUND)
47
49
  set(Nettle_FOUND TRUE)
48
50
  set(NETTLE_FOUND TRUE)
49
- set(NETTLE_VERSION ${_nettle_VERSION})
51
+ set(NETTLE_VERSION ${_nettle_nettle_VERSION})
50
52
  message(STATUS "Found Nettle (via pkg-config): ${_nettle_INCLUDE_DIRS} (found version \"${NETTLE_VERSION}\")")
51
53
  else()
52
54
  find_path(NETTLE_INCLUDE_DIR NAMES "nettle/sha2.h")
55
+ find_library(NETTLE_HOGWEED_LIBRARY NAMES "hogweed")
53
56
  find_library(NETTLE_LIBRARY NAMES "nettle")
54
57
 
55
58
  unset(NETTLE_VERSION CACHE)
@@ -71,6 +74,7 @@ else()
71
74
  find_package_handle_standard_args(Nettle
72
75
  REQUIRED_VARS
73
76
  NETTLE_INCLUDE_DIR
77
+ NETTLE_HOGWEED_LIBRARY
74
78
  NETTLE_LIBRARY
75
79
  VERSION_VAR
76
80
  NETTLE_VERSION
@@ -78,10 +82,10 @@ else()
78
82
 
79
83
  if(NETTLE_FOUND)
80
84
  set(_nettle_INCLUDE_DIRS ${NETTLE_INCLUDE_DIR})
81
- set(_nettle_LIBRARIES ${NETTLE_LIBRARY})
85
+ set(_nettle_LIBRARIES ${NETTLE_HOGWEED_LIBRARY} ${NETTLE_LIBRARY})
82
86
  endif()
83
87
 
84
- mark_as_advanced(NETTLE_INCLUDE_DIR NETTLE_LIBRARY)
88
+ mark_as_advanced(NETTLE_INCLUDE_DIR NETTLE_HOGWEED_LIBRARY NETTLE_LIBRARY)
85
89
  endif()
86
90
 
87
91
  if(NETTLE_FOUND)
@@ -54,7 +54,7 @@ if(NOT DEFINED ZSTD_INCLUDE_DIR AND
54
54
  endif()
55
55
  if(NOT _zstd_FOUND AND CURL_USE_CMAKECONFIG)
56
56
  find_package(zstd CONFIG QUIET)
57
- # Skip using if older than v1.4.5
57
+ # Only use if 1.4.5 or greater
58
58
  if(zstd_CONFIG AND
59
59
  NOT TARGET zstd::libzstd_static AND
60
60
  NOT TARGET zstd::libzstd_shared)
@@ -81,7 +81,7 @@ elseif(zstd_CONFIG)
81
81
  if(ZSTD_USE_STATIC_LIBS)
82
82
  set(_zstd_LIBRARIES zstd::libzstd_static)
83
83
  elseif(TARGET zstd::libzstd)
84
- set(_zstd_LIBRARIES zstd::libzstd) # v1.5.6+
84
+ set(_zstd_LIBRARIES zstd::libzstd) # 1.5.6+
85
85
  else()
86
86
  set(_zstd_LIBRARIES zstd::libzstd_shared)
87
87
  endif()
@@ -27,15 +27,18 @@ exec_prefix=${prefix}
27
27
  libdir=${exec_prefix}/lib
28
28
  includedir=${prefix}/include
29
29
  supported_protocols="DICT FILE FTP FTPS GOPHER GOPHERS HTTP HTTPS IMAP IMAPS IPFS IPNS MQTT MQTTS POP3 POP3S RTSP SMTP SMTPS TELNET TFTP WS WSS"
30
- supported_features="alt-svc AsynchDNS HSTS HTTPS-proxy Largefile libz SSL threadsafe TLS-SRP UnixSockets"
30
+ supported_features="alt-svc AsynchDNS HSTS HTTPS-proxy Largefile libz SSL threadsafe UnixSockets"
31
31
 
32
32
  Name: libcurl
33
33
  URL: https://curl.se/
34
34
  Description: Library to transfer files with HTTP, FTP, etc.
35
- Version: 8.21.0
35
+ License: curl
36
+ Copyright: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
37
+ Version: 8.22.0
38
+ Source: https://curl.se/download/curl-8.22.0.tar.gz
36
39
  Requires: openssl,zlib
37
- Requires.private: openssl,zlib
38
40
  Libs: -L${libdir} -lcurl -lssl -lcrypto -lz
39
- Libs.private: -lssl -lcrypto -lz
41
+ Libs.private: -lssl -lcrypto -lz
40
42
  Cflags: -I${includedir} -DCURL_STATICLIB
41
43
  Cflags.private: -DCURL_STATICLIB
44
+ Link.ABI: c
@@ -1,5 +1,5 @@
1
1
  .\" generated by cd2nroff 0.1 from curl-config.md
2
- .TH curl-config 1 "2026-09-09" curl-config
2
+ .TH curl-config 1 "2026-09-19" curl-config
3
3
  .SH NAME
4
4
  curl\-config \- Get information about a libcurl installation
5
5
  .SH SYNOPSIS
@@ -1 +1 @@
1
- 6b0e9fa77468fac31a0190ca2036d9dc30ade84db792ba17f118c29049a08797
1
+ d8e8c7e57e4f2e42f7ba8cba8ed93afd9ed5805451eccd7b4bfcedde4faeb9f7