guile-lzlib fix for the 64bit Hurd / gcc-14

<[email protected]>
Newsgroups gmane.lisp.guile.user
Organization AvatarAcademy.nl
Message-ID <[email protected]>
Hi Mathieu,

I'm using the attached patch to build guile-lzlib for the 64bit Hurd.

When configure tries to detect the shared library name, the Hurd's gcc-14 says

--8<---------------cut here---------------start------------->8---
x86_64-pc-gnu-gcc conftest.c -o conftest -llz -Wl,--verbose
foo.c: In function ‘main’:
foo.c:1:22: error: implicit declaration of function ‘LZ_decompress_open’ [-Wimplicit-function-declaration]
    1 | int main () { return LZ_decompress_open(); }
      |                      ^~~~~~~~~~~~~~~~~~
--8<---------------cut here---------------end--------------->8---

The solution could be to compile using -Wno-implicit-function-declaration,
or to just declare the function, which is what this patch does.

Greetings,
Janneke


-- 
Janneke Nieuwenhuizen <[email protected]>  | GNU LilyPond https://LilyPond.org
Freelance IT https://www.JoyOfSource.com | Avatar® https://AvatarAcademy.com
0001-build-Support-the-64bit-Hurd.patch (text/x-patch, 1.1 KB)
From 80dcd31562827f4b6d085affe9d9f22164f7ed34 Mon Sep 17 00:00:00 2001
From: Janneke Nieuwenhuizen <[email protected]>
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
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.