]> git.ipfire.org Git - thirdparty/gettext.git/log
thirdparty/gettext.git
8 months agolibtextstyle: Improve package version handling.
Bruno Haible [Fri, 24 Jan 2025 20:25:54 +0000 (21:25 +0100)] 
libtextstyle: Improve package version handling.

* libtextstyle/autogen.sh: Copy also m4/init-package-version.m4.
* libtextstyle/m4/init-package-version.m4: Remove file, moved to gnulib.

8 months agoTemporarily revert "po: Rename Makefile.in.in to Makefile.in."
Bruno Haible [Thu, 23 Jan 2025 22:58:12 +0000 (23:58 +0100)] 
Temporarily revert "po: Rename Makefile.in.in to Makefile.in."

8 months agobuild: Update release-steps after problem with .version has been fixed.
Bruno Haible [Thu, 23 Jan 2025 23:12:16 +0000 (00:12 +0100)] 
build: Update release-steps after problem with .version has been fixed.

8 months agobuild: Improve package version handling.
Bruno Haible [Thu, 23 Jan 2025 09:13:43 +0000 (10:13 +0100)] 
build: Improve package version handling.

* autogen.sh: Copy also m4/init-package-version.m4, m4/version-stamp.m4.
* configure.ac: Use gl_INIT_PACKAGE and gl_CONFIG_VERSION_STAMP.
* gettext-runtime/configure.ac: Use gl_INIT_PACKAGE.
* gettext-runtime/intl/configure.ac: Likewise.
* gettext-tools/configure.ac: Likewise.
* gettext-tools/examples/configure.ac: Likewise.
* Makefile.am (dist-tarball-version): New target.
($(top_srcdir)/.version): Remove target.

8 months agoUpdate to the newest gnulib.
Bruno Haible [Thu, 23 Jan 2025 09:08:00 +0000 (10:08 +0100)] 
Update to the newest gnulib.

8 months agoformat-kde-kuit: Fix test program.
Bruno Haible [Sun, 12 Jan 2025 06:35:20 +0000 (07:35 +0100)] 
format-kde-kuit: Fix test program.

* gettext-tools/src/format-kde-kuit.c: Fix compile-command.
(format_print): Make it compile. Print a '*' for each argument.

8 months agoformat-kde: Fix test program.
Bruno Haible [Sun, 12 Jan 2025 06:33:10 +0000 (07:33 +0100)] 
format-kde: Fix test program.

* gettext-tools/src/format-kde.c (format_print): Print a '*' for each argument.

8 months agoUpdate .gitignore after the recent refactorings.
Bruno Haible [Thu, 9 Jan 2025 17:25:14 +0000 (18:25 +0100)] 
Update .gitignore after the recent refactorings.

8 months agoFix a test failure when LC_ALL is set to a non-English locale.
Bruno Haible [Wed, 8 Jan 2025 19:47:51 +0000 (20:47 +0100)] 
Fix a test failure when LC_ALL is set to a non-English locale.

Reported by Simon Josefsson <simon@josefsson.org>
in <https://lists.gnu.org/archive/html/bug-gettext/2025-01/msg00008.html>.

* gettext-tools/tests/xgettext-its-2: When setting LC_MESSAGES, also unset
LC_ALL.

8 months agoxgettext: JavaScript: Parse recursive JSX expressions correctly.
Bruno Haible [Wed, 8 Jan 2025 14:15:41 +0000 (15:15 +0100)] 
xgettext: JavaScript: Parse recursive JSX expressions correctly.

Reported by <fiurgeist@gmail.com> at <https://savannah.gnu.org/bugs/?66643>.

* gettext-tools/src/x-javascript.c (phase5_get): Treat a '<' character in
level type level_embedded_js_in_xml like in the other level types.
* gettext-tools/tests/xgettext-javascript-6: Add another test case.
* NEWS: Mention the fix.

8 months agobuild: Achieve better tarball compression ratios in "make dist".
Bruno Haible [Wed, 8 Jan 2025 08:34:55 +0000 (09:34 +0100)] 
build: Achieve better tarball compression ratios in "make dist".

Suggested by Lasse Collin <lasse.collin@tukaani.org>
in <https://lists.gnu.org/archive/html/bug-gettext/2025-01/msg00011.html>.

* configure.ac (am__tar): Sort the files by basename.

8 months agoRefactor: Use function str_endswith.
Bruno Haible [Fri, 3 Jan 2025 15:22:41 +0000 (16:22 +0100)] 
Refactor: Use function str_endswith.

* libtextstyle/gnulib-local/lib/term-ostream.oo.c (term_ostream_create): Use
str_endswith.
* libtextstyle/gnulib-local/modules/term-ostream (Depends-on): Add
str_endswith.

8 months agoRefactor: Use function str_startswith.
Bruno Haible [Fri, 3 Jan 2025 15:19:12 +0000 (16:19 +0100)] 
Refactor: Use function str_startswith.

* libtextstyle/gnulib-local/lib/term-ostream.oo.c (should_enable_hyperlinks):
Use str_startswith.
* libtextstyle/gnulib-local/modules/term-ostream (Depends-on): Add
str_startswith.
* gettext-tools/src/cldr-plural.y (yylex): Use str_startswith.
* gettext-tools/src/format-java.c (message_format_parse, choice_format_parse):
Likewise.
* gettext-tools/src/msgl-check.c (plural_help, check_header_entry): Likewise.
* gettext-tools/src/read-catalog-abstract.c (parse_comment_filepos): Likewise.
* gettext-tools/src/read-csharp.c (msgdomain_read_csharp): Likewise.
* gettext-tools/src/write-csharp.c (msgdomain_write_csharp): Likewise.
* gettext-tools/src/x-perl.c (skip_pod): Likewise.
* autogen.sh (GNULIB_MODULES_TOOLS_FOR_SRC, GNULIB_MODULES_LIBGETTEXTPO): Add
str_startswith.

9 months agoUpdate to the newest gnulib.
Bruno Haible [Fri, 3 Jan 2025 15:12:24 +0000 (16:12 +0100)] 
Update to the newest gnulib.

9 months agoRefactor: Use GNU coding style.
Bruno Haible [Fri, 3 Jan 2025 13:51:22 +0000 (14:51 +0100)] 
Refactor: Use GNU coding style.

* gnulib-local/lib/markup.c (slow_name_validate, unescape_string_inplace,
clear_attributes, markup_parse_context_parse): Break lines before the operator.

9 months agolibtextstyle: Recognize number of colours in TERM=*-direct.
Bruno Haible [Fri, 3 Jan 2025 01:16:38 +0000 (02:16 +0100)] 
libtextstyle: Recognize number of colours in TERM=*-direct.

* libtextstyle/gnulib-local/lib/term-ostream.oo.c (term_ostream_create): Fix
recognition of TERM values that end in "-direct".

9 months agolibtextstyle: Add comments.
Bruno Haible [Fri, 3 Jan 2025 00:05:39 +0000 (01:05 +0100)] 
libtextstyle: Add comments.

* libtextstyle/gnulib-local/lib/term-ostream.oo.c (term_ostream_create): Add
comments.

9 months agoUpdate after gnulib changed.
Bruno Haible [Thu, 2 Jan 2025 13:12:12 +0000 (14:12 +0100)] 
Update after gnulib changed.

