From bb577e69045d6e25a0a45b2db655fc1c4d4c35cb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20F=C3=B6rster?= Date: Sun, 16 Aug 2020 16:17:56 +0200 Subject: [PATCH] [sys-auth/sssd] rename back, this is now a PR candidate --- sys-auth/sssd/metadata.xml | 10 ++ ...sssd-2.3.1-r1.ebuild => sssd-2.3.1.ebuild} | 119 +++++++++++++++--- 2 files changed, 113 insertions(+), 16 deletions(-) rename sys-auth/sssd/{sssd-2.3.1-r1.ebuild => sssd-2.3.1.ebuild} (67%) diff --git a/sys-auth/sssd/metadata.xml b/sys-auth/sssd/metadata.xml index 1a968a0..d560b94 100644 --- a/sys-auth/sssd/metadata.xml +++ b/sys-auth/sssd/metadata.xml @@ -1,6 +1,10 @@ + + base-system@gentoo.org + Gentoo Base System + alexxy@gentoo.org Alexey Shvetsov @@ -14,8 +18,14 @@ Build helper to let net-fs/autofs use sssd provided information Build helper to let net-misc/openssh use sssd provided information Build helper to let app-admin/sudo use sssd provided information + Depend on dev-util/valgrind for test suite + Install sssd's Kerberos Cache Manager + Build secrets Responder + Install sssd's Kerberos Cache Manager + Add Privileged Attribute Certificate Support for Kerberos cpe:/a:fedoraproject:sssd + SSSD/sssd diff --git a/sys-auth/sssd/sssd-2.3.1-r1.ebuild b/sys-auth/sssd/sssd-2.3.1.ebuild similarity index 67% rename from sys-auth/sssd/sssd-2.3.1-r1.ebuild rename to sys-auth/sssd/sssd-2.3.1.ebuild index ba5fe4d..389a9df 100644 --- a/sys-auth/sssd/sssd-2.3.1-r1.ebuild +++ b/sys-auth/sssd/sssd-2.3.1.ebuild @@ -14,13 +14,14 @@ KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x LICENSE="GPL-3" SLOT="0" -IUSE="acl +autofs kcm +locator +netlink nfsv4 nls +manpages pac python samba secrets selinux sudo ssh systemd test valgrind" +IUSE="acl +autofs doc kcm +locator +netlink nfsv4 nls +manpages pac python samba secrets selinux sudo ssh systemd test valgrind" RESTRICT="!test? ( test )" -REQUIRED_USE="test? ( ssh sudo ) - pac? ( samba ) +REQUIRED_USE="pac? ( samba ) kcm? ( systemd ) - secrets? ( systemd )" + python? ( ${PYTHON_REQUIRED_USE} ) + secrets? ( systemd ) + test? ( ssh sudo )" DEPEND=" >=sys-libs/pam-0-r1[${MULTILIB_USEDEP}] @@ -76,8 +77,8 @@ RDEPEND="${DEPEND} >=sys-libs/glibc-2.17[nscd] selinux? ( >=sec-policy/selinux-sssd-2.20120725-r9 ) " -# FIXME: Add pam_wrapper when it enters the tree. Bug #730974 BDEPEND="${DEPEND} + doc? ( app-doc/doxygen ) test? ( app-crypt/p11-kit dev-libs/check @@ -86,12 +87,14 @@ BDEPEND="${DEPEND} net-libs/gnutls[pkcs11,tools] sys-libs/libfaketime sys-libs/nss_wrapper + sys-libs/pam_wrapper sys-libs/uid_wrapper valgrind? ( dev-util/valgrind ) ) manpages? ( >=dev-libs/libxslt-1.1.26 app-text/docbook-xml-dtd:4.4 + nls? ( app-text/po4a ) )" CONFIG_CHECK="~KEYS" @@ -116,9 +119,15 @@ pkg_setup() { } src_prepare() { + sed -i 's:/var/run:/run:' \ + "${S}"/src/examples/logrotate || die + default eautoreconf multilib_copy_sources + if use python && multilib_is_native_abi; then + python_setup + fi } src_configure() { @@ -127,23 +136,67 @@ src_configure() { multilib-minimal_src_configure } +python_configure() { + local myeconfargs=( + --localstatedir="${EPREFIX}"/var + --with-pid-path="${EPREFIX}"/run + --with-plugin-path="${EPREFIX}"/usr/$(get_libdir)/sssd + --enable-pammoddir="${EPREFIX}"/$(getpam_mod_dir) + --with-ldb-lib-dir="${EPREFIX}"/usr/$(get_libdir)/samba/ldb + --with-db-path="${EPREFIX}"/var/lib/sss/db + --with-gpo-cache-path="${EPREFIX}"/var/lib/sss/gpo_cache + --with-pubconf-path="${EPREFIX}"/var/lib/sss/pubconf + --with-pipe-path="${EPREFIX}"/var/lib/sss/pipes + --with-mcache-path="${EPREFIX}"/var/lib/sss/mc + --with-secrets-db-path="${EPREFIX}"/var/lib/sss/secrets + --with-log-path="${EPREFIX}"/var/log/sssd + --with-os=gentoo + --with-nscd="${EPREFIX}"/usr/sbin/nscd + --with-unicode-lib="glib2" + --disable-rpath + --sbindir=/usr/sbin + $(multilib_native_use_with selinux) + --without-kcm + --without-secrets + --without-samba + --disable-cifs-idmap-plugin + --without-semanage + --disable-krb5-locator-plugin + --disable-pac-responder + --without-nfsv4-idmapd-plugin + --disable-nls + --without-libnl + --without-manpages + --without-sudo + --without-autofs + --without-ssh + --disable-valgrind + --with-crypto="libcrypto" + --without-python2-bindings + --with-python3-bindings + ) + mkdir "${BUILD_DIR}" || die + pushd "${BUILD_DIR}" >/dev/null || die + ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" + popd >/dev/null || die +} + multilib_src_configure() { local myconf=() - local python3_configure=--without-python3-bindings - if use python; then - python_configure() { - python3_configure=--with-python3-bindings - } - python_foreach_impl python_configure - fi - myconf+=( --localstatedir="${EPREFIX}"/var --with-pid-path="${EPREFIX}"/run --with-plugin-path="${EPREFIX}"/usr/$(get_libdir)/sssd --enable-pammoddir="${EPREFIX}"/$(getpam_mod_dir) --with-ldb-lib-dir="${EPREFIX}"/usr/$(get_libdir)/samba/ldb + --with-db-path="${EPREFIX}"/var/lib/sss/db + --with-gpo-cache-path="${EPREFIX}"/var/lib/sss/gpo_cache + --with-pubconf-path="${EPREFIX}"/var/lib/sss/pubconf + --with-pipe-path="${EPREFIX}"/var/lib/sss/pipes + --with-mcache-path="${EPREFIX}"/var/lib/sss/mc + --with-secrets-db-path="${EPREFIX}"/var/lib/sss/secrets + --with-log-path="${EPREFIX}"/var/log/sssd --with-os=gentoo --with-nscd="${EPREFIX}"/usr/sbin/nscd --with-unicode-lib="glib2" @@ -167,7 +220,7 @@ multilib_src_configure() { $(use_enable valgrind) --with-crypto="libcrypto" --without-python2-bindings - ${python3_configure} + --without-python3-bindings ) # Annoyingly configure requires that you pick systemd XOR sysv @@ -197,22 +250,52 @@ multilib_src_configure() { --without-secrets --without-kcm ) + else + if use python; then + python_foreach_impl python_configure + fi fi econf "${myconf[@]}" } +python_compile() { + pushd "${BUILD_DIR}" >/dev/null || die + emake + popd >/dev/null || die +} + multilib_src_compile() { if multilib_is_native_abi; then default + if use python; then + python_foreach_impl python_compile + fi + if use doc; then + emake docs + fi + if use manpages || use nls; then + emake update-po + fi else emake libnss_sss.la pam_sss.la use locator && emake sssd_krb5_locator_plugin.la fi } +python_install() { + pushd "${BUILD_DIR}" >/dev/null || die + emake -j1 DESTDIR="${D}" "${_at_args[@]}" install + python_optimize + popd >/dev/null || die +} + multilib_src_install() { if multilib_is_native_abi; then + if use python; then + python_foreach_impl python_install + python_fix_shebang "${ED}" + fi emake -j1 DESTDIR="${D}" "${_at_args[@]}" install else # easier than playing with automake... @@ -252,9 +335,13 @@ multilib_src_install_all() { keepdir /var/lib/sss/secrets keepdir /var/log/sssd - if use python; then - python_foreach_impl python_optimize + # strip empty dirs + if use !doc; then + rm -r "${ED}"/usr/share/doc/"${PF}"/doc || die + rm -r "${ED}"/usr/share/doc/"${PF}"/{hbac,idmap,nss_idmap,sss_simpleifp}_doc || die fi + + rm -r "${ED}"/run || die } multilib_src_test() {