commit:     11944e8d50732ae05a50a11a447a95e15cc846ff
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Sep 22 00:51:23 2021 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Sep 22 01:19:15 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=11944e8d

sys-fs/zfs-kmod: add 2.0.6

Signed-off-by: Sam James <sam <AT> gentoo.org>

 sys-fs/zfs-kmod/Manifest              |   2 +
 sys-fs/zfs-kmod/zfs-kmod-2.0.6.ebuild | 208 ++++++++++++++++++++++++++++++++++
 2 files changed, 210 insertions(+)

diff --git a/sys-fs/zfs-kmod/Manifest b/sys-fs/zfs-kmod/Manifest
index 26db11b413c..0cad7488b20 100644
--- a/sys-fs/zfs-kmod/Manifest
+++ b/sys-fs/zfs-kmod/Manifest
@@ -1,6 +1,8 @@
 DIST zfs-0.8.6.tar.gz 9295260 BLAKE2B 
45424d710aaf75a05f766ae523ae157a24b5cbdcefe72a59e4cede81e42f7a92ae7f01150388437b78cd49f3d28b9664599f2a624516e6b3f1073497194a99f2
 SHA512 
626b172554f39a5c70f6ea5c599a92fae52534590d1b0273de2bbfc3676d29dff0eade8ca17e5f179a59870c12bc758fb53b7900f8a1fdbdef3a9161b93f9cce
 DIST zfs-2.0.5.tar.gz 13166149 BLAKE2B 
4505c43a3b9a6c2b925383d00bbd9f17505290ded83f9bd3f08211769fa39254742340bdda65efd53f87f1708138517f91f8a43c01f3ce4191de200c84c77754
 SHA512 
ee1b3f0347442ee649a7ee8a2bb08208e011eea994076d30dd08dcd51dab29df0ff369b0c6e709346fa7de69cb07e0ffdceb34f01edb93d414578d1ffc6051ba
 DIST zfs-2.0.5.tar.gz.asc 836 BLAKE2B 
6bc53160ce650f63c717b67116fb754c7a8196c9aa99bb6e43f0145bb30a0446a1ba5695b8207b085435da289fa0058643201ef2f8827e12b0803ab20b0df305
 SHA512 
91e73a8da45e4f49113fc1af684143902a23c9cf5e59f8cd2f3a1214aeff57af63a7fa05dbe3fa0465f002521b89a43d6086d765d03209d83a41761d56b358aa
+DIST zfs-2.0.6.tar.gz 13192941 BLAKE2B 
3a83303b016ec4259c286af8a9ceb281829d26508d411df91dd94193bca8c3155ef0ba63604e95f6add5f0c6cf6d100b0f567efc33b6c484c9ff811924da6ccd
 SHA512 
52a5576eed21868b2a3d63d05d3d8c35b5e59ee88c7ddab1dc070644539f9acd56bde43ba5e965ad951a6d50a014fb429a7977d2ab1a2bfcadd92ea78dd57bf8
+DIST zfs-2.0.6.tar.gz.asc 836 BLAKE2B 
065eba3361ef4234acc67df0236ab9a6737ba9fe5a706be98b55dd64d10360160ca787d8873f27451a2107225ae657dc4cab20a7c2a268cd2de64c8d82d0327a
 SHA512 
123569ecfcee22ac462160acf61b120144c774bc5c0d46a50d2b7312f7565da1a9d780e1a6207dba5834917c66d5b852763e4a3162378d5c9bb90b0dfde35c5c
 DIST zfs-2.1.0.tar.gz 34810470 BLAKE2B 
f7cc1cde711c255bacb000207b8e9a594105d18601a503d75a2a3055ed29ca941e148492fe52809f81a250848cfb5868b3d1c42860464a3d7d744a416db08929
 SHA512 
2121b90a1d4d92353801c48a2e34e2dd42bd295dacc3c30aa77cde967a1326e17c983bdd6905552421df0a652c09e84b3d4d2ba01001e053b8afb12e189c046f
 DIST zfs-2.1.0.tar.gz.asc 195 BLAKE2B 
d5a7c01c7fd1798a235d5bc9ba89353a85978ac8bb1eaec1c587b8cc6d7cd24b0d7613c465a8da7ba29a172e4ebd6e465f893145d9dd7adf11d7e3858fea835a
 SHA512 
1c5c8d20adbcc27c5e5d760a84e258a897dee7c3950ef1eb56f3ef6bd1c85516c7776ce30b3e63229cd65315d43e06b5e04c587e9483b96b00adb42d24749c1a
 DIST zfs-2.1.1.tar.gz 34836374 BLAKE2B 
