pkgname=apparmor
pkgver=2.5.1
-pkgrel=1
+pkgrel=5
pkgdesc="Linux application security framework - mandatory access control for programs"
arch=(i686 x86_64)
license=(GPL)
url='https://launchpad.net/apparmor'
-makedepends=(autoconf make gcc perl)
-#install="${pkgname}.install"
+depends=(perl perl-locale-gettext perl-term-readkey perl-file-tail perl-rpc-xml)
+makedepends=(autoconf automake make gcc bison swig perl python2 ruby wxgtk audit)
+optdepends=('perl: many apparmor utilities' 'perl-rpc-xml: more utilities')
+provides=(apparmor-parser libapparmor apparmor-utils apparmor-profiles apparmor-notify
+ apparmor-lib apparmor-perl apparmor-python apparmor-ruby
+ apparmor-dbus apparmor-profile-editor apparmor-applet
+)
bigver="$(echo $pkgver | cut -d . -f -2)"
source=("http://launchpad.net/apparmor/$bigver/$pkgver/+download/apparmor-$pkgver.tar.gz")
md5sums=('76b37656bf42fedab0d0b9d47e690a8b')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
- #Patch
- patch=common/Make.rules; { rm "$patch"
- sed -e 's/\/usr\/bin\/pod2man/\/usr\/lib\/perl5\/core_perl\/bin\/pod2man/g' |
- sed -e 's/\/usr\/bin\/pod2html/\/usr\/lib\/perl5\/core_perl\/bin\/pod2html/g' > "$patch"
- } < "$patch"
+ msg2 'Global configuration'
+ export MAKEFLAGS+=' POD2MAN=/usr/lib/perl5/core_perl/bin/pod2man'
+ export MAKEFLAGS+=' POD2HTML=/usr/lib/perl5/core_perl/bin/pod2html'
+ export MAKEFLAGS+=' PROVE=/usr/lib/perl5/core_perl/bin/prove'
+ export PYTHON='/usr/bin/python2'
- patch=parser/tst/Makefile; { rm "$patch"
- sed -e 's/\/usr\/bin\/prove/\/usr\/lib\/perl5\/core_perl\/bin\/prove/g' > "$patch"
- } < "$patch"
+ msg2 'Patching...'
+ #Patch (maybe we can avoid patching by ./configuring things better)
patch=parser/Makefile; { rm "$patch"
- sed -e 's/pdflatex/true/g' > "$patch"
+ sed -e 's/pdflatex/true/g' > "$patch" #just workaround until we'll get pdflatex package
} < "$patch"
echo '#!/bin/true' > parser/tst/caching.sh #Can't pass this test with current kernel
- #Build
- ( cd libraries/libapparmor
- #autoconf
- #./configure --prefix="${pkgdir}/usr"
- #make
- ##make install DESTDIR=${pkgdir}
+
+ msg 'Build (these sections can be used for splitpkg in future...)'
+ ( cd parser; msg2 "${PWD##*/}"
+ make
+ make install DESTDIR=${pkgdir}
)
- ( cd parser
+ ( cd libraries/libapparmor; msg2 "${PWD##*/}"
+ ./autogen.sh
+ ./configure --prefix=/usr --with-perl --with-python --with-ruby
make
make install DESTDIR=${pkgdir}
+ #FIXME: this file should install automatically:
+ cp swig/perl/LibAppArmor.pm ${pkgdir}/usr/lib/perl5/vendor_perl/
)
- ( cd utils
+ ( cd utils; msg2 "${PWD##*/}"
make
make install DESTDIR=${pkgdir}
)
+ ( cd profiles; msg2 "${PWD##*/}"
+ make
+ make install DESTDIR=${pkgdir}
+ )
+
+ #FIXME: depends on this package itself (logparse.h,...):
+ #We should build it in splitpkg with proper dependences
+ #Now you can build, install, build and install again to enable:
+ if pacman -Qi apparmor &>/dev/null; then
+
+ ( cd deprecated/management/profile-editor; msg2 "${PWD##*/}"
+ ./macros/autogen.sh
+ ./configure --prefix=/usr
+ make
+ make install DESTDIR=${pkgdir}
+ )
+ ( cd deprecated/management/apparmor-dbus; msg2 "${PWD##*/}"
+ ./autogen.sh
+ ./configure --prefix=/usr
+ make
+ make install DESTDIR=${pkgdir}
+ )
+ #FIXME: can't build this:
+ #( cd deprecated/management/applets/apparmorapplet-gnome; msg2 "${PWD##*/}"
+ # ./autogen.sh
+ # ./configure --prefix=/usr
+ # make
+ # make install DESTDIR=${pkgdir}
+ # )
+
+ fi;
}