1737 Commits

Author SHA1 Message Date
Bruno Haible
44aa09c87a Update translations from TP.
* gettext-runtime/po/*.po: Update from TP.
* gettext-tools/po/*.po: Update from TP.
* gettext-tools/examples/po/*.po: Update from TP.
2025-05-02 19:34:22 +02:00
Bruno Haible
faa267261d Prepare for 0.24.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-tools/misc/autopoint.in: Likewise. Accept version 0.24.1.
* gettext-tools/configure.ac (ARCHIVE_VERSION): Bump to 0.24.1.
2025-05-02 19:33:43 +02:00
Bruno Haible
2bcec7b8c2 intl: Export libintl_{new,dup,free}locale from libintl.so on OpenBSD.
Reported by Christian Weisgerber <naddy@mips.inka.de>.

* gnulib-local/lib/getlocalename_l-unsafe.c.diff: New file.
* gnulib-local/Makefile.am (EXTRA_DIST): Add it.
* gettext-runtime/intl/configure.ac (rpl_newlocale, rpl_duplocale,
rpl_freelocale): Redirect to symbols prefixed with 'libintl_', not '_libintl_'.
* gettext-runtime/intl/Makefile.am (BUILT_SOURCES): Add libgnuintl.h.
2025-04-24 22:32:27 +02:00
Bruno Haible
ca056729b0 Update after gnulib changed.
* gettext-runtime/intl/setlocale.c: Include setlocale-fixes.h instead of
setlocale-messages.h.
(setlocale_unixlike) [__ANDROID__]: Use setlocale_fixed instead of setlocale.
(setlocale_improved): On Android, use setlocale_fixed_null instead of setlocale.
2025-04-24 22:32:27 +02:00
Bruno Haible
b2941724c4 Update translations from TP.
* gettext-runtime/po/*.po: Update from TP.
* gettext-tools/po/*.po: Update from TP.
* gettext-tools/examples/po/*.po: Update from TP.
2025-02-25 14:30:02 +01:00
Bruno Haible
0c099d29a1 Prepare for 0.24 release.
* gettext-runtime/doc/matrix.texi: Update from TP.
* gettext-runtime/doc/nls.texi (STATUS): Update.
* gettext-runtime/m4/gettext.m4: Update comments.
* gettext-runtime/m4/nls.m4: Likewise.
* gettext-runtime/m4/progtest.m4: Likewise.
* 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:3:4.
* libtextstyle/lib/Makefile.am (LTV_*): Bump to 2:4:2.
* gettext-tools/libgettextpo/Makefile.am (LTV_*): Bump to 5:13: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.24.
* gettext-tools/configure.ac (ARCHIVE_VERSION): Bump to 0.24.
* NEWS: Update.
2025-02-25 11:04:01 +01:00
Bruno Haible
748c4bfe2f Update after gnulib changed.
* gettext-runtime/intl/setlocale.c: Include setlocale-messages.h.
(lc_messages_name): Remove variable.
2025-02-24 20:32:32 +01:00
Bruno Haible
72171458db intl: Update info about Galician and Tamil.
* gettext-runtime/intl/setlocale.c (locales_with_principal_territory): Galician
is mostly spoken in Spain, not Portugal. Tamil is mostly spoken in India, not
Sri Lanka.
2025-02-13 06:12:33 +01:00
Bruno Haible
6954290401 intl: Fix undefined behaviour.
Found using clang's undefined-behaviour sanitizer:
CC="clang -fsanitize=undefined -fno-sanitize-recover=undefined".
It reported errors
dcigettext.c:1219:25: runtime error: applying non-zero offset 8 to null pointer
because the code was computing
    outbuf = freemem + sizeof (size_t);
where freemem == NULL.

* gettext-runtime/intl/dcigettext.c (_nl_find_msg): Initialize outbuf only after
having verified that freemem_size >= sizeof (size_t).
2025-01-29 12:30:02 +01:00
Bruno Haible
19bddbc2cf build: Update package version handling after gnulib changed.
* configure.ac: Drop postprocessing of git-version-gen output.
* gettext-runtime/configure.ac: Likewise.
* gettext-runtime/intl/configure.ac: Likewise.
* gettext-tools/configure.ac: Likewise.
* gettext-tools/examples/configure.ac: Likewise.
2025-01-28 10:38:13 +01:00
Bruno Haible
bf1ef325e3 build: Update package version handling after gnulib changed.
* configure.ac: Invoke AC_INIT with arguments. Invoke gl_INIT_PACKAGE_VERSION
instead of gl_INIT_PACKAGE.
* gettext-runtime/configure.ac: Likewise.
* gettext-runtime/intl/configure.ac: Likewise.
* gettext-tools/configure.ac: Likewise.
* gettext-tools/examples/configure.ac: Likewise.
* libtextstyle/configure.ac: Likewise.
2025-01-25 06:49:42 +01:00
Bruno Haible
c39e75be33 Temporarily revert "po: Rename Makefile.in.in to Makefile.in." 2025-01-24 00:12:57 +01:00
Bruno Haible
53e5da8c8d 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.
2025-01-23 10:13:43 +01:00
Bruno Haible
a152589376 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.
2025-01-02 14:12:12 +01:00
Bruno Haible
e87859e07b 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.
2024-12-31 16:48:02 +01:00
Bruno Haible
588c9adbca 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().
2024-12-24 18:36:19 +01:00
Bruno Haible
37bb258d96 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.
2024-12-24 18:29:36 +01:00
Bruno Haible
1959e81b19 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.
2024-12-20 15:56:48 +01:00
Bruno Haible
beede5f347 Fix "make distcheck" failure (regression from "po: Rename Makefile.in.in to Makefile.in.").
* gettext-runtime/po/Makefile.in (DISTFILES.common): Remove Makefile.in.
2024-12-16 14:27:03 +01:00
Bruno Haible
f89793467c intl-java: Fix a deprecation warning.
* gettext-runtime/intl-java/gnu/gettext/GettextResource.java (ngettextnull): Use
Long.valueOf(n) instead of new Long(n).
2024-12-12 13:32:59 +01:00
Bruno Haible
6927dbf2c1 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.
2024-12-10 04:32:36 +01:00
Bruno Haible
adce2d596f 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.
2024-12-09 04:59:35 +01:00
Bruno Haible
093af64345 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.
2024-12-07 10:50:58 +01:00
Bruno Haible
8c4f925b61 po: Support more than 3 Rules-* extensions.
* gettext-runtime/po/Makefile.in.in (DISTFILES.common): Add placeholders for
extensions 4..6.
(DISTFILES): Likewise.
2024-12-07 09:43:48 +01:00
Bruno Haible
5915bc314f 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.
2024-12-07 09:40:00 +01:00
Bruno Haible
165d7d49bd 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@.
2024-12-07 05:49:45 +01:00
Bruno Haible
1e3ae8b251 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.
2024-12-07 05:49:37 +01:00
Bruno Haible
93f1239f9d 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.
2024-12-06 13:02:17 +01:00
Bruno Haible
bab8aeae02 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.
2024-12-06 09:31:47 +01:00
Bruno Haible
87d4ab056c 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.
2024-12-04 09:26:15 +01:00
Bruno Haible
fa57e052cf 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.
2024-12-02 22:20:01 +01:00
Bruno Haible
7763a32cae 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.
2024-12-01 12:30:14 +01:00
Bruno Haible
05762df5d7 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.
2024-12-01 10:39:52 +01:00
Bruno Haible
b181b91a32 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.
2024-11-30 09:41:21 +01:00
Bruno Haible
e4a1c66c1d 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>.
2024-11-28 20:22:47 +01:00
Bruno Haible
e822f894b4 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.
2024-11-28 14:02:12 +01:00
Bruno Haible
62adf9f077 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.
2024-11-19 20:07:32 +01:00
Bruno Haible
b598250a70 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 \&.
2024-11-19 19:18:44 +01:00
Bruno Haible
3c46bcf105 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.
2024-11-19 19:11:18 +01:00
Bruno Haible
2756efc539 Upgrade from GFDL 1.2 to GFDL 1.3.
* gettext-runtime/libasprintf/fdl.texi: Update from gnulib/doc/fdl-1.3.texi.
* gettext-tools/doc/fdl.texi: Likewise.
* gettext-runtime/libasprintf/autosprintf.texi: Update reference.
* gettext-tools/doc/gettext.texi: Likewise.
2024-11-07 10:16:36 +01:00
Bruno Haible
f58d3e697e Update the GPL and LGPL text.
* gettext-runtime/intl/COPYING.LIB: Update from
<https://ftp.gnu.org/gnu/Licenses/lgpl-2.1.txt>.
* gettext-runtime/libasprintf/COPYING.LIB: Likewise.
* gettext-runtime/libasprintf/gpl.texi: Update from gnulib/doc/gpl-2.0.texi.
* gettext-runtime/libasprintf/lgpl.texi: Update from gnulib/doc/lgpl-2.1.texi.
* gettext-tools/doc/gpl.texi: Update from gnulib/doc/gpl-2.0.texi.
* gettext-tools/doc/lgpl.texi: Update from gnulib/doc/lgpl-2.1.texi.
2024-11-07 09:51:44 +01:00
Bruno Haible
b147f89713 doc: Clarify locale names and language names.
Reported by Arfrever <arfrever.fta@gmail.com>
at <https://savannah.gnu.org/bugs/?59062>.

* gettext-runtime/doc/nls.texi (INSTALL Matters, Using This Package): Mention
ll_CC as alterntive to ll, and that ll can be a 3-letter code.
* gettext-tools/doc/gettext.texi (Locale Names, Header Entry, Installers):
Likewise.
2024-10-17 23:53:17 +02:00
Bruno Haible
10eafd9e5d intl: Fix a memory leak.
* gettext-runtime/intl/finddomain.c (_nl_find_domain): If there was an alias and
_nl_explode_name or _nl_make_l10nflist fails, free the allocated memory. Avoid
'goto'.
2024-10-15 21:52:30 +02:00
Bruno Haible
32d202b7f4 po: Add a copyright and license notice to the Rules-quot auxiliary files.
Reported by Joël Krähemann <jkraehemann@gmail.com>
at <https://savannah.gnu.org/bugs/?57973>.

* gettext-runtime/po/quot.sed: Add a copyright and all-permissive license
notice.
* gettext-runtime/po/boldquot.sed: Likewise.
* gettext-runtime/po/en@quot.header: Likewise.
* gettext-runtime/po/en@boldquot.header: Likewise.
* gettext-runtime/po/insert-header.sed: Use an all-permissive license notice.
* gettext-runtime/po/Rules-quot: Likewise.
(.insert-header.po-update-en): After running the *.insert-header script,
eliminate lines that start with %%.
2024-10-14 01:41:49 +02:00
Bruno Haible
9a4589466b po: Assume a 'sed' that supports '#' for introducing comments.
This is standardized in POSIX since POSIX:2001 (= SUSv3).
It is supported on all platforms that I could test:
GNU, macOS 10.5, FreeBSD 5, NetBSD 7, OpenBSD 6, AIX 7, Solaris 10 and 11,
busybox (2019).

* gettext-runtime/po/remove-potcdate.sed: Renamed from
gettext-runtime/po/remove-potcdate.sin.
* gettext-runtime/po/Makefile.in.in (DISTFILES.common): Update.
(.SUFFIXES): Remove .sin.
(.sin.sed): Remove rule.
($(DOMAIN).pot-update): Use remove-potcdate.sed in $(srcdir).
(mostlyclean): Don't remove remove-potcdate.sed.
* autogen.sh: Update.
* Makefile.am (distcheck-hook): Update.
* gettext-tools/examples/po/remove-potcdate.sed: Renamed from
gettext-tools/examples/po/remove-potcdate.sin.
* gettext-tools/examples/po/Makefile.am ($(DOMAIN).pot-update): Use
remove-potcdate.sed in $(srcdir).
(MOSTLYCLEANFILES): Don't add remove-potcdate.sed.
(EXTRA_DIST): Update.
* gettext-tools/examples/hello-*/po/Makefile.am ($(DOMAIN).pot-update): Use
remove-potcdate.sed in $(srcdir).
(MOSTLYCLEANFILES): Don't add remove-potcdate.sed.
(EXTRA_DIST): Update.
* gettext-tools/examples/hello-objc-gnustep/po/GNUmakefile
($(DOMAIN).pot-update): Remove dependency on remove-potcdate.sed.
(internal-clean): Remove rule.
* gettext-tools/examples/hello-*/autogen.sh: Update.
* gettext-tools/examples/hello-*/autoclean.sh: Update.
2024-10-14 00:53:56 +02:00
Bruno Haible
fe3b543701 po: Assume a 'sed' that supports '#' for introducing comments.
This is standardized in POSIX since POSIX:2001 (= SUSv3).
It is supported on all platforms that I could test:
GNU, macOS 10.5, FreeBSD 5, NetBSD 7, OpenBSD 6, AIX 7, Solaris 10 and 11,
busybox (2019).