* gettext-runtime/src/envsubst.c (subst_from_stdin): Use sd_ function prefix
instead of string_desc_ function prefix.
* gettext-tools/src/its.c (set_doc_encoding_utf8, _its_is_valid_simple_gen_xml,
is_valid_xhtml_element, is_valid_html_element, is_no_end_html_element):
Likewise.
* gettext-tools/src/msgl-ascii.c (is_ascii_string_desc): Likewise.
* gettext-tools/src/msgl-iconv.c (convert_string_desc_directly): Likewise.
* gettext-tools/src/read-desktop.c (desktop_lex): Likewise.
* gettext-tools/src/x-awk.c (phase2_getc, phase3_get): Likewise.
* gettext-tools/src/x-c.c (phase5_get): Likewise.
* gettext-tools/src/x-perl.c (get_here_document, extract_quotelike_pass1,
extract_quotelike_pass1_utf8, extract_quotelike, extract_triple_quotelike,
extract_quotelike_pass3, extract_variable, interpolate_keywords, x_perl_prelex):
Likewise.
* gettext-tools/src/x-php.c (phase4_get): Likewise.
* gettext-tools/src/x-rst.c (parse_integer): Likewise.
* gettext-tools/src/x-ycp.c (phase2_getc, phase5_get): Likewise.
* gettext-tools/src/xg-encoding.c (string_desc_from_current_source_encoding):
Likewise.

9 months agoUpdate to the newest gnulib.
Bruno Haible [Thu, 2 Jan 2025 13:06:07 +0000 (14:06 +0100)] 
Update to the newest gnulib.

9 months agomsgfmt: Fix python-brace-format checking.
Bruno Haible [Tue, 31 Dec 2024 23:49:01 +0000 (00:49 +0100)] 
msgfmt: Fix python-brace-format checking.

Reported at <https://savannah.gnu.org/bugs/index.php?48872>.

* gettext-tools/src/format-python-brace.c (format_check): Fix comment. Do the
cmp > 0 check also if equality==false.
* gettext-tools/src/format-python.c (format_check): Fix comment.
* gettext-tools/src/format-ruby.c (format_check): Likewise.
* gettext-tools/src/format-sh.c (format_check): Likewise.

9 months agoWhen reading PO files, treat CRLF line terminators like LF, part 2.
Bruno Haible [Tue, 31 Dec 2024 16:03:56 +0000 (17:03 +0100)] 
When reading PO files, treat CRLF line terminators like LF, part 2.

* gettext-tools/tests/Makefile.am (EXTRA_DIST): Add testdata/crlf.pot.

9 months agoMerge from 0.23.x branch: Prepare for 0.23.1 release.
Bruno Haible [Tue, 31 Dec 2024 15:48:02 +0000 (16:48 +0100)] 
Merge from 0.23.x branch: Prepare for 0.23.1 release.

* gettext-runtime/intl/libgnuintl.in.h (LIBINTL_VERSION): Bump.
* libtextstyle/version.sh: Update VERSION_NUMBER, RELEASE_DATE.
* gettext-tools/libgettextpo/gettext-po.in.h (LIBGETTEXTPO_VERSION): Bump.
* gettext-runtime/intl/Makefile.am (LTV_*): Bump to 12:2:4.
* libtextstyle/lib/Makefile.am (LTV_*): Bump to 2:3:2.
* gettext-tools/libgettextpo/Makefile.am (LTV_*): Bump to 5:12:5.
* gettext-tools/misc/autopoint.in: Likewise. Accept version 0.23.1.
* gettext-tools/configure.ac (ARCHIVE_VERSION): Bump to 0.23.1.

9 months agoMerge from 0.23.x branch: Update NEWS file for release 0.23.1.
Bruno Haible [Tue, 31 Dec 2024 15:45:09 +0000 (16:45 +0100)] 
Merge from 0.23.x branch: Update NEWS file for release 0.23.1.

9 months agodoc: Update list of dependencies.
Bruno Haible [Tue, 31 Dec 2024 10:57:30 +0000 (11:57 +0100)] 
doc: Update list of dependencies.

9 months agoWhen reading PO files, treat CRLF line terminators like LF.
Bruno Haible [Tue, 31 Dec 2024 01:43:41 +0000 (02:43 +0100)] 
When reading PO files, treat CRLF line terminators like LF.

Reported by Hendy Irawan <hendy@hendyirawan.com> at
<https://savannah.gnu.org/bugs/?52395>.

* gettext-tools/src/read-po-internal.h (MBFILE_MAX_PUSHBACK): Renamed from
NPUSHBACK. Increase by 1.
(struct mbfile): Rename field 'have_pushback' to 'pushback_count'.
* gettext-tools/src/read-po-lex.c (mbfile_init): Update.
(mbfile_getc): Read pushed-back character before testing for sticky EOF.
(mbfile_ungetc): Update.
(mbfile_getc_normalized): New function.
(lex_getc): Invoke mbfile_getc_normalized instead of mbfile_getc.
* gettext-tools/tests/testdata/crlf.pot: New file.
* gettext-tools/tests/msgcat-23: New file.
* gettext-tools/tests/Makefile.am (TESTS): Add it.

9 months agoUpdate after gnulib changed.
Bruno Haible [Sat, 28 Dec 2024 08:17:56 +0000 (09:17 +0100)] 
Update after gnulib changed.

* autogen.sh (GNULIB_MODULES_RUNTIME_FOR_SRC, GNULIB_MODULES_TOOLS_FOR_SRC,
GNULIB_MODULES_TOOLS_FOR_SRC_COMMON_DEPENDENCIES, GNULIB_MODULES_TOOLS_OTHER,
GNULIB_MODULES_LIBGETTEXTPO): Use the new names of renamed gnulib modules.
* gnulib-local/modules/backupfile (Depends-on): Likewise.
* gnulib-local/modules/closeout (Depends-on): Likewise.
* gnulib-local/modules/libtextstyle-dummy (Depends-on): Likewise.
* gnulib-local/modules/libxml (Depends-on): Likewise.
* libtextstyle/gnulib-local/modules/fd-ostream (Depends-on): Likewise.
* libtextstyle/gnulib-local/modules/html-styled-ostream (Depends-on): Likewise.
* libtextstyle/gnulib-local/modules/iconv-ostream (Depends-on): Likewise.
* libtextstyle/gnulib-local/modules/memory-ostream (Depends-on): Likewise.
* libtextstyle/gnulib-local/modules/noop-styled-ostream (Depends-on): Likewise.
* libtextstyle/gnulib-local/modules/term-ostream (Depends-on): Likewise.

9 months agoUpdate to the newest gnulib.
Bruno Haible [Sat, 28 Dec 2024 08:14:03 +0000 (09:14 +0100)] 
Update to the newest gnulib.

9 months agobuild: Fix "make dist" result when run in a VPATH build.
Bruno Haible [Fri, 27 Dec 2024 09:39:27 +0000 (10:39 +0100)] 
build: Fix "make dist" result when run in a VPATH build.

Suggested by Simon Josefsson in
<https://lists.gnu.org/archive/html/bug-gnulib/2024-12/msg00181.html>.

* Makefile.am (gen-ChangeLogs): Consider $(srcdir).

9 months agointl: Support the UTF-8 environment on native Windows.
Bruno Haible [Mon, 23 Dec 2024 16:54:38 +0000 (17:54 +0100)] 
intl: Support the UTF-8 environment on native Windows.

Reported by Lasse Collin <lasse.collin@tukaani.org> in
<https://lists.gnu.org/archive/html/bug-gettext/2024-12/msg00111.html>.

* gettext-runtime/intl/setlocale.c: Include <windows.h>.
(setlocale_unixlike): In the UTF-8 environment, append a suffix ".65001"
to the locale names passed to the native setlocale().

