]> git.ipfire.org Git - thirdparty/gettext.git/log
thirdparty/gettext.git
9 years agomsgfmt: Support XML file merging wip/ueno/its2
Daiki Ueno [Mon, 5 Oct 2015 08:18:41 +0000 (17:18 +0900)] 
msgfmt: Support XML file merging

* gettext-tools/src/Makefile.am (noinst_HEADERS): Add write-xml.h.
(msgfmt_SOURCES): Add write-xml.c.
* gettext-tools/src/its.c (its_merge_context_merge_node): New function.
(its_merge_context_merge): New function.
(its_merge_context_alloc): New function.
(its_merge_context_write): New function.
(its_merge_context_free): New function.
* gettext-tools/src/its.h (its_merge_context_ty): New type.
* gettext-tools/src/msgfmt.c: Include "its.h", "locating-rule.h", and
"write-xml.h".
(SIZEOF): New macro.
(xml_mode, xml_locale_name, xml_template_name, xml_base_directory,
xml_language, xml_its_rules): New variable.
(long_options): Add --language and --xml.
(main): Handle new options.
(usage): Document new options.
(msgfmt_xml_bulk): New function.
* gettext-tools/src/write-xml.c: New file.
* gettext-tools/src/write-xml.h: New file.
* gettext-tools/doc/gettext.texi: Mention XML file merging use-case.
* gettext-tools/doc/msgfmt.texi: Mention --xml option.
* gettext-tools/tests/msgfmt-xml-1: New file.
* gettext-tools/tests/msgfmt-xml-2: New file.
* gettext-tools/tests/Makefile.am (TESTS): Add new tests.

9 years agoxgettext: Rewrite Glade scanner in ITS
Daiki Ueno [Fri, 2 Oct 2015 03:44:04 +0000 (12:44 +0900)] 
xgettext: Rewrite Glade scanner in ITS

* gettext-tools/its/glade.loc: New file.
* gettext-tools/its/glade1.its: New file.
* gettext-tools/its/glade2.its: New file.
* gettext-tools/its/gtkbuilder.its: New file.
* gettext-tools/its/Makefile.am (dist_its_DATA): Add new files.
* gettext-tools/src/Makefile.am (xgettext_SOURCES): Remove x-glade.c.
* gettext-tools/src/x-glade.c: Remove.
* gettext-tools/src/x-glade.h (EXTENSIONS_GLADE): Set language field to
NULL.
(SCANNERS_GLADE): Set func field to NULL.
* gettext-tools/po/POTFILES.in: Remove x-glade.c

9 years agoxgettext: Rewrite GSettings scanner in ITS
Daiki Ueno [Fri, 2 Oct 2015 03:38:14 +0000 (12:38 +0900)] 
xgettext: Rewrite GSettings scanner in ITS

* gettext-tools/its/gsettings.its: New file.
* gettext-tools/its/gsettings.loc: New file.
* gettext-tools/its/Makefile.am (dist_its_DATA): Add new files.
* gettext-tools/src/Makefile.am (xgettext_SOURCES): Remove x-gsettings.c.
* gettext-tools/src/x-gsettings.c: Remove.
* gettext-tools/src/x-gsettings.h (EXTENSIONS_GSETTINGS): Set language
field to NULL.
(SCANNER_GSETTINGS): Set func field to NULL.

9 years agoxgettext: Rewrite AppData scanner in ITS
Daiki Ueno [Fri, 2 Oct 2015 02:38:29 +0000 (11:38 +0900)] 
xgettext: Rewrite AppData scanner in ITS

* gettext-tools/its/appdata.loc: New file.
* gettext-tools/its/appdata.its: New file.
* gettext-tools/its/Makefile.am (dist_its_DATA): Add new files.
* gettext-tools/src/Makefile.am (xgettext_SOURCES): Remove x-appdata.c.
* gettext-tools/src/x-appdata.c: Remove.
* gettext-tools/src/x-appdata.h (EXTENSIONS_APPDATA): Set language
field to NULL.
(SCANNERS_APPDATA): Set func field to NULL.

9 years agoxgettext: Add support for generic XML files
Daiki Ueno [Wed, 30 Sep 2015 06:40:26 +0000 (15:40 +0900)] 
xgettext: Add support for generic XML files

* autogen.sh (GNULIB_MODULES_TOOLS_FOR_SRC): Add trim module.
* gettext-tools/src/locating-rule.h: New file.
* gettext-tools/src/locating-rule.c: New file.
* gettext-tools/src/its.h: New file.
* gettext-tools/src/its.c: New file.
* gettext-tools/src/xgettext.c: Include "locating-rule.h" and "its.h".
(its_locators): New variable.
(long_options): Add --itstool option.
(extract_from_xml_file): New function.
(main): Handle --itstool option.
(usage): Document --itstool option.
* gettext-tools/src/Makefile.am (noinst_HEADERS): Add locating-rule.h
and its.h.
(libgettextsrc_la_CPPFLAGS): Add $(INCXML).
(libgettextsrc_la_SOURCES): Add locating-rule.c and its.c.
* gettext-tools/Makefile.am (SUBDIRS): Add its directory.
* gettext-tools/configure.ac: Output its/Makefile.
* gettext-tools/doc/gettext.texi (Preparing ITS Rules): New section.
* gettext-tools/doc/xgettext.texi: Mention --itstool option.
* gettext-tools/tests/Makefile.am (TESTS): Add new tests.
* gettext-tools/tests/xgettext-its-1: New file
* gettext-tools/tests/init-env.in: Set GETTEXTDATADIR for ITS tests.

