@@ -1516,6 +1516,7 @@ dist_patch_DATA = \
%D%/packages/patches/guile-fix-invalid-unicode-handling.patch \
%D%/packages/patches/guile-gdbm-ffi-support-gdbm-1.14.patch \
%D%/packages/patches/guile-hurd-posix-spawn.patch \
+ %D%/packages/patches/guile-lzlib-hurd64.patch \
%D%/packages/patches/guile-present-coding.patch \
%D%/packages/patches/guile-rsvg-pkgconfig.patch \
%D%/packages/patches/guile-ssh-rename-bool.patch \
@@ -4,7 +4,7 @@
;;; Copyright © 2014, 2016, 2018 David Thompson <davet@gnu.org>
;;; Copyright © 2014, 2017, 2018 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015, 2017 Christine Lemmer-Webber <cwebber@dustycloud.org>
-;;; Copyright © 2016, 2023 Janneke Nieuwenhuizen <janneke@gnu.org>
+;;; Copyright © 2016, 2023, 2024 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2016, 2017 Leo Famulari <leo@famulari.name>
;;; Copyright © 2016, 2019, 2020 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2017 Andy Wingo <wingo@igalia.com>
@@ -962,8 +962,18 @@ (define-public guile-lzlib
"1whgmwkr1v8m63p4aaqn8blwl9vcrswwhbfv4bm0aghl5a6rryd7"))))
(build-system gnu-build-system)
(arguments
- '(#:make-flags
- '("GUILE_AUTO_COMPILE=0"))) ;to prevent guild warnings
+ (list
+ #:make-flags #~'("GUILE_AUTO_COMPILE=0") ;prevent guild warnings
+ #:phases (if (or (%current-target-system) (target-hurd64?))
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'apply-hurd64-patch
+ (lambda _
+ (let ((patch
+ #$(local-file
+ (search-patch
+ "guile-lzlib-hurd64.patch"))))
+ (invoke "patch" "--force" "-p1" "-i" patch)))))
+ #~%standard-phases)))
(native-inputs (list autoconf automake pkg-config guile-3.0))
(inputs (list guile-3.0 lzlib))
(synopsis "Guile bindings to lzlib")
new file mode 100644
@@ -0,0 +1,32 @@
+Upstream-status: Presented upstream.
+
+From 80dcd31562827f4b6d085affe9d9f22164f7ed34 Mon Sep 17 00:00:00 2001
+From: Janneke Nieuwenhuizen <janneke@gnu.org>
+Date: Fri, 15 Nov 2024 16:18:29 +0100
+Subject: [PATCH] build: Support the 64bit Hurd.
+
+* configure.ac: When cross-compiling declare LZ_decompress_open before
+using it in conftest.c.
+---
+ configure.ac | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index 50dc5ac..4c56768 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -32,7 +32,10 @@ AC_DEFUN([GUILE_LIBLZ_FILE_NAME], [
+ [if test "$cross_compiling" = yes; then
+ # When cross-compiling, we cannot rely on 'ldd'. Instead, look
+ # the output of 'ld --verbose', assuming we're using GNU ld.
+- echo 'int main () { return LZ_decompress_open(); }' > conftest.c
++ cat > conftest.c <<EOF
++int LZ_decompress_open ();
++int main () { return LZ_decompress_open(); }
++EOF
+ guile_cv_liblz_libdir="\
+ `$CC conftest.c -o conftest$EXEEXT -llz -Wl,--verbose 2>/dev/null \
+ | grep -E '^/.*/liblz\.(a|so)'`"
+--
+2.46.0
+