blob: 736153f323bafbf7b7945ab4e9dd5ba8da776221 (
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
|
# Maintainer: Yurii Kolesnykov <root@yurikoles.com>
# Contributor: Jonathon Fernyhough <jonathon"m2x+dev>
# Contributor: Eli Schwartz <eschwartz@archlinux.org>
# Contributor: Iacopo Isimbaldi <isiachi@rhye.it>
#
# Based on aur/zfs-dkms by Kevin Stolp <kevinstolp@gmail.com>
# Based on archzfs/zfs-dkms-git by Jan Houben <jan@nexttrex.de>
#
# Pull Requests are welcome here: https://github.com/yurikoles-aur/zfs-dkms-git
#
pkgname=zfs-dkms-git
pkgver=2.4.99.r305.gb9b84445ea
pkgrel=1
epoch=2
pkgdesc='Kernel modules for the Zettabyte File System.'
arch=('any')
url='https://zfsonlinux.org/'
license=('CDDL-1.0')
groups=('zfs-git')
makedepends=('git')
provides=(
"zfs=${pkgver}"
"zfs-dkms=${pkgver}"
"ZFS-MODULE=${pkgver}"
"SPL-MODULE=${pkgver}"
)
conflicts=('zfs-dkms')
source=(
'git+https://github.com/openzfs/zfs.git'
'0001-only-build-the-module-in-dkms.conf.patch'
)
sha256sums=('SKIP'
'3e742db489eec60dbabb52178f590b96e29b166f359fc2167e188eeabceb0921')
b2sums=('SKIP'
'62ea720676e0cbf096d8c5f3b944d77ce6f3f54f55e221f80afd00061d577b5dea177150cfc785bb91586f93e1b3eb500661b38bb4d2cba26e8929b245957ee3')
pkgver() {
git -C zfs describe --long | sed 's/^zfs-//;s/-rc/rc/;s/\([^-]*-g\)/r\1/;s/-/./g'
}
prepare() {
cd zfs
local src
for src in "${source[@]}"; do
src="${src%%::*}"
src="${src##*/}"
[[ $src = *.patch ]] || continue
echo "Applying patch $src..."
patch -Np1 < "../$src"
done
# remove unneeded sections from module build
sed -ri "/^AC_CONFIG_FILES\(\[$/,/^\]\)$/{
/^AC_CONFIG_FILES\(\[$/p
/^\]\)$/p
/^\s*(module\/.+|zfs.release|Makefile)$/!d
}
/^AC_CONFIG_FILES\(\[.*\]\)$/d
" configure.ac
autoreconf -fi
}
build() {
cd zfs
./scripts/dkms.mkconf -n zfs -v ${pkgver} -f dkms.conf
# update metadata
./scripts/make_gitrev.sh include/zfs_gitrev.h
_meta_release=${pkgver#*.r}
sed -i -e "s/Release:[[:print:]]*/Release: ${_meta_release/./_}/" META
}
package() {
depends=(
'dkms'
"zfs-utils-git=${epoch}:${pkgver}"
)
cd 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/compile config/config.* config/missing config/*sh "${dkmsdir}"/config/
cp scripts/dkms.postbuild scripts/objtool-wrapper.in "${dkmsdir}"/scripts/
# Install the license
install -Dm644 LICENSE -t "${pkgdir}/usr/share/licenses/${pkgname}"
}
|