9 years agobuild: Generate ChangeLogs for intl and po
Daiki Ueno [Thu, 15 Oct 2015 01:18:03 +0000 (10:18 +0900)] 
build: Generate ChangeLogs for intl and po

* autogen.sh: Create empty ChangeLog files under intl and po.
* Makefile.am (gen-ChangeLogs): Rename from gen-ChangeLog.  Generate
ChangeLog files for */intl and */po as well as top-level.
* gettext-runtime/intl/ChangeLog.0: Rename from ChangeLog.
* gettext-runtime/po/ChangeLog.0: Rename from ChangeLog.
* gettext-tools/po/ChangeLog.1: Rename from ChangeLog.

9 years agobuild: Distribute old ChangeLogs in tarball
Daiki Ueno [Thu, 15 Oct 2015 00:55:27 +0000 (09:55 +0900)] 
build: Distribute old ChangeLogs in tarball

* Makefile.am (changelog_etc): Remove non-existent ChangeLog files
under intl and po.
(EXTRA_DIST): Add $(changelog_etc).

9 years agotests: use check_PROGRAMS
Mike Frysinger [Mon, 12 Oct 2015 21:57:27 +0000 (17:57 -0400)] 
tests: use check_PROGRAMS

The noinst_xxx targets will be compiled all the time.  For test programs,
the check_xxx targets make more sense as they'll only be built when the
user runs `make check`.

* gettext-runtime/tests/Makefile.am (noinst_PROGRAMS): Rename to ...
(check_PROGRAMS): ... this.

9 years agointl/localename: control langinfo.h inclusion
Mike Frysinger [Mon, 12 Oct 2015 22:00:43 +0000 (18:00 -0400)] 
intl/localename: control langinfo.h inclusion

This header is only used to work around buggy behavior in old versions
of glibc, so do not include it all the time.  Otherwise we get build
failures on systems that do not provide langinfo.h.

* gettext-runtime/intl/localename.c: Wrap langinfo.h include with same
ifdefs used in the source later on.

9 years agobuild: Remove ChangeLogs
Daiki Ueno [Wed, 14 Oct 2015 01:20:34 +0000 (10:20 +0900)] 
build: Remove ChangeLogs

Generate ChangeLog files at "make dist" time, using
gitlog-to-changelog.  We still keep ChangeLog files under "po" and
"intl" directories, since those files are copied as part of gettext
infrastructure and it is still meaningful to have them there.
* .gitignore: Add ChangeLog files.
* Admin/release-steps: Remove mention of running update-changelog
script.
* Admin/update-changelog: Remove.
* Makefile.am (gen-ChangeLog): New rule.
* autogen.sh: Copy gitlog-to-changelog from gnulib.  Create empty
ChangeLog files to suppress Automake errors.
* gettext-tools/doc/Makefile.am (EXTRA_DIST): Remove ChangeLog.0.
* gettext-tools/man/Makefile.am (EXTRA_DIST): Remove ChangeLog.0.
* gettext-tools/src/Makefile.am (EXTRA_DIST): Remove ChangeLog.0.
* gettext-tools/tests/Makefile.am (EXTRA_DIST): Remove ChangeLog.0.
* gnulib-local/Makefile.am (EXTRA_DIST): Remove ChangeLog files.
* */ChangeLog: Rename to ChangeLog.0 or ChangeLog.1.
* HACKING: Add brief guideline to submit patches.

9 years agohello-c-gnome3: Simplify the Desktop Entry rules
Daiki Ueno [Thu, 8 Oct 2015 05:49:30 +0000 (14:49 +0900)] 
hello-c-gnome3: Simplify the Desktop Entry rules

* hello-c-gnome3/Makefile.am (hello.desktop.in): Don't use a
temporary file.
(hello.desktop): Likewise.

9 years agodoc: Don't expose generated version
Daiki Ueno [Tue, 6 Oct 2015 07:27:40 +0000 (16:27 +0900)] 
doc: Don't expose generated version

* gettext-tools/doc/Makefile.am ($(srcdir)/stamp-vti): Set
ARCHIVE-VERSION, derived from $(ARCHIVE_VERSION) in version.texi.
* gettext-tools/doc/gettext.texi (Files under Version Control): Refer to
ARCHIVE-VERSION, instead of VERSION.
* gettext-tools/doc/autopoint.texi: Refer to ARCHIVE-VERSION, instead of VERSION.

9 years agomsgfmt: More refactoring on --desktop
Daiki Ueno [Tue, 6 Oct 2015 03:35:15 +0000 (12:35 +0900)] 
msgfmt: More refactoring on --desktop

* msgfmt.c (msgfmt_desktop_bulk): Distinguish the number of errors
and the exit status.
* write-desktop.c (msgdomain_write_desktop_bulk): Don't
immediately exit when fwriteerror() returns error.