9 months agointl: Handle LC_MESSAGES correctly on native Windows.
Bruno Haible [Mon, 23 Dec 2024 16:50:14 +0000 (17:50 +0100)] 
intl: Handle LC_MESSAGES correctly on native Windows.

* gettext-runtime/intl/setlocale.c (libintl_setlocale): Revamp the LC_ALL case
if LC_MESSAGES is 1729.

9 months agoUpdate to the newest gnulib.
Bruno Haible [Mon, 23 Dec 2024 16:58:36 +0000 (17:58 +0100)] 
Update to the newest gnulib.

9 months agolang-python-*: Fix test failures on mingw with UCRT.
Bruno Haible [Tue, 24 Dec 2024 15:48:26 +0000 (16:48 +0100)] 
lang-python-*: Fix test failures on mingw with UCRT.

* gettext-tools/tests/lang-python-1: Disable ISO8859_LOCALE_UNSUPPORTED for
Python 3. Set PYTHONIOENCODING environment variable.
* gettext-tools/tests/lang-python-2: Likewise.

9 months agolibtextstyle: Fix a test failure on MSYS2.
Bruno Haible [Mon, 23 Dec 2024 21:42:27 +0000 (22:42 +0100)] 
libtextstyle: Fix a test failure on MSYS2.

* libtextstyle/gnulib-local/tests/test-term-ostream-xterm-msys2.out: New file.
* libtextstyle/gnulib-local/tests/test-term-ostream-xterm.sh: Use it as an
expected test result.
* libtextstyle/gnulib-local/modules/term-ostream-tests (Files): Add it.
* libtextstyle/Makefile.am (EXTRA_DIST): Likewise.

9 months agoFix test failure of lang-ruby.
Bruno Haible [Mon, 23 Dec 2024 21:26:30 +0000 (22:26 +0100)] 
Fix test failure of lang-ruby.

* gettext-tools/tests/lang-ruby: Skip the test if 'rxgettext' is not installed.

9 months agoexamples: Don't fail build if rxgettext is not installed.
Bruno Haible [Mon, 23 Dec 2024 20:37:36 +0000 (21:37 +0100)] 
examples: Don't fail build if rxgettext is not installed.

* gettext-tools/examples/po/xsmallpot.sh: Ignore a 'make' failure in the
hello-ruby example.
* gettext-tools/examples/po/hello-ruby.pot: New generated file.

9 months agoexamples: Don't fail configuration of hello-objc if no Objective-C compiler is found...
Bruno Haible [Mon, 23 Dec 2024 19:17:24 +0000 (20:17 +0100)] 
examples: Don't fail configuration of hello-objc if no Objective-C compiler is found, part 2.

* gettext-tools/examples/po/xsmallpot.sh: Don't remove the m4_pushdef, m4_popdef
lines from hello-objc*/configure.ac.

9 months agoexamples: Find the Objective-C compiler out-of-the-box on AlmaLinux 9 systems.
Bruno Haible [Mon, 23 Dec 2024 18:01:58 +0000 (19:01 +0100)] 
examples: Find the Objective-C compiler out-of-the-box on AlmaLinux 9 systems.

* gettext-tools/examples/hello-objc-gnome2/configure.ac: Invoke AC_PROG_OBJC
with a customized search list. Don't invoke AC_PROC_CC.

9 months agoexamples: Don't fail configuration of hello-objc if no Objective-C compiler is found.
Bruno Haible [Mon, 23 Dec 2024 17:59:12 +0000 (18:59 +0100)] 
examples: Don't fail configuration of hello-objc if no Objective-C compiler is found.

* gettext-tools/examples/hello-objc/configure.ac: Map AC_MSG_FAILURE to
AC_MSG_WARN.

9 months agopo: Remove a comment that is not valid any more since 2002-01-07.
Bruno Haible [Fri, 20 Dec 2024 14:56:48 +0000 (15:56 +0100)] 
po: Remove a comment that is not valid any more since 2002-01-07.

The comment "Target 'all' must not depend on target '$(DOMAIN).pot-update'"
does not hold any more:
  all <- all-yes <- $(srcdir)/stamp-po <- $(srcdir)/$(DOMAIN).pot
and the latter rule executes
  $(MAKE) $(DOMAIN).pot-update

