aboutsummaryrefslogtreecommitdiff
path: root/packages/gettext/0.20.1
diff options
context:
space:
mode:
Diffstat (limited to 'packages/gettext/0.20.1')
-rw-r--r--packages/gettext/0.20.1/0002-tparam-configure-fix.patch49
-rw-r--r--packages/gettext/0.20.1/0003-Fix-compilation-errors-with-ISO-C-23-compilers.patch51
2 files changed, 100 insertions, 0 deletions
diff --git a/packages/gettext/0.20.1/0002-tparam-configure-fix.patch b/packages/gettext/0.20.1/0002-tparam-configure-fix.patch
new file mode 100644
index 00000000..331808e5
--- /dev/null
+++ b/packages/gettext/0.20.1/0002-tparam-configure-fix.patch
@@ -0,0 +1,49 @@
+[PATCH] tparam configure fix
+
+With a newer compiler the configure check for tparam/tparm fails with
+
+conftest.c: In function 'main':
+conftest.c:95:8: error: returning 'char *' from a function with return type 'int' makes integer from pointer without a cast [-Wint-conversion]
+ 95 | return tparam ("\033\133%dm", &buf, 1, 8);
+ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+configure:23675: $? = 1
+conftest.c: In function 'main':
+conftest.c:94:8: error: returning 'char *' from a function with return type 'int' makes integer from pointer without a cast [-Wint-conversion]
+ 94 | return tparm ("\033\133%dm", 8);
+ | ^~~~~~~~~~~~~~~~~~~~~~~~
+configure:23719: $? = 1
+
+This causes libtextstyle to backfill these two functions from gnulib which
+eventually causes a link error
+
+ld.bfd: buildtools/complibs-host/lib/libncurses.a(lib_tparm.o): in function `tparm':
+src/ncurses/ncurses/tinfo/lib_tparm.c:1093: multiple definition of `tparm'; ../lib/.libs/libtextstyle.a(tparm.o):src/gettext/libtextstyle/lib/tparm.c:256: first defined here
+
+Update the configure check to something that will correctly determine if
+tparam/tparm need to be back-filled.
+
+Signed-off-by: Chris Packham <judge.packham@gmail.com>
+---
+ libtextstyle/configure | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+--- a/libtextstyle/configure
++++ b/libtextstyle/configure
+@@ -23667,7 +23667,7 @@
+ int
+ main ()
+ {
+-return tparam ("\033\133%dm", &buf, 1, 8);
++return ! tparam ("\033\133%dm", &buf, 1, 8);
+ ;
+ return 0;
+ }
+@@ -23711,7 +23711,7 @@
+ int
+ main ()
+ {
+-return tparm ("\033\133%dm", 8);
++return ! tparm ("\033\133%dm", 8);
+ ;
+ return 0;
+ }
diff --git a/packages/gettext/0.20.1/0003-Fix-compilation-errors-with-ISO-C-23-compilers.patch b/packages/gettext/0.20.1/0003-Fix-compilation-errors-with-ISO-C-23-compilers.patch
new file mode 100644
index 00000000..c0ab21b4
--- /dev/null
+++ b/packages/gettext/0.20.1/0003-Fix-compilation-errors-with-ISO-C-23-compilers.patch
@@ -0,0 +1,51 @@
+From eb8a76522689a010a595071ce753ed489cbad7ff Mon Sep 17 00:00:00 2001
+From: Bruno Haible <bruno@clisp.org>
+Date: Thu, 9 Feb 2023 16:58:20 +0100
+Subject: [PATCH] Fix compilation errors with ISO C 23 compilers.
+
+* gettext-runtime/intl/dcigettext.c (getwd, getcwd): Assume a declaration in the
+system header files.
+* gettext-runtime/intl/gettextP.h (SWAP): Drop K&C compatibility.
+---
+ gettext-runtime/intl/dcigettext.c | 3 ---
+ gettext-runtime/intl/gettextP.h | 5 -----
+ 2 files changed, 8 deletions(-)
+
+diff --git a/gettext-runtime/intl/dcigettext.c b/gettext-runtime/intl/dcigettext.c
+index ba333303f..85e0d6aad 100644
+--- a/gettext-runtime/intl/dcigettext.c
++++ b/gettext-runtime/intl/dcigettext.c
+@@ -138,13 +138,10 @@ extern int errno;
+ # define tfind __tfind
+ #else
+ # if !defined HAVE_GETCWD
+-char *getwd ();
+ # define getcwd(buf, max) getwd (buf)
+ # else
+ # if VMS
+ # define getcwd(buf, max) (getcwd) (buf, max, 0)
+-# else
+-char *getcwd ();
+ # endif
+ # endif
+ # ifndef HAVE_STPCPY
+diff --git a/gettext-runtime/intl/gettextP.h b/gettext-runtime/intl/gettextP.h
+index 0d7dbd6d4..1b7186552 100644
+--- a/gettext-runtime/intl/gettextP.h
++++ b/gettext-runtime/intl/gettextP.h
+@@ -113,12 +113,7 @@ extern char *libintl_dcigettext (const char *__domainname,
+ # define SWAP(i) bswap_32 (i)
+ #else
+ static inline nls_uint32
+-# ifdef __cplusplus
+ SWAP (nls_uint32 i)
+-# else
+-SWAP (i)
+- nls_uint32 i;
+-# endif
+ {
+ return (i << 24) | ((i & 0xff00) << 8) | ((i >> 8) & 0xff00) | (i >> 24);
+ }
+--
+2.49.0
+