summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sys-apps/apparmor/apparmor-3.0.8.ebuild')
-rw-r--r--sys-apps/apparmor/apparmor-3.0.8.ebuild94
1 files changed, 94 insertions, 0 deletions
diff --git a/sys-apps/apparmor/apparmor-3.0.8.ebuild b/sys-apps/apparmor/apparmor-3.0.8.ebuild
new file mode 100644
index 000000000000..3bff9b266481
--- /dev/null
+++ b/sys-apps/apparmor/apparmor-3.0.8.ebuild
@@ -0,0 +1,94 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic systemd toolchain-funcs
+
+MY_PV="$(ver_cut 1-2)"
+
+DESCRIPTION="Userspace utils and init scripts for the AppArmor application security system"
+HOMEPAGE="https://gitlab.com/apparmor/apparmor/wikis/home"
+SRC_URI="https://launchpad.net/${PN}/${MY_PV}/${PV}/+download/${PN}-${PV}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 arm64 ~riscv"
+IUSE="doc"
+
+# Was restricted previously b/c needs apparmor support in kernel
+# TODO: add check to ebuild
+#RESTRICT="test" # bug 675854
+
+RDEPEND="~sys-libs/libapparmor-${PV}"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ dev-lang/perl
+ sys-apps/which
+ app-alternatives/yacc
+ sys-devel/gettext
+ app-alternatives/lex
+ doc? ( dev-tex/latex2html )
+"
+
+S=${WORKDIR}/apparmor-${PV}/parser
+
+PATCHES=(
+ "${FILESDIR}/${PN}-3.0.5-makefile.patch"
+ "${FILESDIR}/${PN}-2.11.1-dynamic-link.patch"
+)
+
+src_prepare() {
+ default
+
+ # remove warning about missing file that controls features
+ # we don't currently support
+ sed -e "/installation problem/ctrue" -i rc.apparmor.functions || die
+
+ # bug 634782
+ sed -e "s/cpp/$(tc-getCPP) -/" \
+ -i ../common/list_capabilities.sh \
+ -i ../common/list_af_names.sh || die
+}
+
+src_configure() {
+ # ODR violations (bug #863524)
+ filter-lto
+
+ default
+}
+
+src_compile() {
+ emake \
+ AR="$(tc-getAR)" \
+ CC="$(tc-getCC)" \
+ CPP="$(tc-getCPP) -" \
+ CXX="$(tc-getCXX)" \
+ USE_SYSTEM=1 \
+ arch manpages
+ use doc && emake pdf
+}
+
+src_test() {
+ emake CXX="$(tc-getCXX)" USE_SYSTEM=1 check
+}
+
+src_install() {
+ emake \
+ CPP="$(tc-getCPP) -" \
+ DESTDIR="${D}" \
+ DISTRO="unknown" \
+ USE_SYSTEM=1 \
+ install
+
+ dodir /etc/apparmor.d/disable
+
+ newinitd "${FILESDIR}/${PN}-init-1" ${PN}
+ systemd_newunit "${FILESDIR}/apparmor.service" apparmor.service
+
+ use doc && dodoc techdoc.pdf
+
+ exeinto /usr/share/apparmor
+ doexe "${FILESDIR}/apparmor_load.sh"
+ doexe "${FILESDIR}/apparmor_unload.sh"
+}