64 Commits

Author SHA1 Message Date
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
2ba96bb87e Provide XML schemas for .its and .loc files.
Suggested by Martin Blanchard <tchaik@gmx.com>
at <https://savannah.gnu.org/bugs/?56519>.

* gettext-tools/src/its.xsd: New file, reverse-engineered from its.c.
* gettext-tools/src/its-extensions.xsd: New file, reverse-engineered from its.c.
* gettext-tools/src/locating-rules.xsd: New file, reverse-engineered from
locating-rules.c.
* gettext-tools/src/Makefile.am (schemadir): New variable.
(schema_DATA): New variable.
(EXTRA_DIST): Distribute all of schema_DATA.
* gettext-tools/configure.ac: Check for xmllint, and set XMLLINT.
* gettext-tools/its/Makefile.am (ITS_FILES, LOC_FILES): New variables.
(dist_its_DATA): Rewrite.
(check-local): New rule.
* gettext-tools/doc/gettext.texi (Preparing ITS Rules): Split into two
subsections. Mention which schema the files have to obey.
* HACKING: Mention xmllint as maintainer prerequisite.
* PACKAGING: Mention the $prefix/share/gettext/schema/ directory.
* NEWS: Mention the change.
2024-09-29 17:34:35 +02:00
Bruno Haible
4032b845f4 build: Install auxiliary programs in $(libexecdir), not $(libdir). Part 3.
* PACKAGING: Update accordingly.
2023-09-17 10:44:23 +02:00
Bruno Haible
e0caff2252 intl: Use a locale.alias file only on glibc systems.
On systems without glibc, it makes no sense if libintl supports locale name
aliases that the system's setlocale() does not support. Therefore better
disable the locale.alias processing on these platforms.

Also, stop installing locale.alias, because on systems without glibc we won't
read it any more, and on systems with glibc we need to use the preinstalled
one in /usr/share/locale/locale.alias.