9 years agomsgfmt: Refactor --desktop handling
Daiki Ueno [Mon, 5 Oct 2015 07:33:31 +0000 (16:33 +0900)] 
msgfmt: Refactor --desktop handling

* gettext-tools/src/msgfmt.c (get_languages): Avoid redundant memory
allocation.
(msgfmt_operand_list_init): New function.
(msgfmt_operand_list_destroy): New function.
(msgfmt_operand_list_append): New function.
(msgfmt_operand_list_add_directory): New function.
(msgfmt_desktop_bulk): Rewrite using msgfmt_operand_list_ty.
* gettext-tools/src/msgfmt.h (msgfmt_operand_ty,
msgfmt_operand_list_ty): New type.
* gettext-tools/src/write-desktop.c (msgdomain_write_desktop_bulk):
Simplify using msgfmt_operand_list_ty.
(msgdomain_write_desktop): Simplify using msgfmt_operand_list_ty.
* gettext-tools/src/write-desktop.h (msgdomain_write_desktop_bulk):
Take OPERANDS as the first argument, instead of LANGUAGES and MESSAGES.

9 years agosentence: Avoid compiler warnings
Daiki Ueno [Tue, 6 Oct 2015 00:59:32 +0000 (09:59 +0900)] 
sentence: Avoid compiler warnings

* gettext-tools/src/sentence.c (sentence_end): Assign initial values to
local variables to suppress compiler warnings with
-Wmaybe-uninitialized.  This shouldn't address any real bug.

9 years agobuild: Fix the last commit
Daiki Ueno [Thu, 1 Oct 2015 09:08:29 +0000 (18:08 +0900)] 
build: Fix the last commit

9 years agobuild: Fix the last commit
Daiki Ueno [Wed, 30 Sep 2015 09:09:42 +0000 (18:09 +0900)] 
build: Fix the last commit

9 years agobuild: Avoid file name length limitation of tar
Daiki Ueno [Wed, 30 Sep 2015 08:33:13 +0000 (17:33 +0900)] 
build: Avoid file name length limitation of tar

"csharpdoc" is a bit too long to accommodate long file names with
the version returned from git-version-gen:
  tar: gettext-0.19.6.4-1e74e4/.../csharpdoc/...: file name is too
    long (max 99); not dumped
* gettext-runtime/intl-csharp/doc: Rename from csharpdoc.
* gettext-runtime/intl-cshap/Makefile.am (doc, DOC_FILES): Adjust to the
directory name change.

9 years agobuild: Regenerate ABOUT-NLS
Daiki Ueno [Wed, 30 Sep 2015 06:36:48 +0000 (15:36 +0900)] 
build: Regenerate ABOUT-NLS

9 years agobuild: Fix ABOUT-NLS generation with newer Texinfo
Daiki Ueno [Wed, 30 Sep 2015 06:33:32 +0000 (15:33 +0900)] 
build: Fix ABOUT-NLS generation with newer Texinfo

9 years agoRelease 0.19.6 v0.19.6
Daiki Ueno [Fri, 11 Sep 2015 03:03:07 +0000 (12:03 +0900)] 
Release 0.19.6

9 years agoUpdate translations
Daiki Ueno [Fri, 11 Sep 2015 03:01:48 +0000 (12:01 +0900)] 
Update translations

9 years agoPrepare for 0.19.6
Daiki Ueno [Fri, 11 Sep 2015 01:27:41 +0000 (10:27 +0900)] 
Prepare for 0.19.6

9 years agodoc: Regenerate translation matrix
Daiki Ueno [Fri, 11 Sep 2015 01:18:26 +0000 (10:18 +0900)] 
doc: Regenerate translation matrix

* gettext-runtime/ABOUT-NLS: Regenerate for 0.19.6.
* gettext-runtime/doc/matrix.texi: Regenerate for 0.19.6.

9 years agogettext-tools: Remove ABOUT-NLS from repository
Daiki Ueno [Fri, 11 Sep 2015 01:42:49 +0000 (10:42 +0900)] 
gettext-tools: Remove ABOUT-NLS from repository

9 years agoUpdate gnulib
Daiki Ueno [Fri, 11 Sep 2015 00:56:08 +0000 (09:56 +0900)] 
Update gnulib

9 years agoRevert "xgettext: Allow multiple --copyright-holder"
Daiki Ueno [Thu, 10 Sep 2015 07:52:09 +0000 (16:52 +0900)] 
Revert "xgettext: Allow multiple --copyright-holder"

This reverts commit 15363cca838ff1d69f6e3bfbb47ecfe90c0f5000.

Now that po/Makefile.in.in supports custom header for POT files, it is
not meaningful to add a special case for multiple copyright holders.

9 years agoNEWS: Fix wording
Daiki Ueno [Wed, 2 Sep 2015 09:42:00 +0000 (18:42 +0900)] 
NEWS: Fix wording

9 years agoNEWS: Add 0.19.6 changes
Daiki Ueno [Tue, 1 Sep 2015 02:44:41 +0000 (11:44 +0900)] 
NEWS: Add 0.19.6 changes

9 years agopo: Support reading header comments from file
Daiki Ueno [Tue, 1 Sep 2015 02:18:17 +0000 (11:18 +0900)] 
po: Support reading header comments from file

