sys-libs/libcap-ng: Sync with Gentoo

It's from Gentoo commit 3a1c067853f12e6da742b59a5b1e586f94b2b445.
This commit is contained in:
Krzesimir Nowak 2022-10-21 10:23:22 +02:00
parent 1910e5ef99
commit e2a58af22d
3 changed files with 42 additions and 27 deletions

View File

@ -1,2 +1,2 @@
DIST libcap-ng-0.8.2-apply-disable.patch 723 BLAKE2B 70d9959c55119c02bbc4ea605251491c04c477511c20b9fe93e6527ffd3fe2f35a72fabab5ca149c4aaf536c6cd8dceb15375297158f8827a0c676744381bbc1 SHA512 8c9317bdd4fde7d6a4618ec613bce46bed7646891bd16bc3fa307e9a814e38601bf3c6ad13102389d4596d9ed6a7ad853cca58624e724fe07383007e386c51f8
DIST libcap-ng-0.8.2.tar.gz 456066 BLAKE2B 7e721d05b92fd3708b970527e76b1898daa91bde3ab6ed5d8f23b1435404fbe7d15731461c6d9d2c791738e5498d1f5eaba727413480d34b7edea13c8691c32b SHA512 0ac6e55c03b1fba3a849048b721e250951afb59190d9646704d4fd9938eccc3bd0767380fbddc42f186b4f55695475e31f34f537ae91c04a37662577a5b7a19b
DIST libcap-ng-0.8.3.tar.gz 455383 BLAKE2B c54dd753e0ef6dd21bcf6af7b003f85ded9faf2fbf1ea834cda6b181b165ff4b11a0284c23c73d0e6f97a810b3e6a63fceeb57ff583a2b32f23924bdee597ef5 SHA512 0ef9bc7bc6b7b59991f43b79aa6cde3e8d2c22c4b9ced2af8deae501e01d51e893033d109cb8aa0fdcba190140110993089245346334d7b114d18f1bb1b55b97

View File

@ -1,21 +1,25 @@
# Copyright 1999-2021 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{8..10} )
# Keep an eye on Fedora's packaging (https://src.fedoraproject.org/rpms/libcap-ng/tree/rawhide) for patches
# Same maintainer in Fedora as upstream
PYTHON_COMPAT=( python3_{9..10} )
inherit autotools flag-o-matic python-r1
DESCRIPTION="POSIX 1003.1e capabilities"
HOMEPAGE="https://people.redhat.com/sgrubb/libcap-ng/"
# Patch works around / reverts a behaviour change because not all consumers were ready.
# Keep this patch for a bit longer until Fedora stop shipping it (not clear what else
# other than gnome-keyring was broken by it: bug #759550)
# Fedora 0.8.2 https://src.fedoraproject.org/rpms/libcap-ng/c/a5b0f536df1132d8e7afa4c0ce07b630e7970cad?branch=master
SRC_URI="https://people.redhat.com/sgrubb/${PN}/${P}.tar.gz
https://src.fedoraproject.org/rpms/libcap-ng/raw/a5b0f536df1132d8e7afa4c0ce07b630e7970cad/f/libcap-ng-0.8.2-apply-disable.patch"
https://src.fedoraproject.org/rpms/libcap-ng/raw/a5b0f536df1132d8e7afa4c0ce07b630e7970cad/f/libcap-ng-0.8.2-apply-disable.patch"
LICENSE="LGPL-2.1"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x86-linux"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x86-linux"
IUSE="python static-libs"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
@ -30,9 +34,11 @@ PATCHES=(
src_prepare() {
default
if use prefix ; then
sed -i "s@cat /usr@cat ${EPREFIX}/usr@" bindings/python*/Makefile.am || die
eautomake #668722
# bug #668722
eautomake
fi
}
@ -45,51 +51,59 @@ src_configure() {
$(use_enable static-libs static)
)
local pythonconf=( --without-python --without-python3 )
local pythonconf=(
--without-python
--without-python3
)
# set up python bindings build(s)
# Set up python bindings build(s)
if use python ; then
setup_python_flags_configure() {
pythonconf=( --without-python --with-python3 )
pythonconf=(
--without-python
--with-python3
)
run_in_build_dir econf "${pythonconf[@]}" "${myconf[@]}"
}
python_foreach_impl setup_python_flags_configure
else
local BUILD_DIR=${WORKDIR}/build
local BUILD_DIR="${WORKDIR}"/build
run_in_build_dir econf "${pythonconf[@]}" "${myconf[@]}"
fi
}
src_compile() {
if use python; then
if use python ; then
python_foreach_impl run_in_build_dir emake
else
local BUILD_DIR=${WORKDIR}/build
local BUILD_DIR="${WORKDIR}"/build
emake -C "${BUILD_DIR}"
fi
}
src_test() {
if [[ "${EUID}" -eq 0 ]]; then
if [[ "${EUID}" -eq 0 ]] ; then
ewarn "Skipping tests due to root permissions."
return
fi
if use python; then
if use python ; then
python_foreach_impl run_in_build_dir emake check
else
local BUILD_DIR=${WORKDIR}/build
local BUILD_DIR="${WORKDIR}"/build
emake -C "${BUILD_DIR}" check
fi
}
src_install() {
if use python; then
if use python ; then
python_foreach_impl run_in_build_dir emake DESTDIR="${D}" install
else
local BUILD_DIR=${WORKDIR}/build
local BUILD_DIR="${WORKDIR}"/build
emake -C "${BUILD_DIR}" DESTDIR="${D}" install
fi
find "${ED}" -name '*.la' -delete || die
}

View File

@ -1,17 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
<name>Gentoo Base System</name>
</maintainer>
<longdescription>
<maintainer type="project">
<email>base-system@gentoo.org</email>
<name>Gentoo Base System</name>
</maintainer>
<longdescription>
The libcap-ng library is intended to make programming with POSIX
capabilities much easier than the traditional libcap library. It includes
utilities that can analyse all currently running applications and print
out any capabilities and whether or not it has an open ended bounding set.
</longdescription>
<upstream>
<remote-id type="cpe">cpe:/a:libcap-ng_project:libcap-ng</remote-id>
</upstream>
</longdescription>
<upstream>
<remote-id type="cpe">cpe:/a:libcap-ng_project:libcap-ng</remote-id>
<remote-id type="github">stevegrubb/libcap-ng</remote-id>
</upstream>
</pkgmetadata>