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.
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@.
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.
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.
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.
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++.
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.
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.
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.
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>.
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.
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.
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.
Bruno Haible [Tue, 19 Nov 2024 17:03:45 +0000 (18:03 +0100)]
xgettext: PHP: Stop recognizing ASP tags <% and %> (removed in PHP 7.0).
Reported by David Robinson <dave@netterra.com> in
<https://lists.gnu.org/archive/html/bug-gettext/2021-10/msg00000.html>.
* gettext-tools/src/x-php.c (skip_html): Don't recognize '<%' and '<%='
any more.
(phase2_getc, phase3_getc, phase4_get): In comments, don't treat '%>' like '?>'
any more.
Bruno Haible [Fri, 8 Nov 2024 14:54:46 +0000 (15:54 +0100)]
Refactor.
* gettext-tools/src/cldr-plural.y: Untabify.
(struct cldr_plural_parse_args): New type, moved here from
gettext-tools/src/cldr-plural-exp.h.
(cldr_plural_parse): New function, moved here from
gettext-tools/src/cldr-plural-exp.c.
* gettext-tools/src/cldr-plural-exp.h: Reorder declarations.
(struct cldr_plural_parse_args): Remove declaration.
* gettext-tools/src/cldr-plural-exp.c: Don't include cldr-plural.h. Reorder
functions.
(cldr_plural_parse): Remove function.
Bruno Haible [Wed, 23 Oct 2024 07:59:49 +0000 (09:59 +0200)]
Fix test failure of autopoint-3 on Cygwin.
It was broken since commit "tests: Use libtool in autopoint-3 test" (2014-09-05):
The Makefile specified to link the 'hello' program without libtool
(and thus Automake generated a direct link command without libtool),
but the LDADD variable used @LTLIBINTL@. On Cygwin, this led to a use of
the -R option, which the compiler does not understand:
x86_64-pc-cygwin-gcc: error: unrecognized command line option ‘-R’; did you mean ‘-R’?
* gettext-tools/tests/autopoint-3: Don't invoke LT_INIT. Use @LIBINTL@,
not @LTLIBINTL@. Don't touch ltmain.sh.
Bruno Haible [Sun, 20 Oct 2024 22:46:53 +0000 (00:46 +0200)]
doc: Update after Automake changed.
* gettext-tools/doc/gettextize.texi: Update now that Automake with option 'gnu'
no longer requires ABOUT-NLS. Cf.
<https://git.savannah.gnu.org/gitweb/?p=automake.git;a=commitdiff;h=a2def8cdef>.
Bruno Haible [Thu, 17 Oct 2024 21:53:17 +0000 (23:53 +0200)]
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.
Bruno Haible [Tue, 15 Oct 2024 19:52:30 +0000 (21:52 +0200)]
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'.
Bruno Haible [Tue, 15 Oct 2024 14:49:13 +0000 (16:49 +0200)]
gettext.h: Avoid "warning: ISO C++ forbids variable length array" with -pedantic.
Both "g++ -pedantic" and "clang++ -pedantic" warn about use of VLAs.
Since we cannot distinguish "g++" from "g++ -pedantic" through a preprocessor
macro, it's best to not use a VLA in C++.
Reported by Jens Seidel <jensseidel@users.sf.net>
via <https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=547798>
at <https://savannah.gnu.org/bugs/index.php?55149>.
* gnulib-local/lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define
to 0 in C++ mode.
Bruno Haible [Tue, 15 Oct 2024 14:04:45 +0000 (16:04 +0200)]
msgen: Convert charset=CHARSET to charset=ASCII.
Reported at <https://savannah.gnu.org/bugs/index.php?20923>.
* gettext-tools/src/msgen.c: Include msgl-ascii.h, c-strstr.h, xalloc.h.
(fill_header): New function, based on fill_header in msginit.c.
(main): Invoke it.
* gettext-tools/tests/msgen-1: Provide as input a POT file with charset=CHARSET,
and verify that the output has charset=ASCII.
Bruno Haible [Tue, 15 Oct 2024 13:42:46 +0000 (15:42 +0200)]
Refactor.
* gettext-tools/src/msgl-header.h (header_set_charset): New declaration.
* gettext-tools/src/msgl-header.c (header_set_charset): New function.
* gettext-tools/src/msgl-iconv.c: Include msgl-header.h.
(iconv_message_list_internal): Use header_set_charset.
* gettext-tools/src/x-po.c: Include msgl-header.h.
(extract): Use header_set_charset.
* gettext-tools/src/FILES: Update.
Bruno Haible [Tue, 15 Oct 2024 00:37:28 +0000 (02:37 +0200)]
its: Add ability to check *.its and *.loc files with XML Schema 1.1.
* gettext-tools/src/its.xsd10: Renamed from gettext-tools/src/its.xsd.
(RulesType): Enumerate all possible rules in the ITS namespace, instead of using
a wildcard.
(OtherRuleType): New element.
* gettext-tools/src/its.xsd11: Copied from gettext-tools/src/its.xsd.
(LocNoteRuleType): Enable assertion.
* gettext-tools/src/locating-rules.xsd10: Renamed from
gettext-tools/src/locating-rules.xsd.
* gettext-tools/src/locating-rules.xsd11: Copied from
gettext-tools/src/locating-rules.xsd.
(LocatingRuleType): Enable assertion.
* gettext-tools/src/Makefile.am (schema_DATA): Add its.xsd10, its.xsd11,
locating-rules.xsd10, locating-rules.xsd11. Remove its.xsd, locating-rules.xsd.
* gettext-tools/build-aux/xml-validate-10.in: New file.
* gettext-tools/build-aux/xml-validate-11.in: New file.
* gettext-tools/configure.ac: Substitute HAVE_JAVAEXEC.
(AC_CONFIG_FILES): Create build-aux/xml-validate-10, build-aux/xml-validate-11.
* gettext-tools/Makefile.am (DISTCLEANFILES): Add build-aux/xml-validate-10,
build-aux/xml-validate-11.
* gettext-tools/its/Makefile.am: Revert last commit.
(check-local): Check each file both using the XML Schema 1.0 and the XML Schema
1.1.
* gettext-tools/doc/gettext.texi (ITS Rules): Mention the two versions of
its.xsd.
(Location Rules): Mention the two versions of locating-rules.xsd.
* HACKING: Mention Xerces2-J.
Bruno Haible [Sun, 13 Oct 2024 23:41:49 +0000 (01:41 +0200)]
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 %%.
Bruno Haible [Sun, 13 Oct 2024 20:37:39 +0000 (22:37 +0200)]
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.
Bruno Haible [Sun, 13 Oct 2024 20:36:41 +0000 (22:36 +0200)]
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.
Bruno Haible [Sun, 13 Oct 2024 18:18:15 +0000 (20:18 +0200)]
xgettext: Desktop: Correct the line numbers in the output and in error messages.
* gettext-tools/src/read-desktop.c (struct token_ty): Add a 'lineno' field.
(desktop_lex): Correct the line numbers in error messages. For a token of type
token_type_pair, store the line number.
(desktop_parse): Pass the line number from the token to
desktop_reader_handle_pair.
* gettext-tools/tests/xgettext-desktop-1: Update expected output.
* gettext-tools/tests/xgettext-desktop-2: Likewise.
* NEWS: Mention the change.
Bruno Haible [Sun, 13 Oct 2024 01:00:35 +0000 (03:00 +0200)]
its: Improve error handling.
* gettext-tools/src/its.c: Include libxml/xmlerror.h.
(structured_error): New function.
(its_rule_list_add_from_file, its_rule_list_add_from_string,
its_rule_list_extract, its_merge_context_alloc): Exit upon fatal error.
Set the structured_error for the rest of the function.
(its_merge_context_merge, its_merge_context_write): Set the structured_error.
Bruno Haible [Fri, 11 Oct 2024 10:55:42 +0000 (12:55 +0200)]
its: Allow a specific XML namespace for .metainfo.xml / .appdata.xml files.
Reported by Claude Paroz <claude@2xlibre.net>
at <https://savannah.gnu.org/bugs/?54472>.
* gettext-tools/its/metainfo.its: Duplicate the rules for XML instances that
use the metainfo namespace.
* gettext-tools/tests/xgettext-appdata-3: New file, based on
gettext-tools/tests/xgettext-appdata-2.
* gettext-tools/tests/Makefile.am (TESTS): Add it.
Bruno Haible [Wed, 9 Oct 2024 21:11:41 +0000 (23:11 +0200)]
build: Revert the revert, and use Sergey Poznyakoff's fix instead.
Sergey's fix is at
<https://debbugs.gnu.org/cgi/bugreport.cgi?msg=17;bug=73620> =
<https://lists.gnu.org/archive/html/bug-libtool/2024-10/msg00008.html>.
Bruno Haible [Wed, 9 Oct 2024 02:06:47 +0000 (04:06 +0200)]
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.
Bruno Haible [Mon, 7 Oct 2024 18:39:07 +0000 (20:39 +0200)]
Improve C# support on Cygwin.
* autogen.sh (GNULIB_MODULES_TOOLS_FOR_SRC): Add cygpath.
* gettext-tools/src/read-csharp.c: Include cygpath.h.
(msgdomain_read_csharp): Convert the directory passed to msgunfmt.net.exe from
Cygwin to Windows syntax.
* gettext-tools/src/read-resources.c: Include cygpath.h.
(read_resources_file): Convert the file name passed to msgunfmt.net.exe from
Cygwin to Windows syntax.
* gettext-tools/src/write-resources.c: Include cygpath.h.
(msgdomain_write_csharp_resources): Convert the file name passed to
msgfmt.net.exe from Cygwin to Windows syntax.