mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-08-06 00:48:18 -07:00
@@ -12,3 +12,5 @@ DIST gnutls-3.8.6.tar.xz 6517476 BLAKE2B 58910e252231c02cfaa1183b38f3127f61aa991
|
||||
DIST gnutls-3.8.6.tar.xz.sig 119 BLAKE2B 044d0e31a5fa402daa73e88ce140f57e30cb143324c7cce1515a3bc6c444fe2f1fa2dd954dec69de09c7b4726766e17ec05410bbbbcf5b35dda1cb0f6452a0a5 SHA512 3f9552cdf5fa96184fbe394dd484fb55e6a3577d1e048aea373b82cda335ea0f174f2fb11926dc58532c1f950cd10a6a35bc36e9fe813a1259eae5c5364920b2
|
||||
DIST gnutls-3.8.7.1.tar.xz 6695404 BLAKE2B 43334190ce1e45c5302b195f17d06e767d1bea7376278bfbc6ff181a2f57423ba5f334c00ae1833938c7a7a8d15cf607ac862e57435a756ccfa98527d469fd3a SHA512 429cea78e227d838105791b28a18270c3d2418bfb951c322771e6323d5f712204d63d66a6606ce9604a92d236a8dd07d651232c717264472d27eb6de26ddc733
|
||||
DIST gnutls-3.8.7.1.tar.xz.sig 580 BLAKE2B ca627d7b3f089205c94f556bee9c06428ada9e0116bb50486dc7dd70f611ae744416d96b17452749d102ccd16bf7b400577b1886a7c8be55833c9e2fde85f9ae SHA512 53ebdaa9775ae22f7eb5e7d6f5411ec667c9c880cea84e23651b6d1994fb1398c09d8efa39b21c96f8be29fa09c2436bdd732a061308956ca1650e3e1878ed57
|
||||
DIST gnutls-3.8.8.tar.xz 6696460 BLAKE2B d1498b0b9f14789599fd5b984d5370b632611f2702e9f4fc504ddba2a3e0dd4137bec858eb6150d031f9f50e6b3a3a7d905864f0a9f50a1f01e5ea8f37a44ba8 SHA512 4f617c63e8e8392e400d72c9e39989fcd782268b4a4c4e36bbfb0444a4b5bcb0f53054f04a6dce99ab89c0f38f57430c95aaaec6eb9209b8e9329140abf230c3
|
||||
DIST gnutls-3.8.8.tar.xz.sig 580 BLAKE2B 11a30f09e3a478615df2c6a0e40c0b9b2aad5794a82ae0cc871fcf3699b5d9725c9d04708c6f0b983da6e21f90a81f7550e723d0d04f97d1a16d526efbe91b1e SHA512 fdff792511e9e5de203a1dfd66bf521c12fb74a19de651ffa1f7359dafdd1dad59ae57d0f95fa363c4167f798e6b624b4ae1f84d4e0737ff690c2fb0e5a5bdce
|
||||
|
||||
163
net-libs/gnutls/gnutls-3.8.8.ebuild
Normal file
163
net-libs/gnutls/gnutls-3.8.8.ebuild
Normal file
@@ -0,0 +1,163 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/gnutls.asc
|
||||
inherit autotools multilib-minimal verify-sig
|
||||
|
||||
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 )"
|
||||
if [[ ${PV} == 3.8.7.1 ]] ; then
|
||||
# Workaround for botched dist tarball
|
||||
S="${WORKDIR}"/gnutls-3.8.7
|
||||
fi
|
||||
|
||||
LICENSE="GPL-3 LGPL-2.1+"
|
||||
# As of 3.8.0, the C++ library is header-only, but we won't drop the subslot
|
||||
# component for it until libgnutls.so breaks ABI, to avoid pointless rebuilds.
|
||||
# Subslot format:
|
||||
# <libgnutls.so number>.<libgnutlsxx.so number>
|
||||
SLOT="0/30.30"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
IUSE="brotli +cxx dane doc examples +idn nls +openssl pkcs11 seccomp sslv2 sslv3 static-libs test test-full +tls-heartbeat tools zlib zstd"
|
||||
REQUIRED_USE="test-full? ( cxx dane doc examples idn nls openssl pkcs11 seccomp tls-heartbeat tools )"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
# >=nettle-3.10 as a workaround for bug #936011
|
||||
RDEPEND="
|
||||
>=dev-libs/libtasn1-4.9:=[${MULTILIB_USEDEP}]
|
||||
dev-libs/libunistring:=[${MULTILIB_USEDEP}]
|
||||
>=dev-libs/nettle-3.10:=[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}] )
|
||||
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-build/gtk-doc-am
|
||||
>=virtual/pkgconfig-0-r1
|
||||
doc? ( dev-util/gtk-doc )
|
||||
nls? ( sys-devel/gettext )
|
||||
test-full? (
|
||||
app-crypt/dieharder
|
||||
|| ( sys-libs/libfaketime >=app-misc/datefudge-1.22 )
|
||||
dev-libs/softhsm:2[-bindist(-)]
|
||||
net-dialup/ppp
|
||||
net-misc/socat
|
||||
)
|
||||
verify-sig? ( >=sec-keys/openpgp-keys-gnutls-20240415 )
|
||||
"
|
||||
|
||||
DOCS=( README.md doc/certtool.cfg )
|
||||
|
||||
HTML_DOCS=()
|
||||
|
||||
QA_CONFIG_IMPL_DECL_SKIP=(
|
||||
# gnulib FPs
|
||||
MIN
|
||||
alignof
|
||||
static_assert
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
# bug #520818
|
||||
export TZ=UTC
|
||||
|
||||
use doc && HTML_DOCS+=( doc/gnutls.html )
|
||||
|
||||
# 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
|
||||
|
||||
# Switch back to elibtoolize after 3.8.7.1
|
||||
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 )
|
||||
|
||||
# -fanalyzer substantially slows down the build and isn't useful for
|
||||
# us. It's useful for upstream as it's static analysis, but it's not
|
||||
# useful when just getting something built.
|
||||
export gl_cv_warn_c__fanalyzer=no
|
||||
|
||||
local myeconfargs=(
|
||||
--disable-valgrind-tests
|
||||
$(multilib_native_enable manpages)
|
||||
$(multilib_native_use_enable doc gtk-doc)
|
||||
$(multilib_native_use_enable doc)
|
||||
$(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)
|
||||
$(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[@]}"
|
||||
|
||||
if [[ ${CHOST} == *-solaris* ]] ; then
|
||||
# gnulib ends up defining its own pthread_mutexattr_gettype
|
||||
# otherwise, which is causing versioning problems
|
||||
echo "#define PTHREAD_IN_USE_DETECTION_HARD 1" >> config.h || die
|
||||
fi
|
||||
}
|
||||
|
||||
multilib_src_install_all() {
|
||||
einstalldocs
|
||||
find "${ED}" -type f -name '*.la' -delete || die
|
||||
|
||||
if use examples; then
|
||||
docinto examples
|
||||
dodoc doc/examples/*.c
|
||||
fi
|
||||
}
|
||||
Reference in New Issue
Block a user