* gettext-runtime/po/Makefile.in: Remove comment.
* gettext-tools/examples/po/Makefile.am: Likewise.
* gettext-tools/examples/*/po/Makefile.am: Likewise.
* gettext-tools/examples/hello-objc-gnustep/po/GNUmakefile: Likewise.

9 months agoNew example 'hello-c++-gnome3'.
Bruno Haible [Wed, 18 Dec 2024 18:04:47 +0000 (19:04 +0100)] 
New example 'hello-c++-gnome3'.

* gettext-tools/examples/hello-c++-gnome3: New directory, based on
gettext-tools/examples/hello-c-gnome3.
* gettext-tools/examples/Makefile.am (EXAMPLESFILES, EXAMPLESDIRS): Update.
* gettext-tools/examples/po/Makefile.am (POTFILES, SMALLPOTS,
SMALLPOFILES_FOR_lang): Update.
* gettext-tools/examples/README: Update.
* gettext-tools/examples/check-examples: Handle this directory as well.
* NEWS: Mention the new example.
* HACKING: Mention the gtkmm dependency.

9 months agohello-c-gnome3: Document build dependencies.
Bruno Haible [Wed, 18 Dec 2024 18:29:44 +0000 (19:29 +0100)] 
hello-c-gnome3: Document build dependencies.

* HACKING: Mention Gtk3 dependency.

9 months agohello-c-gnome3: Add a simpler "hello world" program.
Bruno Haible [Wed, 18 Dec 2024 10:14:29 +0000 (11:14 +0100)] 
hello-c-gnome3: Add a simpler "hello world" program.

* gettext-tools/examples/hello-c-gnome3/README: New file.
* gettext-tools/examples/hello-c-gnome3/hello2.c: New file, based on
gettext-tools/examples/hello-c-gnome3/hello.c.
* gettext-tools/examples/hello-c-gnome3/hello2.desktop.in.in: New file, based on
gettext-tools/examples/hello-c-gnome3/hello.desktop.in.in.
* gettext-tools/examples/hello-c-gnome3/hello2.gresource.xml: New file, based on
gettext-tools/examples/hello-c-gnome3/hello.gresource.xml.
* gettext-tools/examples/hello-c-gnome3/hello2.ui: Renamed from
gettext-tools/examples/hello-c-gnome3/hello.ui.
* gettext-tools/examples/hello-c-gnome3/hello2.gschema.xml: New file, based on
gettext-tools/examples/hello-c-gnome3/hello.gschema.xml.
* gettext-tools/examples/hello-c-gnome3/hello.c: Greatly simplified.
* gettext-tools/examples/hello-c-gnome3/hello.ui: Use an <object> element
instead of a <template> element.
* gettext-tools/examples/hello-c-gnome3/hello.gschema.xml: Remove file.
* gettext-tools/examples/hello-c-gnome3/Makefile.am (bin_PROGRAMS): Add hello2.
(hello-resources.c): Renamed from resources.c.
(hello2_SOURCES): New variable.
(hello2-resources.c): New target.
(desktop_DATA): Add hello2.desktop.
(hello2.desktop.in, hello2.desktop): New targets.
(BUILT_SOURCES, CLEANFILES, MAINTAINERCLEANFILES): Update.
(EXTRA_DIST): Remove hello.gschema.xml. Add hello2.desktop.in.in,
hello2.desktop.in, hello2.gresource.xml, hello2.ui, hello2.gschema.xml.
* gettext-tools/examples/hello-c-gnome3/po/POTFILES.in: Update.
* gettext-tools/examples/hello-c-gnome3/autoclean.sh: Update.
* gettext-tools/examples/Makefile.am (EXAMPLESFILES): Update.
* gettext-tools/examples/po/Makefile.am (POTFILES): Update.

9 months agohello-c-gnome3: Make more robust.
Bruno Haible [Wed, 18 Dec 2024 00:55:10 +0000 (01:55 +0100)] 
hello-c-gnome3: Make more robust.

* gettext-tools/examples/hello-c-gnome3/hello.c (hello_application_window_init):
Initialize label_id explicitly.

9 months agohello-c-gnome3: Fix "make distcheck".
Bruno Haible [Mon, 16 Dec 2024 21:18:45 +0000 (22:18 +0100)] 
hello-c-gnome3: Fix "make distcheck".

* gettext-tools/examples/hello-c-gnome3/Makefile.am (BUILT_SOURCES): Add
hello.desktop.
(gschemas.compiled): Make it work in VPATH builds.
(CLEANFILES): Remove resources.c. Don't mention hello.desktop twice.
(MAINTAINERCLEANFILES): Add resources.c.
* gettext-tools/examples/hello-c-gnome3/autoclean.sh: Remove also resources.c,
hello.desktop.in.

9 months agohello-c-gnome3: Avoid translator mistakes regarding markup (e.g. in de.po).
Bruno Haible [Mon, 16 Dec 2024 14:31:39 +0000 (15:31 +0100)] 
hello-c-gnome3: Avoid translator mistakes regarding markup (e.g. in de.po).

* gettext-tools/examples/hello-c-gnome3/hello.c (hello_application_window_init):
Move HTML markup outside of translatable strings.

9 months agohello-c-gnome3: Fix an error "Settings schema 'org.gnu.gettext.examples.hello' is...
Bruno Haible [Mon, 16 Dec 2024 13:58:07 +0000 (14:58 +0100)] 
hello-c-gnome3: Fix an error "Settings schema 'org.gnu.gettext.examples.hello' is not installed".

* gettext-tools/examples/hello-c-gnome3/configure.ac: Invoke
gl_BUILD_TO_HOST_LOCALEDIR, gl_BUILD_TO_HOST_PKGDATADIR.
* gettext-tools/examples/hello-c-gnome3/Makefile.am (DEFS): Define also
PKGDATADIR.
(pkgdata_DATA): New variable.
* gettext-tools/examples/hello-c-gnome3/hello.c (main): Add PKGDATADIR to the
GSETTINGS_SCHEMA_DIR value.

9 months agohello-c-gnome3: Exit when the window's close button is clicked.
Bruno Haible [Mon, 16 Dec 2024 12:49:38 +0000 (13:49 +0100)] 
hello-c-gnome3: Exit when the window's close button is clicked.

* gettext-tools/examples/hello-c-gnome3/hello.c
(hello_application_window_dispose): Remove function.
(hello_application_window_class_init): Don't overwrite the 'dispose' field.

9 months agoRename some examples.
Bruno Haible [Mon, 16 Dec 2024 10:48:10 +0000 (11:48 +0100)] 
Rename some examples.

* gettext-tools/examples/hello-c-gnome2: Renamed from
gettext-tools/examples/hello-c-gnome.
* gettext-tools/examples/hello-c++-gnome2: Renamed from
gettext-tools/examples/hello-c++-gnome.
* gettext-tools/examples/hello-objc-gnome2: Renamed from
gettext-tools/examples/hello-objc-gnome.
* gettext-tools/examples/Makefile.am (EXAMPLESFILES, EXAMPLESDIRS): Update.
* gettext-tools/examples/po/Makefile.am (POTFILES, SMALLPOTS,
SMALLPOFILES_FOR_lang): Update.
* gettext-tools/examples/README: Update.
* gettext-tools/examples/check-examples: Update.
* check-copyright-headers: Update.

9 months agoNew example 'hello-ruby'.
Bruno Haible [Mon, 16 Dec 2024 10:27:14 +0000 (11:27 +0100)] 
New example 'hello-ruby'.

* gettext-tools/examples/hello-ruby: New directory, based on
gettext-tools/examples/hello-php.
* gettext-tools/examples/Makefile.am (EXAMPLESFILES, EXAMPLESDIRS): Update.
* gettext-tools/examples/po/Makefile.am (POTFILES, SMALLPOTS,
SMALLPOFILES_FOR_lang): Update.
* gettext-tools/examples/README: Update.
* gettext-tools/examples/check-examples: Handle this directory as well.
* NEWS: Mention the new example.

9 months agoRuby: Add unit test for Ruby support.
Bruno Haible [Mon, 16 Dec 2024 19:07:38 +0000 (20:07 +0100)] 
Ruby: Add unit test for Ruby support.

* gettext-tools/tests/lang-ruby: New file.
* gettext-tools/tests/Makefile.am (TESTS): Add it.

9 months agodoc: Update list of dependencies.
Bruno Haible [Mon, 16 Dec 2024 19:38:30 +0000 (20:38 +0100)] 
doc: Update list of dependencies.

* gettext-tools/doc/lang-csharp.texi: Mention dotnet8 as alternative.
* gettext-tools/tests/lang-csharp: Likewise.
* gettext-tools/doc/lang-pascal.texi: Replace fpk with fpc.
* gettext-tools/tests/lang-pascal: Likewise.
* gettext-tools/doc/lang-wxwidgets.texi: Mention libwxgtk3.2-dev as alternative.
* gettext-tools/tests/lang-objc: Mention the gobjc package.
* gettext-tools/tests/lang-rst: Mention the fp-utils package.
* gettext-tools/tests/lang-vala: Mention valac as alternative.

9 months agoFix "make distcheck" failure (regression from "po: Rename Makefile.in.in to Makefile...
Bruno Haible [Mon, 16 Dec 2024 13:26:16 +0000 (14:26 +0100)] 
Fix "make distcheck" failure (regression from "po: Rename Makefile.in.in to Makefile.in.").

* gettext-runtime/po/Makefile.in (DISTFILES.common): Remove Makefile.in.

9 months agodoc: Update reference to lua-gettext package.
Bruno Haible [Sun, 15 Dec 2024 17:44:14 +0000 (18:44 +0100)] 
doc: Update reference to lua-gettext package.

* gettext-tools/doc/lang-lua.texi: Update lua-gettext installation instructions.
* HACKING: Update lua version requirements and lua-gettext installation
instructions.

9 months agointl-java: Fix a deprecation warning.
Bruno Haible [Thu, 12 Dec 2024 10:52:59 +0000 (11:52 +0100)] 
intl-java: Fix a deprecation warning.

* gettext-runtime/intl-java/gnu/gettext/GettextResource.java (ngettextnull): Use
Long.valueOf(n) instead of new Long(n).

9 months agolibtextstyle: Fix a gcc 13 -Wunused-result warning.
Bruno Haible [Thu, 12 Dec 2024 10:34:26 +0000 (11:34 +0100)] 
libtextstyle: Fix a gcc 13 -Wunused-result warning.

* libtextstyle/gnulib-local/lib/glib/gstrfuncs.c (g_strdup_vprintf): Don't
assume that vasprintf leaves the pointed-to variable unchanged when it fails.

9 months agolibxml: Fix a gcc 13 -Wformat-truncation warning.
Bruno Haible [Thu, 12 Dec 2024 10:24:11 +0000 (11:24 +0100)] 
libxml: Fix a gcc 13 -Wformat-truncation warning.

* gnulib-local/lib/libxml/uri.c (xmlURIEscape): Use a buffer of size 12, not 10.

9 months agoSilence -Wstack-protector warnings from Ubuntu gcc 13 and 14.
Bruno Haible [Thu, 12 Dec 2024 09:40:53 +0000 (10:40 +0100)] 
Silence -Wstack-protector warnings from Ubuntu gcc 13 and 14.

* m4/more-warnings.m4 (gt_MORE_WARNINGS): Silence -Wstack-protector also
for newer gcc versions.

9 months agodoc: Update list of dependencies.
Bruno Haible [Wed, 11 Dec 2024 20:31:35 +0000 (21:31 +0100)] 
doc: Update list of dependencies.

* DEPENDENCIES: Add libattr.
* HACKING: Stop mentioning XEmacs. Add note regarding GNU Smalltalk.
Mention dotnet as alternative to Mono. Mention wxgtk version 3.2.

9 months agopo: Rename Makefile.in.in to Makefile.in.
Bruno Haible [Tue, 10 Dec 2024 03:32:36 +0000 (04:32 +0100)] 
po: Rename Makefile.in.in to Makefile.in.

* gettext-runtime/po/Makefile.in: Renamed from gettext-runtime/po/Makefile.in.in.
(distclean): Don't remove Makefile.in.
* gettext-runtime/m4/po.m4 (AM_PO_SUBDIRS): Remove the 'po-directories'
commands.
* gettext-runtime/configure.ac: Update AC_OUTPUT invocation.
* gettext-runtime/Makefile.am (maintainer-update-po): Update.
* gettext-tools/configure.ac: Update AC_OUTPUT invocation.
* gettext-tools/Makefile.am (maintainer-update-po): Update.
* gettext-tools/doc/gettext.texi (Translator advice, po/Rules-*, configure.ac,
Files under Version Control, Maintainers for other Languages): Update.
* gettext-tools/doc/gettextize.texi: Update.
* gettext-tools/examples/README: Update.
* gettext-tools/examples/hello-c/autoclean.sh: Update.
* gettext-tools/examples/hello-c-gnome/autoclean.sh: Likewise.
* gettext-tools/examples/hello-c-gnome3/autoclean.sh: Likewise.
* gettext-tools/examples/hello-c++/autoclean.sh: Likewise.
* gettext-tools/examples/hello-c++-gnome/autoclean.sh: Likewise.
* gettext-tools/examples/hello-c++-kde/autoclean.sh: Likewise.
* gettext-tools/examples/hello-c++20/autoclean.sh: Likewise.
* gettext-tools/examples/hello-objc/autoclean.sh: Likewise.
* gettext-tools/examples/hello-objc-gnome/autoclean.sh: Likewise.
* gettext-tools/misc/autopoint.in: Update search for po directories.
* gettext-tools/misc/gettextize.in: Treat Makefile.in like Makefile.in.in
before. Treat Makefile.in.in as a removed file.
* gettext-tools/tests/autopoint-2: Prepare for bumping ARCHIVE_VERSION.
* gettext-tools/tests/autopoint-3: Likewise.
* autogen.sh: Copy po/Makefile.in instead of po/Makefile.in.in.
* Makefile.am (distcheck-hook): Update.
* NEWS: Mention the change.

9 months agobuild: Read LINGUAS at 'make' time, not at 'configure' time, part 2.
Bruno Haible [Tue, 10 Dec 2024 03:06:36 +0000 (04:06 +0100)] 
build: Read LINGUAS at 'make' time, not at 'configure' time, part 2.

* gettext-tools/examples/hello-csharp*/po/Makefile.am: Remove a comment.
* gettext-tools/examples/hello-tcl*/po/Makefile.am: Likewise.

