[Buildroot] [git commit] package/libglib2: fix build with glibc >= 2.34

Yann E. MORIN yann.morin.1998 at free.fr
Sat Sep 11 17:07:39 UTC 2021


commit: https://git.buildroot.net/buildroot/commit/?id=f53e59b8e2e04534e0b78a064a8ac1c46fb18ec9
branch: https://git.buildroot.net/buildroot/commit/?id=refs/heads/master

Fix the following build failure with glibc >= 2.34:

../glib/gspawn.c: In function 'safe_closefrom':
../glib/gspawn.c:1497:7: error: too few arguments to function 'close_range'
 1497 |   if (close_range (lowfd, G_MAXUINT) != 0 && errno == ENOSYS)
      |       ^~~~~~~~~~~

Fixes:
 - http://autobuild.buildroot.org/results/cbc0913fa2cc486deb64b07b5b13341a5a97025e

Signed-off-by: Fabrice Fontaine <fontaine.fabrice at gmail.com>
Reviewed-by: Marcin Niestroj <m.niestroj at grinn-global.com>
Tested-by: Marcin Niestroj <m.niestroj at grinn-global.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998 at free.fr>
---
 ...orrectly-use-3-parameters-for-close_range.patch | 33 ++++++++++++++++++++++
 1 file changed, 33 insertions(+)

diff --git a/package/libglib2/0004-correctly-use-3-parameters-for-close_range.patch b/package/libglib2/0004-correctly-use-3-parameters-for-close_range.patch
new file mode 100644
index 0000000000..bfca4b14ef
--- /dev/null
+++ b/package/libglib2/0004-correctly-use-3-parameters-for-close_range.patch
@@ -0,0 +1,33 @@
+From b71117d89434db83d34bc1b981ca03d4be299576 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem at 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 at gmail.com>
+
+[Retrieved from:
+https://gitlab.gnome.org/GNOME/glib/-/commit/b71117d89434db83d34bc1b981ca03d4be299576]
+Signed-off-by: Fabrice Fontaine <fontaine.fabrice at 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
+


More information about the buildroot mailing list