* Makefile.in.in ($(DOMAIN).pot-update): Replace header comment
with the content of $(DOMAIN).pot-header, if exists.

9 years agointl: fix memory leak in _nl_load_domain
Paul Eggert [Wed, 26 Aug 2015 14:31:37 +0000 (07:31 -0700)] 
intl: fix memory leak in _nl_load_domain

* loadmsgcat.c (_nl_load_domain):
Free data after a read failure.  See:
https://sourceware.org/bugzilla/show_bug.cgi?id=18871

9 years agoxgettext: Replace PACKAGE placeholder if possible
Daiki Ueno [Mon, 24 Aug 2015 08:30:42 +0000 (17:30 +0900)] 
xgettext: Replace PACKAGE placeholder if possible

* xgettext.c (construct_header): Replace PACKAGE placeholder in
the header comment.

9 years agoxgettext: Add support for AppData XML files
Philip Withnall [Thu, 11 Jun 2015 18:11:42 +0000 (19:11 +0100)] 
xgettext: Add support for AppData XML files

AppData files are used to describe an application for package
management, and are described here:

http://people.freedesktop.org/~hughsient/appdata/

They may also currently be translated using intltool or itstool:

http://people.freedesktop.org/~hughsient/appdata/#translation

9 years agotests: Use check_PROGRAMS
Daiki Ueno [Fri, 21 Aug 2015 06:29:13 +0000 (15:29 +0900)] 
tests: Use check_PROGRAMS

* gettext-tools/tests/Makefile.am (check_PROGRAMS): Rename from
noinst_PROGRAMS, to defer the compilation until required.

9 years agoautopoint: Respect AM_GNU_GETTEXT_REQUIRE_VERSION
Daiki Ueno [Fri, 21 Aug 2015 06:19:21 +0000 (15:19 +0900)] 
autopoint: Respect AM_GNU_GETTEXT_REQUIRE_VERSION

* gettext-runtime/m4/gettext.m4 (AM_GNU_GETTEXT_REQUIRE_VERSION): New macro.
Bump serial to 67.
* gettext-tools/doc/autopoint.texi: Mention AM_GNU_GETTEXT_REQUIRE_VERSION.
* gettext-tools/misc/gettextize.in: Check if AM_GNU_GETTEXT_VERSION is
used.
* gettext-tools/misc/autopoint.in: Respect AM_GNU_GETTEXT_REQUIRE_VERSION.
* gettext-tools/tests/autopoint-2: Check AM_GNU_GETTEXT_REQUIRE_VERSION.

9 years agoxgettext: Allow multiple --copyright-holder
Daiki Ueno [Fri, 21 Aug 2015 05:43:30 +0000 (14:43 +0900)] 
xgettext: Allow multiple --copyright-holder

Feature requested by Francesco Poli in:
<https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=682580>.
* xgettext.c (default_copyright_holder): New constant, renamed
from copyright_holder.
(copyright_holder): Define as a variable.
(main): Allow multiple --copyright-holder options.
(construct_header): Support multiple --copyright-holder options.

9 years agointl: Pacify compilation with pre-C99 compilers
Daiki Ueno [Fri, 21 Aug 2015 01:22:01 +0000 (10:22 +0900)] 
intl: Pacify compilation with pre-C99 compilers

* loadmsgcat.c (_nl_load_domain): Move the call to
__libc_lock_define_initialized_recursive to the end of local
variable declarations to avoid extra ';' being expanded to an
empty statement.
Reported by pan7 in:
<http://savannah.gnu.org/support/?108864>.

9 years agocldr-plurals: Fix trivial resource leak
Daiki Ueno [Sat, 15 Aug 2015 01:19:45 +0000 (10:19 +0900)] 
cldr-plurals: Fix trivial resource leak

* cldr-plurals.c (main): Close FP after use.
Reported by Denis Denisov.

10 years agobuild: Substitute archive version with configure
Daiki Ueno [Tue, 28 Jul 2015 05:32:43 +0000 (14:32 +0900)] 
build: Substitute archive version with configure

* gettext-tools/configure.ac (ARCHIVE_VERSION): New substituted
variable.
* gettext-tools/misc/gettextize.in (archive_version): New variable, set
to ARCHIVE_VERSION.  Use it as the argument of AM_GNU_GETTEXT_VERSION.
* gettext-tools/tests/init-env.in (ARCHIVE_VERSION): New substituted
variable.
* gettext-tools/tests/autopoint-2: Use ARCHIVE_VERSION, instead of the
hard-coded version string.
* gettext-tools/tests/autopoint-3: Likewise.

10 years agoNEWS: Fix typo
Daiki Ueno [Mon, 27 Jul 2015 08:36:01 +0000 (17:36 +0900)] 
NEWS: Fix typo

10 years agogettextize: Use a crafted version string
Daiki Ueno [Mon, 27 Jul 2015 06:08:43 +0000 (15:08 +0900)] 
gettextize: Use a crafted version string

Reported by Max Lin in:
<https://lists.gnu.org/archive/html/bug-gettext/2015-07/msg00024.html>.
* gettextize.in: Replace AM_GNU_GETTEXT_VERSION invocation with
"$gettext_version" rather than "$version".  This makes it easier
to maintain a minor release without being affected by the actual
version number generated by git-version-gen.
(gettext_version): New variable.

