diff options
Diffstat (limited to 'gnu/packages/gnupg.scm')
| -rw-r--r-- | gnu/packages/gnupg.scm | 82 | 
1 files changed, 48 insertions, 34 deletions
| diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm index 49d29ed9bd..4a9a8fbb57 100644 --- a/gnu/packages/gnupg.scm +++ b/gnu/packages/gnupg.scm @@ -22,6 +22,7 @@  ;;; Copyright © 2021 Nikita Domnitskii <nikita@domnitskii.me>  ;;; Copyright © 2021 Aleksandr Vityazev <avityazev@posteo.org>  ;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com> +;;; Copyright © 2023 Janneke Nieuwenhuizen <janneke@gnu.org>  ;;;  ;;; This file is part of GNU Guix.  ;;; @@ -94,40 +95,42 @@      (version "1.45")      (source       (origin -      (method url-fetch) -      (uri (string-append "mirror://gnupg/libgpg-error/libgpg-error-" -                          version ".tar.bz2")) -      (sha256 -       (base32 -        "09haz1kk48b8q0hd58g98whylah0fp121yfgjms7pzsbzgj8w3sp")))) +       (method url-fetch) +       (uri (string-append "mirror://gnupg/libgpg-error/libgpg-error-" +                           version ".tar.bz2")) +       (sha256 +        (base32 +         "09haz1kk48b8q0hd58g98whylah0fp121yfgjms7pzsbzgj8w3sp"))))      (build-system gnu-build-system)      (arguments -     (if (%current-target-system) -         `(#:modules ((guix build gnu-build-system) -                      (guix build utils)) -           #:phases -           (modify-phases %standard-phases -             ;; If this is left out, some generated header -             ;; files will be sprinkled with ‘\c’, which -             ;; the compiler won't like. -             (add-after 'unpack 'fix-gen-lock-obj.sh -               (lambda _ -                 (substitute* "src/gen-lock-obj.sh" -                   (("if test -n `echo -n`") "if ! test -n `echo -n`")))) -             ;; When cross-compiling, some platform specific properties cannot -             ;; be detected. Create a symlink to the appropriate platform -             ;; file if required. Note that these platform files depend on -             ;; both the operating system and architecture! -             ;; -             ;; See Cross-Compiling section at: -             ;; https://github.com/gpg/libgpg-error/blob/master/README -             (add-after 'unpack 'cross-symlinks -               (lambda _ -                 (define (link triplet source) -                   (symlink (string-append "lock-obj-pub." triplet ".h") -                            (string-append "src/syscfg/lock-obj-pub." -                                           source ".h"))) -                 ,(let* ((target (%current-target-system)) +     (cond +      ((%current-target-system) +       (list +        #:modules '((guix build gnu-build-system) +                    (guix build utils)) +        #:phases +        #~(modify-phases %standard-phases +            ;; If this is left out, some generated header +            ;; files will be sprinkled with ‘\c’, which +            ;; the compiler won't like. +            (add-after 'unpack 'fix-gen-lock-obj.sh +              (lambda _ +                (substitute* "src/gen-lock-obj.sh" +                  (("if test -n `echo -n`") "if ! test -n `echo -n`")))) +            ;; When cross-compiling, some platform specific properties cannot +            ;; be detected. Create a symlink to the appropriate platform +            ;; file if required. Note that these platform files depend on +            ;; both the operating system and architecture! +            ;; +            ;; See Cross-Compiling section at: +            ;; https://github.com/gpg/libgpg-error/blob/master/README +            (add-after 'unpack 'cross-symlinks +              (lambda _ +                (define (link triplet source) +                  (symlink (string-append "lock-obj-pub." triplet ".h") +                           (string-append "src/syscfg/lock-obj-pub." +                                          source ".h"))) +                #$(let* ((target (%current-target-system))                           (architecture                            (string-take target (string-index target #\-))))                      (cond ((target-linux? target) @@ -140,8 +143,19 @@                               ;; configuration, as this is not correct for                               ;; all architectures.                               (_ #t))) -                          (#t #t))))))) -         '())) +                          (#t #t)))))))) +      ((system-hurd?) +       (list +        #:phases +        #~(modify-phases %standard-phases +            (add-after 'unpack 'skip-tests +              (lambda _ +                (substitute* +                    "tests/t-syserror.c" +                  (("(^| )main *\\(.*" all) +                   (string-append all "{\n  exit (77);//")))))))) +      (else +       '())))      (native-inputs (list gettext-minimal))      (home-page "https://gnupg.org")      (synopsis "Library of error values for GnuPG components") | 
