Diff curl-8.18.0 with a curl-9999

/usr/portage/net-misc/curl/curl-9999.ebuild 2026-03-17 11:46:09.029303303 +0300
22 22
		S="${WORKDIR}/${P//_/-}"
23 23
	else
24 24
		CURL_URI="https://curl.se/download/"
25
		KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris"
25
		KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris"
26 26
	fi
27 27
	SRC_URI="
28 28
		${CURL_URI}${P//_/-}.tar.xz
......
33 33
LICENSE="BSD curl ISC test? ( BSD-4 )"
34 34
SLOT="0"
35 35
IUSE="+adns +alt-svc brotli debug ech +ftp gnutls gopher +hsts +http2 +http3 +httpsrr idn +imap kerberos ldap"
36
IUSE+=" mbedtls +openssl +pop3 +psl +quic rtmp rustls samba sasl-scram +smtp ssh ssl static-libs test"
36
IUSE+=" mbedtls +openssl +pop3 +psl +quic rustls samba sasl-scram +smtp ssh ssl static-libs test"
37 37
IUSE+=" telnet +tftp +websockets zstd"
38 38
# These select the default tls implementation / which quic impl to use
39
IUSE+=" +curl_quic_openssl curl_quic_ngtcp2 curl_ssl_gnutls curl_ssl_mbedtls +curl_ssl_openssl curl_ssl_rustls"
39
IUSE+=" curl_ssl_gnutls curl_ssl_mbedtls +curl_ssl_openssl curl_ssl_rustls"
40 40
RESTRICT="!test? ( test )"
41 41

  
42 42
# HTTPS RR is technically usable with the threaded resolver, but it still uses c-ares to
......
57 57
	httpsrr? ( adns )
58 58
	quic? (
59 59
		^^ (
60
			curl_quic_openssl
61
			curl_quic_ngtcp2
60
			openssl
61
			gnutls
62 62
		)
63
		!gnutls
64
		!mbedtls
65
		!rustls
63 66
		http3
64 67
		ssl
65 68
	)
......
71 74
			curl_ssl_rustls
72 75
		)
73 76
	)
74
	curl_quic_openssl? (
75
		curl_ssl_openssl
76
		!gnutls
77
		!mbedtls
78
		!rustls
79
	)
80
	curl_quic_ngtcp2? (
81
		curl_ssl_gnutls
82
		!mbedtls
83
		!openssl
84
		!rustls
85
	)
86 77
	curl_ssl_gnutls? ( gnutls )
87 78
	curl_ssl_mbedtls? ( mbedtls )
88 79
	curl_ssl_openssl? ( openssl )
......
98 89
# However 'supported' vs 'works' are two entirely different things; be sane but
99 90
# don't be afraid to require a later version.
100 91
# ngtcp2 = https://bugs.gentoo.org/912029 - can only build with one tls backend at a time.
101
# TODO: OpenSSL-QUIC support is going to be removed in 2026; depend on ngtcp2[{gnutls,openssl}] before that point.
102
# - https://github.com/curl/curl/pull/18820 (Deprecate OpenSSL QUIC support)
103
# - https://github.com/curl/curl/issues/18336 (curl w/ OpenSSL QUIC fails to fetch Google.com)
104 92
RDEPEND="
105 93
	>=virtual/zlib-1.2.5:=[${MULTILIB_USEDEP}]
106 94
	adns? ( >=net-dns/c-ares-1.16.0:=[${MULTILIB_USEDEP}] )
......
112 100
	ldap? ( >=net-nds/openldap-2.0.0:=[static-libs?,${MULTILIB_USEDEP}] )
113 101
	psl? ( net-libs/libpsl[${MULTILIB_USEDEP}] )
114 102
	quic? (
115
		curl_quic_openssl? ( >=dev-libs/openssl-3.3.0:=[quic,${MULTILIB_USEDEP}] )
116
		curl_quic_ngtcp2? ( >=net-libs/ngtcp2-1.2.0[gnutls,ssl,-openssl,${MULTILIB_USEDEP}] )
103
		gnutls? ( >=net-libs/ngtcp2-1.20.0-r1[gnutls,ssl,${MULTILIB_USEDEP}] )
104
		openssl? ( >=net-libs/ngtcp2-1.20.0-r1[openssl,ssl,${MULTILIB_USEDEP}] )
117 105
	)
118
	rtmp? ( media-video/rtmpdump[${MULTILIB_USEDEP}] )
119 106
	ssh? ( >=net-libs/libssh2-1.2.8[${MULTILIB_USEDEP}] )
120 107
	sasl-scram? ( >=net-misc/gsasl-2.2.0[static-libs?,${MULTILIB_USEDEP}] )
121 108
	ssl? (
......
178 165
PATCHES=(
179 166
	"${FILESDIR}/${PN}-prefix-6.patch"
180 167
	"${FILESDIR}/${PN}-respect-cflags-3.patch"
181
	"${FILESDIR}/${P}-restore-heimdal.patch"
182 168
)
183 169

  
184 170
src_prepare() {
......
249 235
	if use ssl; then
250 236
		local -a tls_backend_opts
251 237
		readarray -t tls_backend_opts < <(_get_curl_tls_configure_opts)
252
		myconf+=("${tls_backend_opts[@]}")
253
		if use quic; then
254
			myconf+=(
255
				$(use_with curl_quic_ngtcp2 ngtcp2)
256
				$(use_with curl_quic_openssl openssl-quic)
257
			)
258
		else
259
			# Without a REQUIRED_USE to ensure that QUIC was requested when at least one default backend is
260
			# enabled we need ensure that we don't try to build QUIC support
261
			myconf+=( --without-ngtcp2 --without-openssl-quic )
262
		fi
238
		myconf+=(
239
			"${tls_backend_opts[@]}"
240
			$(use_with quic ngtcp2)
241
		)
263 242
	else
264 243
		myconf+=( --without-ssl )
265 244
		einfo "SSL disabled"
......
281 260
		$(use_enable pop3)
282 261
		$(use_enable samba smb)
283 262
		$(use_with ssh libssh2) # enables scp/sftp
284
		$(use_with rtmp librtmp)
285 263
		--enable-rtsp
286 264
		$(use_enable smtp)
287 265
		$(use_enable telnet)
Thank you!