From: Craig Andrews Date: Fri, 11 Oct 2019 16:19:35 +0000 (-0400) Subject: net-misc/curl: HTTP/3 support X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=f220bfd203fa1fe7a14d39880c13dd5292afc94b;p=gentoo.git net-misc/curl: HTTP/3 support Closes: https://bugs.gentoo.org/694308 Closes: https://github.com/gentoo/gentoo/pull/12920 Package-Manager: Portage-2.3.76, Repoman-2.3.17 Signed-off-by: Craig Andrews --- diff --git a/net-misc/curl/curl-7.66.0.ebuild b/net-misc/curl/curl-7.66.0.ebuild index 86708b83a0ca..d8ea524b2de3 100644 --- a/net-misc/curl/curl-7.66.0.ebuild +++ b/net-misc/curl/curl-7.66.0.ebuild @@ -14,6 +14,7 @@ SLOT="0" KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" IUSE="adns alt-svc brotli http2 idn ipv6 kerberos ldap metalink +progress-meter rtmp samba ssh ssl static-libs test threads" IUSE+=" curl_ssl_gnutls curl_ssl_libressl curl_ssl_mbedtls curl_ssl_nss +curl_ssl_openssl curl_ssl_winssl" +IUSE+=" nghttp3 quiche" IUSE+=" elibc_Winnt" #lead to lots of false negatives, bug #285669 @@ -43,6 +44,11 @@ RDEPEND="ldap? ( net-nds/openldap[${MULTILIB_USEDEP}] ) ) ) http2? ( net-libs/nghttp2[${MULTILIB_USEDEP}] ) + nghttp3? ( + net-libs/nghttp3[${MULTILIB_USEDEP}] + net-libs/ngtcp2[ssl,${MULTILIB_USEDEP}] + ) + quiche? ( net-libs/quiche[${MULTILIB_USEDEP}] ) idn? ( net-dns/libidn2:0=[static-libs?,${MULTILIB_USEDEP}] ) adns? ( net-dns/c-ares:0[${MULTILIB_USEDEP}] ) kerberos? ( >=virtual/krb5-0-r1[${MULTILIB_USEDEP}] ) @@ -201,9 +207,9 @@ multilib_src_configure() { $(use_with kerberos gssapi "${EPREFIX}"/usr) \ $(use_with metalink libmetalink) \ $(use_with http2 nghttp2) \ - --without-nghttp3 \ - --without-ngtcp2 \ - --without-quiche \ + $(use_with nghttp3) \ + $(use_with nghttp3 ngtcp2) \ + $(use_with quiche) \ $(use_with rtmp librtmp) \ $(use_with brotli) \ --without-schannel \ @@ -230,6 +236,14 @@ multilib_src_configure() { libs+=( "-lnghttp2" ) priv+=( "libnghttp2" ) fi + if use quiche; then + libs+=( "-lquiche" ) + priv+=( "libquiche" ) + fi + if use nghttp3; then + libs+=( "-lnghttp3" "-lngtcp2" ) + priv+=( "libnghttp3" "-libtcp2" ) + fi if use ssl && use curl_ssl_openssl; then libs+=( "-lssl" "-lcrypto" ) priv+=( "openssl" ) diff --git a/net-misc/curl/metadata.xml b/net-misc/curl/metadata.xml index a4deda9a7a5f..b62cf6ee3c7c 100644 --- a/net-misc/curl/metadata.xml +++ b/net-misc/curl/metadata.xml @@ -8,8 +8,10 @@ Enable alt-svc support Enable brotli compression support - Enabled HTTP/2.0 support - Enabled SSH urls in curl using libssh2 + Enable HTTP/2.0 support + Enable HTTP/3.0 support using net-libs/nghttp3 and net-libs/ngtcp2 + Enable HTTP/3.0 support using net-libs/quiche + Enable SSH urls in curl using libssh2 Enable metalink support Enable the progress meter Enable crypto engine support (via openssl if USE='-gnutls -nss') diff --git a/profiles/arch/amd64/package.use.mask b/profiles/arch/amd64/package.use.mask index 0e8f34e6b6b8..790fbdc2e98c 100644 --- a/profiles/arch/amd64/package.use.mask +++ b/profiles/arch/amd64/package.use.mask @@ -17,6 +17,10 @@ #--- END OF EXAMPLES --- +# Craig Andrews (2019-10-08) +# net-misc/quiche is available on this arch +net-misc/curl -quiche + # Luke Dashjr (2019-09-21) # iasl is stable on amd64 sys-firmware/seabios -debug diff --git a/profiles/arch/base/package.use.mask b/profiles/arch/base/package.use.mask index 6cb002ba7d38..86b449ac668f 100644 --- a/profiles/arch/base/package.use.mask +++ b/profiles/arch/base/package.use.mask @@ -1,6 +1,16 @@ # Copyright 1999-2019 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# Craig Andrews (2019-10-08) +# net-libs/quiche is not available on all arches +# Track addition arch keywording of quiche at: +# https://bugs.gentoo.org/694320 +net-misc/curl quiche + +# Craig Andrews (2019-10-08) +# net-libs/nghttp3 net-libs/ngtcp2[ssl] are not available on all arches +net-misc/curl nghttp3 + # Nick Sarnie (2019-10-14) # No longer updated or supported by the Wine project # wine-d3d9 superceeded by nine-standalone diff --git a/profiles/base/package.use.mask b/profiles/base/package.use.mask index 040b6ea8fd55..11e10e8cf566 100644 --- a/profiles/base/package.use.mask +++ b/profiles/base/package.use.mask @@ -34,6 +34,7 @@ app-i18n/xcin unicode # OpenSSL (as of version 1.1.1) doesn't have APIs for QUIC support # see https://github.com/openssl/openssl/pull/8797 net-libs/ngtcp2 ssl +net-libs/curl nghttp3 # Michał Górny (2019-09-08) # LLVM 5 is being removed.