net-misc/curl: make static build more robust
authorAnthony G. Basile <blueness@gentoo.org>
Wed, 8 Jun 2016 23:14:09 +0000 (19:14 -0400)
committerAnthony G. Basile <blueness@gentoo.org>
Wed, 8 Jun 2016 23:14:31 +0000 (19:14 -0400)
See https://github.com/curl/curl/issues/864

Package-Manager: portage-2.2.28

net-misc/curl/curl-7.49.1.ebuild

index ccdbbd43521ef04d834fda2ddca76f2ca401bc93..7f122a3700cff0a10761b74bc5843740cb4d86ae 100644 (file)
@@ -223,6 +223,27 @@ multilib_src_configure() {
                sed -i -e '/SUBDIRS/s:src::' Makefile || die
                sed -i -e '/SUBDIRS/s:scripts::' Makefile || die
        fi
+
+       # Fix up the pkg-config file to be more robust.
+       # https://github.com/curl/curl/issues/864
+       local priv=() libs=()
+       # We always enable zlib.
+       libs+=( "-lz" )
+       priv+=( "zlib" )
+       if use http2; then
+               libs+=( "-lnghttp2" )
+               priv+=( "libnghttp2" )
+       fi
+       if use curl_ssl_openssl; then
+               libs+=( "-lssl" "-lcrypto" )
+               priv+=( "openssl" )
+       fi
+       grep -q Requires.private libcurl.pc && die "need to update ebuild"
+       libs=$(printf '|%s' "${libs[@]}")
+       sed -i -r \
+               -e "/^Libs.private/s:(${libs#|})( |$)::g" \
+               libcurl.pc || die
+       echo "Requires.private: ${priv[*]}" >> libcurl.pc
 }
 
 multilib_src_install_all() {