Gentoo Archives: gentoo-commits

From: "Anthony G. Basile" <blueness@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: net-misc/curl/
Date: Wed, 02 Nov 2016 22:52:56
Message-Id: 1478127164.afa2aaba543bc2beec2465256d2a0907dc9d69e8.blueness@gentoo
1 commit: afa2aaba543bc2beec2465256d2a0907dc9d69e8
2 Author: Anthony G. Basile <blueness <AT> gentoo <DOT> org>
3 AuthorDate: Wed Nov 2 22:52:23 2016 +0000
4 Commit: Anthony G. Basile <blueness <AT> gentoo <DOT> org>
5 CommitDate: Wed Nov 2 22:52:44 2016 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=afa2aaba
7
8 net-misc/curl: version bump to 7.51.0, bug #597760
9
10 Package-Manager: portage-2.3.0
11
12 net-misc/curl/Manifest | 1 +
13 net-misc/curl/curl-7.51.0.ebuild | 252 +++++++++++++++++++++++++++++++++++++++
14 2 files changed, 253 insertions(+)
15
16 diff --git a/net-misc/curl/Manifest b/net-misc/curl/Manifest
17 index 6cc617a..93a4ef8 100644
18 --- a/net-misc/curl/Manifest
19 +++ b/net-misc/curl/Manifest
20 @@ -1 +1,2 @@
21 DIST curl-7.50.3.tar.bz2 7478393 SHA256 7b7347d976661d02c84a1f4d6daf40dee377efdc45b9e2c77dedb8acf140d8ec SHA512 59012f0d9abd38d00e0b2db0cd5d8b513c08000354d31e7318007b688dc1eb71a0ac71a13acd40b0becc6199299091697b448d2e6895f90e103a23cd23f7f621 WHIRLPOOL 90d45150dd82433d29ac3eeaab1ed3a58a8e6ca20b41039a9988d4a73ceaf5b11b5b9c7ba7c9cce05e13056350691d80e52f5c12ae11ac7ffa91e32d56e0c056
22 +DIST curl-7.51.0.tar.bz2 2570046 SHA256 7f8240048907e5030f67be0a6129bc4b333783b9cca1391026d700835a788dde SHA512 f4da06a5ea8ef1553130cec9c162ecf51153208106473b52924dc75d57b564ef845347eb252942c138db4b5ccbc17b4fb3d026afc2d1cbec2ee1566046d11cbf WHIRLPOOL 0826e0f4bf4b644b16de11df934edab09aaa29548abb757c1904398c4b3de3d80cabc42efc7acdff0e158f6a586d347eed259354674d51822770380b9d498e9f
23
24 diff --git a/net-misc/curl/curl-7.51.0.ebuild b/net-misc/curl/curl-7.51.0.ebuild
25 new file mode 100644
26 index 00000000..72c8996
27 --- /dev/null
28 +++ b/net-misc/curl/curl-7.51.0.ebuild
29 @@ -0,0 +1,252 @@
30 +# Copyright 1999-2016 Gentoo Foundation
31 +# Distributed under the terms of the GNU General Public License v2
32 +# $Id$
33 +
34 +EAPI="5"
35 +
36 +inherit autotools eutils prefix multilib-minimal
37 +
38 +DESCRIPTION="A Client that groks URLs"
39 +HOMEPAGE="https://curl.haxx.se/"
40 +SRC_URI="https://curl.haxx.se/download/${P}.tar.bz2"
41 +
42 +LICENSE="MIT"
43 +SLOT="0"
44 +KEYWORDS="~amd64"
45 +#KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~hppa-hpux ~x86-interix ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
46 +IUSE="adns http2 idn ipv6 kerberos ldap metalink rtmp samba ssh ssl static-libs test threads"
47 +IUSE+=" curl_ssl_axtls curl_ssl_gnutls curl_ssl_libressl curl_ssl_mbedtls curl_ssl_nss +curl_ssl_openssl curl_ssl_polarssl curl_ssl_winssl"
48 +IUSE+=" elibc_Winnt"
49 +
50 +#lead to lots of false negatives, bug #285669
51 +RESTRICT="test"
52 +
53 +RDEPEND="ldap? ( net-nds/openldap[${MULTILIB_USEDEP}] )
54 + ssl? (
55 + curl_ssl_axtls? (
56 + net-libs/axtls[${MULTILIB_USEDEP}]
57 + app-misc/ca-certificates
58 + )
59 + curl_ssl_gnutls? (
60 + net-libs/gnutls:0=[static-libs?,${MULTILIB_USEDEP}]
61 + dev-libs/nettle:0=[${MULTILIB_USEDEP}]
62 + app-misc/ca-certificates
63 + )
64 + curl_ssl_libressl? (
65 + dev-libs/libressl:0=[static-libs?,${MULTILIB_USEDEP}]
66 + )
67 + curl_ssl_mbedtls? (
68 + net-libs/mbedtls:0=[${MULTILIB_USEDEP}]
69 + app-misc/ca-certificates
70 + )
71 + curl_ssl_openssl? (
72 + dev-libs/openssl:0=[static-libs?,${MULTILIB_USEDEP}]
73 + )
74 + curl_ssl_nss? (
75 + dev-libs/nss:0[${MULTILIB_USEDEP}]
76 + app-misc/ca-certificates
77 + )
78 + curl_ssl_polarssl? (
79 + net-libs/polarssl:0=[${MULTILIB_USEDEP}]
80 + app-misc/ca-certificates
81 + )
82 + )
83 + http2? ( net-libs/nghttp2[${MULTILIB_USEDEP}] )
84 + idn? ( net-dns/libidn2:0[static-libs?,${MULTILIB_USEDEP}] )
85 + adns? ( net-dns/c-ares:0[${MULTILIB_USEDEP}] )
86 + kerberos? ( >=virtual/krb5-0-r1[${MULTILIB_USEDEP}] )
87 + metalink? ( >=media-libs/libmetalink-0.1.1[${MULTILIB_USEDEP}] )
88 + rtmp? ( media-video/rtmpdump[${MULTILIB_USEDEP}] )
89 + ssh? ( net-libs/libssh2[static-libs?,${MULTILIB_USEDEP}] )
90 + sys-libs/zlib[${MULTILIB_USEDEP}]
91 + abi_x86_32? (
92 + !<=app-emulation/emul-linux-x86-baselibs-20140508-r13
93 + !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
94 + )"
95 +
96 +# Do we need to enforce the same ssl backend for curl and rtmpdump? Bug #423303
97 +# rtmp? (
98 +# media-video/rtmpdump
99 +# curl_ssl_gnutls? ( media-video/rtmpdump[gnutls] )
100 +# curl_ssl_openssl? ( media-video/rtmpdump[-gnutls,ssl] )
101 +# )
102 +
103 +# ssl providers to be added:
104 +# fbopenssl $(use_with spnego)
105 +
106 +DEPEND="${RDEPEND}
107 + >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}]
108 + test? (
109 + sys-apps/diffutils
110 + dev-lang/perl
111 + )"
112 +
113 +# c-ares must be disabled for threads
114 +# only one ssl provider can be enabled
115 +REQUIRED_USE="
116 + curl_ssl_winssl? ( elibc_Winnt )
117 + threads? ( !adns )
118 + ssl? (
119 + ^^ (
120 + curl_ssl_axtls
121 + curl_ssl_gnutls
122 + curl_ssl_libressl
123 + curl_ssl_mbedtls
124 + curl_ssl_nss
125 + curl_ssl_openssl
126 + curl_ssl_polarssl
127 + curl_ssl_winssl
128 + )
129 + )"
130 +
131 +DOCS=( CHANGES README docs/FEATURES docs/INTERNALS.md \
132 + docs/MANUAL docs/FAQ docs/BUGS docs/CONTRIBUTE.md )
133 +
134 +MULTILIB_WRAPPED_HEADERS=(
135 + /usr/include/curl/curlbuild.h
136 +)
137 +
138 +MULTILIB_CHOST_TOOLS=(
139 + /usr/bin/curl-config
140 +)
141 +
142 +src_prepare() {
143 + epatch \
144 + "${FILESDIR}"/${PN}-7.30.0-prefix.patch \
145 + "${FILESDIR}"/${PN}-respect-cflags-3.patch \
146 + "${FILESDIR}"/${PN}-fix-gnutls-nettle.patch
147 +
148 + sed -i '/LD_LIBRARY_PATH=/d' configure.ac || die #382241
149 +
150 + epatch_user
151 + eprefixify curl-config.in
152 + eautoreconf
153 +}
154 +
155 +multilib_src_configure() {
156 + # We make use of the fact that later flags override earlier ones
157 + # So start with all ssl providers off until proven otherwise
158 + local myconf=()
159 + myconf+=( --without-axtls --without-gnutls --without-mbedtls --without-nss --without-polarssl --without-ssl --without-winssl )
160 + myconf+=( --without-ca-fallback --with-ca-bundle="${EPREFIX}"/etc/ssl/certs/ca-certificates.crt )
161 + if use ssl ; then
162 + if use curl_ssl_axtls; then
163 + einfo "SSL provided by axtls"
164 + myconf+=( --with-axtls )
165 + elif use curl_ssl_gnutls; then
166 + einfo "SSL provided by gnutls"
167 + myconf+=( --with-gnutls --with-nettle )
168 + elif use curl_ssl_libressl; then
169 + einfo "SSL provided by LibreSSL"
170 + myconf+=( --with-ssl --with-ca-path="${EPREFIX}"/etc/ssl/certs )
171 + elif use curl_ssl_mbedtls; then
172 + einfo "SSL provided by mbedtls"
173 + myconf+=( --with-mbedtls )
174 + elif use curl_ssl_nss; then
175 + einfo "SSL provided by nss"
176 + myconf+=( --with-nss )
177 + elif use curl_ssl_polarssl; then
178 + einfo "SSL provided by polarssl"
179 + myconf+=( --with-polarssl )
180 + elif use curl_ssl_openssl; then
181 + einfo "SSL provided by openssl"
182 + myconf+=( --with-ssl --with-ca-path="${EPREFIX}"/etc/ssl/certs )
183 + elif use curl_ssl_winssl; then
184 + einfo "SSL provided by Windows"
185 + myconf+=( --with-winssl )
186 + else
187 + eerror "We can't be here because of REQUIRED_USE."
188 + fi
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 + ECONF_SOURCE="${S}" \
203 + econf \
204 + --enable-crypto-auth \
205 + --enable-dict \
206 + --enable-file \
207 + --enable-ftp \
208 + --enable-gopher \
209 + --enable-http \
210 + --enable-imap \
211 + $(use_enable ldap) \
212 + $(use_enable ldap ldaps) \
213 + --disable-ntlm-wb \
214 + --enable-pop3 \
215 + --enable-rt \
216 + --enable-rtsp \
217 + $(use_enable samba smb) \
218 + $(use_with ssh libssh2) \
219 + --enable-smtp \
220 + --enable-telnet \
221 + --enable-tftp \
222 + --enable-tls-srp \
223 + $(use_enable adns ares) \
224 + --enable-cookies \
225 + --enable-hidden-symbols \
226 + $(use_enable ipv6) \
227 + --enable-largefile \
228 + --without-libpsl \
229 + --enable-manual \
230 + --enable-proxy \
231 + --disable-soname-bump \
232 + --disable-sspi \
233 + $(use_enable static-libs static) \
234 + $(use_enable threads threaded-resolver) \
235 + --disable-versioned-symbols \
236 + --without-cyassl \
237 + --without-darwinssl \
238 + $(use_with idn libidn2) \
239 + $(use_with kerberos gssapi "${EPREFIX}"/usr) \
240 + $(use_with metalink libmetalink) \
241 + $(use_with http2 nghttp2) \
242 + $(use_with rtmp librtmp) \
243 + --without-spnego \
244 + --without-winidn \
245 + --with-zlib \
246 + "${myconf[@]}"
247 +
248 + if ! multilib_is_native_abi; then
249 + # avoid building the client
250 + sed -i -e '/SUBDIRS/s:src::' Makefile || die
251 + sed -i -e '/SUBDIRS/s:scripts::' Makefile || die
252 + fi
253 +
254 + # Fix up the pkg-config file to be more robust.
255 + # https://github.com/curl/curl/issues/864
256 + local priv=() libs=()
257 + # We always enable zlib.
258 + libs+=( "-lz" )
259 + priv+=( "zlib" )
260 + if use http2; then
261 + libs+=( "-lnghttp2" )
262 + priv+=( "libnghttp2" )
263 + fi
264 + if use curl_ssl_openssl; then
265 + libs+=( "-lssl" "-lcrypto" )
266 + priv+=( "openssl" )
267 + fi
268 + grep -q Requires.private libcurl.pc && die "need to update ebuild"
269 + libs=$(printf '|%s' "${libs[@]}")
270 + sed -i -r \
271 + -e "/^Libs.private/s:(${libs#|})( |$)::g" \
272 + libcurl.pc || die
273 + echo "Requires.private: ${priv[*]}" >> libcurl.pc
274 +}
275 +
276 +multilib_src_install_all() {
277 + einstalldocs
278 + prune_libtool_files --all
279 +
280 + rm -rf "${ED}"/etc/
281 +}