606 Commits

Author SHA1 Message Date
Bruno Haible
6c3c33fbed Fix compilation errors with older C compilers (regression 2025-12-19).
* gnulib-local/lib/xerror.c (multiline_internal): Add a semicolon between
a label and a declaration.
* gettext-tools/src/write-po.c (wrap): Likewise.
* gettext-tools/src/format-go.c (format_parse): Likewise.
2025-12-22 15:05:33 +01:00
Bruno Haible
14d79c924c Modernize coding style: Reduce scope of local variables.
* HACKING (Coding Style): New section, copied from gnulib/HACKING.
* gettext-runtime/src/envsubst.c: Reduce scope of local variables.
* gettext-runtime/src/escapes.h: Likewise.
* gettext-runtime/src/gettext.c: Likewise.
* gettext-runtime/src/ngettext.c: Likewise.
* gettext-runtime/src/printf-command.c: Likewise.
* gettext-runtime/src/printf_gettext.c: Likewise.
* gettext-runtime/src/printf_ngettext.c: Likewise.
* gnulib-local/lib/addext.c: Likewise.
* gnulib-local/lib/backupfile.c: Likewise.
* gnulib-local/lib/gettext.h: Likewise.
* gnulib-local/lib/markup.c: Likewise.
* gnulib-local/lib/xerror.c: Likewise.
* libtextstyle/gnulib-local/lib/file-ostream.oo.c: Likewise.
* libtextstyle/gnulib-local/lib/html-ostream.oo.c: Likewise.
* libtextstyle/gnulib-local/lib/html-styled-ostream.oo.c: Likewise.
* libtextstyle/gnulib-local/lib/iconv-ostream.oo.c: Likewise.
* libtextstyle/gnulib-local/lib/memory-ostream.oo.c: Likewise.
* libtextstyle/gnulib-local/lib/noop-styled-ostream.oo.c: Likewise.
* libtextstyle/gnulib-local/lib/ostream.oo.c: Likewise.
* libtextstyle/gnulib-local/lib/term-ostream.oo.c: Likewise.
* libtextstyle/gnulib-local/lib/term-styled-ostream.oo.c: Likewise.
* libtextstyle/lib/color.c: Likewise.
* libtextstyle/lib/misc.c: Likewise.
* gettext-tools/src/cldr-plural-exp.c: Likewise.
* gettext-tools/src/cldr-plurals.c: Likewise.
* gettext-tools/src/file-list.c: Likewise.
* gettext-tools/src/filter-quote.c: Likewise.
* gettext-tools/src/format-awk.c: Likewise.
* gettext-tools/src/format-boost.c: Likewise.
* gettext-tools/src/format-c++-brace.c: Likewise.
* gettext-tools/src/format-c.c: Likewise.
* gettext-tools/src/format-c-parse.h: Likewise.
* gettext-tools/src/format-csharp.c: Likewise.
* gettext-tools/src/format-d.c: Likewise.
* gettext-tools/src/format-elisp.c: Likewise.
* gettext-tools/src/format-gcc-internal.c: Likewise.
* gettext-tools/src/format-gfc-internal.c: Likewise.
* gettext-tools/src/format-go.c: Likewise.
* gettext-tools/src/format-java-printf.c: Likewise.
* gettext-tools/src/format-java.c: Likewise.
* gettext-tools/src/format-javascript.c: Likewise.
* gettext-tools/src/format-kde-kuit.c: Likewise.
* gettext-tools/src/format-kde.c: Likewise.
* gettext-tools/src/format-librep.c: Likewise.
* gettext-tools/src/format-lisp.c: Likewise.
* gettext-tools/src/format-lua.c: Likewise.
* gettext-tools/src/format-modula2.c: Likewise.
* gettext-tools/src/format-ocaml.c: Likewise.
* gettext-tools/src/format-pascal.c: Likewise.
* gettext-tools/src/format-perl-brace.c: Likewise.
* gettext-tools/src/format-perl.c: Likewise.
* gettext-tools/src/format-php.c: Likewise.
* gettext-tools/src/format-python-brace.c: Likewise.
* gettext-tools/src/format-python.c: Likewise.
* gettext-tools/src/format-qt-plural.c: Likewise.
* gettext-tools/src/format-qt.c: Likewise.
* gettext-tools/src/format-ruby.c: Likewise.
* gettext-tools/src/format-rust.c: Likewise.
* gettext-tools/src/format-scheme.c: Likewise.
* gettext-tools/src/format-sh-printf.c: Likewise.
* gettext-tools/src/format-sh.c: Likewise.
* gettext-tools/src/format-smalltalk.c: Likewise.
* gettext-tools/src/format-tcl.c: Likewise.
* gettext-tools/src/format.c: Likewise.
* gettext-tools/src/hostname.c: Likewise.
* gettext-tools/src/if-error.c: Likewise.
* gettext-tools/src/its.c: Likewise.
* gettext-tools/src/locating-rules.c: Likewise.
* gettext-tools/src/message.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/msgl-ascii.c: Likewise.
* gettext-tools/src/msgl-cat.c: Likewise.
* gettext-tools/src/msgl-charset.c: Likewise.
* gettext-tools/src/msgl-check.c: Likewise.
* gettext-tools/src/msgl-english.c: Likewise.
* gettext-tools/src/msgl-equal.c: Likewise.
* gettext-tools/src/msgl-fsearch.c: Likewise.
* gettext-tools/src/msgl-header.c: Likewise.
* gettext-tools/src/msgl-iconv.c: Likewise.
* gettext-tools/src/msgl-merge.c: Likewise.
* gettext-tools/src/msgl-ofn.c: Likewise.
* gettext-tools/src/msgmerge.c: Likewise.
* gettext-tools/src/msgunfmt.c: Likewise.
* gettext-tools/src/msguniq.c: Likewise.
* gettext-tools/src/open-catalog.c: Likewise.
* gettext-tools/src/plural-count.c: Likewise.
* gettext-tools/src/po-charset.c: Likewise.
* gettext-tools/src/po-time.c: Likewise.
* gettext-tools/src/read-catalog.c: Likewise.
* gettext-tools/src/read-catalog-abstract.c: Likewise.
* gettext-tools/src/read-catalog-file.c: Likewise.
* gettext-tools/src/read-catalog-special.c: Likewise.
* gettext-tools/src/read-csharp.c: Likewise.
* gettext-tools/src/read-desktop.c: Likewise.
* gettext-tools/src/read-java.c: Likewise.
* gettext-tools/src/read-mo.c: Likewise.
* gettext-tools/src/read-po-lex.c: Likewise.
* gettext-tools/src/read-properties.c: Likewise.
* gettext-tools/src/read-resources.c: Likewise.
* gettext-tools/src/read-stringtable.c: Likewise.
* gettext-tools/src/read-tcl.c: Likewise.
* gettext-tools/src/recode-sr-latin.c: Likewise.
* gettext-tools/src/search-path.c: Likewise.
* gettext-tools/src/str-list.c: Likewise.
* gettext-tools/src/urlget.c: Likewise.
* gettext-tools/src/write-catalog.c: Likewise.
* gettext-tools/src/write-csharp.c: Likewise.
* gettext-tools/src/write-desktop.c: Likewise.
* gettext-tools/src/write-java.c: Likewise.
* gettext-tools/src/write-mo.c: Likewise.
* gettext-tools/src/write-po.c: Likewise.
* gettext-tools/src/write-properties.c: Likewise.
* gettext-tools/src/write-qt.c: Likewise.
* gettext-tools/src/write-resources.c: Likewise.
* gettext-tools/src/write-stringtable.c: Likewise.
* gettext-tools/src/write-tcl.c: Likewise.
* gettext-tools/src/write-xml.c: Likewise.
* gettext-tools/src/x-awk.c: Likewise.
* gettext-tools/src/x-c.c: Likewise.
* gettext-tools/src/x-csharp.c: Likewise.
* gettext-tools/src/x-d.c: Likewise.
* gettext-tools/src/x-desktop.c: Likewise.
* gettext-tools/src/x-elisp.c: Likewise.
* gettext-tools/src/x-go.c: Likewise.
* gettext-tools/src/x-java.c: Likewise.
* gettext-tools/src/x-javascript.c: Likewise.
* gettext-tools/src/x-librep.c: Likewise.
* gettext-tools/src/x-lisp.c: Likewise.
* gettext-tools/src/x-lua.c: Likewise.
* gettext-tools/src/x-modula2.c: Likewise.
* gettext-tools/src/x-ocaml.c: Likewise.
* gettext-tools/src/x-perl.c: Likewise.
* gettext-tools/src/x-php.c: Likewise.
* gettext-tools/src/x-po.c: Likewise.
* gettext-tools/src/x-python.c: Likewise.
* gettext-tools/src/x-rst.c: Likewise.
* gettext-tools/src/x-ruby.c: Likewise.
* gettext-tools/src/x-rust.c: Likewise.
* gettext-tools/src/x-scheme.c: Likewise.
* gettext-tools/src/x-sh.c: Likewise.
* gettext-tools/src/x-smalltalk.c: Likewise.
* gettext-tools/src/x-tcl.c: Likewise.
* gettext-tools/src/x-typescript-impl.h: Likewise.
* gettext-tools/src/x-vala.c: Likewise.
* gettext-tools/src/x-ycp.c: Likewise.
* gettext-tools/src/xerror-handler.c: Likewise.
* gettext-tools/src/xg-arglist-callshape.c: Likewise.
* gettext-tools/src/xg-arglist-context.c: Likewise.
* gettext-tools/src/xg-arglist-parser.c: Likewise.
* gettext-tools/src/xg-check.c: Likewise.
* gettext-tools/src/xg-encoding.c: Likewise.
* gettext-tools/src/xg-message.c: Likewise.
* gettext-tools/src/xg-mixed-string.c: Likewise.
* gettext-tools/src/xgettext.c: Likewise.
2025-12-19 21:46:48 +01:00
Bruno Haible
a5c1a7f6c1 Modernize coding style: Avoid 'continue;' statements where possible.
* gnulib-local/lib/backupfile.c (max_backup_version): Use if/else instead of
'continue;'.
* gnulib-local/lib/markup.c (emit_start_element): Likewise.
2025-12-12 11:24:14 +01:00
Bruno Haible
a32db7a22e gettext.h: Avoid warning with gcc < 4.2.
Reported by Orgad Shaneh <orgads@gmail.com> in
<https://lists.gnu.org/archive/html/bug-gnulib/2025-09/msg00183.html>.

