From 4cbcc855382a06088e2f016f62cafdbcb7e40665 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sun, 20 Mar 2022 00:40:44 +0000 Subject: gentoo resync : 20.03.2022 --- net-libs/gnutls/Manifest | 7 +- .../files/gnutls-3.7.4-configure-compression.patch | 63 ++++++++ net-libs/gnutls/gnutls-3.7.3-r1.ebuild | 126 ++++++++++++++++ net-libs/gnutls/gnutls-3.7.3.ebuild | 127 ---------------- net-libs/gnutls/gnutls-3.7.4.ebuild | 159 +++++++++++++++++++++ net-libs/gnutls/metadata.xml | 3 + 6 files changed, 356 insertions(+), 129 deletions(-) create mode 100644 net-libs/gnutls/files/gnutls-3.7.4-configure-compression.patch create mode 100644 net-libs/gnutls/gnutls-3.7.3-r1.ebuild delete mode 100644 net-libs/gnutls/gnutls-3.7.3.ebuild create mode 100644 net-libs/gnutls/gnutls-3.7.4.ebuild (limited to 'net-libs/gnutls') diff --git a/net-libs/gnutls/Manifest b/net-libs/gnutls/Manifest index 5d8f1afd6919..52e5f06f596f 100644 --- a/net-libs/gnutls/Manifest +++ b/net-libs/gnutls/Manifest @@ -1,5 +1,8 @@ +AUX gnutls-3.7.4-configure-compression.patch 2329 BLAKE2B f013a14ec2c7aba5cb44e2701a6b38dbb4d74cacd2cf11170309a46ca3ae293856fe0e24d94482f07a0c7eb944597af1a99874143703f4fbf513d86be6ed4a54 SHA512 4ddca96da259f79032538bcd673bd4b59c23737c227b245974423ee12a91969c2c9151432b43302378e5b136cf00891e52f6f8806494d0da51a512569706f732 DIST gnutls-3.7.2.tar.xz 6091508 BLAKE2B f408ff65f2e08cf294b449dfac64a272a8ba40e987618960f57ee36c167a25974711ab8d11bdbd6335fbf18ac902a79b5c6b40bb6a37f4ee07549832d0611df2 SHA512 5d01d561a05379da71e4847e30ba13c2abe09f7a5c4359fd539d8bd19abad0ce87120f82ee7b6264e787bd3edbc5ae16beffa892983cbc3d59f11a1811c10329 DIST gnutls-3.7.3.tar.xz 6119292 BLAKE2B 811e6fbb62fbd35fa63e66cfcbfc3bf899cea5cece1d2a68bc650f507df0f7be9f59c707c90fa19b7ef5a52455a663da49682704e0884af06075c566afbfc0bf SHA512 3ace744affe23e284342658d6d2d2de49dd50065489cbc8be18fc7d38187253e5268ca54027ce5cd517056c249ac039a7481e4548cec04325de37ae85617d077 +DIST gnutls-3.7.4.tar.xz 6131772 BLAKE2B 1c44528952275f48e4e458558c4e03c5b90dfb267482d6815f6c836f9530abb486a23ae5ea70ba2db7e272eee8e2066b259374f02a9bb9e714487466fd5994c9 SHA512 38b488ca1223d9aa8fc25756df08db6f29aaf76fb5816fdeaa14bd89fb431a2e1c495fefc64094f726337d5b89e198146ec7dc22e9a1bca6841a9d881b0d99e6 EBUILD gnutls-3.7.2.ebuild 4235 BLAKE2B 262daac5098ec971880045c668f61e138a2838f3e5b2e18e150bc1917de96b768cbd2716b9585893aa96737f3def5e78c3925a11ca0bffc438ea0ea008b6b70a SHA512 1f5a728084f2bf7bd634a96243b279ca29c88bfd2c51bff13767f158e9168a9f84419eb1270edcd18de0479451e1e59723a329f141c9bf25f7b8cfe7693611f6 -EBUILD gnutls-3.7.3.ebuild 3950 BLAKE2B 2a23f19c8de102103096c3744a64d2d9c8dcd7c13a530525ab1dfeeee539572cce4b8f7cec1d4075ad06078011bb84ccc29829fb70e1779cce0aa70a291e4cb0 SHA512 9787262af694cc8a61f0f27d7142ccf07c483b0aee1b9fc53e1bc6043741a9cc910ef5f6eb90cd54d76003fb9793da65c69fc4aad61778a561c7e0e38f7a1914 -MISC metadata.xml 1259 BLAKE2B c268a1e19fbfe5c046eb378ec704b078073df107f3b2df4f1dcc9b09697b7dcca635b86e22a0835f7c700ebd79acd5668aec4cd8fc82d9f235a514bea97eb31b SHA512 55d832a6a691eca628f00d62530b58265a9f17ae2a33de41379b0ca4286132e4e369fbaab655cedff1fde76f68dc0748919c729c07e3f6ecbf0496984a70c32d +EBUILD gnutls-3.7.3-r1.ebuild 3960 BLAKE2B 234b7fe6d1020cb46c470f44a581379bbb0f4b3b0226400c29c1ee8364247a7a3db1bb49ec4f888293b371eb74208d8a3bfd84242a8c9ea85a7afd4d4fca41aa SHA512 ac7f84c334d4117328013ea644717614f0b84d759cfdb7b9d901e6bf55fa46bf98b9b19231a224cdcf0747aa07b17925125dd7cd3bbc2d8e5fab23459da36c3f +EBUILD gnutls-3.7.4.ebuild 5349 BLAKE2B 60b017a242fcfac1512d900215501afad2e22b735f4550e2e988742637495fb15e5b47d33e2c95f1e5b6fe3ac6285a768ac94a5b67327dc4ddee4c8b7bcfb903 SHA512 0892a8aeac860d98e2271fb5d8394faac57cbc01ea0f3edecd05212a1d3a6482b1f08794df5f379e35898ae8cc32a8abb5935b0acd43b1316601f06c781969e2 +MISC metadata.xml 1369 BLAKE2B 586c5d851b4188a27db257e76ac6676e4f90b932e719f12be0d02c891cd943108a1747cfb572c56bad2489b8dbbe40c5ca6aa72d704e3d4445dad7419e0944ff SHA512 4bc3e4f0e896f75ef489922c9e3d7e43e485fa3b8498c5fe393c28f88c3754b116d5bdb152163cc987c28e168a3b5b9a7213990053e4ba9c80686f71aa655fc5 diff --git a/net-libs/gnutls/files/gnutls-3.7.4-configure-compression.patch b/net-libs/gnutls/files/gnutls-3.7.4-configure-compression.patch new file mode 100644 index 000000000000..edd688d9b58a --- /dev/null +++ b/net-libs/gnutls/files/gnutls-3.7.4-configure-compression.patch @@ -0,0 +1,63 @@ +https://gitlab.com/gnutls/gnutls/-/merge_requests/1557 + +From: Sam James +Date: Fri, 18 Mar 2022 05:40:28 +0000 +Subject: [PATCH 1/2] configure.ac: fix brotli/zstd configure argument name + +The old `./configure` arguments for brotli and zstd respectively +were inconsistent with the `./configure --help` output. + +Old: --without-libbrotli --without-libzstd (also --with-*) +New: --without-brotli --without-zstd (also --with-*) + +Fixes: https://gitlab.com/gnutls/gnutls/-/issues/1342 +Signed-off-by: Sam James +--- a/configure.ac ++++ b/configure.ac +@@ -1010,7 +1010,7 @@ if test x$ac_zlib != xno; then + fi + AC_SUBST(LIBZ_PC) + +-AC_ARG_WITH(libbrotli, ++AC_ARG_WITH(brotli, + AS_HELP_STRING([--without-brotli], [disable brotli compression support]), + ac_brotli=$withval, ac_brotli=yes) + AC_MSG_CHECKING([whether to include brotli compression support]) +@@ -1033,7 +1033,7 @@ else + fi + AM_CONDITIONAL(HAVE_LIBBROTLI, test "$with_libbrotlienc" != "no" && test "$with_libbrotlidec" != "no") + +-AC_ARG_WITH(libzstd, ++AC_ARG_WITH(zstd, + AS_HELP_STRING([--without-zstd], [disable zstd compression support]), + ac_zstd=$withval, ac_zstd=yes) + AC_MSG_CHECKING([whether to include zstd compression support]) +GitLab + +From: Sam James +Date: Fri, 18 Mar 2022 05:51:29 +0000 +Subject: [PATCH 2/2] configure.ac: fix zstd detection + +Fixes typo in zstd detection. + +None of the used autoconf macros will define `has_zstd_h` so +configure will (AFAICT) always fail to find zstd, even if it succeeded +via pkg-config moments before. + +Drop it and rely solely on pkg-config as that's the only search +we're actually doing. + +Fixes: https://gitlab.com/gnutls/gnutls/-/issues/1343 +Signed-off-by: Sam James +--- a/configure.ac ++++ b/configure.ac +@@ -1040,7 +1040,7 @@ AC_MSG_CHECKING([whether to include zstd compression support]) + if test x$ac_zstd != xno; then + AC_MSG_RESULT(yes) + PKG_CHECK_MODULES(LIBZSTD, [libzstd >= 1.3.0], [with_libzstd=yes], [with_libzstd=no]) +- if test "${with_libzstd}" = "yes" && test "${has_zstd_h}" = "yes"; then ++ if test "${with_libzstd}" = "yes"; then + AC_DEFINE([HAVE_LIBZSTD], 1, [Define if ZSTD compression is enabled.]) + if test "x$GNUTLS_REQUIRES_PRIVATE" = "x"; then + GNUTLS_REQUIRES_PRIVATE="Requires.private: libzstd" +GitLab diff --git a/net-libs/gnutls/gnutls-3.7.3-r1.ebuild b/net-libs/gnutls/gnutls-3.7.3-r1.ebuild new file mode 100644 index 000000000000..5f98acdc7e4e --- /dev/null +++ b/net-libs/gnutls/gnutls-3.7.3-r1.ebuild @@ -0,0 +1,126 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit libtool multilib-minimal + +DESCRIPTION="A secure communications library implementing the SSL, TLS and DTLS protocols" +HOMEPAGE="https://www.gnutls.org/" +SRC_URI="mirror://gnupg/gnutls/v$(ver_cut 1-2)/${P}.tar.xz" + +LICENSE="GPL-3 LGPL-2.1+" +SLOT="0/30" # libgnutls.so number +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="+cxx dane doc examples guile +idn nls +openssl pkcs11 seccomp sslv2 sslv3 static-libs test test-full +tls-heartbeat tools valgrind" + +REQUIRED_USE="test-full? ( cxx dane doc examples guile idn nls openssl pkcs11 seccomp tls-heartbeat tools )" +RESTRICT="!test? ( test )" + +RDEPEND=">=dev-libs/libtasn1-4.9:=[${MULTILIB_USEDEP}] + dev-libs/libunistring:=[${MULTILIB_USEDEP}] + >=dev-libs/nettle-3.6:=[gmp,${MULTILIB_USEDEP}] + >=dev-libs/gmp-5.1.3-r1:=[${MULTILIB_USEDEP}] + dane? ( >=net-dns/unbound-1.4.20:=[${MULTILIB_USEDEP}] ) + guile? ( >=dev-scheme/guile-2:=[networking] ) + nls? ( >=virtual/libintl-0-r1:=[${MULTILIB_USEDEP}] ) + pkcs11? ( >=app-crypt/p11-kit-0.23.1:=[${MULTILIB_USEDEP}] ) + idn? ( >=net-dns/libidn2-0.16-r1:=[${MULTILIB_USEDEP}] )" +DEPEND="${RDEPEND} + test? ( + seccomp? ( sys-libs/libseccomp ) + )" +BDEPEND=">=virtual/pkgconfig-0-r1 + doc? ( dev-util/gtk-doc ) + nls? ( sys-devel/gettext ) + valgrind? ( dev-util/valgrind ) + test-full? ( + app-crypt/dieharder + >=app-misc/datefudge-1.22 + dev-libs/softhsm:2[-bindist(-)] + net-dialup/ppp + net-misc/socat + )" + +DOCS=( README.md doc/certtool.cfg ) + +HTML_DOCS=() + +pkg_setup() { + # bug #520818 + export TZ=UTC + + use doc && HTML_DOCS+=( + doc/gnutls.html + ) +} + +src_prepare() { + default + + # don't try to use system certificate store on macOS, it is + # confusingly ignoring our ca-certificates and more importantly + # fails to compile in certain configurations + sed -i -e 's/__APPLE__/__NO_APPLE__/' lib/system/certs.c || die + + # Use sane .so versioning on FreeBSD. + elibtoolize +} + +multilib_src_configure() { + LINGUAS="${LINGUAS//en/en@boldquot en@quot}" + + local libconf=() + + # TPM needs to be tested before being enabled + libconf+=( + --without-tpm + --without-tpm2 + ) + + # hardware-accel is disabled on OSX because the asm files force + # GNU-stack (as doesn't support that) and when that's removed ld + # complains about duplicate symbols + [[ ${CHOST} == *-darwin* ]] && libconf+=( --disable-hardware-acceleration ) + + # Cygwin as does not understand these asm files at all + [[ ${CHOST} == *-cygwin* ]] && libconf+=( --disable-hardware-acceleration ) + + local myeconfargs=( + $(multilib_native_enable manpages) + $(multilib_native_use_enable doc gtk-doc) + $(multilib_native_use_enable doc) + $(multilib_native_use_enable guile) + $(multilib_native_use_enable seccomp seccomp-tests) + $(multilib_native_use_enable test tests) + $(multilib_native_use_enable test-full full-test-suite) + $(multilib_native_use_enable tools) + $(multilib_native_use_enable valgrind valgrind-tests) + $(use_enable cxx) + $(use_enable dane libdane) + $(use_enable nls) + $(use_enable openssl openssl-compatibility) + $(use_enable sslv2 ssl2-support) + $(use_enable sslv3 ssl3-support) + $(use_enable static-libs static) + $(use_enable tls-heartbeat heartbeat-support) + $(use_with idn) + $(use_with pkcs11 p11-kit) + --disable-rpath + --with-default-trust-store-file="${EPREFIX}"/etc/ssl/certs/ca-certificates.crt + --with-unbound-root-key-file="${EPREFIX}"/etc/dnssec/root-anchors.txt + --without-included-libtasn1 + $("${S}/configure" --help | grep -o -- '--without-.*-prefix') + ) + ECONF_SOURCE="${S}" econf "${libconf[@]}" "${myeconfargs[@]}" +} + +multilib_src_install_all() { + einstalldocs + find "${ED}" -type f -name '*.la' -delete || die + + if use examples; then + docinto examples + dodoc doc/examples/*.c + fi +} diff --git a/net-libs/gnutls/gnutls-3.7.3.ebuild b/net-libs/gnutls/gnutls-3.7.3.ebuild deleted file mode 100644 index e4b947e00983..000000000000 --- a/net-libs/gnutls/gnutls-3.7.3.ebuild +++ /dev/null @@ -1,127 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit libtool multilib-minimal - -DESCRIPTION="A secure communications library implementing the SSL, TLS and DTLS protocols" -HOMEPAGE="https://www.gnutls.org/" -SRC_URI="mirror://gnupg/gnutls/v$(ver_cut 1-2)/${P}.tar.xz" - -LICENSE="GPL-3 LGPL-2.1+" -SLOT="0/30" # libgnutls.so number -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="+cxx dane doc examples guile +idn nls +openssl pkcs11 seccomp sslv2 sslv3 static-libs test test-full +tls-heartbeat tools valgrind" - -REQUIRED_USE=" - test-full? ( cxx dane doc examples guile idn nls openssl pkcs11 seccomp tls-heartbeat tools )" -RESTRICT="!test? ( test )" - -RDEPEND=">=dev-libs/libtasn1-4.9:=[${MULTILIB_USEDEP}] - dev-libs/libunistring:=[${MULTILIB_USEDEP}] - >=dev-libs/nettle-3.6:=[gmp,${MULTILIB_USEDEP}] - >=dev-libs/gmp-5.1.3-r1:=[${MULTILIB_USEDEP}] - dane? ( >=net-dns/unbound-1.4.20:=[${MULTILIB_USEDEP}] ) - guile? ( >=dev-scheme/guile-2:=[networking] ) - nls? ( >=virtual/libintl-0-r1:=[${MULTILIB_USEDEP}] ) - pkcs11? ( >=app-crypt/p11-kit-0.23.1:=[${MULTILIB_USEDEP}] ) - idn? ( >=net-dns/libidn2-0.16-r1:=[${MULTILIB_USEDEP}] )" -DEPEND="${RDEPEND} - test? ( - seccomp? ( sys-libs/libseccomp ) - )" -BDEPEND=">=virtual/pkgconfig-0-r1 - doc? ( dev-util/gtk-doc ) - nls? ( sys-devel/gettext ) - valgrind? ( dev-util/valgrind ) - test-full? ( - app-crypt/dieharder - >=app-misc/datefudge-1.22 - dev-libs/softhsm:2[-bindist(-)] - net-dialup/ppp - net-misc/socat - )" - -DOCS=( - README.md - doc/certtool.cfg -) - -HTML_DOCS=() - -pkg_setup() { - # bug #520818 - export TZ=UTC - - use doc && HTML_DOCS+=( - doc/gnutls.html - ) -} - -src_prepare() { - default - - # don't try to use system certificate store on macOS, it is - # confusingly ignoring our ca-certificates and more importantly - # fails to compile in certain configurations - sed -i -e 's/__APPLE__/__NO_APPLE__/' lib/system/certs.c || die - - # Use sane .so versioning on FreeBSD. - elibtoolize -} - -multilib_src_configure() { - LINGUAS="${LINGUAS//en/en@boldquot en@quot}" - - local libconf=() - - # TPM needs to be tested before being enabled - libconf+=( --without-tpm ) - - # hardware-accell is disabled on OSX because the asm files force - # GNU-stack (as doesn't support that) and when that's removed ld - # complains about duplicate symbols - [[ ${CHOST} == *-darwin* ]] && libconf+=( --disable-hardware-acceleration ) - - # Cygwin as does not understand these asm files at all - [[ ${CHOST} == *-cygwin* ]] && libconf+=( --disable-hardware-acceleration ) - - local myeconfargs=( - $(multilib_native_enable manpages) - $(multilib_native_use_enable doc gtk-doc) - $(multilib_native_use_enable doc) - $(multilib_native_use_enable guile) - $(multilib_native_use_enable seccomp seccomp-tests) - $(multilib_native_use_enable test tests) - $(multilib_native_use_enable test-full full-test-suite) - $(multilib_native_use_enable tools) - $(multilib_native_use_enable valgrind valgrind-tests) - $(use_enable cxx) - $(use_enable dane libdane) - $(use_enable nls) - $(use_enable openssl openssl-compatibility) - $(use_enable sslv2 ssl2-support) - $(use_enable sslv3 ssl3-support) - $(use_enable static-libs static) - $(use_enable tls-heartbeat heartbeat-support) - $(use_with idn) - $(use_with pkcs11 p11-kit) - --disable-rpath - --with-default-trust-store-file="${EPREFIX}/etc/ssl/certs/ca-certificates.crt" - --with-unbound-root-key-file="${EPREFIX}/etc/dnssec/root-anchors.txt" - --without-included-libtasn1 - $("${S}/configure" --help | grep -o -- '--without-.*-prefix') - ) - ECONF_SOURCE="${S}" econf "${libconf[@]}" "${myeconfargs[@]}" -} - -multilib_src_install_all() { - einstalldocs - find "${ED}" -type f -name '*.la' -delete || die - - if use examples; then - docinto examples - dodoc doc/examples/*.c - fi -} diff --git a/net-libs/gnutls/gnutls-3.7.4.ebuild b/net-libs/gnutls/gnutls-3.7.4.ebuild new file mode 100644 index 000000000000..da1e22472d7f --- /dev/null +++ b/net-libs/gnutls/gnutls-3.7.4.ebuild @@ -0,0 +1,159 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +# 3.7.4 has an additional signature from a non-listed maintainer on gnutls.org +# and verify-sig.eclass dies on it. It does have a legitimate signature from +# a listed maintainer though, it's just that the eclass dislikes an extra signature +# from someone it doesn't recognise. +# https://gitlab.com/gnutls/web-pages/-/issues/3 +#VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/gnutls.asc + +inherit autotools multilib-minimal + +DESCRIPTION="A secure communications library implementing the SSL, TLS and DTLS protocols" +HOMEPAGE="https://www.gnutls.org/" +SRC_URI="mirror://gnupg/gnutls/v$(ver_cut 1-2)/${P}.tar.xz" +#SRC_URI+=" verify-sig? ( mirror://gnupg/gnutls/v$(ver_cut 1-2)/${P}.tar.xz.sig )" + +LICENSE="GPL-3 LGPL-2.1+" +SLOT="0/30" # libgnutls.so number +# Drop keywords while figuring out what to do (if anything) about USE=cxx ABI break +# https://gitlab.com/gnutls/gnutls/-/commit/f746f7d4be0070395834bef8e7f7b6f9c8d3158b +#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="brotli +cxx dane doc examples guile +idn nls +openssl pkcs11 seccomp sslv2 sslv3 static-libs test test-full +tls-heartbeat tools valgrind zlib zstd" + +REQUIRED_USE="test-full? ( cxx dane doc examples guile idn nls openssl pkcs11 seccomp tls-heartbeat tools )" +RESTRICT="!test? ( test )" + +RDEPEND=">=dev-libs/libtasn1-4.9:=[${MULTILIB_USEDEP}] + dev-libs/libunistring:=[${MULTILIB_USEDEP}] + >=dev-libs/nettle-3.6:=[gmp,${MULTILIB_USEDEP}] + >=dev-libs/gmp-5.1.3-r1:=[${MULTILIB_USEDEP}] + brotli? ( >=app-arch/brotli-1.0.0:=[${MULTILIB_USEDEP}] ) + dane? ( >=net-dns/unbound-1.4.20:=[${MULTILIB_USEDEP}] ) + guile? ( >=dev-scheme/guile-2:=[networking] ) + nls? ( >=virtual/libintl-0-r1:=[${MULTILIB_USEDEP}] ) + pkcs11? ( >=app-crypt/p11-kit-0.23.1[${MULTILIB_USEDEP}] ) + idn? ( >=net-dns/libidn2-0.16-r1:=[${MULTILIB_USEDEP}] ) + zlib? ( sys-libs/zlib[${MULTILIB_USEDEP}] ) + zstd? ( >=app-arch/zstd-1.3.0:=[${MULTILIB_USEDEP}] )" +DEPEND="${RDEPEND} + test? ( + seccomp? ( sys-libs/libseccomp ) + )" +BDEPEND=" + dev-util/gtk-doc-am + >=virtual/pkgconfig-0-r1 + doc? ( dev-util/gtk-doc ) + nls? ( sys-devel/gettext ) + valgrind? ( dev-util/valgrind ) + test-full? ( + app-crypt/dieharder + >=app-misc/datefudge-1.22 + dev-libs/softhsm:2[-bindist(-)] + net-dialup/ppp + net-misc/socat + )" +# verify-sig? ( sec-keys/openpgp-keys-gnutls )" + +DOCS=( README.md doc/certtool.cfg ) + +HTML_DOCS=() + +PATCHES=( + "${FILESDIR}"/${P}-configure-compression.patch +) + +pkg_setup() { + # bug #520818 + export TZ=UTC + + use doc && HTML_DOCS+=( + doc/gnutls.html + ) +} + +src_prepare() { + default + + # don't try to use system certificate store on macOS, it is + # confusingly ignoring our ca-certificates and more importantly + # fails to compile in certain configurations + sed -i -e 's/__APPLE__/__NO_APPLE__/' lib/system/certs.c || die + + # Use sane .so versioning on FreeBSD. + #elibtoolize + + # Need eautoreconf for: + # 1) gtk-doc macro fix + # (once fixed, we can drop unconditional gtk-doc-am BDEPEND too) + # see https://gitlab.com/gnutls/gnutls/-/issues/1341 + # + # 2) configure fixes for brotli, zstd + # see https://gitlab.com/gnutls/gnutls/-/issues/1343 + eautoreconf +} + +multilib_src_configure() { + LINGUAS="${LINGUAS//en/en@boldquot en@quot}" + + local libconf=() + + # TPM needs to be tested before being enabled + # Note that this may add a libltdl dep when enabled. Check configure.ac. + libconf+=( + --without-tpm + --without-tpm2 + ) + + # hardware-accel is disabled on OSX because the asm files force + # GNU-stack (as doesn't support that) and when that's removed ld + # complains about duplicate symbols + [[ ${CHOST} == *-darwin* ]] && libconf+=( --disable-hardware-acceleration ) + + # Cygwin as does not understand these asm files at all + [[ ${CHOST} == *-cygwin* ]] && libconf+=( --disable-hardware-acceleration ) + + local myeconfargs=( + $(multilib_native_enable manpages) + $(multilib_native_use_enable doc gtk-doc) + $(multilib_native_use_enable doc) + $(multilib_native_use_enable guile) + $(multilib_native_use_enable seccomp seccomp-tests) + $(multilib_native_use_enable test tests) + $(multilib_native_use_enable test-full full-test-suite) + $(multilib_native_use_enable tools) + $(multilib_native_use_enable valgrind valgrind-tests) + $(use_enable cxx) + $(use_enable dane libdane) + $(use_enable nls) + $(use_enable openssl openssl-compatibility) + $(use_enable sslv2 ssl2-support) + $(use_enable sslv3 ssl3-support) + $(use_enable static-libs static) + $(use_enable tls-heartbeat heartbeat-support) + $(use_with brotli) + $(use_with idn) + $(use_with pkcs11 p11-kit) + $(use_with zlib) + $(use_with zstd) + --disable-rpath + --with-default-trust-store-file="${EPREFIX}"/etc/ssl/certs/ca-certificates.crt + --with-unbound-root-key-file="${EPREFIX}"/etc/dnssec/root-anchors.txt + --without-included-libtasn1 + $("${S}/configure" --help | grep -o -- '--without-.*-prefix') + ) + ECONF_SOURCE="${S}" econf "${libconf[@]}" "${myeconfargs[@]}" +} + +multilib_src_install_all() { + einstalldocs + find "${ED}" -type f -name '*.la' -delete || die + + if use examples; then + docinto examples + dodoc doc/examples/*.c + fi +} diff --git a/net-libs/gnutls/metadata.xml b/net-libs/gnutls/metadata.xml index de9a58df59b6..8f171c8ee7fc 100644 --- a/net-libs/gnutls/metadata.xml +++ b/net-libs/gnutls/metadata.xml @@ -5,6 +5,9 @@ base-system@gentoo.org + + Enable brotli decompression support via app-arch/brotli + Build libgnutls-dane, implementing DNS-based Authentication of Named Entities. Requires net-dns/unbound -- cgit v1.2.3