aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages
diff options
context:
space:
mode:
authorJanneke Nieuwenhuizen <janneke@gnu.org>2024-11-17 22:15:58 +0100
committerJanneke Nieuwenhuizen <janneke@gnu.org>2024-12-03 08:39:00 +0100
commitb371174536ede66e90b239dd46ebc9bb45d80543 (patch)
tree66e05f7ea4ba1c6c979f15e3b6983a32c3331c81 /gnu/packages
parentde5239b6753f776334bcbc9364c77722ffaeedcc (diff)
downloadguix-b371174536ede66e90b239dd46ebc9bb45d80543.tar.gz
guix-b371174536ede66e90b239dd46ebc9bb45d80543.zip
gnu: libgpg-error: Support the 64bit Hurd.
* gnu/packages/patches/libgpg-error-hurd64.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it. * gnu/packages/gnupg.scm (libgpg-error)[arguments]: Use it when building for the 64bit Hurd. Change-Id: Icabb7cd7bb5bcc771ccee5b8a7f57f52b9b58183
Diffstat (limited to 'gnu/packages')
-rw-r--r--gnu/packages/gnupg.scm22
-rw-r--r--gnu/packages/patches/libgpg-error-hurd64.patch78
2 files changed, 97 insertions, 3 deletions
diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm
index 3f55ccaf5b..1ed06642d7 100644
--- a/gnu/packages/gnupg.scm
+++ b/gnu/packages/gnupg.scm
@@ -22,7 +22,7 @@
;;; Copyright © 2021 Nikita Domnitskii <nikita@domnitskii.me>
;;; Copyright © 2021 Aleksandr Vityazev <avityazev@posteo.org>
;;; Copyright © 2022, 2023 Maxim Cournoyer <maxim.cournoyer@gmail.com>
-;;; Copyright © 2023 Janneke Nieuwenhuizen <janneke@gnu.org>
+;;; Copyright © 2023, 2024 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2024 Zheng Junjie <873216071@qq.com>
;;;
;;; This file is part of GNU Guix.
@@ -144,9 +144,25 @@
;; configuration, as this is not correct for
;; all architectures.
(_ #t)))
- (#t #t)))))))
+ (#t #t)))))
+ #$@(if (target-hurd64?)
+ #~((add-after 'unpack 'apply-hurd64-patch
+ (lambda _
+ (let ((patch
+ #$(local-file
+ (search-patch
+ "libgpg-error-hurd64.patch"))))
+ (invoke "patch" "--force" "-p1" "-i" patch)))))
+ #~())))
((system-hurd?)
- #~((add-after 'unpack 'skip-tests
+ #~((add-after 'unpack 'apply-hurd64-patch
+ (lambda _
+ (let ((patch
+ #$(local-file
+ (search-patch
+ "libgpg-error-hurd64.patch"))))
+ (invoke "patch" "--force" "-p1" "-i" patch))))
+ (add-after 'unpack 'skip-tests
(lambda _
(substitute* "tests/t-syserror.c"
(("(^| )main *\\(.*" all)
diff --git a/gnu/packages/patches/libgpg-error-hurd64.patch b/gnu/packages/patches/libgpg-error-hurd64.patch
new file mode 100644
index 0000000000..aac8ce61f1
--- /dev/null
+++ b/gnu/packages/patches/libgpg-error-hurd64.patch
@@ -0,0 +1,78 @@
+Upstream-status: Taken from upstream (1.48 series).
+
+From c62157c615a6379677c8f106bf9413d2611fd95e Mon Sep 17 00:00:00 2001
+From: Samuel Thibault <samuel.thibault@ens-lyon.org>
+Date: Sat, 6 May 2023 16:10:55 +0200
+Subject: [PATCH] core: Add hurd-amd64 support
+
+--
+This supports the x86_64-pc-gnu triplet
+
+Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
+---
+ src/Makefile.am | 1 +
+ src/mkheader.c | 2 ++
+ src/syscfg/lock-obj-pub.x86_64-unknown-gnu.h | 24 ++++++++++++++++++++
+ 3 files changed, 27 insertions(+)
+ create mode 100644 src/syscfg/lock-obj-pub.x86_64-unknown-gnu.h
+
+diff --git a/src/Makefile.am b/src/Makefile.am
+index c61adde..9389e99 100644
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -67,6 +67,7 @@ lock_obj_pub = \
+ syscfg/lock-obj-pub.sparc-unknown-linux-gnu.h \
+ syscfg/lock-obj-pub.sparc64-unknown-linux-gnu.h \
+ syscfg/lock-obj-pub.x86_64-apple-darwin.h \
++ syscfg/lock-obj-pub.x86_64-unknown-gnu.h \
+ syscfg/lock-obj-pub.x86_64-unknown-kfreebsd-gnu.h \
+ syscfg/lock-obj-pub.x86_64-unknown-linux-gnu.h \
+ syscfg/lock-obj-pub.x86_64-unknown-linux-gnux32.h \
+diff --git a/src/mkheader.c b/src/mkheader.c
+index 8fbfbd6..cc0eaa3 100644
+--- a/src/mkheader.c
++++ b/src/mkheader.c
+@@ -108,6 +108,8 @@ canon_host_triplet (const char *triplet, int no_vendor_hack, char **r_os)
+ {"x86_64-pc-linux-gnuhardened1", "x86_64-unknown-linux-gnu" },
+ {"x86_64-pc-linux-gnu" },
+
++ {"x86_64-pc-gnu"},
++
+ {"powerpc-unknown-linux-gnuspe", "powerpc-unknown-linux-gnu" },
+
+ {"arm-unknown-linux-gnueabihf", "arm-unknown-linux-gnueabi" },
+diff --git a/src/syscfg/lock-obj-pub.x86_64-unknown-gnu.h b/src/syscfg/lock-obj-pub.x86_64-unknown-gnu.h
+new file mode 100644
+index 0000000..7c7e6f1
+--- /dev/null
++++ b/src/syscfg/lock-obj-pub.x86_64-unknown-gnu.h
+@@ -0,0 +1,24 @@
++## lock-obj-pub.x86_64-pc-gnu.h
++## File created by gen-posix-lock-obj - DO NOT EDIT
++## To be included by mkheader into gpg-error.h
++
++typedef struct
++{
++ long _vers;
++ union {
++ volatile char _priv[32];
++ long _x_align;
++ long *_xp_align;
++ } u;
++} gpgrt_lock_t;
++
++#define GPGRT_LOCK_INITIALIZER {1,{{0,0,0,0,0,0,0,0, \
++ 0,0,0,0,0,0,0,0, \
++ 0,0,0,0,0,0,0,0, \
++ 0,0,0,0,0,0,0,0}}}
++##
++## Local Variables:
++## mode: c
++## buffer-read-only: t
++## End:
++##
+
+base-commit: 7a42ff0ec971f4f2add28b0edad6cf381b5b8acc
+--
+2.46.0
+