summaryrefslogtreecommitdiff
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
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.
-rw-r--r--.SRCINFO34
-rw-r--r--0001-only-build-the-module-in-dkms.conf.patch49
-rw-r--r--PKGBUILD91
3 files changed, 93 insertions, 81 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 0870088..5990a3a 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,30 +1,20 @@
pkgbase = zfs-dkms
- pkgver = 0.7.9
+ pkgdesc = Kernel modules for the Zettabyte File System.
+ pkgver = 0.7.11
pkgrel = 1
- url = http://zfsonlinux.org/
- arch = i686
- arch = x86_64
+ url = https://zfsonlinux.org/
+ arch = any
license = CDDL
makedepends = git
- makedepends = spl-dkms=0.7.9
- source = git+https://github.com/zfsonlinux/zfs.git#tag=zfs-0.7.9
- source = zfs.initcpio.install
- source = zfs.initcpio.hook
+ depends = spl-dkms=0.7.11
+ depends = zfs-utils=0.7.11
+ depends = dkms
+ source = git+https://github.com/zfsonlinux/zfs.git#tag=zfs-0.7.11?signed
+ source = 0001-only-build-the-module-in-dkms.conf.patch
+ validpgpkeys = 4F3BA9AB6D1F8D683DC2DFB56AD860EED4598027
+ validpgpkeys = C33DF142657ED1F7C328A2960AB9E991C6AF658B
sha256sums = SKIP
- sha256sums = aa5706bf08b36209a318762680f3c9fb45b3fc4b8e4ef184c8a5370b2c3000ca
- sha256sums = f95ad1a5421ccbb8b01f448373f46cfd1f718361a82c2687a597325cf9827e3e
+ sha256sums = 780e590383fb00389c5e02ac15709b7a476d9e07d3c4935ed9eb67c951a88409
pkgname = zfs-dkms
- pkgdesc = Kernel modules for the Zettabyte File System.
- depends = spl-dkms=0.7.9
- depends = zfs-utils=0.7.9-1
- depends = dkms
- provides = zfs
- conflicts = zfs-git
- conflicts = zfs-lts
-
-pkgname = zfs-utils
- pkgdesc = Kernel module support files for the Zettabyte File System.
- conflicts = zfs-utils-git
- conflicts = zfs-utils-lts
diff --git a/0001-only-build-the-module-in-dkms.conf.patch b/0001-only-build-the-module-in-dkms.conf.patch
new file mode 100644
index 0000000..0e162b5
--- /dev/null
+++ b/0001-only-build-the-module-in-dkms.conf.patch
@@ -0,0 +1,49 @@
+From b4a2c0b184c9c9599421b15a430fb88deb5dbd17 Mon Sep 17 00:00:00 2001
+From: Eli Schwartz <eschwartz@archlinux.org>
+Date: Sun, 28 Oct 2018 15:01:58 -0400
+Subject: [PATCH] only build the module in dkms.conf
+
+---
+ scripts/dkms.mkconf | 19 ++-----------------
+ 1 file changed, 2 insertions(+), 17 deletions(-)
+
+diff --git a/scripts/dkms.mkconf b/scripts/dkms.mkconf
+index 88c289383..5a859a0e0 100755
+--- a/scripts/dkms.mkconf
++++ b/scripts/dkms.mkconf
+@@ -25,22 +25,7 @@ PACKAGE_CONFIG="${pkgcfg}"
+ PRE_BUILD="configure
+ --prefix=/usr
+ --with-config=kernel
+- --with-linux=\$(
+- case \`lsb_release -is\` in
+- (Debian|Devuan)
+- if [[ -e \${kernel_source_dir/%build/source} ]]
+- then
+- echo \${kernel_source_dir/%build/source}
+- else
+- # A kpkg exception for Proxmox 2.0
+- echo \${kernel_source_dir}
+- fi
+- ;;
+- (*)
+- echo \${kernel_source_dir}
+- ;;
+- esac
+- )
++ --with-linux=\${kernel_source_dir}
+ --with-linux-obj=\${kernel_source_dir}
+ --with-spl=\${source_tree}/spl-\${PACKAGE_VERSION}
+ --with-spl-obj=\${dkms_tree}/spl/\${PACKAGE_VERSION}/\${kernelver}/\${arch}
+@@ -78,7 +63,7 @@ POST_BUILD="scripts/dkms.postbuild
+ BUILD_DEPENDS[0]="spl"
+ AUTOINSTALL="yes"
+ REMAKE_INITRD="no"
+-MAKE[0]="make"
++MAKE[0]="make -C module/"
+ STRIP[0]="\$(
+ [[ -r \${PACKAGE_CONFIG} ]] \\
+ && source \${PACKAGE_CONFIG} \\
+--
+2.19.1
+
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
}