* update gettext to 0.23-1

This commit is contained in:
Alexander Baldeck 2024-12-31 14:41:44 +01:00
parent 8a4aabc924
commit a8fb2319ea
4 changed files with 48 additions and 161 deletions

View File

@ -1,9 +1,14 @@
pkgbase = gettext
pkgdesc = GNU internationalization library
pkgver = 0.22.5
pkgrel = 2
pkgver = 0.23
pkgrel = 1
url = https://www.gnu.org/software/gettext/
arch = x86_64
arch = powerpc64le
arch = powerpc64
arch = powerpc
arch = espresso
arch = riscv64
license = GFDL-1.2-only
license = GPL-2.0-only
license = GPL-2.0-or-later
@ -16,14 +21,14 @@ pkgbase = gettext
depends = sh
optdepends = git: for autopoint infrastructure updates
options = !docs
source = https://ftp.gnu.org/pub/gnu/gettext/gettext-0.22.5.tar.gz
source = https://ftp.gnu.org/pub/gnu/gettext/gettext-0.22.5.tar.gz.sig
source = gettext-0.22-disable-libtextstyle.patch
source = https://ftp.gnu.org/pub/gnu/gettext/gettext-0.23.tar.gz
source = https://ftp.gnu.org/pub/gnu/gettext/gettext-0.23.tar.gz.sig
source = gettext-0.23-libxml2.patch
validpgpkeys = 462225C3B46F34879FC8496CD605848ED7E69871
validpgpkeys = 68D94D8AAEEAD48AE7DC5B904F494A942E4616C2
validpgpkeys = 9001B85AF9E1B83DF1BDA942F5BE8B267C6A406D
b2sums = 39bc18de7b8836c63dec0b006555eec0bb82e7bbf210ea774f47d9933c98dad9a719c9cd2eff46ec3bacc8be633167a4fa8d84bb0132cdadbb86d182235b63b7
b2sums = 32828852ff105c66d4034f8a689f3e2a007b8770daa72f7f99fec3fb5ee2be7a930fb534389edf59436c8f41b98122efab24931d0e8bea3a903d24b4d9a34bfb
b2sums = SKIP
b2sums = 8512f87c7c8fc6bedf2992a5da8b34ee847dd61af4f55407ff9e02b965afcbea508b1dd87cd2e31c689166ee8ded824f54a95089978274753a6730a8a1d39164
b2sums = c93e039ac8fd150a2d210343886cdaa13308af091ed9f97b93d4137c52d51e84ec32f78961b1ee5a100f2e7f4c61ef47c7ad9282e28a406a89d11ef18c57510b
pkgname = gettext

View File

