summaryrefslogtreecommitdiff
path: root/app-crypt/mit-krb5
diff options
context:
space:
mode:
Diffstat (limited to 'app-crypt/mit-krb5')
-rw-r--r--app-crypt/mit-krb5/Manifest1
-rw-r--r--app-crypt/mit-krb5/mit-krb5-1.18.2-r1.ebuild167
2 files changed, 168 insertions, 0 deletions
diff --git a/app-crypt/mit-krb5/Manifest b/app-crypt/mit-krb5/Manifest
index b73a3388a1e0..499ea2257d2c 100644
--- a/app-crypt/mit-krb5/Manifest
+++ b/app-crypt/mit-krb5/Manifest
@@ -23,6 +23,7 @@ DIST krb5-1.18.tar.gz 8706395 BLAKE2B d2b700c2f869733a7fc9ac735ec27e3973868efcf6
EBUILD mit-krb5-1.17-r1.ebuild 4312 BLAKE2B 2ddf3073cc5e7c8f5e811a065a9d1ba7d55defcded9800090b32c31bc591d37d720ee1efbef20fe92605bbda2eb5ee938af6e5277bef1bdc24e498994577c19e SHA512 1818e9165f0d0f3afb60579351ff723aa9e8d6705fae6a52c921c71de3e89922c714b7e15432f98e7ffb789d79c7458599b39bf5b44dd947a813e0b566c23986
EBUILD mit-krb5-1.17.1.ebuild 4348 BLAKE2B 21649609464816912876ee382b330fe8beb2ff6f63ce77e35bef5c983bc2e5a81eac9db78b2a0915487a735252f8a7bb98150cdd91655cfd21988b7f94836c53 SHA512 b4341d509c5b0ae46dfdc751f6494aa4ae9288bcb5fb5cb604cf16bd8940f2a1eaf831a50553d084ab7a68bc34493258c8ecde4d904555f1bcaf8b0ecc87d644
EBUILD mit-krb5-1.18.1.ebuild 4338 BLAKE2B 22ec1538e980d8e590cfe65ec64e5350eca7c883c2e278c238e535080ae01a8246c343f899528111a92eb7733ab5d61807944ab127e62fd3b4659071e6c29fe0 SHA512 a9317837e3f5f80b3a602f6483632055b2337d6742be8fca209ea138ad9f8836168da11b2cc7de505721892c6db641067c88fc49eb4d1bd3940e474084ba1042
+EBUILD mit-krb5-1.18.2-r1.ebuild 4377 BLAKE2B 98a50e7baa8b9a3d138c62b485617e608e61d51533d375d1c3825a27223f04ad12d5149df6099304e3b3508b1e4bcc7a1a1264c2584284345a85c76fd99a0b9c SHA512 0163f930ea4eb9f91ce310331b6a50d7b2b887c7b5cc27146552e50b17292126eeaad30cd75bcb6386d3f0a713ef5dce40335d1363eaf7bdda9a991bba1b8a98
EBUILD mit-krb5-1.18.2.ebuild 4336 BLAKE2B b6e2266ab5d4c5e3a1fadd5b13cd23a79a6c281317d1989648d16b8c505e35505f617c6e85a57a3420bd13c1cca88fda4add1b35f392560cc2d66c36c3517554 SHA512 04586cc2d4bf81d102e0308ead9141c5dab63d1973158dadf32cef17c44008beba810e6fb8305f3c21f4fe3ab3a17b4dae5a4162377fa750515b99fe8e50cb80
EBUILD mit-krb5-1.18.ebuild 4359 BLAKE2B cca19a22d28b67765aa56c3c63e858312892d12053f114b34583b9330125f841bdccc2529276a8f45fb92bf0cf57c877a98c3bd4fa3e14b5c015f190172482d5 SHA512 7da11ab4c00e5551c17a1a442829a71a7e0ac01175255c22bcccb658564dad312a8f55dfb4900ab5c69e26bf549d4f3a7fc88ae364a1895fde5a43a8c290075c
MISC metadata.xml 903 BLAKE2B 57a48ed1fb3f046b8a4a6a80ae6223bc923f30ddf350b8ee0f5769c78b28c0bd14c35539d9552bfca02901e054332a4dc22f88c48d4eb4db4d143a7f0b938d74 SHA512 44909c99698b78ad01f72cd1d74ad6807f12154c8675b7fe31f4bd95744d8e7dca53446875c57408a294e5f87fc5aa038e6f869d3ff957cab870cd75f8e45464
diff --git a/app-crypt/mit-krb5/mit-krb5-1.18.2-r1.ebuild b/app-crypt/mit-krb5/mit-krb5-1.18.2-r1.ebuild
new file mode 100644
index 000000000000..354afa7b16ea
--- /dev/null
+++ b/app-crypt/mit-krb5/mit-krb5-1.18.2-r1.ebuild
@@ -0,0 +1,167 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8} )
+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 libressl 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}]
+ >=dev-libs/libverto-0.2.5[tevent,${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? (
+ !libressl? ( >=dev-libs/openssl-1.0.1h-r2:0=[${MULTILIB_USEDEP}] )
+ libressl? ( dev-libs/libressl: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"
+)
+
+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
+}