commit: 4cb4ecd4c87ba0763d414b78946f2dd533217109 Author: Sam James <sam <AT> gentoo <DOT> org> AuthorDate: Sun Apr 28 23:38:22 2024 +0000 Commit: Sam James <sam <AT> gentoo <DOT> org> CommitDate: Sun Apr 28 23:38:22 2024 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4cb4ecd4
sys-libs/libcap-ng: add 0.8.5 Signed-off-by: Sam James <sam <AT> gentoo.org> sys-libs/libcap-ng/Manifest | 1 + .../libcap-ng/files/libcap-ng-0.8.5-python.patch | 23 +++++ sys-libs/libcap-ng/libcap-ng-0.8.5.ebuild | 101 +++++++++++++++++++++ 3 files changed, 125 insertions(+) diff --git a/sys-libs/libcap-ng/Manifest b/sys-libs/libcap-ng/Manifest index 7602e04c471e..43578be71196 100644 --- a/sys-libs/libcap-ng/Manifest +++ b/sys-libs/libcap-ng/Manifest @@ -1 +1,2 @@ DIST libcap-ng-0.8.4.tar.gz 453749 BLAKE2B 523480281cfa544e77e30932968b4b18424286dbced06bb4645d536cf19d4cc0f7c73de82006ffc329aa7ef208e0cf8e3379f1b20e1e8e4e90e422ed736f6c44 SHA512 f4f3499d592e8583c2bdb8d700981a7930bd545f0889bc02f49acecf17e3bc600b100cd4f64e9326e5bac0a07a02a1ac4b7e83e919563066665a3d67cbe6871e +DIST libcap-ng-0.8.5.tar.gz 460149 BLAKE2B ce0fc4ebceaa66d6f888f8b752e501bed7513d45231425054340016a6215ce52f0cd81b3a4a54c7c9ec0b623965002d66316c6c37844f0bd132b186ff7c6a41f SHA512 89fb86454847f354c012411ecdc7e17f07bb40d7e9719ca0b93ea81c436113685bbbb5c1b9cb1b7ac92d216c105c687285304135beb156aedd55ab1c61e4f269 diff --git a/sys-libs/libcap-ng/files/libcap-ng-0.8.5-python.patch b/sys-libs/libcap-ng/files/libcap-ng-0.8.5-python.patch new file mode 100644 index 000000000000..ddad5ff49d7a --- /dev/null +++ b/sys-libs/libcap-ng/files/libcap-ng-0.8.5-python.patch @@ -0,0 +1,23 @@ +https://github.com/stevegrubb/libcap-ng/commit/1fe7c1cfeea00ba4eb903fbb39b74361594d4835 + +From 1fe7c1cfeea00ba4eb903fbb39b74361594d4835 Mon Sep 17 00:00:00 2001 +From: Jan Palus <jpa...@fastmail.com> +Date: Wed, 10 Apr 2024 21:30:51 +0200 +Subject: [PATCH] Fix python path when invoking py-compile (#54) + +48eebb2 replaced custom PYTHON3 variable with PYTHON by using standard +AM_PATH_PYTHON macro. Makefile however still referred to old one. +There's no need to set PYTHON explicitly anymore so drop it. + +Fixes #53 +--- a/bindings/python3/Makefile.am ++++ b/bindings/python3/Makefile.am +@@ -27,7 +27,6 @@ AM_CPPFLAGS = -I. -I$(top_builddir) $(PYTHON3_INCLUDES) + LIBS = ${top_builddir}/src/libcap-ng.la + SWIG_FLAGS = -python + SWIG_INCLUDES = ${AM_CPPFLAGS} +-PYTHON = $(PYTHON3) + pyexec_PYTHON = capng.py + pyexec_LTLIBRARIES = _capng.la + pyexec_SOLIBRARIES = _capng.so + diff --git a/sys-libs/libcap-ng/libcap-ng-0.8.5.ebuild b/sys-libs/libcap-ng/libcap-ng-0.8.5.ebuild new file mode 100644 index 000000000000..cdbc9bd9b5c8 --- /dev/null +++ b/sys-libs/libcap-ng/libcap-ng-0.8.5.ebuild @@ -0,0 +1,101 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# 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_{10..12} ) +inherit autotools flag-o-matic out-of-source-utils python-r1 + +DESCRIPTION="POSIX 1003.1e capabilities" +HOMEPAGE="https://people.redhat.com/sgrubb/libcap-ng/" +SRC_URI="https://people.redhat.com/sgrubb/${PN}/${P}.tar.gz" + +LICENSE="GPL-2+ LGPL-2.1+" +SLOT="0" +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} )" + +RDEPEND="python? ( ${PYTHON_DEPS} )" +DEPEND=" + ${RDEPEND} + sys-kernel/linux-headers +" +BDEPEND="python? ( >=dev-lang/swig-2 )" + +PATCHES=( + "${FILESDIR}"/${P}-python.patch +) + +src_prepare() { + default + + eautoreconf +} + +src_configure() { + use sparc && replace-flags -O? -O0 + + local ECONF_SOURCE="${S}" + + local myconf=( + $(use_enable static-libs static) + --with-capability_header="${ESYSROOT}"/usr/include/linux/capability.h + ) + + local pythonconf=( + --without-python3 + ) + + # Set up python bindings build(s) + if use python ; then + setup_python_flags_configure() { + pythonconf=( + --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 +}