|
|
|
@ -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() {
|