* gnulib-local/lib/gettext.h (gettext, dgettext, dcgettext): Don't use attribute
__gnu_inline__ with gcc < 4.2.
2025-09-14 18:37:36 +02:00
Bruno Haible
057cf901ba Use standard way of including <config.h>.
* gettext-runtime/src/*.c: Include <config.h> unconditionally.
* gettext-runtime/libasprintf/lib-asprintf.h: Likewise.
* libtextstyle/lib/color.c: Likewise.
* gnulib-local/lib/markup.c: Likewise.
* gettext-tools/src/*.y: Likewise.
* gettext-tools/src/*.c: Likewise.
* gettext-tools/libgrep/*.c: Likewise.
* gettext-tools/libgettextpo/*.c: Likewise.
* gettext-tools/tests/*.c: Likewise.
2025-08-10 17:34:20 +02:00
Bruno Haible
3dbf4a9b3b build: Simplify handling of exported symbols on Windows, part 2.
* gettext-tools/configure.ac (WINDOWS_MSVC): New conditional.
* gnulib-local/modules/gettext-tools-misc (Makefile.am): Re-add the
--export-all-symbols linker option.
* gettext-tools/src/Makefile.am (libgettextsrc_la_LDFLAGS): Re-add the
--export-all-symbols linker option.
2025-06-08 23:09:37 +02:00
Bruno Haible
3d38aeb7d9 build: Simplify handling of exported symbols on Windows.
* gnulib-local/modules/gettext-tools-misc (Makefile.am): Don't compile
gettextlib-exports.c. Don't add now-redundant --export-all-symbols linker
option. Don't use GETTEXTLIB_EXPORTS_FLAGS.
* gettext-tools/src/Makefile.am (libgettextsrc_la_SOURCES): Don't add
gettextsrc-exports.c.
(libgettextsrc_la_LDFLAGS): Don't add now-redundant --export-all-symbols linker
option.
(libgettextsrc_la_CPPFLAGS): Don't add $(GETTEXTLIB_EXPORTS_FLAGS).
* gettext-tools/configure.ac (GETTEXTLIB_EXPORTS_FLAGS): Remove variable.
* gettext-tools/woe32dll/gettextlib-exports.c: Remove file.
* gettext-tools/woe32dll/gettextsrc-exports.c: Remove file.
* gettext-tools/woe32dll/export.h: Update comments.
2025-06-07 04:06:16 +02:00
Bruno Haible
0ec47cb58f Avoid warnings from "gcc -Wextra".
Reported by Collin Funk in
<https://lists.gnu.org/archive/html/bug-gnulib/2025-05/msg00280.html>.

* gnulib-local/lib/gettext.h (gettext, dgettext, dcgettext): Silence
-Wbuiltin-declaration-mismatch warning.
2025-06-01 12:26:40 +02:00
Bruno Haible
1054fd3dac Fix compilation error on Solaris 11 (regr. 2025-05-28).
* gnulib-local/lib/gettext.h (gettext, dgettext, dcgettext): On Solaris, use
'char *' as return type.
2025-06-01 01:17:42 +02:00
Bruno Haible
d1050df577 build: Fix some crashes when building with --enable-shared on MSVC.
Reported by Kirill Makurin <maiddaisuki@outlook.com> in
<https://lists.gnu.org/archive/html/bug-gettext/2025-05/msg00087.html>.

* gnulib-local/lib/gl_carray_list.h.diff: New file.
* gnulib-local/lib/gl_hash_map.h.diff: New file.
* gnulib-local/lib/gl_hash_set.h.diff: New file.
* gnulib-local/lib/gl_linked_list.h.diff: New file.
* gnulib-local/Makefile.am (EXTRA_DIST): Add them.
2025-05-31 17:34:38 +02:00
Bruno Haible
087018bf48 Avoid gcc -Wformat-security warnings with --disable-nls.
Reported by Holger Hoffstätte <holger@applied-asynchrony.com> in
<https://lists.gnu.org/archive/html/bug-gnulib/2025-05/msg00225.html>.

* gnulib-local/lib/gettext.h (gettext, dgettext, dcgettext): With gcc in C mode,
define these as inline functions.
2025-05-28 16:50:19 +02:00
Bruno Haible
0387d77646 build: Take the mem-hash-map module from Gnulib now.
* gnulib-local/lib/mem-hash-map.h: Remove file.
* gnulib-local/lib/mem-hash-map.c: Remove file.
* gnulib-local/modules/mem-hash-map: Remove file.
* gnulib-local/Makefile.am (EXTRA_DIST): Remove them.
2025-04-30 13:26:57 +02:00
Bruno Haible
6e2d484a30 Update to the newest gnulib.
* gnulib-local/lib/hash.h.diff: Remove file.
* gnulib-local/lib/hash.c.diff: Remove file.
* gnulib-local/Makefile.am (EXTRA_DIST): Remove them.
* autogen.sh: Avoid module hashcode-string1.
2025-04-30 13:25:22 +02:00
Bruno Haible
de3fff8d99 Modula-2 support: Add the runtime library.
* gnulib-local/m4/modula2.m4: New file.
* gnulib-local/modules/modula2: New file.
* gnulib-local/Makefile.am (EXTRA_DIST): Add modula2.m4 and the 'modula2'
module.
* autogen.sh (GNULIB_MODULES_RUNTIME_OTHER): Add modula2, modula2comp-script.
* gettext-runtime/intl-modula2/Libintl.def.in: New file.
* gettext-runtime/intl-modula2/Libintl.mod: New file.
* gettext-runtime/intl-modula2/LibintlFromC.def: New file.
* gettext-runtime/intl-modula2/Makefile.am: New file.
* gettext-runtime/intl-modula2/HACKING: New file.
* gettext-runtime/configure.ac: Invoke gt_MODULA2_CHOICE, gt_MODULA2COMP.
Determine VALUE_OF_LC_* for each LC_* constant. Set the variable BUILDMODULA2
and the Automake conditional BUILD_MODULA2.
* gettext-runtime/Makefile.am (SUBDIRS): Add intl-modula2.
* NEWS: Mention libintl_m2.so.
* gettext-runtime/NEWS: Likewise.
* PACKAGING: Add the interface and binary for the libintl_m2 library.
* DEPENDENCIES: Mention the Modula-2 compiler and runtime.
2025-04-25 03:16:21 +02:00
Bruno Haible
6b4bbaeb52 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:33:39 +02:00
Bruno Haible
0bc6dfc727 D support: Add the runtime library.
* gnulib-local/m4/d.m4: New file.
* gnulib-local/modules/d: New file.
* gnulib-local/Makefile.am (EXTRA_DIST): Add d.m4 and the 'd' module.
* autogen.sh (GNULIB_MODULES_RUNTIME_OTHER): Add d, dcomp-script.
* gettext-runtime/intl-d/Makefile.am: New file.
* gettext-runtime/intl-d/gnu/libintl/package.d: New file.
* gettext-runtime/intl-d/gnu/libintl/libintl.d: New file.
* gettext-runtime/intl-d/gnu/libintl/internal/low.d: New file.
* gettext-runtime/configure.ac: Invoke gt_D_CHOICE, gt_DCOMP. Set the variable
BUILDD and the Automake conditional BUILD_D.
* gettext-runtime/Makefile.am (SUBDIRS): Add intl-d.
* NEWS: Mention libintl_d.a.
* gettext-runtime/NEWS: Likewise.
* PACKAGING: Add the sources and binary for the libintl_d library.
* DEPENDENCIES: Mention the D compiler and runtime.
2025-04-01 02:38:25 +02:00
Bruno Haible
c3ccc6d5e6 Simplify strtoul() invocation.
* gnulib-local/lib/markup.c: Don't include <errno.h>.
(unescape_string_inplace): Don't reset or test errno.
2025-03-21 22:37:12 +01:00
Bruno Haible
b8ab4f2bef Work around an strtoul() misfeature.
* gettext-runtime/src/ngettext.c: Include <ctype.h>.
(main): When parsing a nonnegative number, disallow leading whitespace and sign.
* gettext-tools/tests/tstngettext.c: Include <ctype.h>.
(worker_thread): When parsing a nonnegative number, disallow leading whitespace
and sign.
* gnulib-local/lib/markup.c (unescape_string_inplace): When parsing a numeric
character entity, disallow leading whitespace and sign, and report a too large
number as "non-permitted character" rather than "Numerical result out of range".
* gettext-tools/src/msgfmt.c (main): When parsing the '-a' argument, disallow
leading whitespace and sign and check whether the value is a power of 2.
* gettext-tools/src/read-stringtable.c: Include c-ctype.h.
(comment_line_end): When parsing a line number, disallow leading whitespace and
sign.
2025-03-21 19:44:33 +01:00
Bruno Haible
09e08b9a92 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.
2025-01-03 14:51:22 +01:00
Bruno Haible
d2fbe62c40 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.
2024-12-28 09:17:56 +01:00
Bruno Haible
f751661ebb libxml: Fix a gcc 13 -Wformat-truncation warning.
* gnulib-local/lib/libxml/uri.c (xmlURIEscape): Use a buffer of size 12, not 10.
2024-12-12 13:32:59 +01:00
Bruno Haible
88b123c76b 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.
2024-12-03 18:19: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
48667189c3 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>.
2024-11-24 15:16:06 +01:00
Bruno Haible
d2293e7a80 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.
2024-10-15 16:49:13 +02:00
Bruno Haible
9bc864c8a5 xgetcwd: Port to native Windows.
Use a variant of the gnulib module 'xgetcwd' instead of our own (older) one.

* gnulib-local/lib/xgetcwd.h: Remove file.
* gnulib-local/lib/xgetcwd.c: Remove file.
* gnulib-local/modules/xgetcwd: Remove file.
* gnulib-local/modules/xgetcwd.diff: New file.
* gnulib-local/Makefile.am (EXTRA_DIST): Update.
2024-08-21 09:18:22 +02:00
Bruno Haible
d65c188776 libgettextpo: Use a multithread-safe alternative to strerror().
* autogen.sh (GNULIB_MODULES_LIBGETTEXTPO): Add xstrerror.
* gnulib-local/lib/markup.c: Include xstrerror.h.
(unescape_string_inplace): Use xstrerror instead of strerror.
* gnulib-local/modules/markup (Depends-on): Add xstrerror.
* gettext-tools/src/read-po-lex.c: Include xstrerror.h.
(mbfile_getc, lex_getc): Use xstrerror instead of strerror.
* gettext-tools/src/read-properties.c: Include xstrerror.h.
(properties_parse): Use xstrerror instead of strerror.
* gettext-tools/src/read-stringtable.c: Include xstrerror.h.
(phase1_getc): Use xstrerror instead of strerror.
* gettext-tools/src/write-catalog.c: Include xstrerror.h.
(msgdomain_list_print): Use xstrerror instead of strerror.
2024-08-07 20:04:26 +02:00
Bruno Haible
c617c40eb0 build: Enable Automake's dependency tracking.
Quite often, after changing a struct defined in a .h file, I see "make check"
fail. After "make clean; make", "make check" passes again. This wastes my time.
Unlike 20 years ago, I don't want think about which .o files I need to erase
and rebuild. Build times are now much smaller than they were 20 years ago,
especially when configuring with --disable-shared and CFLAGS="-ggdb".

* gnulib-local/modules/gettext-runtime-misc (configure.ac): Don't augment
AUTOMAKE_OPTIONS.
* gettext-runtime/Makefile.am (AUTOMAKE_OPTIONS): Remove 'no-dependencies'.
* gettext-runtime/intl/Makefile.am (AUTOMAKE_OPTIONS): Likewise.
* gettext-runtime/libasprintf/Makefile.am (AUTOMAKE_OPTIONS): Likewise.
* gettext-runtime/src/Makefile.am (AUTOMAKE_OPTIONS): Likewise.
* gettext-runtime/tests/Makefile.am (AUTOMAKE_OPTIONS): Likewise.
* libtextstyle/Makefile.am (AUTOMAKE_OPTIONS): Likewise.
* libtextstyle/lib/Makefile.am (AUTOMAKE_OPTIONS): Likewise.
* gettext-tools/Makefile.am (AUTOMAKE_OPTIONS): Likewise.
* gettext-tools/gnulib-lib/Makefile.am (AUTOMAKE_OPTIONS): Likewise.
* gettext-tools/libgettextpo/Makefile.am (AUTOMAKE_OPTIONS): Likewise.
* gettext-tools/libgrep/Makefile.am (AUTOMAKE_OPTIONS): Likewise.
* gettext-tools/src/Makefile.am (AUTOMAKE_OPTIONS): Likewise.
* gettext-tools/system-tests/Makefile.am (AUTOMAKE_OPTIONS): Likewise.
* gettext-tools/tests/Makefile.am (AUTOMAKE_OPTIONS): Likewise.
* gettext-tools/tests/gnulib-lib/Makefile.am (AUTOMAKE_OPTIONS): Likewise.
* Makefile.am (AUTOMAKE_OPTIONS): Likewise.
2024-08-01 22:31:22 +02:00
Bruno Haible
fac254a9d7 Update after gnulib changed.
* gnulib-local/lib/exitfail.h.diff: Update.
2024-04-30 15:11:42 +02:00
Bruno Haible
42f3e1c0e3 Fix macro file 'serial' numbers for 'aclocal --install'.
* gettext-runtime/m4/gettext.m4: Make 'serial' effective.
* gettext-runtime/m4/glibc2.m4: Likewise.
* gettext-runtime/m4/nls.m4: Likewise.
* gettext-runtime/m4/po.m4: Likewise.
* gettext-runtime/m4/progtest.m4: Likewise.
* gettext-tools/m4/exported.m4: Likewise.
* gettext-tools/m4/hostname.m4: Likewise.
* gettext-tools/m4/locale-de.m4: Likewise.
* libtextstyle/gnulib-local/m4/libcroco.m4: Likewise.
* libtextstyle/gnulib-local/m4/libglib.m4: Likewise.
* libtextstyle/gnulib-local/m4/moo.m4: Likewise.
* libtextstyle/gnulib-local/m4/term-ostream.m4: Likewise.
* libtextstyle/m4/init-package-version.m4: Likewise.
* m4/fixautomake.m4: Likewise.
* m4/more-warnings.m4: Likewise.
* m4/woe32-dll.m4: Likewise.
* gnulib-local/m4/java.m4: Likewise.
* gnulib-local/m4/libxml.m4: Likewise.
* gnulib-local/m4/backupfile.m4: Likewise. Make sure to override the gnulib
version.
2024-04-04 16:15:29 +02:00
Bruno Haible
958b9797e5 Write #include <error.h>, not #include "error.h".
This is required by Gnulib, although <error.h> is not a POSIX or ISO C
standardized header file.

Reported by Collin Funk <collin.funk1@gmail.com> in
<https://lists.gnu.org/archive/html/bug-gettext/2024-02/msg00011.html>.

* gettext-runtime/src/envsubst.c: Use #include <error.h> instead of
* gettext-runtime/src/gettext.c: Likewise.
* gettext-runtime/src/ngettext.c: Likewise.
* gettext-tools/libgettextpo/gettext-po.c: Likewise.
* gettext-tools/libgrep/m-fgrep.c: Likewise.
* gettext-tools/libgrep/m-regex.c: Likewise.
* gettext-tools/src/file-list.c: Likewise.
* gettext-tools/src/format-scheme.c: Likewise.
* gettext-tools/src/format.h: Likewise.
* gettext-tools/src/hostname.c: Likewise.
* gettext-tools/src/if-error.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/msgl-cat.c: Likewise.
* gettext-tools/src/msgl-charset.c: Likewise.
* gettext-tools/src/msgmerge.c: Likewise.
* gettext-tools/src/msgunfmt.c: Likewise.
* gettext-tools/src/msguniq.c: Likewise.
* gettext-tools/src/po-error.c: Likewise.
* gettext-tools/src/po-gram-gen.y: Likewise.
* gettext-tools/src/po-lex.c: Likewise.
* gettext-tools/src/po-lex.h: Likewise.
* gettext-tools/src/po-xerror.c: Likewise.
* gettext-tools/src/read-catalog-abstract.c: Likewise.
* gettext-tools/src/read-csharp.c: Likewise.
* gettext-tools/src/read-desktop.c: Likewise.
* gettext-tools/src/read-java.c: Likewise.
* gettext-tools/src/read-mo.c: Likewise.
* gettext-tools/src/read-properties.c: Likewise.
* gettext-tools/src/read-resources.c: Likewise.
* gettext-tools/src/read-stringtable.c: Likewise.
* gettext-tools/src/read-tcl.c: Likewise.
* gettext-tools/src/recode-sr-latin.c: Likewise.
* gettext-tools/src/urlget.c: Likewise.
* gettext-tools/src/write-csharp.c: Likewise.
* gettext-tools/src/write-desktop.c: Likewise.
* gettext-tools/src/write-java.c: Likewise.
* gettext-tools/src/write-mo.c: Likewise.
* gettext-tools/src/write-properties.c: Likewise.
* gettext-tools/src/write-qt.c: Likewise.
* gettext-tools/src/write-resources.c: Likewise.
* gettext-tools/src/write-tcl.c: Likewise.
* gettext-tools/src/write-xml.c: Likewise.
* gettext-tools/src/x-awk.c: Likewise.
* gettext-tools/src/x-c.c: Likewise.
* gettext-tools/src/x-csharp.c: Likewise.
* gettext-tools/src/x-desktop.c: Likewise.
* gettext-tools/src/x-elisp.c: Likewise.
* gettext-tools/src/x-java.c: Likewise.
* gettext-tools/src/x-javascript.c: Likewise.
* gettext-tools/src/x-librep.c: Likewise.
* gettext-tools/src/x-lisp.c: Likewise.
* gettext-tools/src/x-lua.c: Likewise.
* gettext-tools/src/x-perl.c: Likewise.
* gettext-tools/src/x-php.c: Likewise.
* gettext-tools/src/x-python.c: Likewise.
* gettext-tools/src/x-rst.c: Likewise.
* gettext-tools/src/x-ruby.c: Likewise.
* gettext-tools/src/x-scheme.c: Likewise.
* gettext-tools/src/x-sh.c: Likewise.
* gettext-tools/src/x-smalltalk.c: Likewise.
* gettext-tools/src/x-tcl.c: Likewise.
* gettext-tools/src/x-vala.c: Likewise.
* gettext-tools/src/x-ycp.c: Likewise.
* gettext-tools/src/xg-mixed-string.c: Likewise.
* gettext-tools/src/xgettext.c: Likewise.
* gettext-tools/tests/tstgettext.c: Likewise.
* gettext-tools/tests/tstngettext.c: Likewise.
* gnulib-local/lib/closeout.c: Likewise.
* gnulib-local/lib/xerror.c: Likewise.
* libtextstyle/gnulib-local/lib/fd-ostream.oo.c: Likewise.
* libtextstyle/gnulib-local/lib/html-styled-ostream.oo.c: Likewise.
* libtextstyle/gnulib-local/lib/iconv-ostream.oo.c: Likewise.
* libtextstyle/gnulib-local/lib/memory-ostream.oo.c: Likewise.
* libtextstyle/gnulib-local/lib/term-ostream.oo.c: Likewise.
* gettext-tools/src/its.c: Likewise, and reorganize #includes.
* gettext-tools/src/locating-rule.c: Likewise.
2024-02-20 00:02:58 +01:00
Bruno Haible
ae83713510 intl: Revert "Add special hack for GCC" from 2022-06-21.
The added option --enable-host-shared has the same effect as the
libtool-provided option --with-pic, and gcc's Makefile.def actually
uses --with-pic, not --enable-host-shared.

* gettext-runtime/intl/configure.ac: Don't accept option --enable-host-shared.
Don't set PICFLAG.
* gettext-runtime/intl/Makefile.am (AM_CFLAGS): Remove the PICFLAG.
* gnulib-local/modules/gettext-runtime-intl-misc (Makefile.am): Remove the
PICFLAG from AM_CFLAGS.
2024-01-29 10:32:34 +01:00
Bruno Haible
f20aed4cb1 build: Fix a build issue on AIX.
How to reproduce:
$ cd gettext-20231111
$ ~/build-64-gcc --disable-shared
$ (cd build-64-gcc && gmake install)
$ cd ..
$ cd gettext-0.22.3
$ ~/build-64-gcc
=> Fails with "ERROR: Undefined symbol: .syntax_check_message_list"
because the link uses $PREFIX/lib/libgettextsrc.a, which is a non-shared
library that does not export 'syntax_check_message_list'.

* gettext-tools/configure.ac (INSTALL_PRIVATE_LIBRARIES): New conditional.
* gettext-tools/src/Makefile.am (noinst_LTLIBRARIES): Define as alternative to
lib_LTLIBRARIES.
(install-exec-clean): Remove rule.
* gettext-tools/gnulib-lib/Makefile.am (lib_LTLIBRARIES): Initialize.
* gnulib-local/modules/gettext-tools-misc (Makefile.am): Define
noinst_LTLIBRARIES as alternative to lib_LTLIBRARIES. Remove
'install-exec-clean' rule.
2023-11-17 12:43:35 +01:00
Bruno Haible
7ad43b102c libgettextpo: Remove static variable 'width.0'.
* gnulib-local/lib/xerror.h: Include <stddef.h>.
(multiline_warning, multiline_error): Change return type to size_t. Don't
suggest to pass a NULL prefix.
(multiline_append): New declaration.
* gnulib-local/lib/xerror.c (multiline_internal): New function, extracted from
multiline_warning.
(multiline_warning, multiline_error): Reject a NULL prefix. Call
multiline_internal.
(multiline_append): New function.
* gettext-tools/src/msgl-charset.c (compare_po_locale_charsets): Invoke
multiline_append instead of multiline_warning with NULL argument.
* gettext-tools/src/msgfmt.c (msgfmt_parse_debrief): Invoke multiline_append
instead of multiline_error with NULL argument.
* gettext-tools/src/po-error.c (void_multiline_warning, void_multiline_error):
New functions.
(po_multiline_warning, po_multiline_error): Use them as initializer.
* gettext-tools/libgettextpo/gettext-po.c (void_multiline_warning,
void_multiline_error): New functions.
(po_file_read_v2, po_file_write): Use them as defaults for po_multiline_warning,
po_multiline_error.
2023-11-11 16:48:16 +01:00
Bruno Haible
599c8ac2b5 build: Remove unused -I options from AM_CPPFLAGS.
* gnulib-local/modules/gettext-runtime-misc (Makefile.am): Remove
-I$(top_srcdir)/intl from AM_CPPFLAGS.
* gettext-runtime/tests/Makefile.am (AM_CPPFLAGS): Set to empty.
* gettext-tools/gnulib-lib/Makefile.am (AM_CPPFLAGS): Remove
-I$(top_srcdir)/../gettext-runtime/intl.
* gettext-tools/gnulib-tests/Makefile.am (AM_CPPFLAGS): Update comment.
* gettext-tools/src/Makefile.am (AM_CPPFLAGS): Add comment.
* gettext-tools/libgettextpo/Makefile.am (AM_CPPFLAGS): Likewise.
* libtextstyle/lib/Makefile.am (AM_CPPFLAGS): Remove -I$(top_srcdir).
2023-10-06 16:25:03 +02:00
Bruno Haible
3bd122eed1 Allow different --libtool options from multiple gnulib-tool invocations.
* gnulib-local/modules/libxml (Makefile.am): Don't test GL_COND_LIBTOOL, since
gnulib-tool already eliminates lib_LDFLAGS augmentations for non-libtool
libraries.
* libtextstyle/gnulib-local/modules/libcroco (Makefile.am): Likewise.
* libtextstyle/gnulib-local/modules/libglib (Makefile.am): Likewise.
2023-09-29 23:07:52 +02:00
Bruno Haible
b182c17096 intl: Don't compile relocatable.c any more.
The library does not need relocatable.h any more since today.

As a side effect, libintl.la gets installed again and "make uninstall" erases
the installed libintl.{a,so} again (regressions from 2021-06-20).
Reported by David Bohman <debohman@gmail.com> at
<https://savannah.gnu.org/bugs/?64536>.

* autogen.sh (GNULIB_MODULES_LIBINTL): Remove relocatable-lib-lgpl.
* gnulib-local/modules/gettext-runtime-intl-misc (Makefile.am): Don't augment
AM_CPPFLAGS.
* gettext-runtime/intl/configure.ac: Don't set enable_relocatable.
Don't define the C symbols relocate, relocate2.
* gettext-runtime/intl/compat.c: New file.
* gettext-runtime/intl/Makefile.am: Update comments.
(LIBINTLSOURCES): Add compat.c.
(compat.lo): New rule.
2023-09-13 23:12:21 +02:00
Bruno Haible
7fbc0e7125 mem-hash-map: Fix a left-over from 2001-11-20.
* gnulib-local/lib/mem-hash-map.h (hash_init): Fix comment.
* gnulib-local/lib/mem-hash-map.c (hash_init): Likewise.
* gettext-tools/src/msgl-fsearch.c (message_fuzzy_index_alloc): Don't test the
return value of hash_init.
2023-06-15 11:26:58 +02:00
Bruno Haible
635e16ad81 build: Take advantage of gcc warning options not included in -Wall.
* autogen.sh (GNULIB_MODULES_RUNTIME_OTHER, GNULIB_MODULES_LIBINTL,
GNULIB_MODULES_LIBASPRINTF, GNULIB_MODULES_TOOLS_OTHER): Add manywarnings.
* m4/more-warnings.m4: New file.

* libtextstyle/autogen.sh (GNULIB_MODULES): Add manywarnings.
Copy also more-warnings.m4.
* gnulib-local/modules/libxml (Makefile.am): New variable libxml_rpl_la_CFLAGS.
* libtextstyle/gnulib-local/modules/libcroco (Makefile.am): New variable
libcroco_rpl_la_CFLAGS.
* libtextstyle/gnulib-local/modules/libglib (Makefile.am): New variable
libglib_rpl_la_CFLAGS.
* libtextstyle/configure.ac: Invoke gt_MORE_WARNINGS, gl_CC_INHIBIT_WARNINGS.
* libtextstyle/lib/Makefile.am (AM_CFLAGS): Set to WARN_CFLAGS.
(config.h): Do the compilations with GL_CFLAG_INHIBIT_WARNINGS.

* gettext-runtime/configure.ac: Invoke gt_MORE_WARNINGS.
* gettext-runtime/src/Makefile.am (AM_CFLAGS): Set to WARN_CFLAGS.
* gnulib-local/modules/gettext-runtime-misc (Makefile.am): Add WARN_CFLAGS to
AM_CFLAGS.

* gettext-runtime/intl/configure.ac: Invoke gt_MORE_WARNINGS.
* gettext-runtime/intl/Makefile.am (AM_CFLAGS): Add WARN_CFLAGS.
* gnulib-local/modules/gettext-runtime-intl-misc (Makefile.am): Add WARN_CFLAGS
to AM_CFLAGS.

* gettext-runtime/libasprintf/configure.ac: Invoke gt_MORE_WARNINGS.
* gettext-runtime/libasprintf/Makefile.am (AM_CFLAGS): Set to WARN_CFLAGS.

* gettext-tools/configure.ac: Invoke gt_MORE_WARNINGS, gl_CC_INHIBIT_WARNINGS.
* gettext-tools/gnulib-lib/Makefile.am (AM_CFLAGS): Set to WARN_CFLAGS.
* gettext-tools/libgrep/Makefile.am (AM_CFLAGS): Set to WARN_CFLAGS.
* gettext-tools/src/Makefile.am (AM_CFLAGS): Set to WARN_CFLAGS.
* gettext-tools/libgettextpo/Makefile.am (AM_CFLAGS): Set to WARN_CFLAGS.
(config.h): Do the compilations with GL_CFLAG_INHIBIT_WARNINGS.
2023-06-04 20:04:25 +02:00
Bruno Haible
fb24c965db libxml: Fix possible null pointer access (regression 2023-05-26).
Pinpointed by gcc 13 warning:
warning: dereference of NULL ‘clone’ [CWE-476] [-Wanalyzer-null-dereference]

* gnulib-local/lib/libxml/tree.c (xmlDOMWrapCloneNode): Assign clone from
cloneAttr.
2023-06-03 01:21:57 +02:00
Bruno Haible
36cc99cdc6 libxml: Fix compilation error with gcc < 10 (regression 2023-05-26).
* gnulib-local/lib/libxml/tree.c (xmlDOMWrapCloneNode): Add braces.
2023-05-29 11:41:07 +02:00
Bruno Haible
a53330559c libxml: Silence several gcc warnings.
* gnulib-local/lib/libxml/SAX2.c (xmlNsErrMsg): Mark as possibly unused.
(xmlSAX2AttributeDecl, xmlSAX2ElementDecl, xmlSAX2NotationDecl): Mark a local
variable as possibly unused.
* gnulib-local/lib/libxml/encoding.c (xmlCharEncCloseFunc): Likewise.
* gnulib-local/lib/libxml/trionan.c (compute_minus_zerod, minus_zerod): Mark as
possibly unused.
* gnulib-local/lib/libxml/tree.c (xmlDOMWrapCloneNode): Use a differently typed
variable cloneAttr.
2023-05-27 00:26:13 +02:00
Bruno Haible
a3a927cba0 Update after gnulib changed.
* gettext-runtime/intl/configure.ac: Test also REPLACE_TWALK.
* gettext-tools/src/po-xerror.c: Don't include "getprogname.h".
* gnulib-local/lib/xerror.c: Likewise.
* gnulib-local/lib/error-progname.c: Include <stdlib.h> instead of
getprogname.h.
* gnulib-local/lib/error.in.h.diff: Renamed from gnulib-local/lib/error.h.diff.
* gnulib-local/Makefile.am (EXTRA_DIST): Update.
* gnulib-local/modules/gettext-tools-misc (Makefile.am): Update comment.
2023-02-11 11:32:45 +01:00
Bruno Haible
fdc2bd236a intl: Add special hack for GCC.
Based on the commit
https://gcc.gnu.org/git/gitweb.cgi?p=gcc.git;h=4a1493f0603262a7dc1114d9827353e9810e63dc
by Jakub Jelinek <jakub@redhat.com>.

* gettext-runtime/intl/configure.ac: Accept option --enable-host-shared.
Set PICFLAG.
* gettext-runtime/intl/Makefile.am (AM_CFLAGS): Add the PICFLAG.
* gnulib-local/modules/gettext-runtime-intl-misc (Makefile.am): Add the PICFLAG
to AM_CFLAGS.
2022-06-21 03:46:34 +02:00
Bruno Haible
dbcae010af Update to the newest gnulib.
* gnulib-local/lib/localename.c.diff: Remove file.
* gnulib-local/lib/localename-table.h.diff: Remove file.
* gnulib-local/lib/tsearch.c.diff: Remove file.
* gnulib-local/modules/tsearch.diff: Remove file.
* gnulib-local/Makefile.am (EXTRA_DIST): Remove them.
* libtextstyle/configure.ac: Update for changed naming convention of module
indicator variables.
2021-06-20 16:33:11 +02:00
Bruno Haible
184ac90c97 build: Move most of intl.m4 into gettext-runtime/intl/configure.ac.
* gettext-runtime/m4/gettext.m4 (AM_GNU_GETTEXT): Don't invoke AM_INTL_SUBDIR.
* gettext-runtime/m4/intl.m4 (AM_INTL_SUBDIR, gt_GL_ATTRIBUTE): Remove macros.
(gt_INTL_SUBDIR_CORE): Test for uselocale.
* gnulib-local/modules/gettext-runtime-intl-misc (configure.ac): Ensure
LOCALENAME_ENHANCE_LOCALE_FUNCS initialization.
* autogen.sh (GNULIB_MODULES_LIBINTL): Add lib-symbol-visibility, localename.
* gettext-runtime/intl/configure.ac: Set WINDRES. Invoke gt_INTL_SUBDIR_CORE.
Set HAVE_POSIX_PRINTF, HAVE_ASPRINTF, HAVE_SNPRINTF, HAVE_WPRINTF,
HAVE_NEWLOCALE. Test for features.h, _snprintf, _snwprintf.
Set ENHANCE_LOCALE_FUNCS, WOE32DLL.
2021-06-20 03:43:32 +02:00
Bruno Haible
a80b902101 build: Simplify the use of gnulib in libintl.
* gnulib-local/lib/localename-table.h.diff: New file.
* gnulib-local/lib/localename.c.diff: New file.
* gnulib-local/lib/tsearch.c.diff: New file.
* gnulib-local/modules/gettext-runtime-intl-misc: New file, based on
gettext-runtime/intl/Makefile.am.
* gnulib-local/modules/tsearch.diff: New file.
* gnulib-local/Makefile.am (EXTRA_DIST): Add them.
* autogen.sh (GNULIB_MODULES_LIBINTL, GNULIB_SETLOCALE_DEPENDENCIES): New
variables.
Invoke gnulib-tool for the gettext-runtime/intl/ directory.
Update 'aclocal' invocation for the gettext-runtime/intl/ directory.
* gettext-runtime/intl/configure.ac (enable_relocatable): Set to yes always.
Invoke gl_EARLY and gl_INIT. Don't invoke gl_USE_SYSTEM_EXTENSIONS,
AM_PROG_CC_C_O, gl_COMMON, gl_RELOCATABLE_LIBRARY explicitly.
Define IN_LIBINTL through config.h.
Rename __libc* macros and symbols through config.h.
Invoke AC_CONFIG_FILES for gnulib-lib/Makefile.
* gettext-runtime/m4/intl.m4 (AM_INTL_SUBDIR): Don't rename __libc* macros and
symbols here.
(gt_INTL_SUBDIR_CORE): Don't test for tsearch.
* gettext-runtime/intl/arg-nonnull.h: Remove file.
* gettext-runtime/intl/attribute.h: Remove file.
* gettext-runtime/intl/filename.h: Remove file.
* gettext-runtime/intl/flexmember.h: Remove file.
* gettext-runtime/intl/localcharset.h: Remove file.
* gettext-runtime/intl/localcharset.c: Remove file.
* gettext-runtime/intl/localename.c: Remove file.
* gettext-runtime/intl/localename-table.in.h: Remove file.
* gettext-runtime/intl/localename-table.c: Remove file.
* gettext-runtime/intl/lock.h: Remove file.
* gettext-runtime/intl/lock.c: Remove file.
* gettext-runtime/intl/printf-args.h: Remove file.
* gettext-runtime/intl/printf-args.c: Remove file.
* gettext-runtime/intl/printf-parse.h: Remove file.
* gettext-runtime/intl/printf-parse.c: Remove file.
* gettext-runtime/intl/relocatable.h: Remove file.
* gettext-runtime/intl/relocatable.c: Remove file.
* gettext-runtime/intl/setlocale-lock.c: Remove file.
* gettext-runtime/intl/setlocale_null.h: Remove file.
* gettext-runtime/intl/setlocale_null.c: Remove file.
* gettext-runtime/intl/thread-optim.h: Remove file.
* gettext-runtime/intl/threadlib.c: Remove file.
* gettext-runtime/intl/tsearch.h: Remove file.
* gettext-runtime/intl/tsearch.c: Remove file.
* gettext-runtime/intl/vasnprintf.c: Remove file.
* gettext-runtime/intl/verify.h: Remove file.
* gettext-runtime/intl/windows-initguard.h: Remove file.
* gettext-runtime/intl/windows-mutex.h: Remove file.
* gettext-runtime/intl/windows-mutex.c: Remove file.
* gettext-runtime/intl/windows-once.h: Remove file.
* gettext-runtime/intl/windows-once.c: Remove file.
* gettext-runtime/intl/windows-recmutex.h: Remove file.
* gettext-runtime/intl/windows-recmutex.c: Remove file.
* gettext-runtime/intl/windows-rwlock.h: Remove file.
* gettext-runtime/intl/windows-rwlock.c: Remove file.
* gettext-runtime/intl/xsize.h: Remove file.
* gettext-runtime/intl/xsize.c: Remove file.
* gettext-runtime/intl/Makefile.am (ACLOCAL_AMFLAGS): Reference gnulib-m4 in
this directory.
(SUBDIRS): Add gnulib-lib.
(AM_CPPFLAGS): Add -I statements for the gnulib-lib directory. Don't define
BUILDING_DLL, IN_LIBINTL here. Don't parametrize the 'relocatable-lib-lgpl'
module here.
(EXTRA_DIST, LIBINTLSOURCES): Remove the said files.
(localename-table.h): Remove rule.
(*.lo): Remove rules and dependencies for the said files.
(libintl_la_LIBADD, libintl_la_DEPENDENCIES, libgnuintl_la_LIBADD,
libgnuintl_la_DEPENDENCIES): Add gnulib-lib/libgnu.la.
(OTHER_LDFLAGS): Don't export _libintl_* symbols.
(EXTRA_DIST): Add gnulib-m4/gnulib-cache.m4.
* gettext-runtime/intl/gettextP.h: Include glthread/lock.h, not lock.h.
(gl_locale_name_canonicalize, gl_locale_name_from_win32_LANGID,
gl_locale_name_from_win32_LCID, gl_locale_name_thread_unsafe,
gl_locale_name_thread, gl_locale_name_posix, gl_locale_name_environ,
gl_locale_name_default, gl_locale_name): Remove macros.
(_nl_locale_name_posix, _nl_locale_name_environ, _nl_locale_name_default):
Remove declarations.
* gettext-runtime/intl/plural-exp.h (FREE_EXPRESSION, PLURAL_PARSE,
GERMANIC_PLURAL, EXTRACT_PLURAL_EXPRESSION): Prefix these libintl-private
symbols with _libintl_, not libintl_.
* gettext-runtime/intl/bindtextdom.c: Include glthread/lock.h, not lock.h.
* gettext-runtime/intl/finddomain.c: Likewise.
* gettext-runtime/intl/loadmsgcat.c: Likewise.
* gettext-runtime/intl/localealias.c: Likewise.
* gettext-runtime/intl/log.c: Likewise.
* gettext-runtime/intl/textdomain.c: Likewise.
* gettext-runtime/intl/dcigettext.c: Include localename.h. Include
glthread/lock.h, not lock.h.
Include <search.h> always; don't include tsearch.c.
* gettext-runtime/intl/printf.c: Don't define libintl_vasprintf here. Instead,
use _libintl_vasprintf from gnulib-lib/vasnprintf.c. Define _libintl_vasnwprintf
instead of libintl_vasnwprintf.
* gettext-runtime/intl/setlocale.c: Include <errno.h>, localename.h.
(gl_locale_name_canonicalize): New declaration.
* Makefile.am (distcheck-hook): Remove the file comparisons for files in
gettext-runtime/intl/.
2021-06-20 03:43:17 +02:00
Bruno Haible
28e242eaf8 libtextstyle: Fix compilation error with cc on Solaris 10.
* gnulib-local/lib/libxml/timsort.h: Use 'inline' instead of '__inline'.
2021-06-20 03:41:26 +02:00
Bruno Haible
14b07598f1 Use xalloc module from gnulib.
* gnulib-local/lib/xalloc.h: Remove file.
* gnulib-local/lib/xmalloc.c: Remove file.
* gnulib-local/lib/xstrdup.c: Remove file.
* gnulib-local/modules/xalloc: Remove file.
* gnulib-local/modules/xalloc-die: Remove file.
* gnulib-local/Makefile.am (EXTRA_DIST): Remove them.
* libtextstyle/lib/misc.c (xmalloc_exit_failure): Remove declaration.
(libtextstyle_set_failure_exit_code): Don't set xmalloc_exit_failure.
2021-04-04 20:59:16 +02:00
Bruno Haible
ea282a3764 Update after gnulib changed on 2017-06-17.
* gnulib-local/lib/diffseq.h.diff: Remove file.
* gnulib-local/Makefile.am (EXTRA_DIST): Remove it.
2021-04-04 20:48:16 +02:00