diff options
author | Lars Wendler <polynomial-c@gentoo.org> | 2021-08-03 12:25:44 +0200 |
---|---|---|
committer | Lars Wendler <polynomial-c@gentoo.org> | 2021-08-03 12:25:44 +0200 |
commit | 402af49cb7bfe976f8d9cec40208ff46203dc86c (patch) | |
tree | 2a23fe0d2ca399a99cd5f2dec78ce356db46a1f6 /sys-libs/libcap/libcap-2.52.ebuild | |
parent | net-p2p/airdcpp-webclient: drop 2.10.1-r1 (diff) | |
download | gentoo-402af49cb7bfe976f8d9cec40208ff46203dc86c.tar.gz gentoo-402af49cb7bfe976f8d9cec40208ff46203dc86c.tar.bz2 gentoo-402af49cb7bfe976f8d9cec40208ff46203dc86c.zip |
sys-libs/libcap: Bump to version 2.52
Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>
Diffstat (limited to 'sys-libs/libcap/libcap-2.52.ebuild')
-rw-r--r-- | sys-libs/libcap/libcap-2.52.ebuild | 89 |
1 files changed, 89 insertions, 0 deletions
diff --git a/sys-libs/libcap/libcap-2.52.ebuild b/sys-libs/libcap/libcap-2.52.ebuild new file mode 100644 index 000000000000..22ae030ac609 --- /dev/null +++ b/sys-libs/libcap/libcap-2.52.ebuild @@ -0,0 +1,89 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit multilib-minimal toolchain-funcs pam usr-ldscript + +DESCRIPTION="POSIX 1003.1e capabilities" +HOMEPAGE="https://sites.google.com/site/fullycapable/" +SRC_URI="https://www.kernel.org/pub/linux/libs/security/linux-privs/libcap2/${P}.tar.xz" + +# it's available under either of the licenses +LICENSE="|| ( GPL-2 BSD )" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux" +IUSE="pam static-libs" + +# While the build system optionally uses gperf, we don't DEPEND on it because +# the build automatically falls back when it's unavailable. #604802 +RDEPEND=">=sys-apps/attr-2.4.47-r1[${MULTILIB_USEDEP}]" +PDEPEND="pam? ( sys-libs/pam[${MULTILIB_USEDEP}] )" +DEPEND="${RDEPEND} + ${PDEPEND} + sys-kernel/linux-headers" + +# Requires test suite being run as root (via sudo) +RESTRICT="test" + +PATCHES=( + "${FILESDIR}"/${PN}-2.52-build-system-fixes.patch + "${FILESDIR}"/${PN}-2.38-no_perl.patch + "${FILESDIR}"/${PN}-2.25-ignore-RAISE_SETFCAP-install-failures.patch + "${FILESDIR}"/${PN}-2.21-include.patch +) + +src_prepare() { + default + multilib_copy_sources +} + +run_emake() { + local args=( + exec_prefix="${EPREFIX}" + lib_prefix="${EPREFIX}/usr" + lib="$(get_libdir)" + prefix="${EPREFIX}/usr" + PAM_CAP="$(usex pam yes no)" + DYNAMIC=yes + GOLANG=no + CC="$(tc-getCC)" + AR="$(tc-getAR)" + RANLIB="$(tc-getRANLIB)" + ) + emake "${args[@]}" "$@" +} + +src_configure() { + tc-export AR CC RANLIB + tc-export_build_env BUILD_CC + multilib-minimal_src_configure +} + +multilib_src_compile() { + run_emake +} + +multilib_src_install() { + # no configure, needs explicit install line #444724#c3 + run_emake DESTDIR="${D}" install + + gen_usr_ldscript -a cap + gen_usr_ldscript -a psx + if ! use static-libs ; then + rm "${ED}"/usr/$(get_libdir)/lib{cap,psx}.a || die + fi + + if [[ -d "${ED}"/usr/$(get_libdir)/security ]] ; then + rm -r "${ED}"/usr/$(get_libdir)/security || die + fi + + if 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 +} |