X-Git-Url: https://git.harvie.cz/?a=blobdiff_plain;f=apparmor%2FPKGBUILD;h=5d3380319d0aafa4efe696a02fe89cf523e72913;hb=1667e25eee0fa5028f948ba3bafa3d63895d45e8;hp=ae2f6264cecdeccf05be8ed7119e7076c18b92f2;hpb=57031b20bb173c0aef7485910861e8de7a4222d2;p=mirrors%2FArchLinux-Packages.git diff --git a/apparmor/PKGBUILD b/apparmor/PKGBUILD index ae2f626..5d33803 100644 --- a/apparmor/PKGBUILD +++ b/apparmor/PKGBUILD @@ -2,47 +2,59 @@ # Maintainer: Thomas Mudrunka # You can also contact me on http://blog.harvie.cz/ +pkgbase=apparmor pkgname=apparmor -pkgver=2.5.1 -pkgrel=5 -pkgdesc="Linux application security framework - mandatory access control for programs" +true && pkgname=(apparmor-parser apparmor-libapparmor apparmor-utils apparmor-profiles) + +pkgver=2.6.0 +pkgrel=1 arch=(i686 x86_64) license=(GPL) url='https://launchpad.net/apparmor' -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 -) +groups=(apparmor) +makedepends=(swig perl python2 ruby perl-locale-gettext wxgtk audit) +optdepends=('kernel26>=2.6.36: kernel with AppArmor support') + +pacman -Qi apparmor-libapparmor &>/dev/null && + true && pkgname=(${pkgname[*]} apparmor-profile-editor apparmor-dbus) && + depends=(${depends[*]} apparmor-libapparmor) && + msg "Building with libapparmor dependent packages..." + bigver="$(echo $pkgver | cut -d . -f -2)" source=("http://launchpad.net/apparmor/$bigver/$pkgver/+download/apparmor-$pkgver.tar.gz") -md5sums=('76b37656bf42fedab0d0b9d47e690a8b') +md5sums=('3b4fb4186ac6440a03d8f2dcf188d4b4') + +#Configuration +core_perl_dir='/usr/bin/core_perl' +export MAKEFLAGS+=" POD2MAN=${core_perl_dir}/pod2man" +export MAKEFLAGS+=" POD2HTML=${core_perl_dir}/pod2html" +export MAKEFLAGS+=" PROVE=${core_perl_dir}/prove" +export PYTHON='/usr/bin/python2' build() { - cd "${srcdir}/${pkgname}-${pkgver}" + export srcroot="${srcdir}/${pkgbase}-${pkgver}"; +} - 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' +package_apparmor-parser() { + pkgdesc='AppArmor parser - loads AA profiles to kernel module' + cd "${srcroot}/parser"; msg2 "${PWD##*/}" - msg2 'Patching...' - #Patch (maybe we can avoid patching by ./configuring things better) - patch=parser/Makefile; { rm "$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 + msg2 'Patching...' + #Patch (maybe we can avoid patching by ./configuring things better) + patch=Makefile; { rm "$patch" + sed -e 's/pdflatex/true/g' > "$patch" #just workaround until we'll get pdflatex package + } < "$patch" + echo '#!/bin/true' > tst/caching.sh #Can't pass this test with current kernel + 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 libraries/libapparmor; msg2 "${PWD##*/}" +package_apparmor-libapparmor() { + pkgdesc='AppArmor library' + makedepends=(swig perl python2 ruby) + provides=(apparmor-lib libapparmor apparmor-perl apparmor-python apparmor-ruby) + ( cd "${srcroot}/libraries/libapparmor"; msg2 "${PWD##*/}" ./autogen.sh ./configure --prefix=/usr --with-perl --with-python --with-ruby make @@ -50,39 +62,61 @@ build() { #FIXME: this file should install automatically: cp swig/perl/LibAppArmor.pm ${pkgdir}/usr/lib/perl5/vendor_perl/ ) - ( cd utils; msg2 "${PWD##*/}" +} + +package_apparmor-utils() { + pkgdesc='AppArmor userspace utilities' + depends=(perl perl-locale-gettext perl-term-readkey perl-file-tail perl-rpc-xml) + optdepends=('perl: many apparmor utilities' 'perl-rpc-xml: more utilities') + provides=(apparmor-notify); + install=('apparmor.install'); + ( cd "${srcroot}/utils"; msg2 "${PWD##*/}" make make install DESTDIR=${pkgdir} ) - ( cd profiles; msg2 "${PWD##*/}" +} + +package_apparmor-profiles() { + pkgdesc='AppArmor sample pre-made profiles' + ( cd "${srcroot}/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##*/}" +package_apparmor-profile-editor() { + pkgdesc='AppArmor profile editor using WxWidgets (or WxGTK)' + depends=(apparmor-libapparmor wxgtk audit) + ( cd "${srcroot}/deprecated/management/profile-editor"; msg2 "${PWD##*/}" ./macros/autogen.sh ./configure --prefix=/usr make make install DESTDIR=${pkgdir} ) - ( cd deprecated/management/apparmor-dbus; msg2 "${PWD##*/}" +} + +package_apparmor-dbus() { + pkgdesc='AppArmor DBUS API' + depends=(apparmor-libapparmor) + ( cd "${srcroot}/deprecated/management/apparmor-dbus"; msg2 "${PWD##*/}" ./autogen.sh ./configure --prefix=/usr make make install DESTDIR=${pkgdir} ) +} + +package_apparmor-applet() { + pkgdesc='AppArmor Applet for Gnome' + depends=(apparmor-libapparmor) #FIXME: can't build this: - #( cd deprecated/management/applets/apparmorapplet-gnome; msg2 "${PWD##*/}" - # ./autogen.sh - # ./configure --prefix=/usr - # make - # make install DESTDIR=${pkgdir} - # ) - - fi; + ( cd "${srcroot}/deprecated/management/applets/apparmorapplet-gnome"; msg2 "${PWD##*/}" + ./autogen.sh + ./configure --prefix=/usr + make + make install DESTDIR=${pkgdir} + ) } + +#AUR hack: +pkgdesc='Linux application security framework - mandatory access control for programs'