From 2b2694a871deef7636b6b8df7eaec4df5b3ecfa3 Mon Sep 17 00:00:00 2001 From: Dongsu Park Date: Wed, 13 Jan 2021 09:44:42 +0100 Subject: [PATCH 1/4] net-misc/curl: update to 7.74.0 We need to update net-misc/curl to 7.74.0, mainly to address the following security issues: * CVE-2020-8169 * CVE-2020-8231 * CVE-2020-8284 * CVE-2020-8285 * CVE-2020-8286 --- .../portage-stable/net-misc/curl/Manifest | 5 +- .../net-misc/curl/curl-7.65.0.ebuild | 238 ---------------- .../net-misc/curl/curl-7.65.3.ebuild | 246 ---------------- .../net-misc/curl/curl-7.67.0.ebuild | 264 ------------------ ...rl-7.66.0.ebuild => curl-7.74.0-r2.ebuild} | 102 ++++--- .../portage-stable/net-misc/curl/metadata.xml | 19 +- 6 files changed, 82 insertions(+), 792 deletions(-) delete mode 100644 sdk_container/src/third_party/portage-stable/net-misc/curl/curl-7.65.0.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/net-misc/curl/curl-7.65.3.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/net-misc/curl/curl-7.67.0.ebuild rename sdk_container/src/third_party/portage-stable/net-misc/curl/{curl-7.66.0.ebuild => curl-7.74.0-r2.ebuild} (72%) diff --git a/sdk_container/src/third_party/portage-stable/net-misc/curl/Manifest b/sdk_container/src/third_party/portage-stable/net-misc/curl/Manifest index 448e6949db..199a2e051d 100644 --- a/sdk_container/src/third_party/portage-stable/net-misc/curl/Manifest +++ b/sdk_container/src/third_party/portage-stable/net-misc/curl/Manifest @@ -1,4 +1 @@ -DIST curl-7.65.0.tar.xz 2392324 BLAKE2B e5aec8c6cb6f6baabd035ce2ea159dba1541011658892bb883e917541aaffe6ebfb0d2b9f18e2357059a7bc1e3a8db47b2aed7a74597b21c14f0892ad6e9eb68 SHA512 032c065c1d4bd07ba028625f8fab6a09e7cb8505a5f19339b3abdee5a9cda7d091c11f075fe3fc227d082690a66c558c770a4cd9fb17b52acc13794976a770c5 -DIST curl-7.65.3.tar.xz 2392472 BLAKE2B 25726e1f1568fad6a8419b29dde41bed4d9de4be70740119879beeb08ff2a6ace7737efe1fb6d96ecaacaf8f90dc0142ceede2b90c84275ea8f72bcd09f21dba SHA512 fc4f041d3d6682378ce9eef2c6081e6ad83bb2502ea4c992c760266584c09e9ebca7c6d35958bd32a888702d9308cbce7aef69c431f97994107d7ff6b953941b -DIST curl-7.66.0.tar.xz 2414840 BLAKE2B f5d731c304c826442a8509016d00b9c68438ef9102b3c844c15315181c307e338f79930dc548d7f189b944dd74cc7eeb19d130b5a967ea2efa9862d15ae78bab SHA512 81170e7e4fa9d99ee2038d96d7f2ab10dcf52435331c818c7565c1a733891720f845a08029915e52ba532c6a344c346e1678474624aac1cc333aea6d1eacde35 -DIST curl-7.67.0.tar.xz 2418548 BLAKE2B 818b3d03ac8c4adb8a629147feccebcbd3d89164a77d7cb457924bd44c3069f1b03326861b73c51a6427d7169d40485a509f74edd89b99b760649e7adcdce693 SHA512 1d5a344be92dd61b1ba5189eff0fe337e492f2e850794943570fe71c985d0af60bd412082be646e07aaa8639908593e1ce4bb2d07db35394ec377e8ce8b9ae29 +DIST curl-7.74.0.tar.xz 2400972 BLAKE2B bef9e01493994afc933549a78b41065708aeaa9f6f5cdd1dbf2f43bbb03bbc97b17308b8bda5f11599c3cc0c6c77903e6fa6f1310ff874fad902a59566b51e8a SHA512 5d987f0b4d051c9e254f14d4e2a05f7cda9fb0f0ac7b3ca3664a25a51ee5ffe092ee072c0d9a613fcd3f34727d75bba14b70f5500cb110ca818591e071c3e6f4 diff --git a/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-7.65.0.ebuild b/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-7.65.0.ebuild deleted file mode 100644 index fa44c791ee..0000000000 --- a/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-7.65.0.ebuild +++ /dev/null @@ -1,238 +0,0 @@ -# Copyright 1999-2019 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="7" - -inherit autotools eutils prefix multilib-minimal - -DESCRIPTION="A Client that groks URLs" -HOMEPAGE="https://curl.haxx.se/" -SRC_URI="https://curl.haxx.se/download/${P}.tar.xz" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~riscv s390 ~sh sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" -IUSE="adns brotli http2 idn ipv6 kerberos ldap metalink rtmp samba ssh ssl static-libs test threads" -IUSE+=" curl_ssl_gnutls curl_ssl_libressl curl_ssl_mbedtls curl_ssl_nss +curl_ssl_openssl curl_ssl_winssl" -IUSE+=" elibc_Winnt" - -#lead to lots of false negatives, bug #285669 -RESTRICT="test" - -RDEPEND="ldap? ( net-nds/openldap[${MULTILIB_USEDEP}] ) - brotli? ( app-arch/brotli:=[${MULTILIB_USEDEP}] ) - ssl? ( - curl_ssl_gnutls? ( - net-libs/gnutls:0=[static-libs?,${MULTILIB_USEDEP}] - dev-libs/nettle:0=[${MULTILIB_USEDEP}] - app-misc/ca-certificates - ) - curl_ssl_libressl? ( - dev-libs/libressl:0=[static-libs?,${MULTILIB_USEDEP}] - ) - curl_ssl_mbedtls? ( - net-libs/mbedtls:0=[${MULTILIB_USEDEP}] - app-misc/ca-certificates - ) - curl_ssl_openssl? ( - dev-libs/openssl:0=[static-libs?,${MULTILIB_USEDEP}] - ) - curl_ssl_nss? ( - dev-libs/nss:0[${MULTILIB_USEDEP}] - app-misc/ca-certificates - ) - ) - http2? ( net-libs/nghttp2[${MULTILIB_USEDEP}] ) - idn? ( net-dns/libidn2:0=[static-libs?,${MULTILIB_USEDEP}] ) - adns? ( net-dns/c-ares:0[${MULTILIB_USEDEP}] ) - kerberos? ( >=virtual/krb5-0-r1[${MULTILIB_USEDEP}] ) - metalink? ( >=media-libs/libmetalink-0.1.1[${MULTILIB_USEDEP}] ) - rtmp? ( media-video/rtmpdump[${MULTILIB_USEDEP}] ) - ssh? ( net-libs/libssh2[${MULTILIB_USEDEP}] ) - sys-libs/zlib[${MULTILIB_USEDEP}]" - -# Do we need to enforce the same ssl backend for curl and rtmpdump? Bug #423303 -# rtmp? ( -# media-video/rtmpdump -# curl_ssl_gnutls? ( media-video/rtmpdump[gnutls] ) -# curl_ssl_openssl? ( media-video/rtmpdump[-gnutls,ssl] ) -# ) - -# ssl providers to be added: -# fbopenssl $(use_with spnego) - -DEPEND="${RDEPEND} - >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}] - test? ( - sys-apps/diffutils - dev-lang/perl - )" - -# c-ares must be disabled for threads -# only one ssl provider can be enabled -REQUIRED_USE=" - curl_ssl_winssl? ( elibc_Winnt ) - threads? ( !adns ) - ssl? ( - ^^ ( - curl_ssl_gnutls - curl_ssl_libressl - curl_ssl_mbedtls - curl_ssl_nss - curl_ssl_openssl - curl_ssl_winssl - ) - )" - -DOCS=( CHANGES README docs/FEATURES docs/INTERNALS.md \ - docs/FAQ docs/BUGS docs/CONTRIBUTE.md ) - -MULTILIB_WRAPPED_HEADERS=( - /usr/include/curl/curlbuild.h -) - -MULTILIB_CHOST_TOOLS=( - /usr/bin/curl-config -) - -src_prepare() { - eapply "${FILESDIR}"/${PN}-7.30.0-prefix.patch - eapply "${FILESDIR}"/${PN}-respect-cflags-3.patch - eapply "${FILESDIR}"/${PN}-fix-gnutls-nettle.patch - - sed -i '/LD_LIBRARY_PATH=/d' configure.ac || die #382241 - sed -i '/CURL_MAC_CFLAGS/d' configure.ac || die #637252 - - eapply_user - eprefixify curl-config.in - eautoreconf -} - -multilib_src_configure() { - # We make use of the fact that later flags override earlier ones - # So start with all ssl providers off until proven otherwise - # TODO: in the future, we may want to add wolfssl (https://www.wolfssl.com/) - local myconf=() - myconf+=( --without-gnutls --without-mbedtls --without-nss --without-polarssl --without-ssl --without-winssl ) - myconf+=( --without-ca-fallback --with-ca-bundle="${EPREFIX}"/etc/ssl/certs/ca-certificates.crt ) - if use ssl ; then - if use curl_ssl_gnutls; then - einfo "SSL provided by gnutls" - myconf+=( --with-gnutls --with-nettle ) - elif use curl_ssl_libressl; then - einfo "SSL provided by LibreSSL" - myconf+=( --with-ssl --with-ca-path="${EPREFIX}"/etc/ssl/certs ) - elif use curl_ssl_mbedtls; then - einfo "SSL provided by mbedtls" - myconf+=( --with-mbedtls ) - elif use curl_ssl_nss; then - einfo "SSL provided by nss" - myconf+=( --with-nss ) - elif use curl_ssl_openssl; then - einfo "SSL provided by openssl" - myconf+=( --with-ssl --with-ca-path="${EPREFIX}"/etc/ssl/certs ) - elif use curl_ssl_winssl; then - einfo "SSL provided by Windows" - myconf+=( --with-winssl ) - else - eerror "We can't be here because of REQUIRED_USE." - fi - else - einfo "SSL disabled" - fi - - # These configuration options are organized alphabetically - # within each category. This should make it easier if we - # ever decide to make any of them contingent on USE flags: - # 1) protocols first. To see them all do - # 'grep SUPPORT_PROTOCOLS configure.ac' - # 2) --enable/disable options second. - # 'grep -- --enable configure | grep Check | awk '{ print $4 }' | sort - # 3) --with/without options third. - # grep -- --with configure | grep Check | awk '{ print $4 }' | sort - ECONF_SOURCE="${S}" \ - econf \ - --disable-alt-svc \ - --enable-crypto-auth \ - --enable-dict \ - --enable-file \ - --enable-ftp \ - --enable-gopher \ - --enable-http \ - --enable-imap \ - $(use_enable ldap) \ - $(use_enable ldap ldaps) \ - --disable-ntlm-wb \ - --enable-pop3 \ - --enable-rt \ - --enable-rtsp \ - $(use_enable samba smb) \ - $(use_with ssh libssh2) \ - --enable-smtp \ - --enable-telnet \ - --enable-tftp \ - --enable-tls-srp \ - $(use_enable adns ares) \ - --enable-cookies \ - --enable-hidden-symbols \ - $(use_enable ipv6) \ - --enable-largefile \ - --without-libpsl \ - --enable-manual \ - --enable-proxy \ - --disable-sspi \ - $(use_enable static-libs static) \ - $(use_enable threads threaded-resolver) \ - $(use_enable threads pthreads) \ - --disable-versioned-symbols \ - --without-amissl \ - --without-cyassl \ - --without-darwinssl \ - --without-fish-functions-dir \ - $(use_with idn libidn2) \ - $(use_with kerberos gssapi "${EPREFIX}"/usr) \ - $(use_with metalink libmetalink) \ - $(use_with http2 nghttp2) \ - $(use_with rtmp librtmp) \ - $(use_with brotli) \ - --without-schannel \ - --without-secure-transport \ - --without-spnego \ - --without-winidn \ - --without-wolfssl \ - --with-zlib \ - "${myconf[@]}" - - if ! multilib_is_native_abi; then - # avoid building the client - 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 ssl && 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() { - einstalldocs - find "${ED}" -type f -name '*.la' -delete - rm -rf "${ED}"/etc/ -} diff --git a/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-7.65.3.ebuild b/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-7.65.3.ebuild deleted file mode 100644 index b93ba55b05..0000000000 --- a/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-7.65.3.ebuild +++ /dev/null @@ -1,246 +0,0 @@ -# Copyright 1999-2019 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="7" - -inherit autotools eutils prefix multilib-minimal - -DESCRIPTION="A Client that groks URLs" -HOMEPAGE="https://curl.haxx.se/" -SRC_URI="https://curl.haxx.se/download/${P}.tar.xz" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" -IUSE="adns brotli http2 idn ipv6 kerberos ldap metalink +progress-meter rtmp samba ssh ssl static-libs test threads" -IUSE+=" curl_ssl_gnutls curl_ssl_libressl curl_ssl_mbedtls curl_ssl_nss +curl_ssl_openssl curl_ssl_winssl" -IUSE+=" elibc_Winnt" - -#lead to lots of false negatives, bug #285669 -RESTRICT="test" - -RDEPEND="ldap? ( net-nds/openldap[${MULTILIB_USEDEP}] ) - brotli? ( app-arch/brotli:=[${MULTILIB_USEDEP}] ) - ssl? ( - curl_ssl_gnutls? ( - net-libs/gnutls:0=[static-libs?,${MULTILIB_USEDEP}] - dev-libs/nettle:0=[${MULTILIB_USEDEP}] - app-misc/ca-certificates - ) - curl_ssl_libressl? ( - dev-libs/libressl:0=[static-libs?,${MULTILIB_USEDEP}] - ) - curl_ssl_mbedtls? ( - net-libs/mbedtls:0=[${MULTILIB_USEDEP}] - app-misc/ca-certificates - ) - curl_ssl_openssl? ( - dev-libs/openssl:0=[static-libs?,${MULTILIB_USEDEP}] - ) - curl_ssl_nss? ( - dev-libs/nss:0[${MULTILIB_USEDEP}] - app-misc/ca-certificates - ) - ) - http2? ( net-libs/nghttp2[${MULTILIB_USEDEP}] ) - idn? ( net-dns/libidn2:0=[static-libs?,${MULTILIB_USEDEP}] ) - adns? ( net-dns/c-ares:0[${MULTILIB_USEDEP}] ) - kerberos? ( >=virtual/krb5-0-r1[${MULTILIB_USEDEP}] ) - metalink? ( >=media-libs/libmetalink-0.1.1[${MULTILIB_USEDEP}] ) - rtmp? ( media-video/rtmpdump[${MULTILIB_USEDEP}] ) - ssh? ( net-libs/libssh2[${MULTILIB_USEDEP}] ) - sys-libs/zlib[${MULTILIB_USEDEP}]" - -# Do we need to enforce the same ssl backend for curl and rtmpdump? Bug #423303 -# rtmp? ( -# media-video/rtmpdump -# curl_ssl_gnutls? ( media-video/rtmpdump[gnutls] ) -# curl_ssl_openssl? ( media-video/rtmpdump[-gnutls,ssl] ) -# ) - -# ssl providers to be added: -# fbopenssl $(use_with spnego) - -DEPEND="${RDEPEND} - >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}] - test? ( - sys-apps/diffutils - dev-lang/perl - )" - -# c-ares must be disabled for threads -# only one ssl provider can be enabled -REQUIRED_USE=" - curl_ssl_winssl? ( elibc_Winnt ) - threads? ( !adns ) - ssl? ( - ^^ ( - curl_ssl_gnutls - curl_ssl_libressl - curl_ssl_mbedtls - curl_ssl_nss - curl_ssl_openssl - curl_ssl_winssl - ) - )" - -DOCS=( CHANGES README docs/FEATURES docs/INTERNALS.md \ - docs/FAQ docs/BUGS docs/CONTRIBUTE.md ) - -MULTILIB_WRAPPED_HEADERS=( - /usr/include/curl/curlbuild.h -) - -MULTILIB_CHOST_TOOLS=( - /usr/bin/curl-config -) - -src_prepare() { - eapply "${FILESDIR}"/${PN}-7.30.0-prefix.patch - eapply "${FILESDIR}"/${PN}-respect-cflags-3.patch - eapply "${FILESDIR}"/${PN}-fix-gnutls-nettle.patch - - sed -i '/LD_LIBRARY_PATH=/d' configure.ac || die #382241 - sed -i '/CURL_MAC_CFLAGS/d' configure.ac || die #637252 - - eapply_user - eprefixify curl-config.in - eautoreconf -} - -multilib_src_configure() { - # We make use of the fact that later flags override earlier ones - # So start with all ssl providers off until proven otherwise - # TODO: in the future, we may want to add wolfssl (https://www.wolfssl.com/) - local myconf=() - myconf+=( --without-gnutls --without-mbedtls --without-nss --without-polarssl --without-ssl --without-winssl ) - myconf+=( --without-ca-fallback --with-ca-bundle="${EPREFIX}"/etc/ssl/certs/ca-certificates.crt ) - if use ssl ; then - if use curl_ssl_gnutls; then - einfo "SSL provided by gnutls" - myconf+=( --with-gnutls --with-nettle ) - elif use curl_ssl_libressl; then - einfo "SSL provided by LibreSSL" - myconf+=( --with-ssl --with-ca-path="${EPREFIX}"/etc/ssl/certs ) - elif use curl_ssl_mbedtls; then - einfo "SSL provided by mbedtls" - myconf+=( --with-mbedtls ) - elif use curl_ssl_nss; then - einfo "SSL provided by nss" - myconf+=( --with-nss ) - elif use curl_ssl_openssl; then - einfo "SSL provided by openssl" - myconf+=( --with-ssl --with-ca-path="${EPREFIX}"/etc/ssl/certs ) - elif use curl_ssl_winssl; then - einfo "SSL provided by Windows" - myconf+=( --with-winssl ) - else - eerror "We can't be here because of REQUIRED_USE." - fi - else - einfo "SSL disabled" - fi - - # These configuration options are organized alphabetically - # within each category. This should make it easier if we - # ever decide to make any of them contingent on USE flags: - # 1) protocols first. To see them all do - # 'grep SUPPORT_PROTOCOLS configure.ac' - # 2) --enable/disable options second. - # 'grep -- --enable configure | grep Check | awk '{ print $4 }' | sort - # 3) --with/without options third. - # grep -- --with configure | grep Check | awk '{ print $4 }' | sort - - ECONF_SOURCE="${S}" \ - econf \ - --disable-alt-svc \ - --enable-crypto-auth \ - --enable-dict \ - --enable-file \ - --enable-ftp \ - --enable-gopher \ - --enable-http \ - --enable-imap \ - $(use_enable ldap) \ - $(use_enable ldap ldaps) \ - --disable-ntlm-wb \ - --enable-pop3 \ - --enable-rt \ - --enable-rtsp \ - $(use_enable samba smb) \ - $(use_with ssh libssh2) \ - --enable-smtp \ - --enable-telnet \ - --enable-tftp \ - --enable-tls-srp \ - $(use_enable adns ares) \ - --enable-cookies \ - --enable-dateparse \ - --enable-dnsshuffle \ - --enable-doh \ - --enable-hidden-symbols \ - --enable-http-auth \ - $(use_enable ipv6) \ - --enable-largefile \ - --without-libpsl \ - --enable-manual \ - --enable-mime \ - --enable-netrc \ - $(use_enable progress-meter) \ - --enable-proxy \ - --disable-sspi \ - $(use_enable static-libs static) \ - $(use_enable threads threaded-resolver) \ - $(use_enable threads pthreads) \ - --disable-versioned-symbols \ - --without-amissl \ - --without-cyassl \ - --without-darwinssl \ - --without-fish-functions-dir \ - $(use_with idn libidn2) \ - $(use_with kerberos gssapi "${EPREFIX}"/usr) \ - $(use_with metalink libmetalink) \ - $(use_with http2 nghttp2) \ - $(use_with rtmp librtmp) \ - $(use_with brotli) \ - --without-schannel \ - --without-secure-transport \ - --without-spnego \ - --without-winidn \ - --without-wolfssl \ - --with-zlib \ - "${myconf[@]}" - - if ! multilib_is_native_abi; then - # avoid building the client - 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 ssl && 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() { - einstalldocs - find "${ED}" -type f -name '*.la' -delete - rm -rf "${ED}"/etc/ -} diff --git a/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-7.67.0.ebuild b/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-7.67.0.ebuild deleted file mode 100644 index 3926522208..0000000000 --- a/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-7.67.0.ebuild +++ /dev/null @@ -1,264 +0,0 @@ -# Copyright 1999-2019 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="7" - -inherit autotools eutils prefix multilib-minimal - -DESCRIPTION="A Client that groks URLs" -HOMEPAGE="https://curl.haxx.se/" -SRC_URI="https://curl.haxx.se/download/${P}.tar.xz" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" -IUSE="adns alt-svc brotli esni http2 idn ipv6 kerberos ldap metalink +progress-meter rtmp samba ssh ssl static-libs test threads" -IUSE+=" curl_ssl_gnutls curl_ssl_libressl curl_ssl_mbedtls curl_ssl_nss +curl_ssl_openssl curl_ssl_winssl" -IUSE+=" nghttp3 quiche" -IUSE+=" elibc_Winnt" - -#lead to lots of false negatives, bug #285669 -RESTRICT="test" - -RDEPEND="ldap? ( net-nds/openldap[${MULTILIB_USEDEP}] ) - brotli? ( app-arch/brotli:=[${MULTILIB_USEDEP}] ) - ssl? ( - curl_ssl_gnutls? ( - net-libs/gnutls:0=[static-libs?,${MULTILIB_USEDEP}] - dev-libs/nettle:0=[${MULTILIB_USEDEP}] - app-misc/ca-certificates - ) - curl_ssl_libressl? ( - dev-libs/libressl:0=[static-libs?,${MULTILIB_USEDEP}] - ) - curl_ssl_mbedtls? ( - net-libs/mbedtls:0=[${MULTILIB_USEDEP}] - app-misc/ca-certificates - ) - curl_ssl_openssl? ( - dev-libs/openssl:0=[static-libs?,${MULTILIB_USEDEP}] - ) - curl_ssl_nss? ( - dev-libs/nss:0[${MULTILIB_USEDEP}] - app-misc/ca-certificates - ) - ) - http2? ( net-libs/nghttp2[${MULTILIB_USEDEP}] ) - nghttp3? ( - net-libs/nghttp3[${MULTILIB_USEDEP}] - net-libs/ngtcp2[ssl,${MULTILIB_USEDEP}] - ) - quiche? ( net-libs/quiche[${MULTILIB_USEDEP}] ) - idn? ( net-dns/libidn2:0=[static-libs?,${MULTILIB_USEDEP}] ) - adns? ( net-dns/c-ares:0[${MULTILIB_USEDEP}] ) - kerberos? ( >=virtual/krb5-0-r1[${MULTILIB_USEDEP}] ) - metalink? ( >=media-libs/libmetalink-0.1.1[${MULTILIB_USEDEP}] ) - rtmp? ( media-video/rtmpdump[${MULTILIB_USEDEP}] ) - ssh? ( net-libs/libssh2[${MULTILIB_USEDEP}] ) - sys-libs/zlib[${MULTILIB_USEDEP}]" - -# Do we need to enforce the same ssl backend for curl and rtmpdump? Bug #423303 -# rtmp? ( -# media-video/rtmpdump -# curl_ssl_gnutls? ( media-video/rtmpdump[gnutls] ) -# curl_ssl_openssl? ( media-video/rtmpdump[-gnutls,ssl] ) -# ) - -# ssl providers to be added: -# fbopenssl $(use_with spnego) - -DEPEND="${RDEPEND}" -BDEPEND=">=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}] - test? ( - sys-apps/diffutils - dev-lang/perl - )" - -# c-ares must be disabled for threads -# only one ssl provider can be enabled -REQUIRED_USE=" - curl_ssl_winssl? ( elibc_Winnt ) - threads? ( !adns ) - ssl? ( - ^^ ( - curl_ssl_gnutls - curl_ssl_libressl - curl_ssl_mbedtls - curl_ssl_nss - curl_ssl_openssl - curl_ssl_winssl - ) - )" - -DOCS=( CHANGES README docs/FEATURES docs/INTERNALS.md \ - docs/FAQ docs/BUGS docs/CONTRIBUTE.md ) - -MULTILIB_WRAPPED_HEADERS=( - /usr/include/curl/curlbuild.h -) - -MULTILIB_CHOST_TOOLS=( - /usr/bin/curl-config -) - -src_prepare() { - eapply "${FILESDIR}"/${PN}-7.30.0-prefix.patch - eapply "${FILESDIR}"/${PN}-respect-cflags-3.patch - eapply "${FILESDIR}"/${PN}-fix-gnutls-nettle.patch - - sed -i '/LD_LIBRARY_PATH=/d' configure.ac || die #382241 - sed -i '/CURL_MAC_CFLAGS/d' configure.ac || die #637252 - - eapply_user - eprefixify curl-config.in - eautoreconf -} - -multilib_src_configure() { - # We make use of the fact that later flags override earlier ones - # So start with all ssl providers off until proven otherwise - # TODO: in the future, we may want to add wolfssl (https://www.wolfssl.com/) - local myconf=() - myconf+=( --without-gnutls --without-mbedtls --without-nss --without-polarssl --without-ssl --without-winssl ) - myconf+=( --without-ca-fallback --with-ca-bundle="${EPREFIX}"/etc/ssl/certs/ca-certificates.crt ) - if use ssl ; then - if use curl_ssl_gnutls; then - einfo "SSL provided by gnutls" - myconf+=( --with-gnutls --with-nettle ) - elif use curl_ssl_libressl; then - einfo "SSL provided by LibreSSL" - myconf+=( --with-ssl --with-ca-path="${EPREFIX}"/etc/ssl/certs ) - elif use curl_ssl_mbedtls; then - einfo "SSL provided by mbedtls" - myconf+=( --with-mbedtls ) - elif use curl_ssl_nss; then - einfo "SSL provided by nss" - myconf+=( --with-nss ) - elif use curl_ssl_openssl; then - einfo "SSL provided by openssl" - myconf+=( --with-ssl --with-ca-path="${EPREFIX}"/etc/ssl/certs ) - elif use curl_ssl_winssl; then - einfo "SSL provided by Windows" - myconf+=( --with-winssl ) - else - eerror "We can't be here because of REQUIRED_USE." - fi - else - einfo "SSL disabled" - fi - - # These configuration options are organized alphabetically - # within each category. This should make it easier if we - # ever decide to make any of them contingent on USE flags: - # 1) protocols first. To see them all do - # 'grep SUPPORT_PROTOCOLS configure.ac' - # 2) --enable/disable options second. - # 'grep -- --enable configure | grep Check | awk '{ print $4 }' | sort - # 3) --with/without options third. - # grep -- --with configure | grep Check | awk '{ print $4 }' | sort - - ECONF_SOURCE="${S}" \ - econf \ - $(use_enable alt-svc) \ - --enable-crypto-auth \ - --enable-dict \ - $(use_enable esni) \ - --enable-file \ - --enable-ftp \ - --enable-gopher \ - --enable-http \ - --enable-imap \ - $(use_enable ldap) \ - $(use_enable ldap ldaps) \ - --disable-ntlm-wb \ - --enable-pop3 \ - --enable-rt \ - --enable-rtsp \ - $(use_enable samba smb) \ - $(use_with ssh libssh2) \ - --enable-smtp \ - --enable-telnet \ - --enable-tftp \ - --enable-tls-srp \ - $(use_enable adns ares) \ - --enable-cookies \ - --enable-dateparse \ - --enable-dnsshuffle \ - --enable-doh \ - --enable-hidden-symbols \ - --enable-http-auth \ - $(use_enable ipv6) \ - --enable-largefile \ - --without-libpsl \ - --enable-manual \ - --enable-mime \ - --enable-netrc \ - $(use_enable progress-meter) \ - --enable-proxy \ - --disable-sspi \ - $(use_enable static-libs static) \ - $(use_enable threads threaded-resolver) \ - $(use_enable threads pthreads) \ - --disable-versioned-symbols \ - --without-amissl \ - --without-cyassl \ - --without-darwinssl \ - --without-fish-functions-dir \ - $(use_with idn libidn2) \ - $(use_with kerberos gssapi "${EPREFIX}"/usr) \ - $(use_with metalink libmetalink) \ - $(use_with http2 nghttp2) \ - $(use_with nghttp3) \ - $(use_with nghttp3 ngtcp2) \ - $(use_with quiche) \ - $(use_with rtmp librtmp) \ - $(use_with brotli) \ - --without-schannel \ - --without-secure-transport \ - --without-spnego \ - --without-winidn \ - --without-wolfssl \ - --with-zlib \ - "${myconf[@]}" - - if ! multilib_is_native_abi; then - # avoid building the client - 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 quiche; then - libs+=( "-lquiche" ) - priv+=( "libquiche" ) - fi - if use nghttp3; then - libs+=( "-lnghttp3" "-lngtcp2" ) - priv+=( "libnghttp3" "-libtcp2" ) - fi - if use ssl && 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() { - einstalldocs - find "${ED}" -type f -name '*.la' -delete - rm -rf "${ED}"/etc/ -} diff --git a/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-7.66.0.ebuild b/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-7.74.0-r2.ebuild similarity index 72% rename from sdk_container/src/third_party/portage-stable/net-misc/curl/curl-7.66.0.ebuild rename to sdk_container/src/third_party/portage-stable/net-misc/curl/curl-7.74.0-r2.ebuild index d31b90a467..66fabfa243 100644 --- a/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-7.66.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-7.74.0-r2.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2019 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI="7" @@ -9,36 +9,35 @@ DESCRIPTION="A Client that groks URLs" HOMEPAGE="https://curl.haxx.se/" SRC_URI="https://curl.haxx.se/download/${P}.tar.xz" -LICENSE="MIT" +LICENSE="curl" SLOT="0" -KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~riscv s390 ~sh sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" -IUSE="adns alt-svc brotli http2 idn ipv6 kerberos ldap metalink +progress-meter rtmp samba ssh ssl static-libs test threads" +#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" +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" +IUSE="adns alt-svc brotli +ftp gnutls gopher hsts +http2 idn +imap ipv6 kerberos ldap libressl mbedtls metalink nss +openssl +pop3 +progress-meter rtmp samba +smtp ssh ssl static-libs test telnet +tftp threads winssl zstd" IUSE+=" curl_ssl_gnutls curl_ssl_libressl curl_ssl_mbedtls curl_ssl_nss +curl_ssl_openssl curl_ssl_winssl" IUSE+=" nghttp3 quiche" IUSE+=" elibc_Winnt" #lead to lots of false negatives, bug #285669 -RESTRICT="test" +RESTRICT="!test? ( test )" RDEPEND="ldap? ( net-nds/openldap[${MULTILIB_USEDEP}] ) brotli? ( app-arch/brotli:=[${MULTILIB_USEDEP}] ) ssl? ( - curl_ssl_gnutls? ( + gnutls? ( net-libs/gnutls:0=[static-libs?,${MULTILIB_USEDEP}] dev-libs/nettle:0=[${MULTILIB_USEDEP}] app-misc/ca-certificates ) - curl_ssl_libressl? ( - dev-libs/libressl:0=[static-libs?,${MULTILIB_USEDEP}] - ) - curl_ssl_mbedtls? ( + mbedtls? ( net-libs/mbedtls:0=[${MULTILIB_USEDEP}] app-misc/ca-certificates ) - curl_ssl_openssl? ( - dev-libs/openssl:0=[static-libs?,${MULTILIB_USEDEP}] + openssl? ( + !libressl? ( dev-libs/openssl:0=[static-libs?,${MULTILIB_USEDEP}] ) + libressl? ( dev-libs/libressl:0=[static-libs?,${MULTILIB_USEDEP}] ) ) - curl_ssl_nss? ( + nss? ( dev-libs/nss:0[${MULTILIB_USEDEP}] app-misc/ca-certificates ) @@ -48,14 +47,15 @@ RDEPEND="ldap? ( net-nds/openldap[${MULTILIB_USEDEP}] ) net-libs/nghttp3[${MULTILIB_USEDEP}] net-libs/ngtcp2[ssl,${MULTILIB_USEDEP}] ) - quiche? ( net-libs/quiche[${MULTILIB_USEDEP}] ) + quiche? ( >=net-libs/quiche-0.3.0[${MULTILIB_USEDEP}] ) idn? ( net-dns/libidn2:0=[static-libs?,${MULTILIB_USEDEP}] ) adns? ( net-dns/c-ares:0[${MULTILIB_USEDEP}] ) kerberos? ( >=virtual/krb5-0-r1[${MULTILIB_USEDEP}] ) metalink? ( >=media-libs/libmetalink-0.1.1[${MULTILIB_USEDEP}] ) rtmp? ( media-video/rtmpdump[${MULTILIB_USEDEP}] ) ssh? ( net-libs/libssh2[${MULTILIB_USEDEP}] ) - sys-libs/zlib[${MULTILIB_USEDEP}]" + sys-libs/zlib[${MULTILIB_USEDEP}] + zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] )" # Do we need to enforce the same ssl backend for curl and rtmpdump? Bug #423303 # rtmp? ( @@ -68,16 +68,16 @@ RDEPEND="ldap? ( net-nds/openldap[${MULTILIB_USEDEP}] ) # fbopenssl $(use_with spnego) DEPEND="${RDEPEND}" -BDEPEND=">=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}] +BDEPEND="virtual/pkgconfig test? ( sys-apps/diffutils dev-lang/perl )" # c-ares must be disabled for threads -# only one ssl provider can be enabled +# only one default ssl provider can be enabled REQUIRED_USE=" - curl_ssl_winssl? ( elibc_Winnt ) + winssl? ( elibc_Winnt ) threads? ( !adns ) ssl? ( ^^ ( @@ -90,8 +90,8 @@ REQUIRED_USE=" ) )" -DOCS=( CHANGES README docs/FEATURES docs/INTERNALS.md \ - docs/FAQ docs/BUGS docs/CONTRIBUTE.md ) +DOCS=( CHANGES README docs/FEATURES.md docs/INTERNALS.md \ + docs/FAQ docs/BUGS.md docs/CONTRIBUTE.md ) MULTILIB_WRAPPED_HEADERS=( /usr/include/curl/curlbuild.h @@ -119,30 +119,54 @@ multilib_src_configure() { # So start with all ssl providers off until proven otherwise # TODO: in the future, we may want to add wolfssl (https://www.wolfssl.com/) local myconf=() + myconf+=( --without-gnutls --without-mbedtls --without-nss --without-polarssl --without-ssl --without-winssl ) myconf+=( --without-ca-fallback --with-ca-bundle="${EPREFIX}"/etc/ssl/certs/ca-certificates.crt ) + #myconf+=( --without-default-ssl-backend ) if use ssl ; then - if use curl_ssl_gnutls; then + if use gnutls || use curl_ssl_gnutls; then einfo "SSL provided by gnutls" myconf+=( --with-gnutls --with-nettle ) - elif use curl_ssl_libressl; then - einfo "SSL provided by LibreSSL" - myconf+=( --with-ssl --with-ca-path="${EPREFIX}"/etc/ssl/certs ) - elif use curl_ssl_mbedtls; then + fi + if use mbedtls || use curl_ssl_mbedtls; then einfo "SSL provided by mbedtls" myconf+=( --with-mbedtls ) - elif use curl_ssl_nss; then + fi + if use nss || use curl_ssl_nss; then einfo "SSL provided by nss" myconf+=( --with-nss ) - elif use curl_ssl_openssl; then + fi + if use openssl || use curl_ssl_openssl || use curl_ssl_libressl; then einfo "SSL provided by openssl" myconf+=( --with-ssl --with-ca-path="${EPREFIX}"/etc/ssl/certs ) - elif use curl_ssl_winssl; then + fi + if use winssl || use curl_ssl_winssl; then einfo "SSL provided by Windows" myconf+=( --with-winssl ) + fi + + if use curl_ssl_gnutls; then + einfo "Default SSL provided by gnutls" + myconf+=( --with-default-ssl-backend=gnutls ) + elif use curl_ssl_libressl; then + einfo "Default SSL provided by LibreSSL" + myconf+=( --with-default-ssl-backend=openssl ) # NOTE THE HACK HERE + elif use curl_ssl_mbedtls; then + einfo "Default SSL provided by mbedtls" + myconf+=( --with-default-ssl-backend=mbedtls ) + elif use curl_ssl_nss; then + einfo "Default SSL provided by nss" + myconf+=( --with-default-ssl-backend=nss ) + elif use curl_ssl_openssl; then + einfo "Default SSL provided by openssl" + myconf+=( --with-default-ssl-backend=openssl ) + elif use curl_ssl_winssl; then + einfo "Default SSL provided by Windows" + myconf+=( --with-default-ssl-backend=winssl ) else eerror "We can't be here because of REQUIRED_USE." fi + else einfo "SSL disabled" fi @@ -162,22 +186,24 @@ multilib_src_configure() { $(use_enable alt-svc) \ --enable-crypto-auth \ --enable-dict \ + --disable-ech \ --enable-file \ - --enable-ftp \ - --enable-gopher \ + $(use_enable ftp) \ + $(use_enable gopher) \ + $(use_enable hsts) \ --enable-http \ - --enable-imap \ + $(use_enable imap) \ $(use_enable ldap) \ $(use_enable ldap ldaps) \ --disable-ntlm-wb \ - --enable-pop3 \ + $(use_enable pop3) \ --enable-rt \ --enable-rtsp \ $(use_enable samba smb) \ $(use_with ssh libssh2) \ - --enable-smtp \ - --enable-telnet \ - --enable-tftp \ + $(use_enable smtp) \ + $(use_enable telnet) \ + $(use_enable tftp) \ --enable-tls-srp \ $(use_enable adns ares) \ --enable-cookies \ @@ -188,7 +214,6 @@ multilib_src_configure() { --enable-http-auth \ $(use_enable ipv6) \ --enable-largefile \ - --without-libpsl \ --enable-manual \ --enable-mime \ --enable-netrc \ @@ -200,6 +225,7 @@ multilib_src_configure() { $(use_enable threads pthreads) \ --disable-versioned-symbols \ --without-amissl \ + --without-bearssl \ --without-cyassl \ --without-darwinssl \ --without-fish-functions-dir \ @@ -207,6 +233,7 @@ multilib_src_configure() { $(use_with kerberos gssapi "${EPREFIX}"/usr) \ $(use_with metalink libmetalink) \ $(use_with http2 nghttp2) \ + --without-libpsl \ $(use_with nghttp3) \ $(use_with nghttp3 ngtcp2) \ $(use_with quiche) \ @@ -218,6 +245,7 @@ multilib_src_configure() { --without-winidn \ --without-wolfssl \ --with-zlib \ + $(use_with zstd) \ "${myconf[@]}" if ! multilib_is_native_abi; then @@ -238,7 +266,7 @@ multilib_src_configure() { fi if use quiche; then libs+=( "-lquiche" ) - priv+=( "libquiche" ) + priv+=( "quiche" ) fi if use nghttp3; then libs+=( "-lnghttp3" "-lngtcp2" ) diff --git a/sdk_container/src/third_party/portage-stable/net-misc/curl/metadata.xml b/sdk_container/src/third_party/portage-stable/net-misc/curl/metadata.xml index 3cc29ed2f5..aeae03a29a 100644 --- a/sdk_container/src/third_party/portage-stable/net-misc/curl/metadata.xml +++ b/sdk_container/src/third_party/portage-stable/net-misc/curl/metadata.xml @@ -8,15 +8,28 @@ Enable alt-svc support Enable brotli compression support - Enable Encrypted Server Name Indication support + Enable FTP support + Enable gnutls ssl backend + Enable Gopher protocol support + Enable HTTP Strict Transport Security Enable HTTP/2.0 support + Enable Internet Message Access Protocol support + Enable mbedtls ssl backend Enable HTTP/3.0 support using net-libs/nghttp3 and net-libs/ngtcp2 Enable HTTP/3.0 support using net-libs/quiche - Enable SSH urls in curl using libssh2 Enable metalink support + Enable nss ssl backend + Enable openssl ssl backend + Enable Post Office Protocol 3 support Enable the progress meter - Enable crypto engine support (via openssl if USE='-gnutls -nss') Enable RTMP Streaming Media support + Enable Simple Mail Transfer Protocol support + Enable SSH urls in curl using libssh2 + Enable crypto engine support (via openssl if USE='-gnutls -nss') + Enable Telnet protocol support + Enable TFTP support + Enable winssl ssl backend + Enable zstd compression cpe:/a:curl:curl From 399118dca6126077c465fb7856670013244d86a2 Mon Sep 17 00:00:00 2001 From: Dongsu Park Date: Thu, 14 Jan 2021 18:11:37 +0100 Subject: [PATCH 2/4] licenses: add a new license curl Now that curl >= 7.70 requires its own license file, we need to make it included in the SDK, so that `/var/gentoo/repos/gentoo/licenses/curl` can be available. Without that file, the image build step fails due to a missing license file for curl. --- .../third_party/portage-stable/licenses/curl | 22 +++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/licenses/curl diff --git a/sdk_container/src/third_party/portage-stable/licenses/curl b/sdk_container/src/third_party/portage-stable/licenses/curl new file mode 100644 index 0000000000..9d9e4af8d8 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/licenses/curl @@ -0,0 +1,22 @@ +COPYRIGHT AND PERMISSION NOTICE + +Copyright (c) 1996 - 2020, Daniel Stenberg, , and many +contributors, see the THANKS file. + +All rights reserved. + +Permission to use, copy, modify, and distribute this software for any purpose +with or without fee is hereby granted, provided that the above copyright +notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. IN +NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE +OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall not +be used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization of the copyright holder. From 88a3416c13397e2cf35cf9f6c0bfa9f0514a1bb3 Mon Sep 17 00:00:00 2001 From: Dongsu Park Date: Fri, 15 Jan 2021 11:26:02 +0100 Subject: [PATCH 3/4] profiles: add curl to MISC-FREE license group Now that curl has its own license file, it should be also added to `MISC-FREE` license group, just like Gentoo. Simply sync `license_groups` with Gentoo. --- .../portage-stable/profiles/license_groups | 24 +++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/profiles/license_groups b/sdk_container/src/third_party/portage-stable/profiles/license_groups index 14649929f5..d8d470f076 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/license_groups +++ b/sdk_container/src/third_party/portage-stable/profiles/license_groups @@ -1,4 +1,4 @@ -# Copyright 1999-2019 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # Please report bugs or other requests at bugs.gentoo.org and assign to @@ -10,27 +10,27 @@ ###################################################################### # GPL compatible licenses approved by the Free Software Foundation -# http://www.gnu.org/licenses/license-list.html +# https://www.gnu.org/licenses/license-list.html # GPL or LGPL with various exceptions are also included here, because # they are more permissive than the licenses they are based on. -GPL-COMPATIBLE AGPL-3 AGPL-3+ Apache-2.0 Artistic-2 Boost-1.0 BSD BSD-2 CC0-1.0 CeCILL-2 Clarified-Artistic Clear-BSD ECL-2.0 FTL gcc-runtime-library-exception-3.1 GPL-1 GPL-1+ GPL-2 GPL-2+ GPL-2-with-classpath-exception GPL-2-with-exceptions GPL-2-with-font-exception GPL-2-with-linking-exception GPL-2-with-MySQL-FLOSS-exception GPL-2+-with-openssl-exception GPL-3 GPL-3+ GPL-3+-with-cuda-exception GPL-3+-with-cuda-openssl-exception GPL-3-with-font-exception GPL-3+-with-opencl-exception GPL-3+-with-opencl-openssl-exception GPL-3-with-openssl-exception HPND IJG ISC LGPL-2 LGPL-2+ LGPL-2-with-linking-exception LGPL-2.1 LGPL-2.1+ LGPL-2.1-with-linking-exception LGPL-3 LGPL-3+ LGPL-3-with-linking-exception libgcc libstdc++ metapackage MIT MPL-2.0 Nokia-Qt-LGPL-Exception-1.1 OPENLDAP PSF-2 PSF-2.2 PSF-2.3 PSF-2.4 public-domain PYTHON qwt Ruby Ruby-BSD SGI-B-2.0 Sleepycat tanuki-community Transmission-OpenSSL-exception unicode Unlicense UoI-NCSA UPX-exception vim W3C WTFPL-2 ZLIB ZPL +GPL-COMPATIBLE AGPL-3 AGPL-3+ Apache-2.0 Apache-2.0-with-LLVM-exceptions Artistic-2 Boost-1.0 BSD BSD-2 CC0-1.0 CeCILL-2 Clarified-Artistic Clear-BSD ECL-2.0 FSFAP FTL gcc-runtime-library-exception-3.1 GPL-1 GPL-1+ GPL-2 GPL-2+ GPL-2-with-classpath-exception GPL-2-with-exceptions GPL-2-with-font-exception GPL-2-with-linking-exception GPL-2-with-MySQL-FLOSS-exception GPL-2+-with-openssl-exception GPL-3 GPL-3+ GPL-3+-with-autoconf-exception GPL-3-with-font-exception GPL-3-with-openssl-exception HPND IJG ISC LGPL-2 LGPL-2+ LGPL-2-with-linking-exception LGPL-2.1 LGPL-2.1+ LGPL-2.1-with-linking-exception LGPL-3 LGPL-3+ LGPL-3-with-linking-exception libgcc libstdc++ metapackage MIT MPL-2.0 Nokia-Qt-LGPL-Exception-1.1 OPENLDAP PSF-2 PSF-2.2 PSF-2.3 PSF-2.4 public-domain PYTHON qwt Ruby Ruby-BSD SGI-B-2.0 Sleepycat tanuki-community Transmission-OpenSSL-exception unicode Unlicense UoI-NCSA UPX-exception vim W3C WTFPL-2 wxWinLL-3.1 ZLIB ZPL # Free software licenses approved by the FSF -FSF-APPROVED @GPL-COMPATIBLE AFL-2.1 AFL-3.0 Apache-1.0 Apache-1.1 APSL-2 BSD-4 CDDL CNRI CPAL-1.0 CPL-1.0 EPL-1.0 EPL-2.0 EUPL-1.1 gnuplot IBM LPPL-1.2 MPL-1.0 MPL-1.1 Ms-PL NPL-1.1 openssl OSL-1.1 OSL-2.0 OSL-2.1 PHP-3.01 QPL QPL-1.0 Zend-2.0 +FSF-APPROVED @GPL-COMPATIBLE AFL-2.1 AFL-3.0 Apache-1.0 Apache-1.1 APSL-2 BSD-4 CDDL CNRI CPAL-1.0 CPL-1.0 EPL-1.0 EPL-2.0 EUPL-1.1 EUPL-1.2 FraunhoferFDK gnuplot IBM LPPL-1.2 MPL-1.0 MPL-1.1 Ms-PL NPL-1.1 openssl OSL-1.1 OSL-2.0 OSL-2.1 PHP-3.01 QPL QPL-1.0 Zend-2.0 # Licenses approved by the Open Source Initiative -# http://www.opensource.org/licenses +# https://www.opensource.org/licenses # Note that the FSF lists these as nonfree: Artistic NOSA Watcom-1.0 -OSI-APPROVED AFL-3.0 AGPL-3 AGPL-3+ Apache-1.1 Apache-2.0 APL-1.0 APSL-2 Artistic Artistic-2 Boost-1.0 BSD BSD-2 CDDL CNRI CPAL-1.0 CPL-1.0 ECL-2.0 EPL-1.0 EPL-2.0 EUPL-1.1 GPL-1+ GPL-2 GPL-2+ GPL-3 GPL-3+ HPND IBM IPAfont ISC LGPL-2+ LGPL-2.1 LGPL-2.1+ LGPL-3 LGPL-3+ LPPL-1.3c MIT MPL-1.0 MPL-1.1 MPL-2.0 Ms-PL nethack NOSA OFL-1.1 OSL-2.1 PHP-3 PHP-3.01 POSTGRESQL PSF-2 QPL Sleepycat UoI-NCSA W3C Watcom-1.0 wxWinLL-3 ZLIB ZPL +OSI-APPROVED AFL-3.0 AGPL-3 AGPL-3+ Apache-1.1 Apache-2.0 APL-1.0 APSL-2 Artistic Artistic-2 Boost-1.0 BSD BSD-2 CDDL CNRI CPAL-1.0 CPL-1.0 ECL-2.0 EPL-1.0 EPL-2.0 EUPL-1.1 EUPL-1.2 GPL-1+ GPL-2 GPL-2+ GPL-3 GPL-3+ HPND IBM IPAfont ISC LGPL-2+ LGPL-2.1 LGPL-2.1+ LGPL-3 LGPL-3+ LPPL-1.3c MIT MPL-1.0 MPL-1.1 MPL-2.0 Ms-PL nethack NOSA OFL-1.1 OSL-2.1 PHP-3 PHP-3.01 POSTGRESQL PSF-2 QPL Sleepycat UoI-NCSA W3C Watcom-1.0 wxWinLL-3 ZLIB ZPL # Misc licenses that are probably free software, i.e. follow the -# Free Software Definition at http://www.gnu.org/philosophy/free-sw.html +# Free Software Definition at https://www.gnu.org/philosophy/free-sw.html # but are not approved by either FSF or OSI. Preferably on the long # term these should be cleared up and moved to other sets. # Licenses in this list should NOT appear directly or indirectly in # @FSF-APPROVED or @OSI-APPROVED. # Note: Licenses for fonts should be included in @MISC-FREE-DOCS. -MISC-FREE Allegro alternate AMPAS bea.ri.jsr173 BEER-WARE boehm-gc BSD-1 BSD-with-attribution buddy bufexplorer.vim BZIP2 canfep CAOSL CDDL-Schily CeCILL-C CMake CPL-0.5 CRACKLIB Crypt-IDEA DES docbook dom4j eGenixPublic-1.1 ElementTree Emacs ErlPL-1.1 FastCGI feh File-MMagic Flashpix FLEX flexmock FLTK freetts FVWM gd gsm HTML-Tidy htmlc iASL icu IDPL imagemagick Info-ZIP inner-net ipadic ipx-utils Ispell JasPer2.0 JDOM JNIC JOVE LambdaMOO LIBGLOSS libmng libpng libpng2 libtiff LLVM-Grant LPPL-1.3 LPPL-1.3b lsof Mail-Sendmail mapm-4.9.5 matplotlib Mini-XML minpack MIT-with-advertising mm mpich2 NCSA-HDF netcat NEWLIB ngrep Old-MIT openafs-krb5-a Openwall otter PCRE perforce photopc PHP-2.02 pngcrush pngnq Princeton psutils qmail-nelson rc rdisc regexp-UofT repoze RSA rwpng scanlogd Sendmail Sendmail-Open-Source shrimp SMAIL Snd SNIA SSLeay Subversion SVFL symlinks tablelist tcltk tcp_wrappers_license telegram TeX TeX-other-free the-Click-license Time-Format Time-modules tm-align torque-2.5 totd Toyoda UCAR-Unidata URT VTK w3m wxWinLL-3.1 x2x xbatt xboing XC Xdebug xtrs xvt YaTeX yuuji ZSH +MISC-FREE AIFFWriter.m Allegro alternate AMPAS bea.ri.jsr173 BEER-WARE boehm-gc BSD-1 BSD-with-attribution BSD-with-disclosure buddy bufexplorer.vim BZIP2 canfep CAOSL CDDL-1.1 CDDL-Schily CeCILL-C CMake CPL-0.5 CRACKLIB Crypt-IDEA curl DES docbook dom4j DUMB-0.9.3 ElementTree Emacs ErlPL-1.1 FastCGI feh File-MMagic Flashpix FLEX flexmock FLTK freetts FVWM gd gsm HTML-Tidy htmlc iASL icu IDPL imagemagick Info-ZIP inner-net Interbase-1.0 ipadic Ispell JDOM JNIC JOVE Khronos-CLHPP LambdaMOO LIBGLOSS libmng libpng libpng2 libtiff LPPL-1.3 LPPL-1.3b lsof matplotlib Mini-XML minpack MIT-with-advertising mm mpich2 NCSA-HDF netcat NEWLIB ngrep Old-MIT openafs-krb5-a Openwall otter par PCRE perforce photopc PHP-2.02 pngcrush pngnq Princeton psutils rc rdisc regexp-UofT repoze RSA rwpng sash scanlogd sdlsasteroids Sendmail Sendmail-Open-Source SMAIL Snd SSLeay SVFL symlinks Sympow-BSD tablelist tcltk tcp_wrappers_license TeX TeX-other-free the-Click-license Time-Format Time-modules tm-align torque-2.5 totd Toyoda UCAR-Unidata URT VTK w3m wm2 x2x xbatt xboing XC Xdebug xtrs ZSH # Metaset for all free software FREE-SOFTWARE @FSF-APPROVED @OSI-APPROVED @MISC-FREE @@ -42,9 +42,9 @@ FREE-SOFTWARE @FSF-APPROVED @OSI-APPROVED @MISC-FREE FSF-APPROVED-OTHER Arphic CC-BY-2.0 CC-BY-2.5 CC-BY-3.0 CC-BY-4.0 CC-BY-SA-2.0 CC-BY-SA-2.5 CC-BY-SA-3.0 CC-BY-SA-4.0 FDL-1.1 FDL-1.1+ FDL-1.2 FDL-1.2+ FDL-1.3 FDL-1.3+ FreeArt GPL-1 GPL-1+ GPL-2 GPL-2+ GPL-3 GPL-3+ IPAfont OFL OFL-1.1 OPL # Misc licenses for free documents and other works (including fonts) -# that follow the definition at http://freedomdefined.org/ but are NOT +# that follow the definition at https://freedomdefined.org/ but are NOT # listed in @FSF-APPROVED-OTHER -MISC-FREE-DOCS BitstreamVera CC-BY-SA-1.0 CC-PD CC-SA-1.0 LDP-1 LDP-1a man-pages man-pages-posix man-pages-posix-2013 MaxMind2 mplus-fonts myspell-en_CA-KevinAtkinson quake1-textures Texinfo-manual UbuntuFontLicense-1.0 Unicode_Fonts_for_Ancient_Scripts vlgothic wxWinFDL-3 +MISC-FREE-DOCS BAEKMUK BitstreamVera CC-BY-SA-1.0 CC-PD CC-SA-1.0 LDP-1 LDP-1a man-pages man-pages-posix man-pages-posix-2013 MaxMind2 mplus-fonts myspell-en_CA-KevinAtkinson quake1-textures Texinfo-manual UbuntuFontLicense-1.0 vlgothic wxWinFDL-3 # Metaset for all free documents FREE-DOCUMENTS @FSF-APPROVED-OTHER @MISC-FREE-DOCS @@ -65,13 +65,13 @@ FREE @FREE-SOFTWARE @FREE-DOCUMENTS # - IF (and only if) there is an explicit inclusion requirement, # USE=bindist MUST cause a copy of the license to be installed # in a file location compliant with the license -BINARY-REDISTRIBUTABLE @FREE bh-luxi bonnie Broadcom Dina freedist intel-ucode ipw2100-fw ipw2200-fw ipw3945 linux-fw-redistributable LSI-tw_cli MicroChip-SDCC no-source-code NVIDIA-r1 qlogic-fibre-channel-firmware shmux SmartLabs sun-jlfgr unRAR +BINARY-REDISTRIBUTABLE @FREE Amazon Atmel AVASYS bh-luxi bonnie Broadcom freedist intel-ucode ipw2100-fw ipw2200-fw ipw3945 ISSL JSON linux-fw-redistributable LSI-tw_cli Mellanox-AS-IS MicroChip-SDCC no-source-code NVIDIA-r1 qlogic-fibre-channel-firmware shmux SmartLabs sun-jlfgr unRAR ###################################################################### # License agreements that try to take away your rights. These are more # restrictive than "all-rights-reserved" or require explicit approval. -EULA AdobeFlash-11.x AMD-GPU-PRO-EULA AnyDesk-TOS ArxFatalis-EULA-JoWooD baudline BCS bestcrypt bf1942-lnxded CAPYBARA-EULA Coherent-Graphics CROSSOVER-2 DOOM3 ETQW f.lux FAH-EULA-2014 FraunhoferFDK GameFront Gameplay-Group-EULA geekbench genymotion GIMPS GOG-EULA google-chrome Google-TOS Intel-SDP Introversion LastPass LOKI-EULA LRCTF MakeMKV-EULA Mendeley-terms Microsemi Mojang MTA-0.5 NVIDIA-CODEC-SDK NVIDIA-CUDA OPERA-12 OPERA-2014 Oracle-BCLA-JavaSE PAPERS-PLEASE POMPOM postal2 Primate-Plunge protonmail-bridge-EULA PUEL Q3AEULA Q3AEULA-20000111 QUAKE4 Quartus-prime-megacore RAR RTCW RTCW-ETEULA RuneScape-EULA Sourcetrail SPS Steam supermicro teamspeak3 TeamViewer THINKTANKS TIK ubiquiti ut2003 ut2003-demo Vivaldi worklog-assistant zi-labone +EULA 2dboy-EULA AMD-GPU-PRO-EULA AnyDesk-TOS Aseprite-EULA baudline BCS bestcrypt CAPYBARA-EULA Coherent-Graphics ETQW f.lux FAH-EULA-2014 Flightradar24 Gameplay-Group-EULA geekbench genymotion GIMPS GOG-EULA google-chrome Google-TOS Intel-SDP Introversion LastPass LOKI-EULA MakeMKV-EULA Microsemi Mojang microsoft-edge ms-teams-pre MTA-0.5 NVIDIA-CODEC-SDK NVIDIA-CUDA OPERA-2018 Oracle-BCLA-JavaSE PAPERS-PLEASE Primate-Plunge protonmail-bridge-EULA PUEL Q3AEULA-20000111 QUAKE4 Quartus-prime-megacore RAR Sourcetrail SPS Steam supermicro Synology teamspeak3 teamspeak5 TeamViewer THINKTANKS TIK ubiquiti ut2003 ut2003-demo Vivaldi worklog-assistant WPS-EULA zi-labone # Local Variables: # mode: conf-space From c9afc48e3506befa9710af2272683eb6bac6d15d Mon Sep 17 00:00:00 2001 From: Dongsu Park Date: Fri, 15 Jan 2021 16:27:33 +0100 Subject: [PATCH 4/4] net-libs/nghttp2: add new package nghttp2 As `net-misc/curl` 7.74 pulls in `net-libs/nghttp2`, we need to add a new package for that. --- .../portage-stable/net-libs/nghttp2/Manifest | 2 + .../net-libs/nghttp2/metadata.xml | 15 ++++ .../net-libs/nghttp2/nghttp2-1.41.0.ebuild | 77 +++++++++++++++++++ .../net-libs/nghttp2/nghttp2-1.42.0.ebuild | 77 +++++++++++++++++++ .../net-libs/nghttp2/nghttp2-9999.ebuild | 77 +++++++++++++++++++ 5 files changed, 248 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/net-libs/nghttp2/Manifest create mode 100644 sdk_container/src/third_party/portage-stable/net-libs/nghttp2/metadata.xml create mode 100644 sdk_container/src/third_party/portage-stable/net-libs/nghttp2/nghttp2-1.41.0.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/net-libs/nghttp2/nghttp2-1.42.0.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/net-libs/nghttp2/nghttp2-9999.ebuild diff --git a/sdk_container/src/third_party/portage-stable/net-libs/nghttp2/Manifest b/sdk_container/src/third_party/portage-stable/net-libs/nghttp2/Manifest new file mode 100644 index 0000000000..4d09495cf3 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/net-libs/nghttp2/Manifest @@ -0,0 +1,2 @@ +DIST nghttp2-1.41.0.tar.xz 1640712 BLAKE2B 8dbd5f80bb9617d792e2eece09f6cae82907ad3a14a90084578b213191015c32ac38de87d9a39246651087b5d0e9c6c624ff806a0690973b5faa8624ee033d8f SHA512 c92e8022ccc876fa311f21bc5bf5af75feff8232efb56a4b2ab198031e974d15b67c16c046188cc76552f75a1b2e7115925d6ce1e42d6f94ae482fe69727466d +DIST nghttp2-1.42.0.tar.xz 3973284 BLAKE2B 39431619bd3c9a66eb217065bb29ceba8f3fda376343687b4774ed5e73c634f51142b407f9515ae5ad4363af5cf57c0199f9bfddf5bc08dc587419ec03cf5b45 SHA512 1d93e6262c5538e26fbf36567230b4a239dbdfee26198b1e1d5862bf4459ae435679674c047407f5c604ddff91d7717d8515532e00bcdb2aa75f27ff97dce60c diff --git a/sdk_container/src/third_party/portage-stable/net-libs/nghttp2/metadata.xml b/sdk_container/src/third_party/portage-stable/net-libs/nghttp2/metadata.xml new file mode 100644 index 0000000000..474284272d --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/net-libs/nghttp2/metadata.xml @@ -0,0 +1,15 @@ + + + + + polynomial-c@gentoo.org + Lars Wendler + + + Install HPACK (header compression) helper tools + Install nghttp, nghttpd and nghttpx + + + nghttp2/nghttp2 + + diff --git a/sdk_container/src/third_party/portage-stable/net-libs/nghttp2/nghttp2-1.41.0.ebuild b/sdk_container/src/third_party/portage-stable/net-libs/nghttp2/nghttp2-1.41.0.ebuild new file mode 100644 index 0000000000..1673a2300e --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/net-libs/nghttp2/nghttp2-1.41.0.ebuild @@ -0,0 +1,77 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# TODO: Add python support. + +EAPI=7 + +inherit multilib-minimal + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://github.com/nghttp2/nghttp2.git" + inherit autotools git-r3 +else + SRC_URI="https://github.com/nghttp2/nghttp2/releases/download/v${PV}/${P}.tar.xz" + KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~x64-macos ~x64-solaris" +fi + +DESCRIPTION="HTTP/2 C Library" +HOMEPAGE="https://nghttp2.org/" + +LICENSE="MIT" +SLOT="0/1.14" # . SONAMEs +IUSE="cxx debug hpack-tools jemalloc libressl static-libs test +threads utils xml" + +RESTRICT="!test? ( test )" + +SSL_DEPEND=" + !libressl? ( >=dev-libs/openssl-1.0.2:0=[-bindist,${MULTILIB_USEDEP}] ) + libressl? ( dev-libs/libressl:=[${MULTILIB_USEDEP}] ) +" +RDEPEND=" + cxx? ( + ${SSL_DEPEND} + dev-libs/boost:=[${MULTILIB_USEDEP},threads] + ) + hpack-tools? ( >=dev-libs/jansson-2.5 ) + jemalloc? ( dev-libs/jemalloc[${MULTILIB_USEDEP}] ) + utils? ( + ${SSL_DEPEND} + >=dev-libs/libev-4.15[${MULTILIB_USEDEP}] + >=sys-libs/zlib-1.2.3[${MULTILIB_USEDEP}] + net-dns/c-ares:=[${MULTILIB_USEDEP}] + ) + xml? ( >=dev-libs/libxml2-2.7.7:2[${MULTILIB_USEDEP}] )" +DEPEND="${RDEPEND} + test? ( >=dev-util/cunit-2.1[${MULTILIB_USEDEP}] )" +BDEPEND="virtual/pkgconfig" + +src_prepare() { + default + [[ ${PV} == 9999 ]] && eautoreconf +} + +multilib_src_configure() { + local myeconfargs=( + --disable-examples + --disable-failmalloc + --disable-python-bindings + --disable-werror + --without-cython + $(use_enable cxx asio-lib) + $(use_enable debug) + $(multilib_native_use_enable hpack-tools) + $(use_enable static-libs static) + $(use_enable threads) + $(multilib_native_use_enable utils app) + $(multilib_native_use_with jemalloc) + $(multilib_native_use_with xml libxml2) + ) + ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" +} + +multilib_src_install_all() { + if ! use static-libs ; then + find "${ED}"/usr -name '*.la' -delete || die + fi +} diff --git a/sdk_container/src/third_party/portage-stable/net-libs/nghttp2/nghttp2-1.42.0.ebuild b/sdk_container/src/third_party/portage-stable/net-libs/nghttp2/nghttp2-1.42.0.ebuild new file mode 100644 index 0000000000..5426a55b59 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/net-libs/nghttp2/nghttp2-1.42.0.ebuild @@ -0,0 +1,77 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# TODO: Add python support. + +EAPI=7 + +inherit multilib-minimal + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://github.com/nghttp2/nghttp2.git" + inherit autotools git-r3 +else + SRC_URI="https://github.com/nghttp2/nghttp2/releases/download/v${PV}/${P}.tar.xz" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x64-solaris ~x86-solaris" +fi + +DESCRIPTION="HTTP/2 C Library" +HOMEPAGE="https://nghttp2.org/" + +LICENSE="MIT" +SLOT="0/1.14" # . SONAMEs +IUSE="cxx debug hpack-tools jemalloc libressl static-libs test +threads utils xml" + +RESTRICT="!test? ( test )" + +SSL_DEPEND=" + !libressl? ( >=dev-libs/openssl-1.0.2:0=[-bindist,${MULTILIB_USEDEP}] ) + libressl? ( dev-libs/libressl:=[${MULTILIB_USEDEP}] ) +" +RDEPEND=" + cxx? ( + ${SSL_DEPEND} + dev-libs/boost:=[${MULTILIB_USEDEP},threads] + ) + hpack-tools? ( >=dev-libs/jansson-2.5 ) + jemalloc? ( dev-libs/jemalloc[${MULTILIB_USEDEP}] ) + utils? ( + ${SSL_DEPEND} + >=dev-libs/libev-4.15[${MULTILIB_USEDEP}] + >=sys-libs/zlib-1.2.3[${MULTILIB_USEDEP}] + net-dns/c-ares:=[${MULTILIB_USEDEP}] + ) + xml? ( >=dev-libs/libxml2-2.7.7:2[${MULTILIB_USEDEP}] )" +DEPEND="${RDEPEND} + test? ( >=dev-util/cunit-2.1[${MULTILIB_USEDEP}] )" +BDEPEND="virtual/pkgconfig" + +src_prepare() { + default + [[ ${PV} == 9999 ]] && eautoreconf +} + +multilib_src_configure() { + local myeconfargs=( + --disable-examples + --disable-failmalloc + --disable-python-bindings + --disable-werror + --without-cython + $(use_enable cxx asio-lib) + $(use_enable debug) + $(multilib_native_use_enable hpack-tools) + $(use_enable static-libs static) + $(use_enable threads) + $(multilib_native_use_enable utils app) + $(multilib_native_use_with jemalloc) + $(multilib_native_use_with xml libxml2) + ) + ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" +} + +multilib_src_install_all() { + if ! use static-libs ; then + find "${ED}"/usr -name '*.la' -delete || die + fi +} diff --git a/sdk_container/src/third_party/portage-stable/net-libs/nghttp2/nghttp2-9999.ebuild b/sdk_container/src/third_party/portage-stable/net-libs/nghttp2/nghttp2-9999.ebuild new file mode 100644 index 0000000000..ad61312be5 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/net-libs/nghttp2/nghttp2-9999.ebuild @@ -0,0 +1,77 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# TODO: Add python support. + +EAPI=7 + +inherit multilib-minimal + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://github.com/nghttp2/nghttp2.git" + inherit autotools git-r3 +else + SRC_URI="https://github.com/nghttp2/nghttp2/releases/download/v${PV}/${P}.tar.xz" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~ppc-macos ~x64-macos ~sparc-solaris ~x64-solaris ~x86-solaris" +fi + +DESCRIPTION="HTTP/2 C Library" +HOMEPAGE="https://nghttp2.org/" + +LICENSE="MIT" +SLOT="0/1.14" # . SONAMEs +IUSE="cxx debug hpack-tools jemalloc libressl static-libs test +threads utils xml" + +RESTRICT="!test? ( test )" + +SSL_DEPEND=" + !libressl? ( >=dev-libs/openssl-1.0.2:0=[-bindist,${MULTILIB_USEDEP}] ) + libressl? ( dev-libs/libressl:=[${MULTILIB_USEDEP}] ) +" +RDEPEND=" + cxx? ( + ${SSL_DEPEND} + dev-libs/boost:=[${MULTILIB_USEDEP},threads] + ) + hpack-tools? ( >=dev-libs/jansson-2.5 ) + jemalloc? ( dev-libs/jemalloc[${MULTILIB_USEDEP}] ) + utils? ( + ${SSL_DEPEND} + >=dev-libs/libev-4.15[${MULTILIB_USEDEP}] + >=sys-libs/zlib-1.2.3[${MULTILIB_USEDEP}] + net-dns/c-ares:=[${MULTILIB_USEDEP}] + ) + xml? ( >=dev-libs/libxml2-2.7.7:2[${MULTILIB_USEDEP}] )" +DEPEND="${RDEPEND} + test? ( >=dev-util/cunit-2.1[${MULTILIB_USEDEP}] )" +BDEPEND="virtual/pkgconfig" + +src_prepare() { + default + [[ ${PV} == 9999 ]] && eautoreconf +} + +multilib_src_configure() { + local myeconfargs=( + --disable-examples + --disable-failmalloc + --disable-python-bindings + --disable-werror + --without-cython + $(use_enable cxx asio-lib) + $(use_enable debug) + $(multilib_native_use_enable hpack-tools) + $(use_enable static-libs static) + $(use_enable threads) + $(multilib_native_use_enable utils app) + $(multilib_native_use_with jemalloc) + $(multilib_native_use_with xml libxml2) + ) + ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" +} + +multilib_src_install_all() { + if ! use static-libs ; then + find "${ED}"/usr -name '*.la' -delete || die + fi +}