summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Deutschmann <whissi@gentoo.org>2021-12-10 01:59:22 +0100
committerThomas Deutschmann <whissi@gentoo.org>2021-12-10 02:00:19 +0100
commit1b9bf0269cd8276bb65546b738cd672323a4483a (patch)
tree6cae78197963d5a61035e2a333f44c13209e1df8 /sys-kernel/genkernel
parentapp-i18n/mozc: depend on older protobuf (diff)
downloadgentoo-1b9bf0269cd8276bb65546b738cd672323a4483a.tar.gz
gentoo-1b9bf0269cd8276bb65546b738cd672323a4483a.tar.bz2
gentoo-1b9bf0269cd8276bb65546b738cd672323a4483a.zip
sys-kernel/genkernel: allow building fuse against glibc-2.34
Closes: https://bugs.gentoo.org/828445 Package-Manager: Portage-3.0.28, Repoman-3.0.3 Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
Diffstat (limited to 'sys-kernel/genkernel')
-rw-r--r--sys-kernel/genkernel/files/genkernel-4.2.6-fuse-glibc-2.34.patch77
-rw-r--r--sys-kernel/genkernel/genkernel-4.2.6-r2.ebuild (renamed from sys-kernel/genkernel/genkernel-4.2.6-r1.ebuild)5
2 files changed, 81 insertions, 1 deletions
diff --git a/sys-kernel/genkernel/files/genkernel-4.2.6-fuse-glibc-2.34.patch b/sys-kernel/genkernel/files/genkernel-4.2.6-fuse-glibc-2.34.patch
new file mode 100644
index 000000000000..731f127a6712
--- /dev/null
+++ b/sys-kernel/genkernel/files/genkernel-4.2.6-fuse-glibc-2.34.patch
@@ -0,0 +1,77 @@
+commit 1b1da7527b0307cb70118caf5dfe2da778671588
+Author: Thomas Deutschmann <whissi@gentoo.org>
+AuthorDate: Fri Dec 10 01:56:20 2021 +0100
+Commit: Thomas Deutschmann <whissi@gentoo.org>
+CommitDate: Fri Dec 10 01:56:20 2021 +0100
+
+ fuse: Add patch to allow building against glibc-2.34
+
+ Bug: https://bugs.gentoo.org/828445
+ Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
+
+diff --git a/patches/fuse/2.9.9/fuse-2.9.9-glibc-2.34.patch b/patches/fuse/2.9.9/fuse-2.9.9-glibc-2.34.patch
+new file mode 100644
+index 0000000..eb7737c
+--- /dev/null
++++ b/patches/fuse/2.9.9/fuse-2.9.9-glibc-2.34.patch
+@@ -0,0 +1,60 @@
++From 5a43d0f724c56f8836f3f92411e0de1b5f82db32 Mon Sep 17 00:00:00 2001
++From: Sam James <sam@gentoo.org>
++Date: Sat, 24 Jul 2021 22:02:45 +0100
++Subject: [PATCH] util/ulockmgr_server.c: conditionally define closefrom (fix
++ glibc-2.34+)
++
++closefrom(3) has joined us in glibc-land from *BSD and Solaris. Since
++it's available in glibc 2.34+, we want to detect it and only define our
++fallback if the libc doesn't provide it.
++
++Bug: https://bugs.gentoo.org/803923
++Signed-off-by: Sam James <sam@gentoo.org>
++---
++ configure.ac | 1 +
++ util/ulockmgr_server.c | 6 ++++++
++ 2 files changed, 7 insertions(+)
++
++diff --git a/configure.ac b/configure.ac
++index 9946a0efa..a2d481aa9 100644
++--- a/configure.ac
+++++ b/configure.ac
++@@ -55,6 +55,7 @@ fi
++
++ AC_CHECK_FUNCS([fork setxattr fdatasync splice vmsplice utimensat])
++ AC_CHECK_FUNCS([posix_fallocate])
+++AC_CHECK_FUNCS([closefrom])
++ AC_CHECK_MEMBERS([struct stat.st_atim])
++ AC_CHECK_MEMBERS([struct stat.st_atimespec])
++
++diff --git a/util/ulockmgr_server.c b/util/ulockmgr_server.c
++index 273c7d923..a04dac5c6 100644
++--- a/util/ulockmgr_server.c
+++++ b/util/ulockmgr_server.c
++@@ -22,6 +22,10 @@
++ #include <sys/socket.h>
++ #include <sys/wait.h>
++
+++#ifdef HAVE_CONFIG_H
+++ #include "config.h"
+++#endif
+++
++ struct message {
++ unsigned intr : 1;
++ unsigned nofd : 1;
++@@ -124,6 +128,7 @@ static int receive_message(int sock, void *buf, size_t buflen, int *fdp,
++ return res;
++ }
++
+++#if !defined(HAVE_CLOSEFROM)
++ static int closefrom(int minfd)
++ {
++ DIR *dir = opendir("/proc/self/fd");
++@@ -141,6 +146,7 @@ static int closefrom(int minfd)
++ }
++ return 0;
++ }
+++#endif
++
++ static void send_reply(int cfd, struct message *msg)
++ {
diff --git a/sys-kernel/genkernel/genkernel-4.2.6-r1.ebuild b/sys-kernel/genkernel/genkernel-4.2.6-r2.ebuild
index ef162ae9c38b..8095046ac8a1 100644
--- a/sys-kernel/genkernel/genkernel-4.2.6-r1.ebuild
+++ b/sys-kernel/genkernel/genkernel-4.2.6-r2.ebuild
@@ -126,7 +126,10 @@ if [[ ${PV} == 9999* ]]; then
DEPEND="${DEPEND} app-text/asciidoc"
fi
-PATCHES=( "${FILESDIR}"/${P}-fix-btrfs-progs-deps.patch )
+PATCHES=(
+ "${FILESDIR}"/${P}-fix-btrfs-progs-deps.patch
+ "${FILESDIR}"/${P}-fuse-glibc-2.34.patch
+)
src_unpack() {
if [[ ${PV} == 9999* ]]; then