GNU bug report logs - #74830
[PATCH] gnu: libcbor: Fix cross-compiling to 32-bit architecture

Previous Next

Package: guix-patches;

Reported by: Christoph Buck <dev <at> icepic.de>

Date: Thu, 12 Dec 2024 14:06:02 UTC

Severity: normal

Tags: patch

Done: Ludovic Courtès <ludo <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Christoph Buck <dev <at> icepic.de>
To: guix-patches <at> gnu.org
Cc: Christoph Buck <dev <at> icepic.de>
Subject: [PATCH] gnu: libcbor: Fix cross-compiling to 32-bit architecture
Date: Thu, 12 Dec 2024 14:04:35 +0000
* gnu/packages/compression.scm (libcbor)[arguments]: Disable examples because
they don't build during cross-compilation. The callback definition
`find_string` in examples/streaming_parser.c uses `size_t` as type for
argument `len` which is 4 bytes on a 32bit platform. However, the callback
handler of type `cbor_callbacks.string` to which `find_string` is assigned
expects an `uint64_t`. Since the examples are not required this patch will
disable them from the build.

Change-Id: I596a62a9d0ab936179c8344e91ecc2cb0419316f
---
 gnu/packages/compression.scm | 1 +
 1 file changed, 1 insertion(+)

diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm
index 99ea090091..eb3968cbce 100644
--- a/gnu/packages/compression.scm
+++ b/gnu/packages/compression.scm
@@ -2919,6 +2919,7 @@ (define-public libcbor
           "-DCMAKE_BUILD_TYPE=Release"
           "-DBUILD_SHARED_LIBS=ON"
           "-DCBOR_CUSTOM_ALLOC=ON"
+          "-DWITH_EXAMPLES=OFF"
           (string-append "-DCMAKE_INSTALL_LIBDIR=" lib)
           (string-append "-DCMAKE_INSTALL_RPATH=" lib)))))
     (synopsis "The C library for parsing and generating CBOR")

base-commit: d916d3b1568a2def0dfb9089d61f2202db35beb7
-- 
2.46.0





This bug report was last modified 152 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.