# Contributor: Carlo Landmeter # Maintainer: _flavor=${FLAVOR:-grsec} _realname=zfs-git _name=$_realname-$_flavor _kpkg=linux-$_flavor _kver=3.6.11 _kpkgrel=12 _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"