From b2cc649999ed97b62517dcfb7cf21ee731c97487 Mon Sep 17 00:00:00 2001 From: Janneke Nieuwenhuizen Date: Sun, 10 Sep 2023 15:21:24 +0200 Subject: [PATCH] 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. --- gnu/local.mk | 1 + gnu/packages/base.scm | 3 +- .../patches/glibc-hurd-getauxval.patch | 34 +++++++++++++++++++ 3 files changed, 37 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/glibc-hurd-getauxval.patch diff --git a/gnu/local.mk b/gnu/local.mk index 4c3de24d73..8862fbfbb9 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -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 \ diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm index 5a3d5aced5..786b080ae4 100644 --- a/gnu/packages/base.scm +++ b/gnu/packages/base.scm @@ -1463,7 +1463,8 @@ (define-public glibc/hurd "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 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 + #include + #include ++#include + + 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);