sys-libs/libapparmor: add 3.0.4, fix distutils-r1 usage

Fixes distutils-r1 usage which otherwise was fragile and may
have broken in future (was emitting a QA warning as of recent eclass
changes).

3.0.4 upstream also drops distutils.sysconfig usage which
brings us better Python 3.11 support.

Signed-off-by: Sam James <sam@gentoo.org>
This commit is contained in:
Sam James
2022-06-17 02:04:50 +01:00
parent fa222c2fba
commit 240dddde6a
2 changed files with 109 additions and 0 deletions

View File

@@ -1,2 +1,3 @@
DIST apparmor-3.0.1.tar.gz 7785713 BLAKE2B c530d159a4139de8e59d9d975af866259b56d555e3abe2d1e2a6bfd2db57d8371d643bb93f1cd6ca96172960c09a74cc05c82d34a2e253c4c1f6ecce747f4129 SHA512 e1073e7b2cde7cc4cefcfddce8fa5069845b5873c260b9fbd4bea2ff801708101d813ff30e23a64da36f3c6394cd9339e01a170e9add69deef2d70ecd9ed9687
DIST apparmor-3.0.3.tar.gz 7790012 BLAKE2B aada9c32c2cde4a110cbd1d626ec00b08e29e76182185752e5c23e2ec0c2668a732ffdf1eb1660bd8bc294188ccf0da42b4282939f5969a6aed39084be00769c SHA512 bbf26377e60da60dab56473ee5af15aa0f3fdf2f2a61dbfcdeba12a925afda3bc6a0f6cc31e07927400425b8c3b3649833f448d8674044c7274ef06923ab48b5
DIST apparmor-3.0.4.tar.gz 7796852 BLAKE2B 831ea65ed0972ad8a6e335e438e7b0a8a2a3977dc4360ad1923d48cc7b21b1941ec011d3894d8bdc98934b953a3f1d89a859fc27ec2530f5dd9b3cc850fe66f0 SHA512 1edd800771f46fab9bc5274842e64482b7fd4a5ba4de9855d621baf1d08c8236bfa7752dd9ab3dee095f8e0798129241a9aebf68ed1c994ae5597086a4a1a8ca

View File

@@ -0,0 +1,108 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_OPTIONAL=1
PYTHON_COMPAT=( python3_{8..11} )
GENTOO_DEPEND_ON_PERL="no"
inherit autotools distutils-r1 perl-functions
MY_PV="$(ver_cut 1-2)"
DESCRIPTION="Library to support AppArmor userspace utilities"
HOMEPAGE="https://gitlab.com/apparmor/apparmor/wikis/home"
SRC_URI="https://launchpad.net/apparmor/${MY_PV}/${PV}/+download/apparmor-${PV}.tar.gz"
LICENSE="GPL-2 LGPL-2.1"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~x86"
IUSE="doc +perl +python static-libs"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
RDEPEND="perl? ( dev-lang/perl:= )
python? ( ${PYTHON_DEPS} )"
DEPEND="${RDEPEND}"
BDEPEND="
sys-devel/autoconf-archive
sys-devel/bison
sys-devel/flex
doc? ( dev-lang/perl )
perl? ( dev-lang/swig )
python? ( dev-lang/swig )"
S=${WORKDIR}/apparmor-${PV}/libraries/${PN}
# depends on the package already being installed
RESTRICT="test"
src_prepare() {
default
# We used to rm m4/ but led to this after eautoreconf:
# checking whether the libapparmor man pages should be generated... yes
# ./configure: 5065: PROG_PODCHECKER: not found
# ./configure: 5068: PROG_POD2MAN: not found
# checking whether python bindings are enabled... yes
eautoreconf
use python && distutils-r1_src_prepare
}
src_configure() {
econf \
$(use_enable static-libs static) \
$(use_with perl) \
$(use_with python)
}
src_compile() {
emake -C src
emake -C include
use doc && emake -C doc
use perl && emake -C swig/perl
if use python ; then
pushd swig/python > /dev/null
emake libapparmor_wrap.c
distutils-r1_src_compile
popd > /dev/null
fi
}
src_install() {
emake DESTDIR="${D}" -C src install
emake DESTDIR="${D}" -C include install
use doc && emake DESTDIR="${D}" -C doc install
if use perl ; then
emake DESTDIR="${D}" -C swig/perl install
perl_set_version
insinto "${VENDOR_ARCH}"
doins swig/perl/LibAppArmor.pm
# bug 620886
perl_delete_localpod
perl_fix_packlist
fi
if use python ; then
pushd swig/python > /dev/null || die
distutils-r1_src_install
popd > /dev/null || die
fi
dodoc AUTHORS ChangeLog NEWS README
find "${D}" -name '*.la' -delete || die
}
python_install() {
distutils-r1_python_install
python_moduleinto LibAppArmor
python_domodule LibAppArmor.py
}