diff options
Diffstat (limited to 'abs/core-testing/aufs')
-rw-r--r-- | abs/core-testing/aufs/PKGBUILD | 57 | ||||
-rw-r--r-- | abs/core-testing/aufs/aufs.install | 31 |
2 files changed, 88 insertions, 0 deletions
diff --git a/abs/core-testing/aufs/PKGBUILD b/abs/core-testing/aufs/PKGBUILD new file mode 100644 index 0000000..57b6e24 --- /dev/null +++ b/abs/core-testing/aufs/PKGBUILD @@ -0,0 +1,57 @@ +# $Id: PKGBUILD 5885 2008-07-21 19:28:11Z thomas $ +# Contributor: Paul Mattal <paul@mattal.com> +# Maintainer: Paul Mattal <pjmattal@elys.com> +pkgname=aufs +pkgver=20080527 +pkgrel=2 +_kernver='2.6.26-ARCH' +pkgdesc="Another Unionfs Implementation that supports NFS branches" +arch=('i686' 'x86_64') +url="http://aufs.sourceforge.net/" +license=('GPL2') +depends=('kernel26>=2.6.26-1' 'kernel26<=2.6.27' 'glibc' 'aufs-utils') +install=$pkgname.install +source=(ftp://ftp.archlinux.org/other/aufs/$pkgname-$pkgver.tar.gz) +options=(!libtool !makeflags) +md5sums=('4378221aa5763d1f4408a0bbb0e80f0a') + +build() { + cd $startdir/src/$pkgname || return 1 + + # use splice functions exported by unionfs kernel patch + # - important for loopback fs mounts + sed s'|#if.*KERNEL_VERSION(2, 6, 26).*|#if 0|' -i fs/aufs25/vfsub.h \ + || return 1 + sed -i 's|CONFIG_AUFS_SPLICE_PATCH =|CONFIG_AUFS_SPLICE_PATCH = y|' \ + local.mk || return 1 + + # patch for spin_lock conflict with the new unionfs patch + sed s'|#if.*KERNEL_VERSION(2, 6, 26).*|#if 0|' -i fs/aufs25/cpup.c \ + || return 1 + + sed -i 's|.*CONFIG_AUFS_SHWH =.*|CONFIG_AUFS_SHWH = y|' \ + local.mk || return 1 + + # configure for NFS by: + # 1) configure local.mk to use FILP and LHASH + sed -i 's|CONFIG_AUFS_PUT_FILP_PATCH =|CONFIG_AUFS_PUT_FILP_PATCH = y|' \ + local.mk || return 1 + sed -i 's|CONFIG_AUFS_LHASH_PATCH =|CONFIG_AUFS_LHASH_PATCH = y|' \ + local.mk || return 1 + # 2) configure local.mk NOT to use FAKE_DM + sed -i 's|CONFIG_AUFS_FAKE_DM = y|CONFIG_AUFS_FAKE_DM = |' \ + local.mk || return 1 + + # build + make KDIR=/usr/src/linux-$_kernver/ -f local.mk || return 1 + + # install + install -D -m644 fs/aufs25/aufs.ko \ + $startdir/pkg/lib/modules/$_kernver/fs/aufs25/aufs.ko || return 1 + + # tweak the install script for the right kernel version + sed -i -e "s/KERNEL_VERSION=.*/KERNEL_VERSION=${_kernver}/g" \ + $startdir/$pkgname.install || return 1 +} + +# vim:set ts=2 sw=2 et: diff --git a/abs/core-testing/aufs/aufs.install b/abs/core-testing/aufs/aufs.install new file mode 100644 index 0000000..42d039a --- /dev/null +++ b/abs/core-testing/aufs/aufs.install @@ -0,0 +1,31 @@ +pre_install() { + /bin/true +} + +post_install() { + # updating module dependencies + echo ">>> Updating module dependencies. Please wait ..." + KERNEL_VERSION=2.6.26-ARCH + depmod -v $KERNEL_VERSION > /dev/null 2>&1 + /bin/true +} + +post_upgrade() { + # updating module dependencies + echo ">>> Updating module dependencies. Please wait ..." + KERNEL_VERSION=2.6.26-ARCH + depmod -v $KERNEL_VERSION > /dev/null 2>&1 + /bin/true +} + +post_remove() { + # updating module dependencies + echo ">>> Updating module dependencies. Please wait ..." + KERNEL_VERSION=2.6.26-ARCH + depmod -v $KERNEL_VERSION > /dev/null 2>&1 + /bin/true +} + +op=$1 +shift +$op $* |