summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam James <sam@gentoo.org>2021-12-30 09:39:10 +0000
committerSam James <sam@gentoo.org>2021-12-30 09:39:10 +0000
commite1bd866997acfb6ed2f4e3051ce233658f1b69bc (patch)
treeb9d112ad811a1788c10a63c41b4d7f909fdcf690 /sys-kernel/linux-headers
parentsys-kernel/linux-headers: fix 5.10 for musl (sysinfo.h) (diff)
downloadgentoo-e1bd866997acfb6ed2f4e3051ce233658f1b69bc.tar.gz
gentoo-e1bd866997acfb6ed2f4e3051ce233658f1b69bc.tar.bz2
gentoo-e1bd866997acfb6ed2f4e3051ce233658f1b69bc.zip
sys-kernel/linux-headers: fix 5.10 for musl (sysinfo.h)
Notably fixes btrfs-progs build. Closes: https://bugs.gentoo.org/828726 Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'sys-kernel/linux-headers')
-rw-r--r--sys-kernel/linux-headers/files/linux-headers-5.15-remove-inclusion-sysinfo.h.patch24
-rw-r--r--sys-kernel/linux-headers/linux-headers-5.15-r2.ebuild52
2 files changed, 76 insertions, 0 deletions
diff --git a/sys-kernel/linux-headers/files/linux-headers-5.15-remove-inclusion-sysinfo.h.patch b/sys-kernel/linux-headers/files/linux-headers-5.15-remove-inclusion-sysinfo.h.patch
new file mode 100644
index 000000000000..064066f19ef6
--- /dev/null
+++ b/sys-kernel/linux-headers/files/linux-headers-5.15-remove-inclusion-sysinfo.h.patch
@@ -0,0 +1,24 @@
+Earlier version: https://git.alpinelinux.org/aports/tree/main/linux-headers/0003-remove-inclusion-of-sysinfo.h-in-kernel.h.patch
+https://bugs.gentoo.org/828726
+
+From: rofl0r <retnyg@gmx.net>
+Date: Mon, 20 Jan 2014 21:31:34 +0100
+Subject: [PATCH 3/3] remove inclusion of sysinfo.h in kernel.h
+
+the declaration of struct sysinfo clashes with userspace.
+it's not quite clear why that header was included from kernel.h,
+as none of its functionality is needed.
+--- a/include/uapi/linux/kernel.h
++++ b/include/uapi/linux/kernel.h
+@@ -2,7 +2,9 @@
+ #ifndef _UAPI_LINUX_KERNEL_H
+ #define _UAPI_LINUX_KERNEL_H
+
++#ifdef __GLIBC__
+ #include <linux/sysinfo.h>
+ #include <linux/const.h>
++#endif
+
+ #endif /* _UAPI_LINUX_KERNEL_H */
+
+
diff --git a/sys-kernel/linux-headers/linux-headers-5.15-r2.ebuild b/sys-kernel/linux-headers/linux-headers-5.15-r2.ebuild
new file mode 100644
index 000000000000..7fc09552f9bc
--- /dev/null
+++ b/sys-kernel/linux-headers/linux-headers-5.15-r2.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+ETYPE="headers"
+H_SUPPORTEDARCH="alpha amd64 arc arm arm64 avr32 cris frv hexagon hppa ia64 m68k metag microblaze mips mn10300 nios2 openrisc ppc ppc64 riscv s390 score sh sparc x86 xtensa"
+inherit kernel-2 toolchain-funcs
+detect_version
+
+PATCH_PV=${PV} # to ease testing new versions against not existing patches
+PATCH_VER="1"
+PATCH_DEV="sam"
+SRC_URI="${KERNEL_URI}
+ ${PATCH_VER:+https://dev.gentoo.org/~${PATCH_DEV}/distfiles/sys-kernel/linux-headers/gentoo-headers-${PATCH_PV}-${PATCH_VER}.tar.xz}"
+S="${WORKDIR}/linux-${PV}"
+
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
+
+BDEPEND="app-arch/xz-utils
+ dev-lang/perl"
+
+# bug #816762
+RESTRICT="test"
+
+[[ -n ${PATCH_VER} ]] && PATCHES=( "${WORKDIR}"/${PATCH_PV} )
+
+src_unpack() {
+ # avoid kernel-2_src_unpack
+ default
+}
+
+src_prepare() {
+ if use elibc_musl ; then
+ # TODO: May need forward porting to newer versions
+ eapply "${FILESDIR}"/${PN}-5.10-Use-stddefs.h-instead-of-compiler.h.patch
+ eapply "${FILESDIR}"/${PN}-5.15-remove-inclusion-sysinfo.h.patch
+ fi
+
+ # avoid kernel-2_src_prepare
+ default
+}
+
+src_test() {
+ emake headers_check ${xmakeopts}
+}
+
+src_install() {
+ kernel-2_src_install
+
+ find "${ED}" \( -name '.install' -o -name '*.cmd' \) -delete || die
+}