10 years agopo-mode: Fix to accept four-part msgfmt version number
Peter Eisentraut [Sat, 25 Jul 2015 00:23:32 +0000 (20:23 -0400)] 
po-mode: Fix to accept four-part msgfmt version number

10 years agocldr-plurals: Fix --enable-relocatable compilation
Václav Slavík [Tue, 21 Jul 2015 11:00:32 +0000 (13:00 +0200)] 
cldr-plurals: Fix --enable-relocatable compilation

Compilation of the cldr-plurals tool was broken in the relocatable case
because of missing CPPFLAGS/LDFLAGS.  Add the same flags used by other
tools to the makefile.
* gettext-tools/src/Makefile.am (cldr_plurals_CPPFLAGS)
(cldr_plurals_LDFLAGS): Adjust for --enable-relocatable
compilation.

10 years agomaint: Add more files to .gitignore v0.19.5.1
Daiki Ueno [Wed, 15 Jul 2015 01:29:48 +0000 (10:29 +0900)] 
maint: Add more files to .gitignore

10 years agognulib-local: Fix Java compilation on mingw
Daiki Ueno [Tue, 14 Jul 2015 00:47:44 +0000 (09:47 +0900)] 
gnulib-local: Fix Java compilation on mingw

* lib/clean-temp.c.diff: New file, from m4.
Suggested by Eric Blake in:
<https://lists.gnu.org/archive/html/bug-gnulib/2013-09/msg00044.html>.

10 years agobuild: Import stpcpy as well to libgettextpo
Daiki Ueno [Sat, 11 Jul 2015 23:29:29 +0000 (08:29 +0900)] 
build: Import stpcpy as well to libgettextpo

10 years agobuild: Avoid link error on Mac OS X < 10.6
Daiki Ueno [Sat, 11 Jul 2015 22:40:55 +0000 (07:40 +0900)] 
build: Avoid link error on Mac OS X < 10.6

Reported by Ryan Schmidt in:
<http://savannah.gnu.org/bugs/?45527>.
* autogen.sh (GNULIB_MODULES_LIBGETTEXTPO): Add stpncpy.

10 years agoNEWS: Fix the release date of 0.19.5 v0.19.5
Daiki Ueno [Fri, 10 Jul 2015 06:29:16 +0000 (15:29 +0900)] 
NEWS: Fix the release date of 0.19.5

10 years agoRelease 0.19.5
Daiki Ueno [Fri, 10 Jul 2015 06:04:12 +0000 (15:04 +0900)] 
Release 0.19.5

10 years agoUpdate translations
Daiki Ueno [Fri, 10 Jul 2015 06:03:12 +0000 (15:03 +0900)] 
Update translations

10 years agotests: Update minimum version of autopoint
Daiki Ueno [Wed, 24 Jun 2015 08:09:47 +0000 (17:09 +0900)] 
tests: Update minimum version of autopoint

* gettext-tools/tests/autopoint-2 (required_gettext_version): Update to
0.19.5.
* gettext-tools/tests/autopoint-3 (required_gettext_version): Likewise.

10 years agointl: Check for getlocalename_l
Daiki Ueno [Fri, 10 Jul 2015 01:55:31 +0000 (10:55 +0900)] 
intl: Check for getlocalename_l

* intl.m4 (gt_INTL_SUBDIR_CORE): Check also for getlocalename_l.
Bump serial to 29.

10 years agointl: Update from gnulib
Daiki Ueno [Fri, 10 Jul 2015 01:35:50 +0000 (10:35 +0900)] 
intl: Update from gnulib

* localename.c: Update from gnulib.

10 years agoUpdate gnulib
Daiki Ueno [Thu, 9 Jul 2015 08:15:40 +0000 (17:15 +0900)] 
Update gnulib

10 years agoTHANKS: Update
Daiki Ueno [Mon, 29 Jun 2015 07:32:09 +0000 (16:32 +0900)] 
THANKS: Update

10 years agomsginit: Remove obsolete country codes
Daiki Ueno [Mon, 29 Jun 2015 02:44:52 +0000 (11:44 +0900)] 
msginit: Remove obsolete country codes

* gettext-tools/src/msginit.c (catalogname_for_locale): Remove sr_YU,
which were removed from ISO 3166-1:1997.  Add comment saying that
pap_AN, which were removed from ISO 3166-1:2006, can be removed in the
future.
Reported by Jakub Wilk in:
<https://lists.gnu.org/archive/html/bug-gettext/2015-06/msg00057.html>.

10 years agoxgettext: Fix the last change to literalstring
Daiki Ueno [Thu, 25 Jun 2015 12:02:47 +0000 (21:02 +0900)] 
xgettext: Fix the last change to literalstring

* gettext-tools/src/x-c.c (literalstring_parse): Bail out if C == NUL.
Also adjust the loop invariant in Unicode literal handling.
Reported by Hanno Boeck in:
<http://savannah.gnu.org/bugs/?45391>.

10 years agomaint: Add more files to .gitignore
Daiki Ueno [Thu, 25 Jun 2015 04:00:00 +0000 (13:00 +0900)] 
maint: Add more files to .gitignore

