On Sun, 17 Mar 2024 20:50:57 +0500 Andrey Rakhmatullin <w...@debian.org> wrote:
On Wed, Mar 13, 2024 at 12:45:32PM +0100, Lucas Nussbaum wrote:
> > linebreak.c:163:19: error: implicit declaration of function 
‘u8_mbtouc_unsafe’ [-Werror=implicit-function-declaration]
> >   163 |       int count = u8_mbtouc_unsafe (&uc, s, s_end - s);
The prototype, in src/linebreak/unistr.h, is under #ifdef GNULIB_UNISTR_U8_MBTOUC_UNSAFE, but nothing sets that.

--
WBR, wRAR

A quick and dirty hacky fix I did in Ubuntu is:
--- t4kcommon-0.1.1/debian/rules        2022-07-09 18:24:26.000000000 +0200
+++ t4kcommon-0.1.1/debian/rules        2024-03-23 10:13:25.000000000 +0100
@@ -19,7 +19,7 @@
        symlinks -rsc doxygen
override_dh_installdocs: doxygen/html
-       dh_installdocs -p$(PKG)-dev --link-doc=$(PKG)
+       dh_installdocs -p$(PKG)-dev --link-doc=$(PKG)t64
        dh_installdocs
override_dh_strip:


diff -Nru t4kcommon-0.1.1/debian/patches/series 
t4kcommon-0.1.1/debian/patches/series
--- t4kcommon-0.1.1/debian/patches/series       2022-07-09 18:24:26.000000000 
+0200
+++ t4kcommon-0.1.1/debian/patches/series       2024-03-22 14:06:56.000000000 
+0100
@@ -2,3 +2,4 @@
 916060_bugfix.patch
 0001-Fix-wrapped_lines-variable-declaration-extern.patch
 1011684_bugfix.patch
+time64.patch
diff -Nru t4kcommon-0.1.1/debian/patches/time64.patch 
t4kcommon-0.1.1/debian/patches/time64.patch
--- t4kcommon-0.1.1/debian/patches/time64.patch 1970-01-01 01:00:00.000000000 
+0100
+++ t4kcommon-0.1.1/debian/patches/time64.patch 2024-03-22 14:08:19.000000000 
+0100
@@ -0,0 +1,25 @@
+Description: Fixup missing method definition.
+ This should be probably removed from symbols file, but it would require a 
transition.
+Author: Gianfranco Costamagna <locutusofb...@debian.org>
+Last-Update: 2024-03-22
+
+--- t4kcommon-0.1.1.orig/src/linebreak/unistr.h
++++ t4kcommon-0.1.1/src/linebreak/unistr.h
+@@ -131,7 +131,7 @@ extern int
+ /* The variants with _safe suffix are safe, even if the library is compiled
+    without --enable-safety.  */
+
+-#ifdef GNULIB_UNISTR_U8_MBTOUC_UNSAFE
++#if GNULIB_UNISTR_U8_MBTOUC_UNSAFE || __arm__
+ # if !HAVE_INLINE
+ extern int
+        u8_mbtouc_unsafe (ucs4_t *puc, const uint8_t *s, size_t n);
+@@ -154,7 +154,7 @@ u8_mbtouc_unsafe (ucs4_t *puc, const uin
+ # endif
+ #endif
+
+-#ifdef GNULIB_UNISTR_U16_MBTOUC_UNSAFE
++#if GNULIB_UNISTR_U16_MBTOUC_UNSAFE || __arm__
+ # if !HAVE_INLINE
+ extern int
+        u16_mbtouc_unsafe (ucs4_t *puc, const uint16_t *s, size_t n);


Of course some more general solution is needed for Debian.

People fixed in different ways
https://github.com/macports/macports-ports/commit/3dc0f189db4438b39f60d45bc477f2ed2834e7da

Also using libunistring-dev should be probably the best way to move forward
https://lists.gnu.org/archive/html/bug-libunistring/2010-09/msg00003.html

G.

Attachment: OpenPGP_signature.asc
Description: OpenPGP digital signature

Reply via email to