summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam James <sam@gentoo.org>2021-08-05 02:54:15 +0100
committerSam James <sam@gentoo.org>2021-08-05 02:54:15 +0100
commit99996faf6804d281f7a543541d4007919baa82be (patch)
tree237adfef5ca09672baf5cab4bcdc510cfa9a852a
parentmedia-libs/mlt: add 7.0.1 (diff)
downloadgentoo-99996faf6804d281f7a543541d4007919baa82be.tar.gz
gentoo-99996faf6804d281f7a543541d4007919baa82be.tar.bz2
gentoo-99996faf6804d281f7a543541d4007919baa82be.zip
dev-libs/glib: fix build with glibc-2.34
Closes: https://bugs.gentoo.org/803632 Signed-off-by: Sam James <sam@gentoo.org>
-rw-r--r--dev-libs/glib/files/glib-2.68.3-glibc-2.34-close_range.patch32
-rw-r--r--dev-libs/glib/glib-2.68.3-r1.ebuild1
2 files changed, 33 insertions, 0 deletions
diff --git a/dev-libs/glib/files/glib-2.68.3-glibc-2.34-close_range.patch b/dev-libs/glib/files/glib-2.68.3-glibc-2.34-close_range.patch
new file mode 100644
index 00000000000..a84ccaaccbb
--- /dev/null
+++ b/dev-libs/glib/files/glib-2.68.3-glibc-2.34-close_range.patch
@@ -0,0 +1,32 @@
+https://bugs.gentoo.org/803632
+https://gitlab.gnome.org/GNOME/glib/-/commit/63e7864d1a0ddbead3c18872e95116e3843e81be.patch
+
+From 6e59d21b273f026e82adc56fecbec67d1ffa72a4 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 95f5b868e..a15fb1ca1 100644
+--- a/glib/gspawn.c
++++ b/glib/gspawn.c
+@@ -1494,7 +1494,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
+
diff --git a/dev-libs/glib/glib-2.68.3-r1.ebuild b/dev-libs/glib/glib-2.68.3-r1.ebuild
index 4491252a2ce..ff067ae12a1 100644
--- a/dev-libs/glib/glib-2.68.3-r1.ebuild
+++ b/dev-libs/glib/glib-2.68.3-r1.ebuild
@@ -69,6 +69,7 @@ MULTILIB_CHOST_TOOLS=(
PATCHES=(
"${FILESDIR}"/${PN}-2.64.1-mark-gdbus-server-auth-test-flaky.patch
+ "${FILESDIR}"/${PN}-2.68.3-glibc-2.34-close_range.patch
)
pkg_setup() {