commit:     8d9db7a1872227646a9c698341426748b8e413d0
Author:     NP-Hardass <NP-Hardass <AT> gentoo <DOT> org>
AuthorDate: Wed Dec 27 21:51:53 2017 +0000
Commit:     NP Hardass <np-hardass <AT> gentoo <DOT> org>
CommitDate: Wed Dec 27 22:01:41 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8d9db7a1

net-fs/openafs-kernel: Bump to 1.6.22.1, adds kernel 4.14 support

Package-Manager: Portage-2.3.18, Repoman-2.3.6

 net-fs/openafs-kernel/Manifest                     |   1 +
 .../openafs-kernel/openafs-kernel-1.6.22.1.ebuild  | 134 +++++++++++++++++++++
 2 files changed, 135 insertions(+)

diff --git a/net-fs/openafs-kernel/Manifest b/net-fs/openafs-kernel/Manifest
index 57d545818ef..23ed8af2c30 100644
--- a/net-fs/openafs-kernel/Manifest
+++ b/net-fs/openafs-kernel/Manifest
@@ -1,2 +1,3 @@
 DIST openafs-1.6.22-src.tar.bz2 14606745 BLAKE2B 
ee406ac0bc2f91862b916fe2c84bb5b1887b43bfb396a0d4b4d3349420b4af397344a2c4d585698fe6f3870fba2090df7b7da85431275b5d1c28b01168221557
 SHA512 
7a533462175e79aa48339c5105d2dbddde284e23e5d5bcff58a4893839fc7bcfdd779d1d65abfc5217b185624bf88fe1ef02d0c37d29b6ff96616e96f54a6d87
+DIST openafs-1.6.22.1-src.tar.bz2 14682183 BLAKE2B 
a01e08f30f28dda9484407bbe0568df7b517e587b6e2475d669269e09745050bee955438dfeab9d86564dbc22821bc2fb417c15f8add0aae6acdde266c080df0
 SHA512 
901959051f60f7ffa2db8a253a16f9460713e3637a53f0b6b05e72247e08b633951116dc28b19db9c7448d8ebc7a20a8a851d5356c52f16c28f5c89209f8190e
 DIST openafs-patches-20170822.tar.xz 11036 BLAKE2B 
e53d9e01c5808ca9876fd22f729e0e82cb0f6bc7c1f4875ad0607ac9d547e216c61cc2c3506eaafb7c81318958cd038c177e9e5b2c3728997d7f44e13bbbded4
 SHA512 
f4b574287bfe54881a70f3ccd4d4901b2f8f9ecbec7b3a4975b59050d5ef27c6de3da25f820b7b2b10f1a38034bb28e5c01ee094fb38cae80e244eeb04b29d0a

