summaryrefslogtreecommitdiffstats
path: root/testing/zfs-git-grsec/APKBUILD
blob: 1e4ad0f0c629b57c698e641bc3400f4db8654d50 (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
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
# Contributor: Carlo Landmeter <clandmeter@gmail.com>
# Maintainer:

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

_kpkg=linux-$_flavor
_kver=3.6.11
_kpkgrel=14

_mypkgrel=0
_date=20121116

# 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-${_flavor}

pkgname=$_name
pkgver=$_kver
pkgrel=$(($_kpkgrel + $_mypkgrel))
pkgdesc="ZFS for Linux"
url="http://zfsonlinux.org"
arch="x86_64"
license="CDDL"
depends="spl-git-$_flavor"
depends_dev="glib-dev e2fsprogs-dev util-linux-dev
	linux-$_flavor-dev spl-git-$_flavor-dev"
makedepends="$depends_dev automake autoconf libtool"
install=""
subpackages="$pkgname-dev $pkgname-doc $_realname-utils:utils"

source="http://dev.alpinelinux.org/archive/$pkgname/$pkgname-${_date}.tar.gz
	timestamp.patch
	vdev_id_posix.patch"
_giturl="git://github.com/zfsonlinux/zfs.git"
_upload=dev.alpinelinux.org:/archive/$pkgname/

_builddir="$srcdir"/$pkgname-$_date

snapshot() {
	_date=$(date +%Y%m%d)
	local _pkg=$pkgname-$_date.tar.gz
	mkdir -p "$srcdir"
	cd "$srcdir"
	rm -rf "$pkgname"
	git clone --depth=1 --bare $_giturl || return 1
	git --git-dir ${_giturl##*/} archive -o $_pkg \
		--prefix=$pkgname-$_date/ HEAD \
		|| return 1
	msg "New snapshot: $_pkg"
	msg "Uploading to $_upload"
	_newrel=$((_mypkgrel + 1))
	scp $_pkg $_upload || return 1
	cd ..
	sed -i -e "s/^_mypkgrel=.*/_mypkgrel=$_newrel/" \
		-e "s/^_date=.*/_date=$_date/" \
		APKBUILD || return 1
	_dir=${PWD%/APKBUILD}
	_dir=${_dir%/*}
	abuild checksum && abuild -r && git add APKBUILD \
		&& git commit -m"${_dir##*/}/$pkgname: snapshot $_date"
}

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
	export LIBS="$LIBS -lintl"
	export GCC_SPECS=/usr/share/gcc/hardenednopie.specs
	./configure --prefix=/usr \
		--sysconfdir=/etc \
		--mandir=/usr/share/man \
		--infodir=/usr/share/info \
		--localstatedir=/var \
		--with-config=all \
		--with-udevdir=/lib/udev \
		|| 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="b73134395b9b72a9be30c56da231d9ca  zfs-git-grsec-20121116.tar.gz
9621735b802e34d792b03ef89727f6ea  timestamp.patch
c9a5307dc254ff4ff4808a178f4d8bd6  vdev_id_posix.patch"
sha256sums="bea2601b42bace78c148e370623fac23ae01810ab8042a53be7ee6edf3f2a481  zfs-git-grsec-20121116.tar.gz
74924b471c2a83831f274b876c1d4f293f1e142089f34fccd19ae60b59066661  timestamp.patch
fcb2b2e11ffb9b2f3d1a8eac3d7a797af396b8e1f7b17ae1b7934261a0afbb52  vdev_id_posix.patch"
sha512sums="ea3371ea05e3bcc59207a6831081899536b09acb55fafd7289fde4626aa52e46cc75ebc6f3343ba857ac49536f3c926db9be45bbd37532af0ebcaa6ff99a8bf1  zfs-git-grsec-20121116.tar.gz
2cb675e4603ea4aa951c7da2c57374bb404d52ee4fd04c719479ff07a3cf50c1d6f4b7cd2398c20327127fe81d47fcfa2ed95d18f05acd59f1ee8115334aabd2  timestamp.patch
ab92675212071abc5f95854e985d739c344d0803d647f0e081e3d2083b9a2cafc12da4c532ed1f32ae6e48ab5677ea91f9d63009d0d6eca945aea395ae2caa0a  vdev_id_posix.patch"