summaryrefslogtreecommitdiff
path: root/PKGBUILD
diff options
context:
space:
mode:
authorEli Schwartz <eschwartz@archlinux.org>2018-10-28 17:06:13 -0400
committerEli Schwartz <eschwartz@archlinux.org>2018-10-28 17:06:13 -0400
commitc574254ed04942d1bce77abfae29e29dc20d1f93 (patch)
treed6306b46fd06defe9cab2e278245786112d2a78d /PKGBUILD
parentDon't install forked and bundled bash completion script. (diff)
downloadzfs-dkms-c574254ed04942d1bce77abfae29e29dc20d1f93.tar.xz
upgpkg: zfs-dkms 0.7.11-1
Split utils out into separate package as there's no need to make binary zfs module packages depend on a dkms split package just to acquire the utils. Mark the dkms package as an -any package, and instead of installing the whole source tree, just install the bits needed to build the modules. Add PGP verification checks.
Diffstat (limited to 'PKGBUILD')
-rw-r--r--PKGBUILD91
1 files changed, 32 insertions, 59 deletions
diff --git a/PKGBUILD b/PKGBUILD
index e6cca47..11c2932 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,72 +1,45 @@
-#
-# Maintainer: Iacopo Isimbaldi <isiachi@rhye.it>
-#
+# Maintainer: Eli Schwartz <eschwartz@archlinux.org>
+# Contributor: Iacopo Isimbaldi <isiachi@rhye.it>
-pkgbase="zfs-dkms"
-pkgname=("zfs-dkms" "zfs-utils")
-pkgver=0.7.9
+pkgname=zfs-dkms
+pkgver=0.7.11
pkgrel=1
+pkgdesc="Kernel modules for the Zettabyte File System."
+arch=('any')
+url="https://zfsonlinux.org/"
license=('CDDL')
-makedepends=("git" "spl-dkms=${pkgver}")
-arch=("i686" "x86_64")
-url="http://zfsonlinux.org/"
-source=("git+https://github.com/zfsonlinux/zfs.git#tag=zfs-${pkgver}"
- "zfs.initcpio.install"
- "zfs.initcpio.hook")
+depends=("spl-dkms=${pkgver}" "zfs-utils=${pkgver}" 'dkms')
+makedepends=('git')
+source=("git+https://github.com/zfsonlinux/zfs.git#tag=zfs-${pkgver}?signed"
+ "0001-only-build-the-module-in-dkms.conf.patch")
sha256sums=('SKIP'
- 'aa5706bf08b36209a318762680f3c9fb45b3fc4b8e4ef184c8a5370b2c3000ca'
- 'f95ad1a5421ccbb8b01f448373f46cfd1f718361a82c2687a597325cf9827e3e')
+ '780e590383fb00389c5e02ac15709b7a476d9e07d3c4935ed9eb67c951a88409')
+validpgpkeys=('4F3BA9AB6D1F8D683DC2DFB56AD860EED4598027' # Tony Hutter (GPG key for signing ZFS releases) <hutter2@llnl.gov>
+ 'C33DF142657ED1F7C328A2960AB9E991C6AF658B') # Brian Behlendorf <behlendorf1@llnl.gov>
-build() {
- cd "${srcdir}/zfs"
- ./autogen.sh
+prepare() {
+ cd "${srcdir}"/${pkgname%-dkms}
- ./configure --prefix=/usr \
- --sysconfdir=/etc \
- --sbindir=/usr/bin \
- --with-mounthelperdir=/usr/bin \
- --libdir=/usr/lib \
- --datadir=/usr/share \
- --includedir=/usr/include \
- --with-udevdir=/usr/lib/udev \
- --libexecdir=/usr/lib/zfs \
- --with-config=user
- make
-}
-
-package_zfs-dkms() {
- pkgdesc="Kernel modules for the Zettabyte File System."
- depends=("spl-dkms=${pkgver}" "zfs-utils=${pkgver}-${pkgrel}" "dkms")
- provides=("zfs")
- conflicts=("zfs-git" "zfs-lts")
+ patch -p1 -i ../0001-only-build-the-module-in-dkms.conf.patch
- dkmsdir="${pkgdir}/usr/src/zfs-${pkgver}"
- install -d "${dkmsdir}"
- cp -a ${srcdir}/zfs/. ${dkmsdir}
+ # remove unneeded sections from module build
+ sed -ri "/AC_CONFIG_FILES/,/]\)/{
+/AC_CONFIG_FILES/n
+/]\)/n
+/^\s*(module\/.*)?(${pkgname%-dkms}.release|Makefile)/!d
+}" configure.ac
- cd "${dkmsdir}"
- make clean
- make distclean
- find . -name ".git*" -print0 | xargs -0 rm -fr --
- scripts/dkms.mkconf -v ${pkgver} -f dkms.conf -n zfs
- chmod g-w,o-w -R .
+ autoreconf -fi
}
-package_zfs-utils() {
- pkgdesc="Kernel module support files for the Zettabyte File System."
- conflicts=("zfs-utils-git" "zfs-utils-lts")
-
- cd "${srcdir}/zfs"
- make DESTDIR="${pkgdir}" install
- install -D -m644 contrib/bash_completion.d/zfs "${pkgdir}"/usr/share/bash-completion/completions/zfs
-
- # Remove uneeded files
- rm -r "${pkgdir}"/etc/init.d
- rm -r "${pkgdir}"/usr/lib/dracut
- rm -r "${pkgdir}"/usr/share/initramfs-tools
+package() {
+ cd "${srcdir}"/${pkgname%-dkms}
- install -D -m644 "${srcdir}"/zfs.initcpio.hook "${pkgdir}"/usr/lib/initcpio/hooks/zfs
- install -D -m644 "${srcdir}"/zfs.initcpio.install "${pkgdir}"/usr/lib/initcpio/install/zfs
+ dkmsdir="${pkgdir}/usr/src/${pkgname%-dkms}-${pkgver}"
+ install -d "${dkmsdir}"/{config,scripts}
+ cp -a configure Makefile.in META ${pkgname%-dkms}_config.h.in ${pkgname%-dkms}.release.in include/ module/ "${dkmsdir}"/
+ cp config/config.* config/missing config/*sh "${dkmsdir}"/config/
+ cp scripts/enum-extract.pl scripts/dkms.postbuild "${dkmsdir}"/scripts/
- mkdir -p "${pkgdir}"/usr/lib/initcpio/install
+ ./scripts/dkms.mkconf -n ${pkgname%-dkms} -v ${pkgver} -f "${dkmsdir}"/dkms.conf
}