From e373adc13969bb8d5bf7c040fb32b8a51b40c91b Mon Sep 17 00:00:00 2001 From: Mathieu Othacehe Date: Fri, 20 Sep 2019 09:30:24 +0200 Subject: gnu: libgpg-error: Fix cross compilation. * gnu/packages/gnupg.scm (libgpg-error)[arguments]: Add a lock-obj header to the target platform when cross-compiling, [native-inputs]: add gettext that is needed when cross-compiling. --- gnu/packages/gnupg.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) (limited to 'gnu/packages/gnupg.scm') diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm index 56db412145..4acc434093 100644 --- a/gnu/packages/gnupg.scm +++ b/gnu/packages/gnupg.scm @@ -96,6 +96,31 @@ (("namespace=errnos") "pkg_namespace=errnos")) #t)))) (build-system gnu-build-system) + (arguments + (if (%current-target-system) + `(#:modules ((ice-9 match) + (guix build gnu-build-system) + (guix build utils)) + #:phases + (modify-phases %standard-phases + ;; When cross-compiling, some platform specific properties cannot + ;; be detected. Create a symlink to the appropriate platform + ;; file. See Cross-Compiling section at: + ;; https://github.com/gpg/libgpg-error/blob/master/README + (add-after 'unpack 'cross-symlinks + (lambda* (#:key target inputs #:allow-other-keys) + (let ((triplet + (match (string-take target + (string-index target #\-)) + ("armhf" "arm-unknown-linux-gnueabi") + (x + (string-append x "-unknown-linux-gnu"))))) + (symlink + (string-append "lock-obj-pub." triplet ".h") + "src/syscfg/lock-obj-pub.linux-gnu.h")) + #t)))) + '())) + (native-inputs `(("gettext" ,gettext-minimal))) (home-page "https://gnupg.org") (synopsis "Library of error values for GnuPG components") (description -- cgit v1.2.3 From 891fd849ce1cfaaaf3e6cb4d236a02dd21df5036 Mon Sep 17 00:00:00 2001 From: Mathieu Othacehe Date: Sun, 18 Aug 2019 09:47:19 +0200 Subject: gnu: guile-gcrypt: Fix cross-compilation. * gnu/packages/gnupg.scm (guile-gcrypt) [native-inputs]: Add guile, [arguments]: add libgcrypt-config to PATH when cross-compiling. --- gnu/packages/gnupg.scm | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) (limited to 'gnu/packages/gnupg.scm') diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm index f97f687d36..b31781a7b6 100644 --- a/gnu/packages/gnupg.scm +++ b/gnu/packages/gnupg.scm @@ -16,6 +16,7 @@ ;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice ;;; Copyright © 2018, 2019 Marius Bakke ;;; Copyright © 2018 Björn Höfling +;;; Copyright © 2019 Mathieu Othacehe ;;; ;;; This file is part of GNU Guix. ;;; @@ -492,11 +493,26 @@ gpgpme starting with version 1.7.") "1mhc5m4xygkfj7x18f8apiqpfdn9mrql0am5sk13cf5xn8x1r63z")) (file-name (string-append name "-" version "-checkout")))) (build-system gnu-build-system) + (arguments + ;; When cross-compiling, the bash script libgcrypt-config provided by + ;; libgcrypt must be accessible during configure phase. + `(,@(if (%current-target-system) + '(#:phases + (modify-phases %standard-phases + (add-before 'configure 'add-libgrypt-config + (lambda _ + (setenv "PATH" (string-append + (assoc-ref %build-inputs "libgcrypt") + "/bin:" + (getenv "PATH"))) + #t)))) + '()))) (native-inputs `(("pkg-config" ,pkg-config) ("autoconf" ,autoconf) ("automake" ,automake) - ("texinfo" ,texinfo))) + ("texinfo" ,texinfo) + ("guile" ,guile-2.2))) (inputs `(("guile" ,guile-2.2) ("libgcrypt" ,libgcrypt))) -- cgit v1.2.3 From ba6008760a84b22d71f3d70e6a15f7d89960b4bf Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 26 Nov 2019 22:24:35 +0200 Subject: gnu: libgcrypt: Update to 1.8.5. * gnu/packages/gnupg.scm (libgcrypt): Update to 1.8.5. [replacement]: Remove field. (libgcrypt-1.8.5): Remove variable. --- gnu/packages/gnupg.scm | 17 ++--------------- 1 file changed, 2 insertions(+), 15 deletions(-) (limited to 'gnu/packages/gnupg.scm') diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm index 7f01f8a0a6..3ba49c884f 100644 --- a/gnu/packages/gnupg.scm +++ b/gnu/packages/gnupg.scm @@ -137,15 +137,14 @@ Daemon and possibly more in the future.") (define-public libgcrypt (package (name "libgcrypt") - (version "1.8.4") - (replacement libgcrypt-1.8.5) + (version "1.8.5") (source (origin (method url-fetch) (uri (string-append "mirror://gnupg/libgcrypt/libgcrypt-" version ".tar.bz2")) (sha256 (base32 - "09r27ywj9zplq6n9qw3mn7zmvf6y2jdmwx5d1kg8yqkj0qx18f7n")))) + "1hvsazms1bfd769q0ngl0r9g5i4m9mpz9jmvvrdzyzk3rfa2ljiv")))) (build-system gnu-build-system) (propagated-inputs `(("libgpg-error-host" ,libgpg-error))) @@ -171,18 +170,6 @@ generation.") (properties '((ftp-server . "ftp.gnupg.org") (ftp-directory . "/gcrypt/libgcrypt"))))) -(define-public libgcrypt-1.8.5 - (package - (inherit libgcrypt) - (version "1.8.5") - (source (origin - (method url-fetch) - (uri (string-append "mirror://gnupg/libgcrypt/libgcrypt-" - version ".tar.bz2")) - (sha256 - (base32 - "1hvsazms1bfd769q0ngl0r9g5i4m9mpz9jmvvrdzyzk3rfa2ljiv")))))) - (define-public libassuan (package (name "libassuan") -- cgit v1.2.3 From 9640cd972d71fa474e024e43246125217e65c424 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Fri, 14 Feb 2020 15:47:48 +0100 Subject: gnu: libgpg-error: Update to 1.37. * gnu/packages/patches/libgpg-error-gawk-compat.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Adjust accordingly. * gnu/packages/gnupg.scm (libgpg-error): Update to 1.37. [source](modules, patches): Remove. --- gnu/packages/gnupg.scm | 13 ++----------- 1 file changed, 2 insertions(+), 11 deletions(-) (limited to 'gnu/packages/gnupg.scm') diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm index 4e8869a658..890dd3299b 100644 --- a/gnu/packages/gnupg.scm +++ b/gnu/packages/gnupg.scm @@ -79,7 +79,7 @@ (define-public libgpg-error (package (name "libgpg-error") - (version "1.36") + (version "1.37") (source (origin (method url-fetch) @@ -87,16 +87,7 @@ version ".tar.bz2")) (sha256 (base32 - "0z696dmhfxm2n6pmr8b857wwljq9h633yi99bhbn7h88f91rigds")) - (patches (search-patches "libgpg-error-gawk-compat.patch")) - ;; XXX: Remove this snippet with the gawk patch above. It avoids having - ;; to call autoreconf for the Makefile.am change to take effect. - (modules '((guix build utils))) - (snippet - '(begin - (substitute* "src/Makefile.in" - (("namespace=errnos") "pkg_namespace=errnos")) - #t)))) + "0qwpx8mbc2l421a22l0l1hpzkip9jng06bbzgxwpkkvk5bvnybdk")))) (build-system gnu-build-system) (arguments (if (%current-target-system) -- cgit v1.2.3 From 9d14a67d4bd47559c8a63fc7a35af606f821cfff Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Thu, 20 Feb 2020 21:24:38 +0200 Subject: gnu: guile3.0-gcrypt: Fix compilation. * gnu/packages/gnupg.scm (guile3.0-gcrypt)[native-inputs]: Replace guile with guile-next. --- gnu/packages/gnupg.scm | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'gnu/packages/gnupg.scm') diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm index 890dd3299b..b957eb66b2 100644 --- a/gnu/packages/gnupg.scm +++ b/gnu/packages/gnupg.scm @@ -4,7 +4,7 @@ ;;; Copyright © 2014, 2018 Eric Bavier ;;; Copyright © 2014, 2015, 2016 Mark H Weaver ;;; Copyright © 2015 Paul van der Walt -;;; Copyright © 2015, 2016, 2017, 2018, 2019 Efraim Flashner +;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020 Efraim Flashner ;;; Copyright © 2015, 2016, 2017, 2019 Ricardo Wurmus ;;; Copyright © 2016 Christopher Allan Webber ;;; Copyright © 2016, 2017 ng0 @@ -515,6 +515,9 @@ interface (FFI) of Guile.") (package (inherit guile-gcrypt) (name "guile3.0-gcrypt") + (native-inputs + `(("guile" ,guile-next) + ,@(alist-delete "guile" (package-native-inputs guile-gcrypt)))) (inputs `(("guile" ,guile-next) ,@(alist-delete "guile" (package-inputs guile-gcrypt)))))) -- cgit v1.2.3 From c7d9abf830c16a00bcec76cdac603f956ecfc9dd Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Thu, 20 Feb 2020 21:34:49 +0200 Subject: gnu: guile2.0-gcrypt: Don't use guile-2.2. * gnu/packages/gnupg.scm (guile2.0-gcrypt)[native-inputs]: Replace guile with guile-2.0. --- gnu/packages/gnupg.scm | 3 +++ 1 file changed, 3 insertions(+) (limited to 'gnu/packages/gnupg.scm') diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm index b957eb66b2..f4478411e3 100644 --- a/gnu/packages/gnupg.scm +++ b/gnu/packages/gnupg.scm @@ -507,6 +507,9 @@ interface (FFI) of Guile.") (define-public guile2.0-gcrypt (package (inherit guile-gcrypt) (name "guile2.0-gcrypt") + (native-inputs + `(("guile" ,guile-2.0) + ,@(alist-delete "guile" (package-native-inputs guile-gcrypt)))) (inputs `(("guile" ,guile-2.0) ,@(alist-delete "guile" (package-inputs guile-gcrypt)))))) -- cgit v1.2.3 From b6bee63bed4f013064c0d902e7c8b83ed7514ade Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sun, 23 Feb 2020 00:20:30 +0100 Subject: gnu: Default to Guile 3.0. This patch changes three things: 1. package derivations are built using Guile 3.0; 2. 'gexp->derivation' defaults to Guile 3.0; 3. "guile3.0-" packages are deprecated aliases for the regular package, which now depends on Guile 3.0; "guile2.2-" packages are introduced; "guile-next" is renamed to "guile". * gnu/packages/guile.scm (guile-2.0/fixed): Remove. (guile-3.0/fixed): New variable. (package-for-guile-3.0): Remove. (package-for-guile-2.2): New variable. (define-deprecated-guile3.0-package): New macro. (guile-3.0)[name]: Change to "guile". (guile-json-3)[native-inputs, inputs]: New fields. (guile2.2-json): New variable. (guile3.0-json): Deprecate. (guile-gdbm-ffi)[native-inputs]: Switch to GUILE-3.0. (guile2.2-gdbm-ffi): New variable. (guile3.0-gdbm-ffi): Deprecate. (guile-sqlite3): Switch to GUILE-3.0. (guile2.2-sqlite3): New variable. (guile3.0-sqlite3): Deprecate. (guile-bytestructures): Switch to GUILE-3.0. (guile2.2-bytestructures): New variable. (guile3.0-bytestructures): Deprecate. (guile-git): Switch to GUILE-3.0. (guile2.2-git): New variable. (guile3.0-git): Deprecate. (guile-2.2/bug-fix): * gnu/packages/ci.scm (cuirass): Switch to GUILE-3.0. * gnu/packages/emacs-xyz.scm (emacs-guix): Switch to GUILE-3.0. * gnu/packages/gtk.scm (guile-cairo)[arguments]: New field. Switch to GUILE-3.0. (guile2.2-cairo): New variable. (guile3.0-cairo): Deprecate. (guile-rsvg): Switch to GUILE-3.0. (guile2.2-cairo): New variable. (guile3.0-cairo): Deprecate. (guile-present): Switch to GUILE-3.0. (guile2.2-present): New variable. (guile3.0-present): Deprecate. (guile-gnome)[propagated-inputs]: Use GUILE2.2-CAIRO and GUILE2.2-LIB. * gnu/packages/guile-xyz.scm (guile-fibers)[arguments]: Add #:configure-flags. Switch to GUILE-3.0. (guile2.2-fibers): New variable. (guile3.0-fibers): Deprecate. (guile-syntax-highlight): Switch to GUILE-3.0. (guile2.2-syntax-highlight): New variable. (guile3.0-syntax-highlight): Deprecate. (guile-colorized): Switch to GUILE-3.0. (guile2.2-colorized): New variable. (guile3.0-colorized): Deprecate. (guile-pfds): Switch to GUILE-3.0. (guile2.2-pfds): New variable. (guile3.0-pfds): Deprecate. (guile-simple-zmq): Switch to GUILE-3.0. (guile2.2-simple-zmq): New variable. (guile3.0-simple-zmq): Deprecate. (guile-newt): Switch to GUILE-3.0. (guile2.2-newt): New variable. (guile3.0-newt): Deprecate. (guile-parted): Switch to GUILE-3.0. (guile2.2-parted): New variable. (guile3.0-parted): Deprecate. (guile-config): Switch to GUILE-3.0. (guile2.2-config): New variable. (guile3.0-config): Deprecate. (guile-hall): Switch to GUILE-3.0. (guile2.2-hall): New variable. (guile3.0-hall): Deprecate. (guile-ics): Switch to GUILE-3.0. (guile2.2-ics): New variable. (guile3.0-ics): Deprecate. (guile-wisp)[arguments]: Add 'support-guile-3.0' phase. Switch to GUILE-3.0. (guile2.2-wisp): New variable. (guile3.0-wisp): Deprecate. (guile-lib): Switch to GUILE-3.0. (guile2.2-lib): New variable. (guile3.0-lib): Deprecate. (guile-minikanren): Switch to GUILE-3.0. (guile2.2-minikanren): New variable. (guile3.0-minikanren): Deprecate. (guile-irregex): Switch to GUILE-3.0. (guile2.2-irregex): New variable. (guile3.0-irregex): Deprecate. (haunt): Switch to GUILE-3.0, and remove GUILE-READER. (guile2.2-haunt): New variable. (guile3.0-haunt): Deprecate. (guile-commonmark): Switch to GUILE-3.0. (guile2.2-commonmark): New variable. (guile3.0-commonmark): Deprecate. (mcron): Switch to GUILE-3.0. (guile2.0-mcron): New variable. (guile3.0-mcron): Deprecate. (guile-picture-language): Switch to GUILE-3.0. (guile2.2-picture-language): New variable. (guile3.0-picture-language): Deprecate. (guile-gi): Switch to GUILE-3.0. (guile2.2-gi): New variable. (guile3.0-gi): Deprecate. (guile-hashing): Switch to GUILE-3.0. (guile2.2-hashing): New variable. (guile3.0-hashing): Deprecate. * gnu/packages/package-management.scm (guix): Switch to GUILE-3.0. (guile2.2-guix): New variable. (guile3.0-guix): Deprecate. (gwl): Replace "guile3.0-" with "guile-". (guix-jupyter)[source]: Adjust for Guile 3.0. Switch to GUILE-3.0. * gnu/packages/ssh.scm (guile-ssh): Switch to GUILE-3.0. (guile2.2-ssh): New variable. (guile3.0-ssh): Deprecate. * gnu/packages/admin.scm (shepherd): Switch to GUILE-3.0. (guile2.2-shepherd): New variable. (guile3.0-shepherd): Deprecate. * gnu/packages/mail.scm (mailutils): Switch to GUILE-3.0. (guile2.2-mailutils): New variable. (guile3.0-mailutils): Deprecate. * gnu/packages/plotutils.scm (guile-charting): Switch to GUILE-3.0. (guile2.2-charting): New variable. (guile3.0-charting): Deprecate. * gnu/packages/version-control.scm (libgit2): Switch to GUILE-3.0. * gnu/packages/vpn.scm (vpnc-scripts): Switch to GUILE-3.0. * gnu/packages/web.scm (guix-data-service): Switch to GUILE-3.0. (hpcguix-web): Switch to GUILE-3.0. * guix/self.scm (specification->package): Refer to the "guile-" variants instead of "guile3.0-". * guix/gexp.scm (default-guile): Change to GUILE-3.0. * build-aux/build-self.scm (build): #:guile-version defaults to "3.0". * gnu/packages/commencement.scm (guile-final): Base on GUILE-3.0/FIXED. --- gnu/packages/gnupg.scm | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) (limited to 'gnu/packages/gnupg.scm') diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm index 5d389d165c..9b6019007e 100644 --- a/gnu/packages/gnupg.scm +++ b/gnu/packages/gnupg.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès +;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès ;;; Copyright © 2013, 2015, 2018 Andreas Enge ;;; Copyright © 2014, 2018 Eric Bavier ;;; Copyright © 2014, 2015, 2016 Mark H Weaver @@ -493,7 +493,7 @@ gpgpme starting with version 1.7.") ("texinfo" ,texinfo) ("guile" ,guile-2.2))) (inputs - `(("guile" ,guile-2.2) + `(("guile" ,guile-3.0) ("libgcrypt" ,libgcrypt))) (synopsis "Cryptography library for Guile using Libgcrypt") (description @@ -514,17 +514,17 @@ interface (FFI) of Guile.") `(("guile" ,guile-2.0) ,@(alist-delete "guile" (package-inputs guile-gcrypt)))))) -(define-public guile3.0-gcrypt +(define-public guile2.2-gcrypt (package (inherit guile-gcrypt) - (name "guile3.0-gcrypt") - (native-inputs - `(("guile" ,guile-next) - ,@(alist-delete "guile" (package-native-inputs guile-gcrypt)))) + (name "guile2.2-gcrypt") (inputs - `(("guile" ,guile-next) + `(("guile" ,guile-2.2) ,@(alist-delete "guile" (package-inputs guile-gcrypt)))))) +(define-public guile3.0-gcrypt + (deprecated-package "guile3.0-gcrypt" guile-gcrypt)) + (define-public python-gpg (package (name "python-gpg") -- cgit v1.2.3 From cfa4de760a9c56c05f77670a1b9e004b94cef599 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 17 Mar 2020 10:40:19 +0100 Subject: gnu: guile-gcrypt: Use the correct Guile version. This is a follow-up to commit b6bee63bed4f013064c0d902e7c8b83ed7514ade. * gnu/packages/gnupg.scm (guile-gcrypt)[native-inputs]: Remove GUILE-2.2. Add GUILE-3.0. (guile2.2-gcrypt)[native-inputs]: Adjust accordingly. --- gnu/packages/gnupg.scm | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'gnu/packages/gnupg.scm') diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm index 9b6019007e..c22eb57fc7 100644 --- a/gnu/packages/gnupg.scm +++ b/gnu/packages/gnupg.scm @@ -491,7 +491,7 @@ gpgpme starting with version 1.7.") ("autoconf" ,autoconf) ("automake" ,automake) ("texinfo" ,texinfo) - ("guile" ,guile-2.2))) + ("guile" ,guile-3.0))) (inputs `(("guile" ,guile-3.0) ("libgcrypt" ,libgcrypt))) @@ -518,6 +518,9 @@ interface (FFI) of Guile.") (package (inherit guile-gcrypt) (name "guile2.2-gcrypt") + (native-inputs + `(("guile" ,guile-2.2) + ,@(alist-delete "guile" (package-native-inputs guile-gcrypt)))) (inputs `(("guile" ,guile-2.2) ,@(alist-delete "guile" (package-inputs guile-gcrypt)))))) -- cgit v1.2.3 From 7e7033d16e96f4c3226fead4820a01b1b32da275 Mon Sep 17 00:00:00 2001 From: "Jan (janneke) Nieuwenhuizen" Date: Tue, 7 Apr 2020 07:41:08 +0200 Subject: gnu: libgcrypt: Fix cross-compilation. This works around /gnu/store/pwcp239kjf7lnj5i4lkdzcfcxwcfyk72-bash-minimal-5.0.16/bin/bash ../libtool --tag=CC --mode=link i586-pc-gnu-gcc -I/gnu/store/8x9dhckldm6iy1digklfanmvdaizq11f-libgpg-error-1.37/include -g -O2 -fvisibility=hidden -fno-delete-null-pointer-checks -Wall -o mpicalc mpicalc-mpicalc.o libgcrypt.la -L/gnu/store/8x9dhckldm6iy1digklfanmvdaizq11f-libgpg-error-1.37/lib -lgpg-error i586-pc-gnu-ld: ./.libs/libgcrypt.so: undefined reference to `_gcry_mpih_lshift' i586-pc-gnu-ld: ./.libs/libgcrypt.so: undefined reference to `_gcry_mpih_add_n' i586-pc-gnu-ld: ./.libs/libgcrypt.so: undefined reference to `_gcry_mpih_addmul_1' i586-pc-gnu-ld: ./.libs/libgcrypt.so: undefined reference to `_gcry_mpih_submul_1' i586-pc-gnu-ld: ./.libs/libgcrypt.so: undefined reference to `_gcry_mpih_mul_1' i586-pc-gnu-ld: ./.libs/libgcrypt.so: undefined reference to `_gcry_mpih_sub_n' i586-pc-gnu-ld: ./.libs/libgcrypt.so: undefined reference to `_gcry_mpih_rshift' * gnu/packages/gnupg.scm (libgcrypt)[arguments]: Disable assembly when cross-compiling. --- gnu/packages/gnupg.scm | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'gnu/packages/gnupg.scm') diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm index 498a6a1a9a..298f18a8cc 100644 --- a/gnu/packages/gnupg.scm +++ b/gnu/packages/gnupg.scm @@ -148,7 +148,10 @@ Daemon and possibly more in the future.") ;; the 'gpg-error-config' it runs is the native one---i.e., the wrong one. `(#:configure-flags (list (string-append "--with-gpg-error-prefix=" - (assoc-ref %build-inputs "libgpg-error-host"))))) + (assoc-ref %build-inputs "libgpg-error-host")) + ;; When cross-compiling, _gcry_mpih_lshift etc are undefined + ,@(if (%current-target-system) '("--disable-asm") + '())))) (outputs '("out" "debug")) (home-page "https://gnupg.org/") (synopsis "Cryptographic function library") -- cgit v1.2.3