commit:     394c0a40c889721c0d8a2ff7c0c2187c09d2e007
Author:     Quentin Retornaz <gentoo <AT> retornaz <DOT> com>
AuthorDate: Wed Jun 23 15:08:30 2021 +0000
Commit:     Quentin Retornaz <gentoo <AT> retornaz <DOT> com>
CommitDate: Wed Jun 23 15:08:30 2021 +0000
URL:        https://gitweb.gentoo.org/repo/proj/libressl.git/commit/?id=394c0a40

app-crypt/mit-krb5: revbump to 1.18.2-r4

Package-Manager: Portage-3.0.20, Repoman-3.0.2
Signed-off-by: Quentin Retornaz <gentoo <AT> retornaz.com>

 .../files/mit-krb5-1.18.2-autoconf-2.70.patch      |  35 +++++
 .../files/mit-krb5-1.18.2-krb5-config.patch        |  15 ++
 app-crypt/mit-krb5/mit-krb5-1.18.2-r4.ebuild       | 168 +++++++++++++++++++++
 3 files changed, 218 insertions(+)

diff --git a/app-crypt/mit-krb5/files/mit-krb5-1.18.2-autoconf-2.70.patch 
b/app-crypt/mit-krb5/files/mit-krb5-1.18.2-autoconf-2.70.patch
new file mode 100644
index 0000000..6741c47
--- /dev/null
+++ b/app-crypt/mit-krb5/files/mit-krb5-1.18.2-autoconf-2.70.patch
@@ -0,0 +1,35 @@
+https://bugs.gentoo.org/778167
+
+From f78edbe30816f049e1360cb6e203fabfdf7b98df Mon Sep 17 00:00:00 2001
+From: Sergei Trofimovich <sly...@gentoo.org>
+Date: Fri, 6 Nov 2020 08:14:57 +0000
+Subject: [PATCH] Fix compatibility with upcoming autoconf 2.70
+
+Mainline autoconf generates no shell code for AC_CONFIG_AUX_DIR().
+Call it unconditionally to avoid a syntax error.
+
+[ghud...@mit.edu: rewrote commit message]
+
+ticket: 8960 (new)
+tags: pullup
+target_version: 1.18-next
+target_version: 1.17-next
+---
+ src/aclocal.m4 | 6 +-----
+ 1 file changed, 1 insertion(+), 5 deletions(-)
+
+--- src/aclocal.m4
++++ src/aclocal.m4
+@@ -13,11 +13,7 @@ fi
+ ac_topdir=$srcdir/$ac_reltopdir
+ ac_config_fragdir=$ac_reltopdir/config
+ # echo "Looking for $srcdir/$ac_config_fragdir"
+-if test -d "$srcdir/$ac_config_fragdir"; then
+-  AC_CONFIG_AUX_DIR(K5_TOPDIR/config)
+-else
+-  AC_MSG_ERROR([can not find config/ directory in $ac_reltopdir])
+-fi
++AC_CONFIG_AUX_DIR(K5_TOPDIR/config)
+ ])dnl
+ dnl
+ dnl Version info.