* gettext-runtime/intl/localealias.c: Don't include relocatable.h.
(relocate, relocate2): Remove macros.
(LOCALE_ALIAS_PATH): Define a fallback.
(_nl_expand_alias): Simplify on systems without glibc.
(read_alias_file, extend_alias_table, alias_compare): Don't define on systems
without glibc.
* gettext-runtime/intl/Makefile.am (AM_CPPFLAGS): Don't set LOCALE_ALIAS_PATH.
(EXTRA_DIST): Remove locale.alias, ref-add.sin, ref-del.sin.
(MOSTLYCLEANFILES): Remove ref-add.sed, red-del.sed.
(ref-add.sed, ref-del.sed, install-data-aliasfile, installdirs-aliasfile,
uninstall-aliasfile): Remove rules.
* gettext-runtime/intl/locale.alias: Remove file.
* gettext-runtime/intl/ref-add.sin: Remove file.
* gettext-runtime/intl/ref-del.sin: Remove file.
* gettext-tools/src/Makefile.am (aliaspath): Remove variable.
(DEFS): Don't set LOCALE_ALIAS_PATH.
* PACKAGING: Don't mention locale.alias.
2023-09-13 14:29:51 +02:00
Bruno Haible
3adaddd73c AM_GNU_GETTEXT: Use new build-to-host.m4 from gnulib.
* autogen.sh: Copy m4/build-to-host.m4 from gnulib.
* gettext-runtime/m4/Makefile.am (EXTRA_DIST): Add build-to-host.m4.
* gettext-runtime/m4/gettext.m4 (AM_GNU_GETTEXT): Simplify and fix bug on
Cygwin, by invoking gl_BUILD_TO_HOST.
* gettext-tools/m4/Makefile.am (aclocal_DATA): Add build-to-host.m4.
* gettext-tools/misc/gettextize.in (m4filelist): Add build-to-host.m4.
* Makefile.am (distcheck-hook): Check also build-to-host.m4.
* gettext-tools/doc/gettext.texi (aclocal): Mention also build-to-host.m4.
* PACKAGING: Mention build-to-host.m4.
2023-02-19 06:40:19 +01:00
Bruno Haible
3839ab211b build: Restore installation of preloadable_libintl.so (regression 2021-06-15).
* gettext-tools/configure.ac (USE_INCLUDED_LIBINTL, BUILD_INCLUDED_LIBINTL,
PRELOADABLE_LIBINTL): Remove unused conditionals.
* gettext-runtime/configure.ac (PRELOADABLE_LIBINTL): Define as before in
gettext-tools/configure.ac.
* PACKAGING: Update regarding preloadable_libintl.so.
2021-06-20 03:42:04 +02:00
Bruno Haible
785a89e5df build: Simplify: Don't build libintl+libgnuintl a second time in gettext-tools.
* PACKAGING: Document that gettext-tools cannot be built without
gettext-runtime.
* autogen.sh: Don't create gettext-tools/intl/Makefile.am.
* gettext-tools/Makefile.am (SUBDIRS): Remove 'intl'.
* gettext-runtime/intl/Makefile.am (dist-hook): Remove.
(install-data-local, uninstall-local, uninstall-sources): Moved ...
* gettext-tools/misc/Makefile.am (install-data-local, uninstall-local,
uninstall-sources): ... to here.
* gettext-runtime/configure.ac (PACKAGE_IS_GETTEXT_TOOLS): Remove conditional.
* gettext-tools/configure.ac: Add 3rd argument to AM_GNU_GETTEXT invocation.
(PACKAGE_IS_GETTEXT_TOOLS): Remove conditional.
Update reference to os2compat.h.
Don't create intl/Makefile from intl/Makefile.in.
* gettext-tools/gnulib-lib/Makefile.am (AM_CPPFLAGS): Use the built header files
in gettext-runtime/intl/.
* gettext-tools/libgrep/Makefile.am (AM_CPPFLAGS): Likewise.
* gettext-tools/src/Makefile.am (AM_CPPFLAGS): Likewise.
* gettext-tools/libgettextpo/Makefile.am (AM_CPPFLAGS): Likewise.
* gettext-tools/gnulib-tests/Makefile.am (AM_CPPFLAGS): Likewise.
* gettext-tools/tests/Makefile.am (AM_CPPFLAGS): Likewise.
(LDADD_yes, LDADD_no): Use the built libraries in gettext-runtime/intl/.
* gettext-tools/tests/lang-c: Use the built header files in gettext-runtime/intl/.
* gettext-tools/tests/lang-c++: Likewise.
* gettext-tools/tests/lang-objc: Likewise.
2021-06-15 12:49:11 +02:00
Bruno Haible
7ab696c983 build: Restore the ability to build gettext-tools separately, part 2.
* gettext-tools/configure.ac: New option --with-installed-csharp-dll.
(USE_INSTALLED_CSHARP_DLL): New conditional.
* gettext-tools/src/Makefile.am (CSHARP_DLL_DIR): New variable.
(msgunfmt.net.exe): Use it.
* configure.ac: Filter out --with-installed-csharp-dll from inherited --help
output.
* PACKAGING: Document that gettext-tools's configure needs to be invoked with
--with-installed-csharp-dll.
2019-05-19 01:09:27 +02:00
Bruno Haible
e4b3a3f56f build: Restore the ability to build gettext-tools separately, part 1.
Reported by Hanspeter Niederstrasser <nieder@users.sourceforge.net>
in <https://savannah.gnu.org/bugs/?56333>.

Code based on patch by Miguel Ángel Arruga Vivas <rosen644835@gmail.com>.

