package/xfsprogs: fix build with icu >= 76

Buildroot commit dcee99507c bumped icu
from version 73-2 to 77-1 causing a build error during linking.

Fixes:
https://autobuild.buildroot.net/results/a30/a30bf79be2102f3a77e4a78a488fb3b6a5b63bbb/

Signed-off-by: Bernd Kuhls <bernd@kuhls.net>
Signed-off-by: Julien Olivain <ju.o@free.fr>
This commit is contained in:
Bernd Kuhls
2025-11-28 19:14:01 +01:00
committed by Julien Olivain
parent 7cf46f0384
commit 865b690517
2 changed files with 56 additions and 0 deletions

View File

@@ -0,0 +1,47 @@
From 0b3e7284c7fa20dd27f8a584f8db417d1d6fa27b Mon Sep 17 00:00:00 2001
From: Alyssa Ross <hi@alyssa.is>
Date: Fri, 14 Feb 2025 09:45:10 +0100
Subject: configure: additionally get icu-uc from pkg-config
Upstream libicu changed its pkgconfig files[0] in version 76 to require
callers to call out to each .pc file they need for the libraries they
want to link against. This apparently reduces overlinking, at a cost of
needing the world to fix themselves up.
This patch fixes the following build error with icu 76, also seen by
Fedora[1]:
/bin/ld: unicrash.o: undefined reference to symbol 'uiter_setString_76'
/bin/ld: /lib/libicuuc.so.76: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
make[2]: *** [../include/buildrules:65: xfs_scrub] Error 1
make[1]: *** [include/buildrules:35: scrub] Error 2
Link: https://github.com/unicode-org/icu/commit/199bc827021ffdb43b6579d68e5eecf54c7f6f56 [0]
Link: https://src.fedoraproject.org/rpms/xfsprogs/c/624b0fdf7b2a31c1a34787b04e791eee47c97340 [1]
Signed-off-by: Alyssa Ross <hi@alyssa.is>
Reviewed-by: "Darrick J. Wong" <djwong@kernel.org>
Upstream: https://git.kernel.org/pub/scm/fs/xfs/xfsprogs-dev.git/commit/?id=0b3e7284c7fa20dd27f8a584f8db417d1d6fa27b
Signed-off-by: Bernd Kuhls <bernd@kuhls.net>
---
m4/package_icu.m4 | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
(limited to 'm4/package_icu.m4')
diff --git a/m4/package_icu.m4 b/m4/package_icu.m4
index 3ccbe0cc98..6b89c874f1 100644
--- a/m4/package_icu.m4
+++ b/m4/package_icu.m4
@@ -1,5 +1,5 @@
AC_DEFUN([AC_HAVE_LIBICU],
- [ PKG_CHECK_MODULES([libicu], [icu-i18n], [have_libicu=yes], [have_libicu=no])
+ [ PKG_CHECK_MODULES([libicu], [icu-i18n icu-uc], [have_libicu=yes], [have_libicu=no])
AC_SUBST(have_libicu)
AC_SUBST(libicu_CFLAGS)
AC_SUBST(libicu_LIBS)
--
cgit 1.2.3-korg

View File

@@ -10,6 +10,15 @@ XFSPROGS_SOURCE = xfsprogs-$(XFSPROGS_VERSION).tar.xz
XFSPROGS_LICENSE = GPL-2.0, GPL-2.0+, LGPL-2.1 (libhandle, few headers)
XFSPROGS_LICENSE_FILES = LICENSES/GPL-2.0 LICENSES/LGPL-2.1
# 0002-configure-additionally-get-icu-uc-from-pkg-config.patch
XFSPROGS_AUTORECONF = YES
# restore upstream install-sh script overwritten by autoreconf
define XFSPROGS_FIX_INSTALL_SH
mv $(@D)/install-sh~ $(@D)/install-sh
endef
XFSPROGS_POST_CONFIGURE_HOOKS = XFSPROGS_FIX_INSTALL_SH
XFSPROGS_DEPENDENCIES = inih liburcu util-linux
XFSPROGS_CONF_ENV = ac_cv_header_aio_h=yes ac_cv_lib_rt_lio_listio=yes PLATFORM="linux"