]> git.ipfire.org Git - people/ms/ipfire-2.x.git/commitdiff
glib: Fix FTBFS with glibc 2.34
authorMichael Tremer <michael.tremer@ipfire.org>
Wed, 18 Aug 2021 16:52:29 +0000 (16:52 +0000)
committerMichael Tremer <michael.tremer@ipfire.org>
Wed, 18 Aug 2021 16:59:06 +0000 (16:59 +0000)
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
lfs/glib
src/patches/glib-2.69-close_range.patch [new file with mode: 0644]

index cbf666f703b8e2bd3250fc8165db49ad20eaac37..fb4d7338fe3e0ca0a508dc8687bf2ef0198d6c6d 100644 (file)
--- a/lfs/glib
+++ b/lfs/glib
@@ -70,6 +70,7 @@ $(subst %,%_MD5,$(objects)) :
 $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        @$(PREBUILD)
        @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/glib-2.69-close_range.patch
        $(UPDATE_AUTOMAKE)
        cd $(DIR_APP) && meson  --prefix=/usr           \
                                --sysconfdir=/etc       \
diff --git a/src/patches/glib-2.69-close_range.patch b/src/patches/glib-2.69-close_range.patch
new file mode 100644 (file)
index 0000000..ca77ec3
--- /dev/null
@@ -0,0 +1,29 @@
+From b71117d89434db83d34bc1b981ca03d4be299576 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 8 Jul 2021 17:26:43 -0700
+Subject: [PATCH] correctly use 3 parameters for close_range
+
+libc implementation has 3 parameter e.g.
+https://www.freebsd.org/cgi/man.cgi?query=close_range&sektion=2&format=html
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ glib/gspawn.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/glib/gspawn.c b/glib/gspawn.c
+index 899647c2f..3073a10a4 100644
+--- a/glib/gspawn.c
++++ b/glib/gspawn.c
+@@ -1520,7 +1520,7 @@ safe_closefrom (int lowfd)
+    *
+    * Handle ENOSYS in case it’s supported in libc but not the kernel; if so,
+    * fall back to safe_fdwalk(). */
+-  if (close_range (lowfd, G_MAXUINT) != 0 && errno == ENOSYS)
++  if (close_range (lowfd, G_MAXUINT, 0) != 0 && errno == ENOSYS)
+ #endif  /* HAVE_CLOSE_RANGE */
+   (void) safe_fdwalk (close_func, GINT_TO_POINTER (lowfd));
+ #endif
+-- 
+GitLab
+