aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/patches
diff options
context:
space:
mode:
authorJanneke Nieuwenhuizen <janneke@gnu.org>2023-09-10 15:21:24 +0200
committerJanneke Nieuwenhuizen <janneke@gnu.org>2023-09-14 23:52:37 +0200
commitb2cc649999ed97b62517dcfb7cf21ee731c97487 (patch)
tree9211b300413f034b4a35c19ae93414baca4d17b9 /gnu/packages/patches
parent1149cc1b9f2f3124f890c76497b826d7f959cec2 (diff)
downloadguix-b2cc649999ed97b62517dcfb7cf21ee731c97487.tar.gz
guix-b2cc649999ed97b62517dcfb7cf21ee731c97487.zip
gnu: glibc/hurd: Add unsubmitted getauxval patch from upstream.
This support building of gdk-pixbuf, gobject-introspection. * gnu/packages/patches/glibc-hurd-getauxval.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/base.scm (glibc/hurd)[source]: Use it.
Diffstat (limited to 'gnu/packages/patches')
-rw-r--r--gnu/packages/patches/glibc-hurd-getauxval.patch34
1 files changed, 34 insertions, 0 deletions
diff --git a/gnu/packages/patches/glibc-hurd-getauxval.patch b/gnu/packages/patches/glibc-hurd-getauxval.patch
new file mode 100644
index 0000000000..815371b2d0
--- /dev/null
+++ b/gnu/packages/patches/glibc-hurd-getauxval.patch
@@ -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);