diff --git a/app-crypt/mit-krb5/files/mit-krb5-1.18.2-krb5-config.patch 
b/app-crypt/mit-krb5/files/mit-krb5-1.18.2-krb5-config.patch
new file mode 100644
index 0000000..ec901ce
--- /dev/null
+++ b/app-crypt/mit-krb5/files/mit-krb5-1.18.2-krb5-config.patch
@@ -0,0 +1,15 @@
+--- a/build-tools/krb5-config.in
++++ b/build-tools/krb5-config.in
+@@ -208,12 +208,6 @@
+ 
+ 
+ if test -n "$do_libs"; then
+-    # Assumes /usr/lib is the standard library directory everywhere...
+-    if test "$libdir" = /usr/lib; then
+-      libdirarg=
+-    else
+-      libdirarg="-L$libdir"
+-    fi
+     # Ugly gross hack for our build tree
+     lib_flags=`echo $CC_LINK | sed -e 's/\$(CC)//' \
+           -e 's/\$(PURE)//' \

diff --git a/app-crypt/mit-krb5/mit-krb5-1.18.2-r4.ebuild 
b/app-crypt/mit-krb5/mit-krb5-1.18.2-r4.ebuild
new file mode 100644
index 0000000..1f88d29
--- /dev/null
+++ b/app-crypt/mit-krb5/mit-krb5-1.18.2-r4.ebuild
@@ -0,0 +1,168 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9} )
+inherit autotools flag-o-matic multilib-minimal python-any-r1 systemd 
toolchain-funcs
+
+MY_P="${P/mit-}"
+P_DIR=$(ver_cut 1-2)
+DESCRIPTION="MIT Kerberos V"
+HOMEPAGE="https://web.mit.edu/kerberos/www/";
+SRC_URI="https://web.mit.edu/kerberos/dist/krb5/${P_DIR}/${MY_P}.tar.gz";
+
+LICENSE="openafs-krb5-a BSD MIT OPENLDAP BSD-2 HPND BSD-4 ISC RSA CC-BY-SA-3.0 
|| ( BSD-2 GPL-2+ )"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86"
+IUSE="cpu_flags_x86_aes doc +keyutils lmdb nls openldap +pkinit selinux 
+threads test xinetd"
+
+# Test suite requires network access
+RESTRICT="test"
+
+DEPEND="
+       !!app-crypt/heimdal
+       >=sys-libs/e2fsprogs-libs-1.42.9[${MULTILIB_USEDEP}]
+       || (
+               >=dev-libs/libverto-0.2.5[libev,${MULTILIB_USEDEP}]
+               >=dev-libs/libverto-0.2.5[libevent,${MULTILIB_USEDEP}]
+       )
+       keyutils? ( >=sys-apps/keyutils-1.5.8:=[${MULTILIB_USEDEP}] )
+       lmdb? ( dev-db/lmdb )
+       nls? ( sys-devel/gettext[${MULTILIB_USEDEP}] )
+       openldap? ( >=net-nds/openldap-2.4.38-r1[${MULTILIB_USEDEP}] )
+       pkinit? (
+               >=dev-libs/openssl-1.0.1h-r2:0=[${MULTILIB_USEDEP}]
+       )
+       xinetd? ( sys-apps/xinetd )
+       "
+BDEPEND="
+       ${PYTHON_DEPS}
+       virtual/yacc
+       cpu_flags_x86_aes? (
+               amd64? ( dev-lang/yasm )
+               x86? ( dev-lang/yasm )
+       )
+       doc? ( virtual/latex-base )
+       test? (
+               ${PYTHON_DEPS}
+               dev-lang/tcl:0
+               dev-util/dejagnu
+               dev-util/cmocka
+       )"
+RDEPEND="${DEPEND}
+       selinux? ( sec-policy/selinux-kerberos )"
+
+S=${WORKDIR}/${MY_P}/src
+
+PATCHES=(
+       "${FILESDIR}/${PN}-1.12_warn_cflags.patch"
+       "${FILESDIR}/${PN}-config_LDFLAGS-r1.patch"
+       "${FILESDIR}/${PN}-1.16.3-libressl-r1.patch"
+       "${FILESDIR}/${PN}_dont_create_run.patch"
+       "${FILESDIR}/${PN}-1.18-libressl.patch"
+       "${FILESDIR}/CVE-2020-28196.patch"
+       "${FILESDIR}/${PN}-1.18.2-krb5-config.patch"
+       "${FILESDIR}/${PN}-1.18.2-autoconf-2.70.patch"
+)
+
+MULTILIB_CHOST_TOOLS=(
+       /usr/bin/krb5-config
+)
+
+src_prepare() {
+       default
+       # Make sure we always use the system copies.
+       rm -rf util/{et,ss,verto}
+       sed -i 's:^[[:space:]]*util/verto$::' configure.ac || die
+
+       eautoreconf
+}
+
+src_configure() {
+       # QA
+       append-flags -fno-strict-aliasing
+       append-flags -fno-strict-overflow
+
+       multilib-minimal_src_configure
+}
+
+multilib_src_configure() {
+       ECONF_SOURCE=${S} \
+       WARN_CFLAGS="set" \
+       econf \
+               $(use_with openldap ldap) \
+               "$(multilib_native_use_with test tcl "${EPREFIX}/usr")" \
+               $(use_enable nls) \
+               $(use_enable pkinit) \
+               $(use_enable threads thread-support) \
+               $(use_with lmdb) \
+               $(use_with keyutils) \
+               --without-hesiod \
+               --enable-shared \
+               --with-system-et \
+               --with-system-ss \
+               --enable-dns-for-realm \
+               --enable-kdc-lookaside-cache \
+               --with-system-verto \
+               --disable-rpath \
+               \
+               AR="$(tc-getAR)"
+}
+
+multilib_src_compile() {
+       emake -j1
+}
+
+multilib_src_test() {
+       multilib_is_native_abi && emake -j1 check
+}
+
+multilib_src_install() {
+       emake \
+               DESTDIR="${D}" \
+               EXAMPLEDIR="${EPREFIX}/usr/share/doc/${PF}/examples" \
+               install
+}
+
+multilib_src_install_all() {
+       # default database dir
+       keepdir /var/lib/krb5kdc
+
+       cd ..
+       dodoc README
+
+       if use doc; then
+               dodoc -r doc/html
+               docinto pdf
+               dodoc doc/pdf/*.pdf
+       fi
+
+       newinitd "${FILESDIR}"/mit-krb5kadmind.initd-r2 mit-krb5kadmind
+       newinitd "${FILESDIR}"/mit-krb5kdc.initd-r2 mit-krb5kdc
+       newinitd "${FILESDIR}"/mit-krb5kpropd.initd-r2 mit-krb5kpropd
+       newconfd "${FILESDIR}"/mit-krb5kadmind.confd mit-krb5kadmind
+       newconfd "${FILESDIR}"/mit-krb5kdc.confd mit-krb5kdc
+       newconfd "${FILESDIR}"/mit-krb5kpropd.confd mit-krb5kpropd
+
+       systemd_newunit "${FILESDIR}"/mit-krb5kadmind.service 
mit-krb5kadmind.service
+       systemd_newunit "${FILESDIR}"/mit-krb5kdc.service mit-krb5kdc.service
+       systemd_newunit "${FILESDIR}"/mit-krb5kpropd.service 
mit-krb5kpropd.service
+       systemd_newunit "${FILESDIR}"/mit-krb5kpropd_at.service 
"mit-krb5kpropd@.service"
+       systemd_newunit "${FILESDIR}"/mit-krb5kpropd.socket 
mit-krb5kpropd.socket
+
+       insinto /etc
+       newins "${ED}/usr/share/doc/${PF}/examples/krb5.conf" krb5.conf.example
+       insinto /var/lib/krb5kdc
+       newins "${ED}/usr/share/doc/${PF}/examples/kdc.conf" kdc.conf.example
+
+       if use openldap ; then
+               insinto /etc/openldap/schema
+               doins "${S}/plugins/kdb/ldap/libkdb_ldap/kerberos.schema"
+       fi
+
+       if use xinetd ; then
+               insinto /etc/xinetd.d
+               newins "${FILESDIR}/kpropd.xinetd" kpropd
+       fi
+}

Reply via email to