mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-08-06 00:48:18 -07:00
dev-lang/go: 1.14: check running kernel version before compiling
Compilation will fail if the host is running certain versions of the Linux kernel with the message: runtime: mlock of signal stack failed: 12 Note from williamh: The original pr checked for kernel versions not listed in the upstream issue, so I reworked it. Also, it used pkg_setup instead of pkg_pretend for the checks. Closes: https://bugs.gentoo.org/711884 Closes: https://github.com/gentoo/gentoo/pull/14868 Signed-off-by: William Hubbs <williamh@gentoo.org>
This commit is contained in:
committed by
William Hubbs
parent
1845882cab
commit
7e804a5ea4
@@ -8,7 +8,7 @@ export CTARGET=${CTARGET:-${CHOST}}
|
||||
|
||||
MY_PV=${PV/_/}
|
||||
|
||||
inherit toolchain-funcs
|
||||
inherit toolchain-funcs linux-info
|
||||
|
||||
case ${PV} in
|
||||
*9999*)
|
||||
@@ -122,6 +122,26 @@ go_cross_compile()
|
||||
[[ $(go_tuple ${CBUILD}) != $(go_tuple) ]]
|
||||
}
|
||||
|
||||
pkg_pretend()
|
||||
{
|
||||
local msg
|
||||
get_running_version
|
||||
|
||||
use kernel_linux || return 0
|
||||
if kernel_is -eq 5 2; then
|
||||
msg="${P} does not work with kernel version 5.2.x"
|
||||
elif kernel_is -eq 5 3 && kernel_is -le 5 3 14; then
|
||||
msg="${P} does not work with kernel versions 5.3 before 5.3.15"
|
||||
elif kernel_is -eq 5 4 && kernel_is -le 5 4 1; then
|
||||
msg="${P} does not work with kernel versions 5.4 before 5.4.2"
|
||||
fi
|
||||
if [[ -n ${msg} ]]; then
|
||||
eerror $msg
|
||||
eerror "See https://github.com/golang/go/issues/37436"
|
||||
die "Attempted to build ${P} with unsupported kernel"
|
||||
fi
|
||||
}
|
||||
|
||||
src_compile()
|
||||
{
|
||||
if has_version -b dev-lang/go; then
|
||||
|
||||
Reference in New Issue
Block a user