9 months agoUse new approach for gnulib localizations.
Bruno Haible [Mon, 9 Dec 2024 03:59:35 +0000 (04:59 +0100)] 
Use new approach for gnulib localizations.

* gettext-runtime/po/POTFILES.in: Remove files that come from gnulib.
* gettext-tools/po/POTFILES.in: Likewise.
* gettext-runtime/src/envsubst.c (main): Invoke bindtextdomain for the domain
'gnulib'.
* gettext-runtime/src/gettext.c (main): Likewise.
* gettext-runtime/src/ngettext.c (main): Likewise.
* gettext-tools/src/cldr-plurals.c (main): Likewise.
* gettext-tools/src/hostname.c (main): Likewise.
* gettext-tools/src/msgattrib.c (main): Likewise.
* gettext-tools/src/msgcat.c (main): Likewise.
* gettext-tools/src/msgcmp.c (main): Likewise.
* gettext-tools/src/msgcomm.c (main): Likewise.
* gettext-tools/src/msgconv.c (main): Likewise.
* gettext-tools/src/msgen.c (main): Likewise.
* gettext-tools/src/msgexec.c (main): Likewise.
* gettext-tools/src/msgfilter.c (main): Likewise.
* gettext-tools/src/msgfmt.c (main): Likewise.
* gettext-tools/src/msggrep.c (main): Likewise.
* gettext-tools/src/msginit.c (main): Likewise.
* gettext-tools/src/msgmerge.c (main): Likewise.
* gettext-tools/src/msgunfmt.c (main): Likewise.
* gettext-tools/src/msguniq.c (main): Likewise.
* gettext-tools/src/recode-sr-latin.c (main): Likewise.
* gettext-tools/src/urlget.c (main): Likewise.
* gettext-tools/src/xgettext.c (main): Likewise.

9 months agoUpdate after gnulib changed.
Bruno Haible [Sun, 8 Dec 2024 17:46:45 +0000 (18:46 +0100)] 
Update after gnulib changed.

* gettext-tools/src/Makefile.am (DEFS): Remove definition of BISON_LOCALEDIR,
now present in config.h.

9 months agoUpdate to the newest gnulib.
Bruno Haible [Sun, 8 Dec 2024 17:46:26 +0000 (18:46 +0100)] 
Update to the newest gnulib.

9 months agobuild: Include the Rules-* files at 'make' time, not at 'configure' time.
Bruno Haible [Sat, 7 Dec 2024 09:50:58 +0000 (10:50 +0100)] 
build: Include the Rules-* files at 'make' time, not at 'configure' time.

* gettext-runtime/m4/po.m4 (AM_PO_SUBDIRS): Don't splice in the Rules-* files
here.
* gettext-runtime/po/Makefile.in.in: Collect and include the Rules-* files
explicitly.

9 months agopo: Support more than 3 Rules-* extensions.
Bruno Haible [Sat, 7 Dec 2024 08:43:48 +0000 (09:43 +0100)] 
po: Support more than 3 Rules-* extensions.

* gettext-runtime/po/Makefile.in.in (DISTFILES.common): Add placeholders for
extensions 4..6.
(DISTFILES): Likewise.

9 months agobuild: Include Makevars at 'make' time, not at 'configure' time.
Bruno Haible [Sat, 7 Dec 2024 08:40:00 +0000 (09:40 +0100)] 
build: Include Makevars at 'make' time, not at 'configure' time.

* gettext-runtime/m4/po.m4 (AM_PO_SUBDIRS): Don't splice in Makevars here.
* gettext-runtime/po/Makefile.in.in: Include Makevars explicitly.

9 months agobuild: No more need to rebuild a Makefile after POTFILES.in or LINGUAS changed.
Bruno Haible [Fri, 6 Dec 2024 22:25:01 +0000 (23:25 +0100)] 
build: No more need to rebuild a Makefile after POTFILES.in or LINGUAS changed.