10 years agotests: Remove garbage added for debugging
Daiki Ueno [Thu, 25 Jun 2015 03:19:20 +0000 (12:19 +0900)] 
tests: Remove garbage added for debugging

10 years agotests: Fix the last commit
Daiki Ueno [Thu, 25 Jun 2015 03:18:55 +0000 (12:18 +0900)] 
tests: Fix the last commit

10 years agoxgettext: Make literal parser robust against NUL
Daiki Ueno [Thu, 25 Jun 2015 02:37:39 +0000 (11:37 +0900)] 
xgettext: Make literal parser robust against NUL

* gettext-tools/src/x-c.c (literalstring_parse): Add more NUL checks.
Change the loop invariant so that C always points to the character
previously pointed by P.
Reported by Hanno Boeck in:
<http://savannah.gnu.org/bugs/?45391>.

* gettext-tools/tests/xg-c-21.c (main): New file.
* gettext-tools/tests/xgettext-c-21 (result): New file.
* gettext-tools/tests/Makefile.am (TESTS): Add new test.
(EXTRA_DIST): Add xg-c-21.c.

10 years agobuild: Export syntax_check_name to W32
Daiki Ueno [Thu, 25 Jun 2015 01:02:53 +0000 (10:02 +0900)] 
build: Export syntax_check_name to W32

* woe32dll/gettextsrc-exports.c: Export syntax_check_name.
Reported by Michele Locati.

10 years agoxgettext: avoid out-of-bounds read in literals
Daiki Ueno [Wed, 24 Jun 2015 14:23:22 +0000 (23:23 +0900)] 
xgettext: avoid out-of-bounds read in literals

* gettext-tools/src/x-c.c (literalstring_parse): Check if the next
character of a backslash is NUL.  Reported by Hanno Boeck in:
<http://savannah.gnu.org/bugs/?45391>.

10 years agobuild: Export formatstring_kde_kuit to W32
Daiki Ueno [Wed, 24 Jun 2015 12:32:34 +0000 (21:32 +0900)] 
build: Export formatstring_kde_kuit to W32

* woe32dll/gettextsrc-exports.c: Export formatstring_kde_kuit.
Reported by Vincent Torri.

10 years agotests: Skip lang-bash test for Mac OS X's bash
Daiki Ueno [Wed, 24 Jun 2015 08:27:16 +0000 (17:27 +0900)] 
tests: Skip lang-bash test for Mac OS X's bash

* lang-bash: Skip if "bash --help" isn't localized on Mac OS X.

10 years agoFix reporter credit
Daiki Ueno [Wed, 24 Jun 2015 08:03:40 +0000 (17:03 +0900)] 
Fix reporter credit

10 years agoautopoint: Update for 0.19.5
Daiki Ueno [Wed, 24 Jun 2015 07:58:19 +0000 (16:58 +0900)] 
autopoint: Update for 0.19.5

* autopoint.in: Update for 0.19.5.

10 years agotests: Don't rely on echo -n
Daiki Ueno [Wed, 24 Jun 2015 03:04:25 +0000 (12:04 +0900)] 
tests: Don't rely on echo -n

* gettext-tools/tests/msgfilter-8: Port the "echo -n" equivalent from gettext-2.
Reported by paul zimmermann in:
<https://lists.gnu.org/archive/html/bug-gettext/2015-06/msg00019.html>.

10 years agotests: Skip CLDR tests when libexpat is missing
Daiki Ueno [Wed, 24 Jun 2015 01:53:22 +0000 (10:53 +0900)] 
tests: Skip CLDR tests when libexpat is missing

* gettext-tools/tests/cldr-plurals-1: Skip if XML is not supported.
* gettext-tools/tests/msginit-4: Likewise.

10 years agotests: Skip KUIT tests when libexpat is missing
Daiki Ueno [Wed, 24 Jun 2015 01:35:25 +0000 (10:35 +0900)] 
tests: Skip KUIT tests when libexpat is missing

* format-kde-kuit-1: Skip if KDE KUIT format is not supported.
* format-kde-kuit-2: Likewise.
Suggested by Chusslove Illich.

10 years agobuild: Fix error when expat is not available
Daiki Ueno [Tue, 23 Jun 2015 09:47:20 +0000 (18:47 +0900)] 
build: Fix error when expat is not available

* cldr-plurals.c (main): Fix unmatched braces when
!(DYNLOAD_LIBEXPAT || HAVE_LIBEXPAT).

10 years agobuild: Fix build failure on Solaris
Daiki Ueno [Tue, 23 Jun 2015 09:04:35 +0000 (18:04 +0900)] 
build: Fix build failure on Solaris

* gettext-tools/src/cldr-plurals.c: Include "basename.h".
(main): Place optind on the right hand side of the expression, to
work around build failure on Solaris.
Reported by Dagobert Michelsen in:
<https://lists.gnu.org/archive/html/bug-gettext/2015-06/msg00015.html>.

10 years agobuild: Clean leftover of "make uninstall"
Daiki Ueno [Tue, 23 Jun 2015 06:45:01 +0000 (15:45 +0900)] 
build: Clean leftover of "make uninstall"

* Makefile.am (uninstall-local): Remove cldr-plurals.

