Gentoo Archives: gentoo-commits

From: "Michał Górny" <mgorny@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: net-misc/curl/
Date: Fri, 29 Jan 2021 23:24:11
Message-Id: 1611962643.0e357e57cc8971a965204eb97eef59518958c8d3.mgorny@gentoo
1 commit: 0e357e57cc8971a965204eb97eef59518958c8d3
2 Author: Michał Górny <mgorny <AT> gentoo <DOT> org>
3 AuthorDate: Fri Jan 29 23:22:27 2021 +0000
4 Commit: Michał Górny <mgorny <AT> gentoo <DOT> org>
5 CommitDate: Fri Jan 29 23:24:03 2021 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0e357e57
7
8 net-misc/curl: [QA] Revert "remove libressl, fix bugs #744934..."
9
10 This does not fix the problem, this forcibly exposes all Gentoo users
11 to it in the future.
12
13 Reverts: 8b6375b9b783eb0d412f78bb45a50675591729fe
14 Bug: https://bugs.gentoo.org/744934
15 Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>
16
17 net-misc/curl/curl-7.74.0-r3.ebuild | 285 ------------------------------------
18 1 file changed, 285 deletions(-)
19
20 diff --git a/net-misc/curl/curl-7.74.0-r3.ebuild b/net-misc/curl/curl-7.74.0-r3.ebuild
21 deleted file mode 100644
22 index 6310752c0aa..00000000000
23 --- a/net-misc/curl/curl-7.74.0-r3.ebuild
24 +++ /dev/null
25 @@ -1,285 +0,0 @@
26 -# Copyright 1999-2021 Gentoo Authors
27 -# Distributed under the terms of the GNU General Public License v2
28 -
29 -EAPI="7"
30 -
31 -inherit autotools eutils prefix multilib-minimal
32 -
33 -DESCRIPTION="A Client that groks URLs"
34 -HOMEPAGE="https://curl.haxx.se/"
35 -SRC_URI="https://curl.haxx.se/download/${P}.tar.xz"
36 -
37 -LICENSE="curl"
38 -SLOT="0"
39 -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
40 -IUSE="adns alt-svc brotli +ftp gnutls gopher hsts +http2 idn +imap ipv6 kerberos ldap mbedtls metalink nss +openssl +pop3 +progress-meter rtmp samba +smtp ssh ssl static-libs test telnet +tftp threads winssl zstd"
41 -IUSE+=" curl_ssl_gnutls curl_ssl_mbedtls curl_ssl_nss +curl_ssl_openssl curl_ssl_winssl"
42 -IUSE+=" nghttp3 quiche"
43 -IUSE+=" elibc_Winnt"
44 -
45 -#lead to lots of false negatives, bug #285669
46 -RESTRICT="!test? ( test )"
47 -
48 -RDEPEND="ldap? ( net-nds/openldap[${MULTILIB_USEDEP}] )
49 - brotli? ( app-arch/brotli:=[${MULTILIB_USEDEP}] )
50 - ssl? (
51 - gnutls? (
52 - net-libs/gnutls:0=[static-libs?,${MULTILIB_USEDEP}]
53 - dev-libs/nettle:0=[${MULTILIB_USEDEP}]
54 - app-misc/ca-certificates
55 - )
56 - mbedtls? (
57 - net-libs/mbedtls:0=[${MULTILIB_USEDEP}]
58 - app-misc/ca-certificates
59 - )
60 - openssl? (
61 - dev-libs/openssl:0=[sslv3,static-libs?,${MULTILIB_USEDEP}]
62 - )
63 - nss? (
64 - dev-libs/nss:0[${MULTILIB_USEDEP}]
65 - app-misc/ca-certificates
66 - )
67 - )
68 - http2? ( net-libs/nghttp2[${MULTILIB_USEDEP}] )
69 - nghttp3? (
70 - net-libs/nghttp3[${MULTILIB_USEDEP}]
71 - net-libs/ngtcp2[ssl,${MULTILIB_USEDEP}]
72 - )
73 - quiche? ( >=net-libs/quiche-0.3.0[${MULTILIB_USEDEP}] )
74 - idn? ( net-dns/libidn2:0=[static-libs?,${MULTILIB_USEDEP}] )
75 - adns? ( net-dns/c-ares:0[${MULTILIB_USEDEP}] )
76 - kerberos? ( >=virtual/krb5-0-r1[${MULTILIB_USEDEP}] )
77 - metalink? ( >=media-libs/libmetalink-0.1.1[${MULTILIB_USEDEP}] )
78 - rtmp? ( media-video/rtmpdump[${MULTILIB_USEDEP}] )
79 - ssh? ( net-libs/libssh2[${MULTILIB_USEDEP}] )
80 - sys-libs/zlib[${MULTILIB_USEDEP}]
81 - zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] )"
82 -
83 -# Do we need to enforce the same ssl backend for curl and rtmpdump? Bug #423303
84 -# rtmp? (
85 -# media-video/rtmpdump
86 -# curl_ssl_gnutls? ( media-video/rtmpdump[gnutls] )
87 -# curl_ssl_openssl? ( media-video/rtmpdump[-gnutls,ssl] )
88 -# )
89 -
90 -# ssl providers to be added:
91 -# fbopenssl $(use_with spnego)
92 -
93 -DEPEND="${RDEPEND}"
94 -BDEPEND="virtual/pkgconfig
95 - test? (
96 - sys-apps/diffutils
97 - dev-lang/perl
98 - )"
99 -
100 -# c-ares must be disabled for threads
101 -# only one default ssl provider can be enabled
102 -REQUIRED_USE="
103 - winssl? ( elibc_Winnt )
104 - threads? ( !adns )
105 - ssl? (
106 - ^^ (
107 - curl_ssl_gnutls
108 - curl_ssl_mbedtls
109 - curl_ssl_nss
110 - curl_ssl_openssl
111 - curl_ssl_winssl
112 - )
113 - )"
114 -
115 -DOCS=( CHANGES README docs/FEATURES.md docs/INTERNALS.md \
116 - docs/FAQ docs/BUGS.md docs/CONTRIBUTE.md )
117 -
118 -MULTILIB_WRAPPED_HEADERS=(
119 - /usr/include/curl/curlbuild.h
120 -)
121 -
122 -MULTILIB_CHOST_TOOLS=(
123 - /usr/bin/curl-config
124 -)
125 -
126 -src_prepare() {
127 - eapply "${FILESDIR}"/${PN}-7.30.0-prefix.patch
128 - eapply "${FILESDIR}"/${PN}-respect-cflags-3.patch
129 - eapply "${FILESDIR}"/${PN}-fix-gnutls-nettle.patch
130 -
131 - sed -i '/LD_LIBRARY_PATH=/d' configure.ac || die #382241
132 - sed -i '/CURL_MAC_CFLAGS/d' configure.ac || die #637252
133 -
134 - eapply_user
135 - eprefixify curl-config.in
136 - eautoreconf
137 -}
138 -
139 -multilib_src_configure() {
140 - # We make use of the fact that later flags override earlier ones
141 - # So start with all ssl providers off until proven otherwise
142 - # TODO: in the future, we may want to add wolfssl (https://www.wolfssl.com/)
143 - local myconf=()
144 -
145 - myconf+=( --without-gnutls --without-mbedtls --without-nss --without-polarssl --without-ssl --without-winssl )
146 - myconf+=( --without-ca-fallback --with-ca-bundle="${EPREFIX}"/etc/ssl/certs/ca-certificates.crt )
147 - #myconf+=( --without-default-ssl-backend )
148 - if use ssl ; then
149 - if use gnutls || use curl_ssl_gnutls; then
150 - einfo "SSL provided by gnutls"
151 - myconf+=( --with-gnutls --with-nettle )
152 - fi
153 - if use mbedtls || use curl_ssl_mbedtls; then
154 - einfo "SSL provided by mbedtls"
155 - myconf+=( --with-mbedtls )
156 - fi
157 - if use nss || use curl_ssl_nss; then
158 - einfo "SSL provided by nss"
159 - myconf+=( --with-nss )
160 - fi
161 - if use openssl || use curl_ssl_openssl; then
162 - einfo "SSL provided by openssl"
163 - myconf+=( --with-ssl --with-ca-path="${EPREFIX}"/etc/ssl/certs )
164 - fi
165 - if use winssl || use curl_ssl_winssl; then
166 - einfo "SSL provided by Windows"
167 - myconf+=( --with-winssl )
168 - fi
169 -
170 - if use curl_ssl_gnutls; then
171 - einfo "Default SSL provided by gnutls"
172 - myconf+=( --with-default-ssl-backend=gnutls )
173 - elif use curl_ssl_mbedtls; then
174 - einfo "Default SSL provided by mbedtls"
175 - myconf+=( --with-default-ssl-backend=mbedtls )
176 - elif use curl_ssl_nss; then
177 - einfo "Default SSL provided by nss"
178 - myconf+=( --with-default-ssl-backend=nss )
179 - elif use curl_ssl_openssl; then
180 - einfo "Default SSL provided by openssl"
181 - myconf+=( --with-default-ssl-backend=openssl )
182 - elif use curl_ssl_winssl; then
183 - einfo "Default SSL provided by Windows"
184 - myconf+=( --with-default-ssl-backend=winssl )
185 - else
186 - eerror "We can't be here because of REQUIRED_USE."
187 - fi
188 -
189 - else
190 - einfo "SSL disabled"
191 - fi
192 -
193 - # These configuration options are organized alphabetically
194 - # within each category. This should make it easier if we
195 - # ever decide to make any of them contingent on USE flags:
196 - # 1) protocols first. To see them all do
197 - # 'grep SUPPORT_PROTOCOLS configure.ac'
198 - # 2) --enable/disable options second.
199 - # 'grep -- --enable configure | grep Check | awk '{ print $4 }' | sort
200 - # 3) --with/without options third.
201 - # grep -- --with configure | grep Check | awk '{ print $4 }' | sort
202 -
203 - ECONF_SOURCE="${S}" \
204 - econf \
205 - $(use_enable alt-svc) \
206 - --enable-crypto-auth \
207 - --enable-dict \
208 - --disable-ech \
209 - --enable-file \
210 - $(use_enable ftp) \
211 - $(use_enable gopher) \
212 - $(use_enable hsts) \
213 - --enable-http \
214 - $(use_enable imap) \
215 - $(use_enable ldap) \
216 - $(use_enable ldap ldaps) \
217 - --disable-ntlm-wb \
218 - $(use_enable pop3) \
219 - --enable-rt \
220 - --enable-rtsp \
221 - $(use_enable samba smb) \
222 - $(use_with ssh libssh2) \
223 - $(use_enable smtp) \
224 - $(use_enable telnet) \
225 - $(use_enable tftp) \
226 - --enable-tls-srp \
227 - $(use_enable adns ares) \
228 - --enable-cookies \
229 - --enable-dateparse \
230 - --enable-dnsshuffle \
231 - --enable-doh \
232 - --enable-hidden-symbols \
233 - --enable-http-auth \
234 - $(use_enable ipv6) \
235 - --enable-largefile \
236 - --enable-manual \
237 - --enable-mime \
238 - --enable-netrc \
239 - $(use_enable progress-meter) \
240 - --enable-proxy \
241 - --disable-sspi \
242 - $(use_enable static-libs static) \
243 - $(use_enable threads threaded-resolver) \
244 - $(use_enable threads pthreads) \
245 - --disable-versioned-symbols \
246 - --without-amissl \
247 - --without-bearssl \
248 - --without-cyassl \
249 - --without-darwinssl \
250 - --without-fish-functions-dir \
251 - $(use_with idn libidn2) \
252 - $(use_with kerberos gssapi "${EPREFIX}"/usr) \
253 - $(use_with metalink libmetalink) \
254 - $(use_with http2 nghttp2) \
255 - --without-libpsl \
256 - $(use_with nghttp3) \
257 - $(use_with nghttp3 ngtcp2) \
258 - $(use_with quiche) \
259 - $(use_with rtmp librtmp) \
260 - $(use_with brotli) \
261 - --without-schannel \
262 - --without-secure-transport \
263 - --without-spnego \
264 - --without-winidn \
265 - --without-wolfssl \
266 - --with-zlib \
267 - $(use_with zstd) \
268 - "${myconf[@]}"
269 -
270 - if ! multilib_is_native_abi; then
271 - # avoid building the client
272 - sed -i -e '/SUBDIRS/s:src::' Makefile || die
273 - sed -i -e '/SUBDIRS/s:scripts::' Makefile || die
274 - fi
275 -
276 - # Fix up the pkg-config file to be more robust.
277 - # https://github.com/curl/curl/issues/864
278 - local priv=() libs=()
279 - # We always enable zlib.
280 - libs+=( "-lz" )
281 - priv+=( "zlib" )
282 - if use http2; then
283 - libs+=( "-lnghttp2" )
284 - priv+=( "libnghttp2" )
285 - fi
286 - if use quiche; then
287 - libs+=( "-lquiche" )
288 - priv+=( "quiche" )
289 - fi
290 - if use nghttp3; then
291 - libs+=( "-lnghttp3" "-lngtcp2" )
292 - priv+=( "libnghttp3" "-libtcp2" )
293 - fi
294 - if use ssl && use curl_ssl_openssl; then
295 - libs+=( "-lssl" "-lcrypto" )
296 - priv+=( "openssl" )
297 - fi
298 - grep -q Requires.private libcurl.pc && die "need to update ebuild"
299 - libs=$(printf '|%s' "${libs[@]}")
300 - sed -i -r \
301 - -e "/^Libs.private/s:(${libs#|})( |$)::g" \
302 - libcurl.pc || die
303 - echo "Requires.private: ${priv[*]}" >> libcurl.pc
304 -}
305 -
306 -multilib_src_install_all() {
307 - einstalldocs
308 - find "${ED}" -type f -name '*.la' -delete
309 - rm -rf "${ED}"/etc/
310 -}