summaryrefslogtreecommitdiffstats
path: root/testing/zfs-grsec/APKBUILD
blob: e97d4493679db53d833656989d05d9219d62904a (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
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
# Contributor: Carlo Landmeter <clandmeter@gmail.com>
# Maintainer:

_flavor=${FLAVOR:-grsec}
_realname=zfs
_name=$_realname-$_flavor

_kpkg=linux-$_flavor
_kver=3.14.14
_kpkgrel=0

_realver=0.6.3
_mypkgrel=0

# source the kernel version
if [ -f ../../main/linux-$_flavor/APKBUILD ]; then
        . ../../main/linux-$_flavor/APKBUILD
        [ "$_kver" != "$pkgver" ] && die "$_name: Please update _kver to $pkgver"
        [ "$_kpkgrel" != "$pkgrel" ] && die "$_name: Please update _kpkgrel to $pkgrel"
fi

_kernelver=$_kver-r$_kpkgrel
_abi_release=${_kver}-${_kpkgrel}-${_flavor}

pkgname=$_name
pkgver=$_kver
pkgrel=$(($_kpkgrel + $_mypkgrel))
pkgdesc="ZFS for Linux"
url="http://zfsonlinux.org"
#arch="x86 x86_64"
arch=
license="CDDL"
depends="spl-$_flavor"
depends_dev="glib-dev e2fsprogs-dev util-linux-dev
	linux-$_flavor-dev=$_kernelver spl-$_flavor-dev"
makedepends="$depends_dev automake autoconf libtool"
install=""
subpackages="$pkgname-dev $pkgname-utils"
source="http://archive.zfsonlinux.org/downloads/zfsonlinux/zfs/zfs-$_realver.tar.gz
	musl-fixes.patch
	timestamp.patch
	timestruct.patch
	"

_builddir="$srcdir/$_realname-$_realver"

prepare() {
	local i
	cd "$_builddir"
	for i in $source; do
		case $i in
		*.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;;
		esac
	done
}

build() {
	cd "$_builddir"
	./autogen.sh || return 1
	./configure --prefix=/usr \
		--sysconfdir=/etc \
		--mandir=/usr/share/man \
		--infodir=/usr/share/info \
		--localstatedir=/var \
		--with-config=all \
		--with-udevdir=/lib/udev \
		--with-linux=/usr/src/linux-headers-${_abi_release} \
		--with-spl=/usr/src/spl-${_realver} \
		|| return 1
	make || return 1
}

package() {
        cd "$_builddir"
        make DESTDIR="$pkgdir" install || return 1
        rm -f "$pkgdir"/usr/lib/*.la
        rm -rf "$pkgdir"/usr/libexec
        rm -rf "$pkgdir"/usr/share/dracut
}

dev() {
        mkdir -p "$subpkgdir"/usr
        mv "$pkgdir"/usr/src \
                "$subpkgdir"/usr || return 1
        default_dev
}

utils() {
        pkgdesc="Userland tools to manage zfs on linux"
        depends="bash"
        mkdir -p "$subpkgdir"
        mv "$pkgdir"/* "$subpkgdir" || return 1
        mkdir -p "$pkgdir"/lib
        mv "$subpkgdir"/lib/modules \
                "$pkgdir"/lib || return 1
        rm -f "$subpkgdir"/etc/init.d/zfs
        install -m755 -D "$_builddir"/etc/init.d/zfs.gentoo.in \
                "$subpkgdir"/etc/init.d/zfs
        sed -i -e "s/@sbindir@/\/usr\/sbin/g" \
                "$subpkgdir"/etc/init.d/zfs || return 1
        sed -i -e "s/@sysconfdir@/\/etc/g" \
                "$subpkgdir"/etc/init.d/zfs || return 1
}

md5sums="5bcc32c122934d421eba68e16826637d  zfs-0.6.3.tar.gz
58992bd34b25f894f2da802d4000b07d  musl-fixes.patch
9621735b802e34d792b03ef89727f6ea  timestamp.patch
178af5841df53424ca0539028f318ad7  timestruct.patch"
sha256sums="29bcfdd4161521692d2ca2515ad27a9edd9491c9cb5c6fb1e923d8eed28d391b  zfs-0.6.3.tar.gz
524cd01790837c025b1caf0fa7706bb7925723128649771f5e0bc2a0ebc1775b  musl-fixes.patch
74924b471c2a83831f274b876c1d4f293f1e142089f34fccd19ae60b59066661  timestamp.patch
f70680c25f78e501d676af7260f024fba02847c6176d4e00cc9659c9e3a4c1a5  timestruct.patch"
sha512sums="fdeaa6ad4a899196b165473eb3b33b30f1a6020ab112331a3f92ff2f15fd3438b1ef3908b2c445ba2c114be0f96e73797f8985c9c6738f49980410e7e2a4d2cd  zfs-0.6.3.tar.gz
5a940776ba2a69ba072d9a2d223b9ac09fe7e5fd0a6356ecf1cb384e7f91943cdbdd095ec3ca9951e3c20e9eb92f65a1398883324d4544e115f18c8506bd53aa  musl-fixes.patch
2cb675e4603ea4aa951c7da2c57374bb404d52ee4fd04c719479ff07a3cf50c1d6f4b7cd2398c20327127fe81d47fcfa2ed95d18f05acd59f1ee8115334aabd2  timestamp.patch
32346cdce1f52db36c469682718368c47b3f5b9acf40d3a27444f9dc69b29f512a385881bb92f8fade670eb71ce4d55fe914f33c025534a0e31773905229d019  timestruct.patch"