Gentoo Archives: gentoo-commits

From: Georgy Yakovlev <gyakovlev@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: sys-fs/zfs-kmod/
Date: Thu, 18 Apr 2019 21:34:23
Message-Id: 1555623237.d0dbed8ab0a264768b1313c29a91afa69c413bd4.gyakovlev@gentoo
1 commit: d0dbed8ab0a264768b1313c29a91afa69c413bd4
2 Author: Georgy Yakovlev <gyakovlev <AT> gentoo <DOT> org>
3 AuthorDate: Thu Apr 18 20:56:05 2019 +0000
4 Commit: Georgy Yakovlev <gyakovlev <AT> gentoo <DOT> org>
5 CommitDate: Thu Apr 18 21:33:57 2019 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d0dbed8a
7
8 sys-fs/zfs-kmod: add 0.8.0_rc4 for testing
9
10 Package-Manager: Portage-2.3.63, Repoman-2.3.12
11 Signed-off-by: Georgy Yakovlev <gyakovlev <AT> gentoo.org>
12
13 sys-fs/zfs-kmod/Manifest | 1 +
14 sys-fs/zfs-kmod/zfs-kmod-0.8.0_rc4.ebuild | 167 ++++++++++++++++++++++++++++++
15 2 files changed, 168 insertions(+)
16
17 diff --git a/sys-fs/zfs-kmod/Manifest b/sys-fs/zfs-kmod/Manifest
18 index 89d0d6e1555..27a9625015d 100644
19 --- a/sys-fs/zfs-kmod/Manifest
20 +++ b/sys-fs/zfs-kmod/Manifest
21 @@ -5,3 +5,4 @@ DIST zfs-0.7.13.tar.gz 6614047 BLAKE2B c59c46287715779eb04d69333b0a417fa9865eb0d
22 DIST zfs-0.7.8.tar.gz 6514969 BLAKE2B 689d96ad7afeb422cbeca724f248ac56b6fcdc0a7ef215f735180406a7fc0d4d3c9700a41e855186d8044b304c9f0c142c2bdca387299c499974e424965970a4 SHA512 cdeabe10acd2feeeff8a6362987c757b716bfea6ebad42ce022a081106661f774150c113bdaa9e1ac441efdd6da4cf11e6119323ad60ae15ab445a872d952e35
23 DIST zfs-0.7.9-r1-patches.tar.xz 10920 BLAKE2B 50a0b8533061b5eecc103179e6fd51499d87f1c3b331b0629efa29a5a7d405c03448db2245fed9389d149cc83021a2c263bc2f02133a5fdd11b088516c353fff SHA512 a9e8c04bf7449b0a63420202b2f6dd8a6aea96ac57e5925c2ca0223f662210f42316ada25aa6113103909de8c9976945828cdb91a6ff9932f282c01316d7b3ec
24 DIST zfs-0.7.9.tar.gz 6548649 BLAKE2B aa2f1b9d0ba0eda1af7d420c43d65d5d4183169cfe97c693356e1e0b15967ea512c25454f2d77285600f2209d778e4299f420754932e403a390b87b4f488dc94 SHA512 af5d9c320885ee84019fb04250c4b12c7ac3bb3d1037b1961ec4584701a737558374dc22521743e197356efb1d1f0ced9beff675ae9cfcccf3cd8407467f18fa
25 +DIST zfs-0.8.0-rc4.tar.gz 8874029 BLAKE2B 17dd408bfe5133339548c124529b22312c70f527cca9329a7198c415ee2010e03a967d06d6b56ba25c667c8586476daed97c812ffc26331827aac818eda27282 SHA512 0a1137cf5ed2859dd3876867c4f63b74f117847276a3d9de67736a92cbe5a0c9b2e599bb0e84664f5feb89be36188baacdcc2aa233b498fcfeb6fd946c8b73ea
26
27 diff --git a/sys-fs/zfs-kmod/zfs-kmod-0.8.0_rc4.ebuild b/sys-fs/zfs-kmod/zfs-kmod-0.8.0_rc4.ebuild
28 new file mode 100644
29 index 00000000000..32fe064aded
30 --- /dev/null
31 +++ b/sys-fs/zfs-kmod/zfs-kmod-0.8.0_rc4.ebuild
32 @@ -0,0 +1,167 @@
33 +# Copyright 1999-2019 Gentoo Authors
34 +# Distributed under the terms of the GNU General Public License v2
35 +
36 +EAPI=7
37 +
38 +inherit flag-o-matic linux-info linux-mod toolchain-funcs
39 +
40 +DESCRIPTION="Linux ZFS kernel module for sys-fs/zfs"
41 +HOMEPAGE="https://zfsonlinux.org/"
42 +
43 +if [[ ${PV} == "9999" ]]; then
44 + inherit autotools git-r3
45 + EGIT_REPO_URI="https://github.com/zfsonlinux/zfs.git"
46 +else
47 + MY_PV="${PV/_rc/-rc}"
48 + SRC_URI="https://github.com/zfsonlinux/zfs/releases/download/zfs-${MY_PV}/zfs-${MY_PV}.tar.gz"
49 + KEYWORDS="~amd64"
50 + ZFS_KERNEL_COMPAT="${ZFS_KERNEL_COMPAT_OVERRIDE:-5.0}"
51 + S="${WORKDIR}/zfs-${PV%_rc*}"
52 +fi
53 +
54 +LICENSE="CDDL debug? ( GPL-2+ )"
55 +SLOT="0"
56 +IUSE="custom-cflags debug +rootfs"
57 +
58 +DEPEND=""
59 +
60 +RDEPEND="${DEPEND}
61 + !sys-fs/zfs-fuse
62 + !sys-kernel/spl
63 +"
64 +
65 +BDEPEND="
66 + dev-lang/perl
67 + virtual/awk
68 +"
69 +
70 +RESTRICT="debug? ( strip ) test"
71 +
72 +DOCS=( AUTHORS COPYRIGHT META README.md )
73 +
74 +pkg_setup() {
75 + linux-info_pkg_setup
76 +
77 + CONFIG_CHECK="
78 + !DEBUG_LOCK_ALLOC
79 + EFI_PARTITION
80 + MODULES
81 + !PAX_KERNEXEC_PLUGIN_METHOD_OR
82 + !TRIM_UNUSED_KSYMS
83 + ZLIB_DEFLATE
84 + ZLIB_INFLATE
85 + "
86 +
87 + use debug && CONFIG_CHECK="${CONFIG_CHECK}
88 + FRAME_POINTER
89 + DEBUG_INFO
90 + !DEBUG_INFO_REDUCED
91 + "
92 +
93 + use rootfs && \
94 + CONFIG_CHECK="${CONFIG_CHECK}
95 + BLK_DEV_INITRD
96 + DEVTMPFS
97 + "
98 +
99 + kernel_is -lt 5 && CONFIG_CHECK="${CONFIG_CHECK} IOSCHED_NOOP"
100 +
101 + kernel_is -ge 2 6 32 || die "Linux 2.6.32 or newer required"
102 +
103 + if [[ ${PV} != "9999" ]]; then
104 + local KV_MAJOR_MAX="${ZFS_KERNEL_COMPAT%%.*}"
105 + local KV_MINOR_MAX="${ZFS_KERNEL_COMPAT##*.}"
106 + kernel_is -le "${KV_MAJOR_MAX}" "${KV_MINOR_MAX}" || die \
107 + "Linux ${KV_MAJOR_MAX}.${KV_MINOR_MAX} is the latest supported version"
108 + fi
109 +
110 + check_extra_config
111 +}
112 +
113 +src_prepare() {
114 + default
115 +
116 + if [[ ${PV} == "9999" ]]; then
117 + eautoreconf
118 + else
119 + # Set module revision number
120 + sed -i "s/\(Release:\)\(.*\)1/\1\2${PR}-gentoo/" META || die "Could not set Gentoo release"
121 + fi
122 +
123 + # Remove GPLv2-licensed ZPIOS unless we are debugging
124 + use debug || sed -e 's/^subdir-m += zpios$//' -i module/Makefile.in
125 +}
126 +
127 +src_configure() {
128 + set_arch_to_kernel
129 +
130 + use custom-cflags || strip-flags
131 +
132 + filter-ldflags -Wl,*
133 +
134 + local myconf=(
135 + --bindir="${EPREFIX}/bin"
136 + --sbindir="${EPREFIX}/sbin"
137 + --with-config=kernel
138 + --with-linux="${KV_DIR}"
139 + --with-linux-obj="${KV_OUT_DIR}"
140 + $(use_enable debug)
141 + )
142 +
143 + econf "${myconf[@]}"
144 +}
145 +
146 +src_compile() {
147 + set_arch_to_kernel
148 +
149 + default
150 +}
151 +
152 +src_install() {
153 + set_arch_to_kernel
154 +
155 + emake \
156 + DEPMOD="/bin/true" \
157 + DESTDIR="${D}" \
158 + INSTALL_MOD_PATH="${INSTALL_MOD_PATH:-$EROOT}" \
159 + install
160 +
161 + einstalldocs
162 +}
163 +
164 +pkg_postinst() {
165 + linux-mod_pkg_postinst
166 +
167 + # Remove old modules
168 + if [[ -d "${EROOT}/lib/modules/${KV_FULL}/addon/zfs" ]]; then
169 + ewarn "${PN} now installs modules in ${EROOT}/lib/modules/${KV_FULL}/extra/zfs"
170 + ewarn "Old modules were detected in ${EROOT}/lib/modules/${KV_FULL}/addon/zfs"
171 + ewarn "Automatically removing old modules to avoid problems."
172 + rm -r "${EROOT}/lib/modules/${KV_FULL}/addon/zfs" || die "Cannot remove modules"
173 + rmdir --ignore-fail-on-non-empty "${EROOT}/lib/modules/${KV_FULL}/addon"
174 + fi
175 +
176 + if use x86 || use arm; then
177 + ewarn "32-bit kernels will likely require increasing vmalloc to"
178 + ewarn "at least 256M and decreasing zfs_arc_max to some value less than that."
179 + fi
180 +
181 + ewarn "This version of ZFSOnLinux includes support for new feature flags"
182 + ewarn "that are incompatible with previous versions. GRUB2 support for"
183 + ewarn "/boot with the new feature flags is not yet available."
184 + ewarn "Do *NOT* upgrade root pools to use the new feature flags."
185 + ewarn "Any new pools will be created with the new feature flags by default"
186 + ewarn "and will not be compatible with older versions of ZFSOnLinux. To"
187 + ewarn "create a newpool that is backward compatible wih GRUB2, use "
188 + ewarn
189 + ewarn "zpool create -d -o feature@async_destroy=enabled "
190 + ewarn " -o feature@empty_bpobj=enabled -o feature@lz4_compress=enabled"
191 + ewarn " -o feature@spacemap_histogram=enabled"
192 + ewarn " -o feature@enabled_txg=enabled "
193 + ewarn " -o feature@extensible_dataset=enabled -o feature@bookmarks=enabled"
194 + ewarn " ..."
195 + ewarn
196 + ewarn "GRUB2 support will be updated as soon as either the GRUB2"
197 + ewarn "developers do a tag or the Gentoo developers find time to backport"
198 + ewarn "support from GRUB2 HEAD."
199 +}