Add -lm dependency for gettextlib to fix LTO build
[platform/upstream/gettext.git] / ChangeLog
1 2015-12-28  Daiki Ueno  <ueno@gnu.org>
2
3         Update translations
4         * gettext-runtime/po/fr.po: Update from Stéphane Aulery <lkppo@free.fr>.
5         * gettext-runtime/po/nb.po: Update from Johnny A. Solbu <johnny@solbu.net>.
6         * gettext-runtime/po/pt_BR.po: Update from Rafael Ferreira <rffontenelle@gmail.com>.
7         * gettext-runtime/po/sr.po: Update from Мирослав Николић <miroslavnikolic@rocketmail.com>.
8         * gettext-runtime/po/zh_TW.po: Update from Wei-Lun Chao <bluebat@member.fsf.org>.
9         * gettext-tools/examples/po/fr.po: Update from Stéphane Aulery <lkppo@free.fr>.
10         * gettext-tools/examples/po/nb.po: Update from Johnny A. Solbu <johnny@solbu.net>.
11         * gettext-tools/examples/po/pt_BR.po: Update from Rafael Ferreira <rffontenelle@gmail.com>.
12         * gettext-tools/examples/po/sr.po: Update from Мирослав Николић <miroslavnikolic@rocketmail.com>.
13         * gettext-tools/examples/po/zh_TW.po: Update from Wei-Lun Chao <bluebat@member.fsf.org>.
14         * gettext-tools/po/bg.po: Update from Roumen Petrov <transl@roumenpetrov.info>.
15         * gettext-tools/po/es.po: Update from Antonio Ceballos <aceballos@gmail.com>.
16         * gettext-tools/po/fr.po: Update from Stéphane Aulery <lkppo@free.fr>.
17         * gettext-tools/po/ja.po: Update from Masahito Yamaga <ma@yama-ga.com>.
18         * gettext-tools/po/nl.po: Update from Benno Schulenberg <benno@vertaalt.nl>.
19         * gettext-tools/po/pt_BR.po: Update from Rafael Fontenelle <rffontenelle@gmail.com>.
20         * gettext-tools/po/sk.po: Update from Marcel Telka <marcel@telka.sk>.
21         * gettext-tools/po/sl.po: Update from Primoz PETERLIN <primozz.peterlin@gmail.com>.
22         * gettext-tools/po/sr.po: Update from Мирослав Николић <miroslavnikolic@rocketmail.com>.
23         * gettext-tools/po/uk.po: Update from Yuri Chornoivan <yurchor@ukr.net>.
24         * gettext-tools/po/vi.po: Update from Trần Ngọc Quân <vnwildman@gmail.com>.
25
26         Prepare for 0.19.7
27
28         doc: Regenerate translation matrix
29         * gettext-runtime/ABOUT-NLS: Regenerate for 0.19.7.
30         * gettext-runtime/doc/matrix.texi: Regenerate for 0.19.7.
31
32         NEWS: Add 0.19.7 changes
33
34         Update gnulib
35
36         Ignore file brought by gnulib-tool
37         * gettext-tools/gnulib-tests/.gitignore: Ignore file brought by
38         gnulib-tool.
39
40 2015-12-23  Daiki Ueno  <ueno@gnu.org>
41
42         term-ostream-tests: Add test data for FreeBSD 10.1
43         * gnulib-local/modules/term-ostream-tests: Add
44         test-term-ostream-xterm-freebsd101.out.
45         * gnulib-local/tests/test-term-ostream-xterm: Use new test data.
46         * gnulib-local/tests/test-term-ostream-xterm-freebsd101.out: New file.
47
48 2015-12-21  Daiki Ueno  <ueno@gnu.org>
49
50         cldr-plurals: Fix errors from clang-analyzer
51         * gettext-tools/src/cldr-plurals.c (extract_rules): Add extra null
52         checks for NODE and BUFFER.  Don't add NUL byte to the end of buffer
53         manually.
54
55 2015-12-17  Daiki Ueno  <ueno@gnu.org>
56
57         po: Prefer to use host tools when cross compiling
58         * gettext-runtime/po/Makefile.in.in (CROSS_COMPILING): New substitute
59         variable.
60         (.nop.po-update): Don't prepend ../src to $PATH when cross compiling.
61         * gettext-runtime/po/Rules-quot (.insert-header.po-update-en): Likewise.
62
63         its: Allow CDATA and comments in translatable node
64         * gettext-tools/src/its.c (its_rule_list_is_translatable): Don't return
65         false on CDATA and comments.
66
67         its: Fix typo in GSettings rule
68         * gettext-tools/its/gsettings.its: Fix typo in escape rule.
69
70 2015-12-15  Daiki Ueno  <ueno@gnu.org>
71
72         gnulib-local: Fix link error due to symbol dupes
73         * gnulib-local/lib/libxml/trionan.c (minus_zerod): Mark as static.
74
75         gnulib-local: Pull more functions for libxml
76         * gettext-tools/gnulib-lib/.gitignore: Ignore files brought by
77         gnulib-tool.
78         * gettext-tools/gnulib-tests/.gitignore: Likewise.
79         * gnulib-local/modules/libxml (Depends-on): Add 'pow', 'log10', and
80         'fabs'.
81
82         gnulib-local: Replace libxml2 trio with Gnulib
83         * gettext-tools/gnulib-lib/.gitignore: Ignore files brought by
84         gnulib-tool.
85         * gettext-tools/gnulib-tests/.gitignore: Likewise.
86         * gnulib-local/lib/libxml/triodef.h: Remove.
87         * gnulib-local/lib/libxml/trionan.c: Replace it with Gnulib functions.
88         * gnulib-local/lib/libxml/trionan.h: Remove.
89         * gnulib-local/modules/libxml (Depends-on): Add 'isinf', 'isnan', and
90         'signbit'.
91
92 2015-12-14  Daiki Ueno  <ueno@gnu.org>
93
94         gnulib-local: Update included libxml2 to 2.9.3
95         * gnulib-local/lib/libxml/*: Update from libxml2 2.9.3.  Add buf.[ch],
96         enc.h, save.h, triodef.h, trionan.[ch].  Enable XPath and XPointer
97         support.
98         * gnulib-local/modules/libxml (Files): Add new files from libxml2 2.9.3.
99
100 2015-12-10  Daiki Ueno  <ueno@gnu.org>
101
102         gettext-tools: Update POTFILES.in
103         * gettext-tools/po/POTFILES.in: Add newly added files.
104
105         gnulib-local: Make markup.c translator friendly
106         * gnulib-local/lib/markup.c: Reuse strings.
107
108         its: Mark some attributes as escape="no"
109         * gettext-tools/its/glade2.its: Mark "comments" attribute as
110         escape="no".
111         * gettext-tools/its/gsettings.its: Mark "context" attribute as
112         escape="no".
113         * gettext-tools/its/gtkbuilder.its: Mark "comments" attribute as
114         escape="no".
115
116         xgettext: Respect ITS escape rule for attributes
117         * gettext-tools/src/its.c (its_rule_list_extract_text): Check for
118         "escape" value for an attribute node.
119         * gettext-tools/tests/xgettext-its-1: Add tests for gt:escapeRule.
120
121 2015-12-10  KO Myung-Hun  <komh78@gmail.com>  (tiny change)
122
123         intl: Fix name resolution failures on kLIBC
124         kLIBC already has _nl_default_dirname and _nl_msg_cat_cntr in its own
125         gettext implmenetation.
126         * gettext-runtime/intl/dcigettext.c: Do not declare _nl_default_dirname
127         on kLIBC.
128         * gettext-runtime/intl/gettextP.h: Define _nl_msg_cat_cntr to
129         libintl_nl_msg_cat_cntr on kLIBC.
130
131         build: Do not include os2compat.[ch]
132         kLIBC does not need os2compat.[ch]
133         * gettext-runtime/configure.ac (AH_BOTTOM): Do not include
134         intl/os2compat.h on kLIBC.
135         * gettext-runtime/intl/osdep.c: Do not include os2compat.c on kLIBC.
136         * gettext-tools/configure.ac (AH_BOTTOM): Do not include
137         intl/os2compat.h on kLIBC.
138
139         test-lock: Do not include sched.h on kLIBC
140         * gettext-runtime/tests/test-lock.c: Do not include sched.h on kLIBC,
141         since kLIBC does not have sched.h.
142
143 2015-12-10  Daiki Ueno  <ueno@gnu.org>
144
145         kde: Fix KUIT error handling when libxml2 is used
146         * gettext-tools/src/format-kde-kuit.c (format_parse): Return NULL if
147         xmlReadMemory returns NULL.
148
149         xgettext: Add --its option for ease of testing
150         * gettext-tools/doc/xgettext.texi (Output details): Mention --its
151         option.
152         * gettext-tools/src/xgettext.c (long_options): Add --its option.
153         (main): Handle --its option.  Suggested by Sébastien Wilmet.
154
155         xgettext: Improve error reporting when ITS is used
156         * gettext-tools/src/xgettext.c (main): Print error when an ITS file is
157         designated through a locating rule, but the file does not exist.
158
159         build: Update DEPENDENCIES
160         * DEPENDENCIES: Remove duplicate entry for libxml2.
161
162 2015-12-09  Daiki Ueno  <ueno@gnu.org>
163
164         build: Remove expat dependency
165         * DEPENDENCIES: Suggest libxml2 instead of expat.
166         * gnulib-local/lib/markup.c: New file.
167         * gnulib-local/lib/markup.h: New file.
168         * gnulib-local/modules/markup: New file.
169         * autogen.sh (GNULIB_MODULES_LIBGETTEXTPO): Add markup module.
170         * gettext-tools/configure.ac: Remove checks for expat.
171         * gettext-tools/gnulib-lib/.gitignore: Ignore modules pulled by
172         gnulib-tool due to the markup module usage.
173         * gettext-tools/gnulib-tests/.gitignore: Likewise.
174         * gettext-tools/libgettextpo/.gitignore: Likewise.
175         * gettext-tools/libgettextpo/Makefile.am (libgettextpo_la_AUXSOURCES):
176         Remove ../src/libexpat-compat.c.
177         (libgettextpo_la_LDFLAGS): Remove @LTLIBEXPAT@.
178         * gettext-tools/src/Makefile.am (noinst_HEADERS): Remove
179         libexpat-compat.h.
180         (libgettextsrc_la_SOURCES): Remove libexpat-compat.c.
181         (libgettextsrc_la_LDFLAGS): Remove @LTLIBEXPAT@.
182         * gettext-tools/src/format-kde-kuit.c: Use functions from markup.h, when
183         the file is being compiled as part of libgettextpo.  Otherwise use
184         libxml2.
185         * gettext-tools/src/libexpat-compat.c: Remove.
186         * gettext-tools/src/libexpat-compat.h: Remove.
187
188 2015-12-08  Daiki Ueno  <ueno@gnu.org>
189
190         build: Fix texi2html failure with perl 5.22
191         * gettext-runtime/libasprintf/texi2html (update_sec_num): Don't use
192         "defined" against an array ref.
193         * gettext-tools/doc/texi2html (update_sec_num): Likewise.
194
195         Update gnulib
196
197         xgettext: Ignore --from-code when XML mode
198         * gettext-tools/src/xgettext.c (extract_from_xml_file): Forcibly set
199         current source encoding to UTF-8, on XML mode.
200
201         build: Suppress compiler warning
202         * gettext-tools/src/its.c (its_rule_list_extract_text): Remove unused
203         local variable "message".
204
205 2015-12-04  Daiki Ueno  <ueno@gnu.org>
206
207         msgfmt: Support XML file merging
208         * gettext-tools/src/Makefile.am (noinst_HEADERS): Add write-xml.h.
209         (msgfmt_SOURCES): Add write-xml.c.
210         * gettext-tools/src/its.c (its_merge_context_merge_node): New function.
211         (its_merge_context_merge): New function.
212         (its_merge_context_alloc): New function.
213         (its_merge_context_write): New function.
214         (its_merge_context_free): New function.
215         * gettext-tools/src/its.h (its_merge_context_ty): New type.
216         * gettext-tools/src/msgfmt.c: Include "its.h", "locating-rule.h", and
217         "write-xml.h".
218         (SIZEOF): New macro.
219         (xml_mode, xml_locale_name, xml_template_name, xml_base_directory,
220         xml_language, xml_its_rules): New variable.
221         (long_options): Add --language and --xml.
222         (main): Handle new options.
223         (usage): Document new options.
224         (msgfmt_xml_bulk): New function.
225         * gettext-tools/src/write-xml.c: New file.
226         * gettext-tools/src/write-xml.h: New file.
227         * gettext-tools/doc/gettext.texi: Mention XML file merging use-case.
228         * gettext-tools/doc/msgfmt.texi: Mention --xml option.
229         * gettext-tools/tests/msgfmt-xml-1: New file.
230         * gettext-tools/tests/msgfmt-xml-2: New file.
231         * gettext-tools/tests/Makefile.am (TESTS): Add new tests.
232
233         xgettext: Rewrite Glade scanner in ITS
234         * gettext-tools/its/glade.loc: New file.
235         * gettext-tools/its/glade1.its: New file.
236         * gettext-tools/its/glade2.its: New file.
237         * gettext-tools/its/gtkbuilder.its: New file.
238         * gettext-tools/its/Makefile.am (dist_its_DATA): Add new files.
239         * gettext-tools/src/Makefile.am (xgettext_SOURCES): Remove x-glade.c.
240         * gettext-tools/src/x-glade.c: Remove.
241         * gettext-tools/src/x-glade.h (EXTENSIONS_GLADE): Set language field to
242         NULL.
243         (SCANNERS_GLADE): Set func field to NULL.
244         * gettext-tools/po/POTFILES.in: Remove x-glade.c
245
246         xgettext: Rewrite GSettings scanner in ITS
247         * gettext-tools/its/gsettings.its: New file.
248         * gettext-tools/its/gsettings.loc: New file.
249         * gettext-tools/its/Makefile.am (dist_its_DATA): Add new files.
250         * gettext-tools/src/Makefile.am (xgettext_SOURCES): Remove x-gsettings.c.
251         * gettext-tools/src/x-gsettings.c: Remove.
252         * gettext-tools/src/x-gsettings.h (EXTENSIONS_GSETTINGS): Set language
253         field to NULL.
254         (SCANNER_GSETTINGS): Set func field to NULL.
255
256         xgettext: Rewrite AppData scanner in ITS
257         * gettext-tools/its/appdata.loc: New file.
258         * gettext-tools/its/appdata.its: New file.
259         * gettext-tools/its/Makefile.am (dist_its_DATA): Add new files.
260         * gettext-tools/src/Makefile.am (xgettext_SOURCES): Remove x-appdata.c.
261         * gettext-tools/src/x-appdata.c: Remove.
262         * gettext-tools/src/x-appdata.h (EXTENSIONS_APPDATA): Set language
263         field to NULL.
264         (SCANNERS_APPDATA): Set func field to NULL.
265
266         xgettext: Add support for generic XML files
267         * autogen.sh (GNULIB_MODULES_TOOLS_FOR_SRC): Add trim module.
268         * gettext-tools/src/locating-rule.h: New file.
269         * gettext-tools/src/locating-rule.c: New file.
270         * gettext-tools/src/its.h: New file.
271         * gettext-tools/src/its.c: New file.
272         * gettext-tools/src/xgettext.c: Include "locating-rule.h" and "its.h".
273         (its_locators): New variable.
274         (long_options): Add --itstool option.
275         (extract_from_xml_file): New function.
276         (main): Handle --itstool option.
277         (usage): Document --itstool option.
278         * gettext-tools/src/Makefile.am (noinst_HEADERS): Add locating-rule.h
279         and its.h.
280         (libgettextsrc_la_CPPFLAGS): Add $(INCXML).
281         (libgettextsrc_la_SOURCES): Add locating-rule.c and its.c.
282         * gettext-tools/Makefile.am (SUBDIRS): Add its directory.
283         * gettext-tools/configure.ac: Output its/Makefile.
284         * gettext-tools/doc/gettext.texi (Preparing ITS Rules): New section.
285         * gettext-tools/doc/xgettext.texi: Mention --itstool option.
286         * gettext-tools/tests/Makefile.am (TESTS): Add new tests.
287         * gettext-tools/tests/xgettext-its-1: New file
288         * gettext-tools/tests/init-env.in: Set GETTEXTDATADIR for ITS tests.
289
290 2015-11-18  Daiki Ueno  <ueno@gnu.org>
291
292         cldr-plurals: Add sanity checks for input
293         * gettext-tools/src/cldr-plurals.c (extract_rules): Add null checks and
294         element type checks.
295
296 2015-11-17  Daiki Ueno  <ueno@gnu.org>
297
298         cldr-plurals: Rewrite XML handling using libxml2
299         * src/cldr-plurals.c: Include <libxml/tree.h> and
300         <libxml/parser.h>, instead of "libexpat-compat.h".
301         (extract_locale, extracted_rules, parser, logical_file_name)
302         (struct element_state, stack, stack_size, stack_depth)
303         (ensure_stack_size, start_element_handler, end_element_handler)
304         (character_data_handler): Remove.
305         (extract_rules): Rename from extract_rule and rewrite using DOM.
306         (main): Use extract_rules.
307         * src/Makefile.am (cldr_plurals_CFLAGS): Add $(INCXML).
308
309         cldr-plurals: Fix a trivial leak
310         * src/cldr-plural.y (sample_range): Free unused operand value.
311
312 2015-11-17  Phil Davis  <phil.davis@inf.org>  (tiny change)
313
314         doc: Fix typo in gettext_noop example
315         * doc/gettext.texi (Special cases): Add missing ')' to
316         a gettext_noop call.
317
318 2015-10-29  Daiki Ueno  <ueno@gnu.org>
319
320         maint: Ignore more generated ChangeLogs
321         * .gitignore: Add gettext-runtime/intl/ChangeLog,
322         gettext-runtime/po/ChangeLog, and gettext-tools/po/ChangeLog.
323
324         m4: Fix typo in usage comment
325         * gettext-runtime/m4/gettext.m4: Remove duplicate words.
326         * gettext-runtime/m4/intl.m4: Likewise.
327         * gettext-runtime/m4/intldir.m4: Likewise.
328         * gettext-runtime/m4/intlmacosx.m4: Likewise.
329         * gettext-runtime/m4/lcmessage.m4: Likewise.
330         * gettext-runtime/m4/nls.m4: Likewise.
331         * gettext-runtime/m4/po.m4: Likewise.
332         * gettext-runtime/m4/progtest.m4: Likewise.
333         Reported by Jakub Wilk in:
334         https://lists.gnu.org/archive/html/bug-gettext/2015-10/msg00026.html.
335
336         doc: Fix typo in msgfmt invocation
337         * gettext-tools/doc/msgfmt.texi: Fix the documentation of -d option,
338         used in the Desktop Entry mode.
339
340 2015-10-15  Daiki Ueno  <ueno@gnu.org>
341
342         build: Generate ChangeLogs for intl and po
343         * autogen.sh: Create empty ChangeLog files under intl and po.
344         * Makefile.am (gen-ChangeLogs): Rename from gen-ChangeLog.  Generate
345         ChangeLog files for */intl and */po as well as top-level.
346         * gettext-runtime/intl/ChangeLog.0: Rename from ChangeLog.
347         * gettext-runtime/po/ChangeLog.0: Rename from ChangeLog.
348         * gettext-tools/po/ChangeLog.1: Rename from ChangeLog.
349
350         build: Distribute old ChangeLogs in tarball
351         * Makefile.am (changelog_etc): Remove non-existent ChangeLog files
352         under intl and po.
353         (EXTRA_DIST): Add $(changelog_etc).
354
355 2015-10-14  Mike Frysinger  <vapier@chromium.org>
356
357         tests: use check_PROGRAMS
358         The noinst_xxx targets will be compiled all the time.  For test programs,
359         the check_xxx targets make more sense as they'll only be built when the
360         user runs `make check`.
361
362         * gettext-runtime/tests/Makefile.am (noinst_PROGRAMS): Rename to ...
363         (check_PROGRAMS): ... this.
364
365 2015-10-14  Mike Frysinger  <vapier@chromium.org>
366
367         intl/localename: control langinfo.h inclusion
368         This header is only used to work around buggy behavior in old versions
369         of glibc, so do not include it all the time.  Otherwise we get build
370         failures on systems that do not provide langinfo.h.
371
372         * gettext-runtime/intl/localename.c: Wrap langinfo.h include with same
373         ifdefs used in the source later on.
374
375 2015-10-14  Daiki Ueno  <ueno@gnu.org>
376
377         build: Remove ChangeLogs
378         Generate ChangeLog files at "make dist" time, using
379         gitlog-to-changelog.  We still keep ChangeLog files under "po" and
380         "intl" directories, since those files are copied as part of gettext
381         infrastructure and it is still meaningful to have them there.
382         * .gitignore: Add ChangeLog files.
383         * Admin/release-steps: Remove mention of running update-changelog
384         script.
385         * Admin/update-changelog: Remove.
386         * Makefile.am (gen-ChangeLog): New rule.
387         * autogen.sh: Copy gitlog-to-changelog from gnulib.  Create empty
388         ChangeLog files to suppress Automake errors.
389         * gettext-tools/doc/Makefile.am (EXTRA_DIST): Remove ChangeLog.0.
390         * gettext-tools/man/Makefile.am (EXTRA_DIST): Remove ChangeLog.0.
391         * gettext-tools/src/Makefile.am (EXTRA_DIST): Remove ChangeLog.0.
392         * gettext-tools/tests/Makefile.am (EXTRA_DIST): Remove ChangeLog.0.
393         * gnulib-local/Makefile.am (EXTRA_DIST): Remove ChangeLog files.
394         * */ChangeLog: Rename to ChangeLog.0 or ChangeLog.1.
395         * HACKING: Add brief guideline to submit patches.