#
3e60f174 |
| 17-Aug-2024 |
Viktor Szakats |
cmake: tidy up more in Find modules - add `NAMES` where missing. - document input variables (including deprecated ones.) - comment cleanups. - FindWolfSSL: drop stray `QUIET` fro
cmake: tidy up more in Find modules - add `NAMES` where missing. - document input variables (including deprecated ones.) - comment cleanups. - FindWolfSSL: drop stray `QUIET` from `pkg_check_modules()`. (`QUIET` may be re-added for all modules in the future.) Closes #14579
show more ...
|
#
1d292465 |
| 16-Aug-2024 |
Viktor Szakats |
cmake: tidy up around ngtcp2 and wolfSSL - fix to add the `m` library without path. Follow-up to 8577f4ca084b8a3926b869a48a29d41a810eceb5 #14343 Authored-by: Tal Regev Fixe
cmake: tidy up around ngtcp2 and wolfSSL - fix to add the `m` library without path. Follow-up to 8577f4ca084b8a3926b869a48a29d41a810eceb5 #14343 Authored-by: Tal Regev Fixes #14549 - move `m` library detection to wolfSSL Find module. `m` is necessary for wolfSSL (wolfcrypt) library functions called by `libngtcp2_crypto_wolfssl`. Follow-up to 8577f4ca084b8a3926b869a48a29d41a810eceb5 #14343 - fix comment header about supported `COMPONENT` names. - quote strings. - lowercase local variables. Closes #14576
show more ...
|
#
24889acb |
| 17-Aug-2024 |
Viktor Szakats |
cmake: do not unset the deprecated mixed-case variables To avoid interference with the calling env. (Keep unsetting for the DIRS/DIR cases in BearSSL and mbedTLS, because the de
cmake: do not unset the deprecated mixed-case variables To avoid interference with the calling env. (Keep unsetting for the DIRS/DIR cases in BearSSL and mbedTLS, because the deprecated variables play a new role in the detection.) Follow-up to 9fbda4ca75483ee0a43289526e88d8f1e8ca2a78 #14574
show more ...
|
#
9fbda4ca |
| 16-Aug-2024 |
Viktor Szakats |
cmake: rename wolfSSL and zstd config variables to uppercase To match with other config variables and other projects. Rename these CMake configuration variables: - `WolfSSL_INCL
cmake: rename wolfSSL and zstd config variables to uppercase To match with other config variables and other projects. Rename these CMake configuration variables: - `WolfSSL_INCLUDE_DIR` -> `WOLFSSL_INCLUDE_DIR` - `WolfSSL_LIBRARY` -> `WOLFSSL_LIBRARY` - `Zstd_INCLUDE_DIR` -> `ZSTD_INCLUDE_DIR` - `Zstd_LIBRARY` -> `ZSTD_LIBRARY` The old values continue to work, with a warning suggesting the new name. Also: - add similar warnings for earlier renames for mbedTLS and BearSSL. - rename internal variables `PC_Zstd_*` to uppercase. Follow-up to db39c668a8e33e064b9eb20892cd027f46302f77 #14542 Closes #14574
show more ...
|
#
432f2fd9 |
| 16-Aug-2024 |
Viktor Szakats |
cmake: sync up version detection in Find modules - use the same pattern across all Find modules: - verify if the version header exists before reading it. - use a single regex per
cmake: sync up version detection in Find modules - use the same pattern across all Find modules: - verify if the version header exists before reading it. - use a single regex per lookup. - sync regexes between Find modules. - use generic temporary variable names. - improve readability. - make it simpler to transition to new CMake syntax in the future: ```cmake file(STRINGS "${CARES_INCLUDE_DIR}/ares_version.h" _version_str REGEX "<...>") unset(_version_str) set(CARES_VERSION "${CMAKE_MATCH_1}") ``` Ref: https://cmake.org/cmake/help/latest/policy/CMP0159.html#policy:CMP0159 - fix zstd version detection to be CMake 3.7 compatible. Required 3.9 before this patch, for the `CMAKE_MATCH_<n>` feature. Follow-up to c5d506e9bbf0669d7605d1d00865ae7e229b2409 #12200 Follow-up to 4e2f3641f80e233738147d82218317f331369c50 #14548 Closes #14572
show more ...
|
#
f3a03df6 |
| 16-Aug-2024 |
Viktor Szakats |
cmake: revert to `pkg_check_modules()` Prefer `pkg_check_modules()` over `pkg_search_module()`. `pkg_check_modules()` logs a line when there is a hit, and also warnings if a sub
cmake: revert to `pkg_check_modules()` Prefer `pkg_check_modules()` over `pkg_search_module()`. `pkg_check_modules()` logs a line when there is a hit, and also warnings if a sub-dependency is missing. In `QUIET` mode, both are silent. The extra info is useful to see if a detection happened via `pkg-config`. Keep `pkg_search_module()` in `FindGSS`. We pass two dependencies there and we want to keep stopping on the first one. Partially reverts c2889a7b4180fc963ae30811f59ab547b6eb03cd #14388 Closes #14573
show more ...
|
#
4e2f3641 |
| 13-Aug-2024 |
Viktor Szakats |
cmake: add missing version detection to Find modules - use `pkg-config` version when available and where it wasn't yet used. - add manual version detection for dependencies where th
cmake: add missing version detection to Find modules - use `pkg-config` version when available and where it wasn't yet used. - add manual version detection for dependencies where this is possible (via a public header) and where it wasn't done yet. Closes #14548
show more ...
|
#
65f5caee |
| 13-Aug-2024 |
Viktor Szakats |
cmake: tidy up Find modules Smoothen out minor differences between Find modules. - brotli, nghttp2: drop redundant `FOUND_VAR` specifiers from `find_package_handle_standard_ar
cmake: tidy up Find modules 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
show more ...
|
#
8ae7049f |
| 13-Aug-2024 |
Viktor Szakats |
cmake: sync up formatting in Find modules - lowercase internal variable names (FindGSS) - comments - whitespace Closes #14527
|
#
b910122f |
| 12-Aug-2024 |
Viktor Szakats |
cmake: add `CURL_USE_PKGCONFIG` option Add option to control whether to use `pkg-config` to detect dependencies. Curl's CMake uses `pkg-config` by default for all targets except for
cmake: add `CURL_USE_PKGCONFIG` option Add option to control whether to use `pkg-config` to detect dependencies. Curl's CMake uses `pkg-config` by default for all targets except for MSVC without vcpkg. With the CMake option `-DCURL_USE_PKGCONFIG=ON` you can override it to use `pkg-config` always. If `pkg-config` is causing issues, e.g. in cross-builds or other cases, `-DCURL_USE_PKGCONFIG=OFF` disables all use of `pkg-config`. Also add it to `curl-config.cmake`. Not yet used, but will be once curl starts referencing any curl-specific `Find*` module from this public script. Follow-up to 9dfdc6ff42ba045ec48056bb6d2072f2fcac2e9d #14483 Closes #14504
show more ...
|
#
9dfdc6ff |
| 10-Aug-2024 |
Viktor Szakats |
cmake: allow `pkg-config` in more envs Before this patch, `pkg-config` was used for `UNIX` builds only (with a few exceptions like wolfSSL, libssh, gsasl, libuv). This patch extends
cmake: allow `pkg-config` in more envs Before this patch, `pkg-config` was used for `UNIX` builds only (with a few exceptions like wolfSSL, libssh, gsasl, libuv). This patch extends `pkg-config` use to all envs except: `MSVC` without vcpkg. Meaning MSVC with vcpkg will now use it. Also mingw on Windows. Also apply the new condition to options where `pkg-config` was used unconditionally (= for all targets). These are: `-DCURL_USE_WOLFSSL=ON`, `-DCURL_USE_LIBSSH=ON`, `-DCURL_USE_GSASL=ON` and `-DCURL_USE_LIBUV=ON` This patch may still cause regressions for cross-builds (e.g. mingw cross-build from Unix) and potentially other cases. If that happens, we recommend using some of these methods to explicitly disable `pkg-config` when using CMake: - CMake option: `-DPKG_CONFIG_EXECUTABLE=` (or `-DPKG_CONFIG_EXECUTABLE=nonexistent` or similar) This is similar to the (curl-specific) `PKG_CONFIG` env for autotools. - export env: `PKG_CONFIG_LIBDIR=` (or `PKG_CONFIG_PATH`, `PKG_CONFIG_SYSROOT_DIR`, or the CMake-specific `PKG_CONFIG`) We may improve control over this in a future patch, also allowing opting in MSVC (without vcpkg). Ref: #14405 Ref: #14408 Ref: #14140 Closes #14483
show more ...
|
#
c2889a7b |
| 04-Aug-2024 |
Viktor Szakats |
cmake: more syntax tidy-up - quote string literals. In the hope it improves syntax-highlighting and readability. - use lowercase, underscore-prefixed local var names. As
cmake: more syntax tidy-up - quote string literals. In the hope it improves syntax-highlighting and readability. - use lowercase, underscore-prefixed local var names. As a hint for scope, to help readability. - prefer `pkg_search_module` (over `pkg_check_modules`). They are the same, but `pkg_search_module` stops searching at the first hit. - more `IN LISTS` in `foreach()`. - OtherTests.cmake: clear `CMAKE_EXTRA_INCLUDE_FILES` after use. - add `PROJECT_LABEL` for http/client and unit test targets. - sync `Find*` module comments and formatting. - drop a few local variables. - drop bogus `CARES_LIBRARIES` from comment. - unquote numeric literal. Follow-up to acbc6b703f6b0ee568d053f6f2565fbc107b5fd3 #14197 Closes #14388
show more ...
|
#
d68a1212 |
| 30-Jun-2024 |
Viktor Szakats |
cmake: improve wolfSSL detection - support detecting wolfSSL via pkg-config (like autotools.) - detect wolfSSL version. - detect `HAVE_WOLFSSL_DES_ECB_ENCRYPT`. (need
cmake: improve wolfSSL detection - support detecting wolfSSL via pkg-config (like autotools.) - detect wolfSSL version. - detect `HAVE_WOLFSSL_DES_ECB_ENCRYPT`. (needs e.g. `--enable-curl` when building wolfSSL) - detect `HAVE_WOLFSSL_FULL_BIO` and enable HTTPS-proxy feature. (needs e.g. `--enable-opensslall` when building wolfSSL) - fix to show `HTTPS-proxy` in cmake feature list. Ref: 55807e6c056f27846d70cec70ee6ac3f0e5b3bbe #9962 - fix to show `NTLM` in cmake feature list. - fix to show `smb` and `smbs` in cmake protocol list. - add wolfSSL CMake job to GHA (for macOS). - fix mqtt and wolfSSL symbol clash. ``` ./curl/lib/mqtt.c: In function 'mqtt_doing': ./curl/lib/mqtt.c:746:17: error: declaration of 'byte' shadows a global declaration [-Werror=shadow] 746 | unsigned char byte; | ^~~~ /opt/homebrew/Cellar/wolfssl/5.7.0_1/include/wolfssl/wolfcrypt/types.h:85:36: note: shadowed declaration is here 85 | typedef unsigned char byte; | ^~~~ ``` - format `FindWolfSSL.cmake` closer to neighbours. Closes #14064
show more ...
|
#
2bc1d775 |
| 02-Jan-2023 |
Daniel Stenberg |
copyright: update all copyright lines and remove year ranges - they are mostly pointless in all major jurisdictions - many big corporations and projects already don't use them - save
copyright: update all copyright lines and remove year ranges - they are mostly pointless in all major jurisdictions - many big corporations and projects already don't use them - saves us from pointless churn - git keeps history for us - the year range is kept in COPYING checksrc is updated to allow non-year using copyright statements Closes #10205
show more ...
|
#
ad9bc597 |
| 17-May-2022 |
max.mehl |
copyright: make repository REUSE compliant Add licensing and copyright information for all files in this repository. This either happens in the file itself as a comment header or in the
copyright: make repository REUSE compliant Add licensing and copyright information for all files in this repository. This either happens in the file itself as a comment header or in the file `.reuse/dep5`. This commit also adds a Github workflow to check pull requests and adapts copyright.pl to the changes. Closes #8869
show more ...
|
Revision tags: curl-7_76_1, curl-7_76_0, curl-7_75_0, curl-7_74_0 |
|
#
4d2f8006 |
| 04-Nov-2020 |
Daniel Stenberg |
curl.se: new home Closes #6172
|
Revision tags: curl-7_73_0, tiny-curl-7_72_0, curl-7_72_0, curl-7_71_1, curl-7_71_0, curl-7_70_0 |
|
#
9a8b3b3e |
| 23-Mar-2020 |
Daniel Stenberg |
copyright: fix out-of-date copyright ranges and missing headers Reported by the new script 'scripts/copyright.pl'. The script has a regex whitelist for the files that don't need copyrigh
copyright: fix out-of-date copyright ranges and missing headers Reported by the new script 'scripts/copyright.pl'. The script has a regex whitelist for the files that don't need copyright headers. Removed three (mostly usesless) README files from docs/ Closes #5141
show more ...
|
#
37a05418 |
| 12-Mar-2020 |
Daniel Stenberg |
cmake: add support for building with wolfSSL My working build cmdline: $ cmake -DCMAKE_PREFIX_PATH=$HOME/build-wolfssl -DCMAKE_USE_WOLFSSL=ON . Assisted-by: Brad King C
cmake: add support for building with wolfSSL My working build cmdline: $ cmake -DCMAKE_PREFIX_PATH=$HOME/build-wolfssl -DCMAKE_USE_WOLFSSL=ON . Assisted-by: Brad King Closes #5095
show more ...
|