[Buildroot] [PATCH 1/1] package/libglib2: fix build with glibc >= 2.34

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


Fabrice, All,

On 2021-09-05 00:31 +0200, Fabrice Fontaine spake thusly:
> 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>

Applied to master, thanks.

Regards,
Yann E. MORIN.

> ---
>  ...tly-use-3-parameters-for-close_range.patch | 33 +++++++++++++++++++
>  1 file changed, 33 insertions(+)
>  create mode 100644 package/libglib2/0004-correctly-use-3-parameters-for-close_range.patch
> 
> 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
> +
> -- 
> 2.33.0
> 
> _______________________________________________
> buildroot mailing list
> buildroot at lists.buildroot.org
> https://lists.buildroot.org/mailman/listinfo/buildroot

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 561 099 427 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'


More information about the buildroot mailing list