* autogen.sh: Copy libtextstyle.m4 for use by gettext-tools.
* gettext-tools/configure.ac: New option --with-installed-libtextstyle.
(USE_INSTALLED_LIBTEXTSTYLE): New conditional.
* gettext-tools/src/Makefile.am (textstyle.h): Disable rule if
USE_INSTALLED_LIBTEXTSTYLE is true.
(LT_LIBTEXTSTYLE): New variable.
(libgettextsrc_la_LDFLAGS): Use it instead of hardcoding a relative filename of
libtextstyle.la.
* configure.ac: Filter out --with-installed-libtextstyle from inherited --help
output.
* Makefile.am (distcheck-hook): Compare different copies of libtextstyle.m4.
* PACKAGING: Document that gettext-tools's configure needs to be invoked with
--with-installed-libtextstyle.
2019-05-19 01:09:27 +02:00
Bruno Haible
283418cdf9 build: Build and install libtextstyle.
* autogen.sh: Recurse into libtextstyle directory.
* configure.ac: Likewise.
* Makefile.am (SUBDIRS): Add libtextstyle.
* DEPENDENCIES: Mention that libiconv and ncurses are also used by libtextstyle.
* PACKAGING: Recommend to ship libtextstyle as a third binary package.
* NEWS: Mention that libtextstyle is installed.
2019-04-02 17:52:20 +02:00
Bruno Haible
602113a471 gettextize: Install also host-cpu-c-abi.m4 (needed since 2018-03-24).
* gettext-tools/m4/Makefile.am (aclocal_DATA): Install host-cpu-c-abi.m4.
* PACKAGING: Mention host-cpu-c-abi.m4.
* gettext-tools/misc/gettextize.in (m4filelist): Add host-cpu-c-abi.m4.
* gettext-tools/doc/gettext.texi (aclocal): Mention host-cpu-c-abi.m4.
2018-11-11 13:49:30 +01:00
Bruno Haible
e508bda283 Update packaging instructions.
* PACKAGING: Update file list.
2018-11-11 13:48:58 +01:00
Bruno Haible
198164be9e gettextize: Require automake >= 1.9.
* gettext-tools/misc/gettextize.in: Signal an error if 'aclocal' from
automake >= 1.9 is not found. Stop installing intldir.m4, intl.m4 and its
dependencies.
* gettext-tools/doc/gettext.texi (mkinstalldirs, aclocal): State the requirement
to have automake >= 1.9.
* gettext-tools/m4/Makefile.am (aclocal_DATA): Don't install codeset.m4,
extern-inline.m4, fcntl-o.m4, glibc2.m4, glibc21.m4, intdiv0.m4, intl.m4,
intl-thread-locale.m4, intldir.m4, intmax.m4, inttypes_h.m4, inttypes-pri.m4,
lcmessage.m4, lock.m4, longlong.m4, printf-posix.m4, size_max.m4, stdint_h.m4,
threadlib.m4, uintmax_t.m4, visibility.m4, wchar_t.m4, wint_t.m4, xsize.m4.
* PACKAGING: Remove the *.m4 files that are no longer installed.
2018-11-11 13:48:56 +01:00
Bruno Haible
26f257ee71 Stop installing the intl/ subdir sources.
* gettext-runtime/intl/Makefile.in (gettextsrcdir): Remove variable.
(DISTFILES.obsolete): Remove variable.
(install-data): Don't install nor remove anything.
(installdirs): Don't create $(gettextsrcdir).
* gettext-tools/misc/add-to-archive: Don't add the intl directory to the
archive.
* PACKAGING: Remove mention of $prefix/share/gettext/intl/ directory.
2018-11-11 13:48:51 +01:00
Bruno Haible
d1d8a827a6 intl: Improve support for per-thread locales on Solaris 11.4.
* gettext-runtime/intl/localename.c: Update from gnulib:
Handle HAVE_SOLARIS114_LOCALES through Solaris specific code.
* gettext-runtime/intl/localename-table.in.h: Update from gnulib's
localename-table.h.
* gettext-runtime/intl/localename-table.c: Update from gnulib.
* gettext-runtime/m4/intl-thread-locale.m4: Renamed from
gettext-runtime/m4/intlsolaris.m4.
(gt_INTL_THREAD_LOCALE_NAME): Renamed from gt_INTL_SOLARIS. Define
HAVE_SOLARIS114_LOCALES instead of HAVE_NAMELESS_LOCALES.
* gettext-runtime/m4/intl.m4: Update from gnulib:
(AM_INTL_SUBDIR): Require gt_INTL_THREAD_LOCALE_NAME. Test for 'uselocale'. Set
HAVE_NAMELESS_LOCALES.
(gt_INTL_SUBDIR_CORE): Don't invoke gt_INTL_SOLARIS. Don't set
HAVE_NAMELESS_LOCALES here.
* gettext-runtime/m4/Makefile.am (EXTRA_DIST): List intl-thread-locale.m4, not
intlsolaris.m4.
* gettext-tools/m4/Makefile.am (aclocal_DATA): List intl-thread-locale.m4, not
intlsolaris.m4.
* gettext-tools/misc/gettextize.in (m4filelist): List intl-thread-locale.m4, not
intlsolaris.m4.
* Makefile.am (distcheck-hook): Check intl-thread-locale.m4, not intlsolaris.m4.
* gettext-tools/doc/gettext.texi (aclocal): List intl-thread-locale.m4, not
intlsolaris.m4.
* PACKAGING: List intl-thread-locale.m4, not intlsolaris.m4.
2018-10-23 22:48:46 +02:00
Bruno Haible
87f9735505 intl: Add support for per-thread locales on Solaris 11.4.
Relies on the recent changes to the 'localename' module in gnulib.