@ -2,8 +2,8 @@
# Maintainer: Tobias Powalowski <tpowa@archlinux.org>
pkgname=gettext
pkgver=0.22.5
pkgrel=2.1
pkgver=0.23
pkgrel=1
pkgdesc="GNU internationalization library"
url="https://www.gnu.org/software/gettext/"
arch=(x86_64 powerpc64le powerpc64 powerpc espresso riscv64)
@ -25,23 +25,20 @@ makedepends=(
)
optdepends=('git: for autopoint infrastructure updates')
options=(!docs)
source=(https://ftp.gnu.org/pub/gnu/gettext/$pkgname-$pkgver.tar.gz{,.sig}
gettext-0.22-disable-libtextstyle.patch)
b2sums=('39bc18de7b8836c63dec0b006555eec0bb82e7bbf210ea774f47d9933c98dad9a719c9cd2eff46ec3bacc8be633167a4fa8d84bb0132cdadbb86d182235b63b7'
source=(
https://ftp.gnu.org/pub/gnu/gettext/$pkgname-$pkgver.tar.gz{,.sig}
gettext-0.23-libxml2.patch
)
b2sums=('32828852ff105c66d4034f8a689f3e2a007b8770daa72f7f99fec3fb5ee2be7a930fb534389edf59436c8f41b98122efab24931d0e8bea3a903d24b4d9a34bfb'
'SKIP'
'8512f87c7c8fc6bedf2992a5da8b34ee847dd61af4f55407ff9e02b965afcbea508b1dd87cd2e31c689166ee8ded824f54a95089978274753a6730a8a1d39164')
'c93e039ac8fd150a2d210343886cdaa13308af091ed9f97b93d4137c52d51e84ec32f78961b1ee5a100f2e7f4c61ef47c7ad9282e28a406a89d11ef18c57510b')
validpgpkeys=('462225C3B46F34879FC8496CD605848ED7E69871' # Daiki Ueno
'68D94D8AAEEAD48AE7DC5B904F494A942E4616C2'
'9001B85AF9E1B83DF1BDA942F5BE8B267C6A406D') # Bruno Haible (Open Source Development)
prepare() {
cd ${pkgname}-${pkgver}
# Do not build libtextstyle, as it depends on libcroco
# which is now unmaintained and has known security bugs.
# patch from Fedora
patch -p1 -i $srcdir/gettext-0.22-disable-libtextstyle.patch
autoreconf -f
automake
patch -Np1 -i ../gettext-0.23-libxml2.patch
}
build() {
@ -51,7 +48,8 @@ build() {
--enable-csharp \
--enable-nls \
--with-xz \
--without-included-gettext
--without-included-gettext \
--without-included-libunistring
sed -e 's/ -shared / -Wl,-O1,--as-needed\0/g' \
-i gettext-{tools,runtime,runtime/libasprintf}/libtool
make

View File

@ -1,141 +0,0 @@
diff --git a/Makefile.am b/Makefile.am
index 815e3c7..e897de7 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -19,7 +19,7 @@
AUTOMAKE_OPTIONS = 1.5 gnu no-dependencies
ACLOCAL_AMFLAGS = -I m4
-SUBDIRS = gnulib-local gettext-runtime libtextstyle gettext-tools
+SUBDIRS = gnulib-local gettext-runtime gettext-tools
changelog_etc = \
gettext-runtime/ChangeLog.0 \
@@ -123,7 +123,6 @@ distcheck-hook:
test "`sed 1,16d $(srcdir)/gettext-runtime/intl/xsize.h | md5sum`" = "`sed 1,16d $(srcdir)/gettext-tools/gnulib-lib/xsize.h | md5sum`"
cmp -s $(srcdir)/gettext-runtime/man/help2man $(srcdir)/gettext-tools/man/help2man
cmp -s $(srcdir)/gettext-runtime/man/x-to-1.in $(srcdir)/gettext-tools/man/x-to-1.in
- cmp -s $(srcdir)/libtextstyle/m4/libtextstyle.m4 $(srcdir)/gettext-tools/gnulib-m4/libtextstyle.m4
cmp -s $(srcdir)/gettext-tools/examples/hello-java-awt/m4/TestAWT.java $(srcdir)/gettext-tools/examples/hello-java-swing/m4/TestAWT.java
cmp -s $(srcdir)/gettext-tools/examples/hello-java-awt/m4/TestAWT.class $(srcdir)/gettext-tools/examples/hello-java-swing/m4/TestAWT.class
test "`sed 1,15d $(srcdir)/gnulib-local/lib/alloca.in.h | md5sum`" = "`sed 1,15d $(srcdir)/gettext-runtime/libasprintf/alloca.in.h | md5sum`"
diff --git a/configure.ac b/configure.ac
index 49689fb..2d23b44 100644
--- a/configure.ac
+++ b/configure.ac
@@ -37,7 +37,7 @@ dnl Checks for typedefs, structures, and compiler characteristics.
dnl Checks for library functions.
-AC_CONFIG_SUBDIRS([gettext-runtime libtextstyle gettext-tools])
+AC_CONFIG_SUBDIRS([gettext-runtime gettext-tools])
AM_EXTRA_RECURSIVE_TARGETS([maintainer-update-po])
@@ -49,7 +49,7 @@ AC_CANONICAL_HOST
dnl Optional Features: AC_ARG_ENABLE calls
dnl Optional Packages: AC_ARG_WITH calls
dnl Some influential environment variables: AC_ARG_VAR calls
-esyscmd([{ cd gettext-runtime && autoconf --trace=AC_ARG_ENABLE:'$n([$1],[$2])' --trace=AC_ARG_WITH:'$n([$1],[$2])' --trace=AC_ARG_VAR:'$n($@)' && cd ..; cd libtextstyle && autoconf --trace=AC_ARG_ENABLE:'$n([$1],[$2])' --trace=AC_ARG_WITH:'$n([$1],[$2])' --trace=AC_ARG_VAR:'$n($@)' && cd ..; { cd gettext-tools && autoconf --trace=AC_ARG_ENABLE:'$n([$1],[$2])' --trace=AC_ARG_WITH:'$n([$1],[$2])' --trace=AC_ARG_VAR:'$n($@)' && cd ..; } | grep -v installed.libtextstyle | grep -v installed.csharp | grep -v 'installed C#'; } | sed -f build-aux/ac-help.sed ])
+esyscmd([{ cd gettext-runtime && autoconf --trace=AC_ARG_ENABLE:'$n([$1],[$2])' --trace=AC_ARG_WITH:'$n([$1],[$2])' --trace=AC_ARG_VAR:'$n($@)' && cd ..; { cd gettext-tools && autoconf --trace=AC_ARG_ENABLE:'$n([$1],[$2])' --trace=AC_ARG_WITH:'$n([$1],[$2])' --trace=AC_ARG_VAR:'$n($@)' && cd ..; } | grep -v installed.csharp | grep -v 'installed C#'; } | sed -f build-aux/ac-help.sed ])
AC_CONFIG_FILES([Makefile])
diff --git a/gettext-tools/Makefile.am b/gettext-tools/Makefile.am
index 449a797..c5719c2 100644
--- a/gettext-tools/Makefile.am
+++ b/gettext-tools/Makefile.am
@@ -19,7 +19,7 @@
AUTOMAKE_OPTIONS = 1.5 gnu no-dependencies
ACLOCAL_AMFLAGS = -I m4 -I ../gettext-runtime/m4 -I ../m4 -I gnulib-m4 -I libgrep/gnulib-m4 -I libgettextpo/gnulib-m4
-SUBDIRS = gnulib-lib libgrep src libgettextpo po its projects styles emacs misc man m4 tests system-tests gnulib-tests examples doc
+SUBDIRS = gnulib-lib libgrep libgettextpo src po its projects styles emacs misc man m4 tests system-tests gnulib-tests examples doc
EXTRA_DIST = misc/DISCLAIM
MOSTLYCLEANFILES = core *.stackdump
diff --git a/gettext-tools/src/Makefile.am b/gettext-tools/src/Makefile.am
index 764ffad..eccfbbd 100644
--- a/gettext-tools/src/Makefile.am
+++ b/gettext-tools/src/Makefile.am
@@ -292,19 +292,9 @@ cldr_plurals_SOURCES = cldr-plural.y cldr-plural-exp.c cldr-plurals.c
cldr_plurals_CFLAGS = $(AM_CFLAGS) $(INCXML)
cldr_plurals_LDADD = libgettextsrc.la $(LDADD)
-if USE_INSTALLED_LIBTEXTSTYLE
-LT_LIBTEXTSTYLE = @LTLIBTEXTSTYLE@
-else
-# How to get the include files of libtextstyle.
-textstyle.h textstyle/stdbool.h textstyle/version.h textstyle/woe32dll.h:
- here=`pwd`; \
- cd ../../libtextstyle/lib && \
- $(MAKE) install-nobase_includeHEADERS install-nobase_nodist_includeHEADERS includedir="$$here"
-BUILT_SOURCES += textstyle.h textstyle/stdbool.h textstyle/version.h textstyle/woe32dll.h
-MOSTLYCLEANFILES += textstyle.h textstyle/stdbool.h textstyle/version.h textstyle/woe32dll.h
-# Where to find the built libtextstyle library.
-LT_LIBTEXTSTYLE = ../../libtextstyle/lib/libtextstyle.la
-endif
+# Use the dummy libtextstyle from gnulib, as libgettextpo does.
+LT_LIBTEXTSTYLE =
+AM_CPPFLAGS += -I../libgettextpo -I$(top_srcdir)/libgettextpo
# How to build libgettextsrc.la.
# Need ../gnulib-lib/libgettextlib.la.
--- a/gettext-tools/libgettextpo/textstyle.in.h.orig 2023-09-18 22:36:31.000000000 +0200
+++ b/gettext-tools/libgettextpo/textstyle.in.h 2023-09-21 10:11:20.611665975 +0200
@@ -255,7 +255,8 @@
static inline file_ostream_t
file_ostream_create (FILE *fp)
{
- return fp;
+ /* Closing the stream we return should not close 'fp'. */
+ return fdopen (dup (fileno (fp)), "w");
}
static inline bool
@@ -673,14 +674,6 @@
return true;
}
-static inline noop_styled_ostream_t
-noop_styled_ostream_create (ostream_t destination, bool pass_ownership)
-{
- if (!pass_ownership)
- /* Not supported without the real libtextstyle. */
- abort ();
- return destination;
-}
static inline bool
is_instance_of_noop_styled_ostream (_GL_ATTRIBUTE_MAYBE_UNUSED ostream_t stream)
@@ -688,6 +689,30 @@
return false;
}
+/* ----------------------- From noop-styled-ostream.h ----------------------- */
+
+/* noop_styled_ostream_t is a subtype of ostream_t. */
+typedef ostream_t noop_styled_ostream_t;
+
+#define noop_styled_ostream_write_mem ostream_write_mem
+#define noop_styled_ostream_flush ostream_flush
+#define noop_styled_ostream_free ostream_free
+#define noop_styled_ostream_begin_use_class styled_ostream_begin_use_class
+#define noop_styled_ostream_end_use_class styled_ostream_end_use_class
+#define noop_styled_ostream_get_hyperlink_ref styled_ostream_get_hyperlink_ref
+#define noop_styled_ostream_get_hyperlink_id styled_ostream_get_hyperlink_id
+#define noop_styled_ostream_set_hyperlink styled_ostream_set_hyperlink
+#define noop_styled_ostream_flush_to_current_style styled_ostream_flush_to_current_style
+
+static inline ostream_t
+noop_styled_ostream_create (ostream_t destination, bool pass_ownership)
+{
+ if (pass_ownership)
+ return destination;
+ else
+ return fdopen (dup (fileno (destination)), "w");
+}
+
/* ------------------------------ From color.h ------------------------------ */
#define color_test_mode false

View File

@ -0,0 +1,25 @@
diff -ur gettext-0.23.orig/gettext-tools/src/its.c gettext-0.23/gettext-tools/src/its.c
--- gettext-0.23.orig/gettext-tools/src/its.c 2024-10-13 16:14:36.000000000 +0530
+++ gettext-0.23/gettext-tools/src/its.c 2024-12-05 23:24:03.100545103 +0530
@@ -28,6 +28,7 @@
#include <stdint.h>
#include <stdlib.h>
+#include <libxml/xmlversion.h>
#include <libxml/xmlerror.h>
#include <libxml/tree.h>
#include <libxml/parser.h>
@@ -82,7 +83,13 @@
/* ----------------------------- Error handling ----------------------------- */
static void
+/* Adapt to API change in libxml 2.12.0.
++ See <https://gitlab.gnome.org/GNOME/libxml2/-/issues/622>. */
+#if LIBXML_VERSION >= 21200
+structured_error (void *data, const xmlError *err)
+#else
structured_error (void *data, xmlError *err)
+#endif
{
error (0, err->level == XML_ERR_FATAL ? EXIT_FAILURE : 0,
_("%s error: %s"), "libxml2", err->message);