diff options
author | Sam James <sam@gentoo.org> | 2021-12-30 09:37:33 +0000 |
---|---|---|
committer | Sam James <sam@gentoo.org> | 2021-12-30 09:37:37 +0000 |
commit | 1ef3659212ff98d2e6bb5df51e405c0953a45fec (patch) | |
tree | 4dd82df6a890ef6408a0b7d286fb59597d4d3138 | |
parent | dev-python/pylama: Remove broken USE=doc (diff) | |
download | gentoo-1ef3659212ff98d2e6bb5df51e405c0953a45fec.tar.gz gentoo-1ef3659212ff98d2e6bb5df51e405c0953a45fec.tar.bz2 gentoo-1ef3659212ff98d2e6bb5df51e405c0953a45fec.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>
-rw-r--r-- | sys-kernel/linux-headers/files/linux-headers-5.10-remove-inclusion-sysinfo.h.patch | 24 | ||||
-rw-r--r-- | sys-kernel/linux-headers/linux-headers-5.10-r2.ebuild | 49 |
2 files changed, 73 insertions, 0 deletions
diff --git a/sys-kernel/linux-headers/files/linux-headers-5.10-remove-inclusion-sysinfo.h.patch b/sys-kernel/linux-headers/files/linux-headers-5.10-remove-inclusion-sysinfo.h.patch new file mode 100644 index 000000000000..7f23d77a71a5 --- /dev/null +++ b/sys-kernel/linux-headers/files/linux-headers-5.10-remove-inclusion-sysinfo.h.patch @@ -0,0 +1,24 @@ +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> ++#endif + #include <linux/const.h> + + #endif /* _UAPI_LINUX_KERNEL_H */ + + diff --git a/sys-kernel/linux-headers/linux-headers-5.10-r2.ebuild b/sys-kernel/linux-headers/linux-headers-5.10-r2.ebuild new file mode 100644 index 000000000000..26138c3d9ff4 --- /dev/null +++ b/sys-kernel/linux-headers/linux-headers-5.10-r2.ebuild @@ -0,0 +1,49 @@ +# 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" +SRC_URI="${KERNEL_URI} + ${PATCH_VER:+mirror://gentoo/gentoo-headers-${PATCH_PV}-${PATCH_VER}.tar.xz} + ${PATCH_VER:+https://dev.gentoo.org/~sam/distfiles/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" + +src_unpack() { + unpack ${A} +} + +src_prepare() { + [[ -n ${PATCH_VER} ]] && eapply "${WORKDIR}"/${PATCH_PV}/*.patch + + 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.10-remove-inclusion-sysinfo.h.patch + fi + + default +} + +src_test() { + emake headers_check ${xmakeopts} +} + +src_install() { + kernel-2_src_install + + find "${ED}" '(' -name '.install' -o -name '*.cmd' ')' -delete + find "${ED}" -depth -type d -delete 2>/dev/null +} |