blob: 713b8ca3ea9fd2248d325693cab3ca4c87142d43 (
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
|
# Maintainer: Eli Schwartz <eschwartz@archlinux.org>
# Contributor: Iacopo Isimbaldi <isiachi@rhye.it>
# All my PKGBUILDs are managed at https://github.com/eli-schwartz/pkgbuilds
pkgname=zfs-dkms-git
pkgver=0.8.0.r709.g5a42ef04f
pkgrel=1
epoch=1
pkgdesc="Kernel modules for the Zettabyte File System."
arch=('any')
url="https://zfsonlinux.org/"
license=('CDDL')
makedepends=('git')
conflicts=("${pkgname%-git}" 'spl-dkms')
provides=("ZFS-MODULE=${pkgver}" "SPL-MODULE=${pkgver}" "${pkgname%-git}=${pkgver}" 'spl-dkms')
# ambiguous, provided for backwards compat, pls don't use
provides+=('zfs')
replaces=('spl-dkms-git')
source=("git+https://github.com/zfsonlinux/zfs.git"
"0001-only-build-the-module-in-dkms.conf.patch")
sha256sums=('SKIP'
'780e590383fb00389c5e02ac15709b7a476d9e07d3c4935ed9eb67c951a88409')
b2sums=('SKIP'
'1fdae935043d979b9241f07f8baa25a9a0367c24c31c84a59dfe8d6b468a523d8f49b68da3c7fd3194db6638f9d7bef046fc5e2669ce25d73c65009c16bf6c50')
pkgver() {
cd "${srcdir}"/zfs
git describe --long | sed 's/^zfs-//;s/\([^-]*-g\)/r\1/;s/-/./g'
}
prepare() {
cd "${srcdir}"/zfs
patch -p1 -i ../0001-only-build-the-module-in-dkms.conf.patch
# remove unneeded sections from module build
sed -ri "/AC_CONFIG_FILES/,/]\)/{
/AC_CONFIG_FILES/n
/]\)/n
/^\s*(module\/.*|zfs.release|Makefile)/!d
}" configure.ac
autoreconf -fi
}
build() {
cd "${srcdir}"/zfs
./scripts/dkms.mkconf -n zfs -v ${pkgver} -f dkms.conf
# update metadata
./scripts/make_gitrev.sh
_meta_release=${pkgver#*.r}
sed -i -e "s/Release:[[:print:]]*/Release: ${_meta_release/./_}/" META
}
package() {
depends=("zfs-utils-git=${epoch}:${pkgver}" 'dkms')
cd "${srcdir}"/zfs
dkmsdir="${pkgdir}/usr/src/zfs-${pkgver}"
install -d "${dkmsdir}"/{config,scripts}
cp -a configure dkms.conf Makefile.in META zfs_config.h.in zfs.release.in include/ module/ "${dkmsdir}"/
cp config/config.* config/missing config/*sh "${dkmsdir}"/config/
cp scripts/enum-extract.pl scripts/dkms.postbuild "${dkmsdir}"/scripts/
}
|