# Template file for 'zfs' pkgname=zfs version=2.1.4 revision=1 build_style=gnu-configure configure_args="--with-config=user --with-mounthelperdir=/usr/bin --with-udevdir=/usr/lib/udev --with-udevruledir=/usr/lib/udev/rules.d --with-dracutdir=/usr/lib/dracut --with-tirpc" hostmakedepends="dracut libtool pkg-config python3 automake" makedepends="pam-devel zlib-devel libuuid-devel libblkid-devel libtirpc-devel attr-devel" depends="dkms>=2.2.0.3_9 perl python3 xbps-triggers>=0.121_1" conf_files="/etc/zfs/zed.d/zed.rc" short_desc="Z File System -- userland, pyzfs, and kernel modules (using DKMS)" maintainer="Toyam Cox " license="CDDL-1.0" homepage="https://openzfs.github.io/openzfs-docs/" distfiles="https://github.com/openzfs/zfs/releases/download/zfs-${version}/zfs-${version}.tar.gz" checksum=3b52c0d493f806f638dca87dde809f53861cd318c1ebb0e60daeaa061cf1acf6 # dkms must be before initramfs-regenerate to build modules before images triggers="dkms initramfs-regenerate" dkms_modules="zfs ${version}" replaces="spl<=0.7.13_1" # Because SPL was merged into zfs in 0.8.0 if [ "$XBPS_TARGET_NO_ATOMIC8" ]; then makedepends+=" libatomic-devel" fi post_patch() { # When collecting a "clean" tree for DKMS, don't leave patches in place local _f for _f in "${XBPS_SRCPKGDIR}/${pkgname}"/patches/*.patch; do rm -f "${_f##*/}" done } pre_configure() { export CFLAGS+=" -I${XBPS_CROSS_BASE}/usr/include/tirpc/" autoreconf -fi tar czf ../clean.tar.gz . } post_install() { vlicense COPYRIGHT vlicense LICENSE vlicense NOTICE vsv zed vmkdir usr/src/${pkgname}-${version} tar xf ../clean.tar.gz -C ${DESTDIR}/usr/src/${pkgname}-${version} scripts/dkms.mkconf -v ${version} -f ${DESTDIR}/usr/src/${pkgname}-${version}/dkms.conf -n zfs # Remove init and service control pieces not used in Void rm -rf ${DESTDIR}/usr/lib/systemd rm -rf ${DESTDIR}/usr/share/initramfs-tools rm -rf ${DESTDIR}/etc/init.d rm -rf ${DESTDIR}/etc/default rm -f ${DESTDIR}/etc/zfs/zfs-functions # Remove pam config framework file not used in Void rm -f ${DESTDIR}/usr/share/pam-configs/zfs_key # zfs-mount-generator is a systemd helper, no need for its man page rm -f ${DESTDIR}/usr/share/man/man8/zfs-mount-generator.8 # Contains ELF binaries. Remove it until upstream has a way to move this # into /usr/libexec or similiar. rm -rf ${DESTDIR}/usr/share/zfs/zfs-tests } zfs-devel_package() { depends="${sourcepkg}>=${version}_${revision}" short_desc="Z File System -- development files" pkg_install() { vmove usr/include vmove "usr/lib/*.a" vmove "usr/lib/*.so" vmove usr/lib/pkgconfig } } zfs-pam_package() { depends="${sourcepkg}>=${version}_${revision}" short_desc="Z File System -- PAM integration" pkg_install() { vmove usr/lib/security/pam_zfs_key.so } } do_clean() { rm -f ../clean.tar.gz } # REMARKS: # Did not split out pyzfs, because it's distributed with zfs, and no reason to # send separately.