curl/CMake
Peter Wu 5bfc874a35
CMake: add HTTP/3 support (ngtcp2+nghttp3, quiche)
Add three new CMake Find modules (using the curl license, but I grant
others the right to apply the CMake BSD license instead).

This CMake config is simpler than the autotools one because it assumes
ngtcp2 and nghttp3 to be used together. Another difference is that this
CMake config checks whether QUIC is actually supported by the TLS
library (patched OpenSSL or boringssl) since this can be a common
configuration mistake that could result in build errors later.

Unlike autotools, CMake does not warn you that the features are
experimental. The user is supposed to already know that and read the
documentation. It requires a very special build environment anyway.

Tested with ngtcp2+OpenSSL+nghttp3 and quiche+boringssl, both built from
current git master. Use `LD_DEBUG=files src/curl |& grep need` to figure
out which features (libldap-2.4, libssh2) to disable due to conflicts
with boringssl.

Closes #5359
2020-05-10 23:36:41 +02:00
..
Platforms copyright: fix out-of-date copyright ranges and missing headers 2020-03-24 15:05:59 +01:00
cmake_uninstall.cmake.in copyright: fix out-of-date copyright ranges and missing headers 2020-03-24 15:05:59 +01:00
CMakeConfigurableFile.in copyright: fix out-of-date copyright ranges and missing headers 2020-03-24 15:05:59 +01:00
curl-config.cmake.in copyright: fix out-of-date copyright ranges and missing headers 2020-03-24 15:05:59 +01:00
CurlSymbolHiding.cmake copyright: fix out-of-date copyright ranges and missing headers 2020-03-24 15:05:59 +01:00
CurlTests.c copyrights: update all copyright notices to 2019 on files changed this year 2019-11-02 23:15:56 +01:00
FindBearSSL.cmake copyright: fix out-of-date copyright ranges and missing headers 2020-03-24 15:05:59 +01:00
FindBrotli.cmake copyright: fix out-of-date copyright ranges and missing headers 2020-03-24 15:05:59 +01:00
FindCARES.cmake copyright: fix out-of-date copyright ranges and missing headers 2020-03-24 15:05:59 +01:00
FindGSS.cmake copyright: fix out-of-date copyright ranges and missing headers 2020-03-24 15:05:59 +01:00
FindLibSSH2.cmake copyright: fix out-of-date copyright ranges and missing headers 2020-03-24 15:05:59 +01:00
FindMbedTLS.cmake copyright: fix out-of-date copyright ranges and missing headers 2020-03-24 15:05:59 +01:00
FindNGHTTP2.cmake copyright: fix out-of-date copyright ranges and missing headers 2020-03-24 15:05:59 +01:00
FindNGHTTP3.cmake CMake: add HTTP/3 support (ngtcp2+nghttp3, quiche) 2020-05-10 23:36:41 +02:00
FindNGTCP2.cmake CMake: add HTTP/3 support (ngtcp2+nghttp3, quiche) 2020-05-10 23:36:41 +02:00
FindNSS.cmake copyright: fix out-of-date copyright ranges and missing headers 2020-03-24 15:05:59 +01:00
FindQUICHE.cmake CMake: add HTTP/3 support (ngtcp2+nghttp3, quiche) 2020-05-10 23:36:41 +02:00
FindWolfSSL.cmake copyright: fix out-of-date copyright ranges and missing headers 2020-03-24 15:05:59 +01:00
Macros.cmake copyright: fix out-of-date copyright ranges and missing headers 2020-03-24 15:05:59 +01:00
OtherTests.cmake cmake: Avoid MSVC C4273 warnings in send/recv checks 2020-04-14 23:07:18 +02:00
Utilities.cmake copyright: fix out-of-date copyright ranges and missing headers 2020-03-24 15:05:59 +01:00