Files
buildroot/package/kbd/0001-libkbdfile-fix-zlib-build.patch
Bernd Kuhls d98d9ba28f package/kbd: fix zlib build, add optional dependencies
Buildroot commit 930660890b bumped kbd to
version 2.9.0 which includes optional support for various compression
libraries. This commit adds the corresponding configure options and a
fix for build errors caused by zlib.

The build error was happening when a zlib was compiled before kbd.
The issue can be reproduced with the commands:

    cat >.config <<EOF
    BR2_aarch64=y
    BR2_TOOLCHAIN_EXTERNAL=y
    BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y
    BR2_PACKAGE_KBD=y
    BR2_PACKAGE_ZLIB=y
    EOF
    make olddefconfig
    make zlib
    make kbd

The compilation fails with the erro:

    kbdfile-zlib.c: In function 'dlopen_note':
    elf-note.h:27:30: error: 'sym_gzopen' undeclared (first use in this function); did you mean 'sym_gzopen64'?
       27 | #define DLSYM_ARG(symbol__) &sym_##symbol__, STRINGIFY(symbol__),
          |                              ^~~~

Fixes:
https://autobuild.buildroot.net/results/8ff/8ff6c3d940b68069f748f12646f7516ec86172c1/

Signed-off-by: Bernd Kuhls <bernd@kuhls.net>
[Julien:
 - add commands to reproduce the issue
 - update patch "Upstream:" link to upstream commit
]
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-12-08 21:32:58 +01:00

36 lines
1.1 KiB
Diff

From 488872421ef38215d2797f78497eb559d8eec32a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jan=20=C4=8Cerm=C3=A1k?= <sairon@users.noreply.github.com>
Date: Fri, 5 Dec 2025 16:45:36 +0100
Subject: [PATCH] libkbdfile: fix zlib build
Upstream: https://github.com/legionus/kbd/commit/2f9a4e56c2ef245fbe840677aad9d5932e17f50d
Signed-off-by: Bernd Kuhls <bernd@kuhls.net>
---
src/libkbdfile/elf-note.h | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)
diff --git a/src/libkbdfile/elf-note.h b/src/libkbdfile/elf-note.h
index a0fd9e2..d3b8d5c 100644
--- a/src/libkbdfile/elf-note.h
+++ b/src/libkbdfile/elf-note.h
@@ -26,14 +26,11 @@ int dlsym_many(void **dlp, const char *filename, ...);
*/
#define DLSYM_ARG(symbol__) &sym_##symbol__, STRINGIFY(symbol__),
-/* For symbols being dynamically loaded */
-#define DECLARE_DLSYM(symbol) static typeof(symbol) *sym_##symbol
-
/*
* Helper defines, to be done locally before including this header to switch between
* implementations
*/
-#define DECLARE_SYM(sym__) DECLARE_DLSYM(sym__);
+#define DECLARE_SYM(sym__) static typeof(sym__) *sym_##sym__;
/*
* Originally from systemd codebase.
--
2.47.3