10 years agobuild: Fix test failure on VPATH build
Daiki Ueno [Tue, 23 Jun 2015 06:12:30 +0000 (15:12 +0900)] 
build: Fix test failure on VPATH build

* msginit-4: Don't check Project-Id-Version: field, since we can't
use the project-id script when $builddir != $srcdir.

10 years agobuild: Add missing headers in distribution
Daiki Ueno [Tue, 23 Jun 2015 05:14:04 +0000 (14:14 +0900)] 
build: Add missing headers in distribution

* Makefile.am (noinst_HEADERS): Add cldr-plural.h and cldr-plural-exp.h.

10 years agom4, help2man: Update from gnulib
Daiki Ueno [Tue, 23 Jun 2015 04:03:09 +0000 (13:03 +0900)] 
m4, help2man: Update from gnulib

* gettext-runtime/m4/codeset.m4: Update copyright year.
* gettext-runtime/m4/gettext.m4: Likewise.
* gettext-runtime/m4/iconv.m4: Likewise.
* gettext-runtime/m4/intl.m4: Likewise.
* gettext-runtime/m4/intldir.m4: Likewise.
* gettext-runtime/m4/intlmacosx.m4: Likewise.
* gettext-runtime/m4/lcmessage.m4: Likewise.
* gettext-runtime/m4/nls.m4: Likewise.
* gettext-runtime/m4/po.m4: Likewise.
* gettext-runtime/m4/extern-inline.m4: Likewise.  Port the following
change:
  2015-04-29  Paul Eggert  <eggert@cs.ucla.edu>
    extern-inline: no need for workaround in GCC 5.1
    * doc/extern-inline.texi (extern inline):
    * m4/extern-inline.m4 (gl_EXTERN_INLINE):
    GCC bugs 54113 and 63877 are fixed in GCC 5.1, so don't work
    around these bugs in GCC 5.1 and later.  Maybe in a decade or
    two we can remove these workarounds.
* gettext-tools/man/help2man: Update copyright year.

10 years agodoc: Update gettext-tools/ABOUT-NLS too
Daiki Ueno [Tue, 23 Jun 2015 03:43:58 +0000 (12:43 +0900)] 
doc: Update gettext-tools/ABOUT-NLS too

10 years agoPrepare for 0.19.5
Daiki Ueno [Tue, 23 Jun 2015 03:32:37 +0000 (12:32 +0900)] 
Prepare for 0.19.5

10 years agointl: Update locale.alias
Daiki Ueno [Tue, 23 Jun 2015 03:28:41 +0000 (12:28 +0900)] 
intl: Update locale.alias