* gettext-runtime/m4/po.m4 (AM_PO_SUBDIRS): Don't set or substitute
POMAKEFILEDEPS.
(AM_POSTPROCESS_PO_MAKEFILE): Remove dependency from Makefile on LINGUAS.
* gettext-runtime/po/Makefile.in.in (Makefile): Remove dependency on
@POMAKEFILEDEPS@.

9 months agobuild: Read LINGUAS at 'make' time, not at 'configure' time.
Bruno Haible [Fri, 6 Dec 2024 20:35:08 +0000 (21:35 +0100)] 
build: Read LINGUAS at 'make' time, not at 'configure' time.

* gettext-runtime/m4/po.m4 (AM_PO_SUBDIRS): Move the obsolete ALL_LINGUAS check.
Define DESIRED_LINGUAS. Don't compute ALL_LINGUAS, POFILES, UPDATEPOFILES,
DUMMYPOFILES, GMOFILES, INST_LINGUAS, CATALOGS any more.
(AM_POSTPROCESS_PO_MAKEFILE): Don't compute and substitute ALL_LINGUAS, POFILES,
UPDATEPOFILES, DUMMYPOFILES, GMOFILES, PROPERTIESFILES, CLASSFILES, QMFILES,
MSGFILES, RESOURCESDLLFILES, INST_LINGUAS, CATALOGS, JAVACATALOGS, QTCATALOGS,
TCLCATALOGS, CSHARPCATALOGS any more. Don't add rules for Tcl and C# catalogs
any more.
* gettext-runtime/po/Makefile.in.in (ALL_LINGUAS, POFILES, GMOFILES,
UPDATEPOFILES, DUMMYPOFILES): Define with a computed value.
(DESIRED_LINGUAS): New macro.
(INST_LINGUAS, CATALOGS): Define with a computed value.
* gettext-tools/examples/po/Makefile.am (ALL_LINGUAS, POFILES, UPDATEPOFILES,
DUMMYPOFILES): Define with a computed value.
* gettext-tools/examples/hello-*/po/Makefile.am (ALL_LINGUAS, POFILES, GMOFILES,
UPDATEPOFILES, DUMMYPOFILES): Define with a computed value.
(DESIRED_LINGUAS): New macro.
(INST_LINGUAS, CATALOGS): Define with a computed value.
* gettext-tools/examples/hello-csharp*/po/Makefile.am (ALL_LINGUAS, POFILES,
UPDATEPOFILES, DUMMYPOFILES, RESOURCESDLLFILES): Define with a computed value.
Include .csharp-rules.
(DESIRED_LINGUAS): New macro.
(INST_LINGUAS, CATALOGS): Define with a computed value.
(DISTCLEANFILES): New variable.
* gettext-tools/examples/hello-tcl*/po/Makefile.am (ALL_LINGUAS, POFILES,
UPDATEPOFILES, DUMMYPOFILES, MSGFILES): Define with a computed value.
Include .tcl-rules.
(DESIRED_LINGUAS): New macro.
(INST_LINGUAS, CATALOGS): Define with a computed value.
(DISTCLEANFILES): New variable.

9 months agobuild: Read POTFILES.in at 'make' time, not at 'configure' time.
Bruno Haible [Fri, 6 Dec 2024 10:37:04 +0000 (11:37 +0100)] 
build: Read POTFILES.in at 'make' time, not at 'configure' time.

* gettext-runtime/m4/po.m4 (AM_PO_SUBDIRS): Bump GETTEXT_MACRO_VERSION to 0.24.
Don't create POTFILES any more.
(AM_POSTPROCESS_PO_MAKEFILE): Don't substitute POTFILES_DEPS any more.
* gettext-runtime/po/Makefile.in.in (GETTEXT_MACRO_VERSION): Bump to 0.24.
Mention 'make' requirements.
(POTFILES, POTFILES_DEPS): Define with a computed value.
($(DOMAIN).pot-update): Depend on POTFILES_DEPS, not POTFILES.
(distclean): Don't remove POTFILES any more.
* gettext-tools/examples/README: Mention 'make' requirements.
* gettext-tools/examples/po/Makefile.am (POTFILES_DEPS): Define with a computed
value.
* gettext-tools/examples/hello-*/po/Makefile.am (POTFILES_DEPS): Likewise.

9 months agoexamples: hello-python: Make it work with Python 3.
Bruno Haible [Fri, 6 Dec 2024 10:48:36 +0000 (11:48 +0100)] 
examples: hello-python: Make it work with Python 3.

* gettext-tools/examples/hello-python/hello.py.in: Add parenthese around print's
arguments.

9 months agobuild: Remove left-overs from remove-potcdate.sin.
Bruno Haible [Fri, 6 Dec 2024 08:31:47 +0000 (09:31 +0100)] 
build: Remove left-overs from remove-potcdate.sin.

* gettext-runtime/po/Makefile.in.in (.SUFFIXES): Remove '.sed'.
* gettext-tools/examples/po/Makefile.am (.SUFFIXES): Remove '.sed' and '.sin'.
(.sin.sed): Remove rule.
* gettext-tools/examples/hello-*/po/Makefile.am: Likewise.

10 months agointl: Fix a gcc 14 -Wmissing-variable-declarations warning.
Bruno Haible [Wed, 4 Dec 2024 08:26:15 +0000 (09:26 +0100)] 
intl: Fix a gcc 14 -Wmissing-variable-declarations warning.

* gettext-runtime/intl/gettextP.h (_nl_state_lock): New declaration.
* gettext-runtime/intl/bindtextdom.c (_nl_state_lock): Remove declaration.
* gettext-runtime/intl/textdomain.c (_nl_state_lock): Remove declaration.

10 months agoRefactor: Fix some gcc 14 -Wshadow warnings.
Bruno Haible [Wed, 4 Dec 2024 08:09:23 +0000 (09:09 +0100)] 
Refactor: Fix some gcc 14 -Wshadow warnings.

* gettext-tools/src/x-c.c (phase5_get): Rename some local variables.
* gettext-tools/src/x-php.c (phase4_get): Likewise.

10 months agoRefactor: Use 'const' in a few more places.
Bruno Haible [Tue, 3 Dec 2024 17:19:15 +0000 (18:19 +0100)] 
Refactor: Use 'const' in a few more places.

* gnulib-local/lib/mem-hash-map.h (hash_find_entry): Mark htab as a 'const' pointer.
* gnulib-local/lib/mem-hash-map.c (lookup, hash_find_entry): Likewise.
* gettext-tools/src/message.h (message_list_search): Mark mlp as a 'const' pointer.
* gettext-tools/src/message.c (message_list_search): Likewise.
* gettext-tools/src/msgl-ascii.h (is_ascii_string_list): Mark slp as a 'const' pointer.
(is_ascii_message): Mark mp as a 'const' pointer.
(is_ascii_message_list): Mark mlp as a 'const' pointer.
(is_ascii_msgdomain_list): Mark mdlp as a 'const' pointer.
* gettext-tools/src/msgl-ascii.c (is_ascii_string_list): Mark slp as a 'const' pointer.
(is_ascii_message): Mark mp as a 'const' pointer.
(is_ascii_message_list): Mark mlp as a 'const' pointer.
(is_ascii_msgdomain_list): Mark mdlp as a 'const' pointer.
* gettext-tools/src/msgl-ofn.h (message_has_filenames_with_spaces): Mark mp as a 'const' pointer.
(message_list_has_filenames_with_spaces): Mark mlp as a 'const' pointer.
(msgdomain_list_has_filenames_with_spaces): Mark mdlp as a 'const' pointer.
* gettext-tools/src/msgl-ofn.c (message_has_filenames_with_spaces): Mark mp as a 'const' pointer.
(message_list_has_filenames_with_spaces): Mark mlp as a 'const' pointer.
(msgdomain_list_has_filenames_with_spaces): Mark mdlp as a 'const' pointer.
* gettext-tools/src/msgl-check.h (check_message_list): Mark mlp as a 'const' pointer.
* gettext-tools/src/msgl-check.c (check_plural, check_message_list): Likewise.