* gettext-runtime/po/insert-header.sed: Renamed from
gettext-runtime/po/insert-header.sin.
* gettext-runtime/po/Rules-quot (DISTFILES.common.extra1): Update.
(en@quot.insert-header, en@boldquot.insert-header): Use insert-header.sed
instead of insert-header.sin.
* autogen.sh: Update.
* Makefile.am (distcheck-hook): Update.
* gettext-tools/examples/hello-*/autogen.sh: Update.
* gettext-tools/doc/gettext.texi (po/LINGUAS): Update.
2024-10-14 00:40:05 +02:00
Bruno Haible
8329be8d9f C#: Add support for dotnet.
Reported by Michele Locati <mlocati@gmail.com>
at <https://savannah.gnu.org/bugs/index.php?66292>.

* DEPENDENCIES: Mention dotnet as an alternative to Mono.
* NEWS: Mention the change.
* PACKAGING: Mention the new file $prefix/lib/gettext/GNU.Gettext.dll.
* gettext-runtime/intl-csharp/Makefile.am (pkglibdir): New variable.
(CLEANFILES): Add GNU.Gettext.pdb.
(install-dll-no, install-dll-yes): Install also into $(pkglibdir).
(installdirs-dll, uninstall-dll): Update accordingly.
* gettext-runtime/intl-csharp/intl.cs (GettextResourceSet): Add field Table.
Override GetEnumerator, GetObject to handle it. Change the Keys method to handle
it as well.
* gettext-tools/tests/lang-csharp: In the program, on Windows, produce UTF-8
output with Unix end-of-lines and set the culture manually.
2024-10-09 04:06:47 +02:00
Bruno Haible
a411f51af0 build: Add Windows-format metainfo also to libgettextlib and libgettextsrc.
Reported by Michele Locati <mlocati@gmail.com>
at <https://savannah.gnu.org/bugs/index.php?66267>.

