* gettext-tools/examples/hello-*/configure.ac: Use AM_GNU_GETTEXT_VERSION with
version 1.0.
* gettext-tools/examples/hello-c++-kde/configure.in.in: Likewise.
* gettext-tools/examples/hello-*/autogen.sh: Copy remove-potcdate.sed from the
new location in the source tree. Copy also the no-op fetch-po.
* gettext-tools/examples/hello-*/autoclean.sh: Remove also fetch-po.
This is somewhat tricky, because it is also a phony Makefile target.
* gettext-tools/wizard/po-templates/traditional/Makefile.in.in (dist2):
Distribute 'fetch-po'.
* gettext-tools/examples/po/Makefile.am (distdir1): Distribute 'fetch-po'.
* gettext-tools/examples/hello-*/po/Makefile.am (distdir1): Likewise.
* gettext-tools/wizard/po-templates/traditional/fetch-po: New file.
* gettext-tools/wizard/Makefile.am (po_SCRIPTS): New variable.
(EXTRA_DIST): Add the po_SCRIPTS.
* gettext-tools/wizard/gettextize.in: Copy but don't overwrite po/fetch-po.
* gettext-tools/wizard/po-templates/traditional/Makefile.in.in (fetch-po): New
target.
* gettext-tools/examples/po/Makefile.am (fetch-po): New target.
* gettext-tools/examples/hello-*/po/Makefile.am (fetch-po): New target.
* gettext-tools/examples/hello-objc-gnustep/po/GNUmakefile (fetch-po): New
target.
* gettext-tools/doc/gettext.texi (po/fetch-po): New subsection.
(po/LINGUAS): Explain how it related to the 'fetch-po' script.
(Release Management): Document how to fetch the PO files before a release.
* NEWS: Mention the change.
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.
* 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.
* 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.
The currently used Java version in the industry is Java 8 or newer, since 2022.
See <https://en.wikipedia.org/wiki/Java_version_history>. And on macOS 11..13,
I'm seeing the "error: Source option 6 is no longer supported. Use 8 or later."
* gettext-runtime/configure.ac: Search for a Java compiler with source and
target 1.8.
* gettext-tools/configure.ac: Search for a Java compiler with source 1.8.
* gettext-tools/examples/hello-java/configure.ac: Likewise.
* gettext-tools/examples/hello-java-awt/configure.ac: Likewise.
* gettext-tools/examples/hello-java-swing/configure.ac: Likewise.
This is possible because msgmerge became faster
- through an index-based fuzzy search (msgl-fsearch.c) in 2006,
- through OpenMP parallelization in 2006,
- through processor speedups over the years.
The only case where msgmerge is still slow is when a compendium is in use.
Suggested by Marcus Müller <marcus_savannah@hostalia.de> in
<https://lists.gnu.org/archive/html/bug-gnulib/2023-03/msg00034.html>.
* gettext-runtime/po/Makefile.in.in ($(POFILES), update-po): If msgmerge has
version ≥ 0.11, pass option --quiet.
* gettext-runtime/po/Makevars (MSGMERGE_OPTIONS): Don't suggest --quiet any
more.
* gettext-tools/po/Makevars (MSGMERGE_OPTIONS): Likewise.
* gettext-tools/examples/hello-*/po/Makevars (MSGMERGE_OPTIONS): Likewise.
* gettext-tools/examples/hello-*/po/Makefile.am ($(POFILES), update-po): If
msgmerge has version ≥ 0.11, pass option --quiet.
(MSGMERGE_OPTIONS): Don't suggest --quiet any more.
* gettext-tools/examples/hello-objc-gnustep/po/GNUmakefile: Likewise.
* gettext-tools/examples/po/Makefile.am ($(POFILES), update-po): Pass option
--quiet to msgmerge.
(MSGMERGE_OPTIONS): Don't suggest --quiet any more.
* gettext-runtime/po/Makefile.in.in (dist2): Emit a warning when the POT file
does not exist.
* gettext-tools/examples/hello-*/po/Makefile.am (distdir1): Likewise.
* README: Tell users to report bugs in the bug tracker or by email. Use the
mailing list address, not the alias.
* gettext-runtime/libasprintf/README: Likewise.
* gettext-tools/doc/gettext.texi (Introduction): Likewise.
(Plural forms): Use the mailing list address, not the alias.
* configure.ac (AC_INIT): Use the mailing list address, not the alias.
* gettext-runtime/configure.ac (AC_INIT): Likewise.
* gettext-tools/configure.ac (AC_INIT): Likewise.
* gettext-tools/examples/configure.ac (AC_INIT): Likewise.
* gettext-runtime/po/Makevars (MSGID_BUGS_ADDRESS): Use the mailing list
address, not the alias.
* gettext-tools/po/Makevars (MSGID_BUGS_ADDRESS): Likewise.
* gettext-tools/examples/po/Makefile.am (MSGID_BUGS_ADDRESS): Likewise.
* gettext-tools/examples/hello-*/po/Makevars (MSGID_BUGS_ADDRESS): Likewise.
* gettext-tools/examples/hello-*/po/Makefile.am (MSGID_BUGS_ADDRESS): Likewise.
* gettext-tools/examples/hello-objc-gnustep/po/GNUmakefile (MSGID_BUGS_ADDRESS):
Likewise.
* gettext-tools/examples/hello-c++-kde/hello.cc (main): Likewise.
* gettext-runtime/src/envsubst.c (main): Move URL out of translatable string.
(usage): Tell users to report bugs in the bug tracker or by email. Use the
mailing list address, not the alias.
* gettext-runtime/src/gettext.c: Likewise.
* gettext-runtime/src/ngettext.c: Likewise.
* gettext-tools/src/cldr-plurals.c: Likewise.
* gettext-tools/src/hostname.c: Likewise.
* gettext-tools/src/msgattrib.c: Likewise.
* gettext-tools/src/msgcat.c: Likewise.
* gettext-tools/src/msgcmp.c: Likewise.
* gettext-tools/src/msgcomm.c: Likewise.
* gettext-tools/src/msgconv.c: Likewise.
* gettext-tools/src/msgen.c: Likewise.
* gettext-tools/src/msgexec.c: Likewise.
* gettext-tools/src/msgfilter.c: Likewise.
* gettext-tools/src/msgfmt.c: Likewise.
* gettext-tools/src/msggrep.c: Likewise.
* gettext-tools/src/msginit.c: Likewise.
* gettext-tools/src/msgmerge.c: Likewise.
* gettext-tools/src/msgunfmt.c: Likewise.
* gettext-tools/src/msguniq.c: Likewise.
* gettext-tools/src/recode-sr-latin.c: Likewise.
* gettext-tools/src/urlget.c: Likewise.
* gettext-tools/src/xgettext.c: Likewise.
* gettext-tools/tests/tstgettext.c: Likewise.
* gettext-tools/tests/tstngettext.c: Likewise.
* gettext-tools/misc/autopoint.in (func_usage): Tell users to report bugs in the
bug tracker or by email. Use the mailing list address, not the alias.
* gettext-tools/misc/convert-archive.in (func_usage): Likewise.
* gettext-tools/misc/gettextize.in (func_usage): Likewise.
* gettext-runtime/po/Makefile.in.in ($(DOMAIN).pot-update): List the
XGETTEXT_OPTIONS and the XGETTEXT_EXTRA_OPTIONS after all other options.
* gettext-tools/examples/po/Makefile.am ($(DOMAIN).pot-update): Likewise.
* gettext-tools/examples/hello-*/po/Makefile.am ($(DOMAIN).pot-update):
Likewise.
* gettext-tools/examples/hello-objc-gnustep/po/GNUmakefile
($(DOMAIN).pot-update): Likewise.
* NEWS: Mention the change.
* gettext-tools/doc/gettext.texi (po/Makevars): Fix typo.
Reported by Claude Paroz <claude@2xlibre.net>
in <https://savannah.gnu.org/bugs/?50910>.
* gettext-runtime/m4/po.m4 (AM_PO_SUBDIRS): Set MSGMERGE_FOR_MSGFMT_OPTION.
* gettext-runtime/po/Makefile.in.in (MSGMERGE): Use GNU msgmerge, even if not
first in $PATH.
(MSGMERGE_FOR_MSGFMT_OPTION): New variable.
(.po.gmo): Depend on the POT file. Use msgmerge on the fly, to take into
account the most recent POT file changes.
* gettext-tools/examples/hello-*/po/Makefile.am: Likewise, also for the .po.qm,
update-properties, update-classes targets.
* gettext-tools/examples/hello-objc-gnustep/po/GNUmakefile
(MSGMERGE_FOR_MSGFMT_OPTION): New variable.
($(STRINGSFILES)): Depend on the POT file. Use msgmerge on the fly, to take
into account the most recent POT file changes.
Rationale: <https://www.gnu.org/prep/standards/html_node/Makefile-Basics.html>.
* gettext-runtime/po/Makefile.in.in: Use $(srcdir)/stamp-po instead of stamp-po.
Talk about "version control system", not CVS.
* gettext-tools/examples/hello-*/po/Makefile.am: Likewise.
* gettext-tools/examples/po/Makefile.am: Likewise.
* gettext-tools/examples/check-examples (func_check_dist_vpath): Verify the
stamp-po file does not exist in the build dir, except when using the older
Makefile.in.in infrastructure.
Reported by Akim Demaille <akim@lrde.epita.fr> in
<https://lists.gnu.org/archive/html/bug-gettext/2018-10/msg00020.html>.
* gettext-runtime/po/Makefile.in.in ($(DOMAIN).pot-update): Use a
case-insensitive search for "GNU <PACKAGE_NAME>".
* gettext-tools/examples/hello-*/po/Makefile.am ($(DOMAIN).pot-update):
Likewise.
* gettext-tools/examples/hello-objc-gnustep/po/GNUmakefile
($(DOMAIN).pot-update): Likewise.
This mirrors the Makefile.in.in change from 2016-07-01.
* gettext-tools/examples/hello-*/po/Makefile.am ($(POFILES), update-po): Use
option --previous when the msgmerge program supports it.
* gettext-tools/examples/hello-objc-gnustep/po/GNUmakefile: Likewise.
This mirrors the Makefile.in.in change from 2015-09-01 with the amendment
from today.
* gettext-tools/examples/hello-*/po/Makefile.am ($(DOMAIN).pot-update):
Replace header entry with the content of $(DOMAIN).pot-header, if exists.
* gettext-tools/examples/hello-objc-gnustep/po/GNUmakefile: Likewise.
This mirrors the Makevars change from 2014-10-08.
* gettext-tools/examples/hello-*/po/Makefile.am (MSGINIT_OPTIONS): New variable.
* gettext-tools/examples/hello-objc-gnustep/po/GNUmakefile: Likewise.
This mirrors the Makefile.in.in and Makevars change from 2014-05-01.
Reported by David Shea at <https://savannah.gnu.org/bugs/?40520>.
* gettext-runtime/po/Makefile.in.in ($(DOMAIN).pot-update): Tweak whitespace.
* gettext-tools/examples/hello-*/po/Makefile.am (PACKAGE_GNU): New variable.
($(DOMAIN).pot-update): Don't search for "GNU packagename" if $(PACKAGE_GNU) is
set.
* gettext-tools/examples/hello-objc-gnustep/po/GNUmakefile: Likewise.
This mirrors the Makefile.in.in change from 2010-06-12.
Reported by Jim Meyering <jim@meyering.net>.
* gettext-tools/examples/hello-*/po/Makefile.am (($(DOMAIN).pot-update): When
GNU find is available, avoid grepping through monster files.
* gettext-tools/examples/hello-objc-gnustep/po/GNUmakefile: Likewise.
* gettext-tools/examples/hello-java*/po/Makefile.am (update-properties): Create
the new .properties files in the build dir and move them to $(srcdir) only if
the new contents differs from the old contents.
(update-classes): Likewise, also for .class files.
* gettext-runtime/m4/po.m4 (AM_POSTPROCESS_PO_MAKEFILE): Change PROPERTIESFILES
and CLASSFILES to contain files in $(srcdir), not in $(top_srcdir).
* gettext-tools/examples/hello-java*/Makefile.am (hello.jar): Fetch the catalogs
from the po/ directory.
* gettext-tools/examples/hello-java*/po/Makefile.am (MAINTAINERCLEANFILES):
Add the .properties and the .class files.
(EXTRA_DIST): Add the .properties files.
(update-properties, update-classes): Generate the .properties and .class files
in the po/ directory, not in the top-level directory.
* gettext-tools/examples/hello-java*/autoclean.sh: Remove the catalogs in
the po/ directory, not in the top-level directory.
* gettext-tools/examples/hello-java*/Makefile.am (hello_RESOURCES,
MAINTAINERCLEANFILES): Remove variables.
(hello.jar): Use two jar commands, to combine .class files from the build dir
with .properties files from the source dir.
* gettext-tools/examples/hello-java*/po/Makefile.am (update-properties,
update-classes): Reference the .pot file in the source dir, not in the build
dir.
(echo-catalogs): Include the fallback catalog.
* gettext-tools/examples/hello-pascal/Makefile.am (hello_SOURCES): Add $(srcdir)
prefix.
(hello$(EXEEXT)): Use -o option to specify where the object file and the
executable file shall be created.
Reported by Emmanuel Bourg <ebourg@apache.org>
at <https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=892733>
via Santiago Vila.
* gettext-runtime/configure.ac: Require a Java compiler that supports
source-version 1.5 and target-version 1.6 (such as Java 6 or newer, or
GCJ 4.3 or newer).
* gettext-tools/src/write-java.c (msgdomain_write_java): Likewise
* gettext-tools/examples/hello-java-qtjambi/configure.ac: Likewise.
* gettext-tools/configure.ac: Require a Java compiler that supports
source-version 1.5 (such as Java 5 or newer, or GCJ 4.3 or newer).
* gettext-tools/examples/hello-java/configure.ac: Likewise.
* gettext-tools/examples/hello-java-awt/configure.ac: Likewise.
* gettext-tools/examples/hello-java-swing/configure.ac: Likewise.
* NEWS: Mention the change.
When running from xsmallpot.sh, embedded shell-script snippets are
stripped off from configure.ac and some variables are not set.
Make sure to quote them to avoid error.
* hello-java/configure.ac: Quote $BUILDJAVA.
* hello-java-awt/configure.ac: Quote $BUILDJAVAEXE and $BUILDJAVA.
* hello-java-qtjambi/configure.ac: Likewise.
* hello-java-swing/configure.ac: Likewise.