Age | Commit message (Collapse) | Author |
|
My working build cmdline:
$ cmake -DCMAKE_PREFIX_PATH=$HOME/build-wolfssl -DCMAKE_USE_WOLFSSL=ON .
Assisted-by: Brad King
Closes #5095
|
|
- Show HTTPS-proxy in the features output for those backends that
support it: OpenSSL, GnuTLS and NSS.
Prior to this change HTTPS-proxy was missing from the cmake features
output even if curl was built with it. Only cmake output was affected.
Both the library and tool correctly reported the feature.
Bug: https://curl.haxx.se/mail/lib-2020-03/0008.html
Reported-by: David Lopes
Closes https://github.com/curl/curl/pull/5025
|
|
- remove check for unsupported old CMake versions
- do not link to c-ares library twice
- modernize custom Find modules
- FindLibSSH2:
- pass version to FPHSA to show it in the output
- use LIBSSH2_VERSION define to extract the version number in
one shot. This variable exists in the header for 10 years.
- remove unneeded code
- FindNGHTTP2.cmake:
- drop needless FPHSA argument
- mark found variables as advanced
- FindNSS.cmake:
- show version number
- FindCARES.cmake:
- drop default paths
- use FPHSA instead of checking things by hand
- remove needless explict variable dereference
- simplify count_true()
- allow all policies up to version 3.16 to be set to NEW
- do not rerun check for -Wstrict-aliasing=3 every time
In contrast to every other compiler flag this has a = in it, which CMake
can't have in a variable name.
- only read the interesting strings from curlver.h
Reviewed-by: Peter Wu
Closes https://github.com/curl/curl/pull/4975
|
|
Follow up to 6357a19f.
Reviewed-by: Daniel Stenberg
Closes #5004
|
|
Previously, it was only possible to set it to Windows Vista or XP by
setting the option `ENABLE_INET_PTON` to `ON` resp. `OFF`.
Use a new cache variable `CURL_TARGET_WINDOWS_VERSION` to be able to
explicitly set the target Windows version. `ENABLE_INET_PTON` is
ignored in this case.
Ref: https://github.com/curl/curl/pull/1639#issuecomment-313039352
Ref: https://github.com/curl/curl/pull/4607#issuecomment-557541456
Closes https://github.com/curl/curl/pull/4815
|
|
It doesn't make much sense to only check if the function can be linked
when it's not declared in any header and that is treated as an error.
With the correct target Windows version set, the function is declared
in ws2tcpip.h and the comment above the modified block is invalid.
Also, move the definition of `_WIN32_WINNT` up to before all symbol
availability checks so that we don't have to care which ones must be
done after it.
Tested with Visual Studio 2019 and current MinGW-w64.
Closes https://github.com/curl/curl/pull/4808
|
|
This enables Link Time Optimization. LTO is a proven technique for
optimizing across compilation units.
Closes #4799
|
|
- Define USE_WIN32_CRYPTO by default. This enables SMB.
- Show whether SMB is enabled in the "Enabled features" output.
- Fix mingw compiler warning for call to CryptHashData by casting away
const param. mingw CryptHashData prototype is wrong.
Closes https://github.com/curl/curl/pull/4717
|
|
Options are cross-checked with configure.ac and acinclude.m4.
Tested on Arch Linux, untested on other platforms like Windows or macOS.
Closes #4663
Reviewed-by: Kamil Dudka
|
|
Closes #4597
|
|
Closes https://github.com/curl/curl/pull/4460
|
|
Closes #4279
|
|
This is done by making sure each individual transfer is first added to a
linked list as then they can be performed serially, or at will, in
parallel.
Closes #3804
|
|
- Find package "Brotli" instead of "BROTLI" since the former is the
casing used for CMake/FindBrotli.cmake, and otherwise find_package
may fail on a case-sensitive file system.
Fixes https://github.com/curl/curl/issues/4117
|
|
This reverts commit 36738caeb78603ce24e3ea089a167b8c216fb938.
Apparently several of the appveyor windows builds broke.
|
|
Reviewed-by: Jakub Zakrzewski
Closes #3770
|
|
- adds the check to cmake
- fixes the configure check to work for cross-compiled windows builds
Closes #3917
|
|
|
|
Closes https://github.com/curl/curl/pull/3769
|
|
This fixes GSSAPI builds with the libraries in a non-standard location.
The testing for recv() were failing because it failed to link
the Kerberos libraries, which are not needed for this or subsequent
tests.
fixes #3743
closes #3744
|
|
- Remove nneeded include_regular_expression.
It was setting what is already a default.
- Remove duplicated include.
- Don't check for pre-3.0.0 CMake version.
We already require at least 3.0.0, so it's just clutter.
Ref: #3744
|
|
This groups all SSL backends into the feature "SSL" and sets the
SSL_BACKENDS analogue to configure.ac
Closes https://github.com/curl/curl/pull/3736
|
|
In case of an empty list, SORTing leads to the cmake error "list
sub-command SORT requires list to be present."
Closes https://github.com/curl/curl/pull/3736
|
|
|
|
|
|
Reviewed-by: Sergei Nikulov
closes #3196
|
|
- fix syntax error in FindGSS.cmake
- correct krb5 include directory. FindGSS exports
"GSS_INCLUDE_DIR" variable.
Closes https://github.com/curl/curl/pull/3316
|
|
As has been outlined in the DEPRECATE.md document, the axTLS code has
been disabled for 6 months and is hereby removed.
Use a better supported TLS library!
Assisted-by: Daniel Gustafsson
Closes #3194
|
|
Closes #3191
|
|
Closes #3123
|
|
|
|
Remove variables:
* HAVE_SOCKLEN_T
* CURL_SIZEOF_CURL_SOCKLEN_T
* CURL_TYPEOF_CURL_SOCKLEN_T
Closes #3166
|
|
Accidentally aded in commit 1bb86057ff07083deeb0b00f8ad35879ec4d03ea.
Reported-by: Viktor Szakats
Ref: https://github.com/curl/curl/pull/3120#issuecomment-428673136
|
|
As done in the autotools build. This is required for MinGW, which
supports only %I64 for printing 64-bit values, but warns about it.
Closes https://github.com/curl/curl/pull/3120
|
|
Added configuration checks for HAVE_BUILTIN_AVAILABLE and HAVE_CLOCK_GETTIME_MONOTONIC.
Closes #3097
|
|
Use 'GNUInstallDirs' standard module to set destinations of installed
files.
Use uppercase "CURL" names instead of lowercase "curl" to match standard
'FindCURL.cmake' CMake module:
* https://cmake.org/cmake/help/latest/module/FindCURL.html
Meaning:
* Install 'CURLConfig.cmake' instead of 'curl-config.cmake'
* User should call 'find_package(CURL)' instead of 'find_package(curl)'
Use 'configure_package_config_file' function to generate
'CURLConfig.cmake' file. This will make 'curl-config.cmake.in' template
file smaller and handle components better. E.g. current configuration
report no error if user specified unknown components (note: new
configuration expects no components, report error if user will try to
specify any).
Closes https://github.com/curl/curl/pull/2849
|
|
Changes in commit 7867aaa9a0 (cmake: link curl to the OpenSSL targets
instead of lib absolute paths, 2018-07-17) and commit f826b4ce98 (cmake:
bumped minimum version to 3.4, 2018-07-19) required CMake 3.4 to fix
issue #2746. This broke support for users on older versions of CMake
even if they just want to build curl and do not care whether transitive
dependencies work.
Backport the logic to work with CMake 3.0 again by implementing the
fix only when the version of CMake is at least 3.4.
|
|
Use standard CMake variable BUILD_SHARED_LIBS instead of introducing
custom option CURL_STATICLIB.
Use '-DBUILD_SHARED_LIBS=%SHARED%' in appveyor.yml.
Reviewed-by: Sergei Nikulov
Closes #2755
|
|
Closes #2753
|
|
Reviewed-by: Jakub Zakrzewski
Reviewed-by: Sergei Nikulov
Closes #2753
|
|
Closes #2727
Reviewed-by: Sergei Nikulov
|
|
Reviewed-by: Jakub Zakrzewski
Closes #2715
|
|
Variable 'output_var' is not used and can be removed.
Function 'collect_true' renamed to 'count_true'.
|
|
This will make possible to select the SSL backend (using
curl_global_sslset()) even when the libcurl is built using CMake
Closes #2665
|
|
Previously it was checked for in configure/cmake, but that would then
leave other build systems built without engine support.
While engine support probably existed prior to 1.0.1, I decided to play
safe. If someone experience a problem with this, we can widen the
version check.
Fixes #2641
Closes #2644
|
|
* enable it in `src/Makefile.m32`
* enable it in `winbuild/MakefileBuild.vc` if a custom manifest is
_not_ enabled via the existing `EMBED_MANIFEST` option
* enable it for all Windows CMake builds (also disable the built-in
minimal manifest, added by CMake by default.)
For other build systems, add the `-DCURL_EMBED_MANIFEST` option to
the list of RC (Resource Compiler) flags to enable the manifest
included in `src/curl.rc`. This may require to disable whatever
automatic or other means in which way another manifest is added to
`curl.exe`.
Notice that Borland C doesn't support this method due to a
long-pending resource compiler bug. Watcom C may also not handle
it correctly when the `-zm` `wrc` option is used (this option may
be unnecessary though) and regardless of options in certain earlier
revisions of the 2.0 beta version.
Closes https://github.com/curl/curl/pull/1221
Fixes https://github.com/curl/curl/issues/2591
|
|
The autotools-based build system does it, so we do it also in CMake.
Bug: #2609
Signed-off-by: Bernhard Walle <bernhard@bwalle.de>
|
|
compiling
|
|
using -DCMAKE_DEBUG_POSTFIX explicitly
fixes #2121, obsoletes #2384
|
|
ARM targets need advapi32 explicitly.
Closes #2363
|