10 months agoUpdate packaging instructions.
Bruno Haible [Tue, 3 Dec 2024 13:46:32 +0000 (14:46 +0100)] 
Update packaging instructions.

* PACKAGING: Update file list. Update C# explanations.

10 months agoUse a warranty disclaimer in all-permissive license notices.
Bruno Haible [Mon, 2 Dec 2024 21:20:01 +0000 (22:20 +0100)] 
Use a warranty disclaimer in all-permissive license notices.

* gnulib-local/m4/*.m4: Update.
* libtextstyle/gnulib-local/m4/*.m4: Update.
* gettext-runtime/m4/*.m4: Update.
* gettext-tools/m4/*.m4: Update.
* m4/woe32-dll.m4: Update.

10 months agotests: Add lang-c++26 test.
Bruno Haible [Mon, 2 Dec 2024 11:10:43 +0000 (12:10 +0100)] 
tests: Add lang-c++26 test.

* gettext-tools/tests/lang-c++26: New file, based on
gettext-tools/tests/lang-c++20.
* gettext-tools/tests/Makefile.am (TESTS): Add it.

10 months agotests: Fix lang-c++20 failure with g++ >= 14 or clang++ >= 19.
Bruno Haible [Mon, 2 Dec 2024 11:09:40 +0000 (12:09 +0100)] 
tests: Fix lang-c++20 failure with g++ >= 14 or clang++ >= 19.

* gettext-tools/tests/lang-c++20: Support newer C++ versions. Try option
-std=gnu++26, necessary for newer C++ versions.

10 months agoexamples: Update hello-c++20 to work with g++ >= 14 and clang++ >= 19.
Bruno Haible [Mon, 2 Dec 2024 11:07:49 +0000 (12:07 +0100)] 
examples: Update hello-c++20 to work with g++ >= 14 and clang++ >= 19.

* gettext-tools/examples/hello-c++20/configure.ac: Support newer C++ versions.
Try option -std=gnu++26, necessary for newer C++ versions.
* gettext-tools/examples/hello-c++20/hello.cc (main): Use different code in
newer C++.

10 months agoFix compilation error with libxml2 >= 2.12.0 and gcc >= 14.
Bruno Haible [Sun, 1 Dec 2024 18:35:51 +0000 (19:35 +0100)] 
Fix compilation error with libxml2 >= 2.12.0 and gcc >= 14.

Reported by Sam James <sam@gentoo.org>
at <https://savannah.gnu.org/bugs/?66506>.

* gettext-tools/src/its.c: Include <libxml/xmlversion.h>.
(structured_error): Adapt to API change.

10 months agoUpdate NEWS.
Bruno Haible [Sun, 1 Dec 2024 13:55:30 +0000 (14:55 +0100)] 
Update NEWS.

* NEWS: Move an entry.

10 months agoRelease 0.23 v0.23
Bruno Haible [Sun, 1 Dec 2024 11:34:55 +0000 (12:34 +0100)] 
Release 0.23

10 months agoexamples: Use infrastructure from gettext version 0.23.
Bruno Haible [Sun, 1 Dec 2024 11:31:10 +0000 (12:31 +0100)] 
examples: Use infrastructure from gettext version 0.23.

* gettext-tools/examples/hello-*/configure.ac: Use AM_GNU_GETTEXT_VERSION with
version 0.23.
* gettext-tools/examples/hello-c++-kde/configure.in.in: Likewise.
* gettext-tools/examples/hello-*/m4/Makefile.am: Update .m4 file list.

10 months agoUpdate translations from TP.
Bruno Haible [Sun, 1 Dec 2024 09:46:36 +0000 (10:46 +0100)] 
Update translations from TP.

