| # Copyright 1999-2016 Gentoo Foundation |
| # Distributed under the terms of the GNU General Public License v2 |
| # $Id$ |
| |
| EAPI="4" |
| |
| inherit eutils multilib multilib-minimal toolchain-funcs pam |
| |
| DESCRIPTION="POSIX 1003.1e capabilities" |
| HOMEPAGE="http://www.friedhoff.org/posixfilecaps.html" |
| SRC_URI="mirror://kernel/linux/libs/security/linux-privs/libcap2/${P}.tar.xz" |
| |
| # it's available under either of the licenses |
| LICENSE="|| ( GPL-2 BSD )" |
| SLOT="0" |
| KEYWORDS="*" |
| IUSE="pam static-libs" |
| |
| RDEPEND=">=sys-apps/attr-2.4.47-r1[${MULTILIB_USEDEP}] |
| pam? ( virtual/pam )" |
| DEPEND="${RDEPEND} |
| sys-kernel/linux-headers" |
| |
| src_prepare() { |
| epatch "${FILESDIR}"/${PN}-2.24-build-system-fixes.patch |
| 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 |
| epatch "${FILESDIR}"/${PN}-2.24-setcap-errno.patch #551672 |
| |
| multilib_copy_sources |
| } |
| |
| multilib_src_configure() { |
| local pam |
| if multilib_is_native_abi && use pam; then |
| pam=yes |
| else |
| pam=no |
| fi |
| |
| sed -i \ |
| -e "/^PAM_CAP/s:=.*:=${pam}:" \ |
| -e '/^DYNAMIC/s:=.*:=yes:' \ |
| -e '/^lib_prefix=/s:=.*:=$(prefix):' \ |
| -e "/^lib=/s:=.*:=$(get_libdir):" \ |
| Make.Rules |
| } |
| |
| multilib_src_compile() { |
| tc-export_build_env BUILD_CC |
| tc-export AR CC RANLIB |
| |
| default |
| } |
| |
| multilib_src_install() { |
| # no configure, needs explicit install line #444724#c3 |
| emake install DESTDIR="${ED}" |
| |
| gen_usr_ldscript -a cap |
| use static-libs || rm "${ED}"/usr/$(get_libdir)/libcap.a |
| |
| rm -rf "${ED}"/usr/$(get_libdir)/security |
| if multilib_is_native_abi && 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 |
| } |