M gnu/local.mk => gnu/local.mk +1 -0
@@ 1287,6 1287,7 @@ dist_patch_DATA = \
%D%/packages/patches/glibc-2.37-hurd-local-clock_gettime_MONOTONIC.patch \
%D%/packages/patches/glibc-2.37-versioned-locpath.patch \
%D%/packages/patches/glibc-hurd-clock_t_centiseconds.patch \
+ %D%/packages/patches/glibc-hurd-getauxval.patch \
%D%/packages/patches/glibc-hurd-gettyent.patch \
%D%/packages/patches/glibc-hurd-mach-print.patch \
%D%/packages/patches/glibc-hurd-signal-sa-siginfo.patch \
M gnu/packages/base.scm => gnu/packages/base.scm +2 -1
@@ 1463,7 1463,8 @@ command.")
"glibc-2.37-hurd-clock_t_centiseconds.patch"
"glibc-2.37-hurd-local-clock_gettime_MONOTONIC.patch"
"glibc-hurd-mach-print.patch"
- "glibc-hurd-gettyent.patch"))))
+ "glibc-hurd-gettyent.patch"
+ "glibc-hurd-getauxval.patch"))))
(supported-systems %hurd-systems)))
(define-public glibc/hurd-headers
A gnu/packages/patches/glibc-hurd-getauxval.patch => gnu/packages/patches/glibc-hurd-getauxval.patch +34 -0
@@ 0,0 1,34 @@
+Taken from https://salsa.debian.org/glibc-team/glibc/-/blob/5af8e3701c63ad202b652b5051bec592b8385820/debian/patches/hurd-i386/unsubmitted-getaux_at_secure.diff
+
+This fixes gdk-pixbuf, gobject-introspection.
+
+FIXME: sysdeps/mach/hurd/i386/init-first.c should instead pass an auxv
+to __libc_start_main
+
+Index: glibc-2.33/misc/getauxval.c
+===================================================================
+--- glibc-2.33.orig/misc/getauxval.c
++++ glibc-2.33/misc/getauxval.c
+@@ -19,6 +19,7 @@
+ #include <errno.h>
+ #include <ldsodefs.h>
+ #include <stdbool.h>
++#include <unistd.h>
+
+ bool
+ __getauxval2 (unsigned long int type, unsigned long int *result)
+@@ -27,6 +28,14 @@ __getauxval2 (unsigned long int type, un
+ ElfW(auxv_t) *p;
+ #endif
+
++#ifdef AT_SECURE
++ if (type == AT_SECURE)
++ {
++ *result = __libc_enable_secure;
++ return true;
++ }
++#endif
++
+ if (type == AT_HWCAP)
+ {
+ *result = GLRO(dl_hwcap);