* gettext-runtime/po/*.po: Update from TP.
* gettext-tools/po/*.po: Update from TP.
* gettext-tools/po/LINGUAS: Add ka.
* gettext-tools/examples/po/*.po: Update from TP.

10 months agoPrepare for 0.23 release.
Bruno Haible [Sun, 1 Dec 2024 09:39:52 +0000 (10:39 +0100)] 
Prepare for 0.23 release.

* gettext-runtime/doc/matrix.texi: Update from TP.
* gettext-runtime/doc/nls.texi (STATUS): Update.
* gettext-runtime/po/Makefile.in.in: Bump Origin version and
GETTEXT_MACRO_VERSION.
* gettext-runtime/m4/po.m4 (AM_PO_SUBDIRS): Bump GETTEXT_MACRO_VERSION
accordingly.
* gettext-runtime/m4/gettext.m4: Update comments.
* gettext-runtime/intl/libgnuintl.in.h (LIBINTL_VERSION): Bump.
* libtextstyle/version.sh: Update VERSION_NUMBER, RELEASE_DATE.
* gettext-tools/libgettextpo/gettext-po.in.h (LIBGETTEXTPO_VERSION): Bump.
* gettext-runtime/intl/Makefile.am (LTV_*): Bump to 12:1:4.
* libtextstyle/lib/Makefile.am (LTV_*): Bump to 2:2:2.
* gettext-tools/libgettextpo/Makefile.am (LTV_*): Bump to 5:11:5.
* gettext-runtime/src/envsubst.c (main): Update copyright year in --version
output.
* gettext-runtime/src/gettext.c (main): Likewise.
* gettext-runtime/src/gettext.sh.in (func_version): Likewise.
* gettext-runtime/src/ngettext.c (main): Likewise.
* gettext-tools/src/cldr-plurals.c (main): Likewise.
* gettext-tools/src/hostname.c (main): Likewise.
* gettext-tools/src/msgattrib.c (main): Likewise.
* gettext-tools/src/msgcat.c (main): Likewise.
* gettext-tools/src/msgcmp.c (main): Likewise.
* gettext-tools/src/msgcomm.c (main): Likewise.
* gettext-tools/src/msgconv.c (main): Likewise.
* gettext-tools/src/msgen.c (main): Likewise.
* gettext-tools/src/msgexec.c (main): Likewise.
* gettext-tools/src/msgfilter.c (main): Likewise.
* gettext-tools/src/msgfmt.c (main): Likewise.
* gettext-tools/src/msggrep.c (main): Likewise.
* gettext-tools/src/msginit.c (main): Likewise.
* gettext-tools/src/msgmerge.c (main): Likewise.
* gettext-tools/src/msgunfmt.c (main): Likewise.
* gettext-tools/src/msguniq.c (main): Likewise.
* gettext-tools/src/recode-sr-latin.c (main): Likewise.
* gettext-tools/src/urlget.c (main): Likewise.
* gettext-tools/src/xgettext.c (main): Likewise.
* gettext-tools/misc/convert-archive.in (func_version): Likewise.
* gettext-tools/misc/gettextize.in (func_version): Likewise.
* gettext-tools/misc/autopoint.in: Likewise. Accept version 0.23.
* gettext-tools/configure.ac (ARCHIVE_VERSION): Bump to 0.23.
* NEWS, gettext-runtime/NEWS: Update.

10 months agoUpdate after gnulib changed.
Bruno Haible [Sun, 1 Dec 2024 07:54:06 +0000 (08:54 +0100)] 
Update after gnulib changed.

10 months agoUpdate to the newest gnulib.
Bruno Haible [Sun, 1 Dec 2024 07:50:00 +0000 (08:50 +0100)] 
Update to the newest gnulib.

10 months agoxgettext: C: Revisit "hexadecimal escape sequence out of range" warnings.
Bruno Haible [Sun, 1 Dec 2024 07:40:52 +0000 (08:40 +0100)] 
xgettext: C: Revisit "hexadecimal escape sequence out of range" warnings.

Reported by Vaclav Slavik <vaclav@slavik.io>
at <https://savannah.gnu.org/bugs/?65053>.

* gettext-tools/src/x-c.c (get_string_element): Add context argument. Don't warn
for character literals. For wide strings, use a different warning and complain
about "out of range" only for values >= 0x110000.
(phase5_get): Distinguish normal string literals and wide string literals.

10 months agointl: Fix lang-c++ failure on MSVC, caused by last commit.
Bruno Haible [Sat, 30 Nov 2024 08:41:21 +0000 (09:41 +0100)] 
intl: Fix lang-c++ failure on MSVC, caused by last commit.

* gettext-runtime/intl/libgnuintl.in.h (_INTL_HAS_FORCE_INLINE,
_INTL_FORCE_INLINE): New macros.
(_INTL_REDIRECT_INLINE): Don't define in C++ mode when _INTL_HAS_FORCE_INLINE
is not set.

10 months agointl: Avoid conflict between libintl.h and some C++ header files.
Bruno Haible [Thu, 28 Nov 2024 19:22:47 +0000 (20:22 +0100)] 
intl: Avoid conflict between libintl.h and some C++ header files.

Reported Pierre Ossman <ossman@cendio.se>
at <https://savannah.gnu.org/bugs/?64006>.

* gettext-runtime/intl/libgnuintl.in.h (*printf, newlocale, duplocale,
freelocale, setlocale): Use _INTL_REDIRECT_INLINE or _INTL_ASM as alternatives
to _INTL_REDIRECT_MACROS, avoiding conflicts with inline functions in mingw
and MSVC <stdio.h>.

10 months agointl: Avoid possible error from libintl.h in C++ mode.
Bruno Haible [Thu, 28 Nov 2024 12:56:16 +0000 (13:56 +0100)] 
intl: Avoid possible error from libintl.h in C++ mode.

* gettext-runtime/intl/libgnuintl.in.h (gettext, dgettext, dcgettext, ngettext,
dngettext, dcngettext, textdomain, bindtextdomain, wbindtextdomain,
bind_textdomain_codeset): In the _INTL_REDIRECT_INLINE redirects, in C++ mode,
avoid a compilation error if the function is globally declared in some .h file.

10 months agodoc: Avoid @table, as it cannot be used to produce decent-looking output.
Bruno Haible [Wed, 27 Nov 2024 21:22:41 +0000 (22:22 +0100)] 
doc: Avoid @table, as it cannot be used to produce decent-looking output.

10 months agodoc: Mention C.UTF-8 locale.
Bruno Haible [Wed, 27 Nov 2024 11:56:07 +0000 (12:56 +0100)] 
doc: Mention C.UTF-8 locale.

Reported by nl6720 at <https://savannah.gnu.org/bugs/?62815>.

* gettext-tools/doc/gettext.texi (Locale Names): Mention the C.UTF-8 locale.

10 months agoAdd installation information for the tarball users and from a git checkout.
Bruno Haible [Wed, 27 Nov 2024 10:40:31 +0000 (11:40 +0100)] 
Add installation information for the tarball users and from a git checkout.

We want to have an INSTALL file that contains installation instructions for
the tarball users. These instructions are necessarily package specific,
because they need to list the prerequisites or reference the DEPENDENCIES
file.

Additionally, many people who are not aware that tarballs are the primary
means for source code distribution of GNU packages check out the git repository
and then expect to see instructions for installing from that git checkout
in the INSTALL file. See e.g. <https://savannah.gnu.org/bugs/?62196>.

Unfortunately, both Automake (with strictness option = 'gnu') and 'bootstrap'
both contain code to copy the generic (not package specific) installation
instructions to the file 'INSTALL'. This is not what we want, so we disable
it. (Other packages handle this issue by putting part of the installation
instructions into the README file. This is suboptimal, because this is not
what the README file is for.)

* autogen.sh: Import INSTALL.generic from gnulib.
* INSTALL: Entirely rewritten, based on poke/INSTALL.
* Makefile.am (EXTRA_DIST): Add INSTALL.generic.
* libtextstyle/autogen.sh: Import INSTALL.generic from gnulib.
* libtextstyle/INSTALL: Entirely rewritten, based on poke/INSTALL.
* libtextstyle/Makefile.am (EXTRA_DIST): Add INSTALL.generic.

10 months agolang-perl-*: Avoid FAIL on macOS.
Bruno Haible [Tue, 26 Nov 2024 23:57:00 +0000 (00:57 +0100)] 
lang-perl-*: Avoid FAIL on macOS.

Reported by Hanspeter Niederstrasser <nieder@users.sourceforge.net>
at <https://savannah.gnu.org/bugs/?66461>.

* gettext-tools/tests/lang-perl-1: On macOS, don't test the ISO-8859-1 locale.
* gettext-tools/tests/lang-perl-2: Likewise.

10 months agoFix compilation error when pgettext is used.
Bruno Haible [Sun, 24 Nov 2024 14:16:06 +0000 (15:16 +0100)] 
Fix compilation error when pgettext is used.

Reported by Friedrich Beckmann <friedrich.beckmann@posteo.de> in
<https://lists.gnu.org/archive/html/bug-gnulib/2024-11/msg00189.html>.

* gnulib-local/lib/gettext.h: Include <locale.h>.

10 months agoUpgrade to libtool 2.5.4.
Bruno Haible [Fri, 22 Nov 2024 18:20:39 +0000 (19:20 +0100)] 
Upgrade to libtool 2.5.4.

* m4/libtool.m4: Update from libtool-2.5.4.
* m4/ltversion.m4: Likewise.
* build-aux/ltmain.sh: Likewise.

10 months agopo: Fix build failure with parallel make.
Bruno Haible [Tue, 19 Nov 2024 19:07:32 +0000 (20:07 +0100)] 
po: Fix build failure with parallel make.

Reported by Lubomir Rintel <lkundrak@v3.sk> in
<https://lists.gnu.org/archive/html/bug-gettext/2022-06/msg00022.html>.

* gettext-runtime/po/Makefile.in.in (.NOTPARALLEL): Add this special target.

10 months agodoc: Improve typography in man pages.
Bruno Haible [Tue, 19 Nov 2024 18:18:44 +0000 (19:18 +0100)] 
doc: Improve typography in man pages.

Patch by наб <nabijaczleweli@nabijaczleweli.xyz> in
<https://lists.gnu.org/archive/html/bug-gettext/2022-01/msg00019.html>.

* gettext-runtime/man/bind_textdomain_codeset.3.in: After "e.g." or "i.e.",
use \&.

10 months agodoc: Use GNU coding style in man pages.
Bruno Haible [Tue, 19 Nov 2024 18:11:18 +0000 (19:11 +0100)] 
doc: Use GNU coding style in man pages.

Reported by наб <nabijaczleweli@nabijaczleweli.xyz> in
<https://lists.gnu.org/archive/html/bug-gettext/2022-01/msg00019.html>.

* gettext-runtime/man/gettext.3.in: In C code snippets, put a space before '('
and after ','.
* gettext-runtime/man/bind_textdomain_codeset.3.in: Likewise.