* gettext-runtime/intl/localename.c: Apply changes from gnulib.
* gettext-runtime/intl/localename-table.h: New file, from gnulib.
* gettext-runtime/intl/localename-table.c: New file, from gnulib.
* gettext-runtime/intl/libgnuintl.in.h (newlocale, duplocale, freelocale): New
overriding declarations.
* gettext-runtime/intl/Makefile.in (HEADERS): Add localename-table.h.
(SOURCES): Add localename-table.c.
(OBJECTS): Add localename-table.$lo.
(localename-table.lo): New target.
(libgnuintl.h, libintl.h): Substitute also HAVE_NAMELESS_LOCALES.
* gettext-runtime/m4/intl.m4: Apply changes from gnulib:
(gt_INTL_SUBDIR_CORE): Don't test for 'uselocale' and 'getlocalename_l'.
Instead, invoke gt_INTL_SOLARIS. Set HAVE_NAMELESS_LOCALES.
* gettext-runtime/m4/intlsolaris.m4: New file, from gnulib.
* gettext-runtime/m4/Makefile.am (EXTRA_DIST): Add it.
* gettext-tools/m4/Makefile.am (aclocal_DATA): Add intlsolaris.m4.
* gettext-tools/misc/gettextize.in (m4filelist): Add intlsolaris.m4.
* Makefile.am (distcheck-hook): Verify that intlsolaris.m4 is consistent with
gnulib.
* gettext-tools/doc/gettext.texi (aclocal): Add intlsolaris.m4 to the file list.
* PACKAGING: Add intlsolaris.m4 to the list of installed files.
* NEWS: Mention the change.
2018-10-23 01:02:02 +02:00
Bruno Haible
d07ad8bcb1 Update PACKAGING documentation.
* PACKAGING: Remove mention of charset.alias (dropped on 2018-05-19).
Mention that libintl does not get installed on Solaris 11.
2018-10-21 20:30:31 +02:00
Bruno Haible
88582a1383 C# support: Remove pnet choice.
* DEPENDENCIES: Don't mention pnet.
* PACKAGING: Likewise.
* gettext-tools/src/format-csharp.c: Simplify comment.
* gettext-tools/src/msgfmt.cs: Remove workarounds for cscc.
* gettext-tools/src/write-csharp.c (write_csharp_code): Update comment.
* gettext-tools/doc/gettext.texi (C#): Don't mention resgen.
* gettext-tools/tests/lang-csharp: Rely on mono, not pnet.
* gettext-tools/examples/hello-csharp/INSTALL: Likewise.
* gettext-tools/examples/hello-csharp-forms/INSTALL: Likewise.
* gettext-tools/examples/hello-csharp-forms/BUGS: Remove file.
2018-10-09 02:44:00 +02:00
Bruno Haible
3531b829b3 Remove the ability to compile the Java programs to native executables.
This ability relied on GCJ, and GCJ was removed from GCC in version 7.1.

* gnulib-local/modules/gcj: Remove file.
* gnulib-local/m4/gcj.m4: Remove file.
* gnulib-local/Makefile.am (EXTRA_DIST): Remove both.
* gnulib-local/m4/java.m4 (gt_JAVA_CHOICE): Map value 'bytecode' to 'yes'.

* autogen.sh (GNULIB_MODULES_TOOLS_OTHER): Remove 'gcj'.
* gettext-tools/configure.ac: Don't invoke gt_GCJ. Don't set BUILDJAVAEXE.
* gettext-tools/src/Makefile.am (DEFS): Remove USEJEXE, GETTEXTJEXEDIR defines.
(GCJ, GCJFLAGS): Remove variables.
(USEJAVA, USEJEXE): Assume BUILDJAVAEXE is false.
(all-java-*, install-data-java-*, installdirs-java-*, uninstall-java-*): Remove
targets that assume BUILDJAVAEXE = true. Rename remaining targets.
(install-exec-java-*): Remove targets.
* gettext-tools/src/read-java.c (msgdomain_read_java: Assume USEJEXE is false.
* gettext-tools/src/urlget.c (fetch): Likewise.
* gettext-tools/tests/msgunfmt-java-1: Don't set GETTEXTJEXEDIR.
* PACKAGING (Java support): Drop text about native executables.

* gettext-tools/m4/Makefile.am (examplesbuildaux_DATA): Remove gcj.m4.
* gettext-tools/examples/hello-java*/autogen.sh: Don't copy gcj.m4.
* gettext-tools/examples/hello-java*/autoclean.sh: Don't remove m4/gcj.m4.
* gettext-tools/examples/hello-java*/m4/Makefile.am (EXTRA_DIST): Remove
gcj.m4.
* gettext-tools/examples/hello-java*/configure.ac: Don't invoke gt_GCJ,
AC_PROG_RANLIB. Remove option --enable-java-exe. Don't set BUILDJAVAEXE. Don't
set USEJEXE.
* gettext-tools/examples/hello-java*/Makefile.am (GCJ, GCJFLAGS, AR, RANLIB):
Remove variables.
[USEJEXE]: Remove section.
2017-05-04 18:01:18 +02:00
Santiago Vila
d9cc9dd1de * PACKAGING: List version specific files
Copyright-paperwork-exempt: yes
2016-01-05 10:05:04 +09:00
Bruno Haible
7e406ea3d6 Deprecate the --with-cvs option. 2010-06-03 16:22:48 +02:00
Bruno Haible
5a70a0382a Use fcntl-o.m4 instead of fcntl_h.m4. 2009-12-26 11:59:31 +01:00
Bruno Haible
8c4ff981d5 Avoid symlink attack in localcharset module. Use fcntl_h.m4 from gnulib. 2009-10-18 17:17:48 +02:00
Bruno Haible
38b8d48eba Support alternative to the cvs-compression of the archive. 2009-09-27 22:56:39 +02:00
Bruno Haible
23053d3ae0 Remove ulonglong.m4. 2009-06-23 12:15:27 +02:00
Bruno Haible
185f1f11f6 Handle new file intlmacosx.m4. 2009-06-23 12:14:54 +02:00
Bruno Haible
f6395d6827 longdouble.m4 is dropped. 2009-06-23 12:14:45 +02:00
Bruno Haible
d83ded1732 Removed javadoc1. 2009-06-23 12:14:44 +02:00
Bruno Haible
e6213e9924 Mention coreutils instead of sh-utils. 2009-06-23 12:14:07 +02:00
Bruno Haible
0920eafeda New macro AM_GNU_GETTEXT_INTL_SUBDIR. 2009-06-23 12:14:02 +02:00
Bruno Haible
bf9d007163 Remove inttypes-h.m4. 2009-06-23 12:14:00 +02:00
Bruno Haible
b005465068 Split macros for intl subdir off into intl.m4. 2009-06-23 12:13:59 +02:00
Bruno Haible
37764874e1 Remove signed.m4. 2009-06-23 12:13:57 +02:00
Bruno Haible
2ee4e2e2b7 isc-posix.m4 is gone. 2009-06-23 12:13:28 +02:00
Bruno Haible
05474b85eb Renamed inttypes.m4 to inttypes-h.m4. 2009-06-23 12:13:23 +02:00
Bruno Haible
ebdacfb2d0 Stop using the mkinstalldirs script. 2009-06-23 12:13:11 +02:00
Bruno Haible
a993526247 New program 'recode-sr-latin'. 2009-06-23 12:13:05 +02:00
Bruno Haible
0ef9ec2643 Tidy up exported symbols of libintl library. 2009-06-23 12:12:42 +02:00
Bruno Haible
c53d435e9a Use lock.h. 2009-06-23 12:12:38 +02:00
Bruno Haible
fccf3de47f Autoload definitions for viewing and editing PO files. 2009-06-23 12:12:25 +02:00
Bruno Haible
05c8921d87 Add notes about Java and C#. 2009-06-23 12:12:06 +02:00
Bruno Haible
9deabd204c Add note about gettext.jar. 2009-06-23 12:12:06 +02:00
Bruno Haible
eb55a0ffe4 Distribute an FAQ. 2009-06-23 12:11:48 +02:00
Bruno Haible
15bd5e4f13 Mention glibc2.m4 as well. 2009-06-23 12:11:47 +02:00
Bruno Haible
420d9c6910 Support for C#. 2009-06-23 12:11:35 +02:00
Bruno Haible
220a284d23 Use size_t instead of ssize_t where possible. 2009-06-23 12:11:21 +02:00
Bruno Haible
419a630501 Update the sizes. 2009-06-23 12:11:18 +02:00
Bruno Haible
37e75f158a Distribute also size_max.m4, ssize_t.m4, xsize.m4. 2009-06-23 12:11:18 +02:00
Bruno Haible
706b793698 New examples. 2009-06-23 12:11:15 +02:00
Bruno Haible
0b8caeca02 Support for internationalized shell scripts. 2009-06-23 12:10:59 +02:00