09ee6bd30e8266342bd975454086049c3fd9142e7dacfe52166575c20e3c92688f9b457d75b2a2068fc281e65f78e1d47450545504cdf8bc31e23663545d7800
 SHA512 
b69ce764a9f7438ec2c90f86be02abfd684c67cd38de876374e3e6f4b2f82a75d86fa70205def2ba454ad27e52ec8d955ebc4ba456e91d397129a54ea849c19c

diff --git a/sys-fs/zfs-kmod/zfs-kmod-2.0.6.ebuild 
b/sys-fs/zfs-kmod/zfs-kmod-2.0.6.ebuild
new file mode 100644
index 00000000000..e7c85c6b3e4
--- /dev/null
+++ b/sys-fs/zfs-kmod/zfs-kmod-2.0.6.ebuild
@@ -0,0 +1,208 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools dist-kernel-utils flag-o-matic linux-mod toolchain-funcs
+
+DESCRIPTION="Linux ZFS kernel module for sys-fs/zfs"
+HOMEPAGE="https://github.com/openzfs/zfs";
+
+if [[ ${PV} == "9999" ]]; then
+       inherit git-r3
+       EGIT_REPO_URI="https://github.com/openzfs/zfs.git";
+else
+       VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/openzfs.asc
+       inherit verify-sig
+
+       MY_PV="${PV/_rc/-rc}"
+       
SRC_URI="https://github.com/openzfs/zfs/releases/download/zfs-${MY_PV}/zfs-${MY_PV}.tar.gz";
+       SRC_URI+=" verify-sig? ( 
https://github.com/openzfs/zfs/releases/download/zfs-${MY_PV}/zfs-${MY_PV}.tar.gz.asc
 )"
