Gentoo Archives: gentoo-commits

From: Jonathan Vasquez <fearedbliss@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: sys-fs/zfs-kmod/, sys-kernel/spl/, sys-fs/zfs/
Date: Fri, 11 May 2018 03:08:27
Message-Id: 1526008074.231d7660093c1441a08fa8a1eb4fce182f129211.fearedbliss@gentoo
1 commit: 231d7660093c1441a08fa8a1eb4fce182f129211
2 Author: Jonathan Vasquez <fearedbliss <AT> gentoo <DOT> org>
3 AuthorDate: Fri May 11 03:02:04 2018 +0000
4 Commit: Jonathan Vasquez <fearedbliss <AT> gentoo <DOT> org>
5 CommitDate: Fri May 11 03:07:54 2018 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=231d7660
7
8 sys-fs/zfs: version bump to 0.7.9 (and friends)
9
10 Package-Manager: Portage-2.3.36, Repoman-2.3.9
11
12 sys-fs/zfs-kmod/Manifest | 1 +
13 sys-fs/zfs-kmod/zfs-kmod-0.7.9.ebuild | 145 +++++++++++++++++++++++
14 sys-fs/zfs/Manifest | 1 +
15 sys-fs/zfs/zfs-0.7.9.ebuild | 210 ++++++++++++++++++++++++++++++++++
16 sys-kernel/spl/Manifest | 1 +
17 sys-kernel/spl/spl-0.7.9.ebuild | 111 ++++++++++++++++++
18 6 files changed, 469 insertions(+)
19
20 diff --git a/sys-fs/zfs-kmod/Manifest b/sys-fs/zfs-kmod/Manifest
21 index 8fa45ff3ae0..a327ed1dfa0 100644
22 --- a/sys-fs/zfs-kmod/Manifest
23 +++ b/sys-fs/zfs-kmod/Manifest
24 @@ -1,2 +1,3 @@
25 DIST zfs-0.6.5.11.tar.gz 2521959 BLAKE2B 95b145a26620995343df1a468367b882bc71ab3e4812c05839d49d0cd877b756185c91b2609986f91939fbfda322809ddefc8ff9207fe076db03e0038e585ea2 SHA512 877052da2a0cdc78b10cb5041da55e31242db2618c502997f4df9aa46a14482c7f33adce8d21aaf16164a9fe52edc358922ea89c8e109c3247e107bf607d6451
26 DIST zfs-0.7.8.tar.gz 6514969 BLAKE2B 689d96ad7afeb422cbeca724f248ac56b6fcdc0a7ef215f735180406a7fc0d4d3c9700a41e855186d8044b304c9f0c142c2bdca387299c499974e424965970a4 SHA512 cdeabe10acd2feeeff8a6362987c757b716bfea6ebad42ce022a081106661f774150c113bdaa9e1ac441efdd6da4cf11e6119323ad60ae15ab445a872d952e35
27 +DIST zfs-0.7.9.tar.gz 6548649 BLAKE2B aa2f1b9d0ba0eda1af7d420c43d65d5d4183169cfe97c693356e1e0b15967ea512c25454f2d77285600f2209d778e4299f420754932e403a390b87b4f488dc94 SHA512 af5d9c320885ee84019fb04250c4b12c7ac3bb3d1037b1961ec4584701a737558374dc22521743e197356efb1d1f0ced9beff675ae9cfcccf3cd8407467f18fa
28
29 diff --git a/sys-fs/zfs-kmod/zfs-kmod-0.7.9.ebuild b/sys-fs/zfs-kmod/zfs-kmod-0.7.9.ebuild
30 new file mode 100644
31 index 00000000000..d71cf40662e
32 --- /dev/null
33 +++ b/sys-fs/zfs-kmod/zfs-kmod-0.7.9.ebuild
34 @@ -0,0 +1,145 @@
35 +# Copyright 1999-2018 Gentoo Foundation
36 +# Distributed under the terms of the GNU General Public License v2
37 +
38 +EAPI="5"
39 +
40 +if [ ${PV} == "9999" ]; then
41 + AUTOTOOLS_AUTORECONF="1"
42 + EGIT_REPO_URI="https://github.com/zfsonlinux/zfs.git"
43 + inherit git-r3
44 +else
45 + SRC_URI="https://github.com/zfsonlinux/zfs/releases/download/zfs-${PV}/zfs-${PV}.tar.gz"
46 + S="${WORKDIR}/zfs-${PV}"
47 + KEYWORDS="~amd64"
48 +fi
49 +
50 +inherit flag-o-matic linux-info linux-mod toolchain-funcs autotools-utils
51 +
52 +DESCRIPTION="Linux ZFS kernel module for sys-fs/zfs"
53 +HOMEPAGE="http://zfsonlinux.org/"
54 +
55 +LICENSE="CDDL debug? ( GPL-2+ )"
56 +SLOT="0"
57 +IUSE="custom-cflags debug +rootfs"
58 +RESTRICT="debug? ( strip ) test"
59 +
60 +DEPEND="
61 + =sys-kernel/spl-${PV}*
62 + dev-lang/perl
63 + virtual/awk
64 +"
65 +
66 +RDEPEND="${DEPEND}
67 + !sys-fs/zfs-fuse
68 +"
69 +
70 +AT_M4DIR="config"
71 +AUTOTOOLS_IN_SOURCE_BUILD="1"
72 +
73 +DOCS=( AUTHORS COPYRIGHT DISCLAIMER README.markdown )
74 +
75 +pkg_setup() {
76 + linux-info_pkg_setup
77 + CONFIG_CHECK="
78 + !DEBUG_LOCK_ALLOC
79 + EFI_PARTITION
80 + IOSCHED_NOOP
81 + MODULES
82 + !PAX_KERNEXEC_PLUGIN_METHOD_OR
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 ge 2 6 32 || die "Linux 2.6.32 or newer required"
100 +
101 + [ ${PV} != "9999" ] && \
102 + { kernel_is le 4 16 || die "Linux 4.16 is the latest supported version."; }
103 +
104 + check_extra_config
105 +}
106 +
107 +src_prepare() {
108 + # Remove GPLv2-licensed ZPIOS unless we are debugging
109 + use debug || sed -e 's/^subdir-m += zpios$//' -i "${S}/module/Makefile.in"
110 +
111 + # Set module revision number
112 + [ ${PV} != "9999" ] && \
113 + { sed -i "s/\(Release:\)\(.*\)1/\1\2${PR}-gentoo/" "${S}/META" || die "Could not set Gentoo release"; }
114 +
115 + autotools-utils_src_prepare
116 +}
117 +
118 +src_configure() {
119 + local SPL_PATH="$(basename $(echo "${EROOT}usr/src/spl-"*))"
120 + use custom-cflags || strip-flags
121 + filter-ldflags -Wl,*
122 +
123 + set_arch_to_kernel
124 + local myeconfargs=(${myeconfargs}
125 + --bindir="${EPREFIX}/bin"
126 + --sbindir="${EPREFIX}/sbin"
127 + --with-config=kernel
128 + --with-linux="${KV_DIR}"
129 + --with-linux-obj="${KV_OUT_DIR}"
130 + --with-spl="${EROOT}usr/src/${SPL_PATH}"
131 + --with-spl-obj="${EROOT}usr/src/${SPL_PATH}/${KV_FULL}"
132 + $(use_enable debug)
133 + )
134 +
135 + autotools-utils_src_configure
136 +}
137 +
138 +src_install() {
139 + autotools-utils_src_install INSTALL_MOD_PATH="${INSTALL_MOD_PATH:-$EROOT}"
140 +}
141 +
142 +pkg_postinst() {
143 + linux-mod_pkg_postinst
144 +
145 + # Remove old modules
146 + if [ -d "${EROOT}lib/modules/${KV_FULL}/addon/zfs" ]
147 + then
148 + ewarn "${PN} now installs modules in ${EROOT}lib/modules/${KV_FULL}/extra/zfs"
149 + ewarn "Old modules were detected in ${EROOT}lib/modules/${KV_FULL}/addon/zfs"
150 + ewarn "Automatically removing old modules to avoid problems."
151 + rm -r "${EROOT}lib/modules/${KV_FULL}/addon/zfs" || die "Cannot remove modules"
152 + rmdir --ignore-fail-on-non-empty "${EROOT}lib/modules/${KV_FULL}/addon"
153 + fi
154 +
155 + if use x86 || use arm
156 + then
157 + ewarn "32-bit kernels will likely require increasing vmalloc to"
158 + ewarn "at least 256M and decreasing zfs_arc_max to some value less than that."
159 + fi
160 +
161 + ewarn "This version of ZFSOnLinux includes support for new feature flags"
162 + ewarn "that are incompatible with previous versions. GRUB2 support for"
163 + ewarn "/boot with the new feature flags is not yet available."
164 + ewarn "Do *NOT* upgrade root pools to use the new feature flags."
165 + ewarn "Any new pools will be created with the new feature flags by default"
166 + ewarn "and will not be compatible with older versions of ZFSOnLinux. To"
167 + ewarn "create a newpool that is backward compatible wih GRUB2, use "
168 + ewarn
169 + ewarn "zpool create -d -o feature@async_destroy=enabled "
170 + ewarn " -o feature@empty_bpobj=enabled -o feature@lz4_compress=enabled"
171 + ewarn " -o feature@spacemap_histogram=enabled"
172 + ewarn " -o feature@enabled_txg=enabled "
173 + ewarn " -o feature@extensible_dataset=enabled -o feature@bookmarks=enabled"
174 + ewarn " ..."
175 + ewarn
176 + ewarn "GRUB2 support will be updated as soon as either the GRUB2"
177 + ewarn "developers do a tag or the Gentoo developers find time to backport"
178 + ewarn "support from GRUB2 HEAD."
179 +}
180
181 diff --git a/sys-fs/zfs/Manifest b/sys-fs/zfs/Manifest
182 index 8fa45ff3ae0..a327ed1dfa0 100644
183 --- a/sys-fs/zfs/Manifest
184 +++ b/sys-fs/zfs/Manifest
185 @@ -1,2 +1,3 @@
186 DIST zfs-0.6.5.11.tar.gz 2521959 BLAKE2B 95b145a26620995343df1a468367b882bc71ab3e4812c05839d49d0cd877b756185c91b2609986f91939fbfda322809ddefc8ff9207fe076db03e0038e585ea2 SHA512 877052da2a0cdc78b10cb5041da55e31242db2618c502997f4df9aa46a14482c7f33adce8d21aaf16164a9fe52edc358922ea89c8e109c3247e107bf607d6451
187 DIST zfs-0.7.8.tar.gz 6514969 BLAKE2B 689d96ad7afeb422cbeca724f248ac56b6fcdc0a7ef215f735180406a7fc0d4d3c9700a41e855186d8044b304c9f0c142c2bdca387299c499974e424965970a4 SHA512 cdeabe10acd2feeeff8a6362987c757b716bfea6ebad42ce022a081106661f774150c113bdaa9e1ac441efdd6da4cf11e6119323ad60ae15ab445a872d952e35
188 +DIST zfs-0.7.9.tar.gz 6548649 BLAKE2B aa2f1b9d0ba0eda1af7d420c43d65d5d4183169cfe97c693356e1e0b15967ea512c25454f2d77285600f2209d778e4299f420754932e403a390b87b4f488dc94 SHA512 af5d9c320885ee84019fb04250c4b12c7ac3bb3d1037b1961ec4584701a737558374dc22521743e197356efb1d1f0ced9beff675ae9cfcccf3cd8407467f18fa
189
190 diff --git a/sys-fs/zfs/zfs-0.7.9.ebuild b/sys-fs/zfs/zfs-0.7.9.ebuild
191 new file mode 100644
192 index 00000000000..0dc01562153
193 --- /dev/null
194 +++ b/sys-fs/zfs/zfs-0.7.9.ebuild
195 @@ -0,0 +1,210 @@
196 +# Copyright 1999-2018 Gentoo Foundation
197 +# Distributed under the terms of the GNU General Public License v2
198 +
199 +EAPI="5"
200 +PYTHON_COMPAT=( python{2_7,3_4,3_5} )
201 +
202 +if [ ${PV} == "9999" ] ; then
203 + inherit git-r3 linux-mod
204 + AUTOTOOLS_AUTORECONF="1"
205 + EGIT_REPO_URI="git://github.com/zfsonlinux/${PN}.git"
206 +else
207 + SRC_URI="https://github.com/zfsonlinux/${PN}/releases/download/${P}/${P}.tar.gz"
208 + KEYWORDS="~amd64"
209 +fi
210 +
211 +inherit autotools-utils bash-completion-r1 flag-o-matic linux-info python-r1 systemd toolchain-funcs udev
212 +
213 +DESCRIPTION="Userland utilities for ZFS Linux kernel module"
214 +HOMEPAGE="http://zfsonlinux.org/"
215 +
216 +LICENSE="BSD-2 CDDL MIT"
217 +SLOT="0"
218 +IUSE="custom-cflags debug kernel-builtin +rootfs test-suite static-libs"
219 +RESTRICT="test"
220 +
221 +COMMON_DEPEND="
222 + net-libs/libtirpc
223 + sys-apps/util-linux[static-libs?]
224 + sys-libs/zlib[static-libs(+)?]
225 + virtual/awk
226 +"
227 +DEPEND="${COMMON_DEPEND}
228 + virtual/pkgconfig
229 +"
230 +
231 +RDEPEND="${COMMON_DEPEND}
232 + !=sys-apps/grep-2.13*
233 + !kernel-builtin? ( =sys-fs/zfs-kmod-${PV}* )
234 + !sys-fs/zfs-fuse
235 + !prefix? ( virtual/udev )
236 + test-suite? (
237 + sys-apps/util-linux
238 + sys-devel/bc
239 + sys-block/parted
240 + sys-fs/lsscsi
241 + sys-fs/mdadm
242 + sys-process/procps
243 + virtual/modutils
244 + )
245 + rootfs? (
246 + app-arch/cpio
247 + app-misc/pax-utils
248 + !<sys-boot/grub-2.00-r2:2
249 + !<sys-kernel/genkernel-3.5.1.1
250 + !<sys-kernel/genkernel-next-67
251 + !<sys-kernel/bliss-initramfs-7.1.0
252 + !<sys-kernel/dracut-044-r1
253 + )
254 + sys-fs/udev-init-scripts
255 +"
256 +
257 +AT_M4DIR="config"
258 +AUTOTOOLS_IN_SOURCE_BUILD="1"
259 +
260 +pkg_setup() {
261 + if use kernel_linux && use test-suite; then
262 + linux-info_pkg_setup
263 + if ! linux_config_exists; then
264 + ewarn "Cannot check the linux kernel configuration."
265 + else
266 + # recheck that we don't have usblp to collide with libusb
267 + if use test-suite; then
268 + if linux_chkconfig_present BLK_DEV_LOOP; then
269 + eerror "The ZFS test suite requires loop device support enabled."
270 + eerror "Please enable it:"
271 + eerror " CONFIG_BLK_DEV_LOOP=y"
272 + eerror "in /usr/src/linux/.config or"
273 + eerror " Device Drivers --->"
274 + eerror " Block devices --->"
275 + eerror " [ ] Loopback device support"
276 + fi
277 + fi
278 + fi
279 + fi
280 +}
281 +
282 +src_prepare() {
283 + # Update paths
284 + sed -e "s|/sbin/lsmod|/bin/lsmod|" \
285 + -e "s|/usr/bin/scsi-rescan|/usr/sbin/rescan-scsi-bus|" \
286 + -e "s|/sbin/parted|/usr/sbin/parted|" \
287 + -i scripts/common.sh.in
288 +
289 + autotools-utils_src_prepare
290 +}
291 +
292 +src_configure() {
293 + use custom-cflags || strip-flags
294 + local myeconfargs=(
295 + --bindir="${EPREFIX}/bin"
296 + --sbindir="${EPREFIX}/sbin"
297 + --with-config=user
298 + --with-dracutdir="${EPREFIX}/usr/lib/dracut"
299 + --with-linux="${KV_DIR}"
300 + --with-linux-obj="${KV_OUT_DIR}"
301 + --with-udevdir="$(get_udevdir)"
302 + --with-systemdunitdir="$(systemd_get_systemunitdir)"
303 + --with-systemdpresetdir="${EPREFIX}/lib/systemd/system-preset"
304 + $(use_enable debug)
305 + )
306 + autotools-utils_src_configure
307 +
308 + # prepare systemd unit and helper script
309 + cat "${FILESDIR}/zfs.service.in" | \
310 + sed -e "s:@sbindir@:${EPREFIX}/sbin:g" \
311 + -e "s:@sysconfdir@:${EPREFIX}/etc:g" \
312 + > "${T}/zfs.service" || die
313 + cat "${FILESDIR}/zfs-init.sh.in" | \
314 + sed -e "s:@sbindir@:${EPREFIX}/sbin:g" \
315 + -e "s:@sysconfdir@:${EPREFIX}/etc:g" \
316 + > "${T}/zfs-init.sh" || die
317 +}
318 +
319 +src_install() {
320 + autotools-utils_src_install
321 + gen_usr_ldscript -a uutil nvpair zpool zfs zfs_core
322 + use test-suite || rm -rf "${ED}usr/share/zfs"
323 +
324 + newbashcomp "${FILESDIR}/bash-completion-r1" zfs
325 + bashcomp_alias zfs zpool
326 +
327 + exeinto /usr/libexec
328 + doexe "${T}/zfs-init.sh"
329 + systemd_dounit "${T}/zfs.service"
330 +}
331 +
332 +pkg_postinst() {
333 + if ! use kernel-builtin && [ ${PV} = "9999" ]
334 + then
335 + einfo "Adding ${P} to the module database to ensure that the"
336 + einfo "kernel modules and userland utilities stay in sync."
337 + update_moduledb
338 + fi
339 +
340 + if [ -e "${EROOT}etc/runlevels/boot/zfs" ]
341 + then
342 + einfo 'The zfs boot script has been split into the zfs-import,'
343 + einfo 'zfs-mount and zfs-share scripts.'
344 + einfo
345 + einfo 'You had the zfs script in your boot runlevel. For your'
346 + einfo 'convenience, it has been automatically removed and the three'
347 + einfo 'scripts that replace it have been configured to start.'
348 + einfo 'The zfs-import and zfs-mount scripts have been added to the boot'
349 + einfo 'runlevel while the zfs-share script is in the default runlevel.'
350 +
351 + rm "${EROOT}etc/runlevels/boot/zfs"
352 + ln -snf "${EROOT}etc/init.d/zfs-import" \
353 + "${EROOT}etc/runlevels/boot/zfs-import"
354 + ln -snf "${EROOT}etc/init.d/zfs-mount" \
355 + "${EROOT}etc/runlevels/boot/zfs-mount"
356 + ln -snf "${EROOT}etc/init.d/zfs-share" \
357 + "${EROOT}etc/runlevels/default/zfs-share"
358 + else
359 + [ -e "${EROOT}etc/runlevels/boot/zfs-import" ] || \
360 + einfo "You should add zfs-import to the boot runlevel."
361 + [ -e "${EROOT}etc/runlevels/boot/zfs-mount" ] || \
362 + einfo "You should add zfs-mount to the boot runlevel."
363 + [ -e "${EROOT}etc/runlevels/default/zfs-share" ] || \
364 + einfo "You should add zfs-share to the default runlevel."
365 + fi
366 +
367 + if [ -e "${EROOT}etc/runlevels/default/zed" ]
368 + then
369 + einfo 'The downstream OpenRC zed script has replaced by the upstream'
370 + einfo 'OpenRC zfs-zed script.'
371 + einfo
372 + einfo 'You had the zed script in your default runlevel. For your'
373 + einfo 'convenience, it has been automatically removed and the zfs-zed'
374 + einfo 'script that replaced it has been configured to start.'
375 +
376 + rm "${EROOT}etc/runlevels/boot/zed"
377 + ln -snf "${EROOT}etc/init.d/zfs-sed" \
378 + "${EROOT}etc/runlevels/default/zfs-zed"
379 + else
380 + [ -e "${EROOT}etc/runlevels/default/zfs-zed" ] || \
381 + einfo "You should add zfs-zed to the default runlevel."
382 + fi
383 +
384 + if [ -e "${EROOT}etc/runlevels/shutdown/zfs-shutdown" ]
385 + then
386 + einfo "The zfs-shutdown script is obsolete. Removing it from runlevel."
387 + rm "${EROOT}etc/runlevels/shutdown/zfs-shutdown"
388 + fi
389 +
390 + systemd_reenable zfs-zed.service
391 + systemd_reenable zfs-import-cache.service
392 + systemd_reenable zfs-import-scan.service
393 + systemd_reenable zfs-mount.service
394 + systemd_reenable zfs-share.service
395 + systemd_reenable zfs-import.target
396 + systemd_reenable zfs.target
397 + systemd_reenable zfs.service
398 +}
399 +
400 +pkg_postrm() {
401 + if ! use kernel-builtin && [ ${PV} = "9999" ]
402 + then
403 + remove_moduledb
404 + fi
405 +}
406
407 diff --git a/sys-kernel/spl/Manifest b/sys-kernel/spl/Manifest
408 index 704af6d5146..6c23eefa696 100644
409 --- a/sys-kernel/spl/Manifest
410 +++ b/sys-kernel/spl/Manifest
411 @@ -1,2 +1,3 @@
412 DIST spl-0.6.5.11.tar.gz 531710 BLAKE2B e89cb5a023d3f4b3949a385100b56e01c5fd0ff4448bc175f8463a84b74d1d8f1fcf669c2e4b73f2ec3326653594106ebfa3e66987e49a9cd029355bbb317990 SHA512 eae1641a0d528cb9182deccd309625e13abf3db88ba1cbb54947055b23d1f94b62c045f939d5e952784f19719eea5fdf85d65c5abd22b9db167ea7780bc55722
413 DIST spl-0.7.8.tar.gz 559558 BLAKE2B 5aa68a8150cb0c922c1ad0df9d1260136cedd95c13df45cc4490d937746a2a0e76e964978128a6f4e553f7bad4adc72a0408ef89969a15ba3f43af26e412b61c SHA512 dcd38dd0971042603baa474460486ed2e7cb59468de7613fa713eb4bdd081026794af7780b5d8970dd17645b04b6dde1e2f43e89a782437a50afc679a8850001
414 +DIST spl-0.7.9.tar.gz 551115 BLAKE2B 0ebb801ff60e5f8691c0b3386b5b1c326ea9d40decc20fb455ddb103d108923f28cd870e1c1dc465af5e24e8627973f2b60e7b9b88b3fdbd3ac45f3bd167def2 SHA512 89a42a65b3c09a654ffc3bcef84a0735eefe080c2d790400a3691cccf01e9f0a95cd40a4eed37542cfa7f4a94f20e06aae44886325473713407833d247751ec3
415
416 diff --git a/sys-kernel/spl/spl-0.7.9.ebuild b/sys-kernel/spl/spl-0.7.9.ebuild
417 new file mode 100644
418 index 00000000000..d8a0446f573
419 --- /dev/null
420 +++ b/sys-kernel/spl/spl-0.7.9.ebuild
421 @@ -0,0 +1,111 @@
422 +# Copyright 1999-2018 Gentoo Foundation
423 +# Distributed under the terms of the GNU General Public License v2
424 +
425 +EAPI="5"
426 +
427 +if [[ ${PV} == "9999" ]] ; then
428 + AUTOTOOLS_AUTORECONF="1"
429 + EGIT_REPO_URI="https://github.com/zfsonlinux/${PN}.git"
430 + inherit git-r3
431 +else
432 + SRC_URI="https://github.com/zfsonlinux/zfs/releases/download/zfs-${PV}/${P}.tar.gz"
433 + KEYWORDS="~amd64"
434 +fi
435 +
436 +inherit flag-o-matic linux-info linux-mod autotools-utils
437 +
438 +DESCRIPTION="The Solaris Porting Layer provides many of the Solaris kernel APIs"
439 +HOMEPAGE="http://zfsonlinux.org/"
440 +
441 +LICENSE="GPL-2"
442 +SLOT="0"
443 +IUSE="custom-cflags debug"
444 +RESTRICT="debug? ( strip ) test"
445 +
446 +COMMON_DEPEND="
447 + dev-lang/perl
448 + virtual/awk"
449 +
450 +DEPEND="${COMMON_DEPEND}"
451 +
452 +RDEPEND="${COMMON_DEPEND}
453 + !sys-devel/spl"
454 +
455 +AT_M4DIR="config"
456 +AUTOTOOLS_IN_SOURCE_BUILD="1"
457 +DOCS=( AUTHORS DISCLAIMER )
458 +
459 +pkg_setup() {
460 + linux-info_pkg_setup
461 + CONFIG_CHECK="
462 + !DEBUG_LOCK_ALLOC
463 + MODULES
464 + KALLSYMS
465 + !PAX_KERNEXEC_PLUGIN_METHOD_OR
466 + !PAX_SIZE_OVERFLOW
467 + ZLIB_DEFLATE
468 + ZLIB_INFLATE
469 + "
470 +
471 + use debug && CONFIG_CHECK="${CONFIG_CHECK}
472 + FRAME_POINTER
473 + DEBUG_INFO
474 + !DEBUG_INFO_REDUCED
475 + "
476 +
477 + kernel_is ge 2 6 32 || die "Linux 2.6.32 or newer required"
478 +
479 + [ ${PV} != "9999" ] && \
480 + { kernel_is le 4 16 || die "Linux 4.16 is the latest supported version."; }
481 +
482 + check_extra_config
483 +}
484 +
485 +src_prepare() {
486 + # Workaround for hard coded path
487 + sed -i "s|/sbin/lsmod|/bin/lsmod|" "${S}/scripts/check.sh" || \
488 + die "Cannot patch check.sh"
489 +
490 + # splat is unnecessary unless we are debugging
491 + use debug || { sed -e 's/^subdir-m += splat$//' -i "${S}/module/Makefile.in" || die ; }
492 +
493 + # Set module revision number
494 + [ ${PV} != "9999" ] && \
495 + { sed -i "s/\(Release:\)\(.*\)1/\1\2${PR}-gentoo/" "${S}/META" || die "Could not set Gentoo release"; }
496 +
497 + autotools-utils_src_prepare
498 +}
499 +
500 +src_configure() {
501 + use custom-cflags || strip-flags
502 + filter-ldflags -Wl,*
503 +
504 + set_arch_to_kernel
505 + local myeconfargs=(
506 + --bindir="${EPREFIX}/bin"
507 + --sbindir="${EPREFIX}/sbin"
508 + --with-config=all
509 + --with-linux="${KV_DIR}"
510 + --with-linux-obj="${KV_OUT_DIR}"
511 + $(use_enable debug)
512 + )
513 + autotools-utils_src_configure
514 +}
515 +
516 +src_install() {
517 + autotools-utils_src_install INSTALL_MOD_PATH="${INSTALL_MOD_PATH:-$EROOT}"
518 +}
519 +
520 +pkg_postinst() {
521 + linux-mod_pkg_postinst
522 +
523 + # Remove old modules
524 + if [ -d "${EROOT}lib/modules/${KV_FULL}/addon/spl" ]
525 + then
526 + ewarn "${PN} now installs modules in ${EROOT}lib/modules/${KV_FULL}/extra/spl"
527 + ewarn "Old modules were detected in ${EROOT}lib/modules/${KV_FULL}/addon/spl"
528 + ewarn "Automatically removing old modules to avoid problems."
529 + rm -r "${EROOT}lib/modules/${KV_FULL}/addon/spl" || die "Cannot remove modules"
530 + rmdir --ignore-fail-on-non-empty "${EROOT}lib/modules/${KV_FULL}/addon"
531 + fi
532 +}