--- libcap-2.22-r1.ebuild 2013-02-17 08:58:20.000000000 +0100 +++ libcap-2.22-r2.ebuild 2013-11-25 15:16:52.614026404 +0100 @@ -1,10 +1,10 @@ # Copyright 1999-2013 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-libs/libcap/libcap-2.22-r1.ebuild,v 1.2 2013/02/17 07:58:20 zmedico Exp $ +# $Header: $ EAPI="4" -inherit eutils multilib toolchain-funcs pam +inherit eutils multilib multilib-minimal toolchain-funcs pam DESCRIPTION="POSIX 1003.1e capabilities" HOMEPAGE="http://www.friedhoff.org/posixfilecaps.html" @@ -16,7 +16,7 @@ SLOT="0" KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~arm-linux ~ia64-linux ~x86-linux" IUSE="pam" -RDEPEND="sys-apps/attr +RDEPEND="sys-apps/attr[${MULTILIB_USEDEP}] pam? ( virtual/pam )" DEPEND="${RDEPEND} sys-kernel/linux-headers" @@ -26,27 +26,44 @@ src_prepare() { epatch "${FILESDIR}"/${PN}-2.22-no-perl.patch epatch "${FILESDIR}"/${PN}-2.20-ignore-RAISE_SETFCAP-install-failures.patch epatch "${FILESDIR}"/${PN}-2.21-include.patch + + multilib_copy_sources +} + +multilib_src_configure() { + if multilib_build_binaries && use pam; then + pam=yes + else + pam=no + fi + sed -i \ - -e "/^PAM_CAP/s:=.*:=$(usex pam):" \ + -e "/^PAM_CAP/s:=.*:=${pam}:" \ -e '/^DYNAMIC/s:=.*:=yes:' \ -e "/^lib=/s:=.*:=/usr/$(get_libdir):" \ Make.Rules } -src_configure() { +multilib_src_compile() { tc-export_build_env BUILD_CC - tc-export CC AR RANLIB + tc-export AR RANLIB + + default } -src_install() { +multilib_src_install() { # no configure, needs explicit install line #444724#c3 emake install DESTDIR="${ED}" - gen_usr_ldscript -a cap + multilib_build_binaries && gen_usr_ldscript -a cap rm -rf "${ED}"/usr/$(get_libdir)/security - dopammod pam_cap/pam_cap.so - dopamsecurity '' pam_cap/capability.conf + if multilib_build_binaries && use pam; then + dopammod pam_cap/pam_cap.so + dopamsecurity '' pam_cap/capability.conf + fi +} +multilib_src_install_all() { dodoc CHANGELOG README doc/capability.notes }