+       S="${WORKDIR}/zfs-${PV%_rc?}"
+       ZFS_KERNEL_COMPAT="5.14"
+
+       if [[ ${PV} != *_rc* ]]; then
+               KEYWORDS="~amd64 ~arm64 ~ppc64"
+       fi
+fi
+
+LICENSE="CDDL MIT debug? ( GPL-2+ )"
+SLOT="0/${PVR}"
+IUSE="custom-cflags debug +rootfs"
+
+RDEPEND="${DEPEND}
+       !sys-kernel/spl
+"
+
+BDEPEND="
+       dev-lang/perl
+       virtual/awk
+"
+
+if [[ ${PV} != "9999" ]] ; then
+       BDEPEND+=" verify-sig? ( app-crypt/openpgp-keys-openzfs )"
+fi
+
+# PDEPEND in this form is needed to trick portage suggest
+# enabling dist-kernel if only 1 package have it set
+PDEPEND="dist-kernel? ( ~sys-fs/zfs-${PV}[dist-kernel] )"
+
+RESTRICT="debug? ( strip ) test"
+
+DOCS=( AUTHORS COPYRIGHT META README.md )
+
+pkg_pretend() {
+       use rootfs || return 0
+
+       if has_version virtual/dist-kernel && ! use dist-kernel; then
+               ewarn "You have virtual/dist-kernel installed, but"
+               ewarn "USE=\"dist-kernel\" is not enabled for ${CATEGORY}/${PN}"
+               ewarn "It's recommended to globally enable dist-kernel USE flag"
+               ewarn "to auto-trigger initrd rebuilds with kernel updates"
+       fi
+}
+
+pkg_setup() {
+       CONFIG_CHECK="
+               !DEBUG_LOCK_ALLOC
+               EFI_PARTITION
+               MODULES
+               !PAX_KERNEXEC_PLUGIN_METHOD_OR
+               !TRIM_UNUSED_KSYMS
+               ZLIB_DEFLATE
+               ZLIB_INFLATE
+       "
+
+       use debug && CONFIG_CHECK="${CONFIG_CHECK}
+               FRAME_POINTER
+               DEBUG_INFO
+               !DEBUG_INFO_REDUCED
+       "
+
+       use rootfs && \
+               CONFIG_CHECK="${CONFIG_CHECK}
+                       BLK_DEV_INITRD
+                       DEVTMPFS
+       "
+
+       kernel_is -lt 5 && CONFIG_CHECK="${CONFIG_CHECK} IOSCHED_NOOP"
+
+       if [[ ${PV} != "9999" ]]; then
+               local kv_major_max kv_minor_max zcompat
+               zcompat="${ZFS_KERNEL_COMPAT_OVERRIDE:-${ZFS_KERNEL_COMPAT}}"
+               kv_major_max="${zcompat%%.*}"
+               zcompat="${zcompat#*.}"
+               kv_minor_max="${zcompat%%.*}"
+               kernel_is -le "${kv_major_max}" "${kv_minor_max}" || die \
+                       "Linux ${kv_major_max}.${kv_minor_max} is the latest 
supported version"
+
+       fi
+
+       kernel_is -ge 3 10 || die "Linux 3.10 or newer required"
+
+       linux-mod_pkg_setup
+}
+
+src_prepare() {
+       default
+
+       # Run unconditionally (bug #792627)
+       eautoreconf
+
+       if [[ ${PV} != "9999" ]]; then
+               # Set module revision number
+               sed -i "s/\(Release:\)\(.*\)1/\1\2${PR}-gentoo/" META || die 
"Could not set Gentoo release"
+       fi
+}
+
+src_configure() {
+       set_arch_to_kernel
+
+       use custom-cflags || strip-flags
+
+       filter-ldflags -Wl,*
+
+       # Set CROSS_COMPILE in the environment.
+       # This allows the user to override it via make.conf or via a local 
Makefile.
+       # https://bugs.gentoo.org/811600
+       export CROSS_COMPILE=${CROSS_COMPILE-${CHOST}-}
+
+       local myconf=(
+               HOSTCC="$(tc-getBUILD_CC)"
+               --bindir="${EPREFIX}/bin"
+               --sbindir="${EPREFIX}/sbin"
+               --with-config=kernel
+               --with-linux="${KV_DIR}"
+               --with-linux-obj="${KV_OUT_DIR}"
+               $(use_enable debug)
+       )
+
+       econf "${myconf[@]}"
+}
+
+src_compile() {
+       set_arch_to_kernel
+
+       myemakeargs=(
+               HOSTCC="$(tc-getBUILD_CC)"
+               V=1
+       )
+
+       emake "${myemakeargs[@]}"
+}
+
+src_install() {
+       set_arch_to_kernel
+
+       myemakeargs+=(
+               DEPMOD=:
+               DESTDIR="${D}"
+               INSTALL_MOD_PATH="${EPREFIX:-/}" # lib/modules/<kver> added by 
KBUILD
+       )
+
+       emake "${myemakeargs[@]}" install
+
+       einstalldocs
+}
+
+pkg_postinst() {
+       linux-mod_pkg_postinst
+
+       # Remove old modules
+       if [[ -d "${EROOT}/lib/modules/${KV_FULL}/addon/zfs" ]]; then
+               ewarn "${PN} now installs modules in 
${EROOT}/lib/modules/${KV_FULL}/extra/zfs"
+               ewarn "Old modules were detected in 
${EROOT}/lib/modules/${KV_FULL}/addon/zfs"
+               ewarn "Automatically removing old modules to avoid problems."
+               rm -r "${EROOT}/lib/modules/${KV_FULL}/addon/zfs" || die 
"Cannot remove modules"
+               rmdir --ignore-fail-on-non-empty 
"${EROOT}/lib/modules/${KV_FULL}/addon"
+       fi
+
+       if [[ -z ${ROOT} ]] && use dist-kernel; then
+               set_arch_to_portage
+               dist-kernel_reinstall_initramfs "${KV_DIR}" "${KV_FULL}"
+       fi
+
+       if use x86 || use arm; then
+               ewarn "32-bit kernels will likely require increasing vmalloc to"
+               ewarn "at least 256M and decreasing zfs_arc_max to some value 
less than that."
+       fi
+
+       ewarn "This version of OpenZFS includes support for new feature flags"
+       ewarn "that are incompatible with previous versions. GRUB2 support for"
+       ewarn "/boot with the new feature flags is not yet available."
+       ewarn "Do *NOT* upgrade root pools to use the new feature flags."
+       ewarn "Any new pools will be created with the new feature flags by 
default"
+       ewarn "and will not be compatible with older versions of ZFSOnLinux. To"
+       ewarn "create a newpool that is backward compatible wih GRUB2, use "
+       ewarn
+       ewarn "zpool create -d -o feature@async_destroy=enabled "
+       ewarn " -o feature@empty_bpobj=enabled -o feature@lz4_compress=enabled"
+       ewarn " -o feature@spacemap_histogram=enabled"
+       ewarn " -o feature@enabled_txg=enabled "
+       ewarn " -o feature@extensible_dataset=enabled -o 
feature@bookmarks=enabled"
+       ewarn " ..."
+       ewarn
+       ewarn "GRUB2 support will be updated as soon as either the GRUB2"
+       ewarn "developers do a tag or the Gentoo developers find time to 
backport"
+       ewarn "support from GRUB2 HEAD."
+}

Reply via email to