Attached are two ports, net/ngtcp2 and www/nghttp2 which in combination
with a couple of configure flags add QUIC support to curl. This is all
work by jsing, somewhat cleaned up by me.

The cunit handling in the two new ports is taken from nghttp2, which may
or may not be needed anymore.

It is hopefully acceptable to add two small dependencies to curl, but I
assume we need to do some testing first to make sure we don't
accidentally cripple an arch by breaking curl.

I have tested this on amd64 and arm64.

Index: Makefile
===================================================================
RCS file: /cvs/ports/net/curl/Makefile,v
retrieving revision 1.175
diff -u -p -r1.175 Makefile
--- Makefile    7 Nov 2022 14:37:00 -0000       1.175
+++ Makefile    8 Nov 2022 16:06:14 -0000
@@ -1,7 +1,7 @@
 COMMENT=       transfer files with FTP, HTTP, HTTPS, etc.
 
 DISTNAME=      curl-7.86.0
-REVISION=      0
+REVISION=      1
 SHARED_LIBS=   curl                 26.17    # 12.0
 CATEGORIES=    net
 HOMEPAGE=      https://curl.se/
@@ -14,14 +14,16 @@ PERMIT_PACKAGE=     Yes
 MASTER_SITES=  https://curl.se/download/
 EXTRACT_SUFX=  .tar.xz
 
-LIB_DEPENDS=   www/nghttp2
-WANTLIB=       c crypto pthread nghttp2 ssl z
+LIB_DEPENDS=   www/nghttp2 www/nghttp3 net/ngtcp2
+WANTLIB=       c crypto pthread nghttp2 nghttp3 ngtcp2 ssl z
 
 AUTOCONF_VERSION=2.71
 CONFIGURE_STYLE=autoconf
 # Beware of circular dependency curl -> brotli -> cmake -> curl
 CONFIGURE_ARGS=        --with-openssl \
                --with-ca-bundle=/etc/ssl/cert.pem \
+               --with-nghttp3 \
+               --with-ngtcp2 \
                --without-brotli \
                --without-hyper \
                --without-libgsasl \

Reply via email to