* gettext-tools/gnulib-lib/libgettextlib.rc: New file.
* gettext-tools/gnulib-lib/Makefile.am (EXTRA_DIST): Add it.
(WOE32_LIBADD): New macro.
(libgettextlib.res.lo): New rule.
(libgettextlib_la_LIBADD, libgettextlib_la_DEPENDENCIES): Add the .res.lo file.
* gettext-tools/src/libgettextsrc.rc: New file.
* gettext-tools/src/Makefile.am (EXTRA_DIST): Add it.
(WOE32_LIBADD): New macro.
(libgettextsrc.res.lo): New rule.
(libgettextsrc_la_LIBADD, libgettextsrc_la_DEPENDENCIES): New macros.
* gettext-runtime/intl/libintl.rc: Update copyright year.
* gettext-runtime/libasprintf/libasprintf.rc: Likewise.
* gettext-tools/libgettextpo/libgettextpo.rc: Likewise.
* libtextstyle/lib/libtextstyle.rc: Likewise.
* windows/gettext.rc: Likewise.
2024-09-30 01:56:57 +02:00
Bruno Haible
63709a2089 Modernize: Use gnulib's string-buffer module for accumulating strings.
* autogen.sh (GNULIB_MODULES_RUNTIME_FOR_SRC, GNULIB_MODULES_TOOLS_FOR_SRC): Add
xstring-buffer.
* gettext-runtime/src/envsubst.c: Include string-buffer.h.
(subst_from_stdin): Use a stack-allocated string_buffer instead of 3 local
variables and micro-optimized ad-hoc code.
* gettext-tools/src/cldr-plural.y: Include string-buffer.h.
(yylex): Use a stack-allocated string_buffer instead of 3 local variables and
micro-optimized ad-hoc code.
* gettext-tools/src/cldr-plurals.c: Include string-buffer.h instead of xalloc.h.
(extract_rules): Use a stack-allocated string_buffer instead of 3 local
variables and micro-optimized ad-hoc code.
* gettext-tools/src/its.c: Include string-buffer.h.
(_its_collect_text_content): Use a stack-allocated string_buffer instead of 3
local variables and micro-optimized ad-hoc code.
* gettext-tools/src/read-desktop.c: Include string-buffer.h.
(desktop_lex): Use a stack-allocated string_buffer instead of 3 local variables
and micro-optimized ad-hoc code.
* gettext-tools/src/read-properties.c: Include string-buffer.h.
(properties_parse): Use a stack-allocated string_buffer instead of 3 local
variables and micro-optimized ad-hoc code.
* gettext-tools/src/x-awk.c: Include string-buffer.h.
(phase2_getc, phase3_get): Use a stack-allocated string_buffer instead of 3
local variables and micro-optimized ad-hoc code.
* gettext-tools/src/x-c.c: Include string-buffer.h.
(phase5_get): Use a stack-allocated string_buffer instead of 3 local variables
and micro-optimized ad-hoc code.
* gettext-tools/src/x-java.c: Include string-buffer.h.
(phase5_get): Use a stack-allocated string_buffer instead of 3 local variables
and micro-optimized ad-hoc code.
* gettext-tools/src/x-javascript.c: Include string-buffer.h.
(phase5_get): Use a stack-allocated string_buffer instead of 3 local variables
and micro-optimized ad-hoc code.
* gettext-tools/src/x-lua.c: Include string-buffer.h.
(string_buf_length, string_buf_alloc, string_buf): Remove variables.
(string_start, string_add, string_end): Remove functions.
(phase3_get): Use a stack-allocated string_buffer instead of 3 local variables
and micro-optimized ad-hoc code.
* gettext-tools/src/x-perl.c: Include string-buffer.h.
(get_here_document, phase2_getc, extract_quotelike_pass1,
extract_quotelike_pass3, extract_variable, interpolate_keywords, x_perl_prelex):
Use a stack-allocated string_buffer instead of 3 local variables and
micro-optimized ad-hoc code.
* gettext-tools/src/x-php.c: Include string-buffer.h.
(process_heredoc, phase4_get): Use a stack-allocated string_buffer instead of 3
local variables and micro-optimized ad-hoc code.
* gettext-tools/src/x-python.c: Include string-buffer.h.
(phase5_get): Use a stack-allocated string_buffer instead of 3 local variables
and micro-optimized ad-hoc code.
* gettext-tools/src/x-rst.c: Include string-buffer.h.
(buffer, bufmax): Remove variables.
(buffer): New variable.
(extract_rst, parse_integer): Use a stack-allocated string_buffer instead of 3
local variables and micro-optimized ad-hoc code.
(extract_rsj): Update.
* gettext-tools/src/x-smalltalk.c: Include string-buffer.h.
(phase2_get): Use a stack-allocated string_buffer instead of 3 local variables
and micro-optimized ad-hoc code.
* gettext-tools/src/x-vala.c: Include string-buffer.h.
(phase3_get): Use a stack-allocated string_buffer instead of 3 local variables
and micro-optimized ad-hoc code.
* gettext-tools/src/x-ycp.c: Include string-buffer.h.
(phase2_getc, phase5_get): Use a stack-allocated string_buffer instead of 3
local variables and micro-optimized ad-hoc code.
2024-09-26 13:12:14 +02:00
Bruno Haible
9ea3f38f12 build: Add support for --enable-relocatable in mingw builds on Cygwin hosts.
Reported by Michele Locati <michele@locati.it> in
<https://lists.gnu.org/archive/html/bug-gettext/2024-09/msg00033.html>.

* gettext-runtime/configure.ac: Invoke gl_BUILD_TO_HOST_BINDIR.
* gettext-runtime/src/Makefile.am (*_CFLAGS): Fix value of INSTALLDIR.
* gettext-tools/configure.ac: Invoke gl_BUILD_TO_HOST_BINDIR,
gl_BUILD_TO_HOST_PKGLIBEXECDIR.
* gettext-tools/src/Makefile.am (*_CPPFLAGS): Fix value of INSTALLDIR.
2024-09-26 13:12:13 +02:00