summaryrefslogtreecommitdiff
path: root/kernels/aufs3-libre/PKGBUILD
blob: 456b84e51b72a39ef51d7a6f51e03a06ff1a76ef (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
# Contributor: Paul Mattal <pjmattal@elys.com>
# Maintainer: Calimero <calimeroteknik@free.fr>
# Maintainer (Parabola): André Silva <emulatorman@lavabit.com>
# Contributor (Parabola): Márcio Silva <coadde@lavabit.com>

pkgname=aufs3-libre
pkgver=3.3_20120430
pkgrel=1.1

# Set to whatever the tree of your aufs-libre-friendly kernel is, and set the right dependency.
#_kernver=${pkgver%_*}-LIBRE
#depends=('aufs_friendly')

_kernver=3.3-LIBRE-AUFS_FRIENDLY
depends=('linux-libre-aufs_friendly' 'linux-libre-aufs_friendly-headers')

pkgdesc="Another UnionFS implementation"
arch=('i686' 'x86_64' 'mips64el')
url="http://aufs.sourceforge.net/"
license=('GPL2')
replaces=('aufs' 'aufs2' 'aufs3')
conflicts=('aufs2' 'aufs3')
provides=("aufs3=$pkgver")
install=aufs3-libre.install
source=("http://calimeroteknik.free.fr/src/aufs3-${pkgver}.tar.gz")
options=('!makeflags' '!strip')
md5sums=('70ccfcf9914ce46ba7cbab42444b6ce8')

build() {
  cd "${srcdir}/aufs3-${pkgver}"
  sed -i 's|CONFIG_AUFS_HNOTIFY =.*|CONFIG_AUFS_HNOTIFY = y|' \
     config.mk
  sed -i 's|CONFIG_AUFS_HFSNOTIFY =.*|CONFIG_AUFS_HFSNOTIFY = y|' \
     config.mk
  sed -i 's|CONFIG_AUFS_EXPORT =.*|CONFIG_AUFS_EXPORT = y|' \
     config.mk
  sed -i 's|CONFIG_AUFS_SHWH =.*|CONFIG_AUFS_SHWH = y|' \
     config.mk
  sed -i 's|CONFIG_AUFS_BDEV_LOOP =.*|CONFIG_AUFS_BDEV_LOOP = y|' \
     config.mk
  sed -i 's|CONFIG_AUFS_BR_RAMFS =.*|CONFIG_AUFS_BR_RAMFS = y|' \
     config.mk
  sed -i 's|CONFIG_AUFS_DEBUG =.*|CONFIG_AUFS_DEBUG =|' \
     config.mk
  if [ "${CARCH}" = "x86_64" ]; then
    inot64=" y"
  else
    inot64=""
  fi
  sed -i "s|CONFIG_AUFS_INO_T_64 =.*|CONFIG_AUFS_INO_T_64 =${inot64}|" \
     config.mk
  # build, sed fixes are from gentoo portage build
  sed -i "s:aufs.ko usr/include/linux/aufs_type.h:aufs.ko:g" Makefile
  sed -i "s:__user::g" include/linux/aufs_type.h
  ln -s "/usr/src/linux-$(</usr/lib/modules/extramodules-${_kernver}/version)/include/linux/mount.h" fs/mount.h
  make KDIR="/usr/src/linux-$(</usr/lib/modules/extramodules-${_kernver}/version)"
}

package() {
  cd "${srcdir}/aufs3-${pkgver}"
  install -D -m644 fs/aufs/aufs.ko \
    "${pkgdir}/usr/lib/modules/extramodules-${_kernver}/aufs.ko"
    #"${pkgdir}/lib/modules/${_kernver}/kernel/fs/aufs/aufs.ko"
  # tweak the install script for the right kernel version
  sed -i -e "s/KERNEL_VERSION=.*/KERNEL_VERSION=${_kernver}/g" \
    "${startdir}/aufs3-libre.install"
  # install include file
  install -D -m 644 include/linux/aufs_type.h "${pkgdir}/usr/include/linux/aufs_type.h"
  # gzip -9 the module
  find "${pkgdir}" -name '*.ko' -exec gzip -9 {} \;
}