* locale.alias: Update from glibc:
2015-05-22  Paul Eggert  <eggert@cs.ucla.edu>
  Remove obsolete aliases that broke 'locale -a'
  [BZ #18412]
  * intl/locale.alias: Remove obsolete aliases "bokmål" and "français"
  which caused 'locale -a' to output Latin-1 data in UTF-8 locales,
  breaking some applications that use 'locale -a' output.
  Change the encoding of this file from Latin-1 to ASCII to avoid
  other potential problems with people grepping this file.

10 years agodoc: Regenerate translation matrix
Daiki Ueno [Tue, 23 Jun 2015 03:20:25 +0000 (12:20 +0900)] 
doc: Regenerate translation matrix

* gettext-runtime/ABOUT-NLS: Regenerate for 0.19.5.
* gettext-runtime/doc/matrix.texi: Regenerate for 0.19.5.

10 years agomaint: Make Matrix.java more flexible
Daiki Ueno [Tue, 23 Jun 2015 03:01:28 +0000 (12:01 +0900)] 
maint: Make Matrix.java more flexible

* gettext-runtime/doc/Admin/Matrix.java (Matrix): Group teams
considering the actual table width, instead of using a hard-coded rule.

10 years agoNEWS: Adjust for 0.19.5 release
Daiki Ueno [Tue, 23 Jun 2015 01:28:37 +0000 (10:28 +0900)] 
NEWS: Adjust for 0.19.5 release

10 years agotests: Add test for msginit CLDR support
Daiki Ueno [Tue, 23 Jun 2015 01:16:25 +0000 (10:16 +0900)] 
tests: Add test for msginit CLDR support

* gettext-tools/tests/msginit-4: New file.
* gettext-tools/tests/common/supplemental/plurals.xml: New data file.
* gettext-tools/tests/Makefile.am (TESTS): Add new tests.
(EXTRA_DIST): Add new data file.

10 years agoUpdate gnulib
Daiki Ueno [Tue, 23 Jun 2015 00:50:24 +0000 (09:50 +0900)] 
Update gnulib

10 years agomaint: Minor adjustment to the release steps
Daiki Ueno [Tue, 23 Jun 2015 00:49:24 +0000 (09:49 +0900)] 
maint: Minor adjustment to the release steps

10 years agoNEWS: Fix wording
Daiki Ueno [Mon, 22 Jun 2015 11:20:49 +0000 (20:20 +0900)] 
NEWS: Fix wording

10 years agomsginit: Guess plural rules from Unicode CLDR
Daiki Ueno [Thu, 21 May 2015 04:03:50 +0000 (13:03 +0900)] 
msginit: Guess plural rules from Unicode CLDR

* gettext-tools/src/Makefile.am (noinst_PROGRAMS): Add cldr-plurals.
(install-exec-local): Install cldr-plurals.
(BUILT_SOURCES): Add cldr-plural.c and cldr-plural.h.
(cldr_plural_SOURCES): New variable.
(cldr_plural_LDADD): New variable.
* gettext-tools/src/cldr-plural-exp.h: New file.
* gettext-tools/src/cldr-plural-exp.c: New file.
* gettext-tools/src/cldr-plural.y: New file.
* gettext-tools/src/cldr-plurals.c: New file.
* gettext-tools/src/msginit.c (plural_forms): Call cldr-plurals program
if the plural rule is not defined in the code.
* gettext-tools/doc/msginit.texi: More explanations about "meta
information".
* gettext-tools/doc/gettext.texi (Plural forms): Mention Unicode CLDR
support in msginit.
* gettext-tools/tests/cldr-plurals-1: New file.
* gettext-tools/tests/Makefile.am (TESTS): Add new tests.
* NEWS: Mention msginit change.

10 years agoUpdate gnulib.
Daiki Ueno [Fri, 5 Jun 2015 22:01:25 +0000 (07:01 +0900)] 
Update gnulib.

10 years agomaint: Revert copyright year changes in test data
Daiki Ueno [Fri, 5 Jun 2015 07:37:38 +0000 (16:37 +0900)] 
maint: Revert copyright year changes in test data

10 years agoUpdate gnulib
Daiki Ueno [Fri, 5 Jun 2015 07:13:19 +0000 (16:13 +0900)] 
Update gnulib

10 years agomaint: Update copyright year
Daiki Ueno [Fri, 5 Jun 2015 07:11:39 +0000 (16:11 +0900)] 
maint: Update copyright year

10 years agopo: When doing msgmerge --version, no other options are needed.
Benno Schulenberg [Mon, 1 Jun 2015 10:46:45 +0000 (12:46 +0200)] 
po: When doing msgmerge --version, no other options are needed.

* gettext-runtime/po/Makefile.in.in: Do not use --update when simply
checking for the version, as this might fail when msgmerge is very old.

Signed-off-by: Benno Schulenberg <bensberg@justemail.net>
10 years agoawk: Recognize .twjr file extension
Daiki Ueno [Mon, 1 Jun 2015 03:12:28 +0000 (12:12 +0900)] 
awk: Recognize .twjr file extension

* gettext-tools/src/x-awk.h (EXTENSIONS_AWK): Register file extensions
".gawk" and ".twjr".  Suggested by Karl Berry in:
<https://lists.gnu.org/archive/html/bug-gettext/2015-05/msg00032.html>.

* gettext-tools/doc/gettext.texi (gawk): Mention new file extensions
".gawk" and ".twjr".

10 years agodoc: Update link to GNU hello
Daiki Ueno [Mon, 1 Jun 2015 01:19:23 +0000 (10:19 +0900)] 
doc: Update link to GNU hello

* gettext.texi (Adjusting Files): Update link to GNU hello
distribution.  Suggested by Karl Berry in:
<https://lists.gnu.org/archive/html/bug-gettext/2015-05/msg00031.html>.

10 years agokde: Enable ki18n keywords by default
Часлав Илић (Chusslove Illich) [Mon, 11 May 2015 06:30:55 +0000 (15:30 +0900)] 
kde: Enable ki18n keywords by default

* gettext-tools/src/x-c.c (init_flag_table_kde): New function.
(additional_keywords_kde): New variable.
(activate_additional_keywords_kde): New function.
(init_keywords): Optional addition of KDE-specific keywords.
* gettext-tools/src/x-c.h (init_flag_table_kde): New function declaration.
(activate_additional_keywords_kde): New function declaration.
* gettext-tools/src/xgettext.c (main): Invoke addition of KDE-specific
keywords when language is C++ with KDE.

* NEWS: Mention --kde behavior change.

10 years agoTHANKS: Update
Daiki Ueno [Fri, 8 May 2015 02:32:25 +0000 (11:32 +0900)] 
THANKS: Update

10 years agodoc: Update link to Python String Formatting
Matt Behrens [Sat, 2 May 2015 15:24:03 +0000 (08:24 -0700)] 
doc: Update link to Python String Formatting

10 years agopo-mode: Add option to keep .mo when validating
Manuel Uberti [Fri, 24 Apr 2015 06:49:28 +0000 (08:49 +0200)] 
po-mode: Add option to keep .mo when validating

* gettext-tools/misc/po-mode.el (po-keep-mo-file): New user option.
(po-validate): Respect po-keep-mo-file.  Fix comment indentation.

10 years agokde-kuit: Use xmlns to avoid element name conflict
Daiki Ueno [Fri, 20 Mar 2015 01:36:27 +0000 (10:36 +0900)] 
kde-kuit: Use xmlns to avoid element name conflict

* format-kde-kuit.c (XML_NS): New macro.
(format_parse): Add namespace qualifier to the <kuit> tag.

10 years agodoc: Fix a typo and a punctuation error.
Benno Schulenberg [Sun, 15 Mar 2015 13:12:46 +0000 (14:12 +0100)] 
doc: Fix a typo and a punctuation error.

Signed-off-by: Benno Schulenberg <bensberg@justemail.net>