diff --git a/net-fs/openafs-kernel/openafs-kernel-1.6.22.1.ebuild 
b/net-fs/openafs-kernel/openafs-kernel-1.6.22.1.ebuild
new file mode 100644
index 00000000000..31eba0372fd
--- /dev/null
+++ b/net-fs/openafs-kernel/openafs-kernel-1.6.22.1.ebuild
@@ -0,0 +1,134 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="6"
+
+inherit autotools linux-mod multilib toolchain-funcs versionator
+
+MY_PV=$(delete_version_separator '_')
+MY_PN="${PN/-kernel}"
+MY_P="${MY_PN}-${MY_PV}"
+PVER="20170822"
+
+DESCRIPTION="The OpenAFS distributed file system kernel module"
+HOMEPAGE="https://www.openafs.org/";
+# We always d/l the doc tarball as man pages are not USE=doc material
+[[ ${PV} == *_pre* ]] && MY_PRE="candidate/" || MY_PRE=""
+SRC_URI="
+       https://openafs.org/dl/openafs/${MY_PRE}${MY_PV}/${MY_P}-src.tar.bz2
+       https://dev.gentoo.org/~bircoph/afs/${MY_PN}-patches-${PVER}.tar.xz
+"
+
+LICENSE="IBM BSD openafs-krb5-a APSL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux"
+IUSE="debug"
+
+S=${WORKDIR}/${MY_P}
+
+CONFIG_CHECK="~!AFS_FS KEYS"
+ERROR_AFS_FS="OpenAFS conflicts with the in-kernel AFS-support. Make sure not 
to load both at the same time!"
+ERROR_KEYS="OpenAFS needs CONFIG_KEYS option enabled"
+
+QA_TEXTRELS_x86_fbsd="/boot/modules/libafs.ko"
+QA_TEXTRELS_amd64_fbsd="/boot/modules/libafs.ko"
+
+PATCHES=( "${WORKDIR}/gentoo/patches" )
+
+pkg_pretend() {
+       if use kernel_linux && kernel_is ge 4 15 ; then
+               ewarn "Gentoo supports kernels which are supported by OpenAFS"
+               ewarn "which are limited to the kernel versions: < 4.15"
+               ewarn ""
+               ewarn "You are free to utilize epatch_user to provide whatever"
+               ewarn "support you feel is appropriate, but will not receive"
+               ewarn "support as a result of those changes."
+               ewarn ""
+               ewarn "Please do not file a bug report about this."
+       fi
+}
+
+pkg_setup() {
+       if use kernel_linux; then
+               linux-mod_pkg_setup
+       fi
+}
+
+src_prepare() {
+       default
+
+       # packaging is f-ed up, so we can't run eautoreconf
+       # run autotools commands based on what is listed in regen.sh
+       eaclocal -I src/cf
+       eautoconf
+       eautoconf -o configure-libafs configure-libafs.ac
+       eautoheader
+       einfo "Deleting autom4te.cache directory"
+       rm -rf autom4te.cache
+}
+
+src_configure() {
+       local myconf=""
+       # OpenAFS 1.6.11 has a bug with kernels 3.17-3.17.2 that requires a 
config option
+       if use kernel_linux && kernel_is -ge 3 17 && kernel_is -le 3 17 2; then
+               myconf="--enable-linux-d_splice_alias-extra-iput"
+       fi
+
+       local ARCH="$(tc-arch-kernel)"
+       local MY_ARCH="$(tc-arch)"
+       local BSD_BUILD_DIR="/usr/src/sys/${MY_ARCH}/compile/GENERIC"
+
+       if use kernel_linux; then
+               myconf+=( --with-linux-kernel-headers="${KV_DIR}" \
+                       --with-linux-kernel-build="${KV_OUT_DIR}"
+               )
+       elif use kernel_FreeBSD; then
+               myconf+=( --with-bsd-kernel-build="${BSD_BUILD_DIR}" )
+       fi
+       econf \
+               $(use_enable debug debug-kernel) \
+               "${myconf[@]}"
+}
+
+src_compile() {
+       ARCH="$(tc-arch-kernel)" AR="$(tc-getAR)" emake V=1 -j1 only_libafs
+}
+
+src_install() {
+       if use kernel_linux; then
+               local srcdir=$(expr "${S}"/src/libafs/MODLOAD-*)
+               [[ -f ${srcdir}/libafs.${KV_OBJ} ]] || die "Couldn't find 
compiled kernel module"
+
+               MODULE_NAMES="libafs(fs/openafs:${srcdir})"
+
+               linux-mod_src_install
+       elif use kernel_FreeBSD; then
+               insinto /boot/modules
+               doins "${S}"/src/libafs/MODLOAD/libafs.ko
+       fi
+}
+
+pkg_postinst() {
+       # Update linker.hints file
+       use kernel_FreeBSD && /usr/sbin/kldxref "${EPREFIX}/boot/modules"
+       use kernel_linux && linux-mod_pkg_postinst
+
+       if use kernel_linux; then
+               local v
+               for v in ${REPLACING_VERSIONS}; do
+                       if ! version_is_at_least 1.6.18.2 ${v}; then
+                               ewarn "As of OpenAFS 1.6.18.2, Gentoo's 
packaging no longer requires"
+                               ewarn "that CONFIG_DEBUG_RODATA be turned off 
in one's kernel config."
+                               ewarn "If you only turned this option off for 
OpenAFS, please re-enable"
+                               ewarn "it, as keeping it turned off is a 
security risk."
+                               break
+                       fi
+               done
+       fi
+}
+
+pkg_postrm() {
+       # Update linker.hints file
+       use kernel_FreeBSD && /usr/sbin/kldxref "${EPREFIX}/boot/modules"
+       use kernel_linux && linux-mod_pkg_postrm
+}

Reply via email to