104 lines
2.7 KiB
Bash
104 lines
2.7 KiB
Bash
# Template file for 'apparmor'
|
|
pkgname=apparmor
|
|
version=3.0.0
|
|
revision=1
|
|
wrksrc="${pkgname}-v${version}"
|
|
build_wrksrc=libraries/libapparmor
|
|
build_style=gnu-configure
|
|
conf_files="/etc/apparmor.d/local/* /etc/apparmor/*"
|
|
make_dirs="/etc/apparmor.d/disable 0755 root root"
|
|
hostmakedepends="bison flex autoconf automake libtool gettext swig python3 which"
|
|
makedepends="perl python3-devel"
|
|
depends="runit-void-apparmor python3 libapparmor"
|
|
checkdepends="dejagnu"
|
|
short_desc="Mandatory access control to restrict programs"
|
|
maintainer="Olivier Mauras <olivier@mauras.ch>"
|
|
license="GPL-2.0-only, LGPL-2.1-only"
|
|
homepage="https://gitlab.com/apparmor/apparmor"
|
|
distfiles="https://gitlab.com/apparmor/apparmor/-/archive/v${version}/apparmor-v${version}.tar.gz"
|
|
checksum=8c440ab1848e723483a8550ed2889e18f322e9d7ee9eb4e2e712152ea61da68f
|
|
patch_args="-Np1"
|
|
|
|
if [ -z "$CROSS_BUILD" ]; then
|
|
configure_args="--with-perl --with-python"
|
|
fi
|
|
|
|
pre_configure() {
|
|
autoreconf -if
|
|
}
|
|
|
|
pre_build() {
|
|
# Replace release profiles with our own
|
|
cd ${wrksrc}
|
|
cp ${FILESDIR}/profiles/* profiles/apparmor.d/
|
|
|
|
# use the correct syslog path
|
|
vsed -i utils/logprof.conf -e 's,logfiles = .*,logfiles = /var/log/socklog/kernel/current,'
|
|
}
|
|
|
|
post_build() {
|
|
cd ${wrksrc}
|
|
|
|
# fix cross compilation
|
|
vsed -i parser/Makefile -e 's,cpp,$(CPP),'
|
|
|
|
make ${makejobs} -C binutils
|
|
make ${makejobs} -C utils
|
|
make ${makejobs} -C parser
|
|
make ${makejobs} -C profiles
|
|
}
|
|
|
|
post_install() {
|
|
cd ${wrksrc}
|
|
commonflags="DESTDIR=\"${DESTDIR}\" SBINDIR=\"${DESTDIR}/usr/bin\" USR_SBINDIR=\"${DESTDIR}/usr/bin\""
|
|
make $commonflags install -C binutils
|
|
make $commonflags \
|
|
BINDIR="${DESTDIR}/usr/bin" \
|
|
VIM_INSTALL_PATH="${DESTDIR}/usr/share/vim/vimfiles/syntax" \
|
|
install -C utils
|
|
make $commonflags \
|
|
APPARMOR_BIN_PREFIX="${DESTDIR}/usr/lib/apparmor" \
|
|
install -C parser
|
|
make DESTDIR="${DESTDIR}" install -C profiles
|
|
|
|
# requires perl bindings not generated when cross-compiling
|
|
if [ "$CROSS_BUILD" ]; then
|
|
rm -f ${DESTDIR}/usr/bin/aa-notify
|
|
fi
|
|
|
|
# we installed a custom conflicting profile
|
|
rm ${DESTDIR}/etc/apparmor.d/{,local/}php-fpm
|
|
}
|
|
|
|
apparmor-vim_package() {
|
|
short_desc+=" - Vim syntax"
|
|
depends="vim"
|
|
pkg_install() {
|
|
vmove usr/share/vim/vimfiles/syntax/apparmor.vim
|
|
vmove usr/share/man/man5/apparmor.vim.5
|
|
}
|
|
}
|
|
|
|
libapparmor_package() {
|
|
short_desc+=" - Library"
|
|
pkg_install() {
|
|
vmove "usr/lib/libapparmor.so*"
|
|
if [ -z "$CROSS_BUILD" ]; then
|
|
vmove usr/lib/perl5
|
|
vmove "${py3_sitelib}/LibAppArmor*"
|
|
fi
|
|
vmove usr/share/man/man2
|
|
vmove usr/share/man/man3
|
|
}
|
|
}
|
|
|
|
libapparmor-devel_package() {
|
|
short_desc+=" - Library development files"
|
|
depends="lib${sourcepkg}-${version}_${revision}"
|
|
pkg_install() {
|
|
vmove usr/include
|
|
vmove "usr/lib/*.a"
|
|
vmove "usr/lib/*.so"
|
|
vmove usr/lib/pkgconfig
|
|
}
|
|
}
|