aboutsummaryrefslogtreecommitdiffstats
path: root/meta-filesystems/recipes-filesystems/zfs/zfs_2.1.5.bb
diff options
context:
space:
mode:
Diffstat (limited to 'meta-filesystems/recipes-filesystems/zfs/zfs_2.1.5.bb')
-rw-r--r--meta-filesystems/recipes-filesystems/zfs/zfs_2.1.5.bb61
1 files changed, 61 insertions, 0 deletions
diff --git a/meta-filesystems/recipes-filesystems/zfs/zfs_2.1.5.bb b/meta-filesystems/recipes-filesystems/zfs/zfs_2.1.5.bb
new file mode 100644
index 0000000000..6aa674c790
--- /dev/null
+++ b/meta-filesystems/recipes-filesystems/zfs/zfs_2.1.5.bb
@@ -0,0 +1,61 @@
+SUMMARY = "OpenZFS on Linux and FreeBSD"
+DESCRIPTION = "OpenZFS on Linux and FreeBSD"
+LICENSE = "CDDL-1.0"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=7087caaf1dc8a2856585619f4a787faa"
+HOMEPAGE ="https://github.com/openzfs/zfs"
+
+SRC_URI = "https://github.com/openzfs/zfs/releases/download/${BPN}-${PV}/${BPN}-${PV}.tar.gz \
+ file://0001-Define-strndupa-if-it-does-not-exist.patch \
+"
+SRC_URI[sha256sum] = "1913041e5c44ff07ca384346ad8145aeedf77e77cd1cea9ec5d533246691e10c"
+
+# Using both 'module' and 'autotools' classes seems a bit odd, they both
+# define a do_compile function.
+# That's why we opt for module-base, also this prevents module splitting.
+inherit module-base pkgconfig autotools
+
+DEPENDS = "virtual/kernel zlib util-linux libtirpc openssl curl"
+
+PACKAGECONFIG ?= "${@bb.utils.filter('DISTRO_FEATURES', 'systemd sysvinit', d)}"
+
+PACKAGECONFIG[pam] = "--enable-pam --with-pamconfigsdir=${datadir}/pam-configs --with-pammoduledir=${libdir}/security, --disable-pam"
+PACKAGECONFIG[systemd] = "--enable-systemd,--disable-systemd,"
+PACKAGECONFIG[sysvinit] = "--enable-sysvinit,--disable-sysvinit,"
+
+EXTRA_OECONF:append = " \
+ --disable-pyzfs \
+ --with-linux=${STAGING_KERNEL_DIR} --with-linux-obj=${STAGING_KERNEL_BUILDDIR} \
+ --with-mounthelperdir=${base_sbin} \
+ --with-udevdir=${base_libdir}/udev \
+ --without-dracutdir \
+ "
+
+EXTRA_OEMAKE:append = " \
+ INSTALL_MOD_PATH=${D}${root_prefix} \
+ "
+
+do_install:append() {
+ # /usr/share/zfs contains the zfs-tests folder which we do not need:
+ rm -rf ${D}${datadir}/zfs
+
+ rm -rf ${D}${datadir}/initramfs-tools
+}
+
+FILES:${PN} += "\
+ ${base_sbindir}/* \
+ ${base_libdir}/* \
+ ${sysconfdir}/* \
+ ${sbindir}/* \
+ ${bindir}/* \
+ ${libexecdir}/${BPN}/* \
+ ${libdir}/* \
+ "
+
+FILES:${PN}-dev += "\
+ ${prefix}/src/zfs-${PV}/* \
+ ${prefix}/src/spl-${PV}/* \
+ "
+# Not yet ported to rv32
+COMPATIBLE_HOST:riscv32 = "null"
+# conflicting definition of ABS macro from asm/asm.h from kernel
+COMPATIBLE_HOST:mips = "null"