summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2020-12-14 14:54:40 -0800
committerRobin H. Johnson <robbat2@gentoo.org>2020-12-14 15:21:07 -0800
commit87a9246ba1a1091db7dc7f677f20916546afe408 (patch)
tree8123a8a2f33f50ff511d307dfd00c1d75435d910 /sys-libs/libcap-ng/libcap-ng-0.8.2-r1.ebuild
parentdev-python/joblib: Bump to 1.0.0 (diff)
downloadgentoo-87a9246ba1a1091db7dc7f677f20916546afe408.tar.gz
gentoo-87a9246ba1a1091db7dc7f677f20916546afe408.tar.bz2
gentoo-87a9246ba1a1091db7dc7f677f20916546afe408.zip
sys-libs/libcap-ng: add patches for gnome-keyring-daemon breakage
The upstream author of libcap-ng is ALSO the Fedora packager, and ships a critical behavior fix regarding new error codes for the recent versions, both of which are available in different Fedora releases. After careful review, include BOTH of those releases in our tree, to allow testing for regressions. Closes: https://bugs.gentoo.org/759550 Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
Diffstat (limited to 'sys-libs/libcap-ng/libcap-ng-0.8.2-r1.ebuild')
-rw-r--r--sys-libs/libcap-ng/libcap-ng-0.8.2-r1.ebuild95
1 files changed, 95 insertions, 0 deletions
diff --git a/sys-libs/libcap-ng/libcap-ng-0.8.2-r1.ebuild b/sys-libs/libcap-ng/libcap-ng-0.8.2-r1.ebuild
new file mode 100644
index 000000000000..ba79ffe1c0b6
--- /dev/null
+++ b/sys-libs/libcap-ng/libcap-ng-0.8.2-r1.ebuild
@@ -0,0 +1,95 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6,7,8} )
+
+inherit autotools flag-o-matic python-r1
+
+DESCRIPTION="POSIX 1003.1e capabilities"
+HOMEPAGE="https://people.redhat.com/sgrubb/libcap-ng/"
+# 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"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x86-linux"
+IUSE="python static-libs"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+RDEPEND="python? ( ${PYTHON_DEPS} )"
+DEPEND="${RDEPEND}
+ sys-kernel/linux-headers"
+BDEPEND="python? ( >=dev-lang/swig-2 )"
+
+PATCHES=(
+ "${DISTDIR}"/libcap-ng-0.8.2-apply-disable.patch
+)
+
+src_prepare() {
+ default
+ if use prefix ; then
+ sed -i "s@cat /usr@cat ${EPREFIX}/usr@" bindings/python*/Makefile.am || die
+ eautomake #668722
+ fi
+}
+
+src_configure() {
+ use sparc && replace-flags -O? -O0
+
+ local ECONF_SOURCE="${S}"
+
+ local myconf=(
+ $(use_enable static-libs static)
+ )
+
+ local pythonconf=( --without-python --without-python3 )
+
+ # set up python bindings build(s)
+ if use python ; then
+ setup_python_flags_configure() {
+ 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
+ run_in_build_dir econf "${pythonconf[@]}" "${myconf[@]}"
+ fi
+}
+
+src_compile() {
+ if use python; then
+ python_foreach_impl run_in_build_dir emake
+ else
+ local BUILD_DIR=${WORKDIR}/build
+ emake -C "${BUILD_DIR}"
+ fi
+}
+
+src_test() {
+ if [[ "${EUID}" -eq 0 ]]; then
+ ewarn "Skipping tests due to root permissions."
+ return
+ fi
+
+ if use python; then
+ python_foreach_impl run_in_build_dir emake check
+ else
+ local BUILD_DIR=${WORKDIR}/build
+ emake -C "${BUILD_DIR}" check
+ fi
+}
+
+src_install() {
+ if use python; then
+ python_foreach_impl run_in_build_dir emake DESTDIR="${D}" install
+ else
+ local BUILD_DIR=${WORKDIR}/build
+ emake -C "${BUILD_DIR}" DESTDIR="${D}" install
+ fi
+ find "${ED}" -name '*.la' -delete || die
+}