2583f1a06d60eff3e7552e9dca91c311a08b3b1c
[gnulib.git] / ChangeLog
1 2008-02-17  Bruno Haible  <bruno@clisp.org>
2
3         Speed up by 25%.
4         * lib/git-merge-changelog.c (struct entry): New fields 'hashcode',
5         'hashcode_cached'.
6         (entry_create): New function.
7         (entry_hashcode): Use the cached hashcode if possible.
8         (read_changelog_file, try_split_merged_entry): Use entry_create.
9
10 2008-02-17  Bruno Haible  <bruno@clisp.org>
11
12         Speed up from O(n^2) to O(n) for long ChangeLog files.
13         * lib/git-merge-changelog.c: Include gl_rbtreehash_list.h.
14         (read_changelog_file): Change implementation of entries_reversed list
15         to rbtreehash.
16         * modules/git-merge-changelog (Depends-on): Add rbtreehash-list.
17
18 2008-02-17  Bruno Haible  <bruno@clisp.org>
19
20         New option --split-merged-entry.
21         * lib/git-merge-changelog.c (FSTRCMP_STRICTER_THRESHOLD): New macro.
22         (find_paragraph_end, try_split_merged_entry): New functions.
23         (long_options): Add option --split-merged-entry.
24         (usage): Document option --split-merged-entry.
25         (main): Implement option --split-merged-entry.
26         Reported by Eric Blake.
27
28 2008-02-17  Bruno Haible  <bruno@clisp.org>
29
30         * lib/git-merge-changelog.c: Include c-strstr.h.
31         (main): Support the "git pull --rebase" situation.
32         * modules/git-merge-changelog (Depends-on): Add c-strstr.
33         Reported by Eric Blake.
34
35 2008-02-16  Eric Blake  <ebb9@byu.net>
36
37         Avoid doubling \ in common case of "c-maybe" quoting style.
38         * lib/quotearg.c (quotearg_buffer_restyled): Don't escape \ when
39         eliding outer quotes.
40         * lib/quotearg.h: Document this.
41         * tests/test-quotearg.c (result_strings, inputs, results_g)
42         (flag_results, locale_results): Test it by adding a new string to
43         each test group.
44         (compare_strings): Test new string.
45
46 2008-02-13  Eric Blake  <ebb9@byu.net>
47
48         Avoid trigraph quoting in default output.
49         * lib/quotearg.h (enum quoting_flags): Add QA_SPLIT_TRIGRAPHS.
50         * lib/quotearg.c (quotearg_buffer_restyled): Don't quote trigraphs
51         unless explicitly requested.
52         * tests/test-quotearg.c (flag_results, main): Add additional tests.
53
54 2008-02-13  Lasse Collin  <lasse.collin@tukaani.org>
55
56         Don't rely on signed integer overflowing to negative value.
57         * lib/getugroups.c (getugroups): Include <limits.h>.
58         Instead, compare against INT_MAX, and increment only if the test passes.
59
60 2008-02-13  Jim Meyering  <meyering@redhat.com>
61         and Eric Blake  <ebb9@byu.net>
62
63         Avoid shadowing warning and compile errors on Linux.
64         * tests/test-quotearg.c [ENABLE_NLS]: Disable <libintl.h>
65         forwarding macros on Linux.
66         (dcgettext): Define a stub, for Linux.
67         (results_g, main): Avoid warnings.
68
69 2008-02-12  Eric Blake  <ebb9@byu.net>
70
71         Silence warning in last patch.
72         * lib/quotearg.c (quotearg_buffer_restyled): Add missing const.
73
74         Quotearg part 4: add tests, fix c-maybe colon quoting.
75         * lib/quotearg.h: Improve documentation.
76         * lib/quotearg.c (quotearg_buffer_restyled): Don't add extra
77         escapes when adding outer quotes.  When quoting trigraphs, use
78         valid C notation.  When quoting NUL, omit extra characters if next
79         character is not digit.  Alter prototype.
80         (quotearg_buffer, quotearg_alloc_mem, quotearg_n_options): Adjust
81         callers.
82         * modules/quotearg-tests: New module.
83         * tests/test-quotearg.c: New test.
84
85 2008-02-07  Eric Blake  <ebb9@byu.net>
86
87         Quotearg part 3: add flag to control outer quote elision.
88         * lib/quotearg.h (c_maybe_quoting_style): New style.
89         (enum quoting_flags): Better documentation of flags.
90         * lib/quotearg.c (quoting_style_args, quoting_style_vals): Add
91         c-maybe style.
92         (quotearg_buffer_restyled): Handle new flag to elide outer
93         quotes.
94
95         Quotearg part 2: add flag that can control NUL elision.
96         * lib/quotearg.h (set_quoting_flags): New prototype.
97         * lib/quotearg.c (struct quoting_options): Add flag field.
98         (set_quoting_flags): New function.
99         (quotearg_buffer_restyled): Add flags parameter.
100         (quotearg_alloc_mem): Set the flag if length cannot be returned.
101         (quotearg_n_options): Set the flag, since length cannot be
102         returned.
103         (quoting_options_from_style): Default flags correctly.
104
105         Quotearg part 1: more wrappers, restore quotearg_char state.
106         * lib/quotearg.h (quotearg_alloc_mem, quotearg_n_mem)
107         (quotearg_mem, quotearg_style_mem, quotearg_char_mem)
108         (quotearg_colon_mem): New wrappers.
109         * lib/quotearg.c (quotearg_alloc, quotearg_char): Rewrite...
110         (quotearg_alloc_mem, quotearg_char_mem): ...in terms of these new
111         functions.
112         (quotearg_n_mem, quotearg_mem, quotearg_style_mem)
113         (quotearg_colon_mem): New functions.
114
115 2008-02-11  Bruno Haible  <bruno@clisp.org>
116
117         * modules/git-merge-changelog (Makefile.am): Don't use -L and -l for a
118         library in the current directory: it does not work with parallel make.
119         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
120
121 2008-02-11  Bruno Haible  <bruno@clisp.org>
122
123         * .gitattributes: New file.
124
125 2008-02-11  Jim Meyering  <meyering@redhat.com>
126
127         useless-if-before-free: Fix reversed exit values.
128         * build-aux/useless-if-before-free: Use correct values
129         for EXIT_MATCH and EXIT_NO_MATCH.
130
131         * build-aux/useless-if-before-free: Close stdout carefully.
132
133 2008-02-10  Bruno Haible  <bruno@clisp.org>
134
135         New module 'git-merge-changelog'.
136         * modules/git-merge-changelog: New file.
137         * lib/git-merge-changelog.c: New file.
138
139 2008-02-10  Jim Meyering  <meyering@redhat.com>
140
141         useless-if-before-free: New option: --list (-l).
142
143         useless-if-before-free: Don't exit immediately upon open failure.
144         * build-aux/useless-if-before-free: Exit 2 for errors.
145         Upon failure to open a file, don't exit immediately.
146         Rather, just warn and continue with any remaining files.
147
148 2008-02-10  Bruno Haible  <bruno@clisp.org>
149
150         New abstract list operation 'node_set_value'.
151         * lib/gl_list.h (gl_list_node_set_value): New function.
152         (struct gl_list_implementation): New field node_set_value.
153         * lib/gl_list.c (gl_list_node_set_value): New function.
154         * lib/gl_array_list.c (gl_array_node_set_value): New function.
155         (gl_array_list_implementation): Update.
156         * lib/gl_carray_list.c (gl_carray_node_set_value): New function.
157         (gl_carray_list_implementation): Update.
158         * lib/gl_anylinked_list2.h (gl_linked_node_set_value): New function.
159         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
160         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
161         * lib/gl_anytree_list2.h (gl_tree_node_set_value): New function.
162         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
163         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
164         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
165         Update.
166         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
167         * lib/gl_sublist.c (gl_sublist_node_set_value): New function.
168         (gl_sublist_list_implementation): Update.
169
170 2008-02-10  Bruno Haible  <bruno@clisp.org>
171
172         * lib/diffseq.h: Write "ELEMENT const" instead of "const ELEMENT".
173         Needed when ELEMENT is #defined to 'some_type *'.
174
175 2008-02-10  Jim Meyering  <meyering@redhat.com>
176
177         New script and module: useless-if-before-free
178         * MODULES.html.sh (maint+release support): Add useless-if-before-free.
179         * build-aux/useless-if-before-free: New file.
180         * modules/useless-if-before-free: New file.
181
182         * build-aux/gitlog-to-changelog: Use committer date, not author date.
183
184         xstrtol_error: Fix typo.
185         * lib/xstrtol-error.c (xstrtol_error): The parameter was unused:
186         s/exit_failure/exit_status/.
187
188 2008-02-09  Jim Meyering  <meyering@redhat.com>
189
190         New script and module: gitlog-to-changelog
191         * MODULES.html.sh (maint+release support): Add gitlog-to-changelog.
192         * modules/gitlog-to-changelog: New file.
193         * build-aux/gitlog-to-changelog: New file.
194
195 2008-02-08  Jim Meyering  <meyering@redhat.com>
196
197         Avoid two "parameter unused" warnings.
198         * lib/stat-time.h (get_stat_birthtime_ns, get_stat_birthtime):
199         Mark "st" as used.
200
201         Use "git COMMAND", not "git-COMMAND".
202         * build-aux/bootstrap (version_controlled_file): s/git-rm/git-rm/.
203         * build-aux/announce-gen (get_tool_versions): Correct a diagnostic.
204         * build-aux/git-version-gen: Use "git status", not "git-status".
205
206 2008-02-07  Bruno Haible  <bruno@clisp.org>
207
208         * lib/vasnprintf.c (VASNPRINTF): Don't use %n on native Woe32 systems.
209         Avoids a crash on Windows Vista.
210         Reported by Adam Strzelecki <ono@java.pl> via
211         Simon Josefsson <simon@josefsson.org>.
212
213 2008-02-06  Bruno Haible  <bruno@clisp.org>
214
215         Fix *printf behaviour regarding the left-adjust flag on HP-UX 10.20.
216         * m4/printf.m4 (gl_PRINTF_FLAG_LEFTADJUST): New macro.
217         * lib/vasnprintf.c (VASNPRINTF): Handle NEED_PRINTF_FLAG_LEFTADJUST.
218         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_LEFTADJUST): New macro.
219         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
220         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
221         gl_PRINTF_FLAG_LEFTADJUST and test its result. Invoke
222         gl_PREREQ_VASNPRINTF_FLAG_LEFTADJUST.
223         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
224         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
225         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
226         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
227         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
228         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
229         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
230         * tests/test-vasnprintf-posix.c (test_function): Add testcases for the
231         left-adjust flag.
232         * tests/test-snprintf-posix.h (test_function): Likewise.
233         * tests/test-sprintf-posix.h (test_function): Likewise.
234         * tests/test-vasprintf-posix.c (test_function): Likewise.
235         * doc/posix-functions/fprintf.texi: Update.
236         * doc/posix-functions/printf.texi: Update.
237         * doc/posix-functions/snprintf.texi: Update.
238         * doc/posix-functions/sprintf.texi: Update.
239         * doc/posix-functions/vfprintf.texi: Update.
240         * doc/posix-functions/vprintf.texi: Update.
241         * doc/posix-functions/vsnprintf.texi: Update.
242         * doc/posix-functions/vsprintf.texi: Update.
243         Reported by Peter Fales <psfales@alcatel-lucent.com>.
244
245 2008-02-06  Bruno Haible  <bruno@clisp.org>
246
247         Fix bug introduced on 2008-01-26.
248         * lib/isnan.c (FUNC): Set to rpl_isnand, not rpl_isnan.
249
250 2008-02-06  Bruno Haible  <bruno@clisp.org>
251
252         Fix bug introduced on 2007-06-10.
253         * lib/vasnprintf.c (VASNPRINTF): Perform zero-padding also if
254         !NEED_PRINTF_FLAG_ZERO.
255
256 2008-02-05  Peter O'Gorman <pogma@thewrittenword.com>
257
258         getloadavg: use libperfstat on AIX5
259         * lib/getloadavg.c, m4/getloadavg.m4 [aix]: Use libperfstat
260
261 2008-02-03  Bruno Haible  <bruno@clisp.org>
262
263         * lib/diffseq.h: Add comments about required #includes.
264         Reported by Michael Biggs <gnulib@doubleplum.net>.
265
266 2008-02-01  Bruno Haible  <bruno@clisp.org>
267
268         * users.txt: Add gnuit.
269
270 2008-01-31  Bruno Haible  <bruno@clisp.org>
271
272         * lib/md4.c (set_uint32): Mark as inline.
273         * lib/md5.c (set_uint32): Likewise.
274         * lib/sha1.c (set_uint32): Likewise.
275         * m4/md4.m4 (gl_MD4): Require AC_C_INLINE.
276         * m4/md5.m4 (gl_MD5): Likewise.
277         * m4/sha1.m4 (gl_SHA1): Likewise.
278
279 2008-01-31  Jim Meyering  <meyering@redhat.com>
280
281         Use "sizeof VAR", rather than a literal "4".
282         * lib/md5.c (md5_read_ctx): Use sizeof ctx->A, not 4.
283         * lib/md4.c (md4_read_ctx): Likewise.
284         * lib/sha1.c (sha1_read_ctx): Likewise.
285
286 2008-01-31  Simon Josefsson  <simon@josefsson.org>
287
288         * tests/test-sha1.c: New file, based on test-md5.c.
289
290         * modules/crypto/sha1-tests: New file.
291
292 2008-01-31  Simon Josefsson  <simon@josefsson.org>
293
294         * lib/sha1.h (SHA1_DIGEST_SIZE): Define.
295
296 2008-01-31  Jim Meyering  <meyering@redhat.com>
297
298         Prefer "sizeof v" over the equivalent "4".
299         * lib/md4.c (set_uint32): Use "sizeof v" as memcpy length, not 4.
300         * lib/md5.c (set_uint32): Likewise.
301         * lib/sha1.c (set_uint32): Likewise.
302
303 2008-01-31  Simon Josefsson  <simon@josefsson.org>
304
305         * lib/sha1.c (set_uint32): Mark function as static.
306
307 2008-01-31  Simon Josefsson  <simon@josefsson.org>
308
309         md2: clarify comments to say that alignment is not required.
310         * lib/md2.h: Remove warning about alignment in comment.
311         * lib/md2.c (md2_read_ctx, md2_finish_ctx): Doc fix, alignment has
312         never been required.
313
314 2008-01-31  Simon Josefsson  <simon@josefsson.org>
315
316         md4: adapt alignment constraint fix from sha1.
317         * lib/md4.c (set_uint32): New function, from sha1.c
318         (md4_read_ctx): Use it.
319         (md4_finish_ctx): Doc fix.
320         * lib/md4.h: Doc fix.
321
322 2008-01-31  Simon Josefsson  <simon@josefsson.org>
323
324         md5: adapt alignment constraint fix from sha1.
325         * lib/md5.c (set_uint32): New function, from sha1.c
326         (md5_read_ctx): Use it.
327         (md5_finish_ctx): Doc fix.
328         * lib/md5.h: Doc fix.
329
330 2008-01-30  Peter Palfrader  <weasel@debian.org>
331
332         sha1: remove the result buffer alignment constraint
333         * lib/sha1.c (set_uint32): New function.
334         (sha1_read_ctx): Rewrite to remove the result buffer alignment
335         constraint.
336         (sha1_finish_ctx): Remove comment warning about alignment constraint.
337         * lib/sha1.h: Likewise.
338
339 2008-01-30  Andreas Schwab  <schwab@suse.de>
340             Bruno Haible  <bruno@clisp.org>
341
342         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Include <float.h> and ensure a
343         correct definition of LDBL_MIN_EXP.
344
345 2008-01-30  Karl Berry  <karl@gnu.org>
346
347         * config/srclist-update: try to preserve x bit on updates.
348         * config/srclistvars.sh: update for karl.
349
350 2008-01-29  Jim Meyering  <meyering@redhat.com>
351
352         vasnprintf.c: Avoid warning about unused label
353         * lib/vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Guard the
354         "overflow" label definition and associated code with the
355         same cpp condition that guards the sole use of that label.
356
357 2008-01-26  Bruno Haible  <bruno@clisp.org>
358
359         * m4/isnanl.m4 (gl_HAVE_ISNANL_NO_LIBM, gl_HAVE_ISNANL_IN_LIBM,
360         gl_FUNC_ISNANL_WORKS): Test the GCC >= 4.0 built-in.
361         * lib/isnanl.h (isnanl): Use the GCC >= 4.0 built-in.
362         * lib/isnanl-nolibm.h (isnanl): Likewise.
363         Reported by Paul Eggert <eggert@cs.ucla.edu>.
364
365 2008-01-26  Bruno Haible  <bruno@clisp.org>
366
367         * m4/isnand.m4 (gl_FUNC_ISNAND_NO_LIBM): Test the GCC >= 4.0 built-in.
368         * lib/isnand.h (isnand): Use the GCC >= 4.0 built-in.
369
370 2008-01-26  Bruno Haible  <bruno@clisp.org>
371
372         * m4/isnanf.m4 (gl_HAVE_ISNANF_NO_LIBM, gl_ISNANF_WORKS): Test the
373         GCC >= 4.0 built-in.
374         * lib/isnanf.h (isnanf): Use the GCC >= 4.0 built-in.
375
376 2008-01-26  Bruno Haible  <bruno@clisp.org>
377
378         Rename isnan, applicable to 'double' only, to isnand.
379         * modules/isnand-nolibm: Renamed from modules/isnan-nolibm.
380         (Files): Add lib/isnand.h, lib/isnand.c. Remove lib/isnan.h.
381         (configure.ac): Update.
382         (Include): Replace "isnan.h" with "isnand.h".
383         * m4/isnand.m4: Renamed from m4/isnan.m4.
384         (gl_FUNC_ISNAND_NO_LIBM): Renamed from gl_FUNC_ISNAN_NO_LIBM. Set
385         HAVE_ISNAND_IN_LIBC instead of HAVE_ISNAN_IN_LIBC. Build isnand.c
386         instead of isnan.c.
387         * lib/isnand.h: Renamed from lib/isnan.h. Test HAVE_ISNAND_IN_LIBC
388         instead of HAVE_ISNAN_IN_LIBC.
389         (isnand): Renamed from isnan.
390         * lib/isnand.c: New file.
391         * modules/isnand-nolibm-tests: Renamed from modules/isnan-nolibm-tests.
392         (Files): Add tests/test-isnand.c. Remove tests/test-isnan.c.
393         (Makefile.am): Update.
394         * tests/test-isnand.c: Renamed from tests/test-isnan.c.
395         Include isnand.h instead of isnan.h.
396         (main): Test isnand instead of isnan.
397         * modules/fprintf-posix (Depends-on): Add isnand-nolibm, remove
398         isnan-nolibm.
399         * modules/frexp (Depends-on): Likewise.
400         * modules/frexp-tests (Depends-on): Likewise.
401         * modules/frexp-nolibm (Depends-on): Likewise.
402         * modules/frexp-nolibm-tests (Depends-on): Likewise.
403         * modules/isfinite (Depends-on): Likewise.
404         * modules/round-tests (Depends-on): Likewise.
405         * modules/signbit (Depends-on): Likewise.
406         * modules/signbit-tests (Depends-on): Likewise.
407         * modules/snprintf-posix (Depends-on): Likewise.
408         * modules/sprintf-posix (Depends-on): Likewise.
409         * modules/trunc-tests (Depends-on): Likewise.
410         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
411         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
412         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
413         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
414         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
415         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
416         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
417         * modules/vasnprintf-posix (Depends-on): Likewise.
418         * modules/vasprintf-posix (Depends-on): Likewise.
419         * modules/vfprintf-posix (Depends-on): Likewise.
420         * modules/vsnprintf-posix (Depends-on): Likewise.
421         * modules/vsprintf-posix (Depends-on): Likewise.
422         * lib/frexp.c: Include isnand.h instead of isnan.h.
423         (ISNAN): Set to isnand instead of isnan.
424         * lib/isfinite.c: Include isnand.h instead of isnan.h.
425         (gl_isfinited): Use isnand instead of isnan.
426         * lib/signbitd.c: Include isnand.h instead of isnan.h.
427         (gl_signbitd): Use isnand instead of isnan.
428         * lib/vasnprintf.c: Include isnand.h instead of isnan.h.
429         (is_infinite_or_zero, VASNPRINTF): Use isnand instead of isnan.
430         * tests/test-frexp.c: Include isnand.h instead of isnan.h.
431         (main): Use isnand instead of isnan.
432         * tests/test-round1.c: Include isnand.h.
433         (main): Use isnand instead of isnan.
434         * tests/test-round2.c: Include isnand.h instead of isnan.h.
435         (ISNAN): Set to isnand instead of isnan.
436         * tests/test-trunc1.c: Include isnand.h.
437         (main): Use isnand instead of isnan.
438         * tests/test-trunc2.c: Include isnand.h instead of isnan.h.
439         (equal): Use isnand instead of isnan.
440         * MODULES.html.sh (Mathematics <math.h>): Replace isnan-nolibm with
441         isnand-nolibm.
442         * NEWS: Mention the change.
443
444 2008-01-25  Paul Eggert  <eggert@cs.ucla.edu>
445             Bruno Haible  <bruno@clisp.org>
446
447         * m4/signbit.m4 (gl_SIGNBIT): Require a macro definition. Test whether
448         the GCC builtins for signbits are present and set
449         REPLACE_SIGNBIT_USING_GCC if so.
450         * lib/math.in.h (signbit): Define using GCC builtins if
451         REPLACE_SIGNBIT_USING_GCC is set.
452         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize
453         REPLACE_SIGNBIT_USING_GCC.
454         * modules/math (Makefile.am): Substitute REPLACE_SIGNBIT_USING_GCC.
455
456 2008-01-25  Jim Meyering  <meyering@redhat.com>
457
458         Prefer <config.h> over "config.h".  See autoconf doc for explanation.
459         * lib/poll.c: Include <config.h>, not "config.h".
460         * tests/test-getaddrinfo.c: Likewise.
461
462 2008-01-25  Simon Josefsson  <simon@josefsson.org>
463
464         * modules/sockets-tests: New file.
465
466 2008-01-24  Simon Josefsson  <simon@josefsson.org>
467
468         * modules/sockets: New module, can be used to call WSA_Startup and
469         WSA_Cleanup when needed.
470
471         * lib/sockets.h, lib/sockets.c: New files.
472
473         * m4/sockets.m4: New file.
474
475         * tests/test-sockets.c: New file.
476
477 2008-01-19  Bruno Haible  <bruno@clisp.org>
478
479         * doc/posix-headers: Renamed from doc/headers.
480         * doc/posix-functions: Renamed from doc/functions.
481         * doc/gnulib.texi: Update.
482
483 2008-01-19  Bruno Haible  <bruno@clisp.org>
484
485         * doc/glibc-functions/strcasestr.texi: Include contents of
486         doc/functions/strcasestr.texi, fixing the list of platforms.
487         * doc/functions/strcasestr.texi: Remove file.
488
489 2008-01-19  Bruno Haible  <bruno@clisp.org>
490
491         * doc/glibc-functions/memmem.texi: Include contents of
492         doc/functions/memmem.texi.
493         * doc/functions/memmem.texi: Remove file.
494
495 2008-01-18  Bruno Haible  <bruno@clisp.org>
496
497         * doc/glibc-functions/*.texi: New files.
498         * doc/gnulib.texi (Glibc Function Substitutes): Completely rewritten
499         to use the new files.
500
501 2008-01-17  Bruno Haible  <bruno@clisp.org>
502
503         * tests/test-gethostname.c (main): Fix printf statement.
504
505 2008-01-17  Simon Josefsson  <simon@josefsson.org>
506
507         * modules/gethostname-tests: New file.
508
509         * tests/test-gethostname.c: New file.
510
511 2008-01-17  Simon Josefsson  <simon@josefsson.org>
512
513         * lib/gethostname.c: Include string.h unconditionally, strncpy is
514         used by the UNAME case.  Reported by Bruno Haible
515         <bruno@clisp.org>.
516
517 2008-01-17  Eric Blake  <ebb9@byu.net>
518
519         Convert c-strcasestr to be more efficient.
520         * modules/c-strcasestr (Files): Use Two-Way, not KMP.
521         (Depends-on): Add c-strcase, remove malloca, strnlen.
522         * tests/test-c-strcasestr.c (main): Enhance test.
523         * lib/c-strcasestr.c (c_strcasestr): Rewrite to new algorithm.
524
525 2007-01-16  Paolo Bonzini  <bonzini@gnu.org>
526
527         * build-aux/bootstrap (MSGID_BUGS_ADDRESS): New overridable variable.
528         Use it in creating po/Makevars.
529
530 2008-01-15  Simon Josefsson  <simon@josefsson.org>
531
532         * lib/gc-libgcrypt.c (gc_init): Disable secure memory by default.
533         Applications that requires it should initialize libgcrypt
534         manually.
535
536 2008-01-16  Simon Josefsson  <simon@josefsson.org>
537
538         * lib/gethostname.c [!HAVE_UNAME]: Need string.h for strcpy.
539
540 2008-01-15  Paul Eggert  <eggert@cs.ucla.edu>
541
542         Fix problem with getdate on mingw32 reported by Simon Josefsson
543         in <http://lists.gnu.org/archive/html/bug-gnulib/2008-01/msg00192.html>.
544         * lib/getdate.y (get_date): Check "HAVE_DECL_TZNAME", not "defined
545         tzname", when deciding whether to declare tzname.
546         * lib/strftime.c (tzname): Likewise.
547
548 2008-01-15  Bruno Haible  <bruno@clisp.org>
549
550         Work around a MacOS X 10.5 bug in frexpl().
551         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Also check denormalized numbers.
552         * doc/functions/frexpl.texi: Document the bug.
553         Reported by Elias Pipping <pipping@gentoo.org>.
554
555 2008-01-14  Eric Blake  <ebb9@byu.net>
556
557         Touch up previous patch.
558         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR_SIMPLE): Fix typo.
559         * doc/functions/strcasestr.texi (strcasestr): Document OpenBSD bug.
560
561         Convert strcasestr module to use Two-Way algorithm.
562         * modules/strcasestr-simple: New module, based on the old
563         strcasestr, but with Two-Way rather than KMP.
564         * modules/strcasestr (Depends-on): Change to strcasestr-simple.
565         * lib/string.in.h (rpl_strcasestr): Declare.
566         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Check for linear
567         performance.
568         * lib/strcasestr.c (strcasestr): Simplify, and avoid malloc.
569         * modules/string (Makefile.am): Support strcasestr.
570         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Likewise.
571         * modules/strcasestr-tests (Depends-on): Check for alarm.
572         * tests/test-strcasestr.c: Augment test.
573         * lib/str-two-way.h: Clean up stray macro.
574         * NEWS: Document new module.
575         * MODULES.html.sh (string handling): Likewise.
576         * doc/functions/strcasestr.texi: New file.
577         * doc/gnulib.texi (Function Substitutes): New node.  Move memmem
578         here, since it is not a POSIX function.
579
580 2008-01-14  Colin Watson  <cjwatson@debian.org>
581             Bruno Haible  <bruno@clisp.org>
582
583         * m4/strsignal.m4 (gl_FUNC_STRSIGNAL): Also check whether strsignal
584         works fine; if not, set REPLACE_STRSIGNAL.
585         (gl_PREREQ_STRSIGNAL): Require AC_DECL_SYS_SIGLIST.
586         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
587         REPLACE_STRSIGNAL.
588         * lib/string.in.h (strsignal): Consider REPLACE_STRSIGNAL.
589         * modules/string (Makefile.am): Substitute REPLACE_STRSIGNAL.
590         * tests/test-strsignal.c (main): Check out-of-range signal numbers.
591
592 2008-01-14  Bruno Haible  <bruno@clisp.org>
593
594         * modules/strsignal (Include): Change to <string.h>.
595
596 2008-01-14  Colin Watson  <cjwatson@debian.org>
597
598         * modules/argp (Notice): Add a notice recommending to change
599         XGETTEXT_OPTIONS.
600         (configure.ac): Invoke AM_XGETTEXT_OPTION if it exists.
601
602 2008-01-13  Colin Watson  <cjwatson@debian.org>
603
604         * modules/strsignal-tests: New file.
605         * tests/test-strsignal.c: New file.
606
607         * lib/strsignal.c: New file, from glibc with modifications.
608         * lib/siglist.h: New file, from glibc with modifications.
609         * lib/string.in.h (strsignal): New declaration.
610         * m4/strsignal.m4: New file.
611         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
612         GNULIB_STRSIGNAL and HAVE_DECL_STRSIGNAL.
613         * modules/strsignal: New file.
614         * modules/string (Makefile.am): Substitute GNULIB_STRSIGNAL and
615         HAVE_DECL_STRSIGNAL.
616
617 2008-01-13  Bruno Haible  <bruno@clisp.org>
618
619         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Check that the
620         locale encoding is not ASCII. Needed for OpenBSD 4.0.
621         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Likewise.
622         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
623
624 2008-01-13  Bruno Haible  <bruno@clisp.org>
625
626         * lib/argp-fmtstream.h (__attribute__): Don't redefine if
627         __STRICT_ANSI__ is set: it's not needed by any version of gcc.
628         * lib/argp.h (__attribute__): Likewise.
629         * lib/c-stack.c (__attribute__): Likewise.
630         * lib/error.h (__attribute__): Likewise.
631         * lib/fts.c (__attribute__): Likewise.
632         * lib/openat.h (__attribute__): Likewise.
633         * lib/stdio.in.h (__attribute__): Likewise.
634         * lib/string.in.h (__attribute__): Likewise.
635         * lib/utimens.c (__attribute__): Likewise.
636         * lib/vasnprintf.h (__attribute__): Likewise.
637         * lib/xalloc.h (__attribute__): Likewise.
638         * lib/xprintf.h (__attribute__): Likewise.
639         * lib/xstrtol.h (__attribute__): Likewise.
640         * lib/xvasprintf.h (__attribute__): Likewise.
641
642 2008-01-12  Bruno Haible  <bruno@clisp.org>
643
644         * doc/gnulib.texi (Glibc Header File Substitutes): New chapter.
645         * doc/glibc-headers/a.out.texi: New file.
646         * doc/glibc-headers/aliases.texi: New file.
647         * doc/glibc-headers/alloca.texi: New file.
648         * doc/glibc-headers/ar.texi: New file.
649         * doc/glibc-headers/argp.texi: New file.
650         * doc/glibc-headers/argz.texi: New file.
651         * doc/glibc-headers/byteswap.texi: New file.
652         * doc/glibc-headers/crypt.texi: New file.
653         * doc/glibc-headers/endian.texi: New file.
654         * doc/glibc-headers/envz.texi: New file.
655         * doc/glibc-headers/err.texi: New file.
656         * doc/glibc-headers/error.texi: New file.
657         * doc/glibc-headers/execinfo.texi: New file.
658         * doc/glibc-headers/fpu_control.texi: New file.
659         * doc/glibc-headers/fstab.texi: New file.
660         * doc/glibc-headers/fts.texi: New file.
661         * doc/glibc-headers/getopt.texi: New file.
662         * doc/glibc-headers/ieee754.texi: New file.
663         * doc/glibc-headers/ifaddrs.texi: New file.
664         * doc/glibc-headers/libintl.texi: New file.
665         * doc/glibc-headers/mcheck.texi: New file.
666         * doc/glibc-headers/mntent.texi: New file.
667         * doc/glibc-headers/obstack.texi: New file.
668         * doc/glibc-headers/paths.texi: New file.
669         * doc/glibc-headers/printf.texi: New file.
670         * doc/glibc-headers/pty.texi: New file.
671         * doc/glibc-headers/resolv.texi: New file.
672         * doc/glibc-headers/shadow.texi: New file.
673         * doc/glibc-headers/sysexits.texi: New file.
674         * doc/glibc-headers/ttyent.texi: New file.
675
676 2008-01-12  Jim Meyering  <meyering@redhat.com>
677
678         announce-gen: emit Gnulib's git-based version string.
679         * build-aux/announce-gen: Remove option: --gnulib-snapshot-time-stamp=S.
680         New option --gnulib-version=V, where V is expected to be
681         the output of running git describe in the gnulib directory.
682         (get_tool_versions): Request feedback on xdelta.  I suspect it's
683         not useful, and plan to stop publishing an xdelta file with each
684         coreutils release.
685
686         * build-aux/announce-gen: Also check for lzma-compressed files.
687
688 2008-01-11  Bruno Haible  <bruno@clisp.org>
689
690         * tests/test-memmem.c (main): Increase maximum allowed time.
691         * tests/test-strstr.c (main): Likewise.
692
693 2008-01-11  Bruno Haible  <bruno@clisp.org>
694
695         * doc/functions/memmem.texi: Add more precisions about platforms.
696         * doc/functions/strstr.texi: Likewise.
697
698 2008-01-10  Eric Blake  <ebb9@byu.net>
699
700         * m4/strstr.m4: Delete cruft from copy-n-paste.
701         Reported by Bruno Haible.
702
703 2008-01-10  Bruno Haible  <bruno@clisp.org>
704
705         Make c-strstr rely on strstr.
706         * lib/c-strstr.c: Don't include str-kmp.h.
707         (c_strstr): Define in terms of strstr.
708         * modules/c-strstr (Files): Remove lib/str-kmp.h.
709         (Depends-on): Remove stdbool, malloca, strnlen. Add strstr.
710
711 2008-01-10  Bruno Haible  <bruno@clisp.org>
712
713         * doc/gnulib.texi (String Functions in C Locale): New section.
714         * doc/c-ctype.texi: New file.
715         * doc/c-strcase.texi: New file.
716         * doc/c-strcaseeq.texi: New file.
717         * doc/c-strcasestr.texi: New file.
718         * doc/c-strstr.texi: New file.
719         * doc/c-strtod.texi: New file.
720         * doc/c-strtold.texi: New file.
721
722 2008-01-10  Eric Blake  <ebb9@byu.net>
723
724         * lib/relocatable.h: Fix a comment.
725
726 2008-01-10  Eric Blake  <ebb9@byu.net>
727
728         Share two-way algorithm.
729         * lib/str-two-way.h: New file, merged from...
730         * lib/memmem.c: ...here...
731         * lib/strstr.c: ...and here.
732         * modules/memmem (Files): Use it.
733         * modules/strstr (Files): Likewise.
734
735         Avoid quadratic strstr implementations.
736         * lib/strstr.c: New file.
737         * m4/strstr.m4: Likewise.
738         * modules/strstr: Likewise.
739         * modules/strstr-tests: Likewise.
740         * tests/test-strstr.c: Likewise.
741         * lib/string.in.h (rpl_strstr): Declare.
742         (memmem) [GNULIB_POSIXCHECK]: Document speed issue.
743         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Support strstr.
744         * modules/string (Makefile.am): Likewise.
745         * MODULES.html.sh (string handling): Mention new module.
746         * doc/functions/strstr.texi (strstr): Document the bug.
747
748 2008-01-10  Bruno Haible  <bruno@clisp.org>
749
750         * lib/relocatable.h (relocate): State whether result is freshly
751         allocated or not.
752         * lib/relocatable.c (relocate): Return a freshly allocated string
753         instead of a pointer to a privately held string.
754         Reported by Sylvain Beucler <beuc@gnu.org>.
755
756 2008-01-10  Colin Watson  <cjwatson@debian.org>
757
758         * lib/canonicalize-lgpl.c [!_LIBC]: Fix typo in #if directive:
759         s/S_ISNLK/S_ISLNK/.
760
761 2008-01-09  Bruno Haible  <bruno@clisp.org>
762
763         * doc/functions/memmem.texi: Use the same structure as snprintf.texi
764         and other files.
765         * m4/memmem.m4 (gl_FUNC_MEMMEM): Say "guessing no" instead of "no"
766         if it's only a guess.
767         * modules/memmem: Simplify by depending on memmem-simple.
768
769 2008-01-09  Bruno Haible  <bruno@clisp.org>
770
771         Work around OpenBSD 4.0 tdelete() bug.
772         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Also check tdelete's return value.
773         * lib/search.in.h: If REPLACE_TSEARCH is 1, define tsearch etc. as
774         macros and don't redefine the enum values.
775         * m4/search_h.m4 (gl_SEARCH_H_DEFAULTS): Initialize REPLACE_TSEARCH.
776         * modules/search (Makefile.am): Also substitute REPLACE_TSEARCH.
777         * doc/functions/tdelete.texi: Document the OpenBSD 4.0 bug.
778
779 2008-01-09  Bruno Haible  <bruno@clisp.org>
780
781         * tests/test-wcwidth.c: Include <string.h> and localcharset.h.
782         (main): Don't perform the tests if setlocale did not install a UTF-8
783         locale. Needed on OpenBSD 4.0.
784         * modules/wcwidth-tests (Depends-on): Add localcharset.
785
786 2008-01-09  Paul Eggert  <eggert@cs.ucla.edu>
787
788         gl_FUNC_ALLOCA no longer defines HAVE_ALLOCA_H unconditionally.
789         See <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00149.html>.
790         * NEWS: announce this.
791         * m4/alloca.m4 (gl_FUNC_ALLOCA): Don't define HAVE_ALLOCA_H.
792
793 2008-01-09  Simon Josefsson  <simon@josefsson.org>
794         and Eric Blake  <ebb9@byu.net>
795
796         Add memmem-simple module.
797         * m4/memmem.m4 (gl_FUNC_MEMMEM_SIMPLE): New macro.
798         (gl_FUNC_MEMMEM): Separate performance from presence checks.
799         * modules/memmem-simple: New file.
800         * modules/memmem (Description): Tweak.
801         * MODULES.html.sh (string handling): Mention new module.
802         * doc/functions/memmem.texi (memmem): Distinguish which flaws are
803         addressed by memmem-simple.
804         * NEWS: Document the difference.
805
806 2008-01-09  Eric Blake  <ebb9@byu.net>
807
808         Give gcc some memmem optimization hints.
809         * lib/string.in.h (memmem, memrchr, strchrnul, strnlen, strpbrk)
810         (strcasestr): Declare as pure.
811         * modules/memmem (Maintainer): Claim my implementation.
812
813 2008-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
814
815         Support AIX 6.1 and higher.
816         * build-aux/config.libpath: Likewise.
817         * build-aux/config.rpath: Likewise.
818
819 2008-01-08  Jim Meyering  <meyering@redhat.com>
820             Bruno Haible  <bruno@clisp.org>
821
822         * lib/printf-parse.c (PRINTF_PARSE): Handle a size specifier "q"
823         on MacOS X and a size specifier "I64" on mingw. Needed for PRIdMAX.
824         Reported by Peter Fales in
825         <http://lists.gnu.org/archive/html/bug-coreutils/2007-12/msg00148.html>.
826
827 2008-01-08  Bruno Haible  <bruno@clisp.org>
828
829         * modules/unictype/category-of (Depends-on): Add
830         unictype/category-none.
831         * modules/unictype/category-and-tests (Depends-on): Add
832         unictype/category-{L,N,Lu,Nd}.
833         * modules/unictype/category-and-not-tests (Depends-on): Likewise.
834         * modules/unictype/category-or-tests (Depends-on): Add
835         unictype/category-{L,N}.
836         * modules/unictype/category-name-tests (Depends-on): Add
837         unictype/category-{Z,Nl}.
838         Reported by Simon Josefsson.
839
840 2008-01-08  Bruno Haible  <bruno@clisp.org>
841
842         * lib/str-kmp.h (knuth_morris_pratt_unibyte): Document the calling
843         convention better.
844         * lib/mbsstr.c (knuth_morris_pratt_multibyte): Likewise.
845         * lib/mbscasestr.c (knuth_morris_pratt_multibyte): Likewise.
846         Reported by Peter Miller <millerp@canb.auug.org.au>.
847
848 2008-01-08  Eric Blake  <ebb9@byu.net>
849
850         Rewrite memmem to guarantee linear complexity without malloc.
851         * lib/memmem.c (memmem): Use Two-Way rather than
852         Knuth-Morris-Pratt, to allow O(1) space usage.
853         (critical_factorization, two_way_short_needle)
854         (two_way_long_needle): New functions.
855         (knuth_morris_pratt): Delete.
856         * modules/memmem (Depends-on): No longer need malloca or stdbool.
857         Add stdint.
858         * tests/test-memmem.c (main): Add tests for periodic needle and
859         sublinear performance.
860         * doc/functions/memmem.texi (memmem): Document other deficiencies
861         in cygwin and older glibc.
862
863 2008-01-08  Bruno Haible  <bruno@clisp.org>
864
865         * modules/memmem-tests (Makefile.am): Remove TESTS_ENVIRONMENT
866         augmentation.
867
868 2008-01-08  Mike Frysinger  <vapier@gentoo.org>
869
870         Add a configure time option: --disable-acl.
871         * m4/acl.m4 (gl_FUNC_ACL): Wrap all ACL logic in a call to
872         AC_ARG_ENABLE(acl).
873
874 2008-01-06  Simon Josefsson  <simon@josefsson.org>
875
876         * tests/test-localename.c: Don't include obsolete "setenv.h".
877
878         * modules/localename-tests (Depends-on): Need unsetenv.
879
880 2008-01-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
881
882         * DEPENDENCIES: Require Texinfo version 4.6 or newer.
883
884 2008-01-06  Colin Watson  <cjwatson@debian.org>
885
886         * users.txt: Add man-db.
887
888 2008-01-07  Bruno Haible  <bruno@clisp.org>
889
890         * doc/gnulib-intro.texi (Library vs Reusable Code): Restore the
891         previous section name.
892
893 2008-01-07  Bruno Haible  <bruno@clisp.org>
894
895         * lib/progname.c (set_program_name): Don't strip off a leading
896         "lt-" prefix outside a .libs directory.
897         Suggested by Paul Eggert.
898
899 2008-01-01  Sylvain Beucler  <beuc@gnu.org>
900             Bruno Haible  <bruno@clisp.org>
901
902         Improve memory cleanup in 'relocatable' module.
903         * lib/relocatable.h (compute_curr_prefix): Change return type to
904         'char *'.
905         * lib/relocatable.c (compute_curr_prefix): Change return type to
906         'char *'. Free curr_installdir after use.
907         (relocate): Free curr_prefix_better after use.
908         * lib/progreloc.c (prepare_relocate): Free curr_prefix after use.
909
910 2008-01-01  Bruno Haible  <bruno@clisp.org>
911
912         * tests/test-wcwidth.c (main): Relax test of U+2060. Avoids a test
913         failure on older glibc systems.
914         Reported by Peter Fales <psfales@alcatel-lucent.com>.
915
916 2008-01-05  Eric Blake  <ebb9@byu.net>
917
918         Avoid quadratic system memmem.
919         * m4/memmem.m4 (gl_FUNC_MEMMEM): Check for quadratic memmem.
920         Reported by Ralf Wildenhues.
921
922         Fix memmem test for mingw.
923         * modules/memmem-tests (configure.ac): Check for alarm.
924         * tests/test-memmem.c (main): Avoid alarm on platforms that lack
925         it.
926         * doc/functions/memmem.texi: New file.
927         * doc/gnulib.texi (Function Substitutes): Add memmem.
928         Reported by Bruno Haible.
929
930 2008-01-04  Bruno Haible  <bruno@clisp.org>
931
932         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP):
933         Require gl_HEADER_STRINGS_H_DEFAULTS, not
934         gl_HEADER_STRING_H_DEFAULTS.
935
936 2008-01-04  Eric Blake  <ebb9@byu.net>
937
938         Shorten duration of memmem test.
939         * tests/test-memmem.c (main): Use alarm to declare failure if test
940         is taking too long.
941         Reported by Ralf Wildenhues.
942
943 2007-12-21  Simon Josefsson  <simon@josefsson.org>
944
945         * modules/relocatable-prog-wrapper (Depends-on): Add intprops and
946         string, needed by strerror.
947
948 2008-01-03  Colin Watson  <cjwatson@debian.org>
949             Bruno Haible  <bruno@clisp.org>
950
951         * doc/gnulib-tool.texi (Localization): New section.
952
953 2008-01-02  Bruno Haible  <bruno@clisp.org>
954
955         * lib/memmem.c (knuth_morris_pratt, memmem): Change all 'char *'
956         variables to 'unsigned char *' type.
957         Reported by Paul Eggert.
958
959 2008-01-02  Jim Meyering  <jim@meyering.net>
960
961         * lib/version-etc.c (COPYRIGHT_YEAR): Increase for new year.
962
963 2007-12-31  Jim Meyering  <jim@meyering.net>
964
965         Avoid use of private FTS type name.
966         * lib/fts.c (fts_sort): Use FTSENT rather than "struct _ftsent".
967
968 2007-12-30  Karl Berry  <karl@gnu.org>
969
970         * doc/gnulib.texi (Library vs. Reusable Code): remove period, to
971         work around defect in Texinfo and/or the standalone Info browser.
972
973 2007-12-30  Bruno Haible  <bruno@clisp.org>
974
975         Unify 5 copies of the KMP code.
976         * lib/str-kmp.h: New file.
977         * lib/c-strcasestr.c: Include str-kmp.h.
978         (knuth_morris_pratt): Remove function.
979         (c_strcasestr): Update.
980         * lib/c-strstr.c: Include str-kmp.h.
981         (knuth_morris_pratt): Remove function.
982         (c_strcasestr): Update.
983         * lib/mbscasestr.c: Include str-kmp.h.
984         (knuth_morris_pratt_unibyte): Remove function.
985         * lib/mbsstr.c: Include str-kmp.h.
986         (knuth_morris_pratt_unibyte): Remove function.
987         * lib/strcasestr.c: Include str-kmp.h.
988         (knuth_morris_pratt): Remove function.
989         (strcasestr): Update.
990         * modules/c-strcasestr (Files): Add lib/str-kmp.h.
991         * modules/c-strstr (Files): Likewise.
992         * modules/mbscasestr (Files): Likewise.
993         * modules/mbsstr (Files): Likewise.
994         * modules/strcasestr (Files): Likewise.
995         Suggested by Paul Eggert.
996
997 2007-12-30  Bruno Haible  <bruno@clisp.org>
998
999         * lib/xmalloca.c (xmmalloca): Don't define if HAVE_ALLOCA is not
1000         defined.
1001
1002 2007-12-30  Bruno Haible  <bruno@clisp.org>
1003
1004         * lib/xmalloca.h: Include xalloc.h.
1005         (xnmalloca): New macro.
1006
1007 2007-12-30  Bruno Haible  <bruno@clisp.org>
1008
1009         * lib/malloca.h (nmalloca): New macro.
1010         * lib/c-strcasestr.c (knuth_morris_pratt): Use it.
1011         * lib/c-strstr.c (knuth_morris_pratt): Likewise.
1012         * lib/mbscasestr.c (knuth_morris_pratt_unibyte,
1013         knuth_morris_pratt_multibyte): Likewise.
1014         * lib/mbsstr.c (knuth_morris_pratt_unibyte,
1015         knuth_morris_pratt_multibyte): Likewise.
1016         * lib/memmem.c (knuth_morris_pratt): Likewise.
1017         * lib/strcasestr.c (knuth_morris_pratt): Likewise.
1018
1019 2007-12-25  Bruno Haible  <bruno@clisp.org>
1020
1021         Fixup after 2007-10-17 commit. Ensure that 'glob' stays under LGPLv2+.
1022         * lib/glob.c: Don't include openat.h.
1023         (link_exists2_p): Add back the code that deals with the
1024         !GLOB_ALTDIRFUNC case.
1025         (link_exists_p) [!_LIBC && !HAVE_FSTATAT]: Just call link_exists2_p and
1026         let it do the filename concatenation.
1027         * m4/glob.m4 (gl_PREREQ_GLOB): Add check for fstatat.
1028         * modules/glob (Depends-on): Remove openat.
1029
1030 2007-12-31  Bruno Haible  <bruno@clisp.org>
1031
1032         * modules/dirfd (License): Change to LGPLv2+.
1033         Approved by Jim Meyering.
1034
1035 2007-12-29  Paul Eggert  <eggert@cs.ucla.edu>
1036
1037         * lib/memmem.c (knuth_morris_pratt): Check for size_t overflow
1038         when multiplying M by sizeof (size_t).
1039
1040 2007-12-10  Martin Lambers  <marlam@marlam.de>
1041
1042         Override getpagesize on mingw.
1043         * lib/getpagesize.c: New file.
1044         * m4/getpagesize.m4 (gl_FUNC_GETPAGESIZE): Enable replacement on mingw.
1045         * modules/getpagesize (Files): Add lib/getpagesize.c.
1046         * lib/unistd.in.h (getpagesize): Declare if we are using a replacement.
1047         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
1048         REPLACE_GETPAGESIZE.
1049         * modules/unistd (Makefile.am): Substitute REPLACE_GETPAGESIZE.
1050
1051 2007-12-25  Bruno Haible  <bruno@clisp.org>
1052
1053         * modules/localcharset (Notice): New field.
1054         (configure.ac): Define LOCALCHARSET_TESTS_ENVIRONMENT.
1055         Suggested by Ben Pfaff <blp@cs.stanford.edu>.
1056
1057 2007-12-25  Paul Eggert  <eggert@cs.ucla.edu>
1058             Bruno Haible  <bruno@clisp.org>
1059
1060         Avoid using the syntax symbol() in formatted documentation.
1061         * MODULES.html.sh (func_module): When replacing symbol() with a
1062         hyperlink, remove the parentheses. Show an error if some remain.
1063         Recognize and render the '...' syntax.
1064         * doc/alloca-opt.texi: Remove parentheses from symbol reference.
1065         Rework. Add paragraph about GCC's inlining.
1066         * doc/alloca.texi: Likewise.
1067         * doc/error.texi: Remove parentheses from symbol reference.
1068         * doc/gnulib-intro.texi: Likewise.
1069         * doc/gnulib.texi (alloca, alloca-opt): New nodes.
1070         * modules/fnmatch (Description): Reword to say "the ... function".
1071         * modules/full-read (Description): Likewise.
1072         * modules/full-write (Description): Likewise.
1073         * modules/safe-read (Description): Likewise.
1074         * modules/safe-write (Description): Likewise.
1075         * modules/strchrnul (Description): Likewise.
1076         * modules/trim (Description): Likewise.
1077         * modules/error (Description): Remove parentheses from symbol
1078         references.
1079         * modules/verror (Description): Likewise.
1080         Reported by Karl Berry.
1081
1082 2007-12-25  Bruno Haible  <bruno@clisp.org>
1083
1084         Fixup after 2007-10-16 commit.
1085         * lib/glob.c (glob_in_dir): Don't use ISO C99 syntax.
1086
1087 2007-12-24  Bruno Haible  <bruno@clisp.org>
1088
1089         Make --enable-relocatable work with DESTDIR.
1090         * build-aux/install-reloc: Accept another argument 'destdir'. Use it
1091         to compute installdir from destprog.
1092         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): In INSTALL_PROGRAM_ENV,
1093         also set the RELOC_DESTDIR variable.
1094         Reported by Ð›ÐµÐ²Ð°ÑˆÐµÐ² Ð˜Ð²Ð°Ð½ <octagram@bluebottle.com>.
1095
1096 2007-12-24  Bruno Haible  <bruno@clisp.org>
1097
1098         Fix link error due to xalloc_die().
1099         * lib/progreloc.c: When NO_XMALLOC is defined, use areadlink instead
1100         of xreadlink.
1101         * lib/relocwrapper.c: Update comments.
1102         * build-aux/install-reloc: Remove xreadlink.c from file list.
1103         * modules/relocatable-prog-wrapper (Files): Remove xreadlink.h and
1104         xreadlink.c.
1105         Reported by Ð›ÐµÐ²Ð°ÑˆÐµÐ² Ð˜Ð²Ð°Ð½ <octagram@bluebottle.com>.
1106
1107 2007-12-24  Bruno Haible  <bruno@clisp.org>
1108
1109         Split setenv module into setenv and unsetenv. Get rid of setenv.h.
1110         * lib/setenv.h: Remove file.
1111         * lib/stdlib.in.h (setenv, unsetenv): New declarations, moved here from
1112         lib/setenv.h.
1113         * modules/setenv (Files): Remove lib/setenv.h, lib/unsetenv.c.
1114         (Depends-on): Add stdlib.
1115         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR. Don't invoke
1116         gl_FUNC_UNSETENV.
1117         (Include): Replace setenv.h with <stdlib.h>.
1118         * modules/unsetenv: New file.
1119         * lib/setenv.c: Include <stdlib.h> first, after alloca.h.
1120         * lib/unsetenv.c: Include <stdlib.h> first.
1121         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_SETENV_SEPARATE): Require
1122         gl_STDLIB_H_DEFAULTS. Conditionally set HAVE_SETENV to 0.
1123         (gl_FUNC_UNSETENV): Require gl_STDLIB_H_DEFAULTS. Conditionally set
1124         HAVE_UNSETENV to 0. Set VOID_UNSETENV as an AC_SUBSTed variable.
1125         * modules/stdlib (Makefile.am): Substitute also GNULIB_SETENV,
1126         HAVE_SETENV, GNULIB_UNSETENV, HAVE_UNSETENV, VOID_UNSETENV.
1127         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_SETENV,
1128         HAVE_SETENV, GNULIB_UNSETENV, HAVE_UNSETENV, VOID_UNSETENV.
1129         * doc/functions/unsetenv.texi: Update.
1130         * modules/xsetenv (Depends-on): Add unsetenv.
1131         * modules/getdate (Depends-on): Likewise.
1132         * lib/xsetenv.h: Include <stdlib.h> instead of setenv.h.
1133         * lib/xsetenv.c: Don't include setenv.h.
1134         * lib/getdate.y: Likewise.
1135         * lib/relocwrapper.c: Likewise.
1136         * modules/relocatable-prog-wrapper (Files): Remove lib/setenv.h.
1137         (Depends-on): Add stdlib.
1138         * NEWS: Mention the changes.
1139         Reported by Ð›ÐµÐ²Ð°ÑˆÐµÐ² Ð˜Ð²Ð°Ð½ <octagram@bluebottle.com>.
1140
1141 2007-12-23  Bruno Haible  <bruno@clisp.org>
1142
1143         * lib/memmem.c (memmem): Use lowercase variable names. Tab
1144         indentation.
1145
1146 2007-12-23  Bruno Haible  <bruno@clisp.org>
1147
1148         * lib/c-strcasestr.c: Add more comments.
1149         * lib/c-strstr.c: Likewise.
1150         * lib/mbscasestr.c: Likewise.
1151         * lib/mbsstr.c: Likewise.
1152         * lib/strcasestr.c: Likewise.
1153         * lib/memmem.c: Likewise.
1154
1155 2007-12-23  Bruno Haible  <bruno@clisp.org>
1156
1157         * tests/test-memmem.c: Include <string.h> first.
1158
1159 2007-12-22  Bruno Haible  <bruno@clisp.org>
1160
1161         * gnulib-tool (func_create_testdir): Change $auxdir while generating
1162         the contents of $testsbase.
1163         Reported by Ralf Wildenhues.
1164
1165 2007-12-22  Bruno Haible  <bruno@clisp.org>
1166
1167         * gnulib-tool (func_emit_tests_Makefile_am): Replace local_ldadd with
1168         two variables local_ldadd_before, local_ldadd_last.
1169
1170 2007-12-20  Eric Blake  <ebb9@byu.net>
1171
1172         Work around circular library issue when cross-compiling.
1173         * lib/progname.c (set_program_name): Use strncmp, not memcmp, so
1174         that progname.o does not need to pull in rpl_memcmp.
1175
1176 2007-12-19  Eric Blake  <ebb9@byu.net>
1177
1178         Fix memmem to avoid O(n^2) worst-case complexity.
1179         * lib/memmem.c (knuth_morris_pratt): New function.
1180         (memmem): Use it if first few naive iterations fail.
1181         * m4/memmem.m4 (gl_FUNC_MEMMEM): Detect cygwin bug.
1182         * modules/memcmp (License): Set to LGPLv2+, not LGPL.
1183         * modules/memchr (License): Likewise.
1184         * modules/memmem (Depends-on): Add memcmp, memchr, stdbool, and
1185         malloca.
1186         * tests/test-memmem.c: Rewrite, borrowing ideas from
1187         test-mbsstr1.c; the old version wouldn't even compile!
1188         * modules/memmem-tests: New file.
1189         * lib/string.in.h (rpl_memmem): Add declaration.
1190         * modules/string (Makefile.am): Substitute REPLACE_MEMMEM.
1191         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Default for
1192         REPLACE_MEMMEM.
1193
1194 2007-12-18  Paul Eggert  <eggert@cs.ucla.edu>
1195
1196         Fix problem with _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H on VMS.
1197         * lib/stdint.in.h (_GL_JUST_INCLUDE_SYSTEM_INTTYPES_H): Define
1198         before any system include files, and undef after them all.  This
1199         should fix a problem on VMS reported by John E. Malmberg in
1200         <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00118.html>.
1201
1202 2007-12-17  Eric Blake  <ebb9@byu.net>
1203
1204         Revert addition of verify, for BSD/OS.
1205         * lib/fseeko.c [!HAVE_FSEEKO]: Allow off_t > long, even though it
1206         can't handle large files, for the sake of obsolete platforms.
1207         * modules/fseeko (Depends-on): Remove verify.
1208         * doc/functions/fseeko.texi (fseeko): Document BSD/OS limitation.
1209         * doc/functions/ftello.texi (ftello): Likewise.
1210         * doc/functions/fgetpos.texi (fgetpos): Likewise.
1211         Reported by Larry Jones.
1212
1213 2007-12-17  Petr Salinger  <Petr.Salinger@seznam.cz>
1214
1215         getcwd.c: Use a more readable witness: HAVE_OPENAT_SUPPORT
1216         * lib/getcwd.c: Define and use HAVE_OPENAT_SUPPORT, in place of AT_FDCWD.
1217
1218 2007-12-17  Jim Meyering  <meyering@redhat.com>
1219
1220         Port to GNU/kFreeBSD - FreeBSD kernel + GNU libc,
1221         which has no openat syscall, yet <fcntl.h> does define AT_FDCWD.
1222         * lib/getcwd.c: Undef AT_FDCWD if there is no openat function.
1223         * modules/getcwd (Depends-on): Add openat.
1224         Reported by Petr Salinger.
1225
1226 2007-12-17  Bruno Haible  <bruno@clisp.org>
1227
1228         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Use GL_NOCRASH to
1229         avoid a segmentation fault of the configure test on x86_64 systems.
1230
1231 2007-12-15  Jim Meyering  <meyering@redhat.com>
1232
1233         * build-aux/gnupload (GPG): Don't hard-code absolute name of gpg binary.
1234
1235 2007-12-13  Eric Blake  <ebb9@byu.net>
1236
1237         Another fseek test.
1238         * tests/test-fseek.c (main): Also test ungetc handling.
1239         * tests/test-fseeko.c (main): Likewise.
1240         * modules/fseeko (Depends-on): Add verify.
1241         * lib/fseeko.c [!HAVE_FSEEKO]: Verify that off_t is not too
1242         large.
1243         Reported by Larry Jones.
1244
1245         Fix fseeko on mingw.
1246         * lib/fseeko.c (rpl_fseeko) [_IOERR]: Reset EOF flag on successful
1247         seek.
1248
1249         Beef up fseek tests.
1250         * tests/test-fseek.c (main): Also test eof handling.
1251         * tests/test-fseeko.c (main): Likewise.
1252         Reported by Larry Jones.
1253
1254 2007-12-13  Larry Jones  <lawrence.jones@siemens.com>  (tiny change)
1255
1256         Fix fseeko on BSD-based platforms.
1257         * lib/fseeko.c (rpl_fseeko) [__sferror]: Reset EOF flag on
1258         successful seek.
1259
1260 2007-12-12  Eric Blake  <ebb9@byu.net>
1261
1262         Allow circular dependency of separate libtests.a
1263         * gnulib-tool (func_emit_tests_Makefile_am): Add AM_LIBTOOLFLAGS
1264         when use_libtests.
1265
1266 2007-12-11  Eric Blake  <ebb9@byu.net>
1267
1268         Fix bug with -0.0L in previous patch.
1269         * lib/isnan.c (rpl_isnanl): Make robust to -0.0L and pad bits.
1270         * tests/test-isnan.c (main): Also test on zeroes.
1271         * tests/test-isnanf.c (main): Likewise.
1272         * tests/test-isnanl.h (main): Likewise.
1273
1274         Detect pseudo-denormals on x86 even when cross-compiling.
1275         * lib/isnan.c (rpl_isnanl) [!KNOWN_EXPBIT0_LOCATION
1276         && USE_LONG_DOUBLE && x86]: Add one more check to filter out
1277         invalid bit patterns that happen to satisfy ==.
1278
1279         Avoid link failures with separate libtests.a.
1280         * gnulib-tool (func_emit_tests_Makefile_am): Also list local_ldadd
1281         last, to satisfy circular dependencies.
1282
1283 2007-12-11  Eric Blake  <ebb9@byu.net>
1284         and Bruno Haible  <bruno@clisp.org>
1285
1286         Fix OpenBSD 4.0 <float.h> handling of long double.
1287         * m4/float_h.m4 (gl_FLOAT_H): Also claim OpenBSD is broken.
1288         * lib/float.in.h [__OpenBSD__]: Add fixes for OpenBSD.
1289         * doc/headers/float.texi (float.h): Document OpenBSD bug.
1290
1291 2007-12-11  Jim Meyering  <meyering@redhat.com>
1292
1293         * users.txt: Add libvirt.
1294
1295         Support versions of autoconf prior to 2.59c.
1296         * gnulib-tool (func_emit_initmacro_done): Define m4_foreach_w
1297         if it is not already defined.
1298
1299 2007-12-09  Bruno Haible  <bruno@clisp.org>
1300
1301         Let 'gnulib-tool --import' collect sources needed for the tests in
1302         tests/ rather than in lib/.
1303         * gnulib-tool (func_emit_tests_Makefile_am): Accept use_libtests
1304         argument. If true, add rules to generate libtests.a, and put libtests.a
1305         into $(LDADD). Consider source files in subdirectories and set
1306         uses_subdirs.
1307         (func_emit_initmacro_start, func_emit_initmacro_end,
1308         func_emit_initmacro_done): Pass all arguments explicitly.
1309         (func_import): Determine two module lists main_modules,
1310         testsrelated_modules. Determine use_libtests. Determine two variables
1311         sed_transform_main_lib_file, sed_transform_testsrelated_lib_file
1312         instead of just sed_transform_lib_file. Determine two variables
1313         main_files and testsrelated_files. Compute 'files' as the union of
1314         both. Adjust sed_rewrite_old_files, sed_rewrite_new_files,
1315         func_add_or_update. In the generated gnulib-comp.m4, collect the
1316         object files for tests/ in different variables than those for lib/.
1317         Substitute LIBTESTS_LIBDEPS.
1318         (func_create_testdir): Combine the uses_subdirs results from
1319         func_emit_lib_Makefile_am and from func_emit_tests_Makefile_am.
1320
1321 2007-12-09  Bruno Haible  <bruno@clisp.org>
1322
1323         * gnulib-tool (func_emit_tests_Makefile_am): Expand references to
1324         the build-aux directory.
1325
1326 2007-12-09  Bruno Haible  <bruno@clisp.org>
1327
1328         * gnulib-tool (func_emit_tests_Makefile_am): Remove redundant code
1329         introduced on 2006-09-09.
1330
1331 2007-12-07  Jim Meyering  <meyering@redhat.com>
1332
1333         Let these macros work also with autoconf-2.59.
1334         * m4/getline.m4 (gl_FUNC_GETLINE): Require only autoconf-2.59.  2.60
1335         is not needed, since gnulib now permits use of AC_CHECK_DECLS_ONCE.
1336         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
1337
1338 2007-12-06  Jim Meyering  <meyering@redhat.com>
1339
1340         Avoid a configure-time syntax error in gl_FUNC_ACL.
1341         * m4/acl.m4 (gl_FUNC_ACL): Be careful to check for the acl_trivial
1342         function in each branch, before testing the cache variable.
1343
1344 2007-12-04  Eric Blake  <ebb9@byu.net>
1345
1346         Make scripts executable.
1347         * build-aux/config.guess: Add execute permissions.
1348         * build-aux/config.sub: Likewise.
1349         * build-aux/gendocs.sh: Likewise.
1350
1351         Fix frexp on mingw.
1352         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Detect mingw bug when
1353         cross-compiling.
1354         * doc/functions/frexp.texi (frexp): Document the bug.
1355
1356         Make cygwin fseeko check more reliable.
1357         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET) [__CYGWIN__]: Use cygwin
1358         version numbers, rather than unrelated feature check.
1359         * doc/functions/fseeko.texi (fseeko): Tweak failure report.
1360         * doc/functions/ftello.texi (ftello): Likewise.
1361         Reported by Bruno Haible.
1362
1363         * m4/strerror.m4: Bump version number.
1364
1365 2007-12-03  Bruno Haible  <bruno@clisp.org>
1366
1367         * doc/functions/mprotect.texi: Mention the mingw problem.
1368
1369 2007-12-03  Eric Blake  <ebb9@byu.net>
1370
1371         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): Ensure
1372         REPLACE_STRERROR is initialized before this macro.
1373
1374 2007-12-03  Paul Eggert  <eggert@cs.ucla.edu>
1375
1376         Add support for Solaris 10 ACLs.  Also, ACLs are Gnulib, not Autoconf.
1377         * modules/acl (configure.ac): Rename AC_FUNC_ACL to gl_FUNC_ACL.
1378         * m4/acl.m4 (gl_FUNC_ACL): Renamed from AC_FUNC_ACL.  On Solaris,
1379         put -lsec in even for programs other than 'ls'.  This fixes a problem
1380         for gettext reported by Bruno Haible in
1381         <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00007.html>.
1382         * lib/acl.c (copy_acl, qset_acl) [USE_ACL && defined ACL_NO_TRIVIAL]:
1383         Add support for Solaris 10.  This isn't efficient, but should get the
1384         job done for now.
1385
1386 2007-12-03  James Youngman  <jay@gnu.org>
1387
1388         * doc/regexprops-generic.texi: change "an close-group" to "a
1389         close-group" and "illegal" to "not allowed".
1390
1391 2007-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1392
1393         * lib/unictype/pr_byname.c: Include unictype/pr_byname.h instead of
1394         pr_byname.h. Needed for the rare case when the maintainer has done
1395         "make maintainer-clean" in the source directory and then attempts a
1396         build outside the source directory.
1397         * lib/unictype/scripts.c: Include unictype/scripts_byname.h instead of
1398         scripts_byname.h.
1399
1400 2007-12-02  Martin Lambers <marlam@marlam.de>
1401             Bruno Haible  <bruno@clisp.org>
1402
1403         * lib/getpagesize.h: Remove file.
1404         * lib/unistd.in.h: Include declaration of getpagesize here.
1405         * m4/getpagesize.m4 (gl_FUNC_GETPAGESIZE): Renamed from gl_GETPAGESIZE.
1406         Invoke gl_UNISTD_H_DEFAULTS. Set HAVE_GETPAGESIZE, HAVE_OS_H,
1407         HAVE_SYS_PARAM_H.
1408         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_GETPAGESIZE,
1409         HAVE_GETPAGESIZE, HAVE_OS_H, HAVE_SYS_PARAM_H.
1410         * modules/getpagesize (Files): Remove lib/getpagesize.h.
1411         (Depends-on): Add unistd.
1412         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
1413         (Include): Use <unistd.h> instead of getpagesize.h.
1414         * modules/unistd (Makefile.am): Substitute also GNULIB_GETPAGESIZE,
1415         HAVE_GETPAGESIZE, HAVE_OS_H, HAVE_SYS_PARAM_H.
1416         * m4/pagealign_alloc.m4 (gl_PREREQ_PAGEALIGN_ALLOC): Remove
1417         gl_GETPAGESIZE invocation, already handled by module dependency.
1418         * lib/pagealign_alloc.c: Don't include getpagesize.h.
1419
1420 2007-12-02  Bruno Haible  <bruno@clisp.org>
1421
1422         * modules/strings-tests: New file.
1423         * tests/test-strings.c: New file.
1424
1425         Move declarations of str{,n}casecmp from <string.h> to <strings.h>.
1426         * lib/strings.in.h: New file.
1427         * lib/string.in.h (strcasecmp, strncasecmp): Remove declarations.
1428         * m4/strings_h.m4: New file.
1429         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Remove initialization
1430         of HAVE_STRCASECMP, HAVE_DECL_STRNCASECMP.
1431         * modules/strings: New file.
1432         * modules/string (Makefile.am): Update.
1433         * modules/strcase (Include): Mention <strings.h>, not <string.h>.
1434         Reported by Karl Berry.
1435
1436 2007-12-01  Eric Blake  <ebb9@byu.net>
1437
1438         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET) [__CYGWIN__]: Rewrite to
1439         accomodate fix in cygwin 1.5.25.
1440
1441 2007-12-01  Jim Meyering  <meyering@redhat.com>
1442
1443         Fix a bug that inhibited much of the utf8-optimization in regcomp.c.
1444         * lib/regcomp.c (optimize_utf8): Fix a typo, s/idx/ctx_type/,
1445         that would inhibit utf8-optimization of a regexp containing line-
1446         or buffer-anchors, e.g., `^', `$'.
1447
1448 2007-11-30  Bruno Haible  <bruno@clisp.org>
1449
1450         * lib/lock.h (gl_recursive_lock_init) [PTHREAD &&
1451         PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: Call
1452         glthread_recursive_lock_init.
1453         * lib/lock.c (glthread_recursive_lock_init)
1454         [PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: New function.
1455         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
1456
1457 2007-11-28  Paul Eggert  <eggert@cs.ucla.edu>
1458
1459         New function qset_acl, like set_acl but with syscall semantics.
1460         * lib/acl.h (qset_acl): New decl.
1461         * lib/acl.c (qset_acl): New function.
1462         (set_acl): Use new function.  Use more-consistent diagnostics.
1463
1464 2007-11-28  Jim Meyering  <meyering@redhat.com>
1465
1466         * modules/physmem (License): Change from GPL to LGPLv2+.
1467
1468 2007-11-26  Bruno Haible  <bruno@clisp.org>
1469
1470         * lib/vasnprintf.c (decode_long_double): Don't abort if the
1471         'long double' type has excess precision.
1472         Reported by Jim Meyering in
1473         <http://lists.gnu.org/archive/html/bug-gnulib/2007-11/msg00120.html>.
1474
1475 2007-11-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1476
1477         * doc/fdl.texi, doc/gpl-3.0.texi, doc/lgpl-3.0.texi:
1478         Sync from <http://gnu.org/licenses>.
1479         * modules/agpl-3.0, doc/agpl-3.0.texi: New module,
1480         with license text from same location.
1481         * doc/maintain.texi, doc/standards.texi:  Sync from
1482         <http://savannah.gnu.org/projects/gnustandards>.
1483
1484 2007-11-22  OndÅ™ej Vašík  <ovasik@redhat.com>
1485         and Jim Meyering  <meyering@redhat.com>
1486
1487         Adjust getdate' grammar to accept a slightly more regular language.
1488         E.g., accept "YYYYMMDD +N days" as well as "YYYYMMDD N days".
1489         Before, the former was rejected.
1490         * lib/getdate.y (digits_to_date_time): New function, factored
1491         out of ...
1492         (number): ...here.  Just call digits_to_date_time.
1493         (hybrid): New non-terminal to handle an <unsigned number,
1494         signed relative offset> sequence consistently.
1495
1496 2007-11-18  Jim Meyering  <meyering@redhat.com>
1497
1498         Pull my changes from coreutils:
1499         bootstrap: fix typo to enable use of $gnulib_tool_option_extras.
1500         * build-aux/bootstrap (gnulib_tool_options): Add a space before the
1501         use of $gnulib_tool_option_extras, so that it's separated from the
1502         preceding argument.
1503
1504         Fix bootstrap failure to handle files like lib/uniwidth/cjk.h.
1505         * build-aux/bootstrap (cp_mark_as_generated): Create any required
1506         parent destination directories before copying a file into place.
1507
1508 2007-11-18  Sergey Poznyakoff  <gray@gnu.org.ua>
1509
1510         bootstrap: work also with 4-argument variant of AC_INIT
1511         * build-aux/bootstrap (gnulib_extra_files): Adjust sed command.
1512
1513 2007-11-16  Paul Eggert  <eggert@cs.ucla.edu>
1514
1515         Port test-getaddrinfo to Solaris.
1516         Problem reported by Bruno Haible in
1517         <http://lists.gnu.org/archive/html/bug-gnulib/2007-03/msg00171.html>.
1518         * tests/test-getaddrinfo.c (simple): Add a comment asking for an
1519         explanation of setting 'hints'.
1520         Don't reject an implementation merely because it returns EAI_SERVICE.
1521         (EAI_SERVICE): Define to 0 if not defined.
1522
1523 2007-11-15  Paul Eggert  <eggert@cs.ucla.edu>
1524
1525         The license of gnu-make and posix-shell is now "GPLed build tool".
1526         * modules/gnu-make (License): Likewise.
1527         * modules/posix-shell (License): Likewise.
1528
1529         New module posix-shell, for determining a POSIX shell
1530         or perhaps something that is close enough to a POSIX shell.
1531         * m4/posix-shell.m4: New file.
1532         * modules/posix-shell: New file.
1533
1534         * MODULES.html.sh: Mention new module.
1535
1536         New module gnu-make, for determining whether we're using GNU Make.
1537         * m4/gnu-make.m4: New file.
1538         * modules/gnu-make: New file.
1539         * MODULES.html.sh: Mention new module.
1540
1541 2007-11-14  Jim Meyering  <meyering@redhat.com>
1542
1543         Define a sometimes-link-required function using ARGMATCH_DIE_DECL.
1544         * tests/test-argmatch.c (ARGMATCH_DIE_DECL): When defined,
1545         use this macro to create a function _definition_.
1546         Remove useless "#undef ARGMATCH_DIE".
1547
1548 2007-11-14  Bruno Haible  <bruno@clisp.org>
1549
1550         * lib/config.charset: Update for OpenBSD 4.1.
1551         Reported and helped by Ben Pfaff <blp@cs.stanford.edu>.
1552
1553 2007-11-12  Paul Eggert  <eggert@cs.ucla.edu>
1554
1555         Document 64-bit #if problems in stdint.texi.
1556         * doc/headers/stdint.texi (stdint.h): Mention problems with
1557         64-bit-#if, and how to work around them.
1558
1559         Don't insist on 'long long int' support in the preprocessor.  It
1560         breaks too many things.  For example, PRIdMAX still uses a 'long
1561         long int' format with the latest Sun compiler, even though
1562         HAVE_LONG_LONG_INT isn't defined due to that compiler's
1563         preprocessor problem.  This causes the latest coreutils to dump
1564         core on Solaris 10 sparc with the Sun C compiler.
1565         Instead, fix the 2007-10-16 problem in a different way, by evaluating
1566         the troublesome expressions at configure-time, not at #if-time.
1567         * m4/longlong.m4 (_AC_TYPE_LONG_LONG_SNIPPET): Don't test the
1568         preprocessor.
1569         * m4/inttypes.m4 (gl_INTTYPES_H): Move the #if checks into
1570         compile-time C checks, done at 'configure'-time.
1571         (gl_INTTYPES_CHECK_LONG_LONG_INT_CONDITION): New macro.
1572         * modules/inttypes (Makefile): Substitute the new symbols that
1573         gl_INTTYPES_H now generates.
1574         * lib/inttypes.in.h: Don't use constants wider than 'long' in #if.
1575
1576 2007-11-12  Bruno Haible  <bruno@clisp.org>
1577
1578         Tests for Unicode character classification functions.
1579
1580         * modules/unictype/bidicategory-byname-tests: New file.
1581         * modules/unictype/bidicategory-name-tests: New file.
1582         * modules/unictype/bidicategory-of-tests: New file.
1583         * modules/unictype/bidicategory-test-tests: New file.
1584         * modules/unictype/block-list-tests: New file.
1585         * modules/unictype/block-of-tests: New file.
1586         * modules/unictype/block-test-tests: New file.
1587         * modules/unictype/category-C-tests: New file.
1588         * modules/unictype/category-Cc-tests: New file.
1589         * modules/unictype/category-Cf-tests: New file.
1590         * modules/unictype/category-Cn-tests: New file.
1591         * modules/unictype/category-Co-tests: New file.
1592         * modules/unictype/category-Cs-tests: New file.
1593         * modules/unictype/category-L-tests: New file.
1594         * modules/unictype/category-Ll-tests: New file.
1595         * modules/unictype/category-Lm-tests: New file.
1596         * modules/unictype/category-Lo-tests: New file.
1597         * modules/unictype/category-Lt-tests: New file.
1598         * modules/unictype/category-Lu-tests: New file.
1599         * modules/unictype/category-M-tests: New file.
1600         * modules/unictype/category-Mc-tests: New file.
1601         * modules/unictype/category-Me-tests: New file.
1602         * modules/unictype/category-Mn-tests: New file.
1603         * modules/unictype/category-N-tests: New file.
1604         * modules/unictype/category-Nd-tests: New file.
1605         * modules/unictype/category-Nl-tests: New file.
1606         * modules/unictype/category-No-tests: New file.
1607         * modules/unictype/category-P-tests: New file.
1608         * modules/unictype/category-Pc-tests: New file.
1609         * modules/unictype/category-Pd-tests: New file.
1610         * modules/unictype/category-Pe-tests: New file.
1611         * modules/unictype/category-Pf-tests: New file.
1612         * modules/unictype/category-Pi-tests: New file.
1613         * modules/unictype/category-Po-tests: New file.
1614         * modules/unictype/category-Ps-tests: New file.
1615         * modules/unictype/category-S-tests: New file.
1616         * modules/unictype/category-Sc-tests: New file.
1617         * modules/unictype/category-Sk-tests: New file.
1618         * modules/unictype/category-Sm-tests: New file.
1619         * modules/unictype/category-So-tests: New file.
1620         * modules/unictype/category-Z-tests: New file.
1621         * modules/unictype/category-Zl-tests: New file.
1622         * modules/unictype/category-Zp-tests: New file.
1623         * modules/unictype/category-Zs-tests: New file.
1624         * modules/unictype/category-and-not-tests: New file.
1625         * modules/unictype/category-and-tests: New file.
1626         * modules/unictype/category-byname-tests: New file.
1627         * modules/unictype/category-name-tests: New file.
1628         * modules/unictype/category-none-tests: New file.
1629         * modules/unictype/category-of-tests: New file.
1630         * modules/unictype/category-or-tests: New file.
1631         * modules/unictype/category-test-withtable-tests: New file.
1632         * modules/unictype/combining-class-tests: New file.
1633         * modules/unictype/ctype-alnum-tests: New file.
1634         * modules/unictype/ctype-alpha-tests: New file.
1635         * modules/unictype/ctype-blank-tests: New file.
1636         * modules/unictype/ctype-cntrl-tests: New file.
1637         * modules/unictype/ctype-digit-tests: New file.
1638         * modules/unictype/ctype-graph-tests: New file.
1639         * modules/unictype/ctype-lower-tests: New file.
1640         * modules/unictype/ctype-print-tests: New file.
1641         * modules/unictype/ctype-punct-tests: New file.
1642         * modules/unictype/ctype-space-tests: New file.
1643         * modules/unictype/ctype-upper-tests: New file.
1644         * modules/unictype/ctype-xdigit-tests: New file.
1645         * modules/unictype/decimal-digit-tests: New file.
1646         * modules/unictype/digit-tests: New file.
1647         * modules/unictype/mirror-tests: New file.
1648         * modules/unictype/numeric-tests: New file.
1649         * modules/unictype/property-alphabetic-tests: New file.
1650         * modules/unictype/property-ascii-hex-digit-tests: New file.
1651         * modules/unictype/property-bidi-arabic-digit-tests: New file.
1652         * modules/unictype/property-bidi-arabic-right-to-left-tests: New file.
1653         * modules/unictype/property-bidi-block-separator-tests: New file.
1654         * modules/unictype/property-bidi-boundary-neutral-tests: New file.
1655         * modules/unictype/property-bidi-common-separator-tests: New file.
1656         * modules/unictype/property-bidi-control-tests: New file.
1657         * modules/unictype/property-bidi-embedding-or-override-tests: New file.
1658         * modules/unictype/property-bidi-eur-num-separator-tests: New file.
1659         * modules/unictype/property-bidi-eur-num-terminator-tests: New file.
1660         * modules/unictype/property-bidi-european-digit-tests: New file.
1661         * modules/unictype/property-bidi-hebrew-right-to-left-tests: New file.
1662         * modules/unictype/property-bidi-left-to-right-tests: New file.
1663         * modules/unictype/property-bidi-non-spacing-mark-tests: New file.
1664         * modules/unictype/property-bidi-other-neutral-tests: New file.
1665         * modules/unictype/property-bidi-pdf-tests: New file.
1666         * modules/unictype/property-bidi-segment-separator-tests: New file.
1667         * modules/unictype/property-bidi-whitespace-tests: New file.
1668         * modules/unictype/property-byname-tests: New file.
1669         * modules/unictype/property-combining-tests: New file.
1670         * modules/unictype/property-composite-tests: New file.
1671         * modules/unictype/property-currency-symbol-tests: New file.
1672         * modules/unictype/property-dash-tests: New file.
1673         * modules/unictype/property-decimal-digit-tests: New file.
1674         * modules/unictype/property-default-ignorable-code-point-tests: New file.
1675         * modules/unictype/property-deprecated-tests: New file.
1676         * modules/unictype/property-diacritic-tests: New file.
1677         * modules/unictype/property-extender-tests: New file.
1678         * modules/unictype/property-format-control-tests: New file.
1679         * modules/unictype/property-grapheme-base-tests: New file.
1680         * modules/unictype/property-grapheme-extend-tests: New file.
1681         * modules/unictype/property-grapheme-link-tests: New file.
1682         * modules/unictype/property-hex-digit-tests: New file.
1683         * modules/unictype/property-hyphen-tests: New file.
1684         * modules/unictype/property-id-continue-tests: New file.
1685         * modules/unictype/property-id-start-tests: New file.
1686         * modules/unictype/property-ideographic-tests: New file.
1687         * modules/unictype/property-ids-binary-operator-tests: New file.
1688         * modules/unictype/property-ids-trinary-operator-tests: New file.
1689         * modules/unictype/property-ignorable-control-tests: New file.
1690         * modules/unictype/property-iso-control-tests: New file.
1691         * modules/unictype/property-join-control-tests: New file.
1692         * modules/unictype/property-left-of-pair-tests: New file.
1693         * modules/unictype/property-line-separator-tests: New file.
1694         * modules/unictype/property-logical-order-exception-tests: New file.
1695         * modules/unictype/property-lowercase-tests: New file.
1696         * modules/unictype/property-math-tests: New file.
1697         * modules/unictype/property-non-break-tests: New file.
1698         * modules/unictype/property-not-a-character-tests: New file.
1699         * modules/unictype/property-numeric-tests: New file.
1700         * modules/unictype/property-other-alphabetic-tests: New file.
1701         * modules/unictype/property-other-default-ignorable-code-point-tests: New file.
1702         * modules/unictype/property-other-grapheme-extend-tests: New file.
1703         * modules/unictype/property-other-id-continue-tests: New file.
1704         * modules/unictype/property-other-id-start-tests: New file.
1705         * modules/unictype/property-other-lowercase-tests: New file.
1706         * modules/unictype/property-other-math-tests: New file.
1707         * modules/unictype/property-other-uppercase-tests: New file.
1708         * modules/unictype/property-paired-punctuation-tests: New file.
1709         * modules/unictype/property-paragraph-separator-tests: New file.
1710         * modules/unictype/property-pattern-syntax-tests: New file.
1711         * modules/unictype/property-pattern-white-space-tests: New file.
1712         * modules/unictype/property-private-use-tests: New file.
1713         * modules/unictype/property-punctuation-tests: New file.
1714         * modules/unictype/property-quotation-mark-tests: New file.
1715         * modules/unictype/property-radical-tests: New file.
1716         * modules/unictype/property-sentence-terminal-tests: New file.
1717         * modules/unictype/property-soft-dotted-tests: New file.
1718         * modules/unictype/property-space-tests: New file.
1719         * modules/unictype/property-terminal-punctuation-tests: New file.
1720         * modules/unictype/property-test-tests: New file.
1721         * modules/unictype/property-titlecase-tests: New file.
1722         * modules/unictype/property-unassigned-code-value-tests: New file.
1723         * modules/unictype/property-unified-ideograph-tests: New file.
1724         * modules/unictype/property-uppercase-tests: New file.
1725         * modules/unictype/property-variation-selector-tests: New file.
1726         * modules/unictype/property-white-space-tests: New file.
1727         * modules/unictype/property-xid-continue-tests: New file.
1728         * modules/unictype/property-xid-start-tests: New file.
1729         * modules/unictype/property-zero-width-tests: New file.
1730         * modules/unictype/scripts-tests: New file.
1731         * modules/unictype/syntax-c-ident-tests: New file.
1732         * modules/unictype/syntax-c-whitespace-tests: New file.
1733         * modules/unictype/syntax-java-ident-tests: New file.
1734         * modules/unictype/syntax-java-whitespace-tests: New file.
1735         * tests/unictype/test-bidi_byname.c: New file.
1736         * tests/unictype/test-bidi_name.c: New file.
1737         * tests/unictype/test-bidi_of.c: New file.
1738         * tests/unictype/test-bidi_test.c: New file.
1739         * tests/unictype/test-block_list.c: New file.
1740         * tests/unictype/test-block_of.c: New file.
1741         * tests/unictype/test-block_test.c: New file.
1742         * tests/unictype/test-categ_and.c: New file.
1743         * tests/unictype/test-categ_and_not.c: New file.
1744         * tests/unictype/test-categ_byname.c: New file.
1745         * tests/unictype/test-categ_name.c: New file.
1746         * tests/unictype/test-categ_none.c: New file.
1747         * tests/unictype/test-categ_of.c: New file.
1748         * tests/unictype/test-categ_or.c: New file.
1749         * tests/unictype/test-categ_test_withtable.c: New file.
1750         * tests/unictype/test-combining.c: New file.
1751         * tests/unictype/test-decdigit.c: New file.
1752         * tests/unictype/test-digit.c: New file.
1753         * tests/unictype/test-mirror.c: New file.
1754         * tests/unictype/test-numeric.c: New file.
1755         * tests/unictype/test-pr_byname.c: New file.
1756         * tests/unictype/test-pr_test.c: New file.
1757         * tests/unictype/test-predicate-part1.h: New file.
1758         * tests/unictype/test-predicate-part2.h: New file.
1759         * tests/unictype/test-scripts.c: New file.
1760         * tests/unictype/test-sy_c_ident.c: New file.
1761         * tests/unictype/test-sy_java_ident.c: New file.
1762
1763         * tests/unictype/test-categ_C.c: New file, generated by gen-ctype.c
1764         for Unicode 5.0.0.
1765         * tests/unictype/test-categ_Cc.c: Likewise.
1766         * tests/unictype/test-categ_Cf.c: Likewise.
1767         * tests/unictype/test-categ_Cn.c: Likewise.
1768         * tests/unictype/test-categ_Co.c: Likewise.
1769         * tests/unictype/test-categ_Cs.c: Likewise.
1770         * tests/unictype/test-categ_L.c: Likewise.
1771         * tests/unictype/test-categ_Ll.c: Likewise.
1772         * tests/unictype/test-categ_Lm.c: Likewise.
1773         * tests/unictype/test-categ_Lo.c: Likewise.
1774         * tests/unictype/test-categ_Lt.c: Likewise.
1775         * tests/unictype/test-categ_Lu.c: Likewise.
1776         * tests/unictype/test-categ_M.c: Likewise.
1777         * tests/unictype/test-categ_Mc.c: Likewise.
1778         * tests/unictype/test-categ_Me.c: Likewise.
1779         * tests/unictype/test-categ_Mn.c: Likewise.
1780         * tests/unictype/test-categ_N.c: Likewise.
1781         * tests/unictype/test-categ_Nd.c: Likewise.
1782         * tests/unictype/test-categ_Nl.c: Likewise.
1783         * tests/unictype/test-categ_No.c: Likewise.
1784         * tests/unictype/test-categ_P.c: Likewise.
1785         * tests/unictype/test-categ_Pc.c: Likewise.
1786         * tests/unictype/test-categ_Pd.c: Likewise.
1787         * tests/unictype/test-categ_Pe.c: Likewise.
1788         * tests/unictype/test-categ_Pf.c: Likewise.
1789         * tests/unictype/test-categ_Pi.c: Likewise.
1790         * tests/unictype/test-categ_Po.c: Likewise.
1791         * tests/unictype/test-categ_Ps.c: Likewise.
1792         * tests/unictype/test-categ_S.c: Likewise.
1793         * tests/unictype/test-categ_Sc.c: Likewise.
1794         * tests/unictype/test-categ_Sk.c: Likewise.
1795         * tests/unictype/test-categ_Sm.c: Likewise.
1796         * tests/unictype/test-categ_So.c: Likewise.
1797         * tests/unictype/test-categ_Z.c: Likewise.
1798         * tests/unictype/test-categ_Zl.c: Likewise.
1799         * tests/unictype/test-categ_Zp.c: Likewise.
1800         * tests/unictype/test-categ_Zs.c: Likewise.
1801         * tests/unictype/test-ctype_alnum.c: Likewise.
1802         * tests/unictype/test-ctype_alpha.c: Likewise.
1803         * tests/unictype/test-ctype_blank.c: Likewise.
1804         * tests/unictype/test-ctype_cntrl.c: Likewise.
1805         * tests/unictype/test-ctype_digit.c: Likewise.
1806         * tests/unictype/test-ctype_graph.c: Likewise.
1807         * tests/unictype/test-ctype_lower.c: Likewise.
1808         * tests/unictype/test-ctype_print.c: Likewise.
1809         * tests/unictype/test-ctype_punct.c: Likewise.
1810         * tests/unictype/test-ctype_space.c: Likewise.
1811         * tests/unictype/test-ctype_upper.c: Likewise.
1812         * tests/unictype/test-ctype_xdigit.c: Likewise.
1813         * tests/unictype/test-decdigit.h: Likewise.
1814         * tests/unictype/test-digit.h: Likewise.
1815         * tests/unictype/test-numeric.h: Likewise.
1816         * tests/unictype/test-pr_alphabetic.c: Likewise.
1817         * tests/unictype/test-pr_ascii_hex_digit.c: Likewise.
1818         * tests/unictype/test-pr_bidi_arabic_digit.c: Likewise.
1819         * tests/unictype/test-pr_bidi_arabic_right_to_left.c: Likewise.
1820         * tests/unictype/test-pr_bidi_block_separator.c: Likewise.
1821         * tests/unictype/test-pr_bidi_boundary_neutral.c: Likewise.
1822         * tests/unictype/test-pr_bidi_common_separator.c: Likewise.
1823         * tests/unictype/test-pr_bidi_control.c: Likewise.
1824         * tests/unictype/test-pr_bidi_embedding_or_override.c: Likewise.
1825         * tests/unictype/test-pr_bidi_eur_num_separator.c: Likewise.
1826         * tests/unictype/test-pr_bidi_eur_num_terminator.c: Likewise.
1827         * tests/unictype/test-pr_bidi_european_digit.c: Likewise.
1828         * tests/unictype/test-pr_bidi_hebrew_right_to_left.c: Likewise.
1829         * tests/unictype/test-pr_bidi_left_to_right.c: Likewise.
1830         * tests/unictype/test-pr_bidi_non_spacing_mark.c: Likewise.
1831         * tests/unictype/test-pr_bidi_other_neutral.c: Likewise.
1832         * tests/unictype/test-pr_bidi_pdf.c: Likewise.
1833         * tests/unictype/test-pr_bidi_segment_separator.c: Likewise.
1834         * tests/unictype/test-pr_bidi_whitespace.c: Likewise.
1835         * tests/unictype/test-pr_combining.c: Likewise.
1836         * tests/unictype/test-pr_composite.c: Likewise.
1837         * tests/unictype/test-pr_currency_symbol.c: Likewise.
1838         * tests/unictype/test-pr_dash.c: Likewise.
1839         * tests/unictype/test-pr_decimal_digit.c: Likewise.
1840         * tests/unictype/test-pr_default_ignorable_code_point.c: Likewise.
1841         * tests/unictype/test-pr_deprecated.c: Likewise.
1842         * tests/unictype/test-pr_diacritic.c: Likewise.
1843         * tests/unictype/test-pr_extender.c: Likewise.
1844         * tests/unictype/test-pr_format_control.c: Likewise.
1845         * tests/unictype/test-pr_grapheme_base.c: Likewise.
1846         * tests/unictype/test-pr_grapheme_extend.c: Likewise.
1847         * tests/unictype/test-pr_grapheme_link.c: Likewise.
1848         * tests/unictype/test-pr_hex_digit.c: Likewise.
1849         * tests/unictype/test-pr_hyphen.c: Likewise.
1850         * tests/unictype/test-pr_id_continue.c: Likewise.
1851         * tests/unictype/test-pr_id_start.c: Likewise.
1852         * tests/unictype/test-pr_ideographic.c: Likewise.
1853         * tests/unictype/test-pr_ids_binary_operator.c: Likewise.
1854         * tests/unictype/test-pr_ids_trinary_operator.c: Likewise.
1855         * tests/unictype/test-pr_ignorable_control.c: Likewise.
1856         * tests/unictype/test-pr_iso_control.c: Likewise.
1857         * tests/unictype/test-pr_join_control.c: Likewise.
1858         * tests/unictype/test-pr_left_of_pair.c: Likewise.
1859         * tests/unictype/test-pr_line_separator.c: Likewise.
1860         * tests/unictype/test-pr_logical_order_exception.c: Likewise.
1861         * tests/unictype/test-pr_lowercase.c: Likewise.
1862         * tests/unictype/test-pr_math.c: Likewise.
1863         * tests/unictype/test-pr_non_break.c: Likewise.
1864         * tests/unictype/test-pr_not_a_character.c: Likewise.
1865         * tests/unictype/test-pr_numeric.c: Likewise.
1866         * tests/unictype/test-pr_other_alphabetic.c: Likewise.
1867         * tests/unictype/test-pr_other_default_ignorable_code_point.c: Likewise.
1868         * tests/unictype/test-pr_other_grapheme_extend.c: Likewise.
1869         * tests/unictype/test-pr_other_id_continue.c: Likewise.
1870         * tests/unictype/test-pr_other_id_start.c: Likewise.
1871         * tests/unictype/test-pr_other_lowercase.c: Likewise.
1872         * tests/unictype/test-pr_other_math.c: Likewise.
1873         * tests/unictype/test-pr_other_uppercase.c: Likewise.
1874         * tests/unictype/test-pr_paired_punctuation.c: Likewise.
1875         * tests/unictype/test-pr_paragraph_separator.c: Likewise.
1876         * tests/unictype/test-pr_pattern_syntax.c: Likewise.
1877         * tests/unictype/test-pr_pattern_white_space.c: Likewise.
1878         * tests/unictype/test-pr_private_use.c: Likewise.
1879         * tests/unictype/test-pr_punctuation.c: Likewise.
1880         * tests/unictype/test-pr_quotation_mark.c: Likewise.
1881         * tests/unictype/test-pr_radical.c: Likewise.
1882         * tests/unictype/test-pr_sentence_terminal.c: Likewise.
1883         * tests/unictype/test-pr_soft_dotted.c: Likewise.
1884         * tests/unictype/test-pr_space.c: Likewise.
1885         * tests/unictype/test-pr_terminal_punctuation.c: Likewise.
1886         * tests/unictype/test-pr_titlecase.c: Likewise.
1887         * tests/unictype/test-pr_unassigned_code_value.c: Likewise.
1888         * tests/unictype/test-pr_unified_ideograph.c: Likewise.
1889         * tests/unictype/test-pr_uppercase.c: Likewise.
1890         * tests/unictype/test-pr_variation_selector.c: Likewise.
1891         * tests/unictype/test-pr_white_space.c: Likewise.
1892         * tests/unictype/test-pr_xid_continue.c: Likewise.
1893         * tests/unictype/test-pr_xid_start.c: Likewise.
1894         * tests/unictype/test-pr_zero_width.c: Likewise.
1895         * tests/unictype/test-sy_c_whitespace.c: Likewise.
1896         * tests/unictype/test-sy_java_whitespace.c: Likewise.
1897
1898 2007-11-12  Bruno Haible  <bruno@clisp.org>
1899
1900         Unicode character classification functions.
1901         * lib/unictype.h: New file.
1902         * modules/unictype/base: New file.
1903         * modules/unictype/category-L: New file.
1904         * modules/unictype/category-Lu: New file.
1905         * modules/unictype/category-Ll: New file.
1906         * modules/unictype/category-Lt: New file.
1907         * modules/unictype/category-Lm: New file.
1908         * modules/unictype/category-Lo: New file.
1909         * modules/unictype/category-M: New file.
1910         * modules/unictype/category-Mn: New file.
1911         * modules/unictype/category-Mc: New file.
1912         * modules/unictype/category-Me: New file.
1913         * modules/unictype/category-N: New file.
1914         * modules/unictype/category-Nd: New file.
1915         * modules/unictype/category-Nl: New file.
1916         * modules/unictype/category-No: New file.
1917         * modules/unictype/category-P: New file.
1918         * modules/unictype/category-Pc: New file.
1919         * modules/unictype/category-Pd: New file.
1920         * modules/unictype/category-Ps: New file.
1921         * modules/unictype/category-Pe: New file.
1922         * modules/unictype/category-Pi: New file.
1923         * modules/unictype/category-Pf: New file.
1924         * modules/unictype/category-Po: New file.
1925         * modules/unictype/category-S: New file.
1926         * modules/unictype/category-Sm: New file.
1927         * modules/unictype/category-Sc: New file.
1928         * modules/unictype/category-Sk: New file.
1929         * modules/unictype/category-So: New file.
1930         * modules/unictype/category-Z: New file.
1931         * modules/unictype/category-Zs: New file.
1932         * modules/unictype/category-Zl: New file.
1933         * modules/unictype/category-Zp: New file.
1934         * modules/unictype/category-C: New file.
1935         * modules/unictype/category-Cc: New file.
1936         * modules/unictype/category-Cf: New file.
1937         * modules/unictype/category-Cs: New file.
1938         * modules/unictype/category-Co: New file.
1939         * modules/unictype/category-Cn: New file.
1940         * modules/unictype/category-or: New file.
1941         * modules/unictype/category-of: New file.
1942         * modules/unictype/category-test: New file.
1943         * modules/unictype/category-test-withtable: New file.
1944         * modules/unictype/category-byname: New file.
1945         * modules/unictype/category-none: New file.
1946         * modules/unictype/category-and: New file.
1947         * modules/unictype/category-and-not: New file.
1948         * modules/unictype/category-name: New file.
1949         * modules/unictype/combining-class: New file.
1950         * modules/unictype/category-all: New file.
1951         * modules/unictype/bidicategory-all: New file.
1952         * modules/unictype/bidicategory-byname: New file.
1953         * modules/unictype/bidicategory-name: New file.
1954         * modules/unictype/bidicategory-of: New file.
1955         * modules/unictype/bidicategory-test: New file.
1956         * modules/unictype/decimal-digit: New file.
1957         * modules/unictype/digit: New file.
1958         * modules/unictype/numeric: New file.
1959         * modules/unictype/mirror: New file.
1960         * modules/unictype/property-white-space: New file.
1961         * modules/unictype/property-alphabetic: New file.
1962         * modules/unictype/property-other-alphabetic: New file.
1963         * modules/unictype/property-not-a-character: New file.
1964         * modules/unictype/property-default-ignorable-code-point: New file.
1965         * modules/unictype/property-other-default-ignorable-code-point: New
1966         file.
1967         * modules/unictype/property-deprecated: New file.
1968         * modules/unictype/property-logical-order-exception: New file.
1969         * modules/unictype/property-variation-selector: New file.
1970         * modules/unictype/property-private-use: New file.
1971         * modules/unictype/property-unassigned-code-value: New file.
1972         * modules/unictype/property-uppercase: New file.
1973         * modules/unictype/property-other-uppercase: New file.
1974         * modules/unictype/property-lowercase: New file.
1975         * modules/unictype/property-other-lowercase: New file.
1976         * modules/unictype/property-titlecase: New file.
1977         * modules/unictype/property-soft-dotted: New file.
1978         * modules/unictype/property-id-start: New file.
1979         * modules/unictype/property-other-id-start: New file.
1980         * modules/unictype/property-id-continue: New file.
1981         * modules/unictype/property-other-id-continue: New file.
1982         * modules/unictype/property-xid-start: New file.
1983         * modules/unictype/property-xid-continue: New file.
1984         * modules/unictype/property-pattern-white-space: New file.
1985         * modules/unictype/property-pattern-syntax: New file.
1986         * modules/unictype/property-join-control: New file.
1987         * modules/unictype/property-grapheme-base: New file.
1988         * modules/unictype/property-grapheme-extend: New file.
1989         * modules/unictype/property-other-grapheme-extend: New file.
1990         * modules/unictype/property-grapheme-link: New file.
1991         * modules/unictype/property-bidi-control: New file.
1992         * modules/unictype/property-bidi-left-to-right: New file.
1993         * modules/unictype/property-bidi-hebrew-right-to-left: New file.
1994         * modules/unictype/property-bidi-arabic-right-to-left: New file.
1995         * modules/unictype/property-bidi-european-digit: New file.
1996         * modules/unictype/property-bidi-eur-num-separator: New file.
1997         * modules/unictype/property-bidi-eur-num-terminator: New file.
1998         * modules/unictype/property-bidi-arabic-digit: New file.
1999         * modules/unictype/property-bidi-common-separator: New file.
2000         * modules/unictype/property-bidi-block-separator: New file.
2001         * modules/unictype/property-bidi-segment-separator: New file.
2002         * modules/unictype/property-bidi-whitespace: New file.
2003         * modules/unictype/property-bidi-non-spacing-mark: New file.
2004         * modules/unictype/property-bidi-boundary-neutral: New file.
2005         * modules/unictype/property-bidi-pdf: New file.
2006         * modules/unictype/property-bidi-embedding-or-override: New file.
2007         * modules/unictype/property-bidi-other-neutral: New file.
2008         * modules/unictype/property-hex-digit: New file.
2009         * modules/unictype/property-ascii-hex-digit: New file.
2010         * modules/unictype/property-ideographic: New file.
2011         * modules/unictype/property-unified-ideograph: New file.
2012         * modules/unictype/property-radical: New file.
2013         * modules/unictype/property-ids-binary-operator: New file.
2014         * modules/unictype/property-ids-trinary-operator: New file.
2015         * modules/unictype/property-zero-width: New file.
2016         * modules/unictype/property-space: New file.
2017         * modules/unictype/property-non-break: New file.
2018         * modules/unictype/property-iso-control: New file.
2019         * modules/unictype/property-format-control: New file.
2020         * modules/unictype/property-dash: New file.
2021         * modules/unictype/property-hyphen: New file.
2022         * modules/unictype/property-punctuation: New file.
2023         * modules/unictype/property-line-separator: New file.
2024         * modules/unictype/property-paragraph-separator: New file.
2025         * modules/unictype/property-quotation-mark: New file.
2026         * modules/unictype/property-sentence-terminal: New file.
2027         * modules/unictype/property-terminal-punctuation: New file.
2028         * modules/unictype/property-currency-symbol: New file.
2029         * modules/unictype/property-math: New file.
2030         * modules/unictype/property-other-math: New file.
2031         * modules/unictype/property-paired-punctuation: New file.
2032         * modules/unictype/property-left-of-pair: New file.
2033         * modules/unictype/property-combining: New file.
2034         * modules/unictype/property-composite: New file.
2035         * modules/unictype/property-decimal-digit: New file.
2036         * modules/unictype/property-numeric: New file.
2037         * modules/unictype/property-diacritic: New file.
2038         * modules/unictype/property-extender: New file.
2039         * modules/unictype/property-ignorable-control: New file.
2040         * modules/unictype/property-test: New file.
2041         * modules/unictype/property-byname: New file.
2042         * modules/unictype/property-all: New file.
2043         * modules/unictype/scripts: New file.
2044         * modules/unictype/scripts-all: New file.
2045         * modules/unictype/block-of: New file.
2046         * modules/unictype/block-test: New file.
2047         * modules/unictype/block-list: New file.
2048         * modules/unictype/block-all: New file.
2049         * modules/unictype/syntax-c-whitespace: New file.
2050         * modules/unictype/syntax-java-whitespace: New file.
2051         * modules/unictype/syntax-c-ident: New file.
2052         * modules/unictype/syntax-java-ident: New file.
2053         * modules/unictype/ctype-alnum: New file.
2054         * modules/unictype/ctype-alpha: New file.
2055         * modules/unictype/ctype-cntrl: New file.
2056         * modules/unictype/ctype-digit: New file.
2057         * modules/unictype/ctype-graph: New file.
2058         * modules/unictype/ctype-lower: New file.
2059         * modules/unictype/ctype-print: New file.
2060         * modules/unictype/ctype-punct: New file.
2061         * modules/unictype/ctype-space: New file.
2062         * modules/unictype/ctype-upper: New file.
2063         * modules/unictype/ctype-xdigit: New file.
2064         * modules/unictype/ctype-blank: New file.
2065         * lib/unictype/bidi_byname.c: New file.
2066         * lib/unictype/bidi_name.c: New file.
2067         * lib/unictype/bidi_of.c: New file.
2068         * lib/unictype/bidi_test.c: New file.
2069         * lib/unictype/bitmap.h: New file.
2070         * lib/unictype/block_test.c: New file.
2071         * lib/unictype/blocks.c: New file.
2072         * lib/unictype/categ_C.c: New file.
2073         * lib/unictype/categ_Cc.c: New file.
2074         * lib/unictype/categ_Cf.c: New file.
2075         * lib/unictype/categ_Cn.c: New file.
2076         * lib/unictype/categ_Co.c: New file.
2077         * lib/unictype/categ_Cs.c: New file.
2078         * lib/unictype/categ_L.c: New file.
2079         * lib/unictype/categ_Ll.c: New file.
2080         * lib/unictype/categ_Lm.c: New file.
2081         * lib/unictype/categ_Lo.c: New file.
2082         * lib/unictype/categ_Lt.c: New file.
2083         * lib/unictype/categ_Lu.c: New file.
2084         * lib/unictype/categ_M.c: New file.
2085         * lib/unictype/categ_Mc.c: New file.
2086         * lib/unictype/categ_Me.c: New file.
2087         * lib/unictype/categ_Mn.c: New file.
2088         * lib/unictype/categ_N.c: New file.
2089         * lib/unictype/categ_Nd.c: New file.
2090         * lib/unictype/categ_Nl.c: New file.
2091         * lib/unictype/categ_No.c: New file.
2092         * lib/unictype/categ_P.c: New file.
2093         * lib/unictype/categ_Pc.c: New file.
2094         * lib/unictype/categ_Pd.c: New file.
2095         * lib/unictype/categ_Pe.c: New file.
2096         * lib/unictype/categ_Pf.c: New file.
2097         * lib/unictype/categ_Pi.c: New file.
2098         * lib/unictype/categ_Po.c: New file.
2099         * lib/unictype/categ_Ps.c: New file.
2100         * lib/unictype/categ_S.c: New file.
2101         * lib/unictype/categ_Sc.c: New file.
2102         * lib/unictype/categ_Sk.c: New file.
2103         * lib/unictype/categ_Sm.c: New file.
2104         * lib/unictype/categ_So.c: New file.
2105         * lib/unictype/categ_Z.c: New file.
2106         * lib/unictype/categ_Zl.c: New file.
2107         * lib/unictype/categ_Zp.c: New file.
2108         * lib/unictype/categ_Zs.c: New file.
2109         * lib/unictype/categ_and.c: New file.
2110         * lib/unictype/categ_and_not.c: New file.
2111         * lib/unictype/categ_byname.c: New file.
2112         * lib/unictype/categ_name.c: New file.
2113         * lib/unictype/categ_none.c: New file.
2114         * lib/unictype/categ_of.c: New file.
2115         * lib/unictype/categ_or.c: New file.
2116         * lib/unictype/categ_test.c: New file.
2117         * lib/unictype/combining.c: New file.
2118         * lib/unictype/ctype_alnum.c: New file.
2119         * lib/unictype/ctype_alpha.c: New file.
2120         * lib/unictype/ctype_blank.c: New file.
2121         * lib/unictype/ctype_cntrl.c: New file.
2122         * lib/unictype/ctype_digit.c: New file.
2123         * lib/unictype/ctype_graph.c: New file.
2124         * lib/unictype/ctype_lower.c: New file.
2125         * lib/unictype/ctype_print.c: New file.
2126         * lib/unictype/ctype_punct.c: New file.
2127         * lib/unictype/ctype_space.c: New file.
2128         * lib/unictype/ctype_upper.c: New file.
2129         * lib/unictype/ctype_xdigit.c: New file.
2130         * lib/unictype/decdigit.c: New file.
2131         * lib/unictype/digit.c: New file.
2132         * lib/unictype/identsyntaxmap.h: New file.
2133         * lib/unictype/mirror.c: New file.
2134         * lib/unictype/numeric.c: New file.
2135         * lib/unictype/pr_alphabetic.c: New file.
2136         * lib/unictype/pr_ascii_hex_digit.c: New file.
2137         * lib/unictype/pr_bidi_arabic_digit.c: New file.
2138         * lib/unictype/pr_bidi_arabic_right_to_left.c: New file.
2139         * lib/unictype/pr_bidi_block_separator.c: New file.
2140         * lib/unictype/pr_bidi_boundary_neutral.c: New file.
2141         * lib/unictype/pr_bidi_common_separator.c: New file.
2142         * lib/unictype/pr_bidi_control.c: New file.
2143         * lib/unictype/pr_bidi_embedding_or_override.c: New file.
2144         * lib/unictype/pr_bidi_eur_num_separator.c: New file.
2145         * lib/unictype/pr_bidi_eur_num_terminator.c: New file.
2146         * lib/unictype/pr_bidi_european_digit.c: New file.
2147         * lib/unictype/pr_bidi_hebrew_right_to_left.c: New file.
2148         * lib/unictype/pr_bidi_left_to_right.c: New file.
2149         * lib/unictype/pr_bidi_non_spacing_mark.c: New file.
2150         * lib/unictype/pr_bidi_other_neutral.c: New file.
2151         * lib/unictype/pr_bidi_pdf.c: New file.
2152         * lib/unictype/pr_bidi_segment_separator.c: New file.
2153         * lib/unictype/pr_bidi_whitespace.c: New file.
2154         * lib/unictype/pr_byname.c: New file.
2155         * lib/unictype/pr_byname.gperf: New file.
2156         * lib/unictype/pr_combining.c: New file.
2157         * lib/unictype/pr_composite.c: New file.
2158         * lib/unictype/pr_currency_symbol.c: New file.
2159         * lib/unictype/pr_dash.c: New file.
2160         * lib/unictype/pr_decimal_digit.c: New file.
2161         * lib/unictype/pr_default_ignorable_code_point.c: New file.
2162         * lib/unictype/pr_deprecated.c: New file.
2163         * lib/unictype/pr_diacritic.c: New file.
2164         * lib/unictype/pr_extender.c: New file.
2165         * lib/unictype/pr_format_control.c: New file.
2166         * lib/unictype/pr_grapheme_base.c: New file.
2167         * lib/unictype/pr_grapheme_extend.c: New file.
2168         * lib/unictype/pr_grapheme_link.c: New file.
2169         * lib/unictype/pr_hex_digit.c: New file.
2170         * lib/unictype/pr_hyphen.c: New file.
2171         * lib/unictype/pr_id_continue.c: New file.
2172         * lib/unictype/pr_id_start.c: New file.
2173         * lib/unictype/pr_ideographic.c: New file.
2174         * lib/unictype/pr_ids_binary_operator.c: New file.
2175         * lib/unictype/pr_ids_trinary_operator.c: New file.
2176         * lib/unictype/pr_ignorable_control.c: New file.
2177         * lib/unictype/pr_iso_control.c: New file.
2178         * lib/unictype/pr_join_control.c: New file.
2179         * lib/unictype/pr_left_of_pair.c: New file.
2180         * lib/unictype/pr_line_separator.c: New file.
2181         * lib/unictype/pr_logical_order_exception.c: New file.
2182         * lib/unictype/pr_lowercase.c: New file.
2183         * lib/unictype/pr_math.c: New file.
2184         * lib/unictype/pr_non_break.c: New file.
2185         * lib/unictype/pr_not_a_character.c: New file.
2186         * lib/unictype/pr_numeric.c: New file.
2187         * lib/unictype/pr_other_alphabetic.c: New file.
2188         * lib/unictype/pr_other_default_ignorable_code_point.c: New file.
2189         * lib/unictype/pr_other_grapheme_extend.c: New file.
2190         * lib/unictype/pr_other_id_continue.c: New file.
2191         * lib/unictype/pr_other_id_start.c: New file.
2192         * lib/unictype/pr_other_lowercase.c: New file.
2193         * lib/unictype/pr_other_math.c: New file.
2194         * lib/unictype/pr_other_uppercase.c: New file.
2195         * lib/unictype/pr_paired_punctuation.c: New file.
2196         * lib/unictype/pr_paragraph_separator.c: New file.
2197         * lib/unictype/pr_pattern_syntax.c: New file.
2198         * lib/unictype/pr_pattern_white_space.c: New file.
2199         * lib/unictype/pr_private_use.c: New file.
2200         * lib/unictype/pr_punctuation.c: New file.
2201         * lib/unictype/pr_quotation_mark.c: New file.
2202         * lib/unictype/pr_radical.c: New file.
2203         * lib/unictype/pr_sentence_terminal.c: New file.
2204         * lib/unictype/pr_soft_dotted.c: New file.
2205         * lib/unictype/pr_space.c: New file.
2206         * lib/unictype/pr_terminal_punctuation.c: New file.
2207         * lib/unictype/pr_test.c: New file.
2208         * lib/unictype/pr_titlecase.c: New file.
2209         * lib/unictype/pr_unassigned_code_value.c: New file.
2210         * lib/unictype/pr_unified_ideograph.c: New file.
2211         * lib/unictype/pr_uppercase.c: New file.
2212         * lib/unictype/pr_variation_selector.c: New file.
2213         * lib/unictype/pr_white_space.c: New file.
2214         * lib/unictype/pr_xid_continue.c: New file.
2215         * lib/unictype/pr_xid_start.c: New file.
2216         * lib/unictype/pr_zero_width.c: New file.
2217         * lib/unictype/scripts.c: New file.
2218         * lib/unictype/sy_c_ident.c: New file.
2219         * lib/unictype/sy_c_whitespace.c: New file.
2220         * lib/unictype/sy_java_ident.c: New file.
2221         * lib/unictype/sy_java_whitespace.c: New file.
2222
2223         * lib/unictype/bidi_of.h: New file, generated by gen-ctype.c for
2224         Unicode 5.0.0.
2225         * lib/unictype/blocks.h: Likewise.
2226         * lib/unictype/categ_C.h: Likewise.
2227         * lib/unictype/categ_Cc.h: Likewise.
2228         * lib/unictype/categ_Cf.h: Likewise.
2229         * lib/unictype/categ_Cn.h: Likewise.
2230         * lib/unictype/categ_Co.h: Likewise.
2231         * lib/unictype/categ_Cs.h: Likewise.
2232         * lib/unictype/categ_L.h: Likewise.
2233         * lib/unictype/categ_Ll.h: Likewise.
2234         * lib/unictype/categ_Lm.h: Likewise.
2235         * lib/unictype/categ_Lo.h: Likewise.
2236         * lib/unictype/categ_Lt.h: Likewise.
2237         * lib/unictype/categ_Lu.h: Likewise.
2238         * lib/unictype/categ_M.h: Likewise.
2239         * lib/unictype/categ_Mc.h: Likewise.
2240         * lib/unictype/categ_Me.h: Likewise.
2241         * lib/unictype/categ_Mn.h: Likewise.
2242         * lib/unictype/categ_N.h: Likewise.
2243         * lib/unictype/categ_Nd.h: Likewise.
2244         * lib/unictype/categ_Nl.h: Likewise.
2245         * lib/unictype/categ_No.h: Likewise.
2246         * lib/unictype/categ_P.h: Likewise.
2247         * lib/unictype/categ_Pc.h: Likewise.
2248         * lib/unictype/categ_Pd.h: Likewise.
2249         * lib/unictype/categ_Pe.h: Likewise.
2250         * lib/unictype/categ_Pf.h: Likewise.
2251         * lib/unictype/categ_Pi.h: Likewise.
2252         * lib/unictype/categ_Po.h: Likewise.
2253         * lib/unictype/categ_Ps.h: Likewise.
2254         * lib/unictype/categ_S.h: Likewise.
2255         * lib/unictype/categ_Sc.h: Likewise.
2256         * lib/unictype/categ_Sk.h: Likewise.
2257         * lib/unictype/categ_Sm.h: Likewise.
2258         * lib/unictype/categ_So.h: Likewise.
2259         * lib/unictype/categ_Z.h: Likewise.
2260         * lib/unictype/categ_Zl.h: Likewise.
2261         * lib/unictype/categ_Zp.h: Likewise.
2262         * lib/unictype/categ_Zs.h: Likewise.
2263         * lib/unictype/categ_of.h: Likewise.
2264         * lib/unictype/combining.h: Likewise.
2265         * lib/unictype/ctype_alnum.h: Likewise.
2266         * lib/unictype/ctype_alpha.h: Likewise.
2267         * lib/unictype/ctype_blank.h: Likewise.
2268         * lib/unictype/ctype_cntrl.h: Likewise.
2269         * lib/unictype/ctype_digit.h: Likewise.
2270         * lib/unictype/ctype_graph.h: Likewise.
2271         * lib/unictype/ctype_lower.h: Likewise.
2272         * lib/unictype/ctype_print.h: Likewise.
2273         * lib/unictype/ctype_punct.h: Likewise.
2274         * lib/unictype/ctype_space.h: Likewise.
2275         * lib/unictype/ctype_upper.h: Likewise.
2276         * lib/unictype/ctype_xdigit.h: Likewise.
2277         * lib/unictype/decdigit.h: Likewise.
2278         * lib/unictype/digit.h: Likewise.
2279         * lib/unictype/mirror.h: Likewise.
2280         * lib/unictype/numeric.h: Likewise.
2281         * lib/unictype/pr_alphabetic.h: Likewise.
2282         * lib/unictype/pr_ascii_hex_digit.h: Likewise.
2283         * lib/unictype/pr_bidi_arabic_digit.h: Likewise.
2284         * lib/unictype/pr_bidi_arabic_right_to_left.h: Likewise.
2285         * lib/unictype/pr_bidi_block_separator.h: Likewise.
2286         * lib/unictype/pr_bidi_boundary_neutral.h: Likewise.
2287         * lib/unictype/pr_bidi_common_separator.h: Likewise.
2288         * lib/unictype/pr_bidi_control.h: Likewise.
2289         * lib/unictype/pr_bidi_embedding_or_override.h: Likewise.
2290         * lib/unictype/pr_bidi_eur_num_separator.h: Likewise.
2291         * lib/unictype/pr_bidi_eur_num_terminator.h: Likewise.
2292         * lib/unictype/pr_bidi_european_digit.h: Likewise.
2293         * lib/unictype/pr_bidi_hebrew_right_to_left.h: Likewise.
2294         * lib/unictype/pr_bidi_left_to_right.h: Likewise.
2295         * lib/unictype/pr_bidi_non_spacing_mark.h: Likewise.
2296         * lib/unictype/pr_bidi_other_neutral.h: Likewise.
2297         * lib/unictype/pr_bidi_pdf.h: Likewise.
2298         * lib/unictype/pr_bidi_segment_separator.h: Likewise.
2299         * lib/unictype/pr_bidi_whitespace.h: Likewise.
2300         * lib/unictype/pr_combining.h: Likewise.
2301         * lib/unictype/pr_composite.h: Likewise.
2302         * lib/unictype/pr_currency_symbol.h: Likewise.
2303         * lib/unictype/pr_dash.h: Likewise.
2304         * lib/unictype/pr_decimal_digit.h: Likewise.
2305         * lib/unictype/pr_default_ignorable_code_point.h: Likewise.
2306         * lib/unictype/pr_deprecated.h: Likewise.
2307         * lib/unictype/pr_diacritic.h: Likewise.
2308         * lib/unictype/pr_extender.h: Likewise.
2309         * lib/unictype/pr_format_control.h: Likewise.
2310         * lib/unictype/pr_grapheme_base.h: Likewise.
2311         * lib/unictype/pr_grapheme_extend.h: Likewise.
2312         * lib/unictype/pr_grapheme_link.h: Likewise.
2313         * lib/unictype/pr_hex_digit.h: Likewise.
2314         * lib/unictype/pr_hyphen.h: Likewise.
2315         * lib/unictype/pr_id_continue.h: Likewise.
2316         * lib/unictype/pr_id_start.h: Likewise.
2317         * lib/unictype/pr_ideographic.h: Likewise.
2318         * lib/unictype/pr_ids_binary_operator.h: Likewise.
2319         * lib/unictype/pr_ids_trinary_operator.h: Likewise.
2320         * lib/unictype/pr_ignorable_control.h: Likewise.
2321         * lib/unictype/pr_iso_control.h: Likewise.
2322         * lib/unictype/pr_join_control.h: Likewise.
2323         * lib/unictype/pr_left_of_pair.h: Likewise.
2324         * lib/unictype/pr_line_separator.h: Likewise.
2325         * lib/unictype/pr_logical_order_exception.h: Likewise.
2326         * lib/unictype/pr_lowercase.h: Likewise.
2327         * lib/unictype/pr_math.h: Likewise.
2328         * lib/unictype/pr_non_break.h: Likewise.
2329         * lib/unictype/pr_not_a_character.h: Likewise.
2330         * lib/unictype/pr_numeric.h: Likewise.
2331         * lib/unictype/pr_other_alphabetic.h: Likewise.
2332         * lib/unictype/pr_other_default_ignorable_code_point.h: Likewise.
2333         * lib/unictype/pr_other_grapheme_extend.h: Likewise.
2334         * lib/unictype/pr_other_id_continue.h: Likewise.
2335         * lib/unictype/pr_other_id_start.h: Likewise.
2336         * lib/unictype/pr_other_lowercase.h: Likewise.
2337         * lib/unictype/pr_other_math.h: Likewise.
2338         * lib/unictype/pr_other_uppercase.h: Likewise.
2339         * lib/unictype/pr_paired_punctuation.h: Likewise.
2340         * lib/unictype/pr_paragraph_separator.h: Likewise.
2341         * lib/unictype/pr_pattern_syntax.h: Likewise.
2342         * lib/unictype/pr_pattern_white_space.h: Likewise.
2343         * lib/unictype/pr_private_use.h: Likewise.
2344         * lib/unictype/pr_punctuation.h: Likewise.
2345         * lib/unictype/pr_quotation_mark.h: Likewise.
2346         * lib/unictype/pr_radical.h: Likewise.
2347         * lib/unictype/pr_sentence_terminal.h: Likewise.
2348         * lib/unictype/pr_soft_dotted.h: Likewise.
2349         * lib/unictype/pr_space.h: Likewise.
2350         * lib/unictype/pr_terminal_punctuation.h: Likewise.
2351         * lib/unictype/pr_titlecase.h: Likewise.
2352         * lib/unictype/pr_unassigned_code_value.h: Likewise.
2353         * lib/unictype/pr_unified_ideograph.h: Likewise.
2354         * lib/unictype/pr_uppercase.h: Likewise.
2355         * lib/unictype/pr_variation_selector.h: Likewise.
2356         * lib/unictype/pr_white_space.h: Likewise.
2357         * lib/unictype/pr_xid_continue.h: Likewise.
2358         * lib/unictype/pr_xid_start.h: Likewise.
2359         * lib/unictype/pr_zero_width.h: Likewise.
2360         * lib/unictype/scripts.h: Likewise.
2361         * lib/unictype/scripts_byname.gperf: Likewise.
2362         * lib/unictype/sy_c_ident.h: Likewise.
2363         * lib/unictype/sy_c_whitespace.h: Likewise.
2364         * lib/unictype/sy_java_ident.h: Likewise.
2365         * lib/unictype/sy_java_whitespace.h: Likewise.
2366
2367         * lib/unictype/Makefile: New file.
2368         * lib/unictype/gen-ctype.c: New file, based on gen-unicode-ctype.c in
2369         glibc.
2370         * lib/unictype/3level.h: New file, copied from glibc.
2371         * lib/unictype/3levelbit.h: New file.
2372
2373 2007-11-11  Bruno Haible  <bruno@clisp.org>
2374
2375         * modules/gperf: New file.
2376         * modules/iconv_open (Depends-on): Add it.
2377         (Makefile.am): Remove the GPERF definition.
2378
2379 2007-11-11  Bruno Haible  <bruno@clisp.org>
2380
2381         * m4/round.m4 (gl_FUNC_ROUND): Test against NetBSD 3.0 bug.
2382         * doc/functions/round.texi: Mention the NetBSD 3.0 bug.
2383
2384 2007-11-11  Bruno Haible  <bruno@clisp.org>
2385
2386         * tests/test-argmatch.c (ARGMATCH_DIE): Undefine.
2387         (usage): Remove function.
2388
2389 2007-11-11  Bruno Haible  <bruno@clisp.org>
2390
2391         * m4/roundf.m4 (gl_FUNC_ROUNDF): Use gl_FUNC_FLOORF_LIBS and
2392         gl_FUNC_CEILF_LIBS.
2393         * m4/round.m4 (gl_FUNC_ROUND): Use gl_FUNC_FLOOR_LIBS and
2394         gl_FUNC_CEIL_LIBS.
2395         * m4/roundl.m4 (gl_FUNC_ROUNDL): Use gl_FUNC_FLOORL_LIBS and
2396         gl_FUNC_CEILL_LIBS.
2397         * modules/roundf (Files): Add m4/floorf.m4, m4/ceilf.m4.
2398         * modules/round (Files): Add m4/floor.m4, m4/ceil.m4.
2399         * modules/roundl (Files): Add m4/floorl.m4, m4/ceill.m4.
2400
2401 2007-11-11  Bruno Haible  <bruno@clisp.org>
2402
2403         * m4/roundf.m4 (gl_FUNC_ROUNDF): Handle the case that floorf and
2404         roundf were declared but do not exist on functions.
2405         * m4/roundl.m4 (gl_FUNC_ROUNDL): Handle the case that floorl and
2406         roundl were declared but do not exist on functions.
2407         * lib/round.c (HAVE_FLOOR_AND_CEIL): Use HAVE_FLOORF_AND_CEILF and
2408         HAVE_FLOORL_AND_CEILL, respectively.
2409         Needed for Sun C on Solaris 10.
2410
2411 2007-11-11  Bruno Haible  <bruno@clisp.org>
2412
2413         * m4/roundf.m4 (gl_FUNC_ROUNDF): Set REPLACE_ROUNDF instead of
2414         HAVE_DECL_ROUNDF. Remove redundant AC_SUBST.
2415         * m4/round.m4 (gl_FUNC_ROUND): Set REPLACE_ROUND instead of
2416         HAVE_DECL_ROUND. Remove redundant AC_SUBST.
2417         * m4/roundl.m4 (gl_FUNC_ROUNDL): Set REPLACE_ROUNDL instead of
2418         HAVE_DECL_ROUNDL. Remove redundant AC_SUBST.
2419         * lib/math.in.h (roundf): Use REPLACE_ROUNDF instead of
2420         HAVE_DECL_ROUNDF.
2421         (round): Use REPLACE_ROUND instead of HAVE_DECL_ROUND.
2422         (roundl): Use REPLACE_ROUNDL instead of HAVE_DECL_ROUNDL.
2423         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_ROUND* instead
2424         of HAVE_DECL_ROUND*.
2425         * modules/math (Makefile.am): Update.
2426
2427 2007-11-10  Bruno Haible  <bruno@clisp.org>
2428
2429         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Use same check for
2430         ptrdiff_t as m4/intl.m4.
2431
2432 2007-11-10  Jim Meyering  <meyering@redhat.com>
2433
2434         Avoid link failure for the argmatch test.
2435         * tests/test-argmatch.c (usage): Define function to avoid a link
2436         failure: argmatch_die requires a usage function.
2437
2438 2007-11-09  Bruno Haible  <bruno@clisp.org>
2439
2440         * doc/functions/snprintf.texi: Mention BeOS deficiency.
2441         * doc/functions/vsnprintf.texi: Likewise.
2442         * lib/vasnprintf.c (VASNPRINTF): Ensure that we never call snprintf
2443         with a size argument < 2.
2444
2445 2007-11-09  Bruno Haible  <bruno@clisp.org>
2446
2447         * lib/vasnprintf.c (VASNPRINTF): Increase reallocation of snprintf
2448         buffer. Fixes an inefficiency introduced on 2007-11-03.
2449
2450 2007-11-09  Bruno Haible  <bruno@clisp.org>
2451
2452         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8) [BeOS]: Make this test return
2453         none instead of tr_TR. Fixes a failure of test-c-strcasecmp.c.
2454
2455 2007-11-08  Jim Meyering  <meyering@redhat.com>
2456
2457         Change cache variable name prefix "jm_" to "gl_" everywhere.
2458         * m4/d-type.m4, m4/jm-winsz1.m4, m4/jm-winsz2.m4, m4/link-follow.m4:
2459         * m4/putenv.m4, m4/strtoimax.m4, m4/strtoumax.m4, m4/unlink-busy.m4:
2460         * m4/uptime.m4: s/gl_/jm_/
2461
2462 2007-11-07  Bruno Haible  <bruno@clisp.org>
2463
2464         Update to GNU gettext 0.17.
2465         * m4/intl.m4: Update to GNU gettext 0.17.
2466         * m4/po.m4: Likewise.
2467         * modules/gettext (Files): Remove m4/ulonglong.m4.
2468         (configure.ac): Require gettext infrastructure from version 0.17.
2469
2470 2007-11-06  Bruno Haible  <bruno@clisp.org>
2471
2472         * lib/fbufmode.c (fbufmode) [QNX]: Use numerical values for flags; the
2473         symbolic values are not defined in a public header.
2474         * lib/freadable.c (freadable) [QNX]: Likewise.
2475         * lib/freadahead.c (freadahead) [QNX]: Likewise.
2476         * lib/freading.c (freading) [QNX]: Likewise.
2477         * lib/fseterr.c (fseterr) [QNX]: Likewise.
2478         * lib/fwritable.c (fwritable) [QNX]: Likewise.
2479         * lib/fwriting.c (fwriting) [QNX]: Likewise.
2480         * lib/fpurge.c (fpurge) [QNX]: Likewise. Add a return statement.
2481         Reported by Alain Magloire.
2482
2483         * m4/fpending.m4 (gl_FUNC_FPENDING): Add a variant for QNX.
2484
2485 2007-11-05  Bruno Haible  <bruno@clisp.org>
2486
2487         * lib/vasnprintf.c (VASNPRINTF): Expand the NEED_PRINTF_DIRECTIVE_A
2488         code when NEED_PRINTF_LONG_DOUBLE or NEED_PRINTF_DOUBLE is set.
2489         Needed on Cygwin, where !NEED_PRINTF_DIRECTIVE_A && NEED_PRINTF_DOUBLE.
2490         Reported by Eric Blake.
2491
2492 2007-10-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2493             Bruno Haible  <bruno@clisp.org>
2494
2495         * modules/malloc (configure.ac): Define GNULIB_MALLOC_GNU always.
2496         * modules/realloc (configure.ac): Define GNULIB_REALLOC_GNU always.
2497         * lib/realloc.c (SYSTEM_MALLOC_GLIBC_COMPATIBLE): New macro.
2498         (malloc): Undefine also before including <stdlib.h>.
2499         (rpl_realloc): Turn malloc(0) into malloc(1) if necessary.
2500         Needed on OSF/1 4.0.
2501
2502 2007-11-05  Jim Meyering  <meyering@redhat.com>
2503
2504         git-version-gen: sync from coreutils.
2505         * build-aux/git-version-gen: Add comments.
2506         Change the first '-' to '.' in the snapshot version string,
2507         e.g., 6.9-377-08144 -> 6.9.377-08144
2508         Remove first parameter.
2509         Don't declare a version "-dirty" merely because a time
2510         stamp has changed.
2511
2512 2007-11-04  Bruno Haible  <bruno@clisp.org>
2513
2514         * lib/lock.h: Protect all macro definitions containing an 'if'
2515         statement through a "do { ... } while (0)".
2516         * lib/tls.h: Likewise.
2517
2518 2007-11-04  Bruno Haible  <bruno@clisp.org>
2519
2520         * lib/vasnprintf.c (DCHAR_IS_TCHAR, DCHAR_CPY): Undefine at the end.
2521
2522 2007-11-04  Bruno Haible  <bruno@clisp.org>
2523
2524         * m4/printf.m4 (gl_PRINTF_ENOMEM): Use GL_NOCRASH.
2525         * modules/fprintf-posix (Depends-on): Add nocrash.
2526         * modules/snprintf-posix (Depends-on): Likewise.
2527         * modules/sprintf-posix (Depends-on): Likewise.
2528         * modules/vasnprintf-posix (Depends-on): Likewise.
2529         * modules/vasprintf-posix (Depends-on): Likewise.
2530         * modules/vfprintf-posix (Depends-on): Likewise.
2531         * modules/vsnprintf-posix (Depends-on): Likewise.
2532         * modules/vsprintf-posix (Depends-on): Likewise.
2533         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
2534         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
2535         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
2536         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
2537         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
2538         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
2539         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
2540
2541 2007-11-04  Bruno Haible  <bruno@clisp.org>
2542
2543         * modules/nocrash: New file.
2544         * m4/nocrash.m4: New file, taken from GNU clisp. Code taken from
2545         GNU libsigsegv, with permission of GNU libsigsegv's copyright holders.
2546
2547 2007-11-04  Bruno Haible  <bruno@clisp.org>
2548
2549         * tests/test-vasnprintf-posix.c (test_function): Add some tests of
2550         precision handling.
2551         * tests/test-vasprintf-posix.c (test_function): Likewise.
2552         * tests/test-snprintf-posix.h (test_function): Likewise.
2553         * tests/test-sprintf-posix.h (test_function): Likewise.
2554
2555         Fix *printf behaviour for large precisions on mingw and BeOS.
2556         * m4/printf.m4 (gl_PRINTF_PRECISION): New macro.
2557         * lib/vasnprintf.c (VASNPRINTF): Handle NEED_PRINTF_UNBOUNDED_PRECISION.
2558         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_PRECISION): New macro.
2559         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
2560         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
2561         gl_PRINTF_PRECISION and test its result. Invoke
2562         gl_PREREQ_VASNPRINTF_PRECISION.
2563         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
2564         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
2565         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
2566         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
2567         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
2568         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
2569         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
2570         * doc/functions/fprintf.texi: Update.
2571         * doc/functions/printf.texi: Update.
2572         * doc/functions/snprintf.texi: Update.
2573         * doc/functions/sprintf.texi: Update.
2574         * doc/functions/vfprintf.texi: Update.
2575         * doc/functions/vprintf.texi: Update.
2576         * doc/functions/vsnprintf.texi: Update.
2577         * doc/functions/vsprintf.texi: Update.
2578
2579 2007-11-04  Bruno Haible  <bruno@clisp.org>
2580
2581         * lib/vasnprintf.c (scale10_round_decimal_decoded): Fix shift loop.
2582
2583 2007-11-04  Bruno Haible  <bruno@clisp.org>
2584
2585         * modules/relocatable-prog (Files): Add m4/lib-ld.m4.
2586         Reported by Sylvain Beucler <beuc@gnu.org>.
2587
2588 2007-11-03  Bruno Haible  <bruno@clisp.org>
2589
2590         * tests/test-fprintf-posix2.sh: New file.
2591         * tests/test-fprintf-posix2.c: New file.
2592         * modules/fprintf-posix-tests (Files): Add them.
2593         (TESTS): Add test-fprintf-posix2.sh.
2594         (configure.ac): Check for getrlimit and setrlimit.
2595         (check_PROGRAMS): Add test-fprintf-posix2.
2596
2597         * tests/test-printf-posix2.sh: New file.
2598         * tests/test-printf-posix2.c: New file.
2599         * modules/printf-posix-tests (Files): Add them.
2600         (TESTS): Add test-printf-posix2.sh.
2601         (configure.ac): Check for getrlimit and setrlimit.
2602         (check_PROGRAMS): Add test-printf-posix2.
2603
2604         Fix *printf behaviour in out-of-memory situations on MacOS X and *BSD.
2605         * m4/printf.m4 (gl_PRINTF_ENOMEM): New macro.
2606         * lib/vasnprintf.c: Implement NEED_PRINTF_DOUBLE.
2607         (decode_double): New function, copied from decode_long_double.
2608         (scale10_round_decimal_decoded): New function, extracted from
2609         scale10_round_decimal_long_double.
2610         (scale10_round_decimal_long_double): Use it.
2611         (scale10_round_decimal_double): New function.
2612         (floorlog10): New function.
2613         (VASNPRINTF): Handle NEED_PRINTF_DOUBLE case.
2614         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_ENOMEM): New macro.
2615         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
2616         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
2617         gl_PRINTF_ENOMEM and test its result. Invoke
2618         gl_PREREQ_VASNPRINTF_ENOMEM.
2619         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
2620         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
2621         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
2622         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
2623         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
2624         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
2625         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
2626         * modules/fprintf-posix (Depends-on): Add frexp-nolibm.
2627         * modules/snprintf-posix (Depends-on): Likewise.
2628         * modules/sprintf-posix (Depends-on): Likewise.
2629         * modules/vasnprintf-posix (Depends-on): Likewise.
2630         * modules/vasprintf-posix (Depends-on): Likewise.
2631         * modules/vfprintf-posix (Depends-on): Likewise.
2632         * modules/vsnprintf-posix (Depends-on): Likewise.
2633         * modules/vsprintf-posix (Depends-on): Likewise.
2634         * doc/functions/fprintf.texi: Update.
2635         * doc/functions/printf.texi: Update.
2636         * doc/functions/snprintf.texi: Update.
2637         * doc/functions/sprintf.texi: Update.
2638         * doc/functions/vfprintf.texi: Update.
2639         * doc/functions/vprintf.texi: Update.
2640         * doc/functions/vsnprintf.texi: Update.
2641         * doc/functions/vsprintf.texi: Update.
2642
2643 2007-11-03  Bruno Haible  <bruno@clisp.org>
2644
2645         * modules/frexp-nolibm-tests: New file.
2646
2647         * modules/frexp-nolibm: New file.
2648         * m4/frexp.m4 (gl_FUNC_FREXP_NO_LIBM): New macro.
2649
2650 2007-11-03  Bruno Haible  <bruno@clisp.org>
2651
2652         * lib/vasnprintf.c (VASNPRINTF): Don't assume that snprintf's return
2653         value is C99 compliant.
2654         Needed for OSF/1 5.1.
2655
2656 2007-11-03  Bruno Haible  <bruno@clisp.org>
2657
2658         Fix out-of-memory handling of vasnprintf.
2659         * lib/printf-parse.c: Include <errno.h>.
2660         (PRINTF_PARSE): When failing, set errno to EINVAL or ENOMEM.
2661         * lib/vasnprintf.c (VASNPRINTF): When PRINTF_PARSE fails, assume errno
2662         is already set.
2663
2664 2007-11-02  Eric Blake  <ebb9@byu.net>
2665
2666         Fix tests on cygwin.
2667         * modules/xprintf-posix-tests (Makefile.am): Link against -lintl.
2668
2669 2007-11-01  Bruno Haible  <bruno@clisp.org>
2670
2671         * lib/stdlib.in.h (putenv): Remove the "not POSIX compliant everywhere"
2672         warning.
2673         * doc/functions/putenv.texi: Clarify that the 'putenv' module is not
2674         needed for POSIX compatibility.
2675
2676 2007-11-01  Paul Eggert  <eggert@cs.ucla.edu>
2677
2678         * m4/putenv.m4 (gl_FUNC_PUTENV): Also mention that we're checking
2679         for compatibility with GNU.
2680
2681 2007-11-01  Bruno Haible  <bruno@clisp.org>
2682
2683         * lib/putenv.c: Include <stdlib.h>. Remove rpl_putenv declaration.
2684         (putenv): Renamed from rpl_putenv. Change argument type from
2685         'const char *' to 'char *'.
2686         * m4/putenv.m4 (gl_FUNC_PUTENV): Require gl_STDLIB_H_DEFAULTS. Instead
2687         of defining putenv in config.h, just set REPLACE_PUTENV.
2688         * modules/putenv (Depends-on): Add stdlib.
2689         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
2690         (Include): Use <stdlib.h>.
2691         * lib/stdlib.in.h (putenv): New declaration.
2692         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_PUTENV and
2693         REPLACE_PUTENV.
2694         * modules/stdlib (Makefile.am): Substitute GNULIB_PUTENV and
2695         REPLACE_PUTENV.
2696         Needed for MacOS X 10.5.0.
2697         Reported by Peter O'Gorman <peter@pogma.com>.
2698
2699 2007-11-01  Jim Meyering  <meyering@redhat.com>
2700
2701         Treat an empty date string exactly like "0".
2702         * lib/getdate.y (get_date): Once any isspace or TZ= prefix is consumed,
2703         if the remaining date string (to be parsed) is empty, use "0".
2704         Reported by Mischa Molhoek and discussed in this thread:
2705         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/11726>.
2706
2707 2007-10-31  Bruno Haible  <bruno@clisp.org>
2708
2709         * m4/intmax_t.m4 (gl_AC_TYPE_INTMAX_T, gt_AC_TYPE_INTMAX_T): Use
2710         AC_TYPE_LONG_LONG_INT instead of gl_AC_TYPE_LONG_LONG.
2711         * m4/uintmax_t.m4 (gl_AC_TYPE_UINTMAX_T): Use
2712         AC_TYPE_UNSIGNED_LONG_LONG_INT instead of gl_AC_TYPE_UNSIGNED_LONG_LONG.
2713         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Remove macro.
2714         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG): Remove macro.
2715
2716 2007-10-31  Bruno Haible  <bruno@clisp.org>
2717
2718         * m4/longlong.m4 (_AC_TYPE_LONG_LONG_SNIPPET): New macro, extracted
2719         from AC_TYPE_LONG_LONG_INT and AC_TYPE_UNSIGNED_LONG_LONG_INT.
2720         (AC_TYPE_LONG_LONG_INT): Use it.
2721         (AC_TYPE_UNSIGNED_LONG_LONG_INT): Moved here from m4/ulonglong.m4. Use
2722         it as well.
2723         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Remove macro; moved
2724         to m4/longlong.m4.
2725         * modules/stdint (Files): Remove m4/ulonglong.m4.
2726         * modules/strtoull (Files): Use m4/longlong.m4 instead of
2727         m4/ulonglong.m4.
2728         * modules/strtoumax (Files): Likewise.
2729
2730 2007-10-30  Bruno Haible  <bruno@clisp.org>
2731
2732         * modules/xvasprintf-posix: New file.
2733         Suggested by Eric Blake.
2734
2735 2007-10-30  Bruno Haible  <bruno@clisp.org>
2736
2737         * modules/xprintf-posix-tests: New file.
2738         * tests/test-xprintf-posix.sh: New file.
2739         * tests/test-xprintf-posix.c: New file.
2740         * tests/test-xfprintf-posix.c: New file.
2741
2742         * modules/xprintf-posix: New file.
2743
2744 2007-10-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2745
2746         * modules/fbufmode-tests (MOSTLYCLEANFILES): Remove temp files.
2747         * modules/freadable-tests (MOSTLYCLEANFILES): Likewise.
2748         * modules/fwritable-tests (MOSTLYCLEANFILES): Likewise.
2749
2750 2007-10-29  Bruno Haible  <bruno@clisp.org>
2751
2752         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): Rename the cache variable to
2753         contain the special marker '_cv_'.
2754         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): Likewise.
2755         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): Likewise.
2756         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): Likewise.
2757         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): Likewise.
2758         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): Likewise.
2759         Reported by Ralf Wildenhues.
2760
2761 2007-10-29  Bruno Haible  <bruno@clisp.org>
2762
2763         * gnulib-tool (func_import): When --lgpl is not specified, set
2764         sed_transform_lib_file to convert LGPL and GPLv2+ copyright headers to
2765         GPLv3.
2766         Reported by Simon Josefsson.
2767
2768 2007-10-28  Bruno Haible  <bruno@clisp.org>
2769
2770         * lib/math.in.h: Test REPLACE_ISFINITE instead of HAVE_DECL_ISFINITE.
2771         * m4/isfinite.m4 (gl_ISFINITE): Initialize REPLACE_ISFINITE instead of
2772         HAVE_DECL_ISFINITE.
2773         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Update.
2774         * modules/math (Makefile.am): Substitute REPLACE_ISFINITE instead of
2775         HAVE_DECL_ISFINITE.
2776
2777 2007-10-28  Bruno Haible  <bruno@clisp.org>
2778
2779         * lib/stdint.in.h (_STDINT_MAX): Subtract 1 from an unused signed
2780         integer shift in the signed case. Fixes warnings with OSF/1 5.1 cc.
2781
2782 2007-10-28  Bruno Haible  <bruno@clisp.org>
2783
2784         Fix link errors with Sun C 5.0 on Solaris 10.
2785         * m4/floorf.m4 (gl_FUNC_FLOORF): Consider also the case that the
2786         function is declared but not present in the compiler's libm.
2787         * m4/floorl.m4 (gl_FUNC_FLOORL): Likewise.
2788         * m4/ceilf.m4 (gl_FUNC_CEILF): Likewise.
2789         * m4/ceill.m4 (gl_FUNC_CEILL: Likewise.
2790         * lib/math.in.h: Test REPLACE_CEILF instead of HAVE_DECL_CEILF.
2791         Test REPLACE_CEILL instead of HAVE_DECL_CEILL.
2792         Test REPLACE_FLOORF instead of HAVE_DECL_FLOORF.
2793         Test REPLACE_FLOORL instead of HAVE_DECL_FLOORL.
2794         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Update.
2795         * modules/math (Makefile.am): Substitute REPLACE_CEILF instead of
2796         HAVE_DECL_CEILF, REPLACE_CEILL instead of HAVE_DECL_CEILL,
2797         REPLACE_FLOORF instead of HAVE_DECL_FLOORF, REPLACE_FLOORL instead of
2798         HAVE_DECL_FLOORL.
2799
2800 2007-10-28  Bruno Haible  <bruno@clisp.org>
2801
2802         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): New macro, extracted from
2803         gl_FUNC_FLOORL. Cache the result.
2804         (gl_FUNC_FLOORL): Use it.
2805         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): New macro, extracted from
2806         gl_FUNC_CEILL. Cache the result.
2807         (gl_FUNC_CEILL): Use it.
2808
2809         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): New macro, extracted from
2810         gl_FUNC_FLOOR. Cache the result.
2811         (gl_FUNC_FLOOR): Use it.
2812         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): New macro, extracted from
2813         gl_FUNC_CEIL. Cache the result.
2814         (gl_FUNC_CEIL): Use it.
2815
2816         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): New macro, extracted from
2817         gl_FUNC_FLOORF. Cache the result.
2818         (gl_FUNC_FLOORF): Use it.
2819         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): New macro, extracted from
2820         gl_FUNC_CEILF. Cache the result.
2821         (gl_FUNC_CEILF): Use it.
2822
2823 2007-10-28  Bruno Haible  <bruno@clisp.org>
2824
2825         * gnulib-tool: Allow specifying the LGPL version number through
2826         --lgpl=2 or --lgpl=3.
2827         (func_usage): Document --lgpl with argument.
2828         Handle --lgpl=... arguments.
2829         (func_import): Recognize also gl_LGPL calls with an argument. When
2830         --lgpl=2 is used and the module's license is just LGPL, report an
2831         error. Set sed_transform_lib_file according to the lgpl variable. In
2832         the generated files, use --lgpl or gl_LGPL invocations with argument,
2833         if necessary.
2834         * doc/gnulib-intro.texi (Copyright): Explain how to get modules under
2835         an LGPv2+ license.
2836         * doc/gnulib-tool.texi (Modified imports): Update explanation of
2837         gl_LGPL macro.
2838
2839 2007-10-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2840             Bruno Haible  <bruno@clisp.org>
2841
2842         * lib/unistr.h (u8_uctomb_aux): Declare also if !HAVE_INLINE.
2843         (u16_uctomb_aux): Likewise.
2844         * lib/unistr/u8-uctomb-aux.c (u8_uctomb_aux): Define also if
2845         !HAVE_INLINE.
2846         * lib/unistr/u16-uctomb-aux.c (u16_uctomb_aux): Likewise
2847
2848 2007-10-28  Bruno Haible  <bruno@clisp.org>
2849
2850         * modules/error: Add a notice recommending to change XGETTEXT_OPTIONS.
2851         Invoke AM_GETTEXT_OPTION if it exists.
2852         * modules/vasprintf: Likewise.
2853         * modules/verror: Likewise.
2854         * modules/xprintf: Likewise.
2855         * modules/xvasprintf: Likewise.
2856
2857 2007-10-27  Ben Pfaff  <blp@gnu.org>
2858
2859         * lib/math.in.h: Define isfinite macro and prototypes for
2860         gl_isfinitef, gl_isfinited, gl_isfinitel if we are providing
2861         implementations.
2862         * m4/math_h.m4: New substitutions for isfinite module.
2863         * lib/isfinite.c: New file.
2864         * m4/isfinite.m4: New file.
2865         * modules/math: Replace isfinite-related @VARS@ in math.in.h.
2866         * modules/isfinite: New file.
2867         * modules/isfinite-tests: New file.
2868         * tests/tests-isfinite.c: New file.
2869         * doc/functions/isfinite.texi: Mention isfinite module.
2870         * MODULES.html.sh: Mention new module.
2871
2872 2007-10-27  Ben Pfaff  <blp@gnu.org>
2873
2874         Ralf Wildenhues reported that Tru64 4.0D declares the round
2875         functions but does not have definitions.
2876         * m4/check-math-lib.m4 (gl_CHECK_MATH_LIB): If the target function
2877         cannot be found in any library, set the output variable to
2878         "missing" instead of "".
2879         * m4/round.m4: Also use our substitute if we cannot find round in
2880         any library, even if it is declared.
2881         * m4/roundf.m4: Likewise for roundf.
2882         * m4/roundl.m4: Likewise for roundl.
2883         * lib/math.in.h: Undefine roundf, round, roundl before defining
2884         their replacements, to allow for hypothetical systems where these
2885         may be defined as macros but not available in libraries.
2886
2887 2007-10-27  Bruno Haible  <bruno@clisp.org>
2888
2889         * doc/gnulib.texi: Invoke @firstparagraphindent.
2890         * doc/gnulib-tool.texi (Simple update): Mention possible incompatible
2891         changes in gnulib.
2892         (Source changes): New section.
2893
2894 2007-10-26  Bruno Haible  <bruno@clisp.org>
2895
2896         * m4/gnulib-common.m4 (AC_C_RESTRICT): New overriding definition,
2897         borrowed from autoconf.
2898
2899 2007-10-26  Bruno Haible  <bruno@clisp.org>
2900
2901         * lib/strerror.c (rpl_strerror): Return "Unknown error ..." also if
2902         strerror returned the empty string. Needed on HP-UX 11.00.
2903
2904 2007-10-24  Micah Cowan  <micah@cowan.name>
2905
2906         Remove vestiges of cvs-gnulib-checkout process.  Now we use git.
2907         * build-aux/bootstrap: Remove support for now-unnecessary option,
2908         --cvs-user, and envvars CVS_USER, CVS_RSH.
2909
2910 2007-10-24  Jim Meyering  <meyering@redhat.com>
2911
2912         Avoid diagnostics from sha1sum when there is no cached checksum.
2913         * build-aux/bootstrap (update_po_files): Skip the sha1sum check
2914         if the po.s1 file hasn't been created yet.
2915
2916         * build-aux/bootstrap: Sync from coreutils:
2917         2007-10-24  Jim Meyering  <meyering@redhat.com>
2918         Get gnulib from the git repository, not from an obsolete cvs one.
2919         * build-aux/bootstrap: Suggestion from Micah Cowan.
2920         2007-10-04  Jim Meyering  <jim@meyering.net>
2921         * build-aux/bootstrap (slurp): Adapt to _.h -> .in.h name change.
2922         (update_po_files): Work also when there are no .po files in po/.
2923
2924 2007-10-24  Paul Eggert  <eggert@cs.ucla.edu>
2925
2926         * README: Append ".git" to git and cg examples.
2927         Problem reported by Benoit Sigoure.
2928
2929 2007-10-23  Micah Cowan  <micah@cowan.name>
2930
2931         * users.txt: Add wget.
2932
2933 2007-10-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2934
2935         Fix linking of some unistdio tests on FreeBSD.
2936         * modules/unistdio/u16-vsnprintf-tests
2937         (test_u16_vsprintf1_LDADD): Add @LIBINTL@.
2938         * modules/unistdio/u16-vsprintf-tests
2939         (test_u16_vsnprintf1_LDADD): Likewise.
2940         * modules/unistdio/u32-vsnprintf-tests
2941         (test_u32_vsnprintf1_LDADD): Likewise.
2942         * modules/unistdio/u32-vsprintf-tests
2943         (test_u32_vsprintf1_LDADD): Likewise.
2944         * modules/unistdio/u8-vsnprintf-tests
2945         (test_u8_vsnprintf1_LDADD): Likewise.
2946         * modules/unistdio/u8-vsprintf-tests
2947         (test_u8_vsprintf1_LDADD): Likewise.
2948         * modules/unistdio/ulc-vsnprintf-tests
2949         (test_ulc_vsnprintf1_LDADD): Likewise.
2950         * modules/unistdio/ulc-vsprintf-tests
2951         (test_ulc_vsprintf1_LDADD): Likewise.
2952
2953         Fix linking of some uniconv tests on FreeBSD.
2954         * modules/uniconv/u16-conv-from-enc-tests
2955         (test_u16_conv_from_enc_LDADD): Link $(LDADD) before @LIBICONV@.
2956         * modules/uniconv/u16-conv-to-enc-tests
2957         (test_u16_conv_to_enc_LDADD): Likewise.
2958         * modules/uniconv/u16-strconv-from-enc-tests
2959         (test_u16_strconv_from_enc_LDADD): Likewise.
2960         * modules/uniconv/u16-strconv-to-enc-tests
2961         (test_u16_strconv_to_enc_LDADD): Likewise.
2962         * modules/uniconv/u32-conv-from-enc-tests
2963         (test_u32_conv_from_enc_LDADD): Likewise.
2964         * modules/uniconv/u32-conv-to-enc-tests
2965         (test_u32_conv_to_enc_LDADD): Likewise.
2966         * modules/uniconv/u32-strconv-from-enc-tests
2967         (test_u32_strconv_from_enc_LDADD): Likewise.
2968         * modules/uniconv/u32-strconv-to-enc-tests
2969         (test_u32_strconv_to_enc_LDADD): Likewise.
2970         * modules/uniconv/u8-conv-from-enc-tests
2971         (test_u8_conv_from_enc_LDADD): Likewise.
2972         * modules/uniconv/u8-conv-to-enc-tests
2973         (test_u8_conv_to_enc_LDADD): Likewise.
2974         * modules/uniconv/u8-strconv-from-enc-tests
2975         (test_u8_strconv_from_enc_LDADD): Likewise.
2976         * modules/uniconv/u8-strconv-to-enc-tests
2977         (test_u8_strconv_to_enc_LDADD): Likewise.
2978
2979 2007-10-22  Bruno Haible  <bruno@clisp.org>
2980
2981         * lib/stdint.in.h: Add check that intmax_t and uintmax_t have the same
2982         size.
2983
2984 2007-10-22  Eric Blake  <ebb9@byu.net>
2985
2986         Tweak x*printf documentation.
2987         * lib/xprintf.c (xprintf, xvprintf, xfprintf, xvfprintf): Adjust
2988         variable name and comments.
2989         Suggested by Bruno Haible.
2990
2991 2007-10-22  Bruno Haible  <bruno@clisp.org>
2992
2993         * lib/acl.c (copy_acl): Fix file name in comment.
2994
2995 2007-10-22  Paul Eggert  <eggert@cs.ucla.edu>
2996
2997         Fix Tru64 problem with stdbool.h.
2998         * lib/stdbool.in.h (false, true):
2999         [! (defined __cplusplus || defined __BEOS__) && !defined __GNUC__]:
3000         Don't declare as an enum in this situation; it runs afoul of Tru64.
3001         Problem reported by Steven M. Schweda in
3002         <http://lists.gnu.org/archive/html/bug-autoconf/2007-10/msg00019.html>.
3003
3004 2007-10-22  Eric Blake  <ebb9@byu.net>
3005
3006         Also wrap vf?printf.
3007         * lib/xprintf.h (xvprintf, xvfprintf): New declarations.
3008         * lib/xprintf.c (xprintf, xfprintf): Work for C89.
3009         (xvprintf, xvfprintf): New functions.
3010
3011 2007-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3012
3013         * modules/fstrcmp-tests (test_fstrcmp_LDADD): New, add
3014         @LIBINTL@ for FreeBSD 6.2, $(LIBTHREAD) for AIX 4.3.3.
3015
3016         * lib/uniconv/u16-conv-to-enc.c (U_MBLEN): Define.
3017         * lib/uniconv/u32-conv-to-enc.c (U_MBLEN): Likewise.
3018
3019 2007-10-22  Paul Eggert  <eggert@cs.ucla.edu>
3020
3021         * lib/acl.c (copy_acl): Adjust to IRIX 6.5.  Problem reported
3022         by Bruno Haible.
3023
3024 2007-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3025
3026         * lib/getloadavg.c
3027         [defined (__osf__) && (defined (__alpha) || defined (__alpha__)]:
3028         Undef `sys' after including sys/table.h, for Tru64 4.0D.
3029
3030         * tests/test-i-ring.c: Work for C89.
3031
3032 2007-10-22  Bruno Haible  <bruno@clisp.org>
3033
3034         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Use -1ull, not
3035         -1u, in preprocessor expression, so that we don't test for the bug
3036         in HP-UX 11.00 cpp.  Testing for this bug caused problems; see
3037         <http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00329.html>.
3038
3039 2007-10-22  Eric Blake  <ebb9@byu.net>
3040
3041         * tests/test-yesno.sh: Silence stderr during test.
3042
3043 2007-10-22  Simon Josefsson  <simon@josefsson.org>
3044
3045         * modules/crypto/gc-camellia: New file.
3046
3047         * m4/gc-camellia.m4: New file.
3048
3049         * lib/gc-libgcrypt.c (gc_cipher_open): Support Camellia.
3050
3051         * lib/gc.h (enum Gc_cipher): Add GC_CAMELLIA128, GC_CAMELLIA256.
3052
3053 2007-10-22  Simon Josefsson  <simon@josefsson.org>
3054
3055         * build-aux/maint.mk (gzip_rsyncable): Don't fail if gzip sends
3056         --help to stdout.  Reported by sms@antinode.org (Steven
3057         M. Schweda).
3058
3059 2007-10-22  Simon Josefsson  <simon@josefsson.org>
3060
3061         * users.txt: Fix link to libksba.
3062
3063 2007-10-21  Ben Pfaff  <blp@gnu.org>
3064
3065         * modules/roundf-tests: Add dependency on floorf, ceilf to allow
3066         round.c roundf implementation that depends on floorf and ceilf to
3067         be tested unconditionally.
3068
3069 2007-10-21  Ben Pfaff  <blp@gnu.org>
3070
3071         * m4/check-libm-func.m4: Removed.
3072         * m4/check-math-lib.m4: New file.
3073         * m4/round.m4: Rewrite to use gl_CHECK_MATH_LIB.
3074         * m4/roundf.m4: Ditto, and fix lack of HAVE_DECL_ROUNDF
3075         definition and lack of AC_LIBOBJ([roundf]).
3076         * m4/roundl.m4: Ditto, and similarly for roundl.
3077         * modules/round: Reference new m4 file.
3078         * modules/roundf: Ditto.
3079         * modules/roundl: Ditto.
3080         * tests/test-round2.c (main): Use ROUND instead of round.
3081         Bug report from Bruno Haible.
3082
3083 2007-10-21  Bruno Haible  <bruno@clisp.org>
3084
3085         * lib/printf-parse.c: Don't assume <stdint.h> exists in IN_LIBASPRINTF
3086         context.
3087
3088 2007-10-21  Bruno Haible  <bruno@clisp.org>
3089
3090         * tests/test-wcwidth.c (main): Allow negative result for some control
3091         characters.
3092
3093         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Check also the width of U+200B.
3094         Needed on OSF/1 5.1.
3095
3096 2007-10-21  Bruno Haible  <bruno@clisp.org>
3097
3098         * tests/test-floorf1.c: Include isnanf.h.
3099         (main): Use isnanf() instead of isnan().
3100         * tests/test-ceilf1.c: Include isnanf.h.
3101         (main): Use isnanf() instead of isnan().
3102         * tests/test-truncf1.c: Include isnanf.h.
3103         (main): Use isnanf() instead of isnan().
3104         * tests/test-roundf1.c: Include isnanf.h.
3105         (main): Use isnanf() instead of isnan().
3106
3107 2007-10-21  Eric Blake  <ebb9@byu.net>
3108
3109         * users.txt: Update URL for m4.
3110
3111 2007-10-21  Bruno Haible  <bruno@clisp.org>
3112
3113         * users.txt: Add clisp. Update URLs to Simon Josefsson's projects.
3114
3115 2007-10-21  Bruno Haible  <bruno@clisp.org>
3116
3117         * gnulib-tool (func_create_megatestdir): Determine the cvsdate from
3118         Git's management files if the CVS files are not present.
3119
3120 2007-10-20  Bruno Haible  <bruno@clisp.org>
3121
3122         * lib/count-one-bits.h (COUNT_ONE_BITS): Use the builtin also for
3123         gcc-3.4.x.
3124
3125 2007-10-20  Ben Pfaff  <blp@gnu.org>
3126
3127         * lib/math.in.h: Declare round, roundf, roundl if we are providing
3128         implementations.
3129         * m4/math_h.m4: New substitutions for round, roundf, roundl modules.
3130         * lib/round.c: New file.
3131         * lib/roundf.c: New file.
3132         * lib/roundl.c: New file.
3133         * m4/round.m4: New file.
3134         * m4/roundf.m4: New file.
3135         * m4/roundl.m4: New file.
3136         * m4/check-libm-func-m4: New file.
3137         * modules/math: Replace round, roundf, roundl related @VARS@ in
3138         math.in.h.
3139         * modules/round: New file.
3140         * modules/round-tests: New file.
3141         * modules/roundf: New file.
3142         * modules/roundf-tests: New file.
3143         * modules/roundl: New file.
3144         * modules/roundl-tests: New file.
3145         * tests/test-round1.c: New file.
3146         * tests/test-round2.c: New file.
3147         * tests/test-roundf1.c: New file.
3148         * tests/test-roundf2.c: New file.
3149         * tests/test-roundl.c: New file.
3150         * doc/functions/round.texi: Mention round module.
3151         * doc/functions/roundf.texi: Mention roundf module.
3152         * doc/functions/roundl.texi: Mention roundl module.
3153         * MODULES.html.sh: Mention new modules.
3154         Thanks to Bruno Haible for suggestions.
3155
3156 2007-10-20  Jim Meyering  <meyering@redhat.com>
3157
3158         * lib/xprintf.c: Include <config.h> unconditionally.
3159
3160         Change xprintf's license to GPL.
3161         * modules/xprintf (License): s/LGPL/GPL/, since this module
3162         depends on modules (exit and exitfail) which are GPL.
3163         Suggestion from Bruno Haible.
3164
3165         xprintf fixes.
3166         * lib/xprintf.c (xprintf, xfprintf): Use va_end.
3167         Use a clearer diagnostic.
3168         Patch from Bruno Haible.
3169
3170 2007-10-20  Bruno Haible  <bruno@clisp.org>
3171
3172         * lib/vasnprintf.c (VASNPRINTF): Don't report overflow if the available
3173         length is INT_MAX and sizeof (DCHAR_T) > sizeof (TCHAR_T).
3174         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
3175
3176 2007-10-20  Bruno Haible  <bruno@clisp.org>
3177
3178         * tests/test-floorf2.c (correct_result_p): Don't rely on excess
3179         precision in the comparison result > x - 1 or similar.
3180         * tests/test-ceilf2.c (correct_result_p): Likewise.
3181         * tests/test-truncf2.c (correct_result_p): Likewise.
3182         * tests/test-trunc2.c (correct_result_p): Likewise.
3183         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
3184
3185 2007-10-20  Bruno Haible  <bruno@clisp.org>
3186
3187         * modules/ceil: New file.
3188         * m4/ceil.m4: New file.
3189         * doc/functions/ceil.texi: Mention the 'ceil' module.
3190
3191 2007-10-20  Bruno Haible  <bruno@clisp.org>
3192
3193         * modules/floor: New file.
3194         * m4/floor.m4: New file.
3195         * doc/functions/floor.texi: Mention the 'floor' module.
3196
3197 2007-10-20  Bruno Haible  <bruno@clisp.org>
3198
3199         * modules/ceilf-tests (Depends-on): Add fprintf-posix. Needed for use
3200         of %a.
3201         * modules/floorf-tests (Depends-on): Likewise.
3202         * modules/truncf-tests (Depends-on): Likewise.
3203         * modules/trunc-tests (Depends-on): Likewise.
3204         Reported by Ben Pfaff.
3205
3206 2007-10-19  Jim Meyering  <meyering@redhat.com>
3207
3208         * lib/xprintf.c (xprintf, xfprintf): Test err < 0, not just "err".
3209         Don't bother testing specific errno values.  Just test ferror.
3210
3211         New module: xprintf
3212         * modules/xprintf, lib/xprintf.c, lib/xprintf.h: New files.
3213
3214 2007-10-19  Bruno Haible  <bruno@clisp.org>
3215
3216         * modules/csharpexec (Makefile.am): Use @FOO@ syntax instead of $(FOO)
3217         syntax.
3218         * modules/javaexec (Makefile.am): Likewise.
3219         * modules/relocatable-prog (Makefile.am): Likewise.
3220         Suggested by Jim Meyering.
3221
3222 2007-10-18  Bruno Haible  <bruno@clisp.org>
3223
3224         * lib/vasnprintf.c (VASNPRINTF): Don't use %n on glibc >= 2.3 systems.
3225         Reported by Jim Meyering.
3226
3227 2007-10-18  Eric Blake  <ebb9@byu.net>
3228
3229         * modules/filenamecat-tests (Makefile.am): Link against -lintl.
3230
3231 2007-10-18  Bruno Haible  <bruno@clisp.org>
3232
3233         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_N, gl_SNPRINTF_DIRECTIVE_N): Put
3234         the format string into writable memory. Needed in Fortify conditions.
3235
3236 2007-10-18  Colin Watson <cjwatson@debian.org>  (tiny change)
3237             Bruno Haible  <bruno@clisp.org>
3238
3239         * lib/trim.c: Include config.h unconditionally. Include trim.h always.
3240         Include ctype.h always. Include stdlib.h, not mbuiter.h, for MB_CUR_MAX.
3241         * modules/trim (Depends-on): Add mbchar.
3242         (configure.ac): Add gl_FUNC_MBRTOWC.
3243         (Makefile.am): Augment lib_SOURCES.
3244
3245 2007-10-17  Paul Eggert  <eggert@cs.ucla.edu>
3246
3247         Modify glob.c to use fstatat and dirfd, to simplify it.
3248         Suggested by Eric Blake.
3249         * lib/glob.c (__fxstatat64) [!_LIBC]: New macro.
3250         Don't include <stdbool.h>; not used.
3251         (link_exists2_p, glob_in_dir) [!_LIBC]: No longer a special case.
3252         (link_exists_p): Simplify implementation, since we can now assume
3253         dirfd and fstatat.
3254         * modules/glob (Depends-on): Add dirfd, openat.  Remove stdbool.
3255
3256 2007-10-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3257
3258         * gnulib-tool (func_get_dependencies): Fix sed script to
3259         match only tests.
3260
3261 2007-10-17  Bruno Haible  <bruno@clisp.org>
3262
3263         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): On Cygwin, don't
3264         allow locale names without encoding suffix.
3265         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Likewise.
3266         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
3267
3268 2007-10-16  Bruno Haible  <bruno@clisp.org>
3269
3270         * lib/getcwd.c (__getcwd): Define with explicit rpl_ prefix.
3271         * lib/getgroups.c (getgroups): Likewise.
3272         * lib/gettimeofday.c (localtime, gmtime, tzset): Likewise.
3273
3274 2007-10-16  Bruno Haible  <bruno@clisp.org>
3275
3276         * modules/absolute-header (License): Change from LGPL to LGPLv2+.
3277         * modules/malloc-posix (License): Likewise.
3278         * modules/realloc-posix (License): Likewise.
3279         * modules/calloc-posix (License): Likewise.
3280         * modules/intprops (License): Change from GPL to LGPL, with
3281         Paul Eggert's approval.
3282
3283 2007-10-16  Paul Eggert  <eggert@cs.ucla.edu>
3284
3285         Merge glibc changes into lib/glob.c.
3286
3287         * lib/glob.c (glob_in_dir): Sync with glibc/posix/glob.c, dated
3288         2007-10-15 04:59:03 UTC.  Here are the changes:
3289
3290         2007-10-14  Ulrich Drepper  <drepper@redhat.com>
3291
3292         * lib/glob.c: Reimplement link_exists_p to use fstatat64.
3293
3294         * lib/glob.c: Add some branch prediction throughout.
3295
3296         2007-10-07  Ulrich Drepper  <drepper@redhat.com>
3297
3298         [BZ #5103]
3299         * lib/glob.c (glob): Recognize patterns starting \/.
3300
3301         2007-02-14  Jakub Jelinek  <jakub@redhat.com>
3302
3303         [BZ #3996]
3304         * lib/glob.c (attribute_hidden): Define if not defined.
3305         (glob): Unescape dirname, filename or username when needed and not
3306         GLOB_NOESCAPE.  Handle \/ correctly.  Handle GLOB_MARK if filename
3307         is NULL.  Handle unescaped [ in pattern without closing ].
3308         Don't pass GLOB_CHECK down to recursive glob for directories.
3309         (__glob_pattern_type): New function.
3310         (__glob_pattern_p): Implement using __glob_pattern_type.
3311         (glob_in_dir): Handle GLOB_NOCHECK patterns containing no meta
3312         characters and backslashes if not GLOB_NOESCAPE or unterminated [.
3313         Remove unreachable code.
3314
3315         2006-09-30  Ulrich Drepper  <drepper@redhat.com>
3316
3317         * lib/glob.c (glob_in_dir): Add some comments and asserts to
3318         explain why there are no leaks.
3319
3320         2006-09-25  Jakub Jelinek  <jakub@redhat.com>
3321
3322         [BZ #3253]
3323         * lib/glob.c (glob_in_dir): Don't alloca one struct globlink at a
3324         time, rather allocate increasingly bigger arrays of pointers, if
3325         possible with alloca, if too large with malloc.
3326
3327 2007-10-16  Paul Eggert  <eggert@cs.ucla.edu>
3328
3329         Check for 64-bit int errors in HP-UX 10.20 preprocessor.
3330         Problem reported by H.Merijn Brand in
3331         <http://lists.gnu.org/archive/html/bug-tar/2007-10/msg00018.html>.
3332         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Check preprocessor too.
3333         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
3334
3335 2007-10-15  Bruno Haible  <bruno@clisp.org>
3336
3337         * lib/fchdir.c (close, open, closedir, opendir, dup, dup2): Define
3338         with explicit rpl_ prefix.
3339         * lib/fopen.c (fopen): Likewise.
3340         * lib/freopen.c (freopen): Likewise.
3341         * lib/iconv.c (iconv): Likewise.
3342         * lib/iconv_close.c (iconv_close): Likewise.
3343
3344 2007-10-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3345
3346         * m4/iconv_open (gl_FUNC_ICONV_OPEN_UTF): Fix cache variable name.
3347
3348 2007-10-15  Bruno Haible  <bruno@clisp.org>
3349
3350         * m4/getaddrinfo.m4 (gl_GETADDRINFO, gl_PREREQ_GETADDRINFO): Use
3351         <stddef.h> instead of <stdlib.h> since we only need NULL.
3352         Reported by Ben Pfaff <blp@cs.stanford.edu>.
3353
3354 2007-10-15  Bruno Haible  <bruno@clisp.org>
3355
3356         * doc/gnulib-tool.texi (Initial import): Swap order of -I directives.
3357         Replace paragraph talking about LIBOBJS.
3358         Reported by Colin Watson <cjwatson@debian.org>.
3359
3360 2007-10-15  Bruno Haible  <bruno@clisp.org>
3361
3362         * m4/getaddrinfo.m4 (gl_GETADDRINFO, gl_PREREQ_GETADDRINFO): Include
3363         <stdlib.h> before using NULL.
3364
3365 2007-10-15  Simon Josefsson  <simon@josefsson.org>
3366
3367         * m4/getaddrinfo.m4: Use NULL rather than 0 for pointers.
3368         Reported by Albert Chin <china@thewrittenword.com>.
3369
3370 2007-10-14  Bruno Haible  <bruno@clisp.org>
3371
3372         * modules/iconv_open-utf-tests: New file.
3373         * tests/test-iconv-utf.c: New file.
3374
3375         Enhance iconv_open to support UTF-16BE, UTF-16LE, UTF-32BE, UTF-32LE.
3376         * modules/iconv_open-utf: New file.
3377         * lib/iconv.in.h (_ICONV_UTF8_UTF*, _ICONV_UTF*_UTF8): New macros.
3378         (iconv, iconv_close): New declarations.
3379         * lib/iconv_open.c: Include c-strcase.h. Don't require ICONV_FLAVOR to
3380         be defined.
3381         (iconv_open): Add special handling of conversion between UTF-8 and
3382         UTF-{16,32}{BE,LE}.
3383         * lib/iconv.c: New file, incorporating code from GNU libiconv 1.11.
3384         * lib/iconv_close.c: New file.
3385         * m4/iconv_open.m4 (gl_REPLACE_ICONV_OPEN): New macro, extracted from
3386         gl_FUNC_ICONV_OPEN.
3387         (gl_FUNC_ICONV_OPEN): Use it.
3388         (gl_FUNC_ICONV_OPEN_UTF): New macro.
3389         * m4/iconv_h.m4 (gl_ICONV_H_DEFAULTS): Initialize also REPLACE_ICONV
3390         and REPLACE_ICONV_UTF.
3391         * modules/iconv_open (Depends-on): Add c-strcase.
3392         (Makefile.am): Substitute also REPLACE_ICONV, REPLACE_ICONV_UTF,
3393         ICONV_CONST.
3394         * doc/functions/iconv_open.texi: Mention the iconv_open-utf module.
3395
3396 2007-10-13  Albert Chin  <china@thewrittenword.com>
3397             Bruno Haible  <bruno@clisp.org>
3398
3399         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Perform the test for getaddrinfo
3400         through a link check that includes <netdb.h>. Needed for OSF/1 5.1.
3401
3402 2007-10-13  Bruno Haible  <bruno@clisp.org>
3403
3404         * lib/argp-fmtstream.h (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is
3405         defined, use the ISO C99 inline semantics.
3406         * lib/argp.h (ARGP_EI): Likewise.
3407
3408 2007-10-13  Bruno Haible  <bruno@clisp.org>
3409
3410         Handle 'inline' change in gcc 4.3.0.
3411         * lib/argp-fmtstream.h (argp_fmtstream_putc, argp_fmtstream_puts,
3412         argp_fmtstream_write, argp_fmtstream_set_lmargin,
3413         argp_fmtstream_set_rmargin, argp_fmtstream_set_wmargin,
3414         argp_fmtstream_point): Disable 'extern' declaration if the function
3415         definition is going to be provided inline.
3416         (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is defined, use the GNU C inline
3417         semantics, not the ISO C99 inline semantics.
3418         * lib/argp.h (argp_usage, _option_is_short, _option_is_end): Disable
3419         'extern' declaration if the function definition is going to be provided
3420         inline.
3421         (ARGP_EI): Don't assume GNU C. If __GNUC_STDC_INLINE__ is defined, use
3422         the GNU C inline semantics, not the ISO C99 inline semantics. With
3423         GCC 4.2, avoid a warning.
3424
3425 2007-10-13  Bruno Haible  <bruno@clisp.org>
3426
3427         * lib/freading.h (freading): Enable the use of __freading for
3428         glibc >= 2.7.
3429         * lib/freading.c (freading): Likewise.
3430
3431 2007-10-12  Paul Eggert  <eggert@cs.ucla.edu>
3432
3433         * lib/argp-fmtstream.h (ARGP_FS_EI): Work around GCC 4.2.1 diagnostic
3434         "warning: C99 inline functions are not supported; using GNU89".
3435
3436 2007-10-12  Bruno Haible  <bruno@clisp.org>
3437
3438         * lib/ceil.c (FUNC): Avoid rounding errors for values near a power
3439         of 2.
3440         * tests/test-ceilf2.c: New file.
3441         * modules/ceilf-tests: (Files, Depends-on, Makefile.am): Add new test.
3442
3443         * tests/test-ceilf1.c: Renamed from tests/test-ceilf.c.
3444         * modules/ceilf-tests: Update.
3445
3446 2007-10-12  Bruno Haible  <bruno@clisp.org>
3447
3448         * lib/floor.c (FUNC): Avoid rounding errors for values near a power
3449         of 2.
3450         * tests/test-floorf2.c: New file.
3451         * modules/floorf-tests: (Files, Depends-on, Makefile.am): Add new test.
3452
3453         * tests/test-floorf1.c: Renamed from tests/test-floorf.c.
3454         * modules/floorf-tests: Update.
3455
3456 2007-10-12  Bruno Haible  <bruno@clisp.org>
3457
3458         * tests/test-trunc2.c: New file.
3459         * modules/trunc-tests: (Files, Depends-on, Makefile.am): Add new test.
3460
3461         * tests/test-trunc1.c: Renamed from tests/test-trunc.c.
3462         * modules/trunc-tests: Update.
3463
3464 2007-10-12  Bruno Haible  <bruno@clisp.org>
3465
3466         * lib/trunc.c (FUNC): Avoid rounding errors for values near a power
3467         of 2.
3468         * tests/test-truncf2.c: New file.
3469         * modules/truncf-tests: (Files, Depends-on, Makefile.am): Add new test.
3470
3471         * tests/test-truncf1.c: Renamed from tests/test-truncf.c.
3472         * modules/truncf-tests: Update.
3473
3474 2007-10-11  Eric Blake  <ebb9@byu.net>
3475
3476         Don't claim strerror is broken on Interix.
3477         * doc/functions/strerror.texi (strerror): Known broken systems are
3478         now Solaris 8, and not Interix.
3479         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): No longer filter out
3480         Interix on cross-compile.
3481         Reported by Martin Koeppe in
3482         http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00005.html.
3483
3484 2007-10-11  Bruno Haible  <bruno@clisp.org>
3485
3486         * modules/i-ring-tests: New file.
3487         * tests/test-i-ring.c: Renamed from lib/i-ring-test.c. Use ASSERT
3488         instead of assert.
3489
3490 2007-10-11  Bruno Haible  <bruno@clisp.org>
3491
3492         * modules/filenamecat-tests: New file.
3493         * tests/test-filenamecat.c: New file, extracted from lib/filenamecat.c.
3494         * lib/filenamecat.c: Remove test code.
3495
3496 2007-10-11  Paul Eggert  <eggert@cs.ucla.edu>
3497
3498         Simplify and modernize strerror substitute, partly to fix Solaris 8 bug.
3499
3500         * lib/strerror.c: Include <string.h> always, to test interface,
3501         and to remove the need for the dummy.
3502         Include intprops.h to compute width instead of doing it ourselves
3503         and missing a CHAR_BIT declaration, which broke tar 1.19 on Solaris 8.
3504         (strerror): Define it to return NULL if there's no system strerror.
3505         (rpl_strerror): Use INT_STRLEN_BOUND to compute bound.
3506         Omit !HAVE_STRERROR code.  We don't need to worry about supporting
3507         ancient pre-strerror Unix systems well any more.  Saying "unknown
3508         system error" is enough.
3509         * lib/string.in.h (strerror): Simplify the ifdef to reflect the
3510         simpler strerror.c implementation.
3511         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE, gl_PREREQ_STDERROR):
3512         Simplify the tests to reflect the simpler strerror implementation.
3513         * modules/strerror (Depends-on): Add intprops.
3514
3515 2007-10-09  Eric Blake  <ebb9@byu.net>
3516
3517         Silence test-fpending.
3518         * modules/fpending-tests (Files): Add wrapper script.
3519         * tests/test-fpending.sh: New file.
3520
3521 2007-10-09  Bruno Haible  <bruno@clisp.org>
3522
3523         * MODULES.html.sh (func_module): Don't create a hyperlink for
3524         function names like 'printf_frexp'.
3525         (Misc): Add crc, memxor.
3526         (Characteristics of floating types): New section.
3527         (Mathematics): Add ceilf, ceill, floorf, floorl, frexpl-nolibm,
3528         isnanf-nolibm, signbit, trunc, truncf, truncl.
3529         (Enhancements for ISO C 99 functions): New subsection Input/output.
3530         (Support for systems lacking POSIX:2001): Add arpa_inet, calloc-posix,
3531         fcntl, fopen, freopen, fseek, fseeko, ftell, ftello, iconv_open,
3532         locale, malloc-posix, netinet_in, open, realloc-posix, signal, sleep.
3533         (Compatibility checks for POSIX:2001 functions): Add clock-time.
3534         (Enhancements for POSIX:2001 functions): Add chdir-long.
3535         (File system functions): Add areadlink, chdir-safer, read-file.
3536         Remove cycle-check.
3537         (File system as inode set): New section.
3538         (Date and time): Add gethrxtime.
3539         (Multithreading): Add openmp.
3540         (Internationalization functions): Add localename.
3541         (Unicode string functions): Add unistr/u*-mbsnlen.
3542         (Support for maintaining and releasing projects): Add git-version-gen.
3543         (Lone files): Remove directories.
3544
3545 2007-10-08  Ben Pfaff  <blp@gnu.org>
3546
3547         * lib/xmalloca.h: Fix typo in comment.
3548
3549 2007-10-08  Paul Eggert  <eggert@cs.ucla.edu>
3550
3551         * lib/xnanosleep.c (xnanosleep): Don't assume GCC 4.3.0 behavior
3552         when avoiding problems with integer overflow.  Use a portable test
3553         instead.
3554
3555 2007-10-08  Simon Josefsson  <simon@josefsson.org>
3556
3557         * modules/dummy (License): Change to LGPLv2+.
3558         * modules/float (License): Likewise
3559         * modules/realloc (License): Likewise
3560         * modules/stdlib (License): Likewise
3561
3562 2007-10-07  Bruno Haible  <bruno@clisp.org>
3563
3564         * trunc.c (TWO_MANT_DIG): Change type to DOUBLE.
3565         * floor.c (TWO_MANT_DIG): Likewise.
3566         * ceil.c (TWO_MANT_DIG): Likewise.
3567         Reported by Ben Pfaff.
3568
3569 2007-10-07  Bruno Haible  <bruno@clisp.org>
3570
3571         Avoid gcc warnings "declaration of 'exp' shadows a global declaration".
3572         * lib/math.in.h (frexp, frexpl): Change parameter name to 'expptr'.
3573         * lib/frexp.c (FUNC): Likewise.
3574         * lib/printf-frexp.h (printf_frexp): Likewise.
3575         * lib/printf-frexpl.h (printf_frexpl): Likewise.
3576         * lib/printf-frexp.c (FUNC): Likewise.
3577         Suggested by Jim Meyering.
3578
3579 2007-10-07  Jim Meyering  <meyering@redhat.com>
3580
3581         Make xnanosleep's integer overflow test more robust.
3582         * lib/xnanosleep.c (xnanosleep): Declare a temporary to be "volatile",
3583         so that gcc-4.3.0 doesn't optimize away this test for overflow.
3584
3585 2007-10-07  Bruno Haible  <bruno@clisp.org>
3586
3587         * NEWS: Mention the license change.
3588
3589         * doc/gnulib-intro.texi (Copyright): Update the meaning of the license
3590         abbreviations in the modules files.
3591
3592         Change copyright notice from GPLv2+ to GPLv3+.
3593         * README: Change copyright notice.
3594         * MODULES.html.sh: Likewise.
3595         * build-aux/bootstrap.conf: Likewise.
3596         * build-aux/config.libpath: Likewise.
3597         * build-aux/csharpcomp.sh.in: Likewise.
3598         * build-aux/csharpexec.sh.in: Likewise.
3599         * build-aux/install-reloc: Likewise.
3600         * build-aux/javacomp.sh.in: Likewise.
3601         * build-aux/javaexec.sh.in: Likewise.
3602         * build-aux/ldd.sh.in: Likewise.
3603         * build-aux/reloc-ldflags: Likewise.
3604         * build-aux/relocatable.sh.in: Likewise.
3605         * build-aux/x-to-1.in: Likewise.
3606         * check-module: Likewise.
3607         * config/srclistvars.sh: Likewise.
3608         * gnulib-tool: Likewise.
3609         * lib/acl-internal.h: Likewise.
3610         * lib/acl.c: Likewise.
3611         * lib/acl.h: Likewise.
3612         * lib/acl_entries.c: Likewise.
3613         * lib/areadlink-with-size.c: Likewise.
3614         * lib/areadlink.c: Likewise.
3615         * lib/areadlink.h: Likewise.
3616         * lib/argmatch.c: Likewise.
3617         * lib/argmatch.h: Likewise.
3618         * lib/argp-ba.c: Likewise.
3619         * lib/argp-eexst.c: Likewise.
3620         * lib/argp-fmtstream.c: Likewise.
3621         * lib/argp-fmtstream.h: Likewise.
3622         * lib/argp-fs-xinl.c: Likewise.
3623         * lib/argp-help.c: Likewise.
3624         * lib/argp-namefrob.h: Likewise.
3625         * lib/argp-parse.c: Likewise.
3626         * lib/argp-pin.c: Likewise.
3627         * lib/argp-pv.c: Likewise.
3628         * lib/argp-pvh.c: Likewise.
3629         * lib/argp-xinl.c: Likewise.
3630         * lib/argp.h: Likewise.
3631         * lib/at-func.c: Likewise.
3632         * lib/atanl.c: Likewise.
3633         * lib/backupfile.c: Likewise.
3634         * lib/backupfile.h: Likewise.
3635         * lib/basename.c: Likewise.
3636         * lib/binary-io.h: Likewise.
3637         * lib/byteswap.in.h: Likewise.
3638         * lib/c-stack.c: Likewise.
3639         * lib/c-stack.h: Likewise.
3640         * lib/c-strcasestr.c: Likewise.
3641         * lib/c-strcasestr.h: Likewise.
3642         * lib/c-strstr.c: Likewise.
3643         * lib/c-strstr.h: Likewise.
3644         * lib/c-strtod.c: Likewise.
3645         * lib/calloc.c: Likewise.
3646         * lib/canon-host.c: Likewise.
3647         * lib/canon-host.h: Likewise.
3648         * lib/canonicalize-lgpl.c: Likewise.
3649         * lib/canonicalize.c: Likewise.
3650         * lib/canonicalize.h: Likewise.
3651         * lib/ceil.c: Likewise.
3652         * lib/ceilf.c: Likewise.
3653         * lib/ceill.c: Likewise.
3654         * lib/chdir-long.c: Likewise.
3655         * lib/chdir-long.h: Likewise.
3656         * lib/chdir-safer.c: Likewise.
3657         * lib/chdir-safer.h: Likewise.
3658         * lib/chown.c: Likewise.
3659         * lib/classpath.c: Likewise.
3660         * lib/classpath.h: Likewise.
3661         * lib/clean-temp.c: Likewise.
3662         * lib/clean-temp.h: Likewise.
3663         * lib/cloexec.c: Likewise.
3664         * lib/close-stream.c: Likewise.
3665         * lib/closein.c: Likewise.
3666         * lib/closein.h: Likewise.
3667         * lib/closeout.c: Likewise.
3668         * lib/closeout.h: Likewise.
3669         * lib/concat-filename.c: Likewise.
3670         * lib/copy-file.c: Likewise.
3671         * lib/copy-file.h: Likewise.
3672         * lib/count-one-bits.h: Likewise.
3673         * lib/crc.c: Likewise.
3674         * lib/crc.h: Likewise.
3675         * lib/creat-safer.c: Likewise.
3676         * lib/csharpcomp.c: Likewise.
3677         * lib/csharpcomp.h: Likewise.
3678         * lib/csharpexec.c: Likewise.
3679         * lib/csharpexec.h: Likewise.
3680         * lib/cycle-check.c: Likewise.
3681         * lib/cycle-check.h: Likewise.
3682         * lib/diacrit.c: Likewise.
3683         * lib/diacrit.h: Likewise.
3684         * lib/diffseq.h: Likewise.
3685         * lib/dirchownmod.c: Likewise.
3686         * lib/dirent.in.h: Likewise.
3687         * lib/dirfd.c: Likewise.
3688         * lib/dirfd.h: Likewise.
3689         * lib/dirname.c: Likewise.
3690         * lib/dirname.h: Likewise.
3691         * lib/dummy.c: Likewise.
3692         * lib/dup-safer.c: Likewise.
3693         * lib/dup2.c: Likewise.
3694         * lib/eealloc.h: Likewise.
3695         * lib/error.c: Likewise.
3696         * lib/error.h: Likewise.
3697         * lib/euidaccess.c: Likewise.
3698         * lib/exclude.c: Likewise.
3699         * lib/exclude.h: Likewise.
3700         * lib/execute.c: Likewise.
3701         * lib/execute.h: Likewise.
3702         * lib/exitfail.c: Likewise.
3703         * lib/exitfail.h: Likewise.
3704         * lib/expl.c: Likewise.
3705         * lib/fatal-signal.c: Likewise.
3706         * lib/fatal-signal.h: Likewise.
3707         * lib/fbufmode.c: Likewise.
3708         * lib/fbufmode.h: Likewise.
3709         * lib/fchdir.c: Likewise.
3710         * lib/fchmodat.c: Likewise.
3711         * lib/fchownat.c: Likewise.
3712         * lib/fcntl--.h: Likewise.
3713         * lib/fcntl-safer.h: Likewise.
3714         * lib/fcntl.in.h: Likewise.
3715         * lib/fd-safer.c: Likewise.
3716         * lib/fflush.c: Likewise.
3717         * lib/file-has-acl.c: Likewise.
3718         * lib/file-set.c: Likewise.
3719         * lib/file-type.c: Likewise.
3720         * lib/file-type.h: Likewise.
3721         * lib/fileblocks.c: Likewise.
3722         * lib/filemode.c: Likewise.
3723         * lib/filemode.h: Likewise.
3724         * lib/filename.h: Likewise.
3725         * lib/filenamecat.c: Likewise.
3726         * lib/filenamecat.h: Likewise.
3727         * lib/findprog.c: Likewise.
3728         * lib/findprog.h: Likewise.
3729         * lib/float.in.h: Likewise.
3730         * lib/floor.c: Likewise.
3731         * lib/floorf.c: Likewise.
3732         * lib/floorl.c: Likewise.
3733         * lib/fopen-safer.c: Likewise.
3734         * lib/fopen.c: Likewise.
3735         * lib/fpending.c: Likewise.
3736         * lib/fpending.h: Likewise.
3737         * lib/fprintf.c: Likewise.
3738         * lib/fprintftime.h: Likewise.
3739         * lib/fpucw.h: Likewise.
3740         * lib/fpurge.c: Likewise.
3741         * lib/fpurge.h: Likewise.
3742         * lib/freadable.c: Likewise.
3743         * lib/freadable.h: Likewise.
3744         * lib/freadahead.c: Likewise.
3745         * lib/freadahead.h: Likewise.
3746         * lib/freading.c: Likewise.
3747         * lib/freading.h: Likewise.
3748         * lib/free.c: Likewise.
3749         * lib/freopen.c: Likewise.
3750         * lib/frexp.c: Likewise.
3751         * lib/frexpl.c: Likewise.
3752         * lib/fseek.c: Likewise.
3753         * lib/fseterr.c: Likewise.
3754         * lib/fseterr.h: Likewise.
3755         * lib/fstatat.c: Likewise.
3756         * lib/fstrcmp.c: Likewise.
3757         * lib/fstrcmp.h: Likewise.
3758         * lib/fsusage.c: Likewise.
3759         * lib/fsusage.h: Likewise.
3760         * lib/ftell.c: Likewise.
3761         * lib/ftello.c: Likewise.
3762         * lib/fts-cycle.c: Likewise.
3763         * lib/fts.c: Likewise.
3764         * lib/fts_.h: Likewise.
3765         * lib/full-read.c: Likewise.
3766         * lib/full-read.h: Likewise.
3767         * lib/full-write.c: Likewise.
3768         * lib/full-write.h: Likewise.
3769         * lib/fwritable.c: Likewise.
3770         * lib/fwritable.h: Likewise.
3771         * lib/fwriteerror.c: Likewise.
3772         * lib/fwriteerror.h: Likewise.
3773         * lib/fwriting.c: Likewise.
3774         * lib/fwriting.h: Likewise.
3775         * lib/gcd.c: Likewise.
3776         * lib/gcd.h: Likewise.
3777         * lib/getcwd.c: Likewise.
3778         * lib/getdate.h: Likewise.
3779         * lib/getdate.y: Likewise.
3780         * lib/getdomainname.c: Likewise.
3781         * lib/getdomainname.h: Likewise.
3782         * lib/getgroups.c: Likewise.
3783         * lib/gethostname.c: Likewise.
3784         * lib/gethrxtime.c: Likewise.
3785         * lib/gethrxtime.h: Likewise.
3786         * lib/getloadavg.c: Likewise.
3787         * lib/getndelim2.c: Likewise.
3788         * lib/getndelim2.h: Likewise.
3789         * lib/getnline.c: Likewise.
3790         * lib/getnline.h: Likewise.
3791         * lib/getopt.c: Likewise.
3792         * lib/getopt.in.h: Likewise.
3793         * lib/getopt1.c: Likewise.
3794         * lib/getopt_int.h: Likewise.
3795         * lib/getpagesize.h: Likewise.
3796         * lib/getsubopt.c: Likewise.
3797         * lib/gettime.c: Likewise.
3798         * lib/getugroups.c: Likewise.
3799         * lib/getugroups.h: Likewise.
3800         * lib/getusershell.c: Likewise.
3801         * lib/gl_anyavltree_list1.h: Likewise.
3802         * lib/gl_anyavltree_list2.h: Likewise.
3803         * lib/gl_anyhash_list1.h: Likewise.
3804         * lib/gl_anyhash_list2.h: Likewise.
3805         * lib/gl_anylinked_list1.h: Likewise.
3806         * lib/gl_anylinked_list2.h: Likewise.
3807         * lib/gl_anyrbtree_list1.h: Likewise.
3808         * lib/gl_anyrbtree_list2.h: Likewise.
3809         * lib/gl_anytree_list1.h: Likewise.
3810         * lib/gl_anytree_list2.h: Likewise.
3811         * lib/gl_anytree_oset.h: Likewise.
3812         * lib/gl_anytreehash_list1.h: Likewise.
3813         * lib/gl_anytreehash_list2.h: Likewise.
3814         * lib/gl_array_list.c: Likewise.
3815         * lib/gl_array_list.h: Likewise.
3816         * lib/gl_array_oset.c: Likewise.
3817         * lib/gl_array_oset.h: Likewise.
3818         * lib/gl_avltree_list.c: Likewise.
3819         * lib/gl_avltree_list.h: Likewise.
3820         * lib/gl_avltree_oset.c: Likewise.
3821         * lib/gl_avltree_oset.h: Likewise.
3822         * lib/gl_avltreehash_list.c: Likewise.
3823         * lib/gl_avltreehash_list.h: Likewise.
3824         * lib/gl_carray_list.c: Likewise.
3825         * lib/gl_carray_list.h: Likewise.
3826         * lib/gl_linked_list.c: Likewise.
3827         * lib/gl_linked_list.h: Likewise.
3828         * lib/gl_linkedhash_list.c: Likewise.
3829         * lib/gl_linkedhash_list.h: Likewise.
3830         * lib/gl_list.c: Likewise.
3831         * lib/gl_list.h: Likewise.
3832         * lib/gl_oset.c: Likewise.
3833         * lib/gl_oset.h: Likewise.
3834         * lib/gl_rbtree_list.c: Likewise.
3835         * lib/gl_rbtree_list.h: Likewise.
3836         * lib/gl_rbtree_oset.c: Likewise.
3837         * lib/gl_rbtree_oset.h: Likewise.
3838         * lib/gl_rbtreehash_list.c: Likewise.
3839         * lib/gl_rbtreehash_list.h: Likewise.
3840         * lib/gl_sublist.c: Likewise.
3841         * lib/gl_sublist.h: Likewise.
3842         * lib/group-member.c: Likewise.
3843         * lib/group-member.h: Likewise.
3844         * lib/hard-locale.c: Likewise.
3845         * lib/hard-locale.h: Likewise.
3846         * lib/hash-pjw.c: Likewise.
3847         * lib/hash-pjw.h: Likewise.
3848         * lib/hash-triple.c: Likewise.
3849         * lib/hash.c: Likewise.
3850         * lib/hash.h: Likewise.
3851         * lib/human.c: Likewise.
3852         * lib/human.h: Likewise.
3853         * lib/i-ring.c: Likewise.
3854         * lib/i-ring.h: Likewise.
3855         * lib/idcache.c: Likewise.
3856         * lib/imaxabs.c: Likewise.
3857         * lib/imaxdiv.c: Likewise.
3858         * lib/inet_pton.c: Likewise.
3859         * lib/inet_pton.h: Likewise.
3860         * lib/intprops.h: Likewise.
3861         * lib/inttostr.c: Likewise.
3862         * lib/inttostr.h: Likewise.
3863         * lib/inttypes.in.h: Likewise.
3864         * lib/isapipe.c: Likewise.
3865         * lib/isdir.c: Likewise.
3866         * lib/isnan.c: Likewise.
3867         * lib/isnan.h: Likewise.
3868         * lib/isnanf.c: Likewise.
3869         * lib/isnanf.h: Likewise.
3870         * lib/isnanl-nolibm.h: Likewise.
3871         * lib/isnanl.c: Likewise.
3872         * lib/isnanl.h: Likewise.
3873         * lib/javacomp.c: Likewise.
3874         * lib/javacomp.h: Likewise.
3875         * lib/javaexec.c: Likewise.
3876         * lib/javaexec.h: Likewise.
3877         * lib/javaversion.c: Likewise.
3878         * lib/javaversion.h: Likewise.
3879         * lib/javaversion.java: Likewise.
3880         * lib/lbrkprop.h: Likewise.
3881         * lib/lchmod.h: Likewise.
3882         * lib/lchown.c: Likewise.
3883         * lib/ldexpl.c: Likewise.
3884         * lib/linebreak.c: Likewise.
3885         * lib/linebreak.h: Likewise.
3886         * lib/linebuffer.c: Likewise.
3887         * lib/linebuffer.h: Likewise.
3888         * lib/locale.in.h: Likewise.
3889         * lib/logl.c: Likewise.
3890         * lib/long-options.c: Likewise.
3891         * lib/long-options.h: Likewise.
3892         * lib/lstat.c: Likewise.
3893         * lib/lstat.h: Likewise.
3894         * lib/math.in.h: Likewise.
3895         * lib/mbchar.c: Likewise.
3896         * lib/mbchar.h: Likewise.
3897         * lib/mbfile.h: Likewise.
3898         * lib/mbiter.h: Likewise.
3899         * lib/mbscasecmp.c: Likewise.
3900         * lib/mbscasestr.c: Likewise.
3901         * lib/mbschr.c: Likewise.
3902         * lib/mbscspn.c: Likewise.
3903         * lib/mbslen.c: Likewise.
3904         * lib/mbsncasecmp.c: Likewise.
3905         * lib/mbsnlen.c: Likewise.
3906         * lib/mbspbrk.c: Likewise.
3907         * lib/mbspcasecmp.c: Likewise.
3908         * lib/mbsrchr.c: Likewise.
3909         * lib/mbssep.c: Likewise.
3910         * lib/mbsspn.c: Likewise.
3911         * lib/mbsstr.c: Likewise.
3912         * lib/mbstok_r.c: Likewise.
3913         * lib/mbswidth.c: Likewise.
3914         * lib/mbswidth.h: Likewise.
3915         * lib/mbuiter.h: Likewise.
3916         * lib/memcasecmp.c: Likewise.
3917         * lib/memcasecmp.h: Likewise.
3918         * lib/memchr.c: Likewise.
3919         * lib/memcmp.c: Likewise.
3920         * lib/memcoll.c: Likewise.
3921         * lib/memcoll.h: Likewise.
3922         * lib/memcpy.c: Likewise.
3923         * lib/memrchr.c: Likewise.
3924         * lib/mkancesdirs.c: Likewise.
3925         * lib/mkdir-p.c: Likewise.
3926         * lib/mkdir-p.h: Likewise.
3927         * lib/mkdir.c: Likewise.
3928         * lib/mkdirat.c: Likewise.
3929         * lib/mkdtemp.c: Likewise.
3930         * lib/mkstemp-safer.c: Likewise.
3931         * lib/mkstemp.c: Likewise.
3932         * lib/modechange.c: Likewise.
3933         * lib/modechange.h: Likewise.
3934         * lib/mountlist.c: Likewise.
3935         * lib/mountlist.h: Likewise.
3936         * lib/mpsort.c: Likewise.
3937         * lib/nanosleep.c: Likewise.
3938         * lib/obstack.c: Likewise.
3939         * lib/obstack.h: Likewise.
3940         * lib/open-safer.c: Likewise.
3941         * lib/open.c: Likewise.
3942         * lib/openat-die.c: Likewise.
3943         * lib/openat-priv.h: Likewise.
3944         * lib/openat-proc.c: Likewise.
3945         * lib/openat.c: Likewise.
3946         * lib/openat.h: Likewise.
3947         * lib/pagealign_alloc.c: Likewise.
3948         * lib/pagealign_alloc.h: Likewise.
3949         * lib/physmem.c: Likewise.
3950         * lib/physmem.h: Likewise.
3951         * lib/pipe-safer.c: Likewise.
3952         * lib/pipe.c: Likewise.
3953         * lib/pipe.h: Likewise.
3954         * lib/posixtm.c: Likewise.
3955         * lib/posixtm.h: Likewise.
3956         * lib/posixver.c: Likewise.
3957         * lib/printf-frexp.c: Likewise.
3958         * lib/printf-frexp.h: Likewise.
3959         * lib/printf-frexpl.c: Likewise.
3960         * lib/printf-frexpl.h: Likewise.
3961         * lib/printf.c: Likewise.
3962         * lib/progname.c: Likewise.
3963         * lib/progname.h: Likewise.
3964         * lib/progreloc.c: Likewise.
3965         * lib/putenv.c: Likewise.
3966         * lib/quote.c: Likewise.
3967         * lib/quote.h: Likewise.
3968         * lib/quotearg.c: Likewise.
3969         * lib/quotearg.h: Likewise.
3970         * lib/raise.c: Likewise.
3971         * lib/readline.c: Likewise.
3972         * lib/readline.h: Likewise.
3973         * lib/readlink.c: Likewise.
3974         * lib/readtokens.c: Likewise.
3975         * lib/readtokens.h: Likewise.
3976         * lib/readtokens0.c: Likewise.
3977         * lib/readtokens0.h: Likewise.
3978         * lib/readutmp.c: Likewise.
3979         * lib/readutmp.h: Likewise.
3980         * lib/realloc.c: Likewise.
3981         * lib/relocwrapper.c: Likewise.
3982         * lib/rename-dest-slash.c: Likewise.
3983         * lib/rename.c: Likewise.
3984         * lib/rmdir.c: Likewise.
3985         * lib/rpmatch.c: Likewise.
3986         * lib/safe-read.c: Likewise.
3987         * lib/safe-read.h: Likewise.
3988         * lib/safe-write.c: Likewise.
3989         * lib/safe-write.h: Likewise.
3990         * lib/same-inode.h: Likewise.
3991         * lib/same.c: Likewise.
3992         * lib/same.h: Likewise.
3993         * lib/save-cwd.c: Likewise.
3994         * lib/save-cwd.h: Likewise.
3995         * lib/savedir.c: Likewise.
3996         * lib/savedir.h: Likewise.
3997         * lib/savewd.c: Likewise.
3998         * lib/savewd.h: Likewise.
3999         * lib/search.in.h: Likewise.
4000         * lib/setenv.c: Likewise.
4001         * lib/setenv.h: Likewise.
4002         * lib/settime.c: Likewise.
4003         * lib/sh-quote.c: Likewise.
4004         * lib/sh-quote.h: Likewise.
4005         * lib/sig2str.c: Likewise.
4006         * lib/sig2str.h: Likewise.
4007         * lib/signal.in.h: Likewise.
4008         * lib/signbitd.c: Likewise.
4009         * lib/signbitf.c: Likewise.
4010         * lib/signbitl.c: Likewise.
4011         * lib/sigprocmask.c: Likewise.
4012         * lib/sincosl.c: Likewise.
4013         * lib/sleep.c: Likewise.
4014         * lib/sprintf.c: Likewise.
4015         * lib/sqrtl.c: Likewise.
4016         * lib/stat-time.h: Likewise.
4017         * lib/stdio--.h: Likewise.
4018         * lib/stdio-safer.h: Likewise.
4019         * lib/stdlib--.h: Likewise.
4020         * lib/stdlib-safer.h: Likewise.
4021         * lib/stdlib.in.h: Likewise.
4022         * lib/stpcpy.c: Likewise.
4023         * lib/stpncpy.c: Likewise.
4024         * lib/strchrnul.c: Likewise.
4025         * lib/strcspn.c: Likewise.
4026         * lib/strerror.c: Likewise.
4027         * lib/strftime.c: Likewise.
4028         * lib/strftime.h: Likewise.
4029         * lib/striconveh.c: Likewise.
4030         * lib/striconveh.h: Likewise.
4031         * lib/striconveha.c: Likewise.
4032         * lib/striconveha.h: Likewise.
4033         * lib/stripslash.c: Likewise.
4034         * lib/strnlen1.c: Likewise.
4035         * lib/strnlen1.h: Likewise.
4036         * lib/strtod.c: Likewise.
4037         * lib/strtoimax.c: Likewise.
4038         * lib/strtok_r.c: Likewise.
4039         * lib/strtol.c: Likewise.
4040         * lib/strtoll.c: Likewise.
4041         * lib/strtoul.c: Likewise.
4042         * lib/strtoull.c: Likewise.
4043         * lib/sysexits.in.h: Likewise.
4044         * lib/tempname.c: Likewise.
4045         * lib/tempname.h: Likewise.
4046         * lib/timespec.h: Likewise.
4047         * lib/tls.c: Likewise.
4048         * lib/tls.h: Likewise.
4049         * lib/tmpdir.c: Likewise.
4050         * lib/tmpdir.h: Likewise.
4051         * lib/tmpfile-safer.c: Likewise.
4052         * lib/tmpfile.c: Likewise.
4053         * lib/trigl.c: Likewise.
4054         * lib/trigl.h: Likewise.
4055         * lib/trim.c: Likewise.
4056         * lib/trim.h: Likewise.
4057         * lib/trunc.c: Likewise.
4058         * lib/truncf.c: Likewise.
4059         * lib/truncl.c: Likewise.
4060         * lib/tsearch.c: Likewise.
4061         * lib/unicodeio.c: Likewise.
4062         * lib/unicodeio.h: Likewise.
4063         * lib/unistd--.h: Likewise.
4064         * lib/unistd-safer.h: Likewise.
4065         * lib/unistdio/ulc-fprintf.c: Likewise.
4066         * lib/unistdio/ulc-vfprintf.c: Likewise.
4067         * lib/unlinkdir.c: Likewise.
4068         * lib/unlinkdir.h: Likewise.
4069         * lib/unlocked-io.h: Likewise.
4070         * lib/unsetenv.c: Likewise.
4071         * lib/userspec.c: Likewise.
4072         * lib/utime.c: Likewise.
4073         * lib/utimecmp.c: Likewise.
4074         * lib/utimecmp.h: Likewise.
4075         * lib/utimens.c: Likewise.
4076         * lib/verify.h: Likewise.
4077         * lib/verror.c: Likewise.
4078         * lib/verror.h: Likewise.
4079         * lib/version-etc-fsf.c: Likewise.
4080         * lib/version-etc.c: Likewise.
4081         * lib/version-etc.h: Likewise.
4082         * lib/vfprintf.c: Likewise.
4083         * lib/vprintf.c: Likewise.
4084         * lib/vsprintf.c: Likewise.
4085         * lib/w32spawn.h: Likewise.
4086         * lib/wait-process.c: Likewise.
4087         * lib/wait-process.h: Likewise.
4088         * lib/wcwidth.c: Likewise.
4089         * lib/write-any-file.c: Likewise.
4090         * lib/xalloc-die.c: Likewise.
4091         * lib/xalloc.h: Likewise.
4092         * lib/xasprintf.c: Likewise.
4093         * lib/xgetcwd.c: Likewise.
4094         * lib/xgetcwd.h: Likewise.
4095         * lib/xgetdomainname.c: Likewise.
4096         * lib/xgetdomainname.h: Likewise.
4097         * lib/xgethostname.c: Likewise.
4098         * lib/xmalloc.c: Likewise.
4099         * lib/xmalloca.c: Likewise.
4100         * lib/xmalloca.h: Likewise.
4101         * lib/xmemcoll.c: Likewise.
4102         * lib/xnanosleep.c: Likewise.
4103         * lib/xreadlink.c: Likewise.
4104         * lib/xreadlink.h: Likewise.
4105         * lib/xsetenv.c: Likewise.
4106         * lib/xsetenv.h: Likewise.
4107         * lib/xstriconv.c: Likewise.
4108         * lib/xstriconv.h: Likewise.
4109         * lib/xstrndup.c: Likewise.
4110         * lib/xstrndup.h: Likewise.
4111         * lib/xstrtod.c: Likewise.
4112         * lib/xstrtod.h: Likewise.
4113         * lib/xstrtol-error.c: Likewise.
4114         * lib/xstrtol.c: Likewise.
4115         * lib/xstrtol.h: Likewise.
4116         * lib/xtime.h: Likewise.
4117         * lib/xvasprintf.c: Likewise.
4118         * lib/xvasprintf.h: Likewise.
4119         * lib/yesno.c: Likewise.
4120         * lib/yesno.h: Likewise.
4121         * posix-modules: Likewise.
4122         * tests/test-alloca-opt.c: Likewise.
4123         * tests/test-arcfour.c: Likewise.
4124         * tests/test-arctwo.c: Likewise.
4125         * tests/test-argmatch.c: Likewise.
4126         * tests/test-argp-2.sh: Likewise.
4127         * tests/test-argp.c: Likewise.
4128         * tests/test-arpa_inet.c: Likewise.
4129         * tests/test-array_list.c: Likewise.
4130         * tests/test-array_oset.c: Likewise.
4131         * tests/test-atexit.c: Likewise.
4132         * tests/test-avltree_list.c: Likewise.
4133         * tests/test-avltree_oset.c: Likewise.
4134         * tests/test-avltreehash_list.c: Likewise.
4135         * tests/test-base64.c: Likewise.
4136         * tests/test-binary-io.c: Likewise.
4137         * tests/test-byteswap.c: Likewise.
4138         * tests/test-c-ctype.c: Likewise.
4139         * tests/test-c-strcasecmp.c: Likewise.
4140         * tests/test-c-strcasestr.c: Likewise.
4141         * tests/test-c-strncasecmp.c: Likewise.
4142         * tests/test-c-strstr.c: Likewise.
4143         * tests/test-canonicalize-lgpl.c: Likewise.
4144         * tests/test-canonicalize.c: Likewise.
4145         * tests/test-carray_list.c: Likewise.
4146         * tests/test-ceilf.c: Likewise.
4147         * tests/test-ceill.c: Likewise.
4148         * tests/test-count-one-bits.c: Likewise.
4149         * tests/test-crc.c: Likewise.
4150         * tests/test-dirname.c: Likewise.
4151         * tests/test-fbufmode.c: Likewise.
4152         * tests/test-fcntl.c: Likewise.
4153         * tests/test-fflush.c: Likewise.
4154         * tests/test-floorf.c: Likewise.
4155         * tests/test-floorl.c: Likewise.
4156         * tests/test-fopen.c: Likewise.
4157         * tests/test-fprintf-posix.c: Likewise.
4158         * tests/test-fprintf-posix.h: Likewise.
4159         * tests/test-fpurge.c: Likewise.
4160         * tests/test-freadable.c: Likewise.
4161         * tests/test-freadahead.c: Likewise.
4162         * tests/test-freading.c: Likewise.
4163         * tests/test-freopen.c: Likewise.
4164         * tests/test-frexp.c: Likewise.
4165         * tests/test-frexpl.c: Likewise.
4166         * tests/test-fseek.c: Likewise.
4167         * tests/test-fseeko.c: Likewise.
4168         * tests/test-fseterr.c: Likewise.
4169         * tests/test-fstrcmp.c: Likewise.
4170         * tests/test-ftell.c: Likewise.
4171         * tests/test-ftello.c: Likewise.
4172         * tests/test-fwritable.c: Likewise.
4173         * tests/test-fwriting.c: Likewise.
4174         * tests/test-getaddrinfo.c: Likewise.
4175         * tests/test-getpass.c: Likewise.
4176         * tests/test-gettimeofday.c: Likewise.
4177         * tests/test-hmac-md5.c: Likewise.
4178         * tests/test-hmac-sha1.c: Likewise.
4179         * tests/test-iconv.c: Likewise.
4180         * tests/test-iconvme.c: Likewise.
4181         * tests/test-inttypes.c: Likewise.
4182         * tests/test-isnan.c: Likewise.
4183         * tests/test-isnanf.c: Likewise.
4184         * tests/test-isnanl-nolibm.c: Likewise.
4185         * tests/test-isnanl.c: Likewise.
4186         * tests/test-isnanl.h: Likewise.
4187         * tests/test-ldexpl.c: Likewise.
4188         * tests/test-linked_list.c: Likewise.
4189         * tests/test-linkedhash_list.c: Likewise.
4190         * tests/test-locale.c: Likewise.
4191         * tests/test-localename.c: Likewise.
4192         * tests/test-lock.c: Likewise.
4193         * tests/test-lseek.c: Likewise.
4194         * tests/test-malloca.c: Likewise.
4195         * tests/test-math.c: Likewise.
4196         * tests/test-mbscasecmp.c: Likewise.
4197         * tests/test-mbscasestr1.c: Likewise.
4198         * tests/test-mbscasestr2.c: Likewise.
4199         * tests/test-mbscasestr3.c: Likewise.
4200         * tests/test-mbscasestr4.c: Likewise.
4201         * tests/test-mbschr.c: Likewise.
4202         * tests/test-mbscspn.c: Likewise.
4203         * tests/test-mbsncasecmp.c: Likewise.
4204         * tests/test-mbspbrk.c: Likewise.
4205         * tests/test-mbspcasecmp.c: Likewise.
4206         * tests/test-mbsrchr.c: Likewise.
4207         * tests/test-mbsspn.c: Likewise.
4208         * tests/test-mbsstr1.c: Likewise.
4209         * tests/test-mbsstr2.c: Likewise.
4210         * tests/test-mbsstr3.c: Likewise.
4211         * tests/test-md5.c: Likewise.
4212         * tests/test-memmem.c: Likewise.
4213         * tests/test-netinet_in.c: Likewise.
4214         * tests/test-open.c: Likewise.
4215         * tests/test-printf-frexp.c: Likewise.
4216         * tests/test-printf-frexpl.c: Likewise.
4217         * tests/test-printf-posix.c: Likewise.
4218         * tests/test-printf-posix.h: Likewise.
4219         * tests/test-rbtree_list.c: Likewise.
4220         * tests/test-rbtree_oset.c: Likewise.
4221         * tests/test-rbtreehash_list.c: Likewise.
4222         * tests/test-read-file.c: Likewise.
4223         * tests/test-rijndael.c: Likewise.
4224         * tests/test-search.c: Likewise.
4225         * tests/test-signbit.c: Likewise.
4226         * tests/test-sleep.c: Likewise.
4227         * tests/test-snprintf-posix.c: Likewise.
4228         * tests/test-snprintf-posix.h: Likewise.
4229         * tests/test-snprintf.c: Likewise.
4230         * tests/test-sprintf-posix.c: Likewise.
4231         * tests/test-sprintf-posix.h: Likewise.
4232         * tests/test-stat-time.c: Likewise.
4233         * tests/test-stdbool.c: Likewise.
4234         * tests/test-stdint.c: Likewise.
4235         * tests/test-stdio.c: Likewise.
4236         * tests/test-stdlib.c: Likewise.
4237         * tests/test-stpncpy.c: Likewise.
4238         * tests/test-strcasestr.c: Likewise.
4239         * tests/test-striconv.c: Likewise.
4240         * tests/test-striconveh.c: Likewise.
4241         * tests/test-striconveha.c: Likewise.
4242         * tests/test-string.c: Likewise.
4243         * tests/test-sys_select.c: Likewise.
4244         * tests/test-sys_socket.c: Likewise.
4245         * tests/test-sys_stat.c: Likewise.
4246         * tests/test-sys_time.c: Likewise.
4247         * tests/test-sysexits.c: Likewise.
4248         * tests/test-time.c: Likewise.
4249         * tests/test-tls.c: Likewise.
4250         * tests/test-trunc.c: Likewise.
4251         * tests/test-truncf.c: Likewise.
4252         * tests/test-truncl.c: Likewise.
4253         * tests/test-unistd.c: Likewise.
4254         * tests/test-vasnprintf-posix.c: Likewise.
4255         * tests/test-vasnprintf-posix2.c: Likewise.
4256         * tests/test-vasnprintf.c: Likewise.
4257         * tests/test-vasprintf-posix.c: Likewise.
4258         * tests/test-vasprintf.c: Likewise.
4259         * tests/test-verify.c: Likewise.
4260         * tests/test-vfprintf-posix.c: Likewise.
4261         * tests/test-vprintf-posix.c: Likewise.
4262         * tests/test-vsnprintf-posix.c: Likewise.
4263         * tests/test-vsnprintf.c: Likewise.
4264         * tests/test-vsprintf-posix.c: Likewise.
4265         * tests/test-wchar.c: Likewise.
4266         * tests/test-wctype.c: Likewise.
4267         * tests/test-wcwidth.c: Likewise.
4268         * tests/test-xstrtol.c: Likewise.
4269         * tests/test-xvasprintf.c: Likewise.
4270         * tests/uniconv/test-u16-conv-from-enc.c: Likewise.
4271         * tests/uniconv/test-u16-conv-to-enc.c: Likewise.
4272         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
4273         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
4274         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
4275         * tests/uniconv/test-u32-conv-to-enc.c: Likewise.
4276         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
4277         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
4278         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
4279         * tests/uniconv/test-u8-conv-to-enc.c: Likewise.
4280         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
4281         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
4282         * tests/uniname/test-uninames.c: Likewise.
4283         * tests/unistdio/test-u16-asnprintf1.c: Likewise.
4284         * tests/unistdio/test-u16-asnprintf1.h: Likewise.
4285         * tests/unistdio/test-u16-printf1.h: Likewise.
4286         * tests/unistdio/test-u16-vasnprintf1.c: Likewise.
4287         * tests/unistdio/test-u16-vasnprintf2.c: Likewise.
4288         * tests/unistdio/test-u16-vasnprintf3.c: Likewise.
4289         * tests/unistdio/test-u16-vasprintf1.c: Likewise.
4290         * tests/unistdio/test-u16-vsnprintf1.c: Likewise.
4291         * tests/unistdio/test-u16-vsprintf1.c: Likewise.
4292         * tests/unistdio/test-u32-asnprintf1.c: Likewise.
4293         * tests/unistdio/test-u32-asnprintf1.h: Likewise.
4294         * tests/unistdio/test-u32-printf1.h: Likewise.
4295         * tests/unistdio/test-u32-vasnprintf1.c: Likewise.
4296         * tests/unistdio/test-u32-vasnprintf2.c: Likewise.
4297         * tests/unistdio/test-u32-vasnprintf3.c: Likewise.
4298         * tests/unistdio/test-u32-vasprintf1.c: Likewise.
4299         * tests/unistdio/test-u32-vsnprintf1.c: Likewise.
4300         * tests/unistdio/test-u32-vsprintf1.c: Likewise.
4301         * tests/unistdio/test-u8-asnprintf1.c: Likewise.
4302         * tests/unistdio/test-u8-asnprintf1.h: Likewise.
4303         * tests/unistdio/test-u8-printf1.h: Likewise.
4304         * tests/unistdio/test-u8-vasnprintf1.c: Likewise.
4305         * tests/unistdio/test-u8-vasnprintf2.c: Likewise.
4306         * tests/unistdio/test-u8-vasnprintf3.c: Likewise.
4307         * tests/unistdio/test-u8-vasprintf1.c: Likewise.
4308         * tests/unistdio/test-u8-vsnprintf1.c: Likewise.
4309         * tests/unistdio/test-u8-vsprintf1.c: Likewise.
4310         * tests/unistdio/test-ulc-asnprintf1.c: Likewise.
4311         * tests/unistdio/test-ulc-asnprintf1.h: Likewise.
4312         * tests/unistdio/test-ulc-printf1.h: Likewise.
4313         * tests/unistdio/test-ulc-vasnprintf1.c: Likewise.
4314         * tests/unistdio/test-ulc-vasnprintf2.c: Likewise.
4315         * tests/unistdio/test-ulc-vasnprintf3.c: Likewise.
4316         * tests/unistdio/test-ulc-vasprintf1.c: Likewise.
4317         * tests/unistdio/test-ulc-vsnprintf1.c: Likewise.
4318         * tests/unistdio/test-ulc-vsprintf1.c: Likewise.
4319         * tests/uniwidth/test-u16-strwidth.c: Likewise.
4320         * tests/uniwidth/test-u16-width.c: Likewise.
4321         * tests/uniwidth/test-u32-strwidth.c: Likewise.
4322         * tests/uniwidth/test-u32-width.c: Likewise.
4323         * tests/uniwidth/test-u8-strwidth.c: Likewise.
4324         * tests/uniwidth/test-u8-width.c: Likewise.
4325         * tests/uniwidth/test-uc_width.c: Likewise.
4326         * config/srclist-update: Likewise.
4327         (fixlicense): Update to GPLv3+.
4328
4329         Change copyright notice from LGPLv2.1+ to LGPLv3+.
4330         * tests/test-tsearch.c: Change copyright notice.
4331
4332         Change copyright notice from LGPLv2.0+ to LGPLv3+.
4333         * lib/c-strcaseeq.h: Change copyright notice.
4334         * lib/streq.h: Likewise.
4335         * lib/uniconv.h: Likewise.
4336         * lib/uniconv/u-conv-from-enc.h: Likewise.
4337         * lib/uniconv/u-conv-to-enc.h: Likewise.
4338         * lib/uniconv/u-strconv-from-enc.h: Likewise.
4339         * lib/uniconv/u-strconv-to-enc.h: Likewise.
4340         * lib/uniconv/u16-conv-from-enc.c: Likewise.
4341         * lib/uniconv/u16-conv-to-enc.c: Likewise.
4342         * lib/uniconv/u16-strconv-from-enc.c: Likewise.
4343         * lib/uniconv/u16-strconv-from-locale.c: Likewise.
4344         * lib/uniconv/u16-strconv-to-enc.c: Likewise.
4345         * lib/uniconv/u16-strconv-to-locale.c: Likewise.
4346         * lib/uniconv/u32-conv-from-enc.c: Likewise.
4347         * lib/uniconv/u32-conv-to-enc.c: Likewise.
4348         * lib/uniconv/u32-strconv-from-enc.c: Likewise.
4349         * lib/uniconv/u32-strconv-from-locale.c: Likewise.
4350         * lib/uniconv/u32-strconv-to-enc.c: Likewise.
4351         * lib/uniconv/u32-strconv-to-locale.c: Likewise.
4352         * lib/uniconv/u8-conv-from-enc.c: Likewise.
4353         * lib/uniconv/u8-conv-to-enc.c: Likewise.
4354         * lib/uniconv/u8-strconv-from-enc.c: Likewise.
4355         * lib/uniconv/u8-strconv-from-locale.c: Likewise.
4356         * lib/uniconv/u8-strconv-to-enc.c: Likewise.
4357         * lib/uniconv/u8-strconv-to-locale.c: Likewise.
4358         * lib/uniname.h: Likewise.
4359         * lib/uniname/uniname.c: Likewise.
4360         * lib/unistdio.h: Likewise.
4361         * lib/unistdio/u-asnprintf.h: Likewise.
4362         * lib/unistdio/u-asprintf.h: Likewise.
4363         * lib/unistdio/u-printf-args.c: Likewise.
4364         * lib/unistdio/u-printf-args.h: Likewise.
4365         * lib/unistdio/u-printf-parse.h: Likewise.
4366         * lib/unistdio/u-snprintf.h: Likewise.
4367         * lib/unistdio/u-sprintf.h: Likewise.
4368         * lib/unistdio/u-vasprintf.h: Likewise.
4369         * lib/unistdio/u-vsnprintf.h: Likewise.
4370         * lib/unistdio/u-vsprintf.h: Likewise.
4371         * lib/unistdio/u16-asnprintf.c: Likewise.
4372         * lib/unistdio/u16-asprintf.c: Likewise.
4373         * lib/unistdio/u16-printf-parse.c: Likewise.
4374         * lib/unistdio/u16-snprintf.c: Likewise.
4375         * lib/unistdio/u16-sprintf.c: Likewise.
4376         * lib/unistdio/u16-u16-asnprintf.c: Likewise.
4377         * lib/unistdio/u16-u16-asprintf.c: Likewise.
4378         * lib/unistdio/u16-u16-snprintf.c: Likewise.
4379         * lib/unistdio/u16-u16-sprintf.c: Likewise.
4380         * lib/unistdio/u16-u16-vasnprintf.c: Likewise.
4381         * lib/unistdio/u16-u16-vasprintf.c: Likewise.
4382         * lib/unistdio/u16-u16-vsnprintf.c: Likewise.
4383         * lib/unistdio/u16-u16-vsprintf.c: Likewise.
4384         * lib/unistdio/u16-vasnprintf.c: Likewise.
4385         * lib/unistdio/u16-vasprintf.c: Likewise.
4386         * lib/unistdio/u16-vsnprintf.c: Likewise.
4387         * lib/unistdio/u16-vsprintf.c: Likewise.
4388         * lib/unistdio/u32-asnprintf.c: Likewise.
4389         * lib/unistdio/u32-asprintf.c: Likewise.
4390         * lib/unistdio/u32-printf-parse.c: Likewise.
4391         * lib/unistdio/u32-snprintf.c: Likewise.
4392         * lib/unistdio/u32-sprintf.c: Likewise.
4393         * lib/unistdio/u32-u32-asnprintf.c: Likewise.
4394         * lib/unistdio/u32-u32-asprintf.c: Likewise.
4395         * lib/unistdio/u32-u32-snprintf.c: Likewise.
4396         * lib/unistdio/u32-u32-sprintf.c: Likewise.
4397         * lib/unistdio/u32-u32-vasnprintf.c: Likewise.
4398         * lib/unistdio/u32-u32-vasprintf.c: Likewise.
4399         * lib/unistdio/u32-u32-vsnprintf.c: Likewise.
4400         * lib/unistdio/u32-u32-vsprintf.c: Likewise.
4401         * lib/unistdio/u32-vasnprintf.c: Likewise.
4402         * lib/unistdio/u32-vasprintf.c: Likewise.
4403         * lib/unistdio/u32-vsnprintf.c: Likewise.
4404         * lib/unistdio/u32-vsprintf.c: Likewise.
4405         * lib/unistdio/u8-asnprintf.c: Likewise.
4406         * lib/unistdio/u8-asprintf.c: Likewise.
4407         * lib/unistdio/u8-printf-parse.c: Likewise.
4408         * lib/unistdio/u8-snprintf.c: Likewise.
4409         * lib/unistdio/u8-sprintf.c: Likewise.
4410         * lib/unistdio/u8-u8-asnprintf.c: Likewise.
4411         * lib/unistdio/u8-u8-asprintf.c: Likewise.
4412         * lib/unistdio/u8-u8-snprintf.c: Likewise.
4413         * lib/unistdio/u8-u8-sprintf.c: Likewise.
4414         * lib/unistdio/u8-u8-vasnprintf.c: Likewise.
4415         * lib/unistdio/u8-u8-vasprintf.c: Likewise.
4416         * lib/unistdio/u8-u8-vsnprintf.c: Likewise.
4417         * lib/unistdio/u8-u8-vsprintf.c: Likewise.
4418         * lib/unistdio/u8-vasnprintf.c: Likewise.
4419         * lib/unistdio/u8-vasprintf.c: Likewise.
4420         * lib/unistdio/u8-vsnprintf.c: Likewise.
4421         * lib/unistdio/u8-vsprintf.c: Likewise.
4422         * lib/unistdio/ulc-asnprintf.c: Likewise.
4423         * lib/unistdio/ulc-asprintf.c: Likewise.
4424         * lib/unistdio/ulc-printf-parse.c: Likewise.
4425         * lib/unistdio/ulc-snprintf.c: Likewise.
4426         * lib/unistdio/ulc-sprintf.c: Likewise.
4427         * lib/unistdio/ulc-vasnprintf.c: Likewise.
4428         * lib/unistdio/ulc-vasprintf.c: Likewise.
4429         * lib/unistdio/ulc-vsnprintf.c: Likewise.
4430         * lib/unistdio/ulc-vsprintf.c: Likewise.
4431         * lib/unistr.h: Likewise.
4432         * lib/unistr/u-cpy-alloc.h: Likewise.
4433         * lib/unistr/u-cpy.h: Likewise.
4434         * lib/unistr/u-endswith.h: Likewise.
4435         * lib/unistr/u-move.h: Likewise.
4436         * lib/unistr/u-set.h: Likewise.
4437         * lib/unistr/u-startswith.h: Likewise.
4438         * lib/unistr/u-stpcpy.h: Likewise.
4439         * lib/unistr/u-stpncpy.h: Likewise.
4440         * lib/unistr/u-strcat.h: Likewise.
4441         * lib/unistr/u-strcpy.h: Likewise.
4442         * lib/unistr/u-strcspn.h: Likewise.
4443         * lib/unistr/u-strdup.h: Likewise.
4444         * lib/unistr/u-strlen.h: Likewise.
4445         * lib/unistr/u-strncat.h: Likewise.
4446         * lib/unistr/u-strncpy.h: Likewise.
4447         * lib/unistr/u-strnlen.h: Likewise.
4448         * lib/unistr/u-strpbrk.h: Likewise.
4449         * lib/unistr/u-strspn.h: Likewise.
4450         * lib/unistr/u-strstr.h: Likewise.
4451         * lib/unistr/u-strtok.h: Likewise.
4452         * lib/unistr/u16-check.c: Likewise.
4453         * lib/unistr/u16-chr.c: Likewise.
4454         * lib/unistr/u16-cmp.c: Likewise.
4455         * lib/unistr/u16-cpy-alloc.c: Likewise.
4456         * lib/unistr/u16-cpy.c: Likewise.
4457         * lib/unistr/u16-endswith.c: Likewise.
4458         * lib/unistr/u16-mblen.c: Likewise.
4459         * lib/unistr/u16-mbsnlen.c: Likewise.
4460         * lib/unistr/u16-mbtouc-aux.c: Likewise.
4461         * lib/unistr/u16-mbtouc-unsafe-aux.c: Likewise.
4462         * lib/unistr/u16-mbtouc-unsafe.c: Likewise.
4463         * lib/unistr/u16-mbtouc.c: Likewise.
4464         * lib/unistr/u16-mbtoucr.c: Likewise.
4465         * lib/unistr/u16-move.c: Likewise.
4466         * lib/unistr/u16-next.c: Likewise.
4467         * lib/unistr/u16-prev.c: Likewise.
4468         * lib/unistr/u16-set.c: Likewise.
4469         * lib/unistr/u16-startswith.c: Likewise.
4470         * lib/unistr/u16-stpcpy.c: Likewise.
4471         * lib/unistr/u16-stpncpy.c: Likewise.
4472         * lib/unistr/u16-strcat.c: Likewise.
4473         * lib/unistr/u16-strchr.c: Likewise.
4474         * lib/unistr/u16-strcmp.c: Likewise.
4475         * lib/unistr/u16-strcpy.c: Likewise.
4476         * lib/unistr/u16-strcspn.c: Likewise.
4477         * lib/unistr/u16-strdup.c: Likewise.
4478         * lib/unistr/u16-strlen.c: Likewise.
4479         * lib/unistr/u16-strmblen.c: Likewise.
4480         * lib/unistr/u16-strmbtouc.c: Likewise.
4481         * lib/unistr/u16-strncat.c: Likewise.
4482         * lib/unistr/u16-strncmp.c: Likewise.
4483         * lib/unistr/u16-strncpy.c: Likewise.
4484         * lib/unistr/u16-strnlen.c: Likewise.
4485         * lib/unistr/u16-strpbrk.c: Likewise.
4486         * lib/unistr/u16-strrchr.c: Likewise.
4487         * lib/unistr/u16-strspn.c: Likewise.
4488         * lib/unistr/u16-strstr.c: Likewise.
4489         * lib/unistr/u16-strtok.c: Likewise.
4490         * lib/unistr/u16-to-u32.c: Likewise.
4491         * lib/unistr/u16-to-u8.c: Likewise.
4492         * lib/unistr/u16-uctomb-aux.c: Likewise.
4493         * lib/unistr/u16-uctomb.c: Likewise.
4494         * lib/unistr/u32-check.c: Likewise.
4495         * lib/unistr/u32-chr.c: Likewise.
4496         * lib/unistr/u32-cmp.c: Likewise.
4497         * lib/unistr/u32-cpy-alloc.c: Likewise.
4498         * lib/unistr/u32-cpy.c: Likewise.
4499         * lib/unistr/u32-endswith.c: Likewise.
4500         * lib/unistr/u32-mblen.c: Likewise.
4501         * lib/unistr/u32-mbsnlen.c: Likewise.
4502         * lib/unistr/u32-mbtouc-unsafe.c: Likewise.
4503         * lib/unistr/u32-mbtouc.c: Likewise.
4504         * lib/unistr/u32-mbtoucr.c: Likewise.
4505         * lib/unistr/u32-move.c: Likewise.
4506         * lib/unistr/u32-next.c: Likewise.
4507         * lib/unistr/u32-prev.c: Likewise.
4508         * lib/unistr/u32-set.c: Likewise.
4509         * lib/unistr/u32-startswith.c: Likewise.
4510         * lib/unistr/u32-stpcpy.c: Likewise.
4511         * lib/unistr/u32-stpncpy.c: Likewise.
4512         * lib/unistr/u32-strcat.c: Likewise.
4513         * lib/unistr/u32-strchr.c: Likewise.
4514         * lib/unistr/u32-strcmp.c: Likewise.
4515         * lib/unistr/u32-strcpy.c: Likewise.
4516         * lib/unistr/u32-strcspn.c: Likewise.
4517         * lib/unistr/u32-strdup.c: Likewise.
4518         * lib/unistr/u32-strlen.c: Likewise.
4519         * lib/unistr/u32-strmblen.c: Likewise.
4520         * lib/unistr/u32-strmbtouc.c: Likewise.
4521         * lib/unistr/u32-strncat.c: Likewise.
4522         * lib/unistr/u32-strncmp.c: Likewise.
4523         * lib/unistr/u32-strncpy.c: Likewise.
4524         * lib/unistr/u32-strnlen.c: Likewise.
4525         * lib/unistr/u32-strpbrk.c: Likewise.
4526         * lib/unistr/u32-strrchr.c: Likewise.
4527         * lib/unistr/u32-strspn.c: Likewise.
4528         * lib/unistr/u32-strstr.c: Likewise.
4529         * lib/unistr/u32-strtok.c: Likewise.
4530         * lib/unistr/u32-to-u16.c: Likewise.
4531         * lib/unistr/u32-to-u8.c: Likewise.
4532         * lib/unistr/u32-uctomb.c: Likewise.
4533         * lib/unistr/u8-check.c: Likewise.
4534         * lib/unistr/u8-chr.c: Likewise.
4535         * lib/unistr/u8-cmp.c: Likewise.
4536         * lib/unistr/u8-cpy-alloc.c: Likewise.
4537         * lib/unistr/u8-cpy.c: Likewise.
4538         * lib/unistr/u8-endswith.c: Likewise.
4539         * lib/unistr/u8-mblen.c: Likewise.
4540         * lib/unistr/u8-mbsnlen.c: Likewise.
4541         * lib/unistr/u8-mbtouc-aux.c: Likewise.
4542         * lib/unistr/u8-mbtouc-unsafe-aux.c: Likewise.
4543         * lib/unistr/u8-mbtouc-unsafe.c: Likewise.
4544         * lib/unistr/u8-mbtouc.c: Likewise.
4545         * lib/unistr/u8-mbtoucr.c: Likewise.
4546         * lib/unistr/u8-move.c: Likewise.
4547         * lib/unistr/u8-next.c: Likewise.
4548         * lib/unistr/u8-prev.c: Likewise.
4549         * lib/unistr/u8-set.c: Likewise.
4550         * lib/unistr/u8-startswith.c: Likewise.
4551         * lib/unistr/u8-stpcpy.c: Likewise.
4552         * lib/unistr/u8-stpncpy.c: Likewise.
4553         * lib/unistr/u8-strcat.c: Likewise.
4554         * lib/unistr/u8-strchr.c: Likewise.
4555         * lib/unistr/u8-strcmp.c: Likewise.
4556         * lib/unistr/u8-strcpy.c: Likewise.
4557         * lib/unistr/u8-strcspn.c: Likewise.
4558         * lib/unistr/u8-strdup.c: Likewise.
4559         * lib/unistr/u8-strlen.c: Likewise.
4560         * lib/unistr/u8-strmblen.c: Likewise.
4561         * lib/unistr/u8-strmbtouc.c: Likewise.
4562         * lib/unistr/u8-strncat.c: Likewise.
4563         * lib/unistr/u8-strncmp.c: Likewise.
4564         * lib/unistr/u8-strncpy.c: Likewise.
4565         * lib/unistr/u8-strnlen.c: Likewise.
4566         * lib/unistr/u8-strpbrk.c: Likewise.
4567         * lib/unistr/u8-strrchr.c: Likewise.
4568         * lib/unistr/u8-strspn.c: Likewise.
4569         * lib/unistr/u8-strstr.c: Likewise.
4570         * lib/unistr/u8-strtok.c: Likewise.
4571         * lib/unistr/u8-to-u16.c: Likewise.
4572         * lib/unistr/u8-to-u32.c: Likewise.
4573         * lib/unistr/u8-uctomb-aux.c: Likewise.
4574         * lib/unistr/u8-uctomb.c: Likewise.
4575         * lib/unitypes.h: Likewise.
4576         * lib/uniwidth.h: Likewise.
4577         * lib/uniwidth/cjk.h: Likewise.
4578         * lib/uniwidth/u16-strwidth.c: Likewise.
4579         * lib/uniwidth/u16-width.c: Likewise.
4580         * lib/uniwidth/u32-strwidth.c: Likewise.
4581         * lib/uniwidth/u32-width.c: Likewise.
4582         * lib/uniwidth/u8-strwidth.c: Likewise.
4583         * lib/uniwidth/u8-width.c: Likewise.
4584         * lib/uniwidth/width.c: Likewise.
4585
4586 2007-10-07  Bruno Haible  <bruno@clisp.org>
4587
4588         * lib/inttypes.in.h: Change copyright notice from LGPL to GPL.
4589         The file is still under LGPL (see modules/inttypes).
4590
4591 2007-10-06  Bruno Haible  <bruno@clisp.org>
4592
4593         * modules/trunc (Dependencies): Add 'extensions'.
4594         * m4/trunc.m4 (gl_FUNC_TRUNC): Require gl_USE_SYSTEM_EXTENSIONS.
4595         Reported by Ben Pfaff <blp@gnu.org>.
4596
4597 2007-10-06  Bruno Haible  <bruno@clisp.org>
4598
4599         * modules/freopen-tests: New file.
4600         * tests/test-freopen.c: New file.
4601
4602         * modules/fopen-tests: New file.
4603         * tests/test-fopen.c: New file.
4604
4605         * modules/fopen: New file.
4606         * lib/fopen.c: New file.
4607         * m4/fopen.m4: New file.
4608         * modules/freopen: New file.
4609         * lib/freopen.c: New file.
4610         * m4/freopen.m4: New file.
4611         * lib/stdio.in.h (fopen, freopen): New declarations.
4612         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize also GNULIB_FOPEN,
4613         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
4614         * modules/stdio (Makefile.am): Substitute also GNULIB_FOPEN,
4615         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
4616         * doc/functions/fopen.texi: Mention the 'fopen' module.
4617         * doc/functions/freopen.texi: Mention the 'freopen' module.
4618
4619 2007-10-06  Bruno Haible  <bruno@clisp.org>
4620
4621         * modules/open-tests: New file.
4622         * tests/test-open.c: New file.
4623
4624         * modules/open: New file.
4625         * lib/open.c: New file.
4626         * m4/open.m4: New file.
4627         * lib/fchdir.c (open): If the gnulib module 'open' is used, do what
4628         lib/open.c does.
4629         * lib/fcntl.in.h (open): Declare also if replaced by the 'open' module.
4630         * m4/fcntl_h.m4 (gl_FCNTL_MODULE_INDICATOR, gl_FCNTL_H_DEFAULTS): New
4631         macros.
4632         (gl_FCNTL_H): Require gl_FCNTL_H_DEFAULTS.
4633         * modules/fcntl (Makefile.am): Also substitute GNULIB_OPEN and
4634         REPLACE_OPEN.
4635         * doc/functions/open.texi: Mention the 'open' module.
4636
4637 2007-10-04  Bruno Haible  <bruno@clisp.org>
4638
4639         * modules/ceill-tests: New file.
4640         * tests/test-ceill.c: New file.
4641
4642         * modules/ceill: New file.
4643         * lib/ceill.c: Replace entire file.
4644         * m4/ceill.m4: New file.
4645         * lib/math.in.h (ceill): Replace declaration.
4646         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILL.
4647         * modules/math (Makefile.am): Substitute also GNULIB_CEILL.
4648         * doc/functions/ceill.texi: Mention the 'ceill' module.
4649         * modules/mathl (Files): Remove lib/ceill.c.
4650         (Depends-on): Add ceill.
4651
4652 2007-10-04  Bruno Haible  <bruno@clisp.org>
4653
4654         * modules/ceilf-tests: New file.
4655         * tests/test-ceilf.c: New file.
4656
4657         * modules/ceilf: New file.
4658         * lib/ceil.c: New file.
4659         * lib/ceilf.c: New file.
4660         * m4/ceilf.m4: New file.
4661         * lib/math.in.h (ceilf): New declaration.
4662         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILF and
4663         HAVE_DECL_CEILF.
4664         * modules/math (Makefile.am): Substitute also GNULIB_CEILF and
4665         HAVE_DECL_CEILF.
4666         * doc/functions/ceilf.texi: Mention the 'ceilf' module.
4667
4668 2007-10-04  Bruno Haible  <bruno@clisp.org>
4669
4670         * modules/floorl-tests: New file.
4671         * tests/test-floorl.c: New file.
4672
4673         * modules/floorl: New file.
4674         * lib/floorl.c: Replace entire file.
4675         * m4/floorl.m4: New file.
4676         * lib/math.in.h (floorl): Replace declaration.
4677         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORL.
4678         * modules/math (Makefile.am): Substitute also GNULIB_FLOORL.
4679         * doc/functions/floorl.texi: Mention the 'floorl' module.
4680         * modules/mathl (Files): Remove lib/floorl.c.
4681         (Depends-on): Add floorl.
4682
4683 2007-10-04  Bruno Haible  <bruno@clisp.org>
4684
4685         * modules/floorf-tests: New file.
4686         * tests/test-floorf.c: New file.
4687
4688         * modules/floorf: New file.
4689         * lib/floor.c: New file.
4690         * lib/floorf.c: New file.
4691         * m4/floorf.m4: New file.
4692         * lib/math.in.h (floorf): New declaration.
4693         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORF and
4694         HAVE_DECL_FLOORF.
4695         * modules/math (Makefile.am): Substitute also GNULIB_FLOORF and
4696         HAVE_DECL_FLOORF.
4697         * doc/functions/floorf.texi: Mention the 'floorf' module.
4698
4699 2007-10-04  Benoit Sigoure  <tsuna@lrde.epita.fr>
4700             Bruno Haible  <bruno@clisp.org>
4701
4702         Advertise for the Git server instead of the CVS server.
4703         * doc/gnulib-intro.texi (Steady Development): Mention the Git
4704         repository instead of the CVS one.
4705         * doc/gnulib-tool.texi (VCS Issues): Renamed from "CVS Issues". Talk
4706         about all VCS systems generically.
4707         * doc/gnulib.texi (Introduction): Capitalize `Git'.
4708
4709 2007-10-04  Bruno Haible  <bruno@clisp.org>
4710
4711         * doc/gnulib.texi (Function Substitutes): Explain what an absent module
4712         means.
4713         Reported by Benoît Sigoure <tsuna@lrde.epita.fr>.
4714
4715 2007-10-04  Bruno Haible  <bruno@clisp.org>
4716
4717         * modules/truncl-tests: New file.
4718         * tests/test-truncl.c: New file.
4719
4720         * modules/truncl: New file.
4721         * lib/truncl.c: New file.
4722         * m4/truncl.m4: New file.
4723         * lib/math.in.h (truncl): New declaration.
4724         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCL and
4725         HAVE_DECL_TRUNCL.
4726         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCL and
4727         HAVE_DECL_TRUNCL.
4728         * doc/functions/truncl.texi: Mention the 'truncl' module.
4729
4730 2007-10-04  Bruno Haible  <bruno@clisp.org>
4731
4732         * modules/truncf-tests: New file.
4733         * tests/test-truncf.c: New file.
4734
4735         * modules/truncf: New file.
4736         * lib/trunc.c: Make paramerizable through USE_* macros.
4737         * lib/truncf.c: New file.
4738         * m4/truncf.m4: New file.
4739         * lib/math.in.h (truncf): New declaration.
4740         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCF and
4741         HAVE_DECL_TRUNCF.
4742         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCF and
4743         HAVE_DECL_TRUNCF.
4744         * doc/functions/truncf.texi: Mention the 'truncf' module.
4745
4746 2007-10-03  Bruno Haible  <bruno@clisp.org>
4747
4748         * gnulib-tool (func_get_automake_snippet): Synthesize an EXTRA_DIST
4749         augmentation also for tests modules.
4750         * modules/argp-tests (Makefile.am): Remove EXTRA_DIST augmentation.
4751         * modules/atexit-tests (Makefile.am): Likewise.
4752         * modules/binary-io-tests (Makefile.am): Likewise.
4753         * modules/c-strcase-tests (Makefile.am): Likewise.
4754         * modules/canonicalize-lgpl-tests (Makefile.am): Likewise.
4755         * modules/canonicalize-tests (Makefile.am): Likewise.
4756         * modules/closein-tests (Makefile.am): Likewise.
4757         * modules/fprintf-posix-tests (Makefile.am): Likewise.
4758         * modules/freadahead-tests (Makefile.am): Likewise.
4759         * modules/fseek-tests (Makefile.am): Likewise.
4760         * modules/fseeko-tests (Makefile.am): Likewise.
4761         * modules/ftell-tests (Makefile.am): Likewise.
4762         * modules/ftello-tests (Makefile.am): Likewise.
4763         * modules/isnanl-nolibm-tests (Makefile.am): Likewise.
4764         * modules/isnanl-tests (Makefile.am): Likewise.
4765         * modules/lseek-tests (Makefile.am): Likewise.
4766         * modules/mbscasecmp-tests (Makefile.am): Likewise.
4767         * modules/mbscasestr-tests (Makefile.am): Likewise.
4768         * modules/mbschr-tests (Makefile.am): Likewise.
4769         * modules/mbscspn-tests (Makefile.am): Likewise.
4770         * modules/mbsncasecmp-tests (Makefile.am): Likewise.
4771         * modules/mbspbrk-tests (Makefile.am): Likewise.
4772         * modules/mbspcasecmp-tests (Makefile.am): Likewise.
4773         * modules/mbsrchr-tests (Makefile.am): Likewise.
4774         * modules/mbsspn-tests (Makefile.am): Likewise.
4775         * modules/mbsstr-tests (Makefile.am): Likewise.
4776         * modules/printf-posix-tests (Makefile.am): Likewise.
4777         * modules/snprintf-posix-tests (Makefile.am): Likewise.
4778         * modules/sprintf-posix-tests (Makefile.am): Likewise.
4779         * modules/tsearch-tests (Makefile.am): Likewise.
4780         * modules/uniname/uniname-tests (Makefile.am): Likewise.
4781         * modules/unistdio/u16-vasnprintf-tests (Makefile.am): Likewise.
4782         * modules/unistdio/u32-vasnprintf-tests (Makefile.am): Likewise.
4783         * modules/unistdio/u8-vasnprintf-tests (Makefile.am): Likewise.
4784         * modules/unistdio/ulc-vasnprintf-tests (Makefile.am): Likewise.
4785         * modules/vasnprintf-posix-tests (Makefile.am): Likewise.
4786         * modules/vfprintf-posix-tests (Makefile.am): Likewise.
4787         * modules/vprintf-posix-tests (Makefile.am): Likewise.
4788         * modules/vsnprintf-posix-tests (Makefile.am): Likewise.
4789         * modules/vsprintf-posix-tests (Makefile.am): Likewise.
4790         * modules/xstrtoimax-tests (Makefile.am): Likewise.
4791         * modules/xstrtol-tests (Makefile.am): Likewise.
4792         * modules/xstrtoumax-tests (Makefile.am): Likewise.
4793         * modules/yesno-tests (Makefile.am): Likewise.
4794
4795 2007-10-03  Bruno Haible  <bruno@clisp.org>
4796
4797         * modules/trunc-tests: New file.
4798         * tests/test-trunc.c: New file.
4799
4800         * modules/trunc: New file.
4801         * lib/trunc.c: New file.
4802         * m4/trunc.m4: New file.
4803         * lib/math.in.h (trunc): New declaration.
4804         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNC and
4805         HAVE_DECL_TRUNC.
4806         * modules/math (Makefile.am): Substitute also GNULIB_TRUNC and
4807         HAVE_DECL_TRUNC.
4808         * doc/functions/trunc.texi: Mention the 'trunc' module.
4809
4810 2007-10-03  Bruno Haible  <bruno@clisp.org>
4811
4812         * tests/test-fpending.c: New file, mostly copied
4813         from coreutils/lib/t-fpending.c.
4814         * modules/fpending-tests: New file.
4815
4816 2007-10-03  Bruno Haible  <bruno@clisp.org>
4817
4818         Port the stdio extensions to QNX (untested).
4819         * lib/fseterr.c (fseterr): Add support for QNX.
4820         * lib/fbufmode.c (fbufmode): Likewise.
4821         * lib/freadable.c (freadable): Likewise.
4822         * lib/fwritable.c (fwritable): Likewise.
4823         * lib/freading.c (freading): Likewise.
4824         * lib/fwriting.c (fwriting): Likewise.
4825         * lib/freadahead.c (freadahed): Likewise.
4826         * lib/fpurge.c (fpurge): Likewise.
4827         * lib/fseeko.c (rpl_fseeko): Likewise.
4828
4829 2007-10-03  Bruno Haible  <bruno@clisp.org>
4830             Jim Meyering  <jim@meyering.net>
4831             Eric Blake  <ebb9@byu.net>
4832
4833         * doc/relocatable.texi: Use @command instead of @program.
4834
4835 2007-10-02  Jim Meyering  <jim@meyering.net>
4836
4837         Perform one more "_.h" -> ".in.h" substitution.
4838         * modules/unistd (Makefile.am) [unistd.h]: Use unistd.h.in
4839         instead of unistd_.h here, too.
4840
4841 2007-10-01  Bruno Haible  <bruno@clisp.org>
4842
4843         * gnulib-tool (func_emit_initmacro_done): Special case for alloca.c.
4844         Needed for the alloca-opt module.
4845
4846 2007-09-30  Bruno Haible  <bruno@clisp.org>
4847
4848         * lib/alloca.in.h: Renamed from lib/alloca_.h.
4849         * modules/alloca-opt (Files, Makefile.am): Use alloca.in.h instead of
4850         alloca_.h.
4851         * lib/argz.in.h: Renamed from lib/argz_.h.
4852         * modules/argz (Files, Makefile.am): Use argz.in.h instead of argz_.h.
4853         * lib/byteswap.in.h: Renamed from lib/byteswap_.h.
4854         * modules/byteswap (Files, Makefile.am): Use byteswap.in.h instead of
4855         byteswap_.h.
4856         * lib/dirent.in.h: Renamed from lib/dirent_.h.
4857         * modules/fchdir (Files, Makefile.am): Use dirent.in.h instead of
4858         dirent_.h.
4859         * lib/fcntl.in.h: Renamed from lib/fcntl_.h.
4860         * modules/fcntl (Files, Makefile.am): Use fcntl.in.h instead of
4861         fcntl_.h.
4862         * lib/float.in.h: Renamed from lib/float_.h.
4863         * modules/float (Files, Makefile.am): Use float.in.h instead of
4864         float_.h.
4865         * lib/fnmatch.in.h: Renamed from lib/fnmatch_.h.
4866         * modules/fnmatch (Files, Makefile.am): Use fnmatch.in.h instead of
4867         fnmatch_.h.
4868         * lib/getopt.in.h: Renamed from lib/getopt_.h.
4869         * modules/getopt (Files, Makefile.am): Use getopt.in.h instead of
4870         getopt_.h.
4871         * lib/glob.in.h: Renamed from lib/glob_.h.
4872         * modules/glob (Files, Makefile.am): Use glob.in.h instead of glob_.h.
4873         * lib/iconv.in.h: Renamed from lib/iconv_.h.
4874         * modules/iconv_open (Files, Makefile.am): Use iconv.in.h instead of
4875         iconv_.h.
4876         * lib/inttypes.in.h: Renamed from lib/inttypes_.h.
4877         * modules/inttypes (Files, Makefile.am): Use inttypes.in.h instead of
4878         inttypes_.h.
4879         * lib/locale.in.h: Renamed from lib/locale_.h.
4880         * modules/locale (Files, Makefile.am): Use locale.in.h instead of
4881         locale_.h.
4882         * lib/math.in.h: Renamed from lib/math_.h.
4883         * modules/math (Files, Makefile.am): Use math.in.h instead of math_.h.
4884         * lib/netinet_in.in.h: Renamed from lib/netinet_in_.h.
4885         * modules/netinet_in (Files, Makefile.am): Use netinet_in.in.h instead
4886         of netinet_in_.h. Add dependency.
4887         * lib/poll.in.h: Renamed from lib/poll_.h.
4888         * modules/poll (Files, Makefile.am): Use poll.in.h instead of poll_.h.
4889         * lib/search.in.h: Renamed from lib/search_.h.
4890         * modules/search (Files, Makefile.am): Use search.in.h instead of
4891         search_.h.
4892         * lib/signal.in.h: Renamed from lib/signal_.h.
4893         * modules/signal (Files, Makefile.am): Use signal.in.h instead of
4894         _signal.h.
4895         * lib/stdbool.in.h: Renamed from lib/stdbool_.h.
4896         * modules/stdbool (Files, Makefile.am): Use stdbool.in.h instead of
4897         stdbool_.h.
4898         * lib/stdint.in.h: Renamed from lib/stdint_.h.
4899         * modules/stdint (Files, Makefile.am): Use stdint.in.h instead of
4900         stdint_.h.
4901         * lib/stdio.in.h: Renamed from lib/stdio_.h.
4902         * modules/stdio (Files, Makefile.am): Use stdio.in.h instead of
4903         stdio_.h.
4904         * lib/stdlib.in.h: Renamed from lib/stdlib_.h.
4905         * modules/stdlib (Files, Makefile.am): Use stdlib.in.h instead of
4906         stdlib_.h.
4907         * lib/string.in.h: Renamed from lib/string_.h.
4908         * modules/string (Files, Makefile.am): Use string.in.h instead of
4909         string_.h.
4910         * doc/gnulib-tool.texi (Initial import): Update.
4911         * lib/sys_select.in.h: Renamed from lib/sys_select_.h.
4912         * modules/sys_select (Files, Makefile.am): Use sys_select.in.h instead
4913         of sys_select_.h. Add dependency.
4914         * lib/sys_socket.in.h: Renamed from lib/sys_socket_.h.
4915         * modules/sys_socket (Files, Makefile.am): Use sys_socket.in.h instead
4916         of sys_socket_.h.
4917         * lib/sys_stat.in.h: Renamed from lib/sys_stat_.h.
4918         * modules/sys_stat (Files, Makefile.am): Use sys_stat.in.h instead of
4919         sys_stat_.h.
4920         * lib/sys_time.in.h: Renamed from lib/sys_time_.h.
4921         * modules/sys_time (Files, Makefile.am): Use sys_time.in.h instead of
4922         sys_time_.h.
4923         * lib/sysexits.in.h: Renamed from lib/sysexits_.h.
4924         * modules/sysexits (Files, Makefile.am): Use sysexits.in.h instead of
4925         sysexits_.h.
4926         * lib/time.in.h: Renamed from lib/time_.h.
4927         * modules/time (Files, Makefile.am): Use time.in.h instead of time_.h.
4928         * lib/unistd.in.h: Renamed from lib/unistd_.h.
4929         * modules/unistd (Files, Makefile.am): Use unistd.in.h instead of
4930         unistd_.h.
4931         * lib/wchar.in.h: Renamed from lib/wchar_.h.
4932         * modules/wchar (Files, Makefile.am): Use wchar.in.h instead of
4933         wchar_.h.
4934         * lib/wctype.in.h: Renamed from lib/wctype_.h.
4935         * modules/wctype (Files, Makefile.am): Use wctype.in.h instead of
4936         wctype_.h.
4937         * build-aux/bootstrap (slurp): Update.
4938         * lib/.cppi-disable: Update.
4939
4940 2007-09-30  Bruno Haible  <bruno@clisp.org>
4941
4942         * tests/test-getaddrinfo.c (AF_UNSPEC): Provide a fallback definition.
4943         Needed on BeOS.
4944
4945 2007-09-30  Bruno Haible  <bruno@clisp.org>
4946
4947         * modules/dirname-tests (check_PROGRAMS): Renamed from noinst_PROGRAMS.
4948
4949 2007-09-29  Bruno Haible  <bruno@clisp.org>
4950
4951         * lib/stdio_.h (getdelim, getline): Add identifiers. Doc tweak.
4952
4953 2007-09-29  Bruno Haible  <bruno@clisp.org>
4954
4955         * lib/xreadlink.c (xreadlink): Simplify to a wrapper around areadlink.
4956         * modules/xreadlink (Depends-on): Add areadlink, remove readlink etc.
4957         * build-aux/install-reloc: Compile also areadlink.c.
4958         * modules/relocatable-prog-wrapper (Files): Add lib/areadlink.[hc].
4959
4960 2007-09-29  Bruno Haible  <bruno@clisp.org>
4961
4962         * gnulib-tool (func_emit_initmacro_done): Indentation.
4963
4964 2007-09-29  Bruno Haible  <bruno@clisp.org>
4965
4966         * README: Add CVS checkout update instructions.
4967         Info from Bob Proulx <bob@proulx.com>.
4968
4969 2007-09-28  Eric Blake  <ebb9@byu.net>
4970
4971         Provide move-if-change.
4972         * build-aux/move-if-change: New file, based on best practice
4973         rather than any canonical upstream location.
4974
4975 2007-09-28  Jim Meyering  <jim@meyering.net>
4976
4977         Fix canonicalize loop-detection corner case.
4978         Do not attempt to stat the symlink values stored via seen_triple.
4979         Without this, coreutils' tests/misc/readlink-fp-loop test would fail
4980         on linux-2.6.18, (but not 2.6.22).
4981         * lib/canonicalize.c (seen_triple): Use triple_compare_ino_str, not
4982         triple_compare.  The former compares dev,ino,filename, while the latter
4983         would actually stat dirname(filename) when dev and ino were equal.
4984         * lib/hash-triple.c: Install <string.h>.
4985         (STREQ): Define.
4986         (triple_compare_ino_str): New function.
4987         * lib/hash-triple.h (triple_compare_ino_str): Declare it.
4988
4989 2007-09-28  Eric Blake  <ebb9@byu.net>
4990
4991         Enforce that AC_REPLACE_FUNCS files exist.
4992         * gnulib-tool (func_emit_initmacro_done): Make AC_LIBSOURCES
4993         override check for typos.
4994
4995         Fix test-closein on Solaris 10.
4996         * tests/test-closein.c (main): Don't assume stdin can be inherited
4997         closed on all systems.
4998         * tests/test-closein.sh: Likewise.
4999         Reported by Piotr Tarnowski.
5000
5001 2007-09-28  Jim Meyering  <jim@meyering.net>
5002
5003         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Fix typo in comment.
5004
5005 2007-09-27  Jim Meyering  <jim@meyering.net>
5006
5007         canonicalize: Avoid a false-positive cycle failure.
5008         * modules/canonicalize (Depends-on): Add file-set and hash-triple.
5009         Sort.  Remove cycle-check.
5010         * lib/canonicalize.c: Include file-set.h and hash-triple.h,
5011         not cycle-check.h.
5012         (seen_triple): New function.
5013         (canonicalize_filename_mode): Use it instead of cycle-check.
5014         * tests/test-canonicalize.c: Add a test for this bug.
5015         * tests/test-canonicalize.sh: Set up and run the test.
5016
5017         New module, file-set, from coreutils.
5018         * modules/file-set: Define it.
5019         * lib/file-set.c, lib/file-set.h: Implement.
5020
5021         New module, hash-triple, from coreutils.
5022         * modules/hash-triple: Define it.
5023         * lib/hash-triple.c, lib/hash-triple.h: Implement.
5024
5025 2007-09-25  Eric Blake  <ebb9@byu.net>
5026
5027         Fix strerror on Interix.
5028         * lib/string_.h (strerror): Declare replacement.
5029         * doc/functions/strerror.texi (strerror): Document the Interix
5030         shortcoming.
5031         * modules/string (Makefile.am): Support new hooks.
5032         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Add new hooks.
5033         * m4/strerror.m4 (gl_FUNC_STRERROR): Defer to
5034         gl_FUNC_STRERROR_SEPARATE.
5035         (gl_FUNC_STRERROR_SEPARATE): Check for Interix bug.
5036         * lib/strerror.c (rpl_strerror): Provide replacement.
5037         * modules/strerror (Depends-on): Add string.
5038         (configure.ac): Detect use of module.
5039         * tests/test-strerror.c: New file.
5040         * modules/strerror-tests: New test module.
5041         * modules/argp (Depends-on): Add strerror.
5042         * modules/error (Depends-on): Likewise.
5043         Reported by Martin Koeppe.
5044
5045 2007-09-24  Bruno Haible  <bruno@clisp.org>
5046
5047         * README: Update git instructions.
5048
5049 2007-09-24  Eric Blake  <ebb9@byu.net>
5050
5051         Revert fpending breakage from 2007-09-08.
5052         * m4/fpending.m4 (gl_FUNC_FPENDING): Don't require existence of
5053         __fpending.c.
5054
5055 2007-09-24  Jim Meyering  <jim@meyering.net>
5056
5057         filenamecat.c: Add a test.
5058         * lib/filenamecat.c (main) [TEST_FILE_NAME_CONCAT]: Add a test
5059         showing how the function works when DIR is the empty string.
5060
5061 2007-09-21  Simon Josefsson  <simon@josefsson.org>
5062
5063         * tests/test-canonicalize.sh: Turn on executable bit.
5064
5065 2007-09-19  Eric Blake  <ebb9@byu.net>
5066
5067         * README: Update CVS instructions.
5068
5069 2007-09-18  Bruno Haible  <bruno@clisp.org>
5070
5071         * modules/areadlink: New file.
5072         * lib/areadlink.h (areadlink): New declaration.
5073         * lib/areadlink.c: New file, based on lib/xreadlink.c.
5074
5075 2007-09-17  Jim Meyering  <jim@meyering.net>
5076
5077         * lib/savewd.c (ESTALE) [!defined]: Define.
5078         Reported to be required on Interix by Martin Koeppe.
5079
5080 2007-09-17  Bruno Haible  <bruno@clisp.org>
5081
5082         * gnulib-tool (func_version): Use $version.
5083
5084 2007-09-16  Bruno Haible  <bruno@clisp.org>
5085
5086         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE, gl_PRINTF_INFINITE,
5087         gl_PRINTF_INFINITE_LONG_DOUBLE): Increase buf's size from 100 to 10000.
5088         Needed on glibc-2.6.1 with -fstack-protector -D_FORTIFY_SOURCE=2.
5089         Reported by Greg Schafer <gschafer@zip.com.au>.
5090
5091 2007-09-15  Bruno Haible  <bruno@clisp.org>
5092
5093         * gnulib-tool (sed): Try a little harder to make bash understand the
5094         alias.
5095         Reported by Bruce Korb <bruce.korb@gmail.com>.
5096
5097 2007-09-13  Eric Blake  <ebb9@byu.net>
5098
5099         * ChangeLog: Remove conflict markers.
5100
5101 2007-09-13  Simon Josefsson  <simon@josefsson.org>
5102
5103         * lib/gc-gnulib.c (gc_hash_open): Catch NULL calloc return value.
5104         Reported by Bruno Haible <bruno@clisp.org>.
5105
5106 2007-09-12  Bruno Haible  <bruno@clisp.org>
5107
5108         * m4/lock.m4: Don't provide an AC_USE_SYSTEM_EXTENSIONS definition.
5109         (gl_LOCK_EARLY_BODY): Use AC_GNU_SOURCE when AC_USE_SYSTEM_EXTENSIONS
5110         is not defined.
5111
5112 2007-09-12  Eric Blake  <ebb9@byu.net>
5113
5114         Track CVS Autoconf on AC_USE_SYSTEM_EXTENSIONS.
5115         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Update to CVS
5116         Autoconf definition.
5117         * modules/euidaccess (Depends-on): Add extensions, for
5118         AC_USE_SYSTEM_EXTENSIONS with autoconf <= 2.59.
5119         * modules/fnmatch (Depends-on): Likewise.
5120         * modules/getaddrinfo (Depends-on): Likewise.
5121         * modules/getdelim (Depends-on): Likewise.
5122         * modules/getline (Depends-on): Likewise.
5123         * modules/getsubopt (Depends-on): Likewise.
5124         * modules/gettext (Depends-on): Likewise.
5125         * modules/group-member (Depends-on): Likewise.
5126         * modules/mbchar (Depends-on): Likewise.
5127         * modules/memmem (Depends-on): Likewise.
5128         * modules/mempcpy (Depends-on): Likewise.
5129         * modules/memrchr (Depends-on): Likewise.
5130         * modules/pagealign_alloc (Depends-on): Likewise.
5131         * modules/readutmp (Depends-on): Likewise.
5132         * modules/stpcpy (Depends-on): Likewise.
5133         * modules/stpncpy (Depends-on): Likewise.
5134         * modules/strchrnul (Depends-on): Likewise.
5135         * modules/strndup (Depends-on): Likewise.
5136         * modules/strsep (Depends-on): Likewise.
5137         * modules/strverscmp (Depends-on): Likewise.
5138         * modules/vasprintf (Depends-on): Likewise.
5139         * modules/wcwidth (Depends-on): Likewise.
5140         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): AC_GNU_SOURCE will be
5141         obsolete in Autoconf 2.62; use AC_USE_SYSTEM_EXTENSIONS instead.
5142         * m4/fnmatch.m4 (gl_FUNC_FNMATCH_GNU): Likewise.
5143         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDR_INFO): Likewise.
5144         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
5145         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
5146         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Likewise.
5147         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
5148         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER): Likewise.
5149         * m4/mbchar.m4 (gl_MBCHAR): Likewise.
5150         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
5151         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
5152         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
5153         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Likewise.
5154         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC): Likewise.
5155         * m4/readutmp.m4 (gl_READUTMP): Likewise.
5156         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
5157         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
5158         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
5159         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
5160         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
5161         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
5162         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
5163         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP): Likewise.
5164         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): Likewise.
5165         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
5166         * m4/lock.m4 (gl_LOCK_EARLY_BODY): Likewise, but provide fallback,
5167         so that lock.m4 can be used in gettext without extensions module.
5168
5169 2007-09-11  Bruno Haible  <bruno@clisp.org>
5170
5171         * m4/isc-posix.m4: Remove file.
5172         Suggested by Eric Blake.
5173
5174 2007-09-11  Eric Blake  <ebb9@byu.net>
5175
5176         * ChangeLog: Restore lines accidentally truncated 2007-04-06.
5177
5178 2007-09-10  Bruno Haible  <bruno@clisp.org>
5179
5180         * posix-modules: Fix typo in error message.
5181         Reported by Matt <mkraai@beckman.com>.
5182
5183 2007-09-09  Bruno Haible  <bruno@clisp.org>
5184
5185         * doc/functions/getdelim.texi: Update list of platforms lacking the
5186         function.
5187         * doc/functions/getline.texi: Likewise.
5188
5189 2007-09-09  Jim Meyering  <jim@meyering.net>
5190
5191         * lib/hash.c (hash_initialize): Detect calloc failure.
5192         Reported by Bruno Haible.
5193
5194 2007-09-09  Bruno Haible  <bruno@clisp.org>
5195
5196         * lib/canonicalize-lgpl.c (__realpath): Set errno to ENOMEM when
5197         malloc or realloc fails.
5198
5199 2007-09-09  Bruno Haible  <bruno@clisp.org>
5200
5201         * modules/getcwd (Depends-on): Add malloc-posix.
5202         * modules/glob (Depends-on): Likewise.
5203         * modules/putenv (Depends-on): Likewise.
5204         * modules/strdup (Depends-on): Likewise.
5205         * modules/getdelim (Depends-on): Add realloc-posix.
5206         * modules/read-file (Depends-on): Likewise.
5207
5208 2007-09-09  Bruno Haible  <bruno@clisp.org>
5209
5210         * m4/malloc.m4 (gl_CHECK_MALLOC_POSIX): New macro.
5211         (gl_FUNC_MALLOC_POSIX): Require it.
5212         * m4/realloc.m4 (gl_FUNC_REALLOC_POSIX): Likewise.
5213         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): Likewise.
5214         * modules/realloc (Files): Add m4/malloc.m4.
5215         * modules/calloc (Files): Likewise.
5216
5217 2007-09-09  Bruno Haible  <bruno@clisp.org>
5218
5219         * modules/malloc-posix: New file.
5220         * modules/malloc (Depends-on): Add malloc-posix.
5221         * lib/malloc.c: Include errno.h.
5222         (rpl_malloc): Merge the requirements of a glibc-compatible malloc
5223         and a POSIX-compatible malloc into a single function. Set ENOMEM
5224         when returning NULL.
5225         * m4/malloc.m4: New file.
5226         * doc/functions/malloc.texi: Mention the malloc-posix module.
5227         * lib/stdlib_.h (malloc): New declaration.
5228         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
5229         GNULIB_MALLOC_POSIX and HAVE_MALLOC_POSIX.
5230         * modules/stdlib (stdlib.h): Substitute also GNULIB_MALLOC_POSIX
5231         and HAVE_MALLOC_POSIX.
5232
5233 2007-09-09  Bruno Haible  <bruno@clisp.org>
5234
5235         * modules/realloc-posix: New file.
5236         * modules/realloc (Depends-on): Add realloc-posix.
5237         * lib/realloc.c: Include errno.h.
5238         (rpl_realloc): Merge the requirements of a glibc-compatible realloc
5239         and a POSIX-compatible realloc into a single function. Set ENOMEM
5240         when returning NULL.
5241         * m4/realloc.m4: New file.
5242         * doc/functions/realloc.texi: Mention the realloc-posix module.
5243         * lib/stdlib_.h (realloc): New declaration.
5244         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
5245         GNULIB_REALLOC_POSIX and HAVE_REALLOC_POSIX.
5246         * modules/stdlib (stdlib.h): Substitute also GNULIB_REALLOC_POSIX
5247         and HAVE_REALLOC_POSIX.
5248
5249 2007-09-09  Bruno Haible  <bruno@clisp.org>
5250
5251         * modules/calloc-posix: New file.
5252         * modules/calloc (Depends-on): Add calloc-posix.
5253         * lib/calloc.c: Include errno.h.
5254         (rpl_calloc): Merge the requirements of a glibc-compatible calloc
5255         and a POSIX-compatible calloc into a single function. Set ENOMEM
5256         when returning NULL.
5257         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): New macro.
5258         * doc/functions/calloc.texi: Mention the calloc-posix module.
5259         * lib/stdlib_.h (calloc): New declaration.
5260         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
5261         GNULIB_CALLOC_POSIX and HAVE_CALLOC_POSIX.
5262         * modules/stdlib (stdlib.h): Substitute also GNULIB_CALLOC_POSIX
5263         and HAVE_CALLOC_POSIX.
5264
5265 2007-09-09  Bruno Haible  <bruno@clisp.org>
5266
5267         Allow for modules to show an arbitrary notice.
5268         * modules/TEMPLATE-EXTENDED: Add 'Notice' field.
5269         * gnulib-tool: New option --extract-notice.
5270         (func_usage): Document it.
5271         (sed_extract_prog): Update.
5272         (func_get_notice): New function.
5273         (func_modules_notice): New function.
5274         (func_import, func_create_testdir): Invoke it.
5275         Suggested by Jim Meyering.
5276
5277 2007-09-09  Bruno Haible  <bruno@clisp.org>
5278
5279         * gnulib-tool: New options --verbose, --quiet.
5280         (func_usage): Document them.
5281         (verbose): New variable.
5282         (func_execute_command): New function.
5283         (func_import): Don't show the module list and the file list if
5284         $verbose < 0.
5285         (func_create_testdir): Likewise. Use func_execute_command.
5286         (func_create_megatestdir): Use func_execute_command.
5287
5288 2007-09-08  Bruno Haible  <bruno@clisp.org>
5289
5290         * gnulib-tool (func_import): Prefer rsync over wget when available,
5291         for fetching the PO files.
5292
5293 2007-09-08  Bruno Haible  <bruno@clisp.org>
5294
5295         * posix-modules: New file. Portions copied from gnulib-tool.
5296         * doc/gnulib.texi (POSIX Substitutes Library): New chapter.
5297
5298 2007-09-08  Jim Meyering  <jim@meyering.net>
5299
5300         Rename __fpending.c -> fpending.c and __fpending.h -> fpending.h
5301         * lib/fpending.h: Rename from __fpending.h.
5302         * lib/fpending.c: Rename from __fpending.c.
5303         Include "fpending.h", not "__fpending.h".
5304         * lib/__fpending.h, lib/__fpending.c: Remove files.
5305         * modules/fpending (Files): Reflect new file names.
5306         * lib/close-stream.c: Include "fpending.h", not "__fpending.h".
5307
5308 2007-09-08  Bruno Haible  <bruno@clisp.org>
5309
5310         * m4/inttypes-h.m4: Remove stub file.
5311
5312 2007-09-07  Simon Josefsson  <simon@josefsson.org>
5313
5314         * doc/headers/stdint.texi: Discuss #include_next issue.
5315
5316 2007-09-06  Paul Eggert  <eggert@cs.ucla.edu>
5317
5318         * build-aux/bootstrap: Remove obsolete comment about wget --help.
5319
5320 2007-09-06  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
5321
5322         * m4/time_h.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Fix misspelling
5323         in variable name.
5324
5325 2007-09-03  Jim Meyering  <jim@meyering.net>
5326
5327         New module: git-version-gen.
5328         * modules/git-version-gen: New file.
5329
5330         Import changes from coreutils for bootstrap script.
5331
5332         * build-aux/bootstrap (WGET_COMMAND): Remove code to set this variable.
5333
5334         bootstrap: uses rsync to download the .po files
5335         * build-aux/bootstrap (po_download_command_format): New global.
5336         (download_po_files): Use rsync.
5337         (update_po_files): Don't remove .po files after download,
5338         so future rsync runs can take advantage of the copies.
5339
5340         * build-aux/bootstrap (gnulib_tool): Make sha1sum check quietly.
5341
5342         Solve the unnecessary-.po-file-regeneration problem once and for all.
5343         * build-aux/bootstrap (download_po_files): New function, renamed from
5344         get_translations.  Now, downloads, but doesn't update LINGUAS.
5345         (update_po_files): New function.
5346
5347         bootstrap: Ignore more.
5348         * build-aux/bootstrap (symlink_to_dir): Add a directory name like
5349         uniwidth to e.g., lib/.gitignore.
5350         (slurp): Handle the sys_stat_.h -> sys mapping, too.
5351
5352         * build-aux/bootstrap: New setting: vc_ignore.
5353         (insert_sorted_if_absent): Create $file if absent.
5354         Adapt to new, possibly empty, list: $vc_ignore.
5355
5356         bootstrap: generate more ignorable names
5357         * build-aux/bootstrap (slurp): When generating ignorable names,
5358         also map .sin to .sed, .gperf to .c, and .y to .c.
5359
5360 2007-09-03  Jim Meyering  <jim@meyering.net>
5361
5362         * build-aux/git-version-gen: New file, from coreutils.  For details, see
5363         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commitdiff;h=bfe49f506
5364
5365 2007-09-02  Bruno Haible  <bruno@clisp.org>
5366
5367         Fix mis-recognition of 'mcs' on QNX 6.
5368         * m4/csharpcomp.m4 (gt_CSHARPCOMP): Test whether the "mcs --version"
5369         output contains the string "Mono".
5370         * lib/csharpcomp.c (compile_csharp_using_mono): Likewise.
5371         Reported by <kraai@ftbfs.org> at <https://savannah.gnu.org/bugs/?18337>.
5372
5373 2007-09-01  Bruno Haible  <bruno@clisp.org>
5374
5375         Fix collision between uniwidth/* and linebreak modules.
5376         * lib/linebreak.h (locale_charset, uc_width, u8_width, u16_width,
5377         u32_width): Remove declarations.
5378         * lib/linebreak.c: Include uniwidth.h, uniwidth/cjk.h, streq.h.
5379         (u32_mbtouc_unsafe, streq9, streq8, streq7, streq6, streq5, streq4,
5380         streq3, streq2, streq1, streq0): Remove functions.
5381         (STREQ): Remove macro.
5382         (is_cjk_encoding): Remove function.
5383         (nonspacing_table_data, nonspacing_table_ind): Remove constants.
5384         (uc_width, u8_width, u16_width, u32_width): Remove functions.
5385         * modules/linebreak (Depends-on): Add streq, uniwidth/width.
5386         * NEWS: Document the change.
5387
5388 2007-09-01  Bruno Haible  <bruno@clisp.org>
5389
5390         * lib/streq.h: Add double-inclusion guard.
5391
5392 2007-09-01  Karl Berry  <karl@gnu.org>
5393
5394         * MODULES.html.sh: Rename mreadlink_with_size to areadlink_with_size.
5395
5396 2007-08-28  Jim Meyering  <jim@meyering.net>
5397
5398         Rename mreadlink_with_size to areadlink_with_size.
5399         * NEWS: Document the change.
5400         * lib/mreadlink-with-size.c (mreadlink_with_size): Rename this to...
5401         * lib/areadlink-with-size.c (areadlink_with_size): ...this.
5402         * lib/mreadlink.h: Rename this to...
5403         * lib/areadlink.h: ...this.
5404         * modules/mreadlink-with-size: Rename this to...
5405         * modules/areadlink-with-size: ...this.
5406         * lib/canonicalize.c: Reflect the renaming.
5407         * modules/canonicalize: Likewise.
5408
5409 2007-08-26  Bruno Haible  <bruno@clisp.org>
5410
5411         * gnulib-tool (func_import): When deciding which files to remove,
5412         consider also dangling symbolic links.
5413         Reported by Eric Blake.
5414
5415 2007-08-26  Bruno Haible  <bruno@clisp.org>
5416
5417         * gnulib-tool (func_ln_if_changed): Use "test -h", not "test -L".
5418
5419 2007-08-23  Simon Josefsson  <simon@josefsson.org>
5420
5421         * lib/readline.c: Don't include getline.h, the prototype is now
5422         found in stdio.h.
5423
5424 2007-08-23  Jim Meyering  <jim@meyering.net>
5425
5426         Getdelim touchup.
5427         * lib/getdelim.c (getdelim): Don't bother to save/restore errno
5428         around the funlockfile call, since funlockfile never sets errno.
5429         Don't set errno upon failed realloc.
5430
5431 2007-08-22  Eric Blake  <ebb9@byu.net>
5432
5433         Getline touchups.
5434         * lib/getdelim.c (getdelim): Revert regression that required *n to
5435         be 0 when *lineptr is NULL.  Preserve errno across funlockfile.
5436         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Check for declaration of
5437         getdelim, rather than whether implementation is missing.
5438         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise for getline.
5439         * lib/stdio_.h (getline): Also declare if replacement is
5440         required.
5441         * doc/functions/getdelim.texi: New file.
5442         * doc/functions/getline.texi: Likewise.
5443         * doc/gnulib.texi (Function Substitutes): Add new files.
5444         Reported by Bruno Haible.
5445
5446 2007-08-22  Ludovic Courtès  <ludo@gnu.org>
5447
5448         * users.txt: Add Guile.
5449
5450 2007-08-22  Eric Blake  <ebb9@byu.net>
5451
5452         * tests/test-getdelim.c (main): Use remove, not unlink.
5453         * tests/test-getline.c (main): Likewise.
5454
5455         Move getline and getdelim into stdio.h, per POSIX 200x.
5456         * modules/getline (Files): Remove getline.h.
5457         (Depends-on): Add stdio.
5458         (configure.ac): Add module indicator.
5459         * modules/getdelim (Files): Remove getdelim.h.
5460         (Depends-on): Add stdio.
5461         (configure.ac): Add module indicator.
5462         * modules/stdio (Makefile.am): Work with new indicators.
5463         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Add new defaults.
5464         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Work with stdio needs.
5465         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
5466         * lib/getdelim.h: Delete.
5467         * lib/getline.h: Delete.
5468         * lib/stdio_.h (getdelim, getline): Declare.
5469         * modules/getdelim-tests: New module.
5470         * modules/getline-tests: Likewise.
5471         * tests/test-getdelim.c: New file.
5472         * tests/test-getline.c: Likewise.
5473         * NEWS: Document the change.
5474         * lib/getline.c: Update choice of header.
5475         * lib/csharpcomp.c: Likewise.
5476         * lib/getpass.c: Likewise.
5477         * lib/javacomp.c: Likewise.
5478         * lib/javaversion.c: Likewise.
5479         * lib/yesno.c: Likewise.
5480         * lib/getdelim.c: Likewise.
5481         (getdelim): Set errno on failure, and avoid memory leak.
5482
5483 2007-08-19  Bruno Haible  <bruno@clisp.org>
5484
5485         * modules/closein (Depends-on): Add freadahead.
5486         * lib/closein.c: Include freadahead.h.
5487         (close_stdin): Skip the fseeko and fflush calls if freadahead(stdin)
5488         is zero.
5489
5490 2007-08-19  Bruno Haible  <bruno@clisp.org>
5491
5492         * modules/freadahead-tests: New file.
5493         * tests/test-freadahead.sh: New file.
5494         * tests/test-freadahead.c: New file.
5495
5496         * modules/freadahead: New file.
5497         * lib/freadahead.h: New file.
5498         * lib/freadahead.c: New file.
5499         * MODULES.html.sh (File stream based Input/Output): Add freadahead,
5500         fbufmode, fpurge, freadable, fwritable.
5501
5502 2007-08-19  Eric Blake  <ebb9@byu.net>
5503
5504         Test yesno in combination with closein.
5505         * lib/yesno.c (yesno): Document use of stdin.
5506         * modules/yesno-tests (Files): New module.
5507         * tests/test-yesno.c (main): New file.
5508         * tests/test-yesno.sh: Likewise.
5509
5510 2007-08-19  Bruno Haible  <bruno@clisp.org>
5511
5512         * lib/fbufmode.c (fbufmode): Add tentative support for Solaris/AMD64.
5513         * lib/fseeko.c (rpl_fseeko): Likewise.
5514         * lib/fseterr.c (fseterr): Likewise.
5515
5516 2007-08-19  Bruno Haible  <bruno@clisp.org>
5517
5518         * tests/test-lseek.c (main): Disable a test for BeOS.
5519         * doc/functions/lseek.texi: Document the BeOS bug.
5520
5521 2007-08-19  Bruno Haible  <bruno@clisp.org>
5522             Eric Blake  <ebb9@byu.net>
5523
5524         * lib/lseek.c: Include <sys/stat.h>.
5525         (rpl_lseek): Add workaround code also for Unix platforms.
5526         Needed for BeOS.
5527         * m4/lseek.m4 (gl_FUNC_LSEEK): When cross-compiling, fail on BeOS.
5528         * doc/functions/lseek.texi: Document BeOS definiency.
5529
5530 2007-08-18  Bruno Haible  <bruno@clisp.org>
5531
5532         * modules/fstrcmp-tests: New file.
5533         * tests/test-fstrcmp.c: New file.
5534
5535 2007-08-18  Bruno Haible  <bruno@clisp.org>
5536
5537         * modules/fstrcmp: New file, from GNU gettext with modifications.
5538         * lib/fstrcmp.h: New file, from GNU gettext.
5539         * lib/fstrcmp.c: New file, from GNU gettext.
5540         * MODULES.html.sh (String handling): Add fstrcmp.
5541
5542 2007-08-18  Bruno Haible  <bruno@clisp.org>
5543
5544         * lib/diffseq.h (struct context): Change type of 'heuristic' field to
5545         'bool'.
5546         (diag, compareseq): Remove const from the ctxt argument.
5547         (USE_HEURISTIC): Undefine at the end.
5548
5549 2007-08-18  Jim Meyering  <jim@meyering.net>
5550
5551         New file: lib/idcache.h
5552         * NEWS: Mention the addition.
5553         * modules/idcache (Files): Add lib/idcache.h
5554         * lib/idcache.c: Include "idcache.h".
5555         Don't include <sys/types.h>.
5556         Add a FIXME comment.
5557         Move file-scoped "static" declarations to the top.
5558         * lib/idcache.h: New file.  Include <sys/types.h> here, instead.
5559
5560 2007-08-17  Bruno Haible  <bruno@clisp.org>
5561         and Paul Eggert  <eggert@cs.ucla.edu>
5562
5563         * MODULES.html.sh: Add diffseq.
5564         * modules/diffseq: New file.
5565         * lib/diffseq.h: New file, from GNU gettext with a few minor changes,
5566         extracted from GNU gettext's fstrcmp.c and GNU diff's analyze.c.
5567
5568 2007-08-15  Paul Eggert  <eggert@cs.ucla.edu>
5569
5570         Import changes from coreutils for bootstrap script.
5571
5572         2007-07-21  Paul Eggert  <eggert@cs.ucla.edu>
5573
5574         * build-aux/bootstrap (slurp): Work even in environments where
5575         "ls" defaults to "ls -A".  Put in a FIXME, though, since the
5576         current code does not slurp files whose names start with ".", and
5577         this looks like it might be a troublesome area.
5578
5579         2007-07-11  Jim Meyering  <jim@meyering.net>
5580
5581         If there's a GPL vN copyright comment, require that N == 3.
5582
5583         2007-07-08  Jim Meyering  <jim@meyering.net>
5584
5585         Run the coreutils-specific code only if tests/Makefile.am.in exists.
5586         * build-aux/bootstrap (mam_template): Move definition out of loop.
5587
5588         Create symlinks for gl/{lib,m4}/*, just as for gnulib/{lib,m4}/*.
5589
5590         * build-aux/bootstrap (symlink_to_dir): Rename function from
5591         symlink_to_gnulib.  Add a directory parameter.  Update all
5592         callers.
5593         (cp_mark_as_generated): Also check for -- and link to -- files in
5594         gl/.
5595
5596         2007-07-08  Jim Meyering  <jim@meyering.net>
5597
5598         Adapt to deeper hierarchy in gnulib.
5599         * build-aux/bootstrap (symlink_to_dir): If the destination
5600         directory doesn't exist, create it. This is required at least for
5601         "lib/uniwidth/cjk.h".
5602
5603         2007-05-15  Jim Meyering  <jim@meyering.net>
5604
5605         * build-aux/bootstrap: Now that generated Makefile.am files
5606         are no longer under version control, they must be created at
5607         bootstrap time.
5608
5609 2007-08-14  Ben Pfaff  <blp@gnu.org>
5610
5611         * lib/count-one-bits.h: Add comments.  From Bruno Haible.
5612
5613 2007-08-14  Paul Eggert  <eggert@cs.ucla.edu>
5614
5615         * lib/count-one-bits.h: Don't include <limits.h>; no longer needed
5616         given the changes below.
5617         (COUNT_ONE_BITS): Use 'verify' rather than 'verify_true'.  Work
5618         even on hosts that have padding bits beyond the supported 64.
5619
5620 2007-08-10  Paul Eggert  <eggert@cs.ucla.edu>
5621
5622         * NEWS: In xstrtol, remove STRTOL_FATAL_ERROR and add xstrtol_fatal.
5623         * lib/xstrtol.h: Don't include exitfail.h; that's now internal to
5624         xstrtol.c.  Include getopt.h, since xstrtol_fatal's signature
5625         depends on it.
5626         (xstrtol_error): Remove.
5627         (xstrtol_fatal): New decl, replacing the functionality of xstrtol_error
5628         but with a different signature.
5629         (ATTRIBUTE_NORETURN, __attribute__): New macros.
5630         * lib/xstrtol-error.c: Include exitfail.h.
5631         (xstrtol_fatal): New function, with a different signature from the
5632         old xstrtol_error, so that the caller need not worry about passing
5633         in an exit status, or about storage management of the option argument.
5634         (xstrtol_error): Now a static function.  Redo signature to
5635         implement xstrtol_fatal.  Output the correct number of hyphens in
5636         front of the option so that the caller need not worry about
5637         storage management.
5638         (N_): New macro.
5639         (_): Remove; not used now.
5640         * modules/xstrtol: Depend on getopt.
5641         * tests/test-xstrtol.c (main): Use new xstrtol_error function instead
5642         of old STRTOL_FATAL_ERROR macro.
5643         * tests/test-xstrtol.sh (t-xstrtol.xo): Adjust to match new behavior
5644         of test program.
5645         * tests/test-xstrtoimax.sh (t-xstrtoimax.xo): Likewise.
5646         * tests/test-xstrtoumax.sh (t-xstrtoumax.xo): Likewise.
5647
5648 2007-08-08  Eric Blake  <ebb9@byu.net>
5649
5650         * lib/xstrtol-error.c: Add missing include.
5651
5652         Move xstrtol messages into gnulib domain, when --pobase is used.
5653         * lib/xstrtol.h (_STRTOL_ERROR): Move messages out of macro...
5654         * lib/xstrtol-error.c (xstrtol_error): ...into new file.
5655         * modules/xstrtol (Files): Distribute new file.
5656         * m4/xstrtol.m4 (gl_XSTRTOL): Build new file.
5657         * lib/xstrtol.c (TESTING_XSTRTO): Move tests...
5658         * tests/test-xstrtol.c: ...into new file.
5659         * tests/test-xstrtoul.c: Also test xstrtoul.
5660         * tests/test-xstrtoimax.c: Also test xstrtoimax.
5661         * tests/test-xstrtoumax.c: Also test xstrtoumax.
5662         * tests/test-xstrtol.sh: Drive the tests.
5663         * tests/test-xstrtoimax.sh: Likewise.
5664         * tests/test-xstrtoumax.sh: Likewise.
5665         * modules/xstrtol-tests: New module.
5666         * modules/xstrtoimax-tests: Likewise.
5667         * modules/xstrtoumax-tests: Likewise.
5668
5669 2007-08-08  Jim Meyering  <jim@meyering.net>
5670
5671         New function: mfile_name_concat.
5672         * lib/filenamecat.c (mfile_name_concat): New function, just like
5673         file_name_concat, but return NULL upon failure rather than exiting
5674         with a diagnostic.
5675         * lib/filenamecat.h: Declare it.
5676
5677 2007-08-07  Bruno Haible  <bruno@clisp.org>
5678
5679         * m4/inttypes.m4 (gl_INTTYPES_H): Use GL_TRIGGER_STDC_LIMIT_MACROS
5680         instead of __STDC_LIMIT_MACROS_TRIGGER. This avoids a redefinition
5681         warning from gcc.
5682         Reported by Eric Blake.
5683
5684 2007-08-07  Simon Josefsson  <simon@josefsson.org>
5685
5686         * modules/crypto/arctwo (License): Use the synonymous term "LGPLv2+".
5687         * modules/crypto/arcfour (License): Likewise.
5688         * modules/crypto/des-tests (License): Likewise.
5689         * modules/crypto/gc-arctwo-tests (License): Likewise.
5690         * modules/crypto/gc-des-tests (License): Likewise.
5691         * modules/crypto/gc-hmac-md5-tests (License): Likewise.
5692         * modules/crypto/gc-hmac-sha1-tests (License): Likewise.
5693         * modules/crypto/gc-md2-tests (License): Likewise.
5694         * modules/crypto/gc-md4-tests (License): Likewise.
5695         * modules/crypto/gc-md5-tests (License): Likewise.
5696         * modules/crypto/gc-pbkdf2-sha1-tests (License): Likewise.
5697         * modules/crypto/gc-rijndael-tests (License): Likewise.
5698         * modules/crypto/gc-sha1-tests (License): Likewise.
5699         * modules/crypto/gc-tests (License): Likewise.
5700         * modules/crypto/hmac-md5 (License): Likewise.
5701         * modules/crypto/hmac-sha1 (License): Likewise.
5702         * modules/crypto/md2-tests (License): Likewise.
5703         * modules/crypto/md4-tests (License): Likewise.
5704         * modules/crypto/md5 (License): Likewise.
5705         * modules/crypto/rijndael (License): Likewise.
5706         * modules/crypto/sha1 (License): Likewise.
5707         * modules/memxor (License): Likewise.
5708
5709 2007-08-06  Paul Eggert  <eggert@cs.ucla.edu>
5710         and Bruno Haible  <bruno@clisp.org>
5711
5712         * NEWS: Describe interface changes to human, xstrtol.
5713         * lib/human.h: Include <xstrtol.h>.
5714         (human_options): Return enum strtol_error, not int.  Remove
5715         bool arg; take int * instead.
5716         * lib/human.c: Don't include "gettext.h".
5717         (_): Remove; no longer used.
5718         Don't include <xstrtol.h>, since human.h does it.
5719         (human_options): Adjust to abovementioned interface changes.
5720         Do not report error to stderr; that's now the caller's
5721         responsibility.
5722         * lib/xstrtol.c (main) [defined TESTING_XSTRTO]: Adjust to
5723         interface change.
5724         * lib/xstrtol.h (_STRTOL_ERROR): Take Option, Arg rather than
5725         Str, Argument_type_string.  All uses changed.  Put " argument"
5726         in diagnostics to make them clearer.  Change wording of suffix
5727         message for clarity.
5728         (STRTOL_FATAL_ERROR): Take Option, Arg rather than Str,
5729         Argument_type_string.
5730         (STRTOL_FATAL_WARN): Remove; no longer used.
5731         * modules/human (Depends-on): Remove gettext-h.
5732
5733 2007-08-06  Simon Josefsson  <simon@josefsson.org>
5734
5735         * build-aux/maint.mk, build-aux/GNUmakefile: Relicense to GPLv3+.
5736
5737 2007-07-31  Bruno Haible  <bruno@clisp.org>
5738
5739         * m4/stdint.m4 (gl_STDINT_H): Test whether WCHAR_MIN and WCHAR_MAX
5740         are defined by <stdint.h> (as opposed to <wchar.h>, as on Dragonfly).
5741         Reported by Joerg Sonnenberger <joerg@britannica.bec.de>.
5742
5743 2007-07-31  Bruno Haible  <bruno@clisp.org>
5744
5745         * lib/fflush.c (rpl_fflush): On BSD systems, use the __SNPT flag.
5746         Suggested by Joerg Sonnenberger <joerg@britannica.bec.de>.
5747
5748 2007-07-30  Bruno Haible  <bruno@clisp.org>
5749
5750         * modules/base64 (License): Use the synonymous term "LGPLv2+".
5751         * modules/c-ctype (License): Likewise.
5752         * modules/c-strcase (License): Likewise.
5753         * modules/check-version (License): Likewise.
5754         * modules/iconv (License): Likewise.
5755         * modules/iconv_open (License): Likewise.
5756         * modules/read-file (License): Likewise.
5757         * modules/striconv (License): Likewise.
5758         * modules/strverscmp (License): Likewise.
5759         * modules/vasprintf (License): Likewise.
5760         * modules/crypto/des (License): Likewise.
5761         * modules/crypto/gc (License): Likewise.
5762         * modules/crypto/gc-arcfour (License): Likewise.
5763         * modules/crypto/gc-arctwo (License): Likewise.
5764         * modules/crypto/gc-des (License): Likewise.
5765         * modules/crypto/gc-hmac-md5 (License): Likewise.
5766         * modules/crypto/gc-hmac-sha1 (License): Likewise.
5767         * modules/crypto/gc-md2 (License): Likewise.
5768         * modules/crypto/gc-md4 (License): Likewise.
5769         * modules/crypto/gc-md5 (License): Likewise.
5770         * modules/crypto/gc-pbkdf2-sha1 (License): Likewise.
5771         * modules/crypto/gc-random (License): Likewise.
5772         * modules/crypto/gc-rijndael (License): Likewise.
5773         * modules/crypto/gc-sha1 (License): Likewise.
5774         * modules/crypto/md2 (License): Likewise.
5775         * modules/crypto/md4 (License): Likewise.
5776
5777 2007-07-30  Jim Meyering  <jim@meyering.net>
5778
5779         * lib/fts.c (fts_read): Upon failure to chdir into a subdirectory,
5780         set fts_info to FTS_DNR, not to FTS_ERR, so that the caller knows
5781         it has valid stat data.  This bug would cause du not to count the
5782         sizes of inaccessible directories.
5783         Patch by Bryan Mason <bmason@redhat.com>, via Jose Maria Plans
5784         in <http://bugzilla.redhat.com/250077>.
5785
5786 2007-07-25  Peter O'Gorman  <peter@pogma.com>
5787             Bruno Haible  <bruno@clisp.org>
5788
5789         * m4/include_next.m4 (gl_INCLUDE_NEXT): Test whether #include_next
5790         really works. Needed because AIX 4.3 "xlc -E" doesn't understand
5791         #include_next, gives a diagnostic about it, but reports no error in
5792         the exit code.
5793         Reported by Gary V. Vaughan <gary@thewrittenword.com>.
5794
5795 2007-07-24  Ben Pfaff  <blp@gnu.org>
5796
5797         Improve name: "count-one-bits" is better than "popcount".
5798         * MODULES.html.sh: Update name.
5799         * lib/popcount.h: Renamed lib/count-one-bits.h.
5800         (popcount): Renamed count_one_bits.
5801         (popcountl): Renamed count_one_bits_l.
5802         (popcountll): Renamed count_one_bits_ll.
5803         * m4/popcount.m4: Renamed m4/count-one-bits.m4.
5804         * modules/popcount: Renamed module/count-one-bits.
5805         * modules/popcount-tests: Renamed module/count-one-bits-tests.
5806         * tests/test-popcount.c: Renamed tests/test-count-one-bits.c.
5807
5808 2007-07-23  Ben Pfaff  <blp@gnu.org>
5809
5810         * lib/popcount.h (popcount32): Reduce size of constants, to allow
5811         better code generation, and add U to large constants to avoid
5812         warnings, in non-GCC case.
5813         Suggested by Bruno Haible.
5814
5815 2007-07-23  Ben Pfaff  <blp@gnu.org>
5816
5817         * lib/popcount.h: Use verify_true instead of if...abort.
5818         * modules/popcount: Depend on verify module.
5819         Suggested by Jim Meyering.
5820
5821 2007-07-23  Bruno Haible  <bruno@clisp.org>
5822
5823         * gnulib-tool (func_import): Create a .cvsignore file also when the
5824         directory is not yet in CVS but the toplevel directory is. When
5825         creating a .cvsignore file, add ".deps" and ".dirstamp" to it.
5826         Reported by Karl Berry.
5827
5828 2007-07-22  Ben Pfaff  <blp@gnu.org>
5829
5830         * lib/popcount.h: Use faster, branchless algorithm for non-GCC
5831         case.
5832         Suggested by Eric Blake.
5833
5834 2007-07-22  Ben Pfaff  <blp@gnu.org>
5835
5836         New module: popcount.
5837         * MODULES.html.sh: Add popcount.
5838         * modules/popcount: New file.
5839         * modules/popcount-tests: New file.
5840         * tests/test-popcount.c: New file.
5841         * lib/popcount.h: New file.
5842         * m4/popcount.m4: New file.
5843
5844 2007-07-22  Paul Eggert  <eggert@cs.ucla.edu>
5845
5846         * build-aux/announce-gen: Update to GPLv3.
5847
5848         * build-aux/config.guess: Update from config.
5849
5850 2007-07-21  Bruno Haible  <bruno@clisp.org>
5851
5852         * lib/error.c (_) [ENABLE_NLS]: Define to gettext.
5853         * lib/verror.c (_) [ENABLE_NLS]: Likewise.
5854
5855 2007-07-20  Jim Meyering  <jim@meyering.net>
5856
5857         * check-module: Diagnose a self-dependency.
5858
5859 2007-07-19  Bruno Haible  <bruno@clisp.org>
5860
5861         * gnulib-tool (func_import): Don't abort if pobase or po_domain is
5862         empty.
5863         Reported by Eric Blake.
5864
5865 2007-07-18  Bruno Haible  <bruno@clisp.org>
5866
5867         * gnulib-tool: New options --po-base, --po-domain.
5868         (func_usage): Document them.
5869         (pobase, po_domain): New variables.
5870         (func_emit_lib_Makefile_am): Augment AM_CPPFLAGS, defining
5871         DEFAULT_TEXT_DOMAIN.
5872         (func_emit_po_Makevars, func_emit_po_POTFILES_in): New functions.
5873         (func_import): Consider pobase and po_domain. Create a po/ directory.
5874         (func_create_testdir): Set pobase and po_domain to empty.
5875         * build-aux/po/Makefile.in.in: New file, from GNU gettext 0.16.1.
5876         * build-aux/po/remove-potcdate.sin: New file, from GNU gettext 0.16.1.
5877
5878 2007-07-18  Bruno Haible  <bruno@clisp.org>
5879
5880         * gnulib-tool (func_get_automake_snippet): Synthesize also an
5881         EXTRA_DIST augmentation for files in build-aux/.
5882
5883 2007-07-16  Bruno Haible  <bruno@clisp.org>
5884
5885         * modules/lseek (License): Use the synonymous term "LGPLv2+".
5886         * modules/getdelim (License): Likewise.
5887
5888 2007-07-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
5889
5890         * modules/arpa_inet (License): Use the synonymous term LGPLv2+.
5891         * modules/d-type (License): Likewise.
5892         * modules/extensions (License): Likewise.
5893         * modules/fnmatch (License): Likewise.
5894         * modules/fseeko (License): Likewise.
5895         * modules/getaddrinfo (License): Likewise.
5896         * modules/getline (License): Likewise.
5897         * modules/getlogin_r (License): Likewise.
5898         * modules/getpass (License): Likewise.
5899         * modules/gettimeofday (License): Likewise.
5900         * modules/glob (License): Likewise.
5901         * modules/inet_ntop (License): Likewise.
5902         * modules/malloc (License): Likewise.
5903         * modules/malloca (License): Likewise.
5904         * modules/memmem (License): Likewise.
5905         * modules/mempcpy (License): Likewise.
5906         * modules/memset (License): Likewise.
5907         * modules/minmax (License): Likewise.
5908         * modules/mktime (License): Likewise.
5909         * modules/netinet_in (License): Likewise.
5910         * modules/pathmax (License): Likewise.
5911         * modules/poll (License): Likewise.
5912         * modules/regex (License): Likewise.
5913         * modules/snprintf (License): Likewise.
5914         * modules/stdbool (License): Likewise.
5915         * modules/stdint (License): Likewise.
5916         * modules/stdio (License): Likewise.
5917         * modules/strcase (License): Likewise.
5918         * modules/strcasestr (License): Likewise.
5919         * modules/strdup (License): Likewise.
5920         * modules/string (License): Likewise.
5921         * modules/strndup (License): Likewise.
5922         * modules/strnlen (License): Likewise.
5923         * modules/strpbrk (License): Likewise.
5924         * modules/strptime (License): Likewise.
5925         * modules/strsep (License): Likewise.
5926         * modules/sys_select (License): Likewise.
5927         * modules/sys_socket (License): Likewise.
5928         * modules/sys_stat (License): Likewise.
5929         * modules/sys_time (License): Likewise.
5930         * modules/time (License): Likewise.
5931         * modules/time_r (License): Likewise.
5932         * modules/timegm (License): Likewise.
5933         * modules/unistd (License): Likewise.
5934         * modules/vsnprintf (License): Likewise.
5935         * modules/wctype (License): Likewise.
5936
5937 2007-07-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5938
5939         * modules/argz (License): LGPLv2+.
5940
5941 2007-07-15  Karl Berry  <karl@gnu.org>
5942
5943         * doc/gnulib.texi: revise node structure per new fdl.texi.
5944
5945 2007-07-14  Bruno Haible  <bruno@clisp.org>
5946
5947         * lib/uniname/gen-uninames.lisp (main): Emit a "do not edit" line to
5948         the output file.
5949         * lib/uniname/uninames.h: Regenerated.
5950
5951 2007-07-14  Karl Berry  <karl@gnu.org>
5952
5953         * doc/*gpl*.texi, doc/fdl.texi: new versions, consistently
5954         omitting sectioning and index commands.
5955
5956 2007-07-13  Bruno Haible  <bruno@clisp.org>
5957
5958         New gnulib-tool option --more-symlinks.
5959         * gnulib-tool (func_usage): Document --more-symlinks.
5960         (do_copyrights): New variable.
5961         Recognize option --more-symlinks.
5962         (func_import): Don't add a copyright notice transform to
5963         sed_transform_lib_file if do_copyrights is empty.
5964
5965 2007-07-13  Bruno Haible  <bruno@clisp.org>
5966
5967         * lib/vasnprintf.c (decimal_point_char): Define also if
5968         (NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_INFINITE_DOUBLE)
5969         && !NEED_PRINTF_DIRECTIVE_A.
5970         Reported by Clemens Koller <clemens.koller@anagramm.de> via
5971         Gary V. Vaughan <gary@gnu.org>.
5972
5973 2007-07-13  Paul Eggert  <eggert@cs.ucla.edu>
5974
5975         * lib/inttypes_.h: Undo previous change, since it was fixed
5976         in a different way in the 2007-07-02 fix to m4/inttypes.m4.
5977
5978 2007-07-13  Bruno Haible  <bruno@clisp.org>
5979
5980         * lib/stdint_.h: Fix typo: _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H was
5981         misspelled as _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H.
5982
5983 2007-07-13  Jim Meyering  <jim@meyering.net>
5984
5985         df: Don't fail for Tru64's "file-on-file mount".
5986         * m4/fsusage.m4 (gl_FSUSAGE): Reject Tru64's buggy statvfs,
5987         so we fall through and use statfs instead.  Details here:
5988         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/10878>
5989         Reported by Albert Chin.
5990
5991 2007-07-13  Bruno Haible  <bruno@clisp.org>
5992
5993         * modules/alloca-opt (License): Use the synonymous term "LGPLv2+".
5994         * modules/configmake (License): Likewise.
5995         * modules/gettext (License): Likewise.
5996         * modules/gettext-h (License): Likewise.
5997         * modules/include_next (License): Likewise.
5998         * modules/link-warning (License): Likewise.
5999         * modules/localcharset (License): Likewise.
6000         * modules/localename (License): Likewise.
6001         * modules/lock (License): Likewise.
6002         * modules/relocatable-lib-lgpl (License): Likewise.
6003         * modules/size_max (License): Likewise.
6004         * modules/vasnprintf (License): Likewise.
6005         * modules/wchar (License): Likewise.
6006         * modules/xsize (License): Likewise.
6007
6008 2007-07-13  Bruno Haible  <bruno@clisp.org>
6009
6010         * gnulib-tool (func_import): Treat LGPLv2 as synonymous to LGPL.
6011         (func_create_testdir): Handle copying terms "GPLv2+" and "LGPLv2+".
6012
6013 2007-07-12  Bruno Haible  <bruno@clisp.org>
6014
6015         * doc/gnulib-intro.texi (Copyright): Clarify the license abbreviations
6016         in the modules files.
6017
6018 2007-07-11  Karl Berry  <karl@gnu.org>
6019
6020         * MODULES.html.sh (func_module): use
6021          sed -e '\|^'"${includefile}"'$|d'
6022          instead of /.../d, to avoid errors on $includefile's containing /.
6023
6024 2007-07-10  Sergey Poznyakoff  <gray@gnu.org.ua>
6025
6026         * gnulib-tool (func_import): Avoid duplication of --avoid
6027         statements
6028         (func_dest_tmpfilename,func_create_testdir): Translate `-' in file
6029         names to `_' in variable names.
6030
6031 2007-07-10  Eric Blake  <ebb9@byu.net>
6032
6033         * lib/version-etc.c (version_etc_va): Default to GPLv3+.
6034         * NEWS: Document this change.
6035
6036 2007-07-08  Bruno Haible  <bruno@clisp.org>
6037
6038         Update to Unicode 5.0.
6039         * lib/uniwidth/width.c (nonspacing_table_data): Add U+00AD,
6040         U+0350..U+035F, U+05A2, U+05BA, U+05C5, U+05C7, U+0600..U+0603,
6041         U+0610..U+0615, U+0656..U+065E, U+07EB..U+07F3, U+0A01, U+0AE2..U+0AE3,
6042         U+0CBC. Remove U+0CBF, U+0CC6. Add U+0CE2..U+0CE3, U+135F,
6043         U+17B4..U+17B5, U+17DD. Remove U+180E. Add U+1920..U+1922,
6044         U+1927..U+192B, U+1932, U+1939..U+193B, U+1A17..U+1A18, U+1B00..U+1B03,
6045         U+1B34, U+1B36..U+1B3A, U+1B3C, U+1B42, U+1B6B..U+1B73, U+1DC0..U+1DCA,
6046         U+1DFE..U+1DFF, U+20EB..U+20EF, U+A802, U+A806, U+A80B, U+A825..U+A826,
6047         U+10A01..U+10A03, U+10A05..U+10A06, U+10A0C..U+10A0F, U+10A38..U+10A3A,
6048         U+10A3F, U+1D242..U+1D244.
6049         (nonspacing_table_ind): Update.
6050         (uc_width): Assign width 0 to U+E0100..U+E01EF. Assign width 1 to
6051         U+4DC0..U+4DFF. Assign width 2 to U+2329..U+232A, U+FE10..U+FE1F.
6052
6053 2007-07-08  Bruno Haible  <bruno@clisp.org>
6054
6055         Update to Unicode 5.0.
6056         * lib/uniname/gen-uninames.lisp (main): Add the range 0x12xxx to the
6057         code transform. Extend the name index field of unicode_name_to_code and
6058         unicode_code_to_name from 16 to 24 bits.
6059         * lib/uniname/uniname.c (unicode_character_name,
6060         unicode_name_character): Add the range 0x12xxx to the code transform.
6061         * lib/uniname/uninames.h: Regenerated.
6062         * tests/uniname/UnicodeDataNames.txt: Update to Unicode 5.0.
6063
6064 2007-07-07  Bruno Haible  <bruno@clisp.org>
6065
6066         * modules/wcwidth-tests: New file.
6067         * tests/test-wcwidth.c: New file.
6068
6069         Work around MacOS X wcwidth() bug.
6070         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Test against MacOS X 10.3 bug.
6071         * lib/wcwidth.c: Include localcharset.h, streq.h, uniwidth.h.
6072         (rpl_wcwidth): Special-case the UTF-8 locales. Fall back to the
6073         original wcwidth in non-UTF-8 locales.
6074         * modules/wcwidth (Depends-on): Add localcharset, streq,
6075         uniwidth/width.
6076         * doc/functions/wcwidth.texi: Update.
6077
6078 2007-07-07  Bruno Haible  <bruno@clisp.org>
6079
6080         * lib/wchar_.h: Include the GL_LINK_WARNING macro.
6081         (wcwidth): New declaration.
6082         * m4/wchar.m4 (gl_WCHAR_MODULE_INDICATOR, gl_WCHAR_H_DEFAULTS): New
6083         macros.
6084         (gl_WCHAR_H): Require gl_WCHAR_H_DEFAULTS. Don't set WCHAR_H to empty
6085         here. Prepare for creating <wchar.h> unconditionally.
6086         * modules/wchar (Depends-on): Add link-warning.
6087         (Makefile.am): Substitute also GNULIB_WCWIDTH, HAVE_DECL_WCWIDTH,
6088         REPLACE_WCWIDTH, and GL_LINK_WARNING.
6089         * lib/wcwidth.h: Remove file.
6090         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gl_WCHAR_H_DEFAULTS. Set
6091         HAVE_DECL_WCWIDTH, REPLACE_WCWIDTH, WCHAR_H.
6092         * modules/wcwidth (Files): Remove lib/wcwidth.h.
6093         (configure.ac): Invoke gl_WCHAR_MODULE_INDICATOR.
6094         (Include): Replace wcwidth.h with <wchar.h>.
6095         * lib/wcwidth.c: Include <wchar.h> instead of wcwidth.h.
6096         * lib/mbchar.h: Don't include wcwidth.h.
6097         * lib/mbswidth.c: Likewise.
6098         * NEWS: Mention the change.
6099
6100 2007-07-07  Bruno Haible  <bruno@clisp.org>
6101
6102         * lib/wcwidth.c: New file, extracted from lib/wcwidth.h.
6103         * lib/wcwidth.h: Don't include wctype.h. Replace inline function
6104         definition with an external declaration.
6105         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Use wcwidth.c when wcwidth is not
6106         defined as a function. Remove AC_C_INLINE requirement.
6107         * modules/wcwidth (Files): Add lib/wcwidth.c.
6108         (Makefile.am): Remove redundant statement.
6109
6110 2007-07-07  Bruno Haible  <bruno@clisp.org>
6111
6112         * MODULES.html.sh (Unicode string functions): Add the new modules.
6113
6114         * tests/uniwidth/test-u32-strwidth.c: New file.
6115         * modules/uniwidth/u32-strwidth-tests: New file.
6116
6117         * lib/uniwidth/u32-strwidth.c: New file.
6118         * modules/uniwidth/u32-strwidth: New file.
6119
6120         * tests/uniwidth/test-u16-strwidth.c: New file.
6121         * modules/uniwidth/u16-strwidth-tests: New file.
6122
6123         * lib/uniwidth/u16-strwidth.c: New file.
6124         * modules/uniwidth/u16-strwidth: New file.
6125
6126         * tests/uniwidth/test-u8-strwidth.c: New file.
6127         * modules/uniwidth/u8-strwidth-tests: New file.
6128
6129         * lib/uniwidth/u8-strwidth.c: New file.
6130         * modules/uniwidth/u8-strwidth: New file.
6131
6132         * tests/uniwidth/test-u32-width.c: New file.
6133         * modules/uniwidth/u32-width-tests: New file.
6134
6135         * lib/uniwidth/u32-width.c: New file.
6136         * modules/uniwidth/u32-width: New file.
6137
6138         * tests/uniwidth/test-u16-width.c: New file.
6139         * modules/uniwidth/u16-width-tests: New file.
6140
6141         * lib/uniwidth/u16-width.c: New file.
6142         * modules/uniwidth/u16-width: New file.
6143
6144         * tests/uniwidth/test-u8-width.c: New file.
6145         * modules/uniwidth/u8-width-tests: New file.
6146
6147         * lib/uniwidth/u8-width.c: New file.
6148         * modules/uniwidth/u8-width: New file.
6149
6150         * tests/uniwidth/test-uc_width.c: New file.
6151         * modules/uniwidth/width-tests: New file.
6152
6153         * lib/uniwidth/width.c: New file, from GNU libiconv.
6154         * lib/uniwidth/cjk.h: New file, from GNU libiconv.
6155         * modules/uniwidth/width: New file.
6156
6157         * lib/uniwidth.h: New file, from GNU libiconv.
6158         * modules/uniwidth/base: New file.
6159
6160 2007-07-07  Bruno Haible  <bruno@clisp.org>
6161
6162         * lib/uniname.h: New file, from GNU gettext.
6163         * lib/uniname/gen-uninames.lisp: New file, from GNU gettext.
6164         * lib/uniname/uninames.h: New file, from GNU gettext.
6165         * lib/uniname/uniname.c: New file, from GNU gettext.
6166         * tests/uniname/test-uninames.sh: New file.
6167         * tests/uniname/test-uninames.c: New file, from GNU gettext.
6168         * tests/uniname/UnicodeDataNames.txt: New file, from GNU gettext.
6169         * modules/uniname/base: New file.
6170         * modules/uniname/uniname: New file.
6171         * modules/uniname/uniname-tests: New file.
6172         * MODULES.html.sh (Unicode string functions): Add the new modules.
6173
6174 2007-07-06  Bruno Haible  <bruno@clisp.org>
6175
6176         * doc/Makefile (TEXI2HTML): Specify a --reference-limit.
6177
6178 2007-07-06  Bruno Haible  <bruno@clisp.org>
6179
6180         * lib/sys_time_.h: Use a recursion-safe inclusion guard rather than
6181         a split double-inclusion guard. Needed for cygwin, where <sys/time.h>
6182         includes <cygwin/sys_time.h> which includes <sys/select.h> which
6183         include <sys/time.h>.
6184         Reported by Eric Blake.
6185
6186 2007-07-06  Eric Blake  <ebb9@byu.net>
6187
6188         Fix testing canonicalize on cygwin.
6189         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
6190         Revert patch from 2007-06-19.
6191         * tests/test-canonicalize-lgpl.c (main): Instead, skip test when
6192         canonicalize module is also in use.
6193         * tests/test-canonicalize.c: New file.
6194         * tests/test-canonicalize.sh: Likewise.
6195         * modules/canonicalize-tests: Likewise.
6196
6197 2007-07-06  Jim Meyering  <jim@meyering.net>
6198
6199         * lib/getugroups.c (getugroups): Detect getgrent failure.
6200         Adjust comment to reflect reality: this function may return -1.
6201
6202 2007-07-05  Sergey Poznyakoff  <gray@gnu.org.ua>
6203
6204         * build-aux/bootstrap (TP_URL,get_translations): Update to use
6205         the new TP address.
6206         (usage): Fix typo
6207         (gnulib_mk): New variable.
6208
6209 2007-07-05  Jim Meyering  <jim@meyering.net>
6210
6211         Don't let endgrent clobber errno, no matter how improbable.
6212         * lib/getugroups.c (getugroups): Save and restore errno around
6213         endgrent call.
6214
6215         Close the group DB even when failing with 2^31 or more members.
6216         * lib/getugroups.c (getugroups): Don't return without calling endgrent.
6217
6218 2007-07-04  Jim Meyering  <jim@meyering.net>
6219
6220         * lib/getugroups.h: New file.
6221         * lib/getugroups.c: Include "getugroups.h".
6222         Remove uses of "register" keyword.
6223         Move local variable, "cp", down into scope where used.
6224         Give "username" parameter the "const" attribute.
6225         * modules/getugroups (Files): Add lib/getugroups.h
6226
6227 2007-07-04  Karl Berry  <karl@gnu.org>
6228
6229         * MODULES.html.sh (func_all_modules): Complete rename of
6230         gpl/lgpl to gpl-2.0 and lgpl-2.1, and add gpl-3.0.
6231
6232 2007-07-02  Bruno Haible  <bruno@clisp.org>
6233
6234         * m4/inttypes.m4 (gl_INTTYPES_H): Define __STDC_LIMIT_MACROS in C++
6235         mode, when inttypes.h comes from gnulib.
6236         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
6237
6238 2007-07-02  Simon Josefsson  <simon@josefsson.org>
6239
6240         * NEWS: Mention lgpl module name change.
6241
6242         * modules/lgpl-2.1: Renamed from lgpl.
6243
6244         * NEWS: Mention gpl module name change.
6245
6246         * modules/gpl-3.0: New file, based on gpl-2.0.
6247
6248         * modules/gpl-2.0: Renamed from gpl.
6249
6250         * modules/gpl: Fix filename, doc/gpl.texi is now found at
6251         doc/gpl-2.0.texi.
6252
6253 2007-07-02  Paul Eggert  <eggert@cs.ucla.edu>
6254
6255         * lib/inttypes_.h [defined __cplusplus&&!defined __STDC_LIMIT_MACROS]:
6256         #define __STDC_LIMIT_MACROS temporarily while including
6257         <stdint.h>, so that __STDC_LIMIT_MACROS is defined.
6258         Problem reported by Joel E. Denny in
6259         <http://lists.gnu.org/archive/html/bug-gnulib/2007-07/msg00008.html>.
6260
6261 2007-07-01  Bruno Haible  <bruno@clisp.org>
6262
6263         * lib/unistdio.h: New file.
6264         * lib/unistdio/u-asnprintf.h: New file.
6265         * lib/unistdio/u-asprintf.h: New file.
6266         * lib/unistdio/u-printf-args.c: New file.
6267         * lib/unistdio/u-printf-args.h: New file.
6268         * lib/unistdio/u-printf-parse.h: New file.
6269         * lib/unistdio/u-snprintf.h: New file.
6270         * lib/unistdio/u-sprintf.h: New file.
6271         * lib/unistdio/u-vasprintf.h: New file.
6272         * lib/unistdio/u-vsnprintf.h: New file.
6273         * lib/unistdio/u-vsprintf.h: New file.
6274         * lib/unistdio/ulc-asnprintf.c: New file.
6275         * lib/unistdio/ulc-asprintf.c: New file.
6276         * lib/unistdio/ulc-fprintf.c: New file, based on lib/fprintf.c.
6277         * lib/unistdio/ulc-printf-parse.c: New file.
6278         * lib/unistdio/ulc-snprintf.c: New file.
6279         * lib/unistdio/ulc-sprintf.c: New file.
6280         * lib/unistdio/ulc-vasnprintf.c: New file.
6281         * lib/unistdio/ulc-vasprintf.c: New file.
6282         * lib/unistdio/ulc-vfprintf.c: New file, based on lib/vfprintf.c.
6283         * lib/unistdio/ulc-vsnprintf.c: New file.
6284         * lib/unistdio/ulc-vsprintf.c: New file.
6285         * lib/unistdio/u8-asnprintf.c: New file.
6286         * lib/unistdio/u8-asprintf.c: New file.
6287         * lib/unistdio/u8-printf-parse.c: New file.
6288         * lib/unistdio/u8-snprintf.c: New file.
6289         * lib/unistdio/u8-sprintf.c: New file.
6290         * lib/unistdio/u8-vasnprintf.c: New file.
6291         * lib/unistdio/u8-vasprintf.c: New file.
6292         * lib/unistdio/u8-vsnprintf.c: New file.
6293         * lib/unistdio/u8-vsprintf.c: New file.
6294         * lib/unistdio/u8-u8-asnprintf.c: New file.
6295         * lib/unistdio/u8-u8-asprintf.c: New file.
6296         * lib/unistdio/u8-u8-snprintf.c: New file.
6297         * lib/unistdio/u8-u8-sprintf.c: New file.
6298         * lib/unistdio/u8-u8-vasnprintf.c: New file.
6299         * lib/unistdio/u8-u8-vasprintf.c: New file.
6300         * lib/unistdio/u8-u8-vsnprintf.c: New file.
6301         * lib/unistdio/u8-u8-vsprintf.c: New file.
6302         * lib/unistdio/u16-asnprintf.c: New file.
6303         * lib/unistdio/u16-asprintf.c: New file.
6304         * lib/unistdio/u16-printf-parse.c: New file.
6305         * lib/unistdio/u16-snprintf.c: New file.
6306         * lib/unistdio/u16-sprintf.c: New file.
6307         * lib/unistdio/u16-vasnprintf.c: New file.
6308         * lib/unistdio/u16-vasprintf.c: New file.
6309         * lib/unistdio/u16-vsnprintf.c: New file.
6310         * lib/unistdio/u16-vsprintf.c: New file.
6311         * lib/unistdio/u16-u16-asnprintf.c: New file.
6312         * lib/unistdio/u16-u16-asprintf.c: New file.
6313         * lib/unistdio/u16-u16-snprintf.c: New file.
6314         * lib/unistdio/u16-u16-sprintf.c: New file.
6315         * lib/unistdio/u16-u16-vasnprintf.c: New file.
6316         * lib/unistdio/u16-u16-vasprintf.c: New file.
6317         * lib/unistdio/u16-u16-vsnprintf.c: New file.
6318         * lib/unistdio/u16-u16-vsprintf.c: New file.
6319         * lib/unistdio/u32-asnprintf.c: New file.
6320         * lib/unistdio/u32-asprintf.c: New file.
6321         * lib/unistdio/u32-printf-parse.c: New file.
6322         * lib/unistdio/u32-snprintf.c: New file.
6323         * lib/unistdio/u32-sprintf.c: New file.
6324         * lib/unistdio/u32-vasnprintf.c: New file.
6325         * lib/unistdio/u32-vasprintf.c: New file.
6326         * lib/unistdio/u32-vsnprintf.c: New file.
6327         * lib/unistdio/u32-vsprintf.c: New file.
6328         * lib/unistdio/u32-u32-asnprintf.c: New file.
6329         * lib/unistdio/u32-u32-asprintf.c: New file.
6330         * lib/unistdio/u32-u32-snprintf.c: New file.
6331         * lib/unistdio/u32-u32-sprintf.c: New file.
6332         * lib/unistdio/u32-u32-vasnprintf.c: New file.
6333         * lib/unistdio/u32-u32-vasprintf.c: New file.
6334         * lib/unistdio/u32-u32-vsnprintf.c: New file.
6335         * lib/unistdio/u32-u32-vsprintf.c: New file.
6336         * tests/unistdio/test-ulc-asnprintf1.c: New file.
6337         * tests/unistdio/test-ulc-asnprintf1.h: New file.
6338         * tests/unistdio/test-ulc-printf1.h: New file.
6339         * tests/unistdio/test-ulc-vasnprintf1.c: New file.
6340         * tests/unistdio/test-ulc-vasnprintf2.c: New file.
6341         * tests/unistdio/test-ulc-vasnprintf2.sh: New file.
6342         * tests/unistdio/test-ulc-vasnprintf3.c: New file.
6343         * tests/unistdio/test-ulc-vasnprintf3.sh: New file.
6344         * tests/unistdio/test-ulc-vasprintf1.c: New file.
6345         * tests/unistdio/test-ulc-vsnprintf1.c: New file.
6346         * tests/unistdio/test-ulc-vsprintf1.c: New file.
6347         * tests/unistdio/test-u8-asnprintf1.c: New file.
6348         * tests/unistdio/test-u8-asnprintf1.h: New file.
6349         * tests/unistdio/test-u8-printf1.h: New file.
6350         * tests/unistdio/test-u8-vasnprintf1.c: New file.
6351         * tests/unistdio/test-u8-vasnprintf2.c: New file.
6352         * tests/unistdio/test-u8-vasnprintf2.sh: New file.
6353         * tests/unistdio/test-u8-vasnprintf3.c: New file.
6354         * tests/unistdio/test-u8-vasnprintf3.sh: New file.
6355         * tests/unistdio/test-u8-vasprintf1.c: New file.
6356         * tests/unistdio/test-u8-vsnprintf1.c: New file.
6357         * tests/unistdio/test-u8-vsprintf1.c: New file.
6358         * tests/unistdio/test-u16-asnprintf1.c: New file.
6359         * tests/unistdio/test-u16-asnprintf1.h: New file.
6360         * tests/unistdio/test-u16-printf1.h: New file.
6361         * tests/unistdio/test-u16-vasnprintf1.c: New file.
6362         * tests/unistdio/test-u16-vasnprintf2.c: New file.
6363         * tests/unistdio/test-u16-vasnprintf2.sh: New file.
6364         * tests/unistdio/test-u16-vasnprintf3.c: New file.
6365         * tests/unistdio/test-u16-vasnprintf3.sh: New file.
6366         * tests/unistdio/test-u16-vasprintf1.c: New file.
6367         * tests/unistdio/test-u16-vsnprintf1.c: New file.
6368         * tests/unistdio/test-u16-vsprintf1.c: New file.
6369         * tests/unistdio/test-u32-asnprintf1.c: New file.
6370         * tests/unistdio/test-u32-asnprintf1.h: New file.
6371         * tests/unistdio/test-u32-printf1.h: New file.
6372         * tests/unistdio/test-u32-vasnprintf1.c: New file.
6373         * tests/unistdio/test-u32-vasnprintf2.c: New file.
6374         * tests/unistdio/test-u32-vasnprintf2.sh: New file.
6375         * tests/unistdio/test-u32-vasnprintf3.c: New file.
6376         * tests/unistdio/test-u32-vasnprintf3.sh: New file.
6377         * tests/unistdio/test-u32-vasprintf1.c: New file.
6378         * tests/unistdio/test-u32-vsnprintf1.c: New file.
6379         * tests/unistdio/test-u32-vsprintf1.c: New file.
6380         * modules/unistdio/base: New file.
6381         * modules/unistdio/u-printf-args: New file.
6382         * modules/unistdio/ulc-asnprintf: New file.
6383         * modules/unistdio/ulc-asprintf: New file.
6384         * modules/unistdio/ulc-fprintf: New file.
6385         * modules/unistdio/ulc-printf-parse: New file.
6386         * modules/unistdio/ulc-snprintf: New file.
6387         * modules/unistdio/ulc-sprintf: New file.
6388         * modules/unistdio/ulc-vasnprintf: New file.
6389         * modules/unistdio/ulc-vasprintf: New file.
6390         * modules/unistdio/ulc-vfprintf: New file.
6391         * modules/unistdio/ulc-vsnprintf: New file.
6392         * modules/unistdio/ulc-vsprintf: New file.
6393         * modules/unistdio/u8-asnprintf: New file.
6394         * modules/unistdio/u8-asprintf: New file.
6395         * modules/unistdio/u8-printf-parse: New file.
6396         * modules/unistdio/u8-snprintf: New file.
6397         * modules/unistdio/u8-sprintf: New file.
6398         * modules/unistdio/u8-vasnprintf: New file.
6399         * modules/unistdio/u8-vasprintf: New file.
6400         * modules/unistdio/u8-vsnprintf: New file.
6401         * modules/unistdio/u8-vsprintf: New file.
6402         * modules/unistdio/u8-u8-asnprintf: New file.
6403         * modules/unistdio/u8-u8-asprintf: New file.
6404         * modules/unistdio/u8-u8-snprintf: New file.
6405         * modules/unistdio/u8-u8-sprintf: New file.
6406         * modules/unistdio/u8-u8-vasnprintf: New file.
6407         * modules/unistdio/u8-u8-vasprintf: New file.
6408         * modules/unistdio/u8-u8-vsnprintf: New file.
6409         * modules/unistdio/u8-u8-vsprintf: New file.
6410         * modules/unistdio/u16-asnprintf: New file.
6411         * modules/unistdio/u16-asprintf: New file.
6412         * modules/unistdio/u16-printf-parse: New file.
6413         * modules/unistdio/u16-snprintf: New file.
6414         * modules/unistdio/u16-sprintf: New file.
6415         * modules/unistdio/u16-vasnprintf: New file.
6416         * modules/unistdio/u16-vasprintf: New file.
6417         * modules/unistdio/u16-vsnprintf: New file.
6418         * modules/unistdio/u16-vsprintf: New file.
6419         * modules/unistdio/u16-u16-asnprintf: New file.
6420         * modules/unistdio/u16-u16-asprintf: New file.
6421         * modules/unistdio/u16-u16-snprintf: New file.
6422         * modules/unistdio/u16-u16-sprintf: New file.
6423         * modules/unistdio/u16-u16-vasnprintf: New file.
6424         * modules/unistdio/u16-u16-vasprintf: New file.
6425         * modules/unistdio/u16-u16-vsnprintf: New file.
6426         * modules/unistdio/u16-u16-vsprintf: New file.
6427         * modules/unistdio/u32-asnprintf: New file.
6428         * modules/unistdio/u32-asprintf: New file.
6429         * modules/unistdio/u32-printf-parse: New file.
6430         * modules/unistdio/u32-snprintf: New file.
6431         * modules/unistdio/u32-sprintf: New file.
6432         * modules/unistdio/u32-vasnprintf: New file.
6433         * modules/unistdio/u32-vasprintf: New file.
6434         * modules/unistdio/u32-vsnprintf: New file.
6435         * modules/unistdio/u32-vsprintf: New file.
6436         * modules/unistdio/u32-u32-asnprintf: New file.
6437         * modules/unistdio/u32-u32-asprintf: New file.
6438         * modules/unistdio/u32-u32-snprintf: New file.
6439         * modules/unistdio/u32-u32-sprintf: New file.
6440         * modules/unistdio/u32-u32-vasnprintf: New file.
6441         * modules/unistdio/u32-u32-vasprintf: New file.
6442         * modules/unistdio/u32-u32-vsnprintf: New file.
6443         * modules/unistdio/u32-u32-vsprintf: New file.
6444         * modules/unistdio/ulc-asnprintf-tests: New file.
6445         * modules/unistdio/ulc-vasnprintf-tests: New file.
6446         * modules/unistdio/ulc-vasprintf-tests: New file.
6447         * modules/unistdio/ulc-vsnprintf-tests: New file.
6448         * modules/unistdio/ulc-vsprintf-tests: New file.
6449         * modules/unistdio/u8-asnprintf-tests: New file.
6450         * modules/unistdio/u8-vasnprintf-tests: New file.
6451         * modules/unistdio/u8-vasprintf-tests: New file.
6452         * modules/unistdio/u8-vsnprintf-tests: New file.
6453         * modules/unistdio/u8-vsprintf-tests: New file.
6454         * modules/unistdio/u16-asnprintf-tests: New file.
6455         * modules/unistdio/u16-vasnprintf-tests: New file.
6456         * modules/unistdio/u16-vasprintf-tests: New file.
6457         * modules/unistdio/u16-vsnprintf-tests: New file.
6458         * modules/unistdio/u16-vsprintf-tests: New file.
6459         * modules/unistdio/u32-asnprintf-tests: New file.
6460         * modules/unistdio/u32-vasnprintf-tests: New file.
6461         * modules/unistdio/u32-vasprintf-tests: New file.
6462         * modules/unistdio/u32-vsnprintf-tests: New file.
6463         * modules/unistdio/u32-vsprintf-tests: New file.
6464         * MODULES.html.sh (Unicode string functions): Add the new modules.
6465
6466 2007-07-01  Bruno Haible  <bruno@clisp.org>
6467
6468         * lib/sprintf.c (sprintf): Limit the available length estimation,
6469         to avoid address wraparound.
6470         * lib/vsprintf.c (vsprintf): Likewise.
6471         * modules/sprintf-posix (Dependencies): Add stdint.
6472         * modules/vsprintf-posix (Dependencies): Likewise.
6473
6474 2007-07-01  Bruno Haible  <bruno@clisp.org>
6475
6476         * gnulib-tool (self_abspathname): Determine PATH_SEPARATOR and handle
6477         Windows PATH as well. Conservative double-quoting. Comments.
6478
6479 2007-07-01  Bruno Haible  <bruno@clisp.org>
6480             Eric Blake  <ebb9@byu.net>
6481             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6482
6483         * gnulib-tool (self_abspathname): Fix algorithm to cope with
6484         empty components in $PATH, denoting '.'.
6485
6486 2007-07-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6487
6488         * gnulib-tool: Fix indentation.
6489         (func_create_megatestdir): Likewise.
6490         Report by Bruno Haible.
6491
6492 2007-06-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6493
6494         Sync from Automake.
6495         * build-aux/gnupload: Fix shell portability issues with for loops.
6496         Report by Karl Berry.
6497
6498 2007-06-29  Simon Josefsson  <simon@josefsson.org>
6499
6500         * build-aux/maint.mk (POURL): Use translationproject.org.
6501
6502 2007-06-27  Simon Josefsson  <simon@josefsson.org>
6503             Bruno Haible  <bruno@clisp.org>
6504
6505         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Require gl_HEADER_SYS_SOCKET
6506         before using HAVE_WS2TCPIP_H. Check for gai_strerror through an
6507         explicit link test, rather than AC_REPLACE_FUNCS - for mingw.
6508         (gl_PREREQ_GETADDRINFO): Require gl_HEADER_SYS_SOCKET before using
6509         HAVE_SYS_SOCKET_H and HAVE_WS2TCPIP_H.
6510
6511 2007-06-27  Bruno Haible  <bruno@clisp.org>
6512
6513         * build-aux/config.rpath: Upgrade to libtool-1.5.24.
6514         * build-aux/config.libpath: Upgrade to libtool-1.5.24.
6515
6516 2007-06-26  Karl Berry  <karl@gnu.org>
6517
6518         * MODULES.html.sh: remove xreadlink-with-size.
6519
6520 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
6521
6522         * lib/time_.h: Port to Solaris 8 with Sun Studio 11, using a
6523         method that I hope also handles the double-include problem noted
6524         by Bruno Haible in
6525         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00186.html>.
6526
6527 2007-06-23  Bruno Haible  <bruno@clisp.org>
6528
6529         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
6530         Don't let the 'mostlyclean' target fail if the last subdirectory could
6531         not be removed.
6532         Reported by Karl Berry.
6533
6534 2007-06-23  Bruno Haible  <bruno@clisp.org>
6535
6536         * gnulib-tool (echo): Add a speedier workaround for ksh.
6537         * tests/test-echo.sh: Likewise.
6538
6539 2007-06-23  Bruno Haible  <bruno@clisp.org>
6540
6541         * gnulib-tool (echo): Add workarounds also for bash versions < 2.04.
6542         * tests/test-echo.sh: Likewise.
6543
6544 2007-06-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6545
6546         * gnulib-tool (IFS): Initialize early, so we don't set it to
6547         empty later.
6548         (self_abspathname): Rewrite algorithm to set it, reindent.
6549         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am)
6550         (func_create_megatestdir): Merge some sed scripts.
6551
6552 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
6553
6554         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Check some typos
6555         exposed by Sun Studio 11 cc on Solaris 8.
6556
6557 2007-06-22  Bruno Haible  <bruno@clisp.org>
6558
6559         * gnulib-tool (echo): Ensure the echo primitive does not interpret
6560         backslashes.
6561         * tests/test-echo.sh: New file.
6562
6563 2007-06-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6564
6565         * gnulib-tool (func_add_or_update, func_create_testdir): Do not
6566         simplify `sed_replace_build_aux' scripts, they are portable but
6567         echoing them with `echo' is not.
6568         Report and analysis by Fernando Ferreira <fernando.prog@netcabo.pt>.
6569
6570 2007-06-21  Karl Berry  <karl@gnu.org>
6571
6572         * config/srclist.txt: guess we can't handle the licenses via
6573         srclist at the moment.
6574
6575 2007-06-21  Paul Eggert  <eggert@cs.ucla.edu>
6576
6577         * MODULES.html.sh: Add include_next.
6578         * modules/include_next: New file.
6579
6580 2007-06-20  Paul Eggert  <eggert@cs.ucla.edu>
6581
6582         * m4/include_next.m4 (gl_INCLUDE_NEXT): Define and AC_SUBST
6583         INCLUDE_NEXT.
6584         (gl_CHECK_NEXT_HEADERS): New macro.
6585         * m4/fcntl_h.m4 (gl_FCNTL_H): use gl_CHECK_NEXT_HEADERS instead of
6586         the obsolescent gl_ABSOLUTE_HEADER.
6587         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Likewise.
6588         * m4/float_h.m4 (gl_FLOAT_H): Likewise.
6589         * m4/iconv_h.m4 (gl_ICONV_H): Likewise.
6590         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
6591         * m4/locale_h.m4 (gl_LOCALE_H): Likewise.
6592         * m4/math_h.m4 (gl_MATH_H): Likewise.
6593         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Likewise.
6594         * m4/search_h.m4 (gl_SEARCH_H): Likewise.
6595         * m4/signal_h.m4 (gl_SIGNAL_H): Likewise.
6596         * m4/stdint.m4 (gl_STDINT_H): Likewise.
6597         * m4/stdio_h.m4 (gl_STDIO_H): Likewise.
6598         * m4/stdlib_h.m4 (gl_STDLIB_H): Likewise.
6599         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Likewise.
6600         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
6601         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
6602         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Likewise.
6603         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Likewise.
6604         * m4/sysexits.m4 (gl_SYSEXITS): Likewise.
6605         * m4/time_h.m4 (gl_HEADER_TIME_H_BODY): Likewise.
6606         * m4/unistd_h.m4 (gl_UNISTD_H): Likewise.
6607         * m4/wchar.m4 (gl_WCHAR_H): Likewise.
6608         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
6609         * m4/inttypes.m4 (gl_INTTYPES_H): Define
6610         _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H to avoid the problem of unclean
6611         builds, since ABSOLUTE_INTTYPES_H is no longer being defined.
6612         * m4/stdint.m4 (gl_STDINT_H): Likewise, for
6613         _GL_JUST_INCLUDE_SYSTEM_STDINT_H.
6614         * lib/fcntl_.h: Use @INCLUDE_NEXT@ @NEXT_foo_H@
6615         rather than @HAVE_INCLUDE_NEXT@ and @ABSOLUTE_foo_H@.
6616         * lib/float_.h: Likewise.
6617         * lib/inttypes_.h: Likewise.
6618         * lib/math_.h: Likewise.
6619         * lib/search_.h: Likewise.
6620         * lib/signal_.h: Likewise.
6621         * lib/stdint_.h: Likewise.
6622         * lib/stdio_.h: Likewise.
6623         * lib/stdlib_.h: Likewise.
6624         * lib/string_.h: Likewise.
6625         * lib/sys_stat_.h: Likewise.
6626         * lib/sys_time_.h: Likewise.
6627         * lib/time_.h: Likewise.
6628         * lib/unistd_.h: Likewise.
6629         * lib/wchar_.h: Likewise.
6630         * lib/wctype_.h: Likewise.
6631         * lib/dirent_.h: Likewise.
6632         * lib/iconv_.h: Likewise.
6633         * lib/locale_.h: Likewise.
6634         * lib/netinet_in_.h: Likewise.
6635         * lib/sys_select_.h: Likewise.
6636         * lib/sys_socket_.h: Likewise.
6637         * lib/sysexits_.h: Likewise.
6638         * modules/fcntl (Depends-on): Depend on include_next, not
6639         absolute_header.
6640         (Makefile): Substitute INCLUDE_NEXT and NEXT_foo_H, not
6641         HAVE_INCLUDE_NEXT and ABSOLUTE_foo_H.
6642         * modules/fchdir: Likewise.
6643         * modules/float: Likewise.
6644         * modules/iconv_open: Likewise.
6645         * modules/inttypes: Likewise.
6646         * modules/locale: Likewise.
6647         * modules/math: Likewise.
6648         * modules/netinet_in: Likewise.
6649         * modules/search: Likewise.
6650         * modules/signal: Likewise.
6651         * modules/stdint: Likewise.
6652         * modules/stdio: Likewise.
6653         * modules/stdlib: Likewise.
6654         * modules/string: Likewise.
6655         * modules/sys_select: Likewise.
6656         * modules/sys_socket: Likewise.
6657         * modules/sys_stat: Likewise.
6658         * modules/sys_time: Likewise.
6659         * modules/sysexits: Likewise.
6660         * modules/time: Likewise.
6661         * modules/unistd: Likewise.
6662         * modules/wchar: Likewise.
6663         * modules/wctype: Likewise.
6664         * modules/sys_stat: Change maintainer to "all".
6665         * modules/unistd: Likewise.
6666
6667 2007-06-20  Karl Berry  <karl@gnu.org>
6668
6669         * config/srclist.txt: track www changes in license files.
6670
6671 2007-06-20  Sergey Poznyakoff  <gray@gnu.org.ua>
6672
6673         * build-aux/bootstrap: Remove stray dot.
6674         Make sure build_aux settings are honored when linking
6675         gnulib_extra_files.
6676
6677 2007-06-19  Eric Blake  <ebb9@byu.net>
6678
6679         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
6680         Allow compilation on cygwin.
6681
6682 2007-06-19  Jim Meyering  <jim@meyering.net>
6683
6684         xreadlink-with-size: Remove module.  No longer used.
6685         Ex-callers now use xreadlink or mreadlink-with-size.
6686         * modules/xreadlink-with-size: Remove module.
6687         * lib/xreadlink-with-size.c: Remove file.
6688         * lib/xreadlink.h (xreadlink_with_size): Remove prototype.
6689         (xreadlink): Remove inaccurate comment.  The one in xreadlink.c,
6690         just before the function definition *is* accurate.
6691
6692         Eliminate one way canonicalize_filename_mode could exit.
6693         * lib/canonicalize.c (canonicalize_filename_mode):
6694         Use mreadlink_with_size, not xreadlink_with_size.
6695
6696 2007-06-18  Paul Eggert  <eggert@cs.ucla.edu>
6697
6698         Detect porting problems to FreeBSD/arm, which has time_t wider than
6699         long int.  Original problem reported for GNU diff by Xin Li in
6700         <http://lists.gnu.org/archive/html/bug-gnu-utils/2007-06/msg00091.html>.
6701         * modules/getdate (Depends-on): Add intprops, verify.
6702         * lib/getdate.y: Include intprops.h, verify.h.  Verify that time_t
6703         is an integer type no wider than long int.
6704
6705 2007-06-18  Jim Meyering  <jim@meyering.net>
6706
6707         New module: mreadlink-with-size.
6708         * MODULES.html.sh: Add mreadlink-with-size.
6709         * modules/mreadlink-with-size: New module
6710         * modules/canonicalize (Depends-on): Depend on mreadlink-with-size,
6711         not xreadlink-with-size.
6712         * lib/mreadlink-with-size.c, lib/mreadlink.h: New files.
6713
6714 2007-06-16  Bruno Haible  <bruno@clisp.org>
6715
6716         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Catch the MacOS X 10.4 bug.
6717         * doc/functions/frexpl.texi: Document the MacOS X 10.4 bug.
6718         Reported by Gary V. Vaughan <gary@gnu.org>.
6719
6720 2007-06-15  Paul Eggert  <eggert@cs.ucla.edu>
6721
6722         Revamp lchown so that it lives in unistd.h where it belongs.
6723         * lib/lchown.h: Remove.
6724         * lib/dirchownmod.c: Don't include lib/lchown.h.
6725         * lib/fchownat.c: Likewise.
6726         * lib/openat.c: Likewise.
6727         * lib/lchown.c (REPLACE_CHOWN): Define to 0 if the system chown
6728         does not follow symlinks.
6729         (EOPNOTSUPP): Define if not defined.
6730         * lib/unistd_.h (chown): Do not replace if REPLADE_CHOWN
6731         is defined to 0.
6732         (lchown): New decl.
6733         * m4/lchown.m4 (gl_FUNC_LCHOWN): Require gl_UNISTD_H_DEFAULTS.
6734         Do not check for lchown decl.
6735         Set REPLACE_LCHOWN.
6736         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Set GNULIB_LCHOWN,
6737         REPLACE_LCHOWN.
6738         * modules/chown: Make it clear it follows symlinks.
6739         * modules/lchown: Make it clear it doesn't follow symlinks.
6740         (Files): Remove lib/lchown.h
6741         (Depends-on): Add unistd.
6742         (configure.ac): Add gl_UNISTD_MODULE_INDICATOR([lchown]).
6743         (Include): Include <unistd.h>, not "lchown.h".
6744         * modules/unistd (unistd.h): Substitude GNULIB_LCHOWN and
6745         REPLACE_LCHOWN.
6746
6747 2007-06-15  Jim Meyering  <jim@meyering.net>
6748
6749         Change license (GPL to LGPL) of fsusage and dependents.
6750         * modules/fsusage (License): Change to LGPL.
6751         * modules/full-read (License): Likewise.
6752         * modules/full-write (License): Likewise.
6753         * modules/safe-read (License): Likewise.
6754         * modules/safe-write (License): Likewise.
6755
6756 2007-06-14  Ben Pfaff  <blp@gnu.org>
6757
6758         Missing part of allocsa -> malloca transition.
6759         * modules/relocatable-prog-wrapper: gl_ALLOCSA should be
6760         gl_MALLOCA.
6761
6762 2007-06-12  Bruno Haible  <bruno@clisp.org>
6763
6764         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Guess no when cross-compiling
6765         to ia64, x86_64, i386.
6766         Reported by Eric Blake.
6767
6768 2007-06-12  Bruno Haible  <bruno@clisp.org>
6769
6770         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Guess no also when
6771         cross-compiling to x86_64.
6772
6773 2007-06-12  Paul Eggert  <eggert@cs.ucla.edu>
6774
6775         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Fix POSIX sed portability
6776         glitch reported by Ralf Wildenhues in
6777         <http://lists.gnu.org/archive/html/bug-gnulib/2007-06/msg00114.html>.
6778
6779         * m4/regex.m4 (gl_REGEX): Catch a bug with [[:alnum:]_-] reported by
6780         Vin Shelton.
6781
6782 2007-06-11  Bruno Haible  <bruno@clisp.org>
6783
6784         * lib/printf-args.c (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Fix NULL
6785         replacement string.
6786         Reported by Eric Blake.
6787
6788 2007-06-10  Bruno Haible  <bruno@clisp.org>
6789
6790         Prepare vasnprintf code for use with Unicode strings.
6791         * lib/printf-args.h (PRINTF_FETCHARGS): New macro.
6792         (arg_type) [ENABLE_UNISTDIO]: Define TYPE_U8_STRING, TYPE_U16_STRING,
6793         TYPE_U32_STRING.
6794         (argument) [ENABLE_UNISTDIO]: Add a_u8_string, a_u16_string,
6795         a_u32_string variants.
6796         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
6797         * lib/printf-args.c: Don't include config.h and the specification
6798         header if PRINTF_FETCHARGS is already defined.
6799         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
6800         (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Add code for TYPE_U8_STRING,
6801         TYPE_U16_STRING, TYPE_U32_STRING.
6802         * lib/printf-parse.h [ENABLE_UNISTDIO] (u8_directive, u8_directives,
6803         u16_directive, u16_directives, u32_directive, u32_directives): New
6804         types.
6805         (ulc_printf_parse, u8_printf_parse, u16_printf_parse, u32_printf_parse):
6806         New declarations.
6807         * lib/printf-parse.c: Don't include config.h and the specification
6808         header if PRINTF_PARSE is already defined. Eliminate the set of
6809         parameters for WIDE_CHAR_VERSION; the user of this file must provide
6810         them now. Include c-ctype.h.
6811         (PRINTF_PARSE) [ENABLE_UNISTDIO]: Add code implementing the 'U'
6812         directive and CHAR_T_ONLY_ASCII.
6813         * lib/vasnprintf.c: Don't include config.h and the specification header
6814         if VASNPRINTF is already defined.
6815         (DCHAR_IS_TCHAR, DCHAR_CPY): New macros.
6816         (VASNPRINTF): Use PRINTF_FETCHARGS instead of printf_fetchargs. Use
6817         DCHAR_CPY. Handle the case that DCHAR_T and FCHAR_T are not the same
6818         type. Handle the case that TCHAR_T and FCHAR_T are not of the same
6819         size. Handle the case that DCHAR_T and TCHAR_T are not the same type,
6820         add a conversion from TCHAR_T[] to DCHAR_T[], and rework the padding
6821         code accordingly.
6822         (VASNPRINTF) [ENABLE_UNISTDIO]: Implement the 'U' directive. Enable
6823         pad_ourselves also in this case, with the 'c' and 's' directives, and
6824         with a different notion of "width".
6825         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): New macros.
6826
6827 2007-06-10  Bruno Haible  <bruno@clisp.org>
6828
6829         * modules/unistr/u32-mbsnlen: New file.
6830         * lib/unistr/u32-mbsnlen.c: New file.
6831
6832         * modules/unistr/u16-mbsnlen: New file.
6833         * lib/unistr/u16-mbsnlen.c: New file.
6834
6835         * modules/unistr/u8-mbsnlen: New file.
6836         * lib/unistr/u8-mbsnlen.c: New file.
6837
6838         * lib/unistr.h (u8_mbsnlen, u16_mbsnlen, u32_mbsnlen): New
6839         declarations.
6840
6841 2007-06-10  Bruno Haible  <bruno@clisp.org>
6842
6843         * lib/string_.h (mbsnlen): New declaration.
6844         * lib/mbsnlen.c: New file.
6845         * m4/mbsnlen.m4: New file.
6846         * modules/mbsnlen: New file.
6847         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Set GNULIB_MBSNLEN.
6848         * modules/string (string.h): Substitute GNULIB_MBSNLEN.
6849         * MODULES.html.sh (Internationalization functions): Add mbsnlen.
6850
6851 2007-06-10  Bruno Haible  <bruno@clisp.org>
6852
6853         * lib/mbslen.c: Include <stdlib.h>, needed for MB_CUR_MAX.
6854
6855 2007-06-10  Bruno Haible  <bruno@clisp.org>
6856
6857         * lib/mbiter.h: Include <stddef.h>, needed for ptrdiff_t.
6858         * lib/mbuiter.h: Likewise.
6859
6860 2007-06-10  Bruno Haible  <bruno@clisp.org>
6861
6862         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Check for _snprintf
6863         declaration.
6864
6865 2007-06-10  Karl Berry  <karl@gnu.org>
6866
6867         * config/srclist.txt: remove gettext entries, Bruno prefers
6868         to update individually.
6869
6870 2007-06-10  Bruno Haible  <bruno@clisp.org>
6871
6872         * lib/vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Remove variable
6873         'maxlen'. Ensure only length + width bytes are allocated, not
6874         length + 1 + width.
6875
6876 2007-06-09  Bruno Haible  <bruno@clisp.org>
6877
6878         * lib/vasnprintf.c (FCHAR_T, DCHAR_T, TCHAR_T): New macros.
6879         (CHAR_T): Remove macro.
6880         (VASNPRINTF): Update.
6881
6882 2007-06-09  Bruno Haible  <bruno@clisp.org>
6883
6884         * MODULES.html.sh (Unicode string functions): Add the new modules.
6885
6886         * modules/uniconv/u32-conv-to-enc: New file.
6887         * lib/uniconv/u32-conv-to-enc.c: New file.
6888         * modules/uniconv/u32-conv-to-enc-tests: New file.
6889         * tests/uniconv/test-u32-conv-to-enc.c: New file.
6890
6891         * modules/uniconv/u16-conv-to-enc: New file.
6892         * lib/uniconv/u16-conv-to-enc.c: New file.
6893         * lib/uniconv/u-conv-to-enc.h: New file.
6894         * modules/uniconv/u16-conv-to-enc-tests: New file.
6895         * tests/uniconv/test-u16-conv-to-enc.c: New file.
6896
6897         * modules/uniconv/u8-conv-to-enc: New file.
6898         * lib/uniconv/u8-conv-to-enc.c: New file.
6899         * modules/uniconv/u8-conv-to-enc-tests: New file.
6900         * tests/uniconv/test-u8-conv-to-enc.c: New file.
6901
6902         * lib/uniconv.h (u8_conv_to_encoding, u16_conv_to_encoding,
6903         u32_conv_to_encoding): New declarations.
6904
6905 2007-06-09  Bruno Haible  <bruno@clisp.org>
6906
6907         * tests/uniconv/test-u32-strconv-to-enc.c (main): Remove unused code.
6908
6909 2007-06-09  Bruno Haible  <bruno@clisp.org>
6910
6911         Rename 'allocsa' -> 'malloca', 'freesa' -> 'freea'.
6912         * modules/malloca: Renamed from modules/allocsa, updated.
6913         * lib/malloca.h: Renamed from lib/allocsa.h, updated.
6914         * lib/malloca.c: Renamed from lib/allocsa.c, updated.
6915         * lib/malloca.valgrind: Renamed from lib/allocsa.valgrind, updated.
6916         * m4/malloca.m4: Renamed from m4/allocsa.m4, updated.
6917         * modules/malloca-tests: Renamed from modules/allocsa-tests, updated.
6918         * tests/test-malloca.c: Renamed from tests/test-allocsa.c, updated.
6919         * modules/xmalloca: Renamed from modules/xallocsa, updated.
6920         * lib/xmalloca.h: Renamed from lib/xallocsa.h, updated.
6921         * lib/xmalloca.c: Renamed from lib/xallocsa.c, updated.
6922         * modules/c-strcasestr (Depends-on): Update.
6923         * lib/c-strcasestr.c: Update.
6924         * modules/c-strstr (Depends-on): Update.
6925         * lib/c-strstr.c: Update.
6926         * modules/canonicalize-lgpl (Depends-on): Update.
6927         * lib/canonicalize-lgpl.c: Update.
6928         * modules/clean-temp (Depends-on): Update.
6929         * lib/clean-temp.c: Update.
6930         * modules/csharpcomp (Depends-on): Update.
6931         * lib/csharpcomp.c: Update.
6932         * modules/csharpexec (Depends-on): Update.
6933         * lib/csharpexec.c: Update.
6934         * modules/javacomp (Depends-on): Update.
6935         * lib/javacomp.c: Update.
6936         * modules/javaexec (Depends-on): Update.
6937         * lib/javaexec.c: Update.
6938         * modules/mbscasestr (Depends-on): Update.
6939         * lib/mbscasestr.c: Update.
6940         * modules/mbsstr (Depends-on): Update.
6941         * lib/mbsstr.c: Update.
6942         * modules/setenv (Depends-on): Update.
6943         * lib/setenv.c: Update.
6944         * modules/strcasestr (Depends-on): Update.
6945         * lib/strcasestr.c: Update.
6946         * modules/striconveha (Depends-on): Update.
6947         * lib/striconveha.c: Update.
6948         * modules/relocatable-prog-wrapper (Files): Update.
6949         * lib/relocwrapper.c: Update.
6950         * build-aux/install-reloc: Update.
6951         * MODULES.html.sh (Memory management functions <stdlib.h>): Update.
6952
6953 2007-06-08  Bruno Haible  <bruno@clisp.org>
6954
6955         Port to uClibc.
6956         * lib/fbufmode.c (fbufmode): Add special code for uClibc.
6957         * lib/fpurge.c (fpurge): Likewise.
6958         * lib/freading.c (freading): Likewise.
6959         * lib/fseeko.c (rpl_fseeko): Likewise.
6960         * lib/fseterr.c (fseterr): Likewise.
6961         * lib/fwriting.c (fwriting): Likewise.
6962         * tests/test-fflush.c (main): Avoid a failure on uClibc.
6963
6964 2007-06-08  Bruno Haible  <bruno@clisp.org>
6965
6966         * m4/intlmacosx.m4: New file, extracted from gettext.m4.
6967         * m4/gettext.m4 (gt_INTL_MACOSX): Remove macro, moved to intlmacosx.m4.
6968         * modules/gettext (Files): Add m4/intlmacosx.m4.
6969
6970 2007-06-07  Bruno Haible  <bruno@clisp.org>
6971
6972         * modules/localename-tests: New file.
6973         * tests/test-localename.c: New file.
6974
6975         New module 'localename'.
6976         * lib/localename.h: New file.
6977         * lib/localename.c: New file, from GNU gettext.
6978         * m4/localename.m4: New file.
6979         * modules/localename: New file.
6980
6981 2007-06-07  Bruno Haible  <bruno@clisp.org>
6982
6983         Work around the lack of <wchar.h> on some builds of uClibc.
6984         * doc/headers/wchar.texi: Update.
6985         * lib/wchar_.h: Include <wchar.h> only if it exists.
6986         * m4/wchar.m4 (gl_WCHAR_H): Check for <wchar.h>. Set HAVE_WCHAR_H.
6987         * m4/stdint.m4 (gl_STDINT_H): Check for <wchar.h>.
6988         (gl_STDINT_TYPE_PROPERTIES): Don't try to include <wchar.h> if it
6989         doesn't exist.
6990         * modules/wchar (wchar.h): Substitute HAVE_WCHAR_H.
6991         * modules/mbfile (Depends-on): Add wchar.
6992         * modules/mbiter (Depends-on): Likewise.
6993         * modules/mbuiter (Depends-on): Likewise.
6994         Reported by Simon Josefsson.
6995
6996 2007-06-06  Paul Eggert  <eggert@cs.ucla.edu>
6997
6998         Work around problem reported by Steven M. Schweda in
6999         <http://lists.gnu.org/archive/html/bug-tar/2007-06/msg00002.html>:
7000         Tru64 5.1B with the Compaq compiler environment installed declares
7001         an 'isblank' function but does not define it in the C library.
7002         * lib/fnmatch.c (isblank): Check for HAVE_ISBLANK, too.
7003         * lib/regex_internal.h (isblank): Likewise.
7004         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for isblank existence.
7005         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
7006
7007 2007-06-05  Bruno Haible  <bruno@clisp.org>
7008
7009         Fix *printf so that it recognizes non-IEEE numbers on i386, x86_64,
7010         ia64.
7011         * modules/printf-safe: New file.
7012         * modules/fprintf-posix (Depends-on): Add printf-safe.
7013         * modules/printf-posix (Depends-on): Likewise.
7014         * modules/snprintf-posix (Depends-on): Likewise.
7015         * modules/sprintf-posix (Depends-on): Likewise.
7016         * modules/vasnprintf-posix (Depends-on): Likewise.
7017         * modules/vasprintf-posix (Depends-on): Likewise.
7018         * modules/vfprintf-posix (Depends-on): Likewise.
7019         * modules/vprintf-posix (Depends-on): Likewise.
7020         * modules/vsnprintf-posix (Depends-on): Likewise.
7021         * modules/vsprintf-posix (Depends-on): Likewise.
7022         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Require
7023         AC_C_BIGENDIAN. Define CHECK_PRINTF_SAFE if printf-safe is used. Test
7024         non-IEEE numbers on i386, x86_64, ia64. When cross-compiling, guess
7025         "no" on i386, x86_64, ia64.
7026         * tests/test-snprintf-posix.h (LDBL80_WORDS): New macro.
7027         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
7028         on i386, x86_64, ia64.
7029         * tests/test-sprintf-posix.h (LDBL80_WORDS): New macro.
7030         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
7031         on i386, x86_64, ia64.
7032         * tests/test-vasnprintf-posix.c: Include float.h.
7033         (LDBL80_WORDS): New macro.
7034         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
7035         on i386, x86_64, ia64.
7036         * tests/test-vasprintf-posix.c: Include float.h.
7037         (LDBL80_WORDS): New macro.
7038         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
7039         on i386, x86_64, ia64.
7040         * tests/test-snprintf-posix.c: Include float.h.
7041         * tests/test-sprintf-posix.c: Likewise.
7042         * tests/test-vsnprintf-posix.c: Likewise.
7043         * tests/test-vsprintf-posix.c: Likewise.
7044
7045 2007-06-05  Bruno Haible  <bruno@clisp.org>
7046
7047         Fix isnanl so that it recognizes non-IEEE numbers on i386, x86_64, ia64.
7048         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Require AC_C_BIGENDIAN. Test
7049         non-IEEE numbers on i386, x86_64, ia64.
7050         (gl_LONG_DOUBLE_EXPONENT_LOCATION): Require AC_C_BIGENDIAN.
7051         * lib/isnan.c (FUNC): Add special code for i386, x86_64, ia64.
7052         * tests/test-isnanl.h: Include float.h.
7053         (main): Check also non-IEEE numbers on i386, x86_64, ia64.
7054
7055 2007-06-05  Bruno Haible  <bruno@clisp.org>
7056
7057         * lib/vasnprintf.c (VASNPRINTF): Do the extra handling of NaN and Inf
7058         also the %a / %A. Handle the %a / %A code before this extra handling.
7059
7060 2007-06-05  Bruno Haible  <bruno@clisp.org>
7061
7062         * lib/vasnprintf.c [NEED_PRINTF_LONG_DOUBLE ||
7063         NEED_PRINTF_INFINITE_LONG_DOUBLE]: Include fpucw.h.
7064
7065 2007-06-05  Bruno Haible  <bruno@clisp.org>
7066
7067         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): Fix
7068         typo in variable name.
7069
7070 2007-06-05  Eric Blake  <ebb9@byu.net>
7071
7072         * m4/lseek.m4 (gl_FUNC_LSEEK): Work when cross-compiling.
7073         Reported by Simon Josefsson.
7074
7075 2007-06-04  Bruno Haible  <bruno@clisp.org>
7076
7077         Avoid test failures on some PowerPC platforms.
7078         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP):
7079         Define differently for PowerPC.
7080         * tests/test-frexpl.c (MIN_NORMAL_EXP): Likewise.
7081         Reported by Gary V. Vaughan <gary@gnu.org>.
7082
7083 2007-06-02  Bruno Haible  <bruno@clisp.org>
7084
7085         Fix test-stdint failure on FreeBSD/ia64.
7086         * m4/stdint.m4 (gl_STDINT_H): Check the values of PTRDIFF_MIN,
7087         PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN,
7088         WCHAR_MAX, WINT_MIN, WINT_MAX entirely, not only for plausibility.
7089         * doc/headers/stdint.texi: Update.
7090
7091 2007-06-01  Bruno Haible  <bruno@clisp.org>
7092
7093         * tests/test-binary-io.c (main): Pass a third argument to open().
7094         Reported by Gary V. Vaughan <gary@gnu.org>.
7095
7096 2007-06-01  Bruno Haible  <bruno@clisp.org>
7097
7098         * doc/functions/frexpl.texi: Update for mingw.
7099
7100 2007-06-01  Bruno Haible  <bruno@clisp.org>
7101
7102         * tests/test-lseek.c (main): Disable test of errno for invalid third
7103         argument.
7104         * doc/functions/lseek.texi: Update.
7105         Reported by Gary V. Vaughan <gary@gnu.org>.
7106
7107 2007-05-28  Bruno Haible  <bruno@clisp.org>
7108
7109         * m4/intl.m4 (AM_INTL_SUBDIR): Substitute variables WOE32, WINDRES.
7110
7111 2007-05-31  Eric Blake  <ebb9@byu.net>
7112
7113         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Guess no on mingw when
7114         cross compiling.
7115
7116 2007-05-30  Eric Blake  <ebb9@byu.net>
7117         and Bruno Haible  <bruno@clisp.org>
7118
7119         Work around mingw test failures exposed by m4-1.4.9b.
7120         * m4/stdint.m4 (gl_STDINT_H): Detect mingw bug.
7121         * tests/test-unistd.c: Disable uid_t and git_t tests for the
7122         moment.
7123
7124 2007-05-30  Bruno Haible  <bruno@clisp.org>
7125
7126         * tests/test-lseek.c: Explicitly close file descriptors 0 and 1 before
7127         assuming that they are closed. Needed on HP-UX 11.
7128
7129 2007-05-29  Bruno Haible  <bruno@clisp.org>
7130
7131         Fix a problem with #include_next.
7132         * lib/dirent_.h: Split the double-inclusion guard.
7133         * lib/fcntl_.h: Likewise.
7134         * lib/float_.h: Likewise.
7135         * lib/iconv_.h: Likewise.
7136         * lib/inttypes_.h: Likewise.
7137         * lib/locale_.h: Likewise.
7138         * lib/math_.h: Likewise.
7139         * lib/netinet_in_.h: Likewise.
7140         * lib/search_.h: Likewise.
7141         * lib/signal_.h: Likewise.
7142         * lib/stdint_.h: Likewise.
7143         * lib/stdio_.h: Likewise.
7144         * lib/stdlib_.h: Likewise.
7145         * lib/string_.h: Likewise.
7146         * lib/sys_select_.h: Likewise.
7147         * lib/sys_socket_.h: Likewise.
7148         * lib/sys_stat_.h: Likewise.
7149         * lib/sys_time_.h: Likewise.
7150         * lib/sysexits_.h: Likewise.
7151         * lib/time_.h: Likewise.
7152         * lib/unistd_.h: Likewise.
7153         * lib/wchar_.h: Likewise.
7154         * lib/wctype_.h: Likewise.
7155
7156 2007-05-29  Bruno Haible  <bruno@clisp.org>
7157
7158         * tests/test-unistd.c: Disable the tests for useconds_t and intptr_t
7159         for the moment.
7160
7161 2007-05-29  Bruno Haible  <bruno@clisp.org>
7162
7163         * m4/isnan.m4 (gl_DOUBLE_EXPONENT_LOCATION): Silence the AC_C_BIGENDIAN
7164         invocation.
7165         Reported by Eric Blake.
7166
7167 2007-05-29  Bruno Haible  <bruno@clisp.org>
7168
7169         * m4/isnanf.m4 (gl_FLOAT_EXPONENT_LOCATION): Fix typo in cross-
7170         compiling case.
7171
7172 2007-05-29  Eric Blake  <ebb9@byu.net>
7173             Bruno Haible  <bruno@clisp.org>
7174
7175         * m4/isnanf.m4 (gl_FUNC_ISNANF_NO_LIBM): Avoid syntax error on
7176         cross compiles.
7177
7178 2007-05-28  Eric Blake  <ebb9@byu.net>
7179
7180         * modules/closein-tests (test_closein_LDADD): Support test on
7181         cygwin with libtool.
7182
7183 2007-05-28  Bruno Haible  <bruno@clisp.org>
7184
7185         * tests/uniconv/test-u16-conv-from-enc.c: Remove #ifdef HAVE_CONFIG_H.
7186         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
7187         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
7188         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
7189         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
7190         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
7191         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
7192         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
7193         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
7194
7195 2007-05-28  Eric Blake  <ebb9@byu.net>
7196
7197         Unconditionally include <config.h> in unit tests.
7198         * tests/test-alloca-opt.c: Remove #ifdef HAVE_CONFIG_H.
7199         * tests/test-allocsa.c, tests/test-arcfour.c,
7200         tests/test-arctwo.c, tests/test-argmatch.c, tests/test-argp.c,
7201         tests/test-array_list.c, tests/test-array_oset.c,
7202         tests/test-atexit.c, test-avltree_list.c, test-avltree_oset.c,
7203         test-avltreehash_list.c, test-base64.c, test-binary-io.c,
7204         test-c-ctype.c, test-c-strcasecmp.c, test-c-strcasestr.c,
7205         test-c-strncasecmp.c, test-c-strstr.c, test-canonicalize-lgpl.c,
7206         test-carray_list.c, test-crc.c, test-des.c, test-dirname.c,
7207         test-fflush.c, test-fprintf-posix.c, test-gc-arcfour.c,
7208         test-gc-arctwo.c, test-gc-des.c, test-gc-hmac-md5.c,
7209         test-gc-hmac-sha1.c, test-gc-md2.c, test-gc-md4.c, test-gc-md5.c,
7210         test-gc-pbkdf2-sha1.c, test-gc-rijndael.c, test-gc-sha1.c,
7211         test-gc.c, test-getpass.c, test-hmac-md5.c, test-hmac-sha1.c,
7212         test-iconv.c, test-linked_list.c, test-linkedhash_list.c,
7213         test-lock.c, test-mbscasecmp.c, test-mbscasestr1.c,
7214         test-mbscasestr2.c, test-mbscasestr3.c, test-mbscasestr4.c,
7215         test-mbschr.c, test-mbscspn.c, test-mbsncasecmp.c, test-mbspbrk.c,
7216         test-mbspcasecmp.c, test-mbsrchr.c, test-mbsspn.c, test-mbsstr1.c,
7217         test-mbsstr2.c, test-mbsstr3.c, test-md2.c, test-md4.c,
7218         test-md5.c, test-memmem.c, test-printf-posix.c,
7219         test-rbtree_list.c, test-rbtree_oset.c, test-rbtreehash_list.c,
7220         test-read-file.c, test-rijndael.c, test-snprintf-posix.c,
7221         test-snprintf.c, test-sprintf-posix.c, test-stdint.c,
7222         test-strcasestr.c, test-striconv.c, test-striconveh.c,
7223         test-striconveha.c, test-tls.c, test-vasnprintf-posix.c,
7224         test-vasnprintf-posix2.c, test-vasnprintf.c,
7225         test-vasprintf-posix.c, test-vasprintf.c, test-verify.c,
7226         test-vfprintf-posix.c, test-vprintf-posix.c,
7227         test-vsnprintf-posix.c, test-vsnprintf.c, test-vsprintf-posix.c,
7228         test-xvasprintf.c: Likewise.
7229
7230 2007-05-28  Bruno Haible  <bruno@clisp.org>
7231
7232         * gnulib-tool (func_import): Remember the --with-tests command-line
7233         option through the macro gl_WITH_TESTS in the gnulib-cache.m4.
7234         Reported by Eric Blake.
7235
7236 2007-05-28  Bruno Haible  <bruno@clisp.org>
7237
7238         * modules/ftell-tests: New file.
7239         * tests/test-ftell.c: New file, based on tests/test-ftello.c.
7240         * tests/test-ftell.sh: New file, based on tests/test-ftello.sh.
7241
7242         * lib/ftell.c: New file.
7243         * modules/ftell: New file.
7244         * m4/ftell.m4: New file.
7245         * doc/functions/ftell.texi: Update.
7246         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELL,
7247         REPLACE_FTELL.
7248         * lib/stdio_.h (rpl_ftell): New declaration.
7249         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELL,
7250         REPLACE_FTELL.
7251
7252 2007-05-28  Eric Blake  <ebb9@byu.net>
7253
7254         * lib/allocsa.h (safe_alloca): Avoid compiler warning.
7255
7256 2007-05-28  Bruno Haible  <bruno@clisp.org>
7257
7258         * modules/fseek-tests: New file.
7259         * tests/test-fseek.c: New file, based on tests/test-fseeko.c.
7260         * tests/test-fseek.sh: New file, based on tests/test-fseeko.sh.
7261
7262         * lib/fseek.c: New file.
7263         * modules/fseek: New file.
7264         * m4/fseek.m4: New file.
7265         * doc/functions/fseek.texi: Update.
7266         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEK,
7267         REPLACE_FSEEK.
7268         * lib/stdio_.h (rpl_fseek): New declaration.
7269         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEK,
7270         REPLACE_FSEEK.
7271
7272 2007-05-28  Bruno Haible  <bruno@clisp.org>
7273
7274         * lib/stdio_.h (fflush): More comments.
7275
7276 2007-05-28  Bruno Haible  <bruno@clisp.org>
7277
7278         * m4/lseek.m4 (gl_FUNC_LSEEK): When not cross-compiling, perform a real
7279         runtime test.
7280
7281 2007-05-28  Eric Blake  <ebb9@byu.net>
7282
7283         Improve lseek module.
7284         * lib/lseek.c (rpl_lseek): Detect EBADF on mingw.
7285         * lib/unistd_.h (lseek): Scale back link warning message.
7286         * tests/test-lseek.c: Beef up test.
7287         * tests/test-lseek.sh: Exercise more facets of lseek.
7288         Reported by Bruno Haible.
7289
7290 2007-05-28  Bruno Haible  <bruno@clisp.org>
7291
7292         * tests/test-unistd.c: Test all the types that <unistd.h> is expected
7293         to define.
7294
7295 2007-05-27  Bruno Haible  <bruno@clisp.org>
7296
7297         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-31 patch.
7298
7299 2007-05-27  Bruno Haible  <bruno@clisp.org>
7300
7301         * modules/openmp: New file.
7302         * m4/openmp.m4: New file, taken from autoconf's CVS with changes by
7303         Noah Misch.
7304
7305 2007-05-26  Bruno Haible  <bruno@clisp.org>
7306
7307         * modules/chdir-long (Depends-on): Add fchdir.
7308         * modules/chdir-safer (Depends-on): Likewise.
7309         * modules/fts (Depends-on): Likewise.
7310         * modules/fts-lgpl (Depends-on): Likewise.
7311         * modules/openat (Depends-on): Likewise.
7312         * modules/savewd (Depends-on): Likewise.
7313
7314 2007-05-24  Eric Blake  <ebb9@byu.net>
7315
7316         Fix lseek on mingw.
7317         * modules/lseek: New module.
7318         * m4/lseek.m4: New file.
7319         * lib/lseek.c: New file.
7320         * modules/lseek-tests: New file.
7321         * tests/test-lseek.c: New file.
7322         * tests/test-lseek.sh: New file.
7323         * MODULES.html.sh: Document lseek module.
7324         * modules/fflush (Depends-on): Add lseek, fseeko.
7325         * modules/fseeko (Depends-on): Likewise.
7326         * modules/ftello (Depends-on): Likewise.
7327         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Replace fseek[o] if lseek is
7328         broken.
7329         * m4/ftello.m4 (gl_FUNC_FTELLO): Replace ftell[o] if lseek is
7330         broken.
7331         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Trigger fseeko module.
7332         * lib/fseeko.c (rpl_fseeko): Quit early on non-seekable files.
7333         * lib/ftello.c (rpl_ftello): Likewise.
7334         * tests/test-fseeko.c (main): Test this.
7335         * tests/test-fseeko.sh: Likewise.
7336         * tests/test-ftello.c (main): Likewise.
7337         * tests/test-ftello.sh: Likewise.
7338         * lib/stdio_.h (fseek, ftell): Simplify, since missing fseeko now
7339         implies replacing fseek.
7340         * modules/stdio (Makefile.am): No longer need HAVE_FSEEKO,
7341         HAVE_FTELLO.
7342         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add lseek info.
7343         * modules/unistd (Makefile.am): Likewise.
7344         * lib/unistd_.h (lseek): Declare a replacement.
7345         * doc/functions/lseek.texi (lseek): Document this fix.
7346         * doc/functions/fseek.texi (fseek): Likewise.
7347         * doc/functions/ftell.texi (ftell): Likewise.
7348
7349 2007-05-24  Bruno Haible  <bruno@clisp.org>
7350
7351         * tests/test-vasnprintf-posix.c (test_function): Allow up to 50 bytes
7352         in the printed representation of a NaN.
7353         * tests/test-vasprintf-posix.c (test_function): Likewise.
7354         * tests/test-snprintf-posix.h (test_function): Likewise.
7355         * tests/test-sprintf-posix.h (test_function): Likewise.
7356         Reported by Eric Blake.
7357
7358 2007-05-23  Eric Blake  <ebb9@byu.net>
7359
7360         Fix fseeko/ftello on cygwin 1.5.24.
7361         * doc/functions/fseeko.texi (fseeko): Document the fix.
7362         * doc/functions/ftello.texi (ftello): Document the fix.
7363         * doc/functions/stdin.texi (stdin): Document the cygwin bug.
7364         * doc/functions/stdout.text (stdout): New file.
7365         * doc/functions/stderr.text (stderr): New file.
7366         * doc/gnulib.texi (Function Substitutes): Use new files.
7367         * tests/test-fseeko.c (main): Check for broken fseeko on cygwin
7368         prior to 1.7.0.
7369         * tests/test-ftello.c (main): Likewise for ftello.
7370         * tests/test-fseeko.sh: New file.
7371         * tests/test-ftello.sh: New file.
7372         * modules/fseeko-tests (Makefile.am): Ensure test-fseeko is run
7373         with seekable stdin.
7374         * modules/ftello-tests (Makefile.am): Likewise for test-ftello.
7375         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Detect the cygwin bug.
7376         (gl_REPLACE_FSEEKO): New macro.
7377         * m4/ftello.m4 (gl_FUNC_FTELLO, gl_REPLACE_FTELLO): Likewise.
7378         * modules/fseeko (Files): Distribute fseeko.c.
7379         * modules/ftello (Files): Distribute ftello.c.
7380         * lib/fseeko.c (rpl_fseeko) [__CYGWIN__]: Convert stdin to 64-bit
7381         mode.
7382         * lib/ftello.c (rpl_ftello): New file.
7383         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Allow replacement of
7384         fseeko, ftello.
7385         (gl_STDIN_LARGE_OFFSET): New macro.
7386         * modules/stdio (Makefile.am): Perform the replacement.
7387         * lib/stdio_.h (rpl_fseeko, rpl_ftello): Define when needed.
7388
7389 2007-05-23  Bruno Haible  <bruno@clisp.org>
7390
7391         * lib/stdio_.h (fseeko, ftello): Provide a link warning only if
7392         GNULIB_POSIXCHECK is defined.
7393
7394 2007-05-21  Bruno Haible  <bruno@clisp.org>
7395
7396         * m4/printf.m4 (gl_PRINTF_INFINITE, gl_PRINTF_INFINITE_LONG_DOUBLE):
7397         Check also the output for NaN arguments. When cross-compiling, guess
7398         no on IRIX.
7399         * lib/vasnprintf.c: Update comments.
7400         * tests/test-vasnprintf-posix.c (strisnan): New function.
7401         (test_function): Use it.
7402         * tests/test-vasprintf-posix.c (strisnan): New function.
7403         (test_function): Use it.
7404         * tests/test-snprintf-posix.h (strisnan): New function.
7405         (test_function): Use it.
7406         * tests/test-sprintf-posix.h (strisnan): New function.
7407         (test_function): Use it.
7408         Reported by Eric Blake.
7409
7410 2007-05-20  Bruno Haible  <bruno@clisp.org>
7411
7412         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Add test for large finite
7413         numbers that fails on BeOS.
7414         * doc/functions/frexpl.texi: Update.
7415
7416 2007-05-20  Jim Meyering  <jim@meyering.net>
7417
7418         * NEWS: Mention the incompatible change (s/futimens/gl_futimens/)
7419         forced upon us by glibc-2.6.
7420
7421 2007-05-20  Bruno Haible  <bruno@clisp.org>
7422
7423         Fix *printf result for NaN, Inf on AIX, Solaris, OSF/1.
7424         * m4/printf.m4 (gl_PRINTF_INFINITE): Update cross-compiling guesses.
7425         (gl_PRINTF_INFINITE_LONG_DOUBLE): New macro.
7426         * lib/vasnprintf.c: Use NEED_PRINTF_INFINITE_DOUBLE instead of
7427         NEED_PRINTF_INFINITE.
7428         (is_infinitel): New function.
7429         (VASNPRINTF): Handle NEED_PRINTF_INFINITE_LONG_DOUBLE case.
7430         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE): Renamed from
7431         gl_PREREQ_VASNPRINTF_INFINITE.
7432         (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): New macro.
7433         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
7434         gl_PRINTF_INFINITE_LONG_DOUBLE and test its result. Invoke
7435         gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE and
7436         gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE instead of
7437         gl_PREREQ_VASNPRINTF_INFINITE.
7438         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
7439         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
7440         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
7441         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
7442         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
7443         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
7444         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
7445         * doc/functions/fprintf.texi: Update.
7446         * doc/functions/printf.texi: Update.
7447         * doc/functions/snprintf.texi: Update.
7448         * doc/functions/sprintf.texi: Update.
7449         * doc/functions/vfprintf.texi: Update.
7450         * doc/functions/vprintf.texi: Update.
7451         * doc/functions/vsnprintf.texi: Update.
7452         * doc/functions/vsprintf.texi: Update.
7453
7454 2007-05-20  Bruno Haible  <bruno@clisp.org>
7455
7456         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): Set REPLACE_FREXPL if frexpl
7457         was not found in libc.
7458         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Likewise.
7459
7460 2007-05-20  Bruno Haible  <bruno@clisp.org>
7461
7462         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
7463         printed as "-nan" instead of "nan".
7464         * tests/test-vasprintf-posix.c (test_function): Likewise.
7465         * tests/test-snprintf-posix.h (test_function): Likewise.
7466         * tests/test-sprintf-posix.h (test_function): Likewise.
7467         Needed for HP-UX 11.
7468
7469 2007-05-20  Jim Meyering  <jim@meyering.net>
7470
7471         Fix buggy test for the fchownat-deref bug.
7472         * m4/openat.m4 (gl_FUNC_FCHOWNAT_DEREF_BUG): Create the dangling
7473         symlink required for the run-test.  Without it, this test would
7474         always declare that fchownat doesn't work, and client code would
7475         unnecessarily use the replacement function with fixed libc.
7476         (gl_FUNC_FCHOWNAT): Eliminate a variable that wasn't initialized.
7477         Reported by Greg Schafer.
7478
7479 2007-05-19  Bruno Haible  <bruno@clisp.org>
7480
7481         * m4/isnanf.m4 (gl_ISNANF_WORKS): New macro.
7482         (gl_FUNC_ISNANF_NO_LIBM): Invoke it.
7483         * lib/isnan.c (FUNC): Use run-time expressions for SGI compiler.
7484         Needed for IRIX 6.5 and Solaris 2.5.1.
7485
7486 2007-05-19  Bruno Haible  <bruno@clisp.org>
7487
7488         * tests/test-vasnprintf-posix.c (have_minus_zero): New function.
7489         (test_function): Skip tests involving -0.0 on platforms where
7490         -0.0 = 0.0.
7491         * tests/test-vasprintf-posix.c (have_minus_zero): New function.
7492         (test_function): Skip tests involving -0.0 on platforms where
7493         -0.0 = 0.0.
7494         * tests/test-snprintf-posix.h (have_minus_zero): New function.
7495         (test_function): Skip tests involving -0.0 on platforms where
7496         -0.0 = 0.0.
7497         * tests/test-sprintf-posix.h (have_minus_zero): New function.
7498         (test_function): Skip tests involving -0.0 on platforms where
7499         -0.0 = 0.0.
7500         * tests/test-fprintf-posix.h (test_function): Remove all -0.0 related
7501         tests.
7502         * tests/test-printf-posix.h (test_function): Likewise.
7503         * tests/test-printf-posix.output: Remove all -0.0 related results.
7504         Needed for IRIX 6.5.
7505
7506 2007-05-19  Bruno Haible  <bruno@clisp.org>
7507
7508         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
7509         printed as "nan0x7fffffff" instead of "nan".
7510         * tests/test-vasprintf-posix.c (test_function): Likewise.
7511         * tests/test-snprintf-posix.h (test_function): Likewise.
7512         * tests/test-sprintf-posix.h (test_function): Likewise.
7513         * tests/test-fprintf-posix.h (NaN): Remove macro.
7514         (test_function): Remove all NaN related tests.
7515         * tests/test-printf-posix.h (NaN): Remove macro.
7516         (test_function): Remove all NaN related tests.
7517         * tests/test-printf-posix.output: Remove all NaN related results.
7518         Needed for IRIX 6.5.
7519
7520 2007-05-19  Bruno Haible  <bruno@clisp.org>
7521
7522         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Fix C89 syntax error in test code.
7523         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Likewise.
7524
7525 2007-05-19  Bruno Haible  <bruno@clisp.org>
7526
7527         * lib/float_.h: New file.
7528         * m4/float_h.m4: New file.
7529         * modules/float: New file.
7530         * modules/isnanl (Dependencies): Add float.
7531         * modules/isnanl-nolibm (Dependencies): Likewise.
7532         * modules/mathl (Dependencies): Likewise.
7533         * modules/printf-frexpl (Dependencies): Likewise.
7534         * modules/signbit (Dependencies): Likewise.
7535         * modules/vasnprintf (Dependencies): Likewise.
7536         * doc/headers/float.texi: Update.
7537
7538 2007-05-19  Jim Meyering  <jim@meyering.net>
7539
7540         * lib/utimens.c (gl_futimens): Rename from futimens,
7541         now that glibc-2.6 declares futimens.
7542         * lib/utimens.h: Likewise.
7543
7544 2007-05-19  Bruno Haible  <bruno@clisp.org>
7545
7546         Avoid test failures on mingw.
7547         * tests/test-fprintf-posix.sh: Convert CR/LF to LF in output.
7548         * tests/test-printf-posix.sh: Likewise.
7549         * tests/test-vfprintf-posix.sh: Likewise.
7550         * tests/test-vprintf-posix.sh: Likewise.
7551
7552 2007-05-19  Bruno Haible  <bruno@clisp.org>
7553
7554         Fix *printf result for NaN, Inf, -0.0 on mingw.
7555         * m4/printf.m4 (gl_PRINTF_INFINITE): New macro.
7556         * lib/vasnprintf.c: Include math.h and isnan.h.
7557         (is_infinite_or_zero): New function.
7558         (VASNPRINTF): Fix also the handling of infinite or zero 'double'
7559         values in the %f, %F, %e, %E, %g, %G directives.
7560         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE): New macro.
7561         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
7562         gl_PRINTF_INFINITE and test its result. Invoke
7563         gl_PREREQ_VASNPRINTF_INFINITE.
7564         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
7565         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
7566         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
7567         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
7568         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
7569         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
7570         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
7571         * doc/functions/fprintf.texi: Update.
7572         * doc/functions/printf.texi: Update.
7573         * doc/functions/snprintf.texi: Update.
7574         * doc/functions/sprintf.texi: Update.
7575         * doc/functions/vfprintf.texi: Update.
7576         * doc/functions/vprintf.texi: Update.
7577         * doc/functions/vsnprintf.texi: Update.
7578         * doc/functions/vsprintf.texi: Update.
7579
7580 2007-05-19  Bruno Haible  <bruno@clisp.org>
7581
7582         * lib/vasnprintf.c (convert_to_decimal): Add an extra_zeroes argument.
7583         (scale10_round_decimal_long_double): Inline scale10_round_long_double.
7584         Instead of multiplying with 10^k, set extra_zeroes to k.
7585         (scale10_round_long_double): Remove function.
7586
7587 2007-05-18  Bruno Haible  <bruno@clisp.org>
7588
7589         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Fix logic bug
7590         introduced on 2007-05-06.
7591
7592 2007-05-18  Bruno Haible  <bruno@clisp.org>
7593
7594         * tests/test-vasnprintf-posix.c (test_function): Also test the %e and
7595         %g directives.
7596         * tests/test-vasprintf-posix.c (test_function): Likewise.
7597         * tests/test-snprintf-posix.h (test_function): Likewise.
7598         * tests/test-sprintf-posix.h (test_function): Likewise.
7599
7600 2007-05-18  Bruno Haible  <bruno@clisp.org>
7601
7602         * tests/test-vasnprintf-posix.c (SIZEOF): New macro.
7603         (strmatch): New function.
7604         (test_function): Test the %f directive on numbers of various exponents.
7605         * tests/test-vasprintf-posix.c (SIZEOF): New macro.
7606         (strmatch): New function.
7607         (test_function): Test the %f directive on numbers of various exponents.
7608         * tests/test-snprintf-posix.h (strmatch): New function.
7609         (test_function): Test the %f directive on numbers of various exponents.
7610         * tests/test-sprintf-posix.h (strmatch): New function.
7611         (test_function): Test the %f directive on numbers of various exponents.
7612         * tests/test-snprintf-posix.c (SIZEOF): New macro.
7613         * tests/test-sprintf-posix.c (SIZEOF): New macro.
7614         * tests/test-vsnprintf-posix.c (SIZEOF): New macro.
7615         * tests/test-vsprintf-posix.c (SIZEOF): New macro.
7616
7617 2007-05-18  Bruno Haible  <bruno@clisp.org>
7618
7619         Add support for 'long double' number output.
7620         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE): New macro.
7621         * lib/vasnprintf.c: Include math.h and float+.h.
7622         (mp_limb_t): New type.
7623         (GMP_LIMB_BITS): New macro.
7624         (mp_twolimb_t): New type.
7625         (GMP_TWOLIMB_BITS): New macro.
7626         (mpn_t): New type.
7627         (multiply, divide, convert_to_decimal, decode_long_double,
7628         scale10_round_long_double, scale10_round_decimal_long_double,
7629         floorlog10l): New functions.
7630         (VASNPRINTF) [NEED_PRINTF_LONG_DOUBLE]: Implement 'long double' support
7631         for the %f, %F, %e, %E, %g, %G directives.
7632         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_LONG_DOUBLE): New macro.
7633         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
7634         gl_PRINTF_LONG_DOUBLE and test its result. Invoke
7635         gl_PREREQ_VASNPRINTF_LONG_DOUBLE.
7636         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
7637         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
7638         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
7639         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
7640         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
7641         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
7642         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
7643         * modules/fprintf-posix (Depends-on): Add frexpl-nolibm.
7644         * modules/snprintf-posix (Depends-on): Likewise.
7645         * modules/sprintf-posix (Depends-on): Likewise.
7646         * modules/vasnprintf-posix (Depends-on): Likewise.
7647         * modules/vasprintf-posix (Depends-on): Likewise.
7648         * modules/vfprintf-posix (Depends-on): Likewise.
7649         * modules/vsnprintf-posix (Depends-on): Likewise.
7650         * modules/vsprintf-posix (Depends-on): Likewise.
7651         * modules/vasnprintf (Files): Add lib/float+.h.
7652         * doc/functions/fprintf.texi: Update.
7653         * doc/functions/printf.texi: Update.
7654         * doc/functions/snprintf.texi: Update.
7655         * doc/functions/sprintf.texi: Update.
7656         * doc/functions/vfprintf.texi: Update.
7657         * doc/functions/vprintf.texi: Update.
7658         * doc/functions/vsnprintf.texi: Update.
7659         * doc/functions/vsprintf.texi: Update.
7660
7661 2007-05-18  Bruno Haible  <bruno@clisp.org>
7662
7663         * lib/vasnprintf.c (USE_SNPRINTF): Define to 0 on BeOS.
7664
7665 2007-05-18  Bruno Haible  <bruno@clisp.org>
7666
7667         * lib/vasnprintf.c (VASNPRINTF) [WIN32]: Use %I64d instead of %lld
7668         for printing 64-bit integers. Needed for mingw.
7669
7670 2007-05-18  Bruno Haible  <bruno@clisp.org>
7671
7672         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
7673         gl_FUNC_FREXPL_WORKS.
7674         * modules/printf-frexpl (Files): Add m4/frexpl.m4.
7675
7676 2007-05-18  Bruno Haible  <bruno@clisp.org>
7677
7678         * modules/frexpl-nolibm-tests: New file.
7679
7680         * modules/frexpl-nolibm: New file.
7681         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): New macro.
7682
7683 2007-05-17  Paul Eggert  <eggert@cs.ucla.edu>
7684
7685         * lib/dirent_.h: Prefer #include_next <foo.h> to #include
7686         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
7687         GCC 4.2, which otherwise issues a lot of warnings.
7688         * lib/iconv_.h, lib/locale_.h, lib/netinet_in_.h, lib/sys_select_.h:
7689         * lib/sys_socket_.h, lib/sys_stat_.h, lib/sysexits_.h, lib/unistd_.h:
7690         Likewise.
7691         * modules/fchdir (dirent.h): Substitute @HAVE_INCLUDE_NEXT@.
7692         * modules/iconv_open (iconv.h): Likewise.
7693         * modules/locale (locale.h): Likewise.
7694         * modules/netinet_in (netinet/in.h): Likewise.
7695         * modules/sys_select (sys_select.h): Likewise.
7696         * modules/sys_socket (sys/socket.h): Likewise.
7697         * modules/sys_stat (sys/stat.h): Likewise.
7698         * modules/sysexits (sysexits.h): Likewise.
7699         * modules/unistd (unistd.h): Likewise.
7700
7701 2007-05-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7702
7703         * modules/closein-tests (Makefile.am): Distribute
7704         `test-closein.sh'.
7705
7706 2007-05-17  Bruno Haible  <bruno@clisp.org>
7707
7708         * tests/test-printf-posix.output: Renamed from
7709         tests/test-fprintf-posix.out.
7710         * modules/fprintf-posix-tests: Update.
7711         * modules/printf-posix-tests: Update.
7712         * modules/vfprintf-posix-tests: Update.
7713         * modules/vprintf-posix-tests: Update.
7714         * tests/test-fprintf-posix.sh: Update.
7715         * tests/test-printf-posix.sh: Update.
7716         * tests/test-vfprintf-posix.sh: Update.
7717         * tests/test-vprintf-posix.sh: Update.
7718         Reported by Ralf Wildenhues.
7719
7720 2007-05-16  Paul Eggert  <eggert@cs.ucla.edu>
7721
7722         * lib/fcntl_.h: Prefer #include_next <foo.h> to #include
7723         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
7724         GCC 4.2, which otherwise issues a lot of warnings.
7725         * lib/inttypes_.h, lib/math_.h, lib/search_.h, lib/signal_.h:
7726         * lib/stdint_.h, lib/stdio_.h, lib/stdlib_.h, lib/string_.h:
7727         * lib/sys_time_.h, lib/time_.h, lib/wchar_.h, lib/wctype_.h: Likewise.
7728         * lib/stdlib_.h: Don't bother with #pragma GCC system_header, as
7729         it should no longer be needed.
7730         * lib/string_.h: Likewise.
7731         * modules/absolute-header (HAVE_INCLUDE_NEXT): New 'make' define.
7732         * modules/fcntl (fcntl.h): Substitute @HAVE_INCLUDE_NEXT@.
7733         * modules/inttypes (inttypes.h): Likewise.
7734         * modules/math (math.h): Likewise.
7735         * modules/search (search.h): Likewise.
7736         * modules/signal (signal.h): Likewise.
7737         * modules/stdint (stdint.h): Likewise.
7738         * modules/stdio (stdio.h): Likewise.
7739         * modules/stdlib (stdlib.h): Likewise.
7740         * modules/string (string.h): Likewise.
7741         * modules/sys_time (sys/time.h): Likewise.
7742         * modules/time (time.h): Likewise.
7743         * modules/wchar (wchar.h): Likewise.
7744         * modules/wctype (wtype.h): Likewise.
7745
7746 2007-05-16  Thien-Thi Nguyen  <ttn@gnuvola.org>  (tiny change)
7747
7748         * doc/gnulib-tool.texi (CVS Issues): Fix typo.
7749
7750 2007-05-13  Bruno Haible  <bruno@clisp.org>
7751
7752         * stpcpy.m4 (gl_FUNC_STPCPY): Require AC_C_RESTRICT.
7753         * stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
7754         * strsep.m4 (gl_FUNC_STRSEP): Likewise.
7755         * strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
7756         (gl_PREREQ_STRTOK_R): Don't require it here.
7757
7758 2007-05-13  Bruno Haible  <bruno@clisp.org>
7759
7760         * lib/stdlib_.h (mkdtemp, mkstemp): Comment out argument name. Needed
7761         when used in C++ mode.
7762
7763 2007-05-12  Bruno Haible  <bruno@clisp.org>
7764
7765         * lib/linebuffer.h: Tweak doc.
7766         * lib/linebuffer.c: Likewise.
7767
7768 2007-05-12  James Youngman  <jay@gnu.org>
7769
7770         * lib/linebuffer.c (readlinebuffer_delim): New function,
7771         like readlinebuffer, but use a caller-specified delimiter.
7772         (readlinebuffer): Just call readlinebuffer_delim with '\n'
7773         as the delimiter.
7774         * lib/linebuffer.h (readlinebuffer_delim): Declare it.
7775
7776 2007-05-12  Sergey Poznyakoff  <gray@gnu.org.ua>
7777
7778         * m4/openat.m4 (gl_FUNC_OPENAT): Do not require openat-die.
7779         * modules/openat (Files): Remove openat-die.c.
7780         (Depends-on): Add openat-die.
7781         * modules/openat-die: New module.
7782
7783 2007-05-06  Bruno Haible  <bruno@clisp.org>
7784
7785         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING, gl_VSNPRINTF_ZEROSIZE_C99):
7786         Update with info about Cygwin.
7787         * doc/functions/fprintf.texi: Update.
7788         * doc/functions/printf.texi: Update.
7789         * doc/functions/snprintf.texi: Update.
7790         * doc/functions/sprintf.texi: Update.
7791         * doc/functions/vfprintf.texi: Update.
7792         * doc/functions/vprintf.texi: Update.
7793         * doc/functions/vsnprintf.texi: Update.
7794         * doc/functions/vsprintf.texi: Update.
7795         Reported by Eric Blake.
7796
7797 2007-05-06  Bruno Haible  <bruno@clisp.org>
7798
7799         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Perform the
7800         padding ourselves for the floating-point directives.
7801         * m4/printf.m4 (gl_PRINTF_FLAG_ZERO): New macro.
7802         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_ZERO): New macro.
7803         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
7804         gl_PRINTF_FLAG_ZERO and test its result. Invoke
7805         gl_PREREQ_VASNPRINTF_FLAG_ZERO.
7806         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
7807         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
7808         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
7809         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
7810         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
7811         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
7812         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
7813         * tests/test-snprintf-posix.h (test_function): Also check the width
7814         and some flags in the %f directive.
7815         * tests/test-sprintf-posix.h (test_function): Likewise.
7816         * tests/test-vasnprintf-posix.c (test_function): Likewise.
7817         * tests/test-vasprintf-posix.c (test_function): Likewise.
7818         * doc/functions/fprintf.texi: Update.
7819         * doc/functions/printf.texi: Update.
7820         * doc/functions/snprintf.texi: Update.
7821         * doc/functions/sprintf.texi: Update.
7822         * doc/functions/vfprintf.texi: Update.
7823         * doc/functions/vprintf.texi: Update.
7824         * doc/functions/vsnprintf.texi: Update.
7825         * doc/functions/vsprintf.texi: Update.
7826
7827 2007-05-06  Bruno Haible  <bruno@clisp.org>
7828
7829         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_GROUPING]: Don't
7830         pass the ' flag character to sprintf or snprintf.
7831         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING): New macro.
7832         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_GROUPING): New macro.
7833         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
7834         gl_PRINTF_FLAG_GROUPING and test its result. Invoke
7835         gl_PREREQ_VASNPRINTF_FLAG_GROUPING.
7836         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
7837         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
7838         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
7839         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
7840         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
7841         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
7842         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
7843         * tests/test-snprintf-posix.h (test_function): Also check the grouping
7844         flag.
7845         * tests/test-sprintf-posix.h (test_function): Likewise.
7846         * tests/test-vasnprintf-posix.c (test_function): Likewise.
7847         * tests/test-vasprintf-posix.c (test_function): Likewise.
7848         * doc/functions/fprintf.texi: Update.
7849         * doc/functions/printf.texi: Update.
7850         * doc/functions/snprintf.texi: Update.
7851         * doc/functions/sprintf.texi: Update.
7852         * doc/functions/vfprintf.texi: Update.
7853         * doc/functions/vprintf.texi: Update.
7854         * doc/functions/vsnprintf.texi: Update.
7855         * doc/functions/vsprintf.texi: Update.
7856
7857 2007-05-01  Bruno Haible  <bruno@clisp.org>
7858
7859         * tests/test-argp-2.sh (func_compare): Drop .exe suffix.
7860
7861 2007-05-03  Paul Eggert  <eggert@cs.ucla.edu>
7862
7863         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Use better
7864         comment for D_INO_IN_DIRENT.  Problem reported by James Youngman.
7865
7866 2007-05-02  Paul Eggert  <eggert@cs.ucla.edu>
7867
7868         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Test whether
7869         readdir returns garbage in d_ino.  Problem reported by Kaz Sasayama in
7870         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00021.html>.
7871
7872 2007-05-02  Sergey Poznyakoff  <gray@gnu.org.ua>
7873
7874         * lib/argp-help.c (struct hol_entry): New member `ord'.
7875         (HOL_ENTRY_PTRCMP): Use ord for comparison
7876         (hol_sort): Initialize ord.
7877
7878 2007-05-01  Bruno Haible  <bruno@clisp.org>
7879
7880         * doc/functions/_Exit_C99.texi: Renamed from doc/functions/_Exit.texi.
7881         Reported by Eric Blake.
7882         * doc/gnulib.texi (Function Substitutes): Update.
7883
7884 2007-05-01  Bruno Haible  <bruno@clisp.org>
7885
7886         * doc/functions.texi: Remove file, now redundant through
7887         doc/functions/*.texi.
7888
7889 2007-05-01  Bruno Haible  <bruno@clisp.org>
7890
7891         * modules/argp (Depends-on): Add sleep.
7892
7893 2007-05-01  Bruno Haible  <bruno@clisp.org>
7894
7895         * modules/sleep-tests: New file.
7896         * tests/test-sleep.c: New file.
7897
7898         * modules/sleep: New file.
7899         * lib/sleep.c: New file.
7900         * m4/sleep.m4: New file.
7901         * lib/unistd_.h (sleep): New declaration.
7902         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_SLEEP,
7903         HAVE_SLEEP.
7904         * modules/unistd (Makefile.am): Substitute GNULIB_SLEEP, HAVE_SLEEP.
7905         * doc/functions/sleep.texi: Document the sleep module.
7906
7907 2007-05-01  Bruno Haible  <bruno@clisp.org>
7908
7909         * lib/sigprocmask.h: Remove file.
7910         * lib/signal_.h: Incorporate the previous contents of sigprocmask.h.
7911         * lib/sigprocmask.c: Include <signal.h> instead of sigprocmask.h.
7912         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Substitute GNULIB_SIGPROCMASK,
7913         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T.
7914         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Require
7915         gl_SIGNAL_H_DEFAULTS. Set HAVE_POSIX_SIGNALBLOCKING as a shell variable.
7916         (gl_PREREQ_SIGPROCMASK): Require gl_SIGNAL_H_DEFAULTS. Set
7917         HAVE_SIGSET_T as a shell variable.
7918         * modules/signal (Makefile.am): Substitute GNULIB_SIGPROCMASK,
7919         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T into signal.h.
7920         * modules/sigprocmask (Files): Remove lib/sigprocmask.h.
7921         (Depends-on): Add signal. Remove verify.
7922         (configure.ac): Invoke gl_SIGNAL_MODULE_INDICATOR.
7923         (Include): Mention <signal.h> instead of sigprocmask.h.
7924         * NEWS: Mention the change.
7925         * lib/fatal-signal.c: Don't include sigprocmask.h.
7926
7927 2007-05-01  Bruno Haible  <bruno@clisp.org>
7928
7929         * modules/signal: New file.
7930         * lib/signal_.h: New file.
7931         * m4/signal_h.m4: New file.
7932
7933 2007-05-01  Bruno Haible  <bruno@clisp.org>
7934
7935         * lib/wctype_.h: Test HAVE_ISWCNTRL at configure time.
7936         * m4/wctype.m4 (gl_WCTYPE_H): Substitute HAVE_ISWCNTRL.
7937         * modules/wctype (Makefile.am): Substitute HAVE_ISWCNTRL instead of
7938         HAVE_WCTYPE_CTMP_BUG into wctype.h.
7939
7940 2007-05-01  Bruno Haible  <bruno@clisp.org>
7941
7942         * lib/sys_stat_.h: Test HAVE_LSTAT, HAVE_DECL_MKDIR, HAVE_IO_H at
7943         configure time.
7944         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Substitute HAVE_LSTAT,
7945         HAVE_DECL_MKDIR, HAVE_IO_H via AC_SUBST.
7946         * modules/sys_stat (Makefile.am): Substitute their values into
7947         sys/stat.h.
7948
7949 2007-05-01  Bruno Haible  <bruno@clisp.org>
7950
7951         * lib/glob_.h: Test HAVE_SYS_CDEFS_H at configure time.
7952         * m4/glob.m4 (gl_PREREQ_GLOB): Substitute HAVE_SYS_CDEFS_H via AC_SUBST.
7953         * modules/glob (Makefile.am): Put HAVE_SYS_CDEFS_H value into glob.h.
7954
7955 2007-05-01  Bruno Haible  <bruno@clisp.org>
7956
7957         * doc/header/assert.texi: Undo last change: don't mention the gnulib
7958         'assert' module here.
7959
7960 2007-05-01  Bruno Haible  <bruno@clisp.org>
7961
7962         * doc/functions/*.texi: New files.
7963         * doc/functions/google-ranking.txt: New file.
7964         * doc/gnulib.texi (Function Substitutes): New chapter.
7965         (ctime, inet_ntoa): Remove sections.
7966         * doc/ctime.texi: Remove file.
7967         * doc/inet_ntoa.texi: Remove file.
7968         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Update
7969         dependencies.
7970         (%.info): New rule, specifying a --reference-limit.
7971
7972 2007-05-01  Bruno Haible  <bruno@clisp.org>
7973
7974         * MODULES.html.sh (posix_functions): Remove 'exec', 'toc'.
7975
7976 2007-05-01  Bruno Haible  <bruno@clisp.org>
7977
7978         * modules/mkdir (Depends-on): Add sys_stat, because sys_stat provides
7979         the portability of 'mkdir' to mingw systems.
7980
7981 2007-05-01  Bruno Haible  <bruno@clisp.org>
7982
7983         * doc/headers/google-ranking.txt: New file.
7984
7985 2007-04-30  Eric Blake  <ebb9@byu.net>
7986
7987         Prefer fseeko to fseek.
7988         * modules/getpass (Depends-on): Add fseeko.
7989         * lib/getpass.c (getpass): Use fseeko, not fseek.
7990
7991 2007-04-30  Sergey Poznyakoff  <gray@gnu.org.ua>
7992
7993         * lib/argp-help.c (hol_entry_cmp): Option sorting algorithm
7994         assumes the sorting is stable, while most qsort implementations
7995         are not.  Use argument addresses to ensure they never compare as
7996         equal.
7997
7998         * tests/test-argp-2.sh (usage-indent test): Fix output
7999         (func_compare): Restore diff options
8000         * tests/test-argp.c: Restore #include "progname.h"
8001
8002 2007-04-29  Bruno Haible  <bruno@clisp.org>
8003
8004         * m4/printf.m4 (gl_VSNPRINTF_ZEROSIZE_C99): New macro.
8005         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
8006         gl_VSNPRINTF_ZEROSIZE_C99. Test gl_cv_func_vsnprintf_zerosize_c99.
8007         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
8008         * modules/snprintf-posix-tests (Files): Add tests/test-snprintf.c.
8009         (configure.ac): Define CHECK_SNPRINTF_POSIX.
8010         (TESTS, check_PROGRAMS): Add test-snprintf.
8011         * modules/vsnprintf-posix-tests (Files): Add tests/test-vsnprintf.c.
8012         (configure.ac): Define CHECK_VSNPRINTF_POSIX.
8013         (TESTS, check_PROGRAMS): Add test-vsnprintf.
8014         * tests/test-snprintf.c (main) [!CHECK_SNPRINTF_POSIX]: Disable
8015         assertions that fail on HP-UX, OSF/1, or IRIX.
8016         * tests/test-vsnprintf.c (main) [!CHECK_VSNPRINTF_POSIX]: Likewise.
8017
8018 2007-04-29  Bruno Haible  <bruno@clisp.org>
8019
8020         * MODULES.html.sh (posix_functions): Remove 'contents'.
8021
8022 2007-04-29  Karl Berry  <karl@gnu.org>
8023
8024         * config/srclist.txt (gendocs_template_min): new entry.
8025
8026 2007-04-29  Bruno Haible  <bruno@clisp.org>
8027
8028         Work around fpurge bug on BSD systems.
8029         * modules/fpurge (Makefile.am): Compile fpurge.c unconditionally.
8030         * m4/fpurge.m4 (gl_FUNC_FPURGE): Don't invoke AC_LIBOBJ.
8031         * lib/fpurge.h (fpurge): Don't handle __fpurge wrapper here. Define
8032         fpurge to rpl_fpurge if the system already has this function.
8033         * lib/fpurge.c (fpurge): Handle also the __fpurge wrapper case and
8034         the case where the system already has this function. Correct invariants
8035         on BSD systems.
8036         * lib/fseeko.c (rpl_fseeko): Update recognition of preceding fflush on
8037         BSD systems.
8038
8039 2007-04-29  Sergey Poznyakoff  <gray@gnu.org.ua>
8040
8041         * lib/argp-help.c (hol_cluster_cmp): Reverse comparison.  Change
8042         proposed by Sven Verdoolaege.
8043
8044         * tests/test-argp.c: Fix option ordering.  Test deeply clustered
8045         options.
8046         * tests/test-argp-2.sh (func_compare): Use diff instead of cmp.
8047         (usage and help tests): Update
8048
8049 2007-04-29  Bruno Haible  <bruno@clisp.org>
8050
8051         * tests/test-fflush.c (main): Use a file of size 17, not 10.
8052         Print more information in case of failure. Disable a test on BeOS.
8053
8054 2007-04-29  Bruno Haible  <bruno@clisp.org>
8055
8056         * tests/**/test-*.[hc] (ASSERT): Use fprintf to show the line number.
8057         This helps debugging on systems on which no gdb is available.
8058
8059 2007-04-29  Bruno Haible  <bruno@clisp.org>
8060
8061         * lib/freading.h: Improve comments.
8062         * lib/fwriting.h: Likewise.
8063         * tests/test-freading.c (main): Don't check freading immediately after
8064         repositioning. Needed for glibc.
8065
8066 2007-04-29  Bruno Haible  <bruno@clisp.org>
8067
8068         * lib/freading.c (freading): Trivial simplification.
8069
8070 2007-04-28  Bruno Haible  <bruno@clisp.org>
8071
8072         * tests/test-fwriting.c (main): Also test the interaction between
8073         fflush and fwriting.
8074         * modules/fwriting-tests (Depends-on): Add fflush.
8075
8076         * tests/test-freading.c (main): Also test the interaction between
8077         fflush and freading.
8078         * modules/freading-tests (Depends-on): Add fflush.
8079
8080 2007-04-28  Bruno Haible  <bruno@clisp.org>
8081
8082         * lib/stdio_.h (fseek, ftell): Provide link warnings suggesting to use
8083         fseeko and ftello.
8084         Suggested by Eric Blake.
8085
8086 2007-04-28  Jim Meyering  <jim@meyering.net>
8087
8088         Avoid false-negative in gl_STDINT_H's C99 conformance test.
8089         * m4/stdint.m4 (gl_STDINT_H): When checking whether stdint.h conforms
8090         to C99, include all of gl_STDINT_INCLUDES, not just <stddef.h>.
8091
8092 2007-04-27  Eric Blake  <ebb9@byu.net>
8093
8094         * doc/headers/assert.texi (assert.h): Document assert module use.
8095
8096 2007-04-27  Bruno Haible  <bruno@clisp.org>
8097
8098         * doc/headers/*.texi: New files.
8099         * doc/gnulib.texi (Header File Substitutes): New chapter.
8100         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Specify
8101         dependencies.
8102         (standards.info ,standards.html, standards.dvi): Update dependencies.
8103         (mostlyclean, clean): New targets.
8104
8105 2007-04-27  Bruno Haible  <bruno@clisp.org>
8106
8107         * lib/sysexits_.h: Renamed from lib/sysexit_.h.
8108         * modules/sysexits (Files, Makefile.am): Update.
8109
8110         * lib/sys_socket_.h: Renamed from lib/socket_.h.
8111         * modules/sys_socket (Files, Makefile.am): Update.
8112
8113         * lib/sys_stat_.h: Renamed from lib/stat_.h.
8114         * modules/sys_stat (Files, Makefile.am): Update.
8115
8116 2007-04-27  Eric Blake  <ebb9@byu.net>
8117
8118         * lib/freading.h: Improve comments.
8119         * lib/fwriting.h: Likewise.
8120         * lib/fflush.c: Likewise.
8121
8122         Fix closein for mingw.
8123         * modules/closein-tests: Add tests for closein.
8124         * tests/test-closein.c: New file.
8125         * tests/test-closein.sh: Likewise.
8126         * lib/unistd_.h [!SEEK_CUR]: Mingw also needs stdlib.h for _exit.
8127         * lib/closein.c (close_stdin): Don't fflush non-seekable streams.
8128
8129 2007-04-27  Bruno Haible  <bruno@clisp.org>
8130
8131         * lib/inttypes_.h [_DECC]: Don't use #include_next if the compiler
8132         version is < 6.
8133         * lib/math_.h [__DECC]: Likewise.
8134         * lib/stdio_.h [__DECC]: Likewise.
8135         * lib/stdlib_.h [__DECC]: Likewise.
8136         * lib/string_.h [__DECC]: Likewise.
8137         * lib/time_.h [__DECC]: Likewise.
8138         * lib/wchar_.h [__DECC]: Likewise.
8139         * lib/wctype_.h [__DECC]: Likewise.
8140
8141 2007-04-27  Bruno Haible  <bruno@clisp.org>
8142
8143         * tests/test-fbufmode.c (main): Relax test, to avoid failure on mingw.
8144
8145 2007-04-27  Bruno Haible  <bruno@clisp.org>
8146
8147         * lib/fflush.c: Add comments.
8148         * modules/fpurge-tests (Depends-on): Add fflush.
8149         * modules/freadable-tests (Depends-on): Likewise.
8150         * modules/fwritable-tests (Depends-on): Likewise.
8151
8152 2007-04-27  Charles Wilson  <libtool@cwilson.fastmail.fm>
8153
8154         * m4/argz.m4 (gl_FUNC_ARGZ): Use !HAVE_WORKING_ARGZ instead of
8155         SYSTEM_ARGZ_IS_BROKEN.  Also, minor stylistic improvements.
8156         Report by Bruno Haible <bruno@clisp.org>.
8157
8158 2007-04-26  Eric Blake  <ebb9@byu.net>
8159
8160         Fix fflush on mingw.
8161         * modules/fflush (Depends-on): Add freading.
8162         * lib/fflush.c (rpl_fflush): Use freading to avoid losing buffered
8163         but unread data.
8164
8165 2007-04-26  Eric Blake  <ebb9@byu.net>
8166         and Bruno Haible  <bruno@clisp.org>
8167
8168         Implement freading and fwriting.
8169         * lib/freading.c: New file.
8170         * lib/freading.h: Likewise.
8171         * m4/freading.m4: Likewise.
8172         * modules/freading: Likewise.
8173         * modules/freading-tests: Likewise.
8174         * tests/test-freading.c: Likewise.
8175         * lib/fwriting.c: New file.
8176         * lib/fwriting.h: Likewise.
8177         * m4/fwriting.m4: Likewise.
8178         * modules/fwriting: Likewise.
8179         * modules/fwriting-tests: Likewise.
8180         * tests/test-fwriting.c: Likewise.
8181         * MODULES.html.sh (File stream based Input/Output): Mention them.
8182
8183 2007-04-26  Bruno Haible  <bruno@clisp.org>
8184
8185         * lib/stdio_.h (fseeko, ftello): Check that off_t has the same size as
8186         'long' when we assume it.
8187         Suggested by Eric Blake.
8188
8189 2007-04-26  Bruno Haible  <bruno@clisp.org>
8190
8191         Ensure fseeko, ftello are declared on glibc systems.
8192         * modules/fflush (configure.ac-early): Require AC_FUNC_FSEEKO.
8193         * modules/fseeko (configure.ac-early): Likewise.
8194         * modules/ftello (configure.ac-early): Likewise.
8195         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Don't define HAVE_FSEEKO, rely on
8196         AC_FUNC_FSEEKO for this.
8197         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Inline gl_CHECK_FSEEKO.
8198         (gl_CHECK_FSEEKO): Remove macro.
8199
8200 2007-04-26  Bruno Haible  <bruno@clisp.org>
8201
8202         * tests/test-fflush.c (main): Also check the ftell result after
8203         fflush and fseek/fseeko.
8204         * lib/fflush.c (rpl_fflush): For BSD implementations, update the
8205         file descriptor position cache in the stream.
8206         * lib/fseeko.c (rpl_fseeko): Likewise.
8207
8208 2007-04-26  Bruno Haible  <bruno@clisp.org>
8209
8210         * modules/fflush-tests (Depends-on): Add fseeko.
8211
8212 2007-04-25  Charles Wilson  <libtool@cwilson.fastmail.fm>
8213             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8214
8215         * lib/argz_.h: ensure error_t definition is obtained in same
8216         mechanism system argz.h would have.
8217         * m4/argz.m4 (gl_FUNC_ARGZ): add new test to check if $host's
8218         argz facilities are known bad.  Err on the side of caution if
8219         cross-compiling.
8220
8221 2007-04-25  Eric Blake  <ebb9@byu.net>
8222
8223         * lib/fpurge.c (includes): Use stdlib.h for free.
8224         * tests/test-fflush.c (main): Also test fflush-fseeko.
8225
8226 2007-04-25  Bruno Haible  <bruno@clisp.org>
8227
8228         Make fflush+fseek POSIX-compliant on FreeBSD and MacOS X.
8229         * lib/fseeko.c: New file.
8230         * lib/stdio_.h: Include <sys/types.h> when off_t is needed.
8231         (fseeko, fseek): Define to replacements if REPLACE_FFLUSH.
8232         * m4/fseeko.m4 (gl_CHECK_FSEEKO): New macro, extracted from
8233         gl_FUNC_FSEEKO.
8234         (gl_FUNC_FSEEKO): Invoke it.
8235         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Arrange to compile fseeko.c. Invoke
8236         gl_CHECK_FSEEKO. Define HAVE_FSEEKO.
8237         * modules/fflush (Files): Add lib/fseeko.c, m4/fseeko.m4.
8238
8239 2007-04-25  Bruno Haible  <bruno@clisp.org>
8240
8241         * modules/fflush (Depends-on): Add ftello.
8242
8243 2007-04-25  Bruno Haible  <bruno@clisp.org>
8244
8245         * modules/ftello-tests: New file.
8246         * tests/test-ftello.c: New file.
8247
8248         * modules/ftello: New file.
8249         * m4/ftello.m4: New file.
8250         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELLO,
8251         HAVE_FTELLO.
8252         * lib/stdio_.h (ftello): New declaration.
8253         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELLO,
8254         HAVE_FTELLO.
8255
8256 2007-04-25  Bruno Haible  <bruno@clisp.org>
8257
8258         * modules/fseeko-tests: New file.
8259         * tests/test-fseeko.c: New file.
8260
8261         * modules/fseeko: New file.
8262         * m4/fseeko.m4: New file.
8263         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEKO,
8264         HAVE_FSEEKO.
8265         * lib/stdio_.h (fseeko): New declaration.
8266         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEKO,
8267         HAVE_FSEEKO.
8268
8269 2007-04-25  Bruno Haible  <bruno@clisp.org>
8270
8271         * lib/stdio_.h (fflush): Add support for GNULIB_POSIXCHECK.
8272
8273 2007-04-25  Bruno Haible  <bruno@clisp.org>
8274
8275         * lib/unistd_.h: Include <stdio.h> if needed to get the SEEK_* macros.
8276         * tests/test-stdio.c: Check that the various SEEK_* macros are defined.
8277         * tests/test-unistd.c: Likewise.
8278         * tests/test-fcntl.c: Likewise.
8279
8280 2007-04-23  Eric Blake  <ebb9@byu.net>
8281
8282         * lib/fflush.c: Fix missing include.
8283         Reported by Bruno Haible.
8284
8285 2007-04-23  Bruno Haible  <bruno@clisp.org>
8286
8287         * lib/fpurge.c (fpurge) [glibc, BSD]: Free a malloc()ed ungetc buffer.
8288         Reported by Eric Blake.
8289
8290 2007-04-23  Bruno Haible  <bruno@clisp.org>
8291
8292         * lib/fbufmode.c (fbufmode): Port to Solaris/SPARC64.
8293
8294 2007-04-23  Bruno Haible  <bruno@clisp.org>
8295
8296         * lib/fseterr.c (fseterr): Don't hardcode the value of _IOERR.
8297
8298 2007-04-23  Bruno Haible  <bruno@clisp.org>
8299
8300         * tests/test-fbufmode.c (main): Be prepared to a failure of setvbuf.
8301         Needed on HP-UX 11.
8302
8303 2007-04-16  Eric Blake  <ebb9@byu.net>
8304
8305         Make fflush rely on fpurge.
8306         * lib/fflush.c (rpl_fflush): Rely on fpurge module, rather than
8307         open coding all variants.
8308         * modules/fflush (Depends-on): Add fpurge and unistd.
8309         * modules/fflush-tests (Depends-on): Unistd is no longer extra.
8310         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Simplify.
8311
8312         Fix --with-tests compilation on cygwin.
8313         * modules/argmatch-tests (Makefile.am): List gnulib library first
8314         in LDADD.
8315         * modules/argp-tests (Makefile.am): Likewise.
8316         * modules/array-list-tests (Makefile.am): Likewise.
8317         * modules/array-oset-tests (Makefile.am): Likewise.
8318         * modules/avltree-list-tests (Makefile.am): Likewise.
8319         * modules/avltree-oset-tests (Makefile.am): Likewise.
8320         * modules/avltreehash-list-tests (Makefile.am): Likewise.
8321         * modules/carray-list-tests (Makefile.am): Likewise.
8322         * modules/dirname-tests (Makefile.am): Likewise.
8323         * modules/frexp-tests (Makefile.am): Likewise.
8324         * modules/isnanl-tests (Makefile.am): Likewise.
8325         * modules/linked-list-tests (Makefile.am): Likewise.
8326         * modules/linkedhash-list-tests (Makefile.am): Likewise.
8327         * modules/lock-tests (Makefile.am): Likewise.
8328         * modules/rbtree-list-tests (Makefile.am): Likewise.
8329         * modules/rbtree-oset-tests (Makefile.am): Likewise.
8330         * modules/rbtreehash-list-tests (Makefile.am): Likewise.
8331         * modules/tls-tests (Makefile.am): Likewise.
8332         * modules/tsearch-tests (Makefile.am): Likewise.
8333         * modules/xvasprintf-tests (Makefile.am): Likewise.
8334
8335         Fix fpurge for cygwin.
8336         * lib/fpurge.c (fpurge): Fix order of operation flub, and return a
8337         value.
8338         * modules/fpurge-tests (Depends-on): Clean up trash.
8339
8340 2007-04-16  Simon Josefsson  <simon@josefsson.org>
8341
8342         * lib/gc-libgcrypt.c (gc_hash_open): Shut up compiler warnings.
8343
8344         * m4/autobuild.m4: Re-indent.
8345
8346 2007-04-13  Bruno Haible  <bruno@clisp.org>
8347
8348         * modules/fpurge-tests: New file.
8349         * tests/test-fpurge.c: New file.
8350
8351         * modules/fpurge: New file.
8352         * lib/fpurge.h: New file.
8353         * lib/fpurge.c: New file.
8354         * m4/fpurge.m4: New file.
8355
8356 2007-04-13  Bruno Haible  <bruno@clisp.org>
8357
8358         * modules/fbufmode-tests: New file.
8359         * tests/test-fbufmode.c: New file.
8360
8361         * modules/fbufmode: New file.
8362         * lib/fbufmode.h: New file.
8363         * lib/fbufmode.c: New file.
8364         * m4/fbufmode.m4: New file.
8365
8366 2007-04-13  Bruno Haible  <bruno@clisp.org>
8367
8368         * modules/fwritable-tests: New file.
8369         * tests/test-fwritable.c: New file.
8370
8371         * modules/fwritable: New file.
8372         * lib/fwritable.h: New file.
8373         * lib/fwritable.c: New file.
8374         * m4/fwritable.m4: New file.
8375
8376 2007-04-13  Bruno Haible  <bruno@clisp.org>
8377
8378         * modules/freadable-tests: New file.
8379         * tests/test-freadable.c: New file.
8380
8381         * modules/freadable: New file.
8382         * lib/freadable.h: New file.
8383         * lib/freadable.c: New file.
8384         * m4/freadable.m4: New file.
8385
8386 2007-04-13  Bruno Haible  <bruno@clisp.org>
8387
8388         * modules/fflush-tests (Makefile.am): Remove EXTRA_DIST. Augment
8389         MOSTLYCLEANFILES.
8390
8391 2007-04-13  Paul Eggert  <eggert@cs.ucla.edu>
8392
8393         * build-aux/bootstrap (gnulib_tool_option_extras): New var, used by
8394         gzip bootstrap.conf to avoid dragging in i18n machinery.
8395         (gnulib_tool_option): Use it.
8396
8397 2007-04-13  Bruno Haible  <bruno@clisp.org>
8398
8399         * tests/test-vasnprintf-posix.c (test_function): Add tests for %f and
8400         %F directives.
8401         * tests/test-vasprintf-posix.c (test_function): Likewise.
8402         * tests/test-snprintf-posix.h (test_function): Likewise.
8403         * tests/test-sprintf-posix.h (test_function): Likewise.
8404         * tests/test-fprintf-posix.h (test_function): Likewise.
8405         * tests/test-printf-posix.h (test_function): Likewise.
8406         * tests/test-fprintf-posix.out: Likewise.
8407
8408 2007-04-13  Bruno Haible  <bruno@clisp.org>
8409
8410         * modules/lock-tests (configure.ac): For LIBSCHED, try also -lposix4.
8411         * modules/tls-tests (configure.ac): Likewise.
8412         Reported by Arto C. Nirkko <anirkko@insel.ch>.
8413
8414 2007-04-13  Bruno Haible  <bruno@clisp.org>
8415
8416         * lib/tls.c (glthread_tls_get): Fix return type.
8417         Patch by Arto C. Nirkko <anirkko@insel.ch>.
8418
8419 2007-04-12  Eric Blake  <ebb9@byu.net>
8420
8421         * modules/gettime (Depends-on): Remove gettime.
8422         Reported by Dmitry V. Levin.
8423
8424 2007-04-12  Bruno Haible  <bruno@clisp.org>
8425
8426         * modules/fflush (Include): Mention <stdio.h>.
8427         * modules/strtoimax (Include): Mention <inttypes.h>.
8428         * modules/strtoumax (Include): Likewise.
8429
8430 2007-04-12  Eric Blake  <ebb9@byu.net>
8431
8432         * .cvsignore: New file.
8433         * .gitignore: Likewise.
8434
8435 2007-04-12  Bruno Haible  <bruno@clisp.org>
8436
8437         * modules/iconv-tests (test_iconv_LDADD): Mention -liconv after LDADD,
8438         not before, since $(LDADD) often contains libgnu.a.
8439         * modules/striconv-tests (test_striconv_LDADD): Likewise.
8440         * modules/striconveh-tests (test_striconveh_LDADD): Likewise.
8441         * modules/striconveha-tests (test_striconveha_LDADD): Likewise.
8442         Needed on Cygwin.
8443
8444 2007-04-12  Eric Blake  <ebb9@byu.net>
8445
8446         Work around glibc's failure to flush stdin on fclose.
8447         * lib/closein.c (close_stdin): Flush stdin before closing.
8448
8449         Work around glibc's failure to reset seekable stdin on exit.
8450         * modules/closein: New module.
8451         * lib/closein.c: New file.
8452         * lib/closein.h: Likewise.
8453         * m4/closein.m4: Likewise.
8454         * MODULES.html.sh (File stream based Input/Output): Document it.
8455
8456 2007-04-12  Simon Josefsson  <simon@josefsson.org>
8457
8458         * gnulib-tool: Rename generated 'autobuild' script to
8459         'do-autobuild' in --create-megatestdir output.
8460
8461         * doc/gnulib.texi (Build robot for gnulib): Fix.
8462
8463 2007-04-12  Simon Josefsson  <simon@josefsson.org>
8464
8465         * modules/sysexits (Depends-on): Add absolute-header.
8466
8467 2007-04-12  Eric Blake  <ebb9@byu.net>
8468
8469         No need to preserve errno on success.
8470         * lib/fflush.c (rpl_fflush): Simplify errno tracking.
8471         Reported by Bruno Haible.
8472
8473 2007-04-12  Simon Josefsson  <simon@josefsson.org>
8474
8475         * MODULES.html.sh (Support for maintaining and releasing
8476         projects): Add autobuild.  Suggested by Eric Blake <ebb9@byu.net>.
8477
8478 2007-04-12  Simon Josefsson  <simon@josefsson.org>
8479
8480         * gnulib-tool (func_modules_add_dummy): Respect --avoid=dummy.
8481
8482 2007-04-12  Simon Josefsson  <simon@josefsson.org>
8483
8484         * modules/autobuild: New module.
8485
8486         * m4/autobuild.m4: New file.
8487
8488 2007-04-11  Bruno Haible  <bruno@clisp.org>
8489
8490         * lib/vasnprintf.c (VASNPRINTF): Implement the %F directive using the
8491         %f directive, if NEED_PRINTF_DIRECTIVE_F is defined.
8492         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_F): New macro.
8493         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_F): New macro.
8494         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
8495         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
8496         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
8497         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
8498         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
8499         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
8500         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Invoke
8501         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
8502         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
8503         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Invoke
8504         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
8505         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
8506         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Invoke
8507         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
8508         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
8509         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Invoke
8510         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
8511         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
8512         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Invoke
8513         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
8514         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
8515         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Invoke
8516         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
8517         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
8518         Reported by Eric Blake.
8519
8520 2007-04-11  Bruno Haible  <bruno@clisp.org>
8521
8522         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Fix test. It always failed.
8523
8524 2007-04-10  Bruno Haible  <bruno@clisp.org>
8525
8526         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct result
8527         for NaN and Infinity. Needed on FreeBSD 6.1.
8528         * tests/test-vasnprintf-posix.c (test_function): Undo last change
8529         regarding results for "%010a" of Infinity and NaN.
8530         * tests/test-vasprintf-posix.c (test_function): Likewise.
8531         * tests/test-snprintf-posix.h (test_function): Likewise.
8532         * tests/test-sprintf-posix.h (test_function): Likewise.
8533         * tests/test-fprintf-posix.h (test_function): Likewise.
8534         * tests/test-printf-posix.h (test_function): Likewise.
8535         * tests/test-fprintf-posix.out: Likewise.
8536
8537 2007-04-10  Bruno Haible  <bruno@clisp.org>
8538
8539         * modules/locale-tests: New file.
8540         * tests/test-locale.c: New file.
8541
8542         * modules/locale: New file.
8543         * lib/locale_.h: New file.
8544         * m4/locale_h.m4: New file.
8545
8546 2007-04-10  Paul Eggert  <eggert@cs.ucla.edu>
8547             Bruno Haible  <bruno@clisp.org>
8548
8549         * m4/signbit.m4 (gl_SIGNBIT): When the sign bit position could not
8550         be determined, test for availability of the copysignf, copysign,
8551         copysignl functions.
8552         * lib/signbitf.c (gl_signbitf): Use copysignf if available in libc.
8553         * lib/signbitd.c (gl_signbitd): Use copysign if available in libc.
8554         * lib/signbitl.c (gl_signbitl): Use copysignl if available in libc.
8555
8556 2007-04-09  Eric Blake  <ebb9@byu.net>
8557
8558         * lib/stdio_.h [REPLACE_FFLUSH]: Declare rpl_fflush.
8559         * modules/stdio (Makefile.am): Support fflush.
8560         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
8561         * modules/fflush: New file.
8562         * lib/fflush.c: Likewise.
8563         * m4/fflush.m4: Likewise.
8564         * modules/fflush-tests: New test.
8565         * tests/test-fflush.c: Likewise.
8566         * MODULES.html.sh (Input/output <stdio.h>): Document new module.
8567
8568 2007-04-06  Bruno Haible  <bruno@clisp.org>
8569
8570         * lib/vasnprintf.c: Include <math.h>. Don't include float+.h.
8571         (VASNPRINTF): Use signbit for faster determination whether to print a
8572         minus sign.
8573         * modules/vasnprintf (Files): Remove lib/float+.h.
8574         * modules/fprintf-posix (Depends-on): Add signbit.
8575         * modules/snprintf-posix (Depends-on): Likewise.
8576         * modules/sprintf-posix (Depends-on): Likewise.
8577         * modules/vasnprintf-posix (Depends-on): Likewise.
8578         * modules/vasprintf-posix (Depends-on): Likewise.
8579         * modules/vfprintf-posix (Depends-on): Likewise.
8580         * modules/vsnprintf-posix (Depends-on): Likewise.
8581         * modules/vsprintf-posix (Depends-on): Likewise.
8582
8583 2007-04-06  Bruno Haible  <bruno@clisp.org>
8584
8585         * tests/test-frexp.c (main): Test also the sign bit of zero results.
8586         * tests/test-frexpl.c (main): Likewise.
8587         * tests/test-ldexpl.c (main): Likewise.
8588         * modules/frexp-tests (Depends-on): Add signbit.
8589         * modules/frexpl-tests (Depdends-on): Likewise.
8590         * modules/ldexpl-tests (Depdends-on): Likewise.
8591
8592 2007-04-06  Bruno Haible  <bruno@clisp.org>
8593
8594         * modules/signbit-tests: New file.
8595         * tests/test-signbit.c: New file.
8596
8597         * modules/signbit: New file.
8598         * lib/signbitf.c: New file.
8599         * lib/signbitd.c: New file.
8600         * lib/signbitl.c: New file.
8601         * m4/signbit.m4: New file.
8602         * lib/math_.h (gl_signbitf, gl_signbitd, gl_signbitl): New declarations.
8603         (signbit): New macro.
8604         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_SIGNBIT and
8605         REPLACE_SIGNBIT.
8606         * modules/math (Makefile.am) Substibute also GNULIB_SIGNBIT and
8607         REPLACE_FREXPL into math.h.
8608
8609 2007-04-06  Bruno Haible  <bruno@clisp.org>
8610
8611         * modules/isnanf-nolibm-tests: New file.
8612         * tests/test-isnanf.c: New file.
8613
8614         * modules/isnanf-nolibm: New file.
8615         * lib/isnanf.h: New file.
8616         * lib/isnanf.c: New file.
8617         * lib/isnan.c: Consider the USE_FLOAT macro.
8618         * m4/isnanf.m4: New file.
8619
8620 2007-04-06  Bruno Haible  <bruno@clisp.org>
8621
8622         * modules/gettext-h (configure.ac): AC_SUBST LIBINTL and LTLIBINTL.
8623         (Link): New section.
8624
8625         * modules/canonicalize-lgpl-tests (Makefile.am): Undo last change.
8626
8627 2007-04-06  Bruno Haible  <bruno@clisp.org>
8628
8629         Assume the 'long double' type.
8630         * m4/longdouble.m4: Remove file.
8631         * config/srclist.txt: Don't mention longdouble.m4.
8632         * lib/allocsa.h: Assume HAVE_LONG_DOUBLE to be true.
8633         * lib/float+.h: Likewise.
8634         * lib/frexp.c: Likewise.
8635         * lib/printf-args.h: Likewise.
8636         * lib/printf-args.c: Likewise.
8637         * lib/printf-frexp.c: Likewise.
8638         * lib/printf-parse.c: Likewise.
8639         * lib/vasnprintf.c: Likewise.
8640         * m4/allocsa.m4: Remove gt_TYPE_LONGDOUBLE invocation.
8641         * m4/intl.m4: Likewise.
8642         * m4/isnanl.m4: Likewise.
8643         * m4/printf.m4: Likewise.
8644         * m4/printf-frexpl.m4: Likewise.
8645         * m4/vasnprintf.m4: Likewise.
8646         * modules/allocsa (Files): Remove m4/longdouble.m4.
8647         * modules/gettext (Files): Likewise.
8648         * modules/relocatable-prog-wrapper (Files): Likewise.
8649         * modules/vasnprintf (Files): Likewise.
8650         * modules/isnanl (Files): Likewise.
8651         (Include): Simplify.
8652         * modules/isnanl-nolibm (Files): Remove m4/longdouble.m4.
8653         (Include): Simplify.
8654         * modules/printf-frexpl (Files): Remove m4/longdouble.m4.
8655         (Include): Simplify.
8656         * modules/snprintf-posix-tests (Files): Remove m4/longdouble.m4.
8657         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
8658         * modules/sprintf-posix-tests (Files): Remove m4/longdouble.m4.
8659         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
8660         * modules/vasnprintf-posix-tests (Files): Remove m4/longdouble.m4.
8661         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
8662         * modules/vasprintf-posix-tests (Files): Remove m4/longdouble.m4.
8663         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
8664         * modules/vsnprintf-posix-tests (Files): Remove m4/longdouble.m4.
8665         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
8666         * modules/vsprintf-posix-tests (Files): Remove m4/longdouble.m4.
8667         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
8668         * tests/test-isnanl-nolibm.c: Assume HAVE_LONG_DOUBLE to be true.
8669         * tests/test-isnanl.c: Likewise.
8670         * tests/test-snprintf-posix.h: Likewise.
8671         * tests/test-sprintf-posix.h: Likewise.
8672         * tests/test-vasnprintf-posix.c: Likewise.
8673         * tests/test-vasnprintf-posix2.c: Likewise.
8674         * tests/test-vasprintf-posix.c: Likewise.
8675
8676 2007-04-06  Bruno Haible  <bruno@clisp.org>
8677
8678         Fix problem with Compaq (ex-DEC) Desktop C compiler on Tru64.
8679         * lib/math_.h [__DECC]: Include the overridden include file through
8680         #include_next, outside the double-inclusion guard.
8681         * lib/stdio_.h [__DECC]: Likewise.
8682         * lib/stdlib_.h [__DECC]: Likewise.
8683         * lib/string_.h [__DECC]: Likewise.
8684         * lib/time_.h [__DECC]: Likewise.
8685         * lib/wchar_.h [__DECC]: Likewise.
8686         * lib/wctype_.h [__DECC]: Likewise.
8687         * lib/inttypes_.h [__DECC]: Likewise.
8688         Reported by Albert Chin <china@thewrittenword.com> in
8689         <http://lists.gnu.org/archive/html/bug-gnulib/2007-04/msg00088.html>.
8690
8691 2007-04-04  Eric Blake  <ebb9@byu.net>
8692
8693         * m4/stdint.m4 (gl_STDINT_H): Detect WINT_MAX bug in cygwin
8694         1.5.x.
8695
8696 2007-04-04  Bruno Haible  <bruno@clisp.org>
8697
8698         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct
8699         rounding. Don't assume that FreeBSD 6 and NetBSD 4 pass this test.
8700
8701 2007-04-04  Bruno Haible  <bruno@clisp.org>
8702
8703         * tests/test-vasnprintf-posix.c (test_function): Allow two possible
8704         results for "%010a" of Infinity and NaN.
8705         * tests/test-vasprintf-posix.c (test_function): Likewise.
8706         * tests/test-snprintf-posix.h (test_function): Likewise.
8707         * tests/test-sprintf-posix.h (test_function): Likewise.
8708         * tests/test-fprintf-posix.h (test_function): Remove these tests.
8709         * tests/test-printf-posix.h (test_function): Likewise.
8710         * tests/test-fprintf-posix.out: Update.
8711         Needed for FreeBSD 6.1.
8712
8713 2007-04-04  Bruno Haible  <bruno@clisp.org>
8714
8715         * DEPENDENCIES: Remove mentions of tar and gzip, since they are not
8716         directly used by the gnulib modules nor by gnulib-tool.
8717
8718 2007-04-04  Paul Eggert  <eggert@cs.ucla.edu>
8719
8720         * DEPENDENCIES: Give overall description of version dependency
8721         desirability.  Use more-typical names for apps.
8722         Add shell, coreutils, diffutils, grep, tar, gzip.
8723
8724 2007-04-04  Simon Josefsson  <simon@josefsson.org>
8725
8726         * MODULES.html.sh: Rename crypto modules.  Remove iconvme.
8727
8728 2007-04-04  Karl Berry  <karl@gnu.org>
8729
8730         * MODULES.html.sh (func_module): missing '.
8731
8732 2007-04-03  Bruno Haible  <bruno@clisp.org>
8733
8734         * modules/argmatch-tests (Makefile.am): New variable
8735         test_argmatch_LDADD.
8736         * modules/argp-tests (Makefile.am): New variable test_argp_LDADD.
8737         * modules/array-list-tests (Makefile.am): New variable
8738         test_array_list_LDADD.
8739         * modules/array-oset-tests (Makefile.am): New variable
8740         test_array_oset_LDADD.
8741         * modules/avltree-list-tests (Makefile.am): New variable
8742         test_avltree_list_LDADD.
8743         * modules/avltree-oset-tests (Makefile.am): New variable
8744         test_avltree_oset_LDADD.
8745         * modules/avltreehash-list-tests (Makefile.am): New variable
8746         test_avltreehash_list_LDADD.
8747         * modules/canonicalize-lgpl-tests (Makefile.am): New variable
8748         test_canonicalize_lgpl_LDADD.
8749         * modules/carray-list-tests (Makefile.am): New variable
8750         test_carray_list_LDADD.
8751         * modules/dirname-tests (Makefile.am): New variable
8752         test_dirname_LDADD.
8753         * modules/linked-list-tests (Makefile.am): New variable
8754         test_linked_list_LDADD.
8755         * modules/linkedhash-list-tests (Makefile.am): New variable
8756         test_linkedhash_list_LDADD.
8757         * modules/rbtree-list-tests (Makefile.am): New variable
8758         test_rbtree_list_LDADD.
8759         * modules/rbtree-oset-tests (Makefile.am): New variable
8760         test_rbtree_oset_LDADD.
8761         * modules/rbtreehash-list-tests (Makefile.am): New variable
8762         test_rbtreehash_list_LDADD.
8763         * modules/xvasprintf-tests (Makefile.am): New variable
8764         test_xvasprintf_LDADD.
8765         Reported by Eric Blake.
8766
8767 2007-04-03  Eric Blake  <ebb9@byu.net>
8768
8769         * DEPENDENCIES: Weaken m4 requirements.
8770
8771 2007-04-03  Bruno Haible  <bruno@clisp.org>
8772
8773         * modules/frexp-tests (configure.ac): Remove AC_SUBST.
8774         * modules/isnanl-tests (configure.ac): Likewise.
8775
8776 2007-04-03  Ben Pfaff  <blp@gnu.org>
8777
8778         * modules/iconv_open: Add $(srcdir)/ to source directory
8779         references in Makefile fragments that call gperf, to fix VPATH
8780         builds.
8781
8782 2007-04-03  Bruno Haible  <bruno@clisp.org>
8783
8784         * modules/ldexpl (Depends-on): Add isnanl, remove isnanl-nolibm.
8785         * lib/ldexpl.c: Undo last change.
8786
8787 2007-04-03  Bruno Haible  <bruno@clisp.org>
8788
8789         * modules/printf-frexpl (Depends-on): Undo last change.
8790         (Files): Add m4/ldexpl.m4.
8791
8792 2007-04-03  Bruno Haible  <bruno@clisp.org>
8793
8794         * m4/isnanl.m4 (gl_FUNC_ISNANL): Substitute ISNANL_LIBM.
8795         * modules/isnanl (Link): New section.
8796
8797         * m4/frexp.m4 (gl_FUNC_FREXP): Substitute FREXP_LIBM.
8798         * modules/frexp (Link): New section.
8799
8800         * m4/frexpl.m4 (gl_FUNC_FREXPL): Substitute FREXPL_LIBM.
8801         * modules/frexpl (Link): New section.
8802
8803         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Substitute LDEXPL_LIBM.
8804         * modules/ldexpl (Link): New section.
8805
8806 2007-04-03  Bruno Haible  <bruno@clisp.org>
8807
8808         * modules/TEMPLATE-EXTENDED: New file.
8809         * gnulib-tool (func_all_modules, func_verify_module): Exclude it.
8810
8811 2007-04-03  Bruno Haible  <bruno@clisp.org>
8812
8813         * DEPENDENCIES: New file.
8814         Suggested by Simon Josefsson.
8815
8816 2007-04-03  Bruno Haible  <bruno@clisp.org>
8817
8818         * doc/gnulib.texi: Escape @.
8819
8820 2007-04-03  James Youngman  <jay@gnu.org>
8821         and Paul Eggert  <eggert@cs.ucla.edu>
8822
8823         * lib/stat-time.h (get_stat_birthtime): Check for zero-valued
8824         birthtime on all systems that have birthtime, not just those which
8825         use st_birthtimensec rather than st_birthtim.  Putting zero in
8826         st_birthtim.tv_sec is how (for example) FreeBSD/x86 6.1 indicates
8827         that the birth time is not available for files on an NFS mount.
8828
8829 2007-04-03  Simon Josefsson  <simon@josefsson.org>
8830
8831         * modules/memxor: Move back from crypto/, suggested by Bruno.
8832         * modules/crypto/hmac-sha1: Fix memxor dependency.
8833
8834         * modules/crypto/gc: Moved from ../.
8835
8836 2007-04-02  Eric Blake  <ebb9@byu.net>
8837
8838         * lib/ldexpl.c (includes): Avoid libm.
8839
8840         * modules/printf-frexpl (Depends-on): Depend on ldexpl.
8841
8842 2007-04-02  Bruno Haible  <bruno@clisp.org>
8843
8844         * lib/sysexit_.h (EX_OK): Disable the EX_OK definition from <unistd.h>
8845         on IRIX.
8846
8847 2007-04-02  Bruno Haible  <bruno@clisp.org>
8848
8849         * m4/intdiv0.m4 (gt_INTDIV0): Avoid performing the test for real on
8850         x86 or x86_64 platforms running MacOS X.
8851         Reported by Ryan Schmidt <@ryandesign.com>.
8852
8853 2007-04-02  Bruno Haible  <bruno@clisp.org>
8854
8855         * m4/intdiv0.m4 (gt_INTDIV0): When cross-compiling, treat x86_64 like
8856         i386.
8857
8858 2007-04-01  Simon Josefsson  <simon@josefsson.org>
8859
8860         * modules/crypto/arcfour: Moved from ../.
8861         * modules/crypto/arcfour-tests: Moved from ../.
8862         * modules/crypto/arctwo: Moved from ../.
8863         * modules/crypto/arctwo-tests: Moved from ../.
8864         * modules/crypto/des: Moved from ../.
8865         * modules/crypto/des-tests: Moved from ../.
8866         * modules/crypto/gc-arcfour: Moved from ../.
8867         * modules/crypto/gc-arcfour-tests: Moved from ../.
8868         * modules/crypto/gc-arctwo: Moved from ../.
8869         * modules/crypto/gc-arctwo-tests: Moved from ../.
8870         * modules/crypto/gc-des: Moved from ../.
8871         * modules/crypto/gc-des-tests: Moved from ../.
8872         * modules/crypto/gc-hmac-md5: Moved from ../.
8873         * modules/crypto/gc-hmac-md5-tests: Moved from ../.
8874         * modules/crypto/gc-hmac-sha1: Moved from ../.
8875         * modules/crypto/gc-hmac-sha1-tests: Moved from ../.
8876         * modules/crypto/gc-md2: Moved from ../.
8877         * modules/crypto/gc-md2-tests: Moved from ../.
8878         * modules/crypto/gc-md4: Moved from ../.
8879         * modules/crypto/gc-md4-tests: Moved from ../.
8880         * modules/crypto/gc-md5: Moved from ../.
8881         * modules/crypto/gc-md5-tests: Moved from ../.
8882         * modules/crypto/gc-pbkdf2-sha1: Moved from ../.
8883         * modules/crypto/gc-pbkdf2-sha1-tests: Moved from ../.
8884         * modules/crypto/gc-random: Moved from ../.
8885         * modules/crypto/gc-rijndael: Moved from ../.
8886         * modules/crypto/gc-rijndael-tests: Moved from ../.
8887         * modules/crypto/gc-sha1: Moved from ../.
8888         * modules/crypto/gc-sha1-tests: Moved from ../.
8889         * modules/crypto/gc-tests: Moved from ../.
8890         * modules/crypto/hmac-md5: Moved from ../.
8891         * modules/crypto/hmac-md5-tests: Moved from ../.
8892         * modules/crypto/hmac-sha1: Moved from ../.
8893         * modules/crypto/hmac-sha1-tests: Moved from ../.
8894         * modules/crypto/md2: Moved from ../.
8895         * modules/crypto/md2-tests: Moved from ../.
8896         * modules/crypto/md4: Moved from ../.
8897         * modules/crypto/md4-tests: Moved from ../.
8898         * modules/crypto/md5: Moved from ../.
8899         * modules/crypto/md5-tests: Moved from ../.
8900         * modules/crypto/memxor: Moved from ../.
8901         * modules/crypto/rijndael: Moved from ../.
8902         * modules/crypto/rijndael-tests: Moved from ../.
8903         * modules/crypto/sha1: Moved from ../.
8904
8905 2007-03-30  James Youngman  <jay@gnu.org>
8906
8907         * tests/test-stat-time.c (prepare_test): use chmod() rather than
8908         rename() to change the ctime of a file (because ctime is unaffected
8909         by rename on jfs2 on AIX 5.1).
8910         (main): Start by doing cleanup, in case a previous run failed leaving
8911         test files behind.
8912
8913 2007-03-31  Bruno Haible  <bruno@clisp.org>
8914
8915         Support old proprietary implementations of iconv.
8916         * modules/iconv_open: New file.
8917         * lib/iconv_.h: New file.
8918         * m4/iconv_h.m4: New file.
8919         * lib/iconv_open.c: New file.
8920         * lib/iconv_open-aix.gperf: New file.
8921         * lib/iconv_open-hpux.gperf: New file.
8922         * lib/iconv_open-irix.gperf: New file.
8923         * lib/iconv_open-osf.gperf: New file.
8924         * m4/iconv_open.m4: New file.
8925         * modules/linebreak (Depends-on): Add iconv_open.
8926         * modules/striconv (Depends-on): Likewise.
8927         * modules/striconveh (Depends-on): Likewise.
8928         * modules/unicodeio (Depends-on): Likewise.
8929         * lib/striconveh.h (mem_cd_iconveh, str_cd_iconveh): Allow cd to be
8930         (iconv_t)(-1).
8931         * lib/striconveh.c (mem_cd_iconveh_internal): Use an indirect
8932         conversion if cd is (iconv_t)(-1).
8933         (mem_iconveh, str_iconveh): Don't fail just because a direct conversion
8934         is not possible.
8935
8936 2007-03-31  Bruno Haible  <bruno@clisp.org>
8937
8938         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
8939         work on Solaris either. Protect also second use of "autodetect_jp".
8940
8941 2007-03-31  Bruno Haible  <bruno@clisp.org>
8942
8943         * m4/frexpl.m4 (gl_FUNC_FREXPL): Set HAVE_DECL_FREXPL to 0 when
8944         the function is not present.
8945
8946 2007-03-31  Bruno Haible  <bruno@clisp.org>
8947
8948         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Set HAVE_DECL_LDEXPL to 0 when
8949         the function is not present.
8950
8951 2007-03-31  Bruno Haible  <bruno@clisp.org>
8952
8953         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-29 patch. Test also against
8954         a bug in HP-UX iconv_open().
8955
8956 2007-03-31  Bruno Haible  <bruno@clisp.org>
8957
8958         * MODULES.html.sh (func_module): Don't show gnulib-common.m4.
8959         (Mathematics <math.h>): New section, add fpieee.
8960         (Input/output <stdio.h>): Add fseterr.
8961         (Mathematics <math.h>): New section, add printf-frexp.
8962         (Container data structures): Add sublist.
8963         (Core language properties): Add fpucw, inline.
8964         (Functions for greatest-width integer types <inttypes.h>): Add
8965         imaxabs, imaxdiv, inttypes.
8966         (Mathematics <math.h>): Add frexp, frexpl, isnan-nolibm, isnanl,
8967         isnanl-nolibm, ldexp.
8968         (Mathematics <math.h>): New section, add printf-frexpl.
8969         (Support for systems lacking POSIX:2001): Add fprintf-posix,
8970         printf-posix, snprintf-posix, sprintf-posix, string, search, socklen,
8971         sys_select, sys_socket, vasnprintf-posix, vasprintf-posix,
8972         vfprintf-posix, vprintf-posix, vsnprintf-posix, vsprintf-posix.
8973         (Unicode string functions): Add unistr/u*-mbtoucr.
8974         (Java): Add javacomp-script, javaexec-script.
8975         (C#): Add csharpcomp-script, csharpexec-script.
8976         (Support for building libraries and executables): Add havelib,
8977         relocatable-*.
8978         (Support for maintaining and releasing projects): Renamed from
8979         'Support for maintaining and release projects'. Add announce-gen.
8980
8981 2007-03-31  Bruno Haible  <bruno@clisp.org>
8982
8983         * README: Talk primarily about git.
8984         (git and CVS): Renamed from CVS.
8985         * doc/gnulib.texi (Introduction, Build robot for gnulib): Mention that
8986         gnulib is available through git.
8987         * doc/gnulib-tool.texi (CVS Issues): Mention git and svn as well.
8988
8989 2007-03-30  Bruno Haible  <bruno@clisp.org>
8990
8991         * lib/alloca_.h: Change prefix of double-inclusion guard macro to _GL_.
8992         * lib/poll_.h: Likewise.
8993         * lib/stat_.h: Likewise.
8994         * lib/sys_time_.h: Likewise.
8995         * lib/sysexit_.h: Likewise.
8996         * lib/glob_.h: Prefix double-inclusion guard macro with _GL_.
8997         * lib/stdbool_.h: Likewise.
8998         * lib/byteswap_.h: Add double-inclusion guard.
8999
9000 2007-03-30  Sergey Poznyakoff  <gray@mirddin.farlep.net>
9001
9002         * lib/sysexit_.h: Prefix double-inclusion guard macro with _GNULIB.
9003
9004 2007-03-30  Karl Berry  <karl@gnu.org>
9005
9006         * config/srclist-update: double space after USA in the license
9007         substitution, since that's how it's usually (?) written.
9008
9009 2007-03-30  Paul Eggert  <eggert@cs.ucla.edu>
9010
9011         * lib/write-any-file.c (can_write_any_file): Fix else-else bug
9012         reported by Bruno Haible.
9013
9014 2007-03-29  Bruno Haible  <bruno@clisp.org>
9015
9016         * m4/iconv.m4 (AM_ICONV_LINK): Require AC_CANONICAL_HOST. Test against
9017         a bug in AIX iconv().
9018
9019 2007-03-29  Bruno Haible  <bruno@clisp.org>
9020
9021         * modules/ldexpl-tests: New file.
9022         * tests/test-ldexpl.c: New file.
9023
9024 2007-03-29  Bruno Haible  <bruno@clisp.org>
9025
9026         * lib/ldexpl.c: Include fpucw.h.
9027         (ldexpl): Use BEGIN/END_LONG_DOUBLE_ROUNDING. Skip the last unneeded
9028         multiplication.
9029         * modules/ldexpl (Depends-on): Add fpucw.
9030
9031 2007-03-29  Bruno Haible  <bruno@clisp.org>
9032
9033         * modules/ldexpl: New file.
9034         * m4/ldexpl.m4: New file.
9035         * lib/math_.h (ldexpl): Define to a replacement if REPLACE_LDEXPL is
9036         set.
9037         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize also GNULIB_LDEXPL,
9038         REPLACE_LDEXPL.
9039         * modules/math (Makefile.am): Substitute also GNULIB_LDEXPL,
9040         REPLACE_LDEXPL.
9041         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
9042         gl_FUNC_LDEXPL_WORKS.
9043         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Remove test for ldexpl.
9044         * modules/mathl (Files): Remove lib/ldexpl.c.
9045         (Depends-on): Add ldexpl.
9046
9047 2007-03-29  Bruno Haible  <bruno@clisp.org>
9048
9049         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Declare frexpl.
9050
9051 2007-03-29  Bruno Haible  <bruno@clisp.org>
9052
9053         * tests/test-striconveh.c (main): Don't assume that a direct conversion
9054         between ISO-8859-1 and ISO-8859-2 is possible. Needed for OSF/1, IRIX
9055         and possibly also HP-UX.
9056         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
9057         work on AIX, IRIX, HP-UX, OSF/1.
9058         * tests/uniconv/test-u16-conv-from-enc.c (main): Likewise.
9059         * tests/uniconv/test-u16-strconv-from-enc.c (main): Likewise.
9060         * tests/uniconv/test-u32-conv-from-enc.c (main): Likewise.
9061         * tests/uniconv/test-u32-strconv-from-enc.c (main): Likewise.
9062         * tests/uniconv/test-u8-conv-from-enc.c (main): Likewise.
9063         * tests/uniconv/test-u8-strconv-from-enc.c (main): Likewise.
9064
9065 2007-03-29  Bruno Haible  <bruno@clisp.org>
9066
9067         * tests/test-stat-time.c: Include <fcntl.h>, not <sys/fcntl.h>.
9068
9069 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
9070
9071         * lib/acl-internal.h (acl_get_fd, acl_set_fd): undef before defining,
9072         to work around a problem on OSF/1 5.1 reported by Bruno Haible.
9073
9074 2007-03-29  Eric Blake  <ebb9@byu.net>
9075
9076         * lib/acl-internal.h: Remove redundant include.
9077         (ACL_NOT_WELL_SUPPORTED): Also filter on EBUSY, returned by
9078         Cygwin when a file is locked.
9079
9080 2007-03-29  Bruno Haible  <bruno@clisp.org>
9081
9082         * lib/vasprintf.c [IN_LIBASPRINTF]: Include different specification
9083         file.
9084         * lib/asprintf.c [IN_LIBASPRINTF]: Likewise.
9085
9086 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
9087
9088         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Don't bother to
9089         try to remove a parent directory if the child couldn't be removed
9090         (except for the first rmdir, which could fail because the child
9091         doesn't exist).  Problem reported by Jeff Blaine in
9092         <http://lists.gnu.org/archive/html/bug-tar/2007-03/msg00014.html>.
9093
9094 2007-03-28  Bruno Haible  <bruno@clisp.org>
9095
9096         * lib/striconveh.c (utf8conv_carefully): New function.
9097         (mem_cd_iconveh_internal): Invoke it.
9098
9099 2007-03-28  Bruno Haible  <bruno@clisp.org>
9100
9101         * lib/striconveh.c (mem_cd_iconveh_internal): Use u8_mbtoucr instead
9102         of u8_mbtouc in order to distinguish invalid and incomplete UTF-8
9103         input.
9104         * modules/striconveh (Depends-on): Add unistr/u8-mbtoucr. Replace
9105         utf8-ucs4 with unistr/u8-mbtouc. Replace ucs4-utf8 with
9106         unistr/u8-uctomb.
9107
9108 2007-03-28  Bruno Haible  <bruno@clisp.org>
9109
9110         * modules/unistr/u8-mbtoucr: New file.
9111         * lib/unistr/u8-mbtoucr.c: New file.
9112         * modules/unistr/u16-mbtoucr: New file.
9113         * lib/unistr/u16-mbtoucr.c: New file.
9114         * modules/unistr/u16-mbtoucr: New file.
9115         * lib/unistr/u16-mbtoucr.c: New file.
9116         * lib/unistr.h (u8_mbtoucr, u16_mbtoucr, u32_mbtoucr): New declarations.
9117
9118 2007-03-27  Simon Josefsson  <simon@josefsson.org>
9119             Bruno Haible  <bruno@clisp.org>
9120
9121         * m4/vasprintf.m4: Convert AC_SUBST into shell variable for
9122         REPLACE_VASPRINTF.  Set HAVE_VASPRINTF.  Add
9123         AC_REQUIRE([gl_STDIO_H_DEFAULTS]).
9124
9125         * m4/stdio_h.m4: Add stubs for vasprintf too.
9126
9127         * modules/stdio: Support vasprintf in sed command.
9128
9129         * modules/vasprintf: Depend on stdio for prototypes.  Remove
9130         vasprintf.h.  Add stdio module indicator.
9131
9132         * lib/stdio_.h: Declare asprintf and vasprintf, based on
9133         vasprintf.h.
9134
9135         * lib/vasprintf.h: File removed.
9136
9137         * lib/asprintf.c: Use stdio.h instead of vasprintf.h.
9138         * lib/vasprintf.c: Ditto.
9139         * lib/xvasprintf.c: Ditto.
9140         * tests/test-vasprintf-posix.c: Ditto.
9141         * tests/test-vasprintf.c: Ditto.
9142
9143 2007-03-27  Bruno Haible  <bruno@clisp.org>
9144
9145         Make vasnprintf multithread-safe.
9146         * lib/vasnprintf.c (decimal_point_char): New function.
9147         (VASNPRINTF): Use it.
9148         Suggested by Simon Josefsson.
9149
9150 2007-03-27  Eric Blake  <ebb9@byu.net>
9151
9152         Support sub-second birthtime on cygwin.
9153         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Also check for st_birthtim.
9154         * lib/stat-time.h (STAT_TIMESPEC): Adjust comments.
9155         (get_stat_birthtime): Also work with st_birthtim.
9156
9157 2007-03-27  Paul Eggert  <eggert@cs.ucla.edu>
9158
9159         * lib/stat-time.h (USE_BIRTHTIME): Remove.
9160         (get_stat_atime_ns, get_stat_ctime_ns, get_stat_mtime_ns):
9161         (get_stat_birthtime_ns): Do not try to use "spare" fields.
9162         (get_stat_birthtime_ns): Simplify compile-time tests.
9163         (get_stat_birthtime): Change the API to look like
9164         get_stat_mtime etc., except return a negative tv_nsec on error.
9165         * m4/stat-time.m4 (gl_STAT_TIME, gl_STAT_BIRTHTIME):
9166         Don't check for "spare" fields.
9167         (gl_STAT_BIRTHTIME): Don't check for struct stat.st_birthtimespec.tv_sec
9168         or for struct stat.st_birthtime, as these tests aren't used.
9169         * tests/test-stat-time.c (test_birthtime): Adjust to new API.
9170
9171 2007-03-27  Bruno Haible  <bruno@clisp.org>
9172
9173         * lib/stat-time.h: Include <sys/stat.h>.
9174
9175 2007-03-27  James Youngman  <jay@gnu.org>
9176
9177         * lib/stat-time.h (get_stat_birthtime): New function for
9178           retrieving st_birthtime as provided by UFS2 (hence *BSD).
9179         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Probe for st_birthtime
9180           and its variants.
9181         * modules/stat-time (configure.ac): call gl_STAT_BIRTHTIME.
9182         * modules/stat-time-test: New file.
9183         * tests/test-stat-time.c: New test, devised by Bruno Haible.
9184
9185 2007-03-26  Bruno Haible  <bruno@clisp.org>
9186
9187         Better support of signalling NaNs.
9188         * lib/atanl.c: Include isnanl.h.
9189         (atanl): Perform test for NaN at the beginning of the function and
9190         through a call to isnanl.
9191         * lib/cosl.c: Include isnanl.h.
9192         (cosl): Perform test for NaN at the beginning of the function and
9193         through a call to isnanl.
9194         * lib/ldexpl.c: Include isnanl.h.
9195         (ldexpl): Perform test for NaN through a call to isnanl.
9196         * lib/logl.c: Include isnanl.h.
9197         (logl): Perform test for NaN at the beginning of the function and
9198         through a call to isnanl.
9199         * lib/sinl.c: Include isnanl.h.
9200         (sinl): Perform test for NaN at the beginning of the function and
9201         through a call to isnanl.
9202         * lib/sqrtl.c: Include isnanl.h.
9203         (sqrtl): Perform test for NaN at the beginning of the function and
9204         through a call to isnanl.
9205         * lib/tanl.c: Include isnanl.h.
9206         (tanl): Perform test for NaN at the beginning of the function and
9207         through a call to isnanl.
9208         * lib/trigl.c (ieee754_rem_pio2l): Remove test for NaN.
9209         * modules/mathl (Depends-on): Add isnanl.
9210
9211 2007-03-26  Eric Blake  <ebb9@byu.net>
9212
9213         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Fix
9214         regression in logic sense of previous patch.
9215
9216 2007-03-26  Bruno Haible  <bruno@clisp.org>
9217
9218         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Don't use
9219         unportable shell command "if ! ...".
9220         Reported by Ralf Wildenhues.
9221
9222 2007-03-25  Bruno Haible  <bruno@clisp.org>
9223
9224         * lib/sysexit_,h: If HAVE_SYSEXITS_H is defined, include the original
9225         <sysexits.h> file, and only add EX_CONFIG.
9226         * m4/sysexits.m4 (gl_SYSEXITS): If <sysexits.h> exists, check its
9227         absolute file name and whether it is sufficient. Substitute also
9228         HAVE_SYSEXITS_H and ABSOLUTE_SYSEXITS_H.
9229         * modules/sysexits (Makefile.am): Substitute HAVE_SYSEXITS_H and
9230         ABSOLUTE_SYSEXITS_H into sysexits.h.
9231
9232 2007-03-25  Bruno Haible  <bruno@clisp.org>
9233
9234         * lib/getaddrinfo.c (getaddrinfo): Don't access hints->ai_flags when
9235         hints is NULL.
9236
9237 2007-03-25  Bruno Haible  <bruno@clisp.org>
9238
9239         * lib/uniconv/u8-conv-from-enc.c (u8_conv_from_encoding): Add a cast.
9240         * lib/uniconv/u8-strconv-to-enc.c (u8_strconv_to_encoding): Likewise.
9241
9242 2007-03-25  Bruno Haible  <bruno@clisp.org>
9243
9244         * lib/vasnprintf.c: Include langinfo.h.
9245         (VASNPRINTF): Prefer nl_langinfo over localeconv, since it's more
9246         multithread-safe.
9247         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): New macro.
9248         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke it.
9249         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
9250         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
9251         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
9252         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
9253         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
9254         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX: Likewise.
9255         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
9256         Reported by Simon Josefsson.
9257
9258 2007-03-25  Bruno Haible  <bruno@clisp.org>
9259
9260         * lib/printf-parse.c [!IN_LIBINTL]: Include <stdint.h>, for intmax_t.
9261         (PRINTF_PARSE): Make the support for size specifier 'j' unconditional.
9262         * modules/vasnprintf (Depends-on): Add stdint.
9263
9264 2007-03-25  Bruno Haible  <bruno@clisp.org>
9265
9266         * modules/fpieee: New file.
9267         * m4/fpieee.m4: New file.
9268         * modules/isnan-nolibm (Depends-on): Add fpieee.
9269         * modules/isnanl-nolibm (Depends-on): Add fpieee.
9270         * modules/isnanl (Depends-on): Add fpieee.
9271
9272 2007-03-25  Bruno Haible  <bruno@clisp.org>
9273
9274         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Test also finite numbers.
9275
9276 2007-03-25  Bruno Haible  <bruno@clisp.org>
9277
9278         Avoid test failures on IRIX 6.5.
9279         * tests/test-frexpl.c (MIN_NORMAL_EXP): New macro.
9280         (main): Use it.
9281         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP): New
9282         macros.
9283         (main): Use them.
9284
9285 2007-03-25  Bruno Haible  <bruno@clisp.org>
9286
9287         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): New macro.
9288         (gl_FUNC_FREXPL): Invoke it. Set REPLACE_FREXPL to 1 if it frexpl
9289         exists but doesn't work.
9290         * lib/math_.h (frexpl): Define as a replacement macro if REPLACE_FREXPL
9291         is set. Don't provide a prototype if REPLACE_FREXPL is not set.
9292         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_FREXPL.
9293         * modules/math (Makefile.am) Substibute also REPLACE_FREXPL into math.h.
9294
9295 2007-03-25  Bruno Haible  <bruno@clisp.org>
9296
9297         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Add check whether frexp(inf)
9298         returns inf. Needed on IRIX 6.5.
9299
9300 2007-03-25  Bruno Haible  <bruno@clisp.org>
9301
9302         * tests/test-frexpl.c: Include isnanl-nolibm.h.
9303         (main): Use isnanl instead of x != x idiom.
9304         * modules/frexpl-tests (Depends-on): Add isnanl-nolibm.
9305
9306         * tests/test-frexp.c: Include isnan.h.
9307         (main): Use isnan instead of x != x idiom.
9308         * modules/frexp-tests (Depends-on): Add isnan-nolibm.
9309
9310 2007-03-25  Bruno Haible  <bruno@clisp.org>
9311
9312         * tests/test-frexp.c (NaN): New function/macro.
9313         (main): Use it instead of 0.0 / 0.0.
9314         * tests/test-isnan.c (NaN): New function/macro.
9315         (main): Use it instead of 0.0 / 0.0.
9316         * tests/test-vasnprintf-posix.c (NaN): New function/macro.
9317         (test_function): Use it instead of 0.0 / 0.0.
9318         * tests/test-vasprintf-posix.c (NaN): New function/macro.
9319         (test_function): Use it instead of 0.0 / 0.0.
9320         * tests/test-snprintf-posix.h (NaN): New function/macro.
9321         (test_function): Use it instead of 0.0 / 0.0.
9322         * tests/test-sprintf-posix.h (NaN): New function/macro.
9323         (test_function): Use it instead of 0.0 / 0.0.
9324         * tests/test-fprintf-posix.h (NaN): New function/macro.
9325         (test_function): Use it instead of 0.0 / 0.0.
9326         * tests/test-printf-posix.h (NaN): New function/macro.
9327         (test_function): Use it instead of 0.0 / 0.0.
9328
9329         * lib/isnan.c (FUNC): Work around a DEC C compiler bug.
9330
9331 2007-03-25  Bruno Haible  <bruno@clisp.org>
9332
9333         * lib/glob_.h: Include <sys/stat.h>. Avoids warnings on AIX 5.1.
9334
9335 2007-03-25  Bruno Haible  <bruno@clisp.org>
9336
9337         * lib/regexec.c (merge_state_with_log): Make static.
9338
9339 2007-03-25  Bruno Haible  <bruno@clisp.org>
9340
9341         * lib/trigl.c (kernel_rem_pio2): Make static.
9342
9343 2007-03-25  Bruno Haible  <bruno@clisp.org>
9344
9345         * lib/sincosl.c (sincosl_table): Make static.
9346
9347 2007-03-25  Bruno Haible  <bruno@clisp.org>
9348
9349         * lib/argp.h (__restrict): Define to empty, rather than to 'restrict',
9350         if the compiler does not support C99.
9351
9352 2007-03-25  Bruno Haible  <bruno@clisp.org>
9353
9354         * modules/time (Makefile.am): Ensure all rule action lines start with a
9355         tab.
9356
9357 2007-03-24  Bruno Haible  <bruno@clisp.org>
9358
9359         * modules/tsearch-tests: New file.
9360         * tests/test-tsearch.sh: New file.
9361         * tests/test-tsearch.c: New file, mostly copied from glibc.
9362
9363         * modules/search-tests: New file.
9364         * tests/test-search.c: New file.
9365
9366         * modules/search: New file.
9367         * lib/search_.h: New file, incorporating lib/tsearch.h.
9368         * m4/search_h.m4: New file.
9369         * lib/tsearch.h: Remove file.
9370         * lib/tsearch.c: Include search.h instead of tsearch.h.
9371         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Require gl_SEARCH_H_DEFAULTS. Set
9372         HAVE_TSEARCH.
9373         * modules/tsearch (Files): Remove lib/tsearch.h.
9374         (Depends-on): Add search.
9375         (configure.ac): Invoke gl_SEARCH_MODULE_INDICATOR.
9376         (Include): Change tsearch.h into search.h.
9377
9378 2007-03-24  Bruno Haible  <bruno@clisp.org>
9379
9380         * modules/fpucw: New file.
9381         * lib/fpucw.h: New file.
9382         * lib/frexp.c: Include fpucw.h.
9383         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
9384         (FUNC): Use them.
9385         * lib/printf-frexp.c: Include fpucw.h.
9386         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
9387         (FUNC): Use them.
9388         * lib/vasnprintf.c: Include fpucw.h.
9389         (VASNPRINTF): Invoke BEGIN/END_LONG_DOUBLE_ROUNDING around the
9390         'long double' calculations.
9391         * tests/test-frexpl.c: Include fpucw.h.
9392         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
9393         * tests/test-printf-frexpl.c: Include fpucw.h.
9394         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
9395         * modules/frexpl (Depends-on): Add fpucw.
9396         * modules/printf-frexpl (Depends-on): Likewise.
9397         * modules/fprintf-posix (Depends-on): Likewise.
9398         * modules/snprintf-posix (Depends-on): Likewise.
9399         * modules/sprintf-posix (Depends-on): Likewise.
9400         * modules/vasnprintf-posix (Depends-on): Likewise.
9401         * modules/vasprintf-posix (Depends-on): Likewise.
9402         * modules/vfprintf-posix (Depends-on): Likewise.
9403         * modules/vsnprintf-posix (Depends-on): Likewise.
9404         * modules/vsprintf-posix (Depends-on): Likewise.
9405         * modules/frexpl-tests (Depends-on): Likewise.
9406         * modules/printf-frexpl-tests (Depends-on): Likewise.
9407
9408 2007-03-24  Bruno Haible  <bruno@clisp.org>
9409
9410         * lib/float+.h: New file.
9411         * lib/isnan.c: Include float+.h.
9412         (SIZE): New macro.
9413         (FUNC): Compare only SIZE bytes of the value.
9414         * lib/vasnprintf.c: Include float+.h.
9415         (VASNPRINTF): When comparing agains +0.0L or +0.0, compare only
9416         SIZEOF_LDBL or SIZEOF_DBL bytes.
9417         * modules/isnan-nolibm (Files): Add lib/float+.h.
9418         * modules/isnanl-nolibm (Files): Add lib/float+.h.
9419         * modules/isnanl (Files): Add lib/float+.h.
9420         * modules/vasnprintf (Files): Add lib/float+.h.
9421
9422 2007-03-24  Bruno Haible  <bruno@clisp.org>
9423
9424         * lib/vasnprintf.c [!HAVE_LONG_DOUBLE]: Include printf-frexp.h. Don't
9425         include isnanl-nolibm.h.
9426
9427 2007-03-24  Bruno Haible  <bruno@clisp.org>
9428
9429         * tests/test-read-file.c (main): Don't produce spurious output for
9430         expected situations. Make the test fail if it encountered unexpected
9431         results.
9432
9433 2007-03-24  Bruno Haible  <bruno@clisp.org>
9434
9435         * m4/locale-fr.m4 (gt_LOCALE_FR): Remove the special-casing of NetBSD,
9436         since its fr_FR.ISO8859-1 locale wouldn't pass the tests.
9437
9438 2007-03-24  Bruno Haible  <bruno@clisp.org>
9439
9440         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Fix last change.
9441
9442 2007-03-24  Bruno Haible  <bruno@clisp.org>
9443
9444         * modules/unistr/base (Depends-on): Remove utf8-ucs4-unsafe,
9445         utf16-ucs4-unsafe, utf8-ucs4, utf16-ucs4, ucs4-utf8, ucs4-utf16.
9446
9447         * modules/unistr/u8-mbtouc: Add source files from module utf8-ucs4.
9448         * modules/utf8-ucs4: Turn into a symbolic link to module
9449         unistr/u8-mbtouc.
9450
9451         * modules/unistr/u8-mbtouc-unsafe: Add source files from module
9452         utf8-ucs4-unsafe.
9453         * modules/utf8-ucs4-unsafe: Turn into a symbolic link to module
9454         unistr/u8-mbtouc-unsafe.
9455
9456         * modules/unistr/u16-mbtouc: Add source files from module utf16-ucs4.
9457         * modules/utf16-ucs4: Turn into a symbolic link to module
9458         unistr/u16-mbtouc.
9459
9460         * modules/unistr/u16-mbtouc-unsafe: Add source files from module
9461         utf16-ucs4-unsafe.
9462         * modules/utf16-ucs4-unsafe: Turn into a symbolic link to module
9463         unistr/u16-mbtouc-unsafe.
9464
9465         * modules/unistr/u8-uctomb: Add source files from module utf4-utf8.
9466         * modules/ucs4-utf8: Turn into a symbolic link to module
9467         unistr/u8-ubtomb.
9468
9469         * modules/unistr/u16-uctomb: Add source files from module utf4-utf16.
9470         * modules/ucs4-utf16: Turn into a symbolic link to module
9471         unistr/u16-ubtomb.
9472
9473 2007-03-24  Bruno Haible  <bruno@clisp.org>
9474
9475         * lib/unistr/u8-mbtouc-aux.c: Renamed from lib/unistr/utf8-ucs4.c.
9476         Enable the function only if HAVE_INLINE.
9477         * lib/unistr/u8-mbtouc-unsafe-aux.c: Renamed from
9478         lib/unistr/utf8-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
9479         * lib/unistr/u16-mbtouc-aux.c: Renamed from lib/unistr/utf16-ucs4.c.
9480         Enable the function only if HAVE_INLINE.
9481         * lib/unistr/u16-mbtouc-unsafe-aux.c: Renamed from
9482         lib/unistr/utf16-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
9483         * lib/unistr/u8-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf8.c.
9484         Enable the function only if HAVE_INLINE.
9485         * lib/unistr/u16-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf16.c.
9486         Enable the function only if HAVE_INLINE.
9487         * modules/utf8-ucs4: Update.
9488         * modules/utf8-ucs4-unsafe: Update.
9489         * modules/utf16-ucs4: Update.
9490         * modules/utf16-ucs4-unsafe: Update.
9491         * modules/ucs4-utf8: Update.
9492         * modules/ucs4-utf16: Update.
9493
9494 2007-03-24  Bruno Haible  <bruno@clisp.org>
9495
9496         * lib/utf8-ucs4.h: Remove file.
9497         * lib/utf8-ucs4-unsafe.h: Remove file.
9498         * lib/utf16-ucs4.h: Remove file.
9499         * lib/utf16-ucs4-unsafe.h: Remove file.
9500         * lib/ucs4-utf8.h: Remove file.
9501         * lib/ucs4-utf16.h: Remove file.
9502         * lib/unistr.h: Include their previous contents.
9503         * m4/utf-ucs4.m4: Remove file.
9504         * m4/ucs4-utf.m4: Remove file.
9505         * modules/utf8-ucs4 (Files): Remove lib/utf8-ucs4.h.
9506         (Depends-on): Add unistr/base.
9507         (configure.ac): Remove gl_UTF_UCS4.
9508         (Makefile.am): Update.
9509         (Include): Change to unistr.h.
9510         * modules/utf8-ucs4-unsafe (Files): Remove lib/utf8-ucs4-unsafe.h.
9511         (Depends-on): Add unistr/base.
9512         (configure.ac): Remove gl_UTF_UCS4.
9513         (Makefile.am): Update.
9514         (Include): Change to unistr.h.
9515         * modules/utf16-ucs4 (Files): Remove lib/utf16-ucs4.h.
9516         (Depends-on): Add unistr/base.
9517         (configure.ac): Remove gl_UTF_UCS4.
9518         (Makefile.am): Update.
9519         (Include): Change to unistr.h.
9520         * modules/utf16-ucs4-unsafe (Files): Remove lib/utf16-ucs4-unsafe.h.
9521         (Depends-on): Add unistr/base.
9522         (configure.ac): Remove gl_UTF_UCS4.
9523         (Makefile.am): Update.
9524         (Include): Change to unistr.h.
9525         * modules/ucs4-utf8 (Files): Remove lib/ucs4-utf8.h.
9526         (Depends-on): Add unistr/base.
9527         (configure.ac): Remove gl_UCS4_UTF.
9528         (Makefile.am): Update.
9529         (Include): Change to unistr.h.
9530         * modules/ucs4-utf16 (Files): Remove lib/ucs4-utf16.h.
9531         (Depends-on): Add unistr/base.
9532         (configure.ac): Remove gl_UCS4_UTF.
9533         (Makefile.am): Update.
9534         (Include): Change to unistr.h.
9535         * lib/unistr/utf8-ucs4.c: Include unistr.h instead of utf8-ucs4.h.
9536         * lib/unistr/utf8-ucs4-unsafe.c: Include unistr.h instead of
9537         utf8-ucs4-unsafe.h.
9538         * lib/unistr/utf16-ucs4.c: Include unistr.h instead of utf16-ucs4.h.
9539         * lib/unistr/utf16-ucs4-unsafe.c: Include unistr.h instead of
9540         utf16-ucs4-unsafe.h.
9541         * lib/unistr/ucs4-utf8.c: Include unistr.h instead of ucs4-utf8.h.
9542         * lib/unistr/ucs4-utf16.c: Include unistr.h instead of ucs4-utf16.h.
9543         * lib/unistr/u8-chr.c: Don't include ucs4-utf8.h.
9544         * lib/unistr/u8-strchr.c: Likewise.
9545         * lib/unistr/u8-strrchr.c: Likewise.
9546         * lib/unistr/u16-chr.c: Don't include ucs4-utf16.h.
9547         * lib/unistr/u16-strchr.c: Likewise.
9548         * lib/unistr/u16-strrchr.c: Likewise.
9549         * lib/striconveh.c: Update.
9550         * lib/linebreak.c: Update.
9551
9552 2007-03-24  Bruno Haible  <bruno@clisp.org>
9553
9554         * lib/argp-help.c (fill_in_uparams, canon_doc_option): Cast the
9555         arguments of isspace, isalpha, isalnum, isdigit to 'unsigned char'.
9556
9557 2007-03-22  Bruno Haible  <bruno@clisp.org>
9558
9559         * lib/strptime.c (__strptime_internal): Use ANSI C syntax.
9560
9561 2007-03-23  Paul Eggert  <eggert@cs.ucla.edu>
9562
9563         * MODULES.html.sh (File system functions): New module write-any-file.
9564         * modules/write-any-file, lib/write-any-file.c, lib/write-any-file.h:
9565         * m4/write-any-file.m4: New files.
9566
9567 2007-03-23  Eric Blake  <ebb9@byu.net>
9568
9569         * gnulib-tool: Rearrange space-tab sequences, since some editors
9570         like to eat them.
9571
9572 2007-03-23  Eric Blake  <ebb9@byu.net>
9573
9574         * lib/version-etc.c (version_etc_va): Update license wording to
9575         be more concise.  Recommended by Richard Stallman.
9576
9577 2007-03-22  Bruno Haible  <bruno@clisp.org>
9578
9579         * lib/poll.c (MSG_PEEK): New fallback definition.
9580
9581 2007-03-22  Bruno Haible  <bruno@clisp.org>
9582
9583         * modules/sys_socket-tests (configure.ac): Check for shutdown function.
9584         * tests/test-sys_socket.c (a): Test only if shutdown() exists.
9585         (main): Update.
9586         Fixes a compilation error on BeOS.
9587
9588 2007-03-22  Bruno Haible  <bruno@clisp.org>
9589
9590         * modules/frexpl-tests: New file.
9591         * tests/test-frexpl.c: New file.
9592
9593         * modules/frexpl: New file.
9594         * m4/frexpl.m4: New file.
9595         * modules/math (Makefile.am): Also substitute GNULIB_FREXPL into math.h.
9596         * lib/math_.h (frexpl): Test GNULIB_FREXPL instead of GNULIB_MATHL.
9597         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FREXPL.
9598         * modules/mathl (Files): Remove lib/frexpl.c, lib/frexp.c.
9599         (Depends-on): Add frexpl. Remove isnanl-nolibm.
9600         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Don't test for frexpl.
9601
9602 2007-03-22  Bruno Haible  <bruno@clisp.org>
9603
9604         * lib/frexpl.c: Share code with lib/frexp.c.
9605         * modules/mathl (Files): Add lib/frexp.c.
9606         (Depends-on): Add isnanl-nolibm.
9607
9608 2007-03-22  Bruno Haible  <bruno@clisp.org>
9609
9610         * modules/printf-frexp (Files): Add m4/frexp.m4.
9611         * m4/printf-frexp.m4 (gl_FUNC_PRINTF_FREXP): Define HAVE_FREXP_IN_LIBC
9612         only if the found frexp function actually works.
9613
9614 2007-03-22  Bruno Haible  <bruno@clisp.org>
9615
9616         * lib/frexp.c: Remove older implementation that uses divisions.
9617
9618 2007-03-21  Bruno Haible  <bruno@clisp.org>
9619
9620         * modules/frexp-tests: New file.
9621         * tests/test-frexp.c: New file.
9622
9623         * modules/frexp: New file.
9624         * lib/frexp.c: New file.
9625         * m4/frexp.m4: New file.
9626         * lib/math_.h (frexp): New declaration.
9627         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Also initialize GNULIB_FREXP and
9628         REPLACE_FREXP.
9629         * modules/math (math.h): Also substitute GNULIB_FREXP, REPLACE_FREXP.
9630
9631 2007-03-21  Bruno Haible  <bruno@clisp.org>
9632
9633         * modules/isnanl-tests: New file.
9634         * tests/test-isnanl.c: New file.
9635
9636         * modules/isnanl: New file.
9637         * lib/isnanl.h: New file.
9638         * m4/isnanl.m4 (gl_FUNC_ISNANL): New macro.
9639         (gl_FUNC_ISNANL_NO_LIBM): Invoke gl_HAVE_ISNANL_NO_LIBM,
9640         gl_FUNC_ISNANL_WORKS.
9641         (gl_HAVE_ISNANL_NO_LIBM, gl_HAVE_ISNANL_IN_LIBM, gl_FUNC_ISNANL_WORKS):
9642         New macros.
9643
9644 2007-03-21  Bruno Haible  <bruno@clisp.org>
9645
9646         * modules/isnanl-nolibm (Files): Add lib/isnanl-nolibm.h, remove
9647         lib/isnanl.h.
9648         (Include): Update.
9649         * lib/isnanl-nolibm.h: Renamed from lib/isnanl.h.
9650         * lib/vasnprintf.c: Update.
9651         * modules/isnanl-nolibm-tests (Files): Add tests/test-isnanl-nolibm.c,
9652         tests/test-isnanl.h, remove tests/test-isnanl.c.
9653         (Makefile.am): Update.
9654         * tests/test-isnanl-nolibm.c: New file.
9655         * tests/test-isnanl.h: New file.
9656         * tests/test-isnanl.c: Remove file.
9657
9658 2007-03-21  Jim Meyering  <jim@meyering.net>
9659
9660         When trying to open ".", treat ESTALE like EACCES.
9661         * lib/savewd.c (savewd_save): Resort to forking not just upon
9662         failure with EACCES, but also when errno is ESTALE.
9663
9664 2007-03-20  Bruno Haible  <bruno@clisp.org>
9665
9666         * lib/string_.h (strndup): Enable declaration also if HAVE_STRNDUP.
9667         Needed on AIX 5.1. Reported by Matthew Woehlke.
9668
9669 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
9670
9671         Suggestions by Bruno Haible:
9672         * lib/acl-internal.h: Include "gettext.h" rather than rolling
9673         our own.
9674         (ACL_NOT_WELL_SUPPORTED): Parenthesize arg when used.
9675         * modules/acl (Depends-on): Add gettext.
9676
9677 2007-03-19  Bruno Haible  <bruno@clisp.org>
9678
9679         * modules/iconvme: Remove file.
9680         * lib/iconvme.h: Remove file.
9681         * lib/iconvme.c: Remove file.
9682         * m4/iconvme.m4: Remove file.
9683
9684 2007-03-19  Bruno Haible  <bruno@clisp.org>
9685
9686         * doc/relocatable-maint.texi: Break long shell script line.
9687         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
9688
9689 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
9690
9691         Add limited support for Solaris 10 ZFS-style ACLs: just enough to
9692         handle file_has_acl.
9693         * lib/acl-internal.h, lib/acl_entries.c, lib/file-has-acl.c: New files.
9694         * lib/acl.c: Move header inclusions and related macro defns into
9695         lib/acl-internal.h.
9696         (S_ISLNK): Remove defn, since that's now done for us.
9697         (file_has_acl): Move to lib/file-has-acl.c.
9698         Call acl_trivial if available.  This is the crucial part of the fix.
9699         (acl_entries): Move to lib/acl_entries.c.  Now extern, since it's
9700         shared within the library.  Rewrite a bit, partly to make it compatible
9701         with the GNU coding style.
9702         * m4/acl.m4 (AC_FUNC_ACL): Add AC_LIBOBJ([file-has-acl]).
9703         Remove unnecessary double-quotes.
9704         Don't test for acl_to_text; the build will catch that.
9705         Replace acl_entries if it doesn't exist and it is needed.
9706         Check for -lsec and acl_trivial (as used on Solaris 10).
9707         * modules/acl (Files): Add lib/acl-internal.h, lib/acl_entries.c,
9708         lib/file-has-acl.c.
9709         (Depends-on): Add sys_stat, for S_ISLNK.
9710
9711 2007-03-19  Ben Pfaff  <blp@gnu.org>
9712
9713         * doc/gnulib.texi: Fix typos.
9714         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
9715
9716 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
9717
9718         * lib/getcwd.c (__getcwd): Remove redundant comparison of buf to NULL.
9719         If size is zero here, buf must be zero.
9720
9721 2007-03-19  Simon Josefsson  <simon@josefsson.org>
9722
9723         * des.c: Remove weak_keys_chksum.  Reported by Bruno Haible
9724         <bruno@clisp.org>.
9725
9726 2007-03-18  Bruno Haible  <bruno@clisp.org>
9727
9728         * lib/vasnprintf.c (VASNPRINTF): Undo first part of last patch.
9729         Suggested by Eric Blake.
9730
9731 2007-03-18  Ben Pfaff  <blp@gnu.org>
9732
9733         * doc/relocatable.texi: Recommend using as prefix a directory
9734         that does not exist and will never be created.  Based on
9735         discussion with Bruno Haible, Ralf Wildenhues, Matthew Woehlke,
9736         and others.
9737
9738 2007-03-17  Bruno Haible  <bruno@clisp.org>
9739
9740         * lib/fchownat.c: Include lchown.h.
9741
9742 2007-03-17  Bruno Haible  <bruno@clisp.org>
9743
9744         Fix endless loop when the given allocated size was > INT_MAX.
9745         * lib/vasnprintf.c (EOVERFLOW): New fallback definition.
9746         (VASNPRINTF): Fail with EOVERFLOW when the given allocated size is
9747         larger than INT_MAX, or when it grow to a value larger than INT_MAX.
9748         * lib/vsprintf.c (vsprintf): Don't pass a size > INT_MAX to vasnprintf.
9749         * lib/sprintf.c (sprintf): Likewise.
9750
9751 2007-03-17  Bruno Haible  <bruno@clisp.org>
9752
9753         * tests/test-argp-2.sh (func_compare): Output a context diff.
9754
9755 2007-03-17  Bruno Haible  <bruno@clisp.org>
9756
9757         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Check also the
9758         locale's decimal-point character.
9759
9760 2007-03-17  Bruno Haible  <bruno@clisp.org>
9761
9762         * lib/vasnprintf.c (VASNPRINTF): Clear out the memory used for arg_mem
9763         before comparing it. Needed because on some platforms (e.g. x86) a
9764         'long double' occupies less bytes than sizeof (long double).
9765
9766 2007-03-17  Bruno Haible  <bruno@clisp.org>
9767
9768         * tests/test-crc.c (main): Make printf statements 64-bit clean.
9769         * tests/test-gc-pbkdf2-sha1.c (main): Likewise.
9770         * tests/test-getaddrinfo.c (simple): Likewise.
9771         * tests/test-read-file.c (main): Likewise.
9772
9773 2007-03-17  Bruno Haible  <bruno@clisp.org>
9774
9775         * tests/test-dirname.c (main): Make printf statements 64-bit clean.
9776
9777 2007-03-17  Bruno Haible  <bruno@clisp.org>
9778
9779         * tests/test-xvasprintf.c (test_xvasprintf, test_xasprintf): Remove
9780         unused variable.
9781
9782 2007-03-17  Bruno Haible  <bruno@clisp.org>
9783
9784         * tests/test-c-strcasecmp.c: Include c-strcase.h.
9785         * tests/test-c-strncasecmp.c: Likewise.
9786
9787 2007-03-17  Bruno Haible  <bruno@clisp.org>
9788
9789         * modules/stdlib (Depends-on): Add unistd.
9790         * lib/stdlib_.h: Include <unistd.h> if mkstemp is desired.
9791         Needed for MacOS X 10.3.
9792
9793 2007-03-17  Bruno Haible  <bruno@clisp.org>
9794
9795         * lib/unistr/u-strdup.h: Include <stdlib.h>.
9796
9797 2007-03-17  Bruno Haible  <bruno@clisp.org>
9798
9799         * lib/unistr/u-cpy-alloc.h: Include <stdlib.h>.
9800
9801 2007-03-17  Bruno Haible  <bruno@clisp.org>
9802
9803         * gnulib-tool (func_import): Update .cvsignore and .gitignore files
9804         to reflect files copied from gnulib (with or without modifications).
9805         Suggested by Jim Meyering.
9806
9807 2007-03-17  Eric Blake  <ebb9@byu.net>
9808
9809         * NEWS: Document stdlib change from 2007-02-18.
9810
9811 2007-03-17  Jim Meyering  <jim@meyering.net>
9812
9813         Detect use of AC_CONFIG_AUX_DIR also when its argument is quoted.
9814         * build-aux/bootstrap: Put ""s around use of $build_aux, in case
9815         someone uses a name containing shell meta-characters.
9816         Reported by Alfred M. Szmidt.
9817
9818         * build-aux/bootstrap: Don't use \> in grep regexp.  For HP-UX.
9819
9820 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
9821
9822         * build-aux/bootstrap (with_gettext): New variable.  Run autopoint
9823         and copy gettext configuration files only if configure.ac contains
9824         a use of AM_GNU_GETTEXT_VERSION.
9825
9826 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
9827
9828         * build-aux/bootstrap (gnulib_name): New variable.
9829         (gnulib_tool_options): Use it.
9830
9831 2007-03-13  Simon Josefsson  <simon@josefsson.org>
9832
9833         * tests/test-des.c: Use new namespace.
9834
9835 2007-03-15  Bruno Haible  <bruno@clisp.org>
9836
9837         * lib/dummy.c (gl_dummy_symbol): Renamed from 'dummy'.
9838         Reported by James Youngman <jay@gnu.org>.
9839
9840 2007-03-15  Bruno Haible  <bruno@clisp.org>
9841
9842         * lib/glob.c (glob): Add 'restrict' so that prototype matches the
9843         declared prototype. Needed with cc on OSF/1 5.1.
9844
9845 2007-03-15  Bruno Haible  <bruno@clisp.org>
9846
9847         * lib/gl_list.h (gl_listelement_dispose_fn): New type.
9848         (gl_list_create_empty, gl_list_create): Add dispose_fn argument.
9849         (struct gl_list_implementation): Add dispose_fn argument to the
9850         'create_empty', 'create' methods.
9851         (struct gl_list_impl_base): Add field 'dispose_fn'.
9852         * lib/gl_list.c (gl_list_create_empty, gl_list_create): Add dispose_fn
9853         argument.
9854         * lib/gl_array_list.c (gl_array_create_empty, gl_array_create): Add
9855         dispose_fn argument.
9856         (gl_array_remove_node, gl_array_remove_at, gl_array_list_free): Call
9857         dispose_fn on the dropped values.
9858         * lib/gl_carray_list.c (gl_carray_create_empty, gl_carray_create): Add
9859         dispose_fn argument.
9860         (gl_carray_remove_at, gl_carray_list_free): Call dispose_fn on the
9861         dropped values.
9862         * lib/gl_anyavltree_list2.h (gl_tree_create): Add dispose_fn argument.
9863         (gl_tree_remove_node): Call dispose_fn on the dropped value.
9864         * lib/gl_anyrbtree_list2.h (gl_tree_create): Add dispose_fn argument.
9865         (gl_tree_remove_node): Call dispose_fn on the dropped value.
9866         * lib/gl_anytree_list2.h (gl_tree_create_empty): Add dispose_fn
9867         argument.
9868         (gl_tree_list_free): Call dispose_fn on the dropped values.
9869         * lib/gl_anytreehash_list2.h (gl_tree_list_free): Call dispose_fn on
9870         the dropped values.
9871         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
9872         Add dispose_fn argument.
9873         (gl_linked_remove_node, gl_linked_remove_at, gl_linked_list_free):
9874         Call dispose_fn on the dropped values.
9875         * lib/gl_sublist.c (gl_sublist_create_empty, gl_sublist_create_fill):
9876         Add dispose_fn argument.
9877         (gl_sublist_create): Initialize the 'dispose_fn' field.
9878         * lib/clean-temp.c (create_temp_dir, register_fd): Update.
9879         * tests/test-array_list.c (main): Update.
9880         * tests/test-carray_list.c (main): Update.
9881         * tests/test-avltree_list.c (main): Update.
9882         * tests/test-rbtree_list.c (main): Update.
9883         * tests/test-avltreehash_list.c (main): Update.
9884         * tests/test-rbtreehash_list.c (main): Update.
9885         * tests/test-linked_list.c (main): Update.
9886         * tests/test-linkedhash_list.c (main): Update.
9887         * tests/test-array_oset.c (main): Update.
9888
9889 2007-03-15  Bruno Haible  <bruno@clisp.org>
9890
9891         * lib/gl_oset.h (gl_setelement_dispose_fn): New type.
9892         (gl_oset_create_empty): Add dispose_fn argument.
9893         (struct gl_oset_implementation): Add dispose_fn argument to
9894         'create_empty' method.
9895         (struct gl_oset_impl_base): Add dispose_fn field.
9896         * lib/gl_oset.c (gl_oset_create_empty): Add dispose_fn argument.
9897         * lib/gl_array_oset.c (gl_array_create_empty): Add dispose_fn argument.
9898         (gl_array_remove_at, gl_array_free): Call dispose_fn on the dropped
9899         values.
9900         * lib/gl_anytree_oset.h (gl_tree_create_empty): Add dispose_fn argument.
9901         (gl_tree_oset_free): Call dispose_fn on the dropped values.
9902         * lib/gl_avltree_oset.c (gl_tree_remove_node): Call dispose_fn on the
9903         dropped value.
9904         * lib/gl_rbtree_oset.c (gl_tree_remove_node): Call dispose_fn on the
9905         dropped value.
9906         * tests/test-array_oset.c (main): Update.
9907         * tests/test-avltree_oset.c (main): Update.
9908         * tests/test-rbtree_oset.c (main): Update.
9909         * lib/gl_anytreehash_list1.h (add_to_bucket): Update.
9910
9911 2007-03-13  Bruno Haible  <bruno@clisp.org>
9912
9913         * tests/test-stdbool.c (i): Update after last patch.
9914
9915 2007-03-12  Bruno Haible  <bruno@clisp.org>
9916
9917         * lib/quotearg.c: Include <wctype.h> early, before the definition of
9918         the iswprint macro. Needed on Solaris 2.5.1.
9919
9920 2007-03-12  Bruno Haible  <bruno@clisp.org>
9921
9922         * tests/test-printf-frexp.c (main): Declare x as volatile.
9923
9924 2007-03-12  Simon Josefsson  <simon@josefsson.org>
9925
9926         * doc/gnulib.texi (Build robot for gnulib): New section.
9927
9928 2007-03-12  Jim Meyering  <jim@meyering.net>
9929
9930         * build-aux/bootstrap: New file.
9931         * build-aux/bootstrap.conf: New file, from coreutils.
9932
9933 2007-03-11  Bruno Haible  <bruno@clisp.org>
9934
9935         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Require AC_C_INLINE.
9936
9937 2007-03-12  Simon Josefsson  <simon@josefsson.org>
9938
9939         * lib/des.h, lib/des.c, lib/gc-gnulib.c: Use gl_ namespace, to
9940         avoid collisions with 'des_setkey'.  Reported by Bruno Haible
9941         <bruno@clisp.org>.  Also change 'tripledes_' to '3des_'.
9942
9943 2007-03-11  Bruno Haible  <bruno@clisp.org>
9944
9945         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): If the test program fails to
9946         compile, set LOCALE_TR_UTF8 to 'none' instead of empty.
9947
9948 2007-03-11  Bruno Haible  <bruno@clisp.org>
9949
9950         * lib/stdint_.h (INT64_MIN, INTMAX_MIN): Avoid using the ~INT..._MAX
9951         formula. Needed for SunPRO C 5.0.
9952
9953 2007-03-11  Bruno Haible  <bruno@clisp.org>
9954
9955         * modules/long-options (Depends-on): Add getopt.
9956
9957 2007-03-11  Bruno Haible  <bruno@clisp.org>
9958
9959         * modules/modechange (Depends-on): Add stdbool.
9960
9961 2007-03-11  Bruno Haible  <bruno@clisp.org>
9962
9963         * modules/i-ring (Depends-on): Add stdbool.
9964
9965 2007-03-11  Bruno Haible  <bruno@clisp.org>
9966
9967         * modules/gc-des (Depends-on): Add stdbool.
9968
9969 2007-03-11  Bruno Haible  <bruno@clisp.org>
9970
9971         * m4/mktime.m4 (gl_PREREQ_MKTIME): Require AC_C_INLINE.
9972
9973 2007-03-11  Bruno Haible  <bruno@clisp.org>
9974
9975         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Require AC_C_RESTRICT.
9976
9977 2007-03-11  Bruno Haible  <bruno@clisp.org>
9978
9979         * lib/unistr/u32-mbtouc-unsafe.c (u32_mbtouc_unsafe): Fix syntax error.
9980
9981 2007-03-11  Bruno Haible  <bruno@clisp.org>
9982
9983         * lib/vasnprintf.c (sprintf): Undefine.
9984
9985 2007-03-11  Bruno Haible  <bruno@clisp.org>
9986
9987         * lib/isnan.c (rpl_isnan, rpl_isnanl): Work around bug regarding
9988         initializers in SunPRO C and Compaq C compilers.
9989
9990 2007-03-11  Bruno Haible  <bruno@clisp.org>
9991
9992         * lib/gl_array_oset.c (gl_array_iterator_next): Make pointer
9993         decrementing code ANSI C compliant.
9994
9995 2007-03-11  Bruno Haible  <bruno@clisp.org>
9996
9997         * lib/dummy.c [__sun]: Define a dummy variable, not just a typedef.
9998         Needed for Solaris 2.5.1 ranlib and SunPRO C 5.0.
9999
10000 2007-03-11  Bruno Haible  <bruno@clisp.org>
10001
10002         * tests/test-stdbool.c (s, d, e, xlcbug): Disable checks that gnulib's
10003         <stdbool.h> substitute doesn't pass.
10004
10005 2007-03-11  Bruno Haible  <bruno@clisp.org>
10006
10007         * lib/vasnprintf.c (snprintf): Undefine. Avoids an endless recursion.
10008
10009 2007-03-11  Bruno Haible  <bruno@clisp.org>
10010
10011         * gnulib-tool (func_create_megatestdir): Create also an autobuild
10012         script, for submission to autobuild.josefsson.org.
10013
10014 2007-03-10  Bruno Haible  <bruno@clisp.org>
10015
10016         * modules/canonicalize-lgpl-tests: New file.
10017         * tests/test-canonicalize-lgpl.sh: New file.
10018         * tests/test-canonicalize-lgpl.c: New file.
10019
10020         * modules/c-strcase-tests: New file.
10021         * tests/test-c-strcase.sh: New file.
10022         * tests/test-c-strcasecmp.c: New file.
10023         * tests/test-c-strncasecmp.c: New file.
10024
10025         * modules/atexit-tests: New file.
10026         * tests/test-atexit.sh: New file.
10027         * tests/test-atexit.c: New file.
10028
10029 2007-03-10  Bruno Haible  <bruno@clisp.org>
10030
10031         * tests/test-binary-io.sh: Use temporary filenames that are not so
10032         likely to clash with those of other tests (in a parallel make).
10033         * tests/test-binary-io.c: Likewise.
10034
10035 2007-03-10  Bruno Haible  <bruno@clisp.org>
10036
10037         * lib/fseterr.c (fseterr): Port to Solaris/SPARC64. Deactivate the
10038         fallback; use #error instead.
10039         Suggested by Simon Josefsson.
10040
10041 2007-03-10  Bruno Haible  <bruno@clisp.org>
10042
10043         * gnulib-tool (func_create_testdir): Treat MOSTLYCLEANFILES like
10044         CLEANFILES. Put spaces in each line of $cleaned_files, not only the
10045         first and the last.
10046
10047 2007-03-10  Bruno Haible  <bruno@clisp.org>
10048
10049         * lib/stdint_.h (uint_least64_t): Fix typo in last patch.
10050
10051 2007-03-10  Bruno Haible  <bruno@clisp.org>
10052
10053         * modules/snprintf-posix-tests (EXTRA_DIST): New variable. Needed for
10054         "make distcheck".
10055         * modules/sprintf-posix-tests (EXTRA_DIST): Likewise.
10056         * modules/vsnprintf-posix-tests (EXTRA_DIST): Likewise.
10057         * modules/vsprintf-posix-tests (EXTRA_DIST): Likewise.
10058
10059 2007-03-10  Bruno Haible  <bruno@clisp.org>
10060
10061         * modules/allocsa-tests (test_allocsa_SOURCES): Remove redundant
10062         variable.
10063         * modules/dirname-tests (test_dirname_SOURCES): Remove redundant
10064         variable.
10065
10066 2007-03-09  Eric Blake  <ebb9@byu.net>
10067         and Matthew Woehlke  <mw_triad@users.sourceforge.net>  (tiny change)
10068
10069         * lib/stdint_.h (int64_t, uint64_t): Don't undefine if 64-bit
10070         types are not being provided by gnulib.
10071         (GL_INT64_T, GL_UINT64_T): New witnesses of whether gnulib 64-bit
10072         types are supported.
10073
10074 2007-03-10  Bruno Haible  <bruno@clisp.org>
10075
10076         * lib/stdio_.h (__attribute__): New macro.
10077         (fprintf, vfprintf, printf, vprintf, snprintf, vsnprintf, sprintf,
10078         vsprintf): Specify __attribute__ __format__ for GCC.
10079         Suggested by Eric Blake.
10080
10081 2007-03-09  Bruno Haible  <bruno@clisp.org>
10082
10083         * modules/printf-posix-tests: New file.
10084         * tests/test-printf-posix.sh: New file.
10085         * tests/test-printf-posix.c: New file.
10086
10087         * modules/printf-posix: New file.
10088         * lib/printf.c: New file.
10089         * m4/printf-posix-rpl.m4: New file.
10090         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_PRINTF_POSIX,
10091         REPLACE_PRINTF.
10092         * lib/stdio_.h (printf): New declaration.
10093         (format, __format__, ____printf____, ____scanf____, ____strftime____,
10094         ____strfmon____): New macros.
10095         * modules/stdio (Makefile.am): Substitute also GNULIB_PRINTF_POSIX,
10096         REPLACE_PRINTF.
10097
10098 2007-03-09  Bruno Haible  <bruno@clisp.org>
10099
10100         * tests/test-vasnprintf-posix2.sh: New file.
10101         * tests/test-vasnprintf-posix2.c: New file.
10102         * modules/vasnprintf-posix-tests (Files): Add them and m4/locale-fr.m4.
10103         (configure.ac): Invoke gt_LOCALE_FR and gt_LOCALE_FR_UTF8.
10104         (Makefile.am): Activate test-vasnprintf-posix2.sh.
10105
10106         * lib/vasnprintf.c (VASNPRINTF): For the 'a' and 'A' directives, use
10107         a locale dependent decimal point, rather than always '.'.
10108
10109 2007-03-09  Eric Blake  <ebb9@byu.net>
10110
10111         * lib/stdlib_.h (EXIT_FAILURE): GNU code expects this to be 1, in
10112         spite of platforms like Tandem/NSK that define it to -1.
10113
10114 2007-03-08  Bruno Haible  <bruno@clisp.org>
10115
10116         * modules/vprintf-posix-tests: New file.
10117         * tests/test-vprintf-posix.sh: New file.
10118         * tests/test-vprintf-posix.c: New file.
10119         * tests/test-printf-posix.h: New file.
10120
10121         * modules/vprintf-posix: New file.
10122         * lib/vprintf.c: New file.
10123         * m4/vprintf-posix.m4: New file.
10124         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VPRINTF_POSIX,
10125         REPLACE_VPRINTF.
10126         * lib/stdio_.h (vprintf): New declaration.
10127         * modules/stdio (Makefile.am): Substitute also GNULIB_VPRINTF_POSIX,
10128         REPLACE_VPRINTF.
10129
10130 2007-03-08  Bruno Haible  <bruno@clisp.org>
10131
10132         * modules/fprintf-posix-tests: New file.
10133         * tests/test-fprintf-posix.sh: New file.
10134         * tests/test-fprintf-posix.c: New file.
10135
10136         * modules/fprintf-posix: New file.
10137         * lib/fprintf.c: New file.
10138         * m4/fprintf-posix.m4: New file.
10139         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FPRINTF_POSIX,
10140         REPLACE_FPRINTF.
10141         * lib/stdio_.h (fprintf): New declaration.
10142         * modules/stdio (Makefile.am): Substitute also GNULIB_FPRINTF_POSIX,
10143         REPLACE_FPRINTF.
10144
10145 2007-03-08  Bruno Haible  <bruno@clisp.org>
10146
10147         * modules/vfprintf-posix-tests: New file.
10148         * tests/test-vfprintf-posix.sh: New file.
10149         * tests/test-vfprintf-posix.c: New file.
10150         * tests/test-fprintf-posix.h: New file.
10151         * tests/test-fprintf-posix.out: New file.
10152
10153         * modules/vfprintf-posix: New file.
10154         * lib/vfprintf.c: New file.
10155         * m4/vfprintf-posix.m4: New file.
10156         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VFPRINTF_POSIX,
10157         REPLACE_VFPRINTF.
10158         * lib/stdio_.h (vfprintf): New declaration.
10159         * modules/stdio (Makefile.am): Substitute also GNULIB_VFPRINTF_POSIX,
10160         REPLACE_VFPRINTF.
10161
10162 2007-03-08  Bruno Haible  <bruno@clisp.org>
10163
10164         * lib/stdio_.h: Treat __need___FILE like __need_FILE.
10165
10166 2007-03-08  Bruno Haible  <bruno@clisp.org>
10167
10168         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Use 'case' statements
10169         instead of 'expr' invocations.
10170         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
10171         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
10172         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
10173         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
10174         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
10175         Suggested by Paul Eggert.
10176
10177 2007-03-08  Bruno Haible  <bruno@clisp.org>
10178
10179         * modules/fseterr-tests: New file.
10180         * tests/test-fseterr.c: New file.
10181
10182         * modules/fseterr: New file.
10183         * lib/fseterr.h: New file.
10184         * lib/fseterr.c: New file.
10185
10186 2007-03-08  Bruno Haible  <bruno@clisp.org>
10187
10188         * lib/fnmatch_.h: Convert tabs in the middle of lines to spaces.
10189         * lib/getopt_.h: Likewise.
10190         * lib/mbswidth.h: Likewise.
10191         * lib/setenv.h: Likewise.
10192         * lib/vasnprintf.h: Likewise.
10193         * lib/vasprintf.h: Likewise.
10194         * lib/verror.h: Likewise.
10195         * lib/xsetenv.h: Likewise.
10196         * lib/xvasprintf.h: Likewise.
10197
10198 2007-03-08  Jim Meyering  <jim@meyering.net>
10199
10200         * users.txt: Add parted.
10201
10202         * ChangeLog: Restore 1500 lines mistakenly removed from the end.
10203
10204 2007-03-07  Bruno Haible  <bruno@clisp.org>
10205
10206         * m4/printf.m4: Make the shell script snippets copy&pastable.
10207
10208 2007-03-02  Bruno Haible  <bruno@clisp.org>
10209
10210         * lib/netinet_in_.h: New file.
10211         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Test whether netinet/in.h
10212         is self-contained. Set ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H.
10213         * modules/netinet_in (Files): Add lib/netinet_in_.h.
10214         (Depends-on): Add absolute-header.
10215         (Makefile.am): Substitute ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H
10216         into netinet/in.h.
10217
10218 2007-03-03  Bruno Haible  <bruno@clisp.org>
10219
10220         * lib/sys_select_.h: New file.
10221         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SELECT): Test whether sys/select.h
10222         is self-contained. Set ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H.
10223         * modules/sys_select (Files): Add lib/sys_select_.h.
10224         (Depends-on): Add absolute-header.
10225         (Makefile.am): Substitute ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H
10226         into sys/select.h.
10227
10228 2007-03-02  Bruno Haible  <bruno@clisp.org>
10229
10230         * lib/socket_.h: If sys/socket.h exists, include that and <sys/types.h>
10231         before it. Turn HAVE_WINSOCK2_H and HAVE_WS2TCPIP_H into configute-time
10232         values.
10233         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Test also whether
10234         <sys/socket.h> is self-contained. Set ABSOLUTE_SYS_SOCKET_H,
10235         HAVE_SYS_SOCKET_H, HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H.
10236         * modules/sys_socket (Depends-on): Add absolute-header.
10237         (Makefile.am): Substitute ABSOLUTE_SYS_SOCKET_H, HAVE_SYS_SOCKET_H,
10238         HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H into sys/socket.h.
10239         (Include): Remove requirement of inclusion of <sys/types.h>.
10240
10241 2007-03-02  Bruno Haible  <bruno@clisp.org>
10242
10243         * lib/byteswap_.h (bswap_32): Fix formula.
10244
10245 2007-03-06  Bruno Haible  <bruno@clisp.org>
10246
10247         * modules/sprintf-posix-tests: New file.
10248         * tests/test-sprintf-posix.c: New file.
10249
10250         * modules/sprintf-posix: New file.
10251         * lib/sprintf.c: New file.
10252         * m4/sprintf-posix.m4: New file.
10253         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_SPRINTF_POSIX,
10254         REPLACE_SPRINTF.
10255         * lib/stdio_.h (sprintf): New declaration.
10256         * modules/stdio (Makefile.am): Substitute also GNULIB_SPRINTF_POSIX,
10257         REPLACE_SPRINTF.
10258
10259 2007-03-06  Bruno Haible  <bruno@clisp.org>
10260
10261         * modules/vsprintf-posix-tests: New file.
10262         * tests/test-vsprintf-posix.c: New file.
10263         * tests/test-sprintf-posix.h: New file.
10264
10265         * modules/vsprintf-posix: New file.
10266         * lib/vsprintf.c: New file.
10267         * m4/vsprintf-posix.m4: New file.
10268         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VSPRINTF_POSIX,
10269         REPLACE_VSPRINTF.
10270         * lib/stdio_.h (vsprintf): New declaration.
10271         * modules/stdio (Makefile.am): Substitute also GNULIB_VSPRINTF_POSIX,
10272         REPLACE_VSPRINTF.
10273
10274 2007-03-06  Bruno Haible  <bruno@clisp.org>
10275
10276         * modules/vsnprintf (Depend-on): Remove minmax.
10277
10278 2007-03-06  Bruno Haible  <bruno@clisp.org>
10279
10280         * modules/snprintf-posix-tests: New file.
10281         * tests/test-snprintf-posix.c: New file.
10282
10283         * modules/snprintf-posix: New file.
10284         * m4/snprintf-posix.m4: New file.
10285         * m4/snprintf.m4 (gl_REPLACE_SNPRINTF): New macro, extracted from
10286         gl_FUNC_SNPRINTF.
10287         (gl_FUNC_SNPRINTF): Invoke it.
10288         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_SNPRINTF.
10289         * lib/stdio_.h (snprintf): Define as a replacement if REPLACE_SNPRINTF
10290         is set.
10291         * modules/stdio (Makefile.am): Substitute also REPLACE_SNPRINTF.
10292
10293 2007-03-06  Bruno Haible  <bruno@clisp.org>
10294
10295         * modules/vsnprintf-posix-tests: New file.
10296         * tests/test-vsnprintf-posix.c: New file.
10297         * tests/test-snprintf-posix.h: New file.
10298
10299         * modules/vsnprintf-posix: New file.
10300         * m4/vsnprintf-posix.m4: New file.
10301         * m4/vsnprintf.m4 (gl_REPLACE_VSNPRINTF): New macro, extracted from
10302         gl_FUNC_VSNPRINTF.
10303         (gl_FUNC_VSNPRINTF): Invoke it.
10304         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_VSNPRINTF.
10305         * lib/stdio_.h (vsnprintf): Define as a replacement if
10306         REPLACE_VSNPRINTF is set.
10307         * modules/stdio (Makefile.am): Substitute also REPLACE_VSNPRINTF.
10308
10309 2007-03-06  Bruno Haible  <bruno@clisp.org>
10310
10311         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Test for vasnprintf here.
10312         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): ... not here.
10313
10314 2007-03-06  Bruno Haible  <bruno@clisp.org>
10315
10316         * lib/math_.h (acosl): Declare also if HAVE_DECL_ACOSL is set.
10317         (asinl): Declare also if HAVE_DECL_ASINL is set.
10318         (atanl): Declare also if HAVE_DECL_ATANL is set.
10319         (ceill): Declare also if HAVE_DECL_CEILL is set.
10320         (cosl): Declare also if HAVE_DECL_COSL is set.
10321         (expl): Declare also if HAVE_DECL_EXPL is set.
10322         (floorl): Declare also if HAVE_DECL_FLOORL is set.
10323         (frexpl): Declare also if HAVE_DECL_FREXPL is set.
10324         (ldexpl): Declare also if HAVE_DECL_LDEXPL is set.
10325         (logl): Declare also if HAVE_DECL_LOGL is set.
10326         (sinl): Declare also if HAVE_DECL_SINL is set.
10327         (sqrtl): Declare also if HAVE_DECL_SQRTL is set.
10328         (tanl): Declare also if HAVE_DECL_TANL is set.
10329         * modules/math (Makefile.am): Substitute the values of HAVE_DECL_*.
10330         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Set HAVE_DECL_* to 1.
10331         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Fix tests for the
10332         declaration of frexpl, ldexpl.
10333         * modules/printf-frexpl (Depends-on): Add math.
10334         * lib/printf-frexp.c (frexpl, ldexpl): Undo last change.
10335
10336 2007-03-05  Bruno Haible  <bruno@clisp.org>
10337
10338         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Also test whether
10339         frexpl and ldexpl are declared.
10340         * lib/printf-frexp.c (frexpl, ldexpl): Provide fallback declarations.
10341
10342 2007-03-05  Bruno Haible  <bruno@clisp.org>
10343
10344         * gnulib-tool (func_get_automake_snippet): Don't synthesize an
10345         EXTRA_lib_SOURCES augmentation for the relocatable-prog-wrapper module.
10346
10347 2007-03-05  Bruno Haible  <bruno@clisp.org>
10348
10349         * lib/stdio_.h: Include <stddef.h>.
10350
10351 2007-03-05  Bruno Haible  <bruno@clisp.org>
10352
10353         * m4/printf.m4 (gl_SNPRINTF_DIRECTIVE_N): New macro.
10354
10355 2007-03-05  Bruno Haible  <bruno@clisp.org>
10356
10357         * m4/printf.m4: Update with info about OpenBSD 3.9, HP-UX 10.20,
10358         NetBSD 4, from Ralf Wildenhues.
10359
10360 2007-03-04  Bruno Haible  <bruno@clisp.org>
10361
10362         * lib/vasprintf.h: Update #if logic for the case when the functions
10363         exist but are overridden.
10364
10365 2007-03-04  Bruno Haible  <bruno@clisp.org>
10366
10367         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Exclude two buggy
10368         implementations: glibc-2.4 and MacOS X 10.3.
10369         * tests/test-vasnprintf-posix.c (test_function): Test also the case
10370         that exhibits the bugs in glibc-2.4 and MacOS X 10.3.
10371         * tests/test-vasprintf-posix.c (test_function): Likewise.
10372
10373 2007-03-04  Bruno Haible  <bruno@clisp.org>
10374
10375         * modules/vasprintf-posix-tests: New file.
10376         * tests/test-vasprintf-posix.c: New file.
10377
10378         * modules/vasprintf-posix: New file.
10379         * lib/vasprintf.h (asprintf, vasprintf): Rename if REPLACE_VASPRINTF is
10380         defined.
10381         * m4/vasprintf-posix.m4: New file.
10382         * m4/vasprintf.m4 (gl_REPLACE_VASPRINTF): New macro, extracted from
10383         gl_FUNC_VASPRINTF.
10384         (gl_FUNC_VASPRINTF): Invoke it.
10385         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Define REPLACE_VASNPRINTF
10386         here.
10387         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Not here.
10388
10389 2007-03-04  Bruno Haible  <bruno@clisp.org>
10390
10391         * lib/sys_time_.h: Rename GETTIMEOFDAY_REPLACEMENT to
10392         REPLACE_GETTIMEOFDAY.
10393         * modules/sys_time (Makefile.am): Likewise.
10394         * m4/sys_time_h.m4: Likewise.
10395         * m4/gettimeofday.m4: Likewise.
10396
10397 2007-03-04  Bruno Haible  <bruno@clisp.org>
10398
10399         * modules/vasnprintf-posix-tests: New file.
10400         * tests/test-vasnprintf-posix.c: New file.
10401
10402         * modules/vasnprintf-posix: New file.
10403         * lib/vasnprintf.c: Include isnan.h, isnanl.h, printf-frexp.h,
10404         printf-frexpl.h.
10405         (VASNPRINTF): Handle the 'a' and 'A' directives here, if needed.
10406         * lib/vasnprintf.h (asnprintf, vasnprintf): Rename if
10407         REPLACE_VASNPRINTF is defined.
10408         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): New macro, extracted from
10409         gl_FUNC_VASNPRINTF.
10410         (gl_FUNC_VASNPRINTF): Invoke it.
10411         * m4/vasnprintf-posix.m4: New file.
10412         * m4/printf.m4: New file.
10413
10414 2007-03-04  Bruno Haible  <bruno@clisp.org>
10415
10416         Compile progreloc.c only if --enable-relocatable is specified.
10417         * m4/relocatable.m4 (gl_RELOCATABLE): Arrange to compile progreloc.c
10418         if --enable-relocatable was specified.
10419         * modules/relocatable-prog (Makefile.am): Remove progreloc.c from
10420         lib_SOURCES.
10421
10422 2007-03-04  Jim Meyering  <jim@meyering.net>
10423
10424         * lib/acl.c (ACL_NOT_WELL_SUPPORTED): New macro.
10425         Use it consistently, rather than enumerating errno constants.
10426
10427 2007-03-04  Bruno Haible  <bruno@clisp.org>
10428
10429         * modules/xvasprintf-tests: New file.
10430         * tests/test-xvasprintf.c: New file.
10431
10432         * modules/vasprintf-tests: New file.
10433         * tests/test-vasprintf.c: New file.
10434
10435         * modules/vasnprintf-tests: New file.
10436         * tests/test-vasnprintf.c: New file.
10437
10438         * modules/vsnprintf-tests: New file.
10439         * tests/test-vsnprintf.c: New file.
10440
10441         * modules/snprintf-tests: New file.
10442         * tests/test-snprintf.c: New file.
10443
10444 2007-03-04  Bruno Haible  <bruno@clisp.org>
10445
10446         Compile relocatable.c only if --enable-relocatable is specified.
10447         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY_BODY): Renamed from
10448         gl_RELOCATABLE_LIBRARY.
10449         (gl_RELOCATABLE_LIBRARY, gl_RELOCATABLE_LIBRARY_SEPARATE): New macros.
10450         * m4/relocatable.m4 (gl_RELOCATABLE): Invoke gl_RELOCATABLE_LIBRARY.
10451         (gl_RELOCATABLE_BODY): Require gl_RELOCATABLE_LIBRARY_BODY instead of
10452         gl_RELOCATABLE_LIBRARY.
10453         * modules/relocatable-lib (configure.ac): Invoke gl_RELOCATABLE_LIBRARY.
10454         (Makefile.am): Remove lib_SOURCES.
10455         * modules/relocatable-lib-lgpl (configure.ac): Invoke
10456         gl_RELOCATABLE_LIBRARY.
10457         (Makefile.am): Remove lib_SOURCES.
10458         * modules/relocatable-prog (Makefile.am): Don't compile relocatable.c
10459         always.
10460         * modules/relocatable-prog-wrapper (configure.ac): Invoke
10461         gl_RELOCATABLE_LIBRARY_SEPARATE instead of gl_RELOCATABLE_LIBRARY.
10462
10463 2007-03-04  Bruno Haible  <bruno@clisp.org>
10464
10465         * modules/argmatch-tests: New file.
10466         * tests/test-argmatch.c: New file.
10467
10468         * tests/test-allocsa.c (main): Halve the number of loop runs.
10469
10470         * modules/alloca-opt-tests: New file.
10471         * tests/test-alloca-opt.c: New file.
10472
10473 2007-03-04  Jim Meyering  <jim@meyering.net>
10474
10475         Work around difference between Linux ACLs and Solaris 10 ZFS.
10476         * lib/acl.c (set_acl): Revert to using chmod_or_fchmod also
10477         for EINVAL.
10478
10479 2007-03-03  Bruno Haible  <bruno@clisp.org>
10480
10481         * modules/relocatable-prog (Depends-on): Add back progreloc's
10482         dependencies: canonicalize-lgpl, xalloc, xreadlink, stdbool, unistd.
10483
10484 2007-03-03  Bruno Haible  <bruno@clisp.org>
10485
10486         * modules/relocatable-lib-lgpl: Renamed from modules/relocatable-lib.
10487         * modules/relocatable-lib: New file.
10488
10489 2007-03-03  Bruno Haible  <bruno@clisp.org>
10490
10491         * modules/relocatable-prog: Renamed from modules/relocatable.
10492         * doc/relocatable-maint.texi: Talk about module 'relocatable-prog'.
10493
10494 2007-03-03  Bruno Haible  <bruno@clisp.org>
10495
10496         * modules/relocatable-script (Files): Add doc/relocatable.texi,
10497         m4/relocatable-lib.m4.
10498         (Depends-on): Remove 'relocatable'.
10499         (configure.ac): Add gl_RELOCATABLE_NOP.
10500
10501 2007-03-03  Bruno Haible  <bruno@clisp.org>
10502
10503         * modules/relocatable-prog-wrapper: New file.
10504         * modules/relocatable (Depends-on): Add it. Remove all other
10505         dependencies except progname.
10506         (Files): Remove build-aux/install-reloc, lib/relocwrapper.c.
10507
10508         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): New macro.
10509         (gl_FUNC_STRERROR): Nop.
10510         * lib/strerror.c: Compile the file only if !HAVE_STRERROR.
10511
10512         * m4/setenv.m4 (gl_FUNC_SETENV_SEPARATE): New macro.
10513         * lib/setenv.c: Compile the file only if _LIBC || !HAVE_SETENV.
10514
10515         * m4/readlink.m4 (gl_FUNC_READLINK_SEPARATE): New macro.
10516         (gl_FUNC_READLINK): Update.
10517
10518         * m4/canonicalize-lgpl.m4 (gl_CANONICALIZE_LGPL_SEPARATE): New macro.
10519
10520 2007-03-03  Bruno Haible  <bruno@clisp.org>
10521
10522         * lib/xreadlink.c: Include <unistd.h> unconditionally.
10523         * modules/xreadlink (Depends-on): Add unistd.
10524         * modules/xreadlink-with-size (Depends-on): Likewise.
10525
10526 2007-03-03  Bruno Haible  <bruno@clisp.org>
10527
10528         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_UNSETENV): New macros,
10529         extracted from gt_FUNC_SETENV.
10530         (gt_FUNC_SETENV): Remove macro.
10531         * modules/setenv (configure.ac): Add gl_FUNC_SETENV, gl_FUNC_UNSETENV,
10532         remove gt_FUNC_SETENV.
10533
10534 2007-03-03  Bruno Haible  <bruno@clisp.org>
10535
10536         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY): Define
10537         ENABLE_RELOCATABLE here.
10538         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): Don't define it here.
10539
10540 2007-03-03  Bruno Haible  <bruno@clisp.org>
10541
10542         * modules/rbtreehash-list-tests (Depends-on): Add progname.
10543         * tests/test-rbtreehash_list.c: Include progname.h.
10544         (main): Call set_program_name.
10545
10546         * modules/rbtree-oset-tests (Depends-on): Add progname.
10547         * tests/test-rbtree_oset.c: Include progname.h.
10548         (main): Call set_program_name.
10549
10550         * modules/rbtree-list-tests (Depends-on): Add progname.
10551         * tests/test-rbtree_list.c: Include progname.h.
10552         (main): Call set_program_name.
10553
10554         * modules/linked-list-tests (Depends-on): Add progname.
10555         * tests/test-linked_list.c: Include progname.h.
10556         (main): Call set_program_name.
10557
10558 2007-03-03  Bruno Haible  <bruno@clisp.org>
10559
10560         * lib/glob-libc.h (_Restrict_): New macro, copied from lib/regex.h.
10561         All uses of __restrict changed to _Restrict_.
10562         * lib/glob_.h (__restrict): Remove macro.
10563
10564 2007-03-02  Bruno Haible  <bruno@clisp.org>
10565
10566         * modules/gettext (configure.ac): Require gettext infrastructure
10567         from version 0.16.1.
10568
10569 2007-03-02  Bruno Haible  <bruno@clisp.org>
10570
10571         * modules/linkedhash-list-tests (Depends-on): Add progname.
10572         * tests/test-linkedhash_list.c: Include progname.h.
10573         (main): Call set_program_name.
10574
10575         * modules/carray-list-tests (Depends-on): Add progname.
10576         * tests/test-carray_list.c: Include progname.h.
10577         (main): Call set_program_name.
10578
10579         * modules/avltreehash-list-tests (Depends-on): Add progname.
10580         * tests/test-avltreehash_list.c: Include progname.h.
10581         (main): Call set_program_name.
10582
10583         * modules/avltree-oset-tests (Depends-on): Add progname.
10584         * tests/test-avltree_oset.c: Include progname.h.
10585         (main): Call set_program_name.
10586
10587         * modules/avltree-list-tests (Depends-on): Add progname.
10588         * tests/test-avltree_list.c: Include progname.h.
10589         (main): Call set_program_name.
10590
10591         * modules/array-oset-tests (Depends-on): Add progname.
10592         * tests/test-array_oset.c: Include progname.h.
10593         (main): Call set_program_name.
10594
10595         * modules/array-list-tests (Depends-on): Add progname.
10596         * tests/test-array_list.c: Include progname.h.
10597         (main): Call set_program_name.
10598
10599         * modules/argp-tests (Depends-on): Add progname.
10600         * tests/test-argp.c: Include argp.h first. Include progname.h.
10601         (main): Call set_program_name.
10602
10603 2007-03-02  Paul Eggert  <eggert@cs.ucla.edu>
10604
10605         * doc/gnulib-tool.texi (Initial import): Reword description of
10606         _FILE_OFFSET_BITS and _GNU_SOURCE, since they sometimes have a
10607         limited effect even if defined after the first system include.
10608
10609 2007-03-01  Bruno Haible  <bruno@clisp.org>
10610
10611         * build-aux/config.libpath: Update to libtool-1.5.22.
10612         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
10613
10614 2007-03-01  Bruno Haible  <bruno@clisp.org>
10615
10616         * doc/relocatable-maint.texi: Recommend to set foo_CPPFLAGS, not
10617         foo_CFLAGS.
10618         Reported by Ralf Wildenhues.
10619
10620 2007-03-01  Bruno Haible  <bruno@clisp.org>
10621
10622         * build-aux/install-reloc: Remove object files left over by some
10623         compilers.
10624         Reported by Ralf Wildenhues.
10625
10626 2007-03-01  Bruno Haible  <bruno@clisp.org>
10627
10628         * build-aux/install-reloc: Break long lines.
10629
10630 2007-03-01  Bruno Haible  <bruno@clisp.org>
10631
10632         * doc/relocatable.texi: Document that it may not work on OpenBSD.
10633         Reported by Ralf Wildenhues.
10634
10635 2007-03-01  Bruno Haible  <bruno@clisp.org>
10636
10637         * doc/gnulib-tool.texi (Initial import): Remove paragraph about
10638         include ordering constraints.
10639
10640 2007-03-01  Paul Eggert  <eggert@cs.ucla.edu>
10641
10642         Followup to the 2007-02-12 patch, using suggestions from Bruno Haible in
10643         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00136.html>.
10644         * doc/gnulib-tool.texi (Initial import): Mention _FILE_OFFSET_BITS
10645         as another example.
10646         * lib/time_.h: Fix misspelling.
10647         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
10648         Require gl_HEADER_TIME_H_DEFAULTS.
10649         * m4/strptime.m4 (gl_FUNC_STRPTIME): Likewise.
10650         * m4/time_r.m4 (gl_TIME_R): Likewise.
10651         * m4/timegm.m4 (gl_FUNC_TIMEGM): Likewise.
10652
10653 2007-03-01  Bruno Haible  <bruno@clisp.org>
10654
10655         * m4/utimecmp.m4 (gl_UTIMECMP): Don't require gl_TIMESPEC.
10656         * m4/utimens.m4 (gl_UTIMENS): Likewise.
10657
10658 2007-03-01  Jim Meyering  <jim@meyering.net>
10659
10660         * modules/xreadlink (Maintainer): Add my name.
10661         * modules/xreadlink-with-size (Depends-on): Alphabetize.
10662
10663 2007-02-26  Ben Pfaff  <blp@cs.stanford.edu>
10664             Bruno Haible  <bruno@clisp.org>
10665
10666         * build-aux/install-reloc: Compile also c-ctype.c.
10667         * build-aux/relocatable.sh.in: New file.
10668         * doc/relocatable.texi: New file.
10669         * doc/relocatable-maint.texi: New file.
10670         * doc/gnulib.texi: Include relocatable-maint.texi.
10671         * lib/progreloc.c: Include unistd.h unconditionally.
10672         * lib/relocwrapper.c: Include unistd.h unconditionally.
10673         Include c-ctype.h.
10674         (add_dotbin): Use c_tolower.
10675         * m4/relocatable-lib.m4: New file, extracted from m4/relocatable.m4.
10676         (gl_RELOCATABLE_LIBRARY): Renamed from AC_RELOCATABLE_LIBRARY.
10677         (gl_RELOCATABLE_NOP): Renamed from AC_RELOCATABLE_NOP.
10678         * m4/relocatable.m4 (AC_RELOCATABLE_LIBRARY, AC_RELOCATABLE_NOP): Move
10679         to m4/relocatable-lib.m4.
10680         (gl_RELOCATABLE): Renamed from AC_RELOCATABLE. Set also
10681         RELOCATABLE_CONFIG_H_DIR, RELOCATABLE_SRC_DIR, RELOCATABLE_BUILD_DIR.
10682         (gl_RELOCATABLE_BODY): Renamed from AC_RELOCATABLE_BODY. Don't
10683         require obsolete macro AC_EXEEXT. Don't check for unistd.h. Don't set
10684         SET_RELOCATABLE. Instead set RELOCATABLE_LDFLAGS, INSTALL_PROGRAM_ENV.
10685         * modules/relocatable: New file.
10686         * modules/relocatable-lib: New file.
10687         * modules/relocatable-script: New file.
10688
10689 2007-02-28  Bruno Haible  <bruno@clisp.org>
10690
10691         Import --enable-relocatable infrastructure.
10692         * build-aux/config.libpath: New file, from GNU gettext.
10693         * build-aux/install-reloc: New file, from GNU gettext.
10694         * build-aux/reloc-ldflags: New file, from GNU gettext.
10695         * lib/relocatable.h: New file, from GNU gettext.
10696         * lib/relocatable.c: New file, from GNU gettext.
10697         * lib/relocwrapper.c: New file, from GNU gettext.
10698         * m4/relocatable.m4: New file, from GNU gettext.
10699
10700 2007-02-28  Bruno Haible  <bruno@clisp.org>
10701
10702         * MODULES.html.sh (File system functions): Add xreadlink-with-size.
10703
10704         * modules/xreadlink: New file, from GNU gettext with modifications.
10705         * lib/xreadlink.c: New file, from GNU gettext.
10706         * lib/xreadlink.h: Add comments.
10707         (xreadlink): New declaration.
10708
10709         * modules/xreadlink-with-size: Renamed from modules/xreadlink.
10710         (Files): Remove m4/xreadlink.m4. Replace lib/xreadlink.c with
10711         lib/xreadlink-with-size.c.
10712         (configure.ac): Remove gl_XREADLINK invocation.
10713         (Makefile.am): Augment lib_SOURCES.
10714         * m4/xreadlink.m4: Remove file.
10715         * lib/xreadlink-with-size.c: Renamed from lib/xreadlink.c.
10716         (xreadlink_with_size): Renamed from xreadink.
10717         * lib/xreadlink.h (xreadlink_with_size): Renamed from xreadink.
10718         * modules/canonicalize (Depends-on): Replace xreadlink with
10719         xreadlink-with-size.
10720         * lib/canonicalize.c (canonicalize_filename_mode): Update.
10721
10722 2007-02-25  Jim Meyering  <jim@meyering.net>
10723
10724         * build-aux/announce-gen: When complaining about excess arguments,
10725         list them.
10726
10727 2007-02-25  Paul Eggert  <eggert@cs.ucla.edu>
10728
10729         * README: Document signed integer overflow situation more
10730         accurately.
10731
10732 2007-02-25  Bruno Haible  <bruno@clisp.org>
10733
10734         * lib/vasnprintf.c (VASNPRINTF): Fix estimate of size needed for a
10735         'a' or 'A' conversion.
10736
10737 2007-02-25  Bruno Haible  <bruno@clisp.org>
10738
10739         * modules/filename: Renamed from modules/pathname.
10740         (Files): Replace lib/pathname.h with lib/filename.h. Replace
10741         lib/concatpath.c with lib/concat-filename.c.
10742         (Makefile.am): Update.
10743         (Include): Replace pathname.h with filename.h.
10744         * lib/filename.h: Renamed from lib/pathname.h.
10745         (concatenated_filename): Renamed from concatenated_pathname.
10746         * lib/concat-filename.c: Renamed from lib/concatpath.c.
10747         (concatenated_filename): Renamed from concatenated_pathname.
10748         * lib/findprog.c: Include filename.h instead of pathname.h.
10749         (find_in_path): Update.
10750         * lib/javacomp.c: Include filename.h instead of pathname.h.
10751         (is_envjavac_gcj43_usable, is_envjavac_oldgcj_14_14_usable,
10752         is_envjavac_oldgcj_14_13_usable, is_envjavac_nongcj_usable,
10753         is_gcj_present, is_gcj43_usable, is_oldgcj_14_14_usable,
10754         is_oldgcj_14_13_usable, is_javac_usable): Update.
10755         * lib/javaexec.c: Include filename.h instead of pathname.h.
10756         (execute_java_class): Update.
10757         * modules/findprog: Update.
10758         * modules/javacomp: Update.
10759         * modules/javaexec: Update.
10760         * MODULES.html.sh (File system functions): Add 'filename', remove
10761         'pathname'.
10762
10763 2007-02-25  Bruno Haible  <bruno@clisp.org>
10764
10765         * modules/printf-frexpl-tests: New file.
10766         * tests/test-printf-frexpl.c: New file.
10767
10768         * modules/printf-frexpl: New file.
10769         * lib/printf-frexpl.h: New file.
10770         * lib/printf-frexpl.c: New file.
10771         * m4/printf-frexpl.m4: New file.
10772
10773 2007-02-25  Bruno Haible  <bruno@clisp.org>
10774
10775         * modules/printf-frexp-tests: New file.
10776         * tests/test-printf-frexp.c: New file.
10777
10778         * modules/printf-frexp: New file.
10779         * lib/printf-frexp.h: New file.
10780         * lib/printf-frexp.c: New file.
10781         * m4/printf-frexp.m4: New file.
10782
10783 2007-02-25  Bruno Haible  <bruno@clisp.org>
10784
10785         Assume automake >= 1.10 for the tests.
10786         * modules/arcfour-tests (TESTS): Remove $(EXEEXT) suffix.
10787         * modules/arctwo-tests: Likewise.
10788         * modules/argp-tests: Likewise.
10789         * modules/avltree-list-tests: Likewise.
10790         * modules/avltree-oset-tests: Likewise.
10791         * modules/avltreehash-list-tests: Likewise.
10792         * modules/carray-list-tests: Likewise.
10793         * modules/crc-tests: Likewise.
10794         * modules/des-tests: Likewise.
10795         * modules/gc-arcfour-tests: Likewise.
10796         * modules/gc-arctwo-tests: Likewise.
10797         * modules/gc-des-tests: Likewise.
10798         * modules/gc-hmac-md5-tests: Likewise.
10799         * modules/gc-hmac-sha1-tests: Likewise.
10800         * modules/gc-md2-tests: Likewise.
10801         * modules/gc-md4-tests: Likewise.
10802         * modules/gc-md5-tests: Likewise.
10803         * modules/gc-pbkdf2-sha1-tests: Likewise.
10804         * modules/gc-rijndael-tests: Likewise.
10805         * modules/gc-sha1-tests: Likewise.
10806         * modules/gc-tests: Likewise.
10807         * modules/getaddrinfo-tests: Likewise.
10808         * modules/hmac-md5-tests: Likewise.
10809         * modules/hmac-sha1-tests: Likewise.
10810         * modules/linked-list-tests: Likewise.
10811         * modules/linkedhash-list-tests: Likewise.
10812         * modules/lock-tests: Likewise.
10813         * modules/md2-tests: Likewise.
10814         * modules/md4-tests: Likewise.
10815         * modules/md5-tests: Likewise.
10816         * modules/rbtree-list-tests: Likewise.
10817         * modules/rbtree-oset-tests: Likewise.
10818         * modules/rbtreehash-list-tests: Likewise.
10819         * modules/read-file-tests: Likewise.
10820         * modules/rijndael-tests: Likewise.
10821         * modules/stdint-tests: Likewise.
10822         * modules/tls-tests: Likewise.
10823
10824 2007-02-24  Bruno Haible  <bruno@clisp.org>
10825
10826         * lib/isnanl.h (isnanl): Define through isnan if isnan is a macro.
10827         * m4/isnan.m4 (gl_FUNC_ISNAN_NO_LIBM): Don't check for isnan as a
10828         function; instead check whether isnan with a double argument links.
10829         * m4/isnanl.m4 (gl_FUNC_ISNANL_NO_LIBM): Don't check for isnanl as a
10830         function; instead check whether isnan with a 'long double' argument
10831         links.
10832         Reported by Eric Blake <ebb9@byu.net>.
10833
10834 2007-02-24  Bruno Haible  <bruno@clisp.org>
10835
10836         * lib/isnan.c: Support the 'long double' case if USE_LONG_DOUBLE is
10837         defined.
10838         * lib/isnanl.c: Remove all code. Just include isnan.c.
10839         * modules/isnanl-nolibm (Files): Add lib/isnan.c.
10840
10841 2007-02-25  Jim Meyering  <jim@meyering.net>
10842
10843         Avoid conflicting types for 'unsetenv' on FreeBSD.
10844         * lib/putenv.c (_unsetenv): Rename from "unsetenv", to avoid
10845         conflicting with FreeBSD's (5.0 and 6.1) function declaration
10846         in stdlib.h.
10847
10848 2007-02-24  Bruno Haible  <bruno@clisp.org>
10849
10850         * modules/isnanl-nolibm-tests: New file.
10851         * tests/test-isnanl.c: New file.
10852
10853         * modules/isnanl-nolibm: New file.
10854         * lib/isnanl.h: New file.
10855         * lib/isnanl.c: New file.
10856         * m4/isnanl.m4: New file.
10857
10858 2007-02-24  Bruno Haible  <bruno@clisp.org>
10859
10860         * modules/isnan-nolibm-tests: New file.
10861         * tests/test-isnan.c: New file.
10862
10863         * modules/isnan-nolibm: New file.
10864         * lib/isnan.h: New file.
10865         * lib/isnan.c: New file.
10866         * m4/isnan.m4: New file.
10867
10868 2007-02-24  Bruno Haible  <bruno@clisp.org>
10869
10870         * lib/frexpl.c (frexpl): Correct return values for x = 1.0L. Don't
10871         assume that an exponent fits in 20 bits.
10872
10873 2007-02-24  Jim Meyering  <jim@meyering.net>
10874
10875         * m4/regex.m4: Update the description of the configure-time option,
10876         --without-included-regex, to state accurately what the defaults are,
10877         and perhaps to give people an idea why using this option is risky.
10878
10879 2007-02-24  Paul Eggert  <eggert@cs.ucla.edu>
10880
10881         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check for a nanosleep that
10882         loops on small arguments.  This attempts to avoid the problem
10883         Bruno Haible reported for AIX 4.3.2 in
10884         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00309.html>.
10885
10886 2007-02-23  Bruno Haible  <bruno@clisp.org>
10887
10888         * m4/perl.m4 (gl_PERL): Require version 5.005, not 5.003.
10889         Needed for help2man.
10890
10891 2007-02-23  Karl Berry  <karl@gnu.org>
10892
10893         * doc/gnulib-tool.texi (CVS Issues): mention that when foo_.h
10894         exists, foo.h should be cvs-ignored, not committed.
10895
10896 2007-02-23  Eric Blake  <ebb9@byu.net>
10897
10898         * lib/getdate.h (includes):  Include <time.h>, not "timespec.h".
10899         * lib/stat-time.h (includes): Likewise.
10900         * lib/utimecmp.c (includes): Likewise.
10901         * lib/utimens.h (includes): Likewise.
10902         * lib/getdate.y (includes): Also include "timespec.h" for use
10903         internal to the module.
10904         * modules/utimens (Depends-on): Revert yesterday's patch.
10905         * modules/nanosleep (Depends-on): Add missing dependency.
10906
10907 2007-02-22  Bruno Haible  <bruno@clisp.org>
10908
10909         * lib/glob.c: Don't include getlogin_r.h.
10910
10911 2007-02-22  Jim Meyering  <jim@meyering.net>
10912
10913         * modules/utimens (Depends-on): Add timespec, required for
10914         utimens.h's inclusion of timespec.h.
10915
10916 2007-02-21  Paul Eggert  <eggert@cs.ucla.edu>
10917
10918         * lib/getcwd.c (__getcwd): Undo previous change; it mishandled
10919         long unreadable paths in GNU/Linux.  Problem reported by Andreas
10920         Schwab in
10921         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00261.html>.
10922         I'll try to think of a better way to fix the Solaris problem.
10923
10924         * lib/getcwd.c (__getcwd): Don't assume getcwd (NULL, 0) works
10925         like glibc; on Solaris 10, it fails with errno == EINVAL.
10926         POSIX says the behavior is unspecified if the first argument is NULL,
10927         so play it safe and never pass NULL to the system getcwd.
10928
10929 2007-02-21  Jim Meyering  <jim@meyering.net>
10930
10931         * lib/gettimeofday.c (rpl_gettimeofday): Remove declaration
10932         of gettimeofday.  It would conflict with the one now always
10933         provided via sys_time_.h.  Reported by Matthew Woehlke, as
10934         an IRIX 6.5 build failure.
10935
10936 2007-02-20  Paul Eggert  <eggert@cs.ucla.edu>
10937
10938         Minor fixups to port to Solaris 10 with Sun C 5.8.
10939         * lib/getcwd.c [!_LIBC]: Include dirfd.h, since we use dirfd.
10940         * modules/getcwd (Depends-on): Add dirfd.
10941         * lib/putenv.c (putenv): #undef it.
10942         (rpl_putenv): New decl.
10943         (malloc, free): Include <stdlib.h> rather than prototyping separately.
10944
10945 2007-02-20  Bruno Haible  <bruno@clisp.org>
10946
10947         * modules/stdio-tests: New file.
10948         * tests/test-stdio.c: New file.
10949
10950         * modules/vsnprintf (Files): Remove lib/vsnprintf.h.
10951         (Depends-on): Add stdio.
10952         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
10953         (Include): Use <stdio.h> instead of vsnprintf.h.
10954         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
10955         HAVE_DECL_VSNPRINTF.
10956         * lib/vsnprintf.c: Include <stdio.h> instead of vsnprintf.h.
10957
10958         * modules/snprintf (Files): Remove lib/snprintf.h.
10959         (Depends-on): Add stdio.
10960         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
10961         (Include): Use <stdio.h> instead of snprintf.h.
10962         * m4/snprintf.m4 (gl_FUNC_SNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
10963         HAVE_DECL_SNPRINTF.
10964         * lib/snprintf.c: Include <stdio.h> instead of snprintf.h.
10965         * lib/getaddrinfo.c: Likewise.
10966
10967         * modules/stdio: New file.
10968         * lib/stdio_.h: New file, incorporating snprintf.h and vsnprintf.h.
10969         * lib/snprintf.h: Remove file.
10970         * lib/vsnprintf.h: Remove file.
10971         * lib/.cppi-disable: Remove snprintf.h.
10972         * m4/stdio_h.m4: New file.
10973         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdio.
10974
10975 2007-02-20  Jim Meyering  <jim@meyering.net>
10976
10977         * lib/ftruncate.c [HAVE_CHSIZE]: Document that this code is
10978         used by e.g., mingw.  From Bruno Haible.
10979
10980 2007-02-19  Bruno Haible  <bruno@clisp.org>
10981
10982         * lib/string_.h: Use "#pragma GCC system_header" to suppress some gcc
10983         warnings.
10984         Reported by Ben Pfaff <blp@cs.stanford.edu>.
10985
10986 2007-02-19  Bruno Haible  <bruno@clisp.org>
10987
10988         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Don't request a complaint mail
10989         from mingw users.
10990
10991 2007-02-19  Bruno Haible  <bruno@clisp.org>
10992
10993         * lib/stdlib_.h: Use "#pragma GCC system_header" to suppress some gcc
10994         warnings.
10995         Reported by Joel E. Denny <jdenny@ces.clemson.edu> via Paul Eggert.
10996
10997 2007-02-19  Jim Meyering  <jim@meyering.net>
10998
10999         Don't use FD after a successful "fdopendir (fd)".
11000         * lib/getcwd.c (__getcwd) [AT_FDCWD]: fdopendir (fd) usually closes fd.
11001         Reset it by calling dirfd on the just-obtained DIR*.
11002
11003         * m4/ftruncate.m4: Adjust comment to give this module a 3-year reprieve.
11004         Prompted by a report from Bruno Haible that mingw lacks ftruncate.
11005
11006 2007-02-18  Bruno Haible  <bruno@clisp.org>
11007
11008         * lib/readlink.c: Include <unistd.h>.
11009         * m4/readlink.m4 (gl_FUNC_READLINK): Require gl_UNISTD_H_DEFAULTS. Set
11010         HAVE_READLINK.
11011         * modules/readlink (Depends-on): Add unistd.
11012         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
11013         (Include): Add <unistd.h>.
11014
11015         * lib/getlogin_r.h: Remove file.
11016         * lib/getlogin_r.c: Include <unistd.h> instead of getlogin_r.h.
11017         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE): Remove macro.
11018         (gl_GETLOGIN_R): Inline it here. Require gl_UNISTD_H_DEFAULTS. Set
11019         HAVE_DECL_GETLOGIN_R.
11020         * modules/getlogin_r (Files): Remove lib/getlogin_r.h.
11021         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
11022         (Include): Use <unistd.h> instead of getlogin_r.h.
11023
11024         * lib/getcwd.h: Remove file.
11025         * lib/getcwd.c: Include <unistd.h> instead of getcwd.h.
11026         * lib/xgetcwd.c: Likewise.
11027         * m4/getcwd.m4 (gl_FUNC_GETCWD): Require gl_UNISTD_H_DEFAULTS. Set
11028         REPLACE_GETCWD. Don't define __GETCWD_PREFIX.
11029         * modules/getcwd (Files): Remove lib/getcwd.h.
11030         (Depends-on): Add unistd.
11031         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
11032         (Include): Use <unistd.h> instad of getcwd.h.
11033
11034         * lib/ftruncate.c: Include <unistd.h> first.
11035         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Require gl_UNISTD_H_DEFAULTS.
11036         Set HAVE_FTRUNCATE.
11037         * modules/ftruncate (Depends-on): Add unistd.
11038         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
11039
11040         * lib/fchdir.c: Include <unistd.h> first.
11041         * lib/dirent_.h: Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT.
11042         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_UNISTD_H_DEFAULTS instead
11043         of gl_HEADER_UNISTD_DEFAULTS. Set REPLACE_FCHDIR. Don't set UNISTD_H.
11044         * modules/fchdir (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
11045         (Makefile.am): Substitute also REPLACE_FCHDIR into dirent.h.
11046
11047         * lib/dup2.c: Include <unistd.h> first.
11048         * m4/dup2.m4 (gl_FUNC_DUP2): Require gl_UNISTD_H_DEFAULTS. Set
11049         HAVE_DUP2.
11050         * modules/dup2 (Depends-on): Add unistd.
11051         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
11052
11053         * lib/chown.c: Include <unistd.h> first. Undefine chown later.
11054         * m4/chown.m4 (gl_FUNC_CHOWN): Require gl_UNISTD_H_DEFAULTS. Set
11055         REPLACE_CHOWN. Don't define chown as a macro here.
11056         * modules/chown (Depends-on): Add unistd.
11057         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
11058
11059         * lib/unistd_.h: Test HAVE_UNISTD_H determined at configure time.
11060         Add definition for GL_LINK_WARNING.
11061         (chown, dup2): New declarations.
11062         (fchdir): Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT. Provide optional
11063         link warning.
11064         (ftruncate): New declaration.
11065         (getcwd): New declaration, taken from old getcwd.h.
11066         (getlogin_r): New declaration, taken from old getlogin_r.h.
11067         (readlink): New declaration.
11068         * m4/unistd_h.m4 (gl_UNISTD_H): Renamed from gl_HEADER_UNISTD. Don't
11069         set UNISTD_H. Inline gl_PREREQ_UNISTD. Set HAVE_UNISTD_H.
11070         (gl_PREREQ_UNISTD): Remove macro.
11071         (gl_UNISTD_MODULE_INDICATOR): New macro.
11072         (gl_UNISTD_H_DEFAULTS): Renamed from gl_HEADER_UNISTD_DEFAULTS. Set
11073         many new variables. Don't set UNISTD_H.
11074         * modules/unistd (Description): Change.
11075         (Depends-on): Add link-warning.
11076         (configure.ac): Update.
11077         (Makefile.am): Create unistd.h always. Substitute many new variables
11078         into it.
11079
11080 2007-02-18  Bruno Haible  <bruno@clisp.org>
11081
11082         * lib/stdlib_.h (getsubopt): New declaration, copied from getsubopt.h.
11083         * modules/stdlib (stdlib.h): Also substitute GNULIB_GETSUBOPT and
11084         HAVE_GETSUBOPT.
11085         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Also initialize
11086         GNULIB_GETSUBOPT and HAVE_GETSUBOPT.
11087         * lib/getsubopt.h: Remove file.
11088         * modules/getsubopt (Files): Remove lib/getsubopt.h.
11089         (Depends-on): Add stdlib.
11090         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
11091         (Includes): Use <stdlib.h> instead of getsubopt.h.
11092         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Require gl_STDLIB_H_DEFAULTS.
11093         Set HAVE_GETSUBOPT.
11094         * lib/getsubopt.c: Don't include getsubopt.h.
11095
11096 2007-02-18  Bruno Haible  <bruno@clisp.org>
11097
11098         * modules/fchdir (Depends-on): Add dup2.
11099
11100 2007-02-18  Bruno Haible  <bruno@clisp.org>
11101
11102         * lib/stdlib_.h: Handle glibc's special invocation convention
11103         specially.
11104
11105 2007-02-18  Bruno Haible  <bruno@clisp.org>
11106
11107         * modules/stdlib-tests: New file.
11108         * tests/test-stdlib.c: New file.
11109
11110         * modules/mkstemp (Files): Remove lib/mkstemp.h.
11111         (Depends-on): Add stdlib.
11112         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
11113         (Includes): Use <stdlib.h> instead of mkstemp.h.
11114         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require gl_STDLIB_H_DEFAULTS. Set
11115         REPLACE_MKSTEMP. Remove definition of __MKSTEMP_PREFIX.
11116         * lib/mkstemp.c: Don't include mkstemp.h.
11117         * lib/mkstemp-safer.c: Include <stdlib.h> instead of mkstemp.h.
11118         * lib/stdlib--.h: Don't include mkstemp.h.
11119
11120         * modules/mkdtemp (Files): Remove lib/mkdtemp.h.
11121         (Depends-on): Add stdlib.
11122         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
11123         (Includes): Use <stdlib.h> instead of mkdtemp.h.
11124         * m4/mkdtemp.m4 (gt_FUNC_MKDTEMP): Require gl_STDLIB_H_DEFAULTS. Set
11125         HAVE_MKDTEMP.
11126         * lib/mkdtemp.c: Don't include mkdtemp.h.
11127         * lib/clean-temp.c: Don't include mkdtemp.h.
11128
11129         * modules/exit (Files): Remove lib/exit.h.
11130         (Depends-on): Add stdlib.
11131         (Makefile.am): Remove lib_SOURCES.
11132         (Include): Use <stdlib.h> instead of exit.h.
11133         * lib/argmatch.c: Don't include exit.h.
11134         * lib/execute.c: Likewise.
11135         * lib/pagealign_alloc.c: Likewise.
11136         * lib/pipe.c: Likewise.
11137         * lib/wait-process.c: Likewise.
11138         * lib/copy-file.c: Include <stdlib.h> instead of exit.h.
11139         * lib/exitfail.c: Likewise.
11140         * lib/savewd.c: Likewise.
11141         * lib/xsetenv.c: Likewise.
11142
11143         * modules/stdlib: New file.
11144         * lib/stdlib_.h: New file, incorporating exit.h, mkdtemp.h, mkstemp.h
11145         and extra comments about mkstemp().
11146         * lib/exit.h: Remove file.
11147         * lib/mkdtemp.h: Remove file.
11148         * lib/mkstemp.h: Remove file.
11149         * m4/stdlib_h.m4: New file.
11150         * MODULES.html.sh (Support for systems lacking ANSI C 89): Add stdlib.
11151
11152 2007-02-18  Bruno Haible  <bruno@clisp.org>
11153
11154         * modules/math-tests: New file.
11155         * tests/test-math.c: New file.
11156
11157         * modules/math: New file.
11158         * modules/mathl (Files): Remove lib/mathl.h.
11159         (Depends-on): Add math.
11160         (Makefile.am): Don't mention mathl.h.
11161         (Include): Use <math.h> instead of mathl.h.
11162         * lib/math_.h: New file.
11163         * lib/mathl.h: Remove file.
11164         * lib/acosl.c: Include <config.h> and <math.h> first. Don't include
11165         mathl.h.
11166         * lib/asinl.c: Likewise.
11167         * lib/atanl.c: Likewise.
11168         * lib/ceill.c: Likewise.
11169         * lib/cosl.c: Likewise.
11170         * lib/expl.c: Likewise.
11171         * lib/floorl.c: Likewise.
11172         * lib/frexpl.c: Likewise.
11173         * lib/ldexpl.c: Likewise.
11174         * lib/logl.c: Likewise.
11175         * lib/sincosl.c: Likewise.
11176         * lib/sinl.c: Likewise.
11177         * lib/sqrtl.c: Likewise.
11178         * lib/tanl.c: Likewise.
11179         * lib/trigl.c: Likewise.
11180         * m4/math_h.m4: New file.
11181         * MODULES.html.sh (Mathematics): Add math.
11182
11183 2007-02-17  Bruno Haible  <bruno@clisp.org>
11184
11185         * modules/wctype-tests: New file.
11186         * tests/test-wctype.c: New file.
11187
11188         * modules/wchar-tests: New file.
11189         * tests/test-wchar.c: New file.
11190
11191         * modules/unistd-tests: New file.
11192         * tests/test-unistd.c: New file.
11193
11194         * modules/time-tests: New file.
11195         * tests/test-time.c: New file.
11196
11197         * modules/sysexits-tests: New file.
11198         * tests/test-sysexits.c: New file.
11199
11200         * modules/sys_time-tests: New file.
11201         * tests/test-sys_time.c: New file.
11202
11203         * modules/sys_stat-tests: New file.
11204         * tests/test-sys_stat.c: New file.
11205
11206         * modules/sys_socket-tests: New file.
11207         * tests/test-sys_socket.c: New file.
11208
11209         * modules/sys_select-tests: New file.
11210         * tests/test-sys_select.c: New file.
11211
11212         * modules/string-tests: New file.
11213         * tests/test-string.c: New file.
11214
11215         * modules/stdbool-tests: New file.
11216         * tests/test-stdbool.c: New file.
11217
11218         * modules/netinet_in-tests: New file.
11219         * tests/test-netinet_in.c: New file.
11220
11221         * modules/inttypes-tests: New file.
11222         * tests/test-inttypes.c: New file.
11223
11224         * modules/fcntl-tests: New file.
11225         * tests/test-fcntl.c: New file.
11226
11227         * modules/byteswap-tests: New file.
11228         * tests/test-byteswap.c: New file.
11229
11230         * modules/arpa_inet-tests: New file.
11231         * tests/test-arpa_inet.c: New file.
11232
11233 2007-02-17  Bruno Haible  <bruno@clisp.org>
11234
11235         * lib/inttypes_.h: Add definition for GL_LINK_WARNING.
11236         (imaxabs, imaxdiv, strtoimax, strtoumax): Don't declare the function
11237         if the corresponding module is not enabled. Emit link warnings if
11238         the function is used nevertheless.
11239         * m4/inttypes.m4 (gl_INTTYPES_H): Never use the existing <inttypes.h>.
11240         Don't AC_SUBST HAVE_DECL_IMAXABS, HAVE_DECL_IMAXDIV,
11241         HAVE_DECL_STRTOIMAX, HAVE_DECL_STRTOUMAX.
11242         (gl_INTTYPES_MODULE_INDICATOR, gl_INTTYPES_H_DEFAULTS): New macros.
11243         * modules/inttypes (Depends-on): Add link-warning.
11244         (Makefile.am): Copy the contents of build-aux/link-warning.h into
11245         inttypes.h. Substitute also GNULIB_IMAXABS, GNULIB_IMAXDIV,
11246         GNULIB_STRTOIMAX, GNULIB_STRTOUMAX.
11247         * modules/imaxabs (configure.ac): Invoke gl_INTTYPES_MODULE_INDICATOR.
11248         * modules/imaxdiv (configure.ac): Likewise.
11249         * modules/strtoimax (configure.ac): Likewise.
11250         * modules/strtoumax (configure.ac): Likewise.
11251
11252 2007-02-17  Bruno Haible  <bruno@clisp.org>
11253
11254         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Include the contents of
11255         gl_STRING_MODULE_INDICATOR_DEFAULTS.
11256         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Remove macro.
11257         (gl_HEADER_STRING_H_BODY, gl_STRING_MODULE_INDICATOR): Update.
11258
11259 2007-02-17  Bruno Haible  <bruno@clisp.org>
11260
11261         * modules/link-warning: New file.
11262         * build-aux/link-warning.h: New file, extracted from lib/string_.h.
11263         * lib/string_.h (GL_LINK_WARNING): Remove definition.
11264         * modules/string (Depends-on): Add link-warning.
11265         (Makefile.am): Copy the contents of build-aux/link-warning.h into
11266         string.h.
11267         * MODULES.html.sh (Support for building libraries and executables): Add
11268         link-warning.
11269
11270 2007-02-17  Bruno Haible  <bruno@clisp.org>
11271
11272         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strcasecmp,
11273         strncasecmp, strchr, strchrnul, strdup, strndup, strnlen, strcspn,
11274         strpbrk, strspn, strrchr, strsep, strstr, strcasestr, strtok_r): Break
11275         long lines.
11276
11277 2007-02-17  Ben Pfaff  <blp@cs.stanford.edu>
11278             Bruno Haible  <bruno@clisp.org>
11279
11280         * modules/tmpfile: New file.
11281         * lib/tmpfile.c: New file.
11282         * m4/tmpfile.m4: New file.
11283         * MODULES.html.sh (func_all_modules): New section "Input/output".
11284
11285 2007-02-15  Bruno Haible  <bruno@clisp.org>
11286
11287         * lib/clean-temp.c [WIN32 && !CYGWIN]: Include <windows.h>.
11288         (supports_delete_on_close): New function.
11289         (open_temp, fopen_temp): Use _O_TEMPORARY when supported.
11290
11291 2007-02-14  Bruno Haible  <bruno@clisp.org>
11292
11293         * modules/mbspcasecmp-tests: New file.
11294         * tests/test-mbspcasecmp.sh: New file.
11295         * tests/test-mbspcasecmp.c: New file.
11296
11297         New module mbspcasecmp.
11298         * modules/mbspcasecmp: New file.
11299         * lib/mbspcasecmp.c: New file.
11300         * lib/string_.h (strncasecmp): Change warning message.
11301         (mbspcasecmp): New declaration.
11302         * m4/mbspcasecmp.m4: New file.
11303         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
11304         GNULIB_MBSPCASECMP.
11305         * modules/string (string.h): Also substitute GNULIB_MBSPCASECMP.
11306         * MODULES.html.sh (Internationalization functions): Add mbspcasecmp.
11307
11308 2007-02-14  Bruno Haible  <bruno@clisp.org>
11309
11310         * modules/mbsncasecmp-tests: New file.
11311         * tests/test-mbsncasecmp.sh: New file.
11312         * tests/test-mbsncasecmp.c: New file.
11313
11314         New module mbsncasecmp.
11315         * modules/mbsncasecmp: New file.
11316         * lib/mbsncasecmp.c: New file.
11317         * lib/string_.h (mbsncasecmp): New declaration.
11318         * m4/mbsncasecmp.m4: New file.
11319         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
11320         GNULIB_MBSNCASECMP.
11321         * modules/string (string.h): Also substitute GNULIB_MBSNCASECMP.
11322         * MODULES.html.sh (Internationalization functions): Add mbsncasecmp.
11323
11324 2007-02-14  Paul Eggert  <eggert@cs.ucla.edu>
11325
11326         * lib/exclude.c (FNM_EXTMATCH): Define if system does not.
11327         Verify that it doesn't overlap with our flags.
11328         (fnmatch_no_wildcards): Don't use strcasecmp or strncasecmp, which
11329         do not have the desired effect in multibyte locales; instead, use
11330         mbscasecmp.
11331         * modules/exclude (Depends-on): Depend on mbscasecmp, not strcase.
11332         Add dependency on xalloc.  Depend on fnmatch, not fnmatch-gnu, since
11333         we don't require GNU fnmatch ourselves (if our users require it, they
11334         should do so explicitly).
11335
11336         Fix regex code so it doesn't rely on strcasecmp.
11337         * lib/regex_internal.h: Include <langinfo.h> only if _LIBC is defined.
11338         Otherwise, include gnulib's langinfo.h.
11339         * lib/regcomp.c (init_dfa): Don't use strcasecmp, as it can have
11340         undesirable behavior in non-C locales.  Instead, rely on localecharset.
11341         * m4/regex.m4 (gl_PREREQ_REGEX): Don't require AM_LANGINFO_CODESET.
11342         * modules/regex (FILES): Remove m4/codeset.m4.
11343         (Depends-on): Add localcharset.  Remove strcase.
11344
11345 2007-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11346
11347         * m4/unlinkdir.m4 (gl_UNLINKDIR): Fix m4 quoting bug.
11348         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Likewise.
11349
11350 2007-02-13  Bruno Haible  <bruno@clisp.org>
11351
11352         * m4/intdiv0.m4 (gt_INTDIV0): Assume ANSI C. Fix underquoting bug.
11353         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
11354
11355 2007-02-12  Bruno Haible  <bruno@clisp.org>
11356
11357         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
11358         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): If
11359         GNULIB_POSIXCHECK and the gnulib module not enabled, provoke a link-
11360         time warning rather than a link error.
11361
11362 2007-02-12  Bruno Haible  <bruno@clisp.org>
11363
11364         * m4/locale-fr.m4 (gt_LOCALE_FR): Fix m4 quoting bug.
11365         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
11366         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
11367
11368 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
11369
11370         * lib/string_.h (strncasecmp): Fix typo: this macro takes 3
11371         args, not 2.
11372
11373 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
11374
11375         New module 'time', so that apps can include <time.h> as per
11376         POSIX and GNU instead of separate include files like time_r.h
11377         and timegm.h.  This implementation tries out a simpler approach
11378         for replacing decls in standard include files (as compared to
11379         the string module), somewhat as an experiment.
11380
11381         * config/srclist.txt: Comment out mktime.c for now.
11382         * doc/gnulib-tool.texi (Initial import): Don't use time_r as an example
11383         since it doesn't apply any more.  Use generic wording instead.
11384         * MODULES.html.sh (Support for systems lacking POSIX:2001): New module
11385         'time'.
11386         * lib/time_.h, m4/time_h.m4, modules/time: New files.
11387         * lib/strptime.h, lib/time_r.h, lib/timegm.h: Remove.
11388         * lib/mktime.c: Include config.h depending on _LIBC, not HAVE_CONFIG_H.
11389         Don't include <sys/types.h>; no longer needed since we assume C89.
11390         * lib/mktime.c: Don't include "time_r.h"; no longer needed.
11391         * lib/strftime.c: Likewise.
11392         * lib/time_r.c: Likewise.
11393         * lib/nanosleep.c (nanosleep): #undef after include files, not before.
11394         * lib/nanosleep.c: Include <time.h> first, to check interface.
11395         * lib/strptime.c: Likewise.
11396         * lib/time_r.c: Likewise.
11397         * lib/timegm.c: Likewise.
11398         * lib/strptime.c: Don't include strptime.h or time_r.h; no longer
11399         needed.
11400         * lib/timegm.c: Don't include timegm.h; no longer needed.
11401         * lib/timespec.h: Don't include <sys/time.h> before <time.h>;
11402         time.h now handles any problems in that area.
11403         (struct timespec, nanosleep): Remove; time.h now arranges for these.
11404         * lib/xnanosleep.c: Don't include timespec.h; no longer needed now
11405         that time.h defines struct timespec.
11406         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check that nanosleep is declared.
11407         Set REPLACE_NANOSLEEP.  Don't AC_DEFINE nanosleep; the time module now
11408         handles that.
11409         * m4/strptime.m4 (gl_FUNC_STPRTIME): Set REPLACE_STRPTIME.
11410         * m4/time_r.m4 (gl_TIME_R): Don't define HAVE_TIME_R_POSIX; no longer
11411         needed.  Set REPLACE_LOCALTIME.
11412         * m4/timegm.m4 (gl_FUNC_TIMEGM): Set REPLACE_TIMEGM.
11413         * m4/timespec.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Move to time_h.m4.
11414         (gl_TIMESPEC): Don't check for sys/time.h or struct timespec or
11415         nanosleep; time_h.m4 now does that.  Don't require
11416         gl_USE_SYSTEM_EXTENSIONS; no longer needed directly, and the time
11417         module handles this now.
11418         * modules/getdate (Depends-on): Remove timespec.  Add time.
11419         * modules/nanosleep (Depends-on): Likewise.
11420         * modules/stat-time (Depends-on): Likewise.
11421         * modules/nanosleep (Include): Include time.h, not timespec.h.
11422         * modules/strptime (Files): Remove lib/strptime.h.
11423         (Depends-on): Add extensions, time.
11424         (Include): Include time.h, not strptime.h.
11425         * modules/time_r (Files): Remove lib/time_r.h.
11426         (Depends-on): Add time.
11427         (Include): Include time.h, not time_r.h.
11428         * modules/timegm: Likewise.
11429         * modules/timespec (Description): Now does timespec-related decls
11430         of our own, instead of struct timespec itself.
11431         (Depends-on): Add time; remove extensions.
11432         (Maintainer): Add self.
11433         * modules/utimecmp (Depends-on): Add time; remove timespec.
11434         * modules/utimens (Depends-on): Likewise.
11435         * modules/xnanosleep (Depends-on): Likewise.
11436
11437 2007-02-11  Bruno Haible  <bruno@clisp.org>
11438
11439         * lib/c-strstr.c: Include allocsa.h.
11440         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
11441         * lib/c-strcasestr.c: Include allocsa.h.
11442         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
11443         * lib/strcasestr.c: Include allocsa.h.
11444         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
11445         * lib/mbsstr.c: Include allocsa.h.
11446         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
11447         allocsa/freesa instead of malloc/free.
11448         * lib/mbscasestr.c: Include allocsa.h.
11449         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
11450         allocsa/freesa instead of malloc/free.
11451         * modules/c-strstr (Depends-on): Add allocsa.
11452         * modules/c-strcasestr (Depends-on): Likewise.
11453         * modules/strcasestr (Depends-on): Likewise.
11454         * modules/mbsstr (Depends-on): Likewise.
11455         * modules/mbscasestr (Depends-on): Likewise.
11456
11457 2007-02-11  Bruno Haible  <bruno@clisp.org>
11458
11459         * lib/mbsspn.c (mbsspn): Fix bug. Remove unnecessary strlen call.
11460
11461         * modules/mbsspn-tests: New file.
11462         * tests/test-mbsspn.sh: New file.
11463         * tests/test-mbsspn.c: New file.
11464
11465 2007-02-11  Bruno Haible  <bruno@clisp.org>
11466
11467         * lib/mbspbrk.c (mbspbrk): Remove unneeded cast.
11468
11469         * modules/mbspbrk-tests: New file.
11470         * tests/test-mbspbrk.sh: New file.
11471         * tests/test-mbspbrk.c: New file.
11472
11473 2007-02-11  Bruno Haible  <bruno@clisp.org>
11474
11475         * lib/mbscspn.c (mbscspn): Remove unnecessary strlen call and
11476         unneeded cast.
11477
11478         * modules/mbscspn-tests: New file.
11479         * tests/test-mbscspn.sh: New file.
11480         * tests/test-mbscspn.c: New file.
11481
11482 2007-02-11  Bruno Haible  <bruno@clisp.org>
11483
11484         * modules/mbscasecmp-tests: New file.
11485         * tests/test-mbscasecmp.sh: New file.
11486         * tests/test-mbscasecmp.c: New file.
11487
11488 2007-02-11  Bruno Haible  <bruno@clisp.org>
11489
11490         Ensure O(n) worst-case complexity of mbscasestr.
11491         * lib/mbscasestr.c: Include stdbool.h.
11492         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
11493         functions.
11494         (mbscasestr): Add some bookkeeping. Invoke knuth_morris_pratt_* when
11495         the bookkeeping indicates that it's worth it.
11496         * modules/mbscasestr (Depends-on): Add stdbool, mbslen, strnlen.
11497
11498         * modules/mbscasestr-tests: New file.
11499         * tests/test-mbscasestr1.c: New file.
11500         * tests/test-mbscasestr2.sh: New file.
11501         * tests/test-mbscasestr2.c: New file.
11502         * tests/test-mbscasestr3.sh: New file.
11503         * tests/test-mbscasestr3.c: New file.
11504         * tests/test-mbscasestr4.sh: New file.
11505         * tests/test-mbscasestr4.c: New file.
11506         * m4/locale-tr.m4: New file.
11507
11508 2007-02-11  Bruno Haible  <bruno@clisp.org>
11509
11510         Ensure O(n) worst-case complexity of mbsstr.
11511         * lib/mbsstr.c: Include stdbool.h.
11512         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
11513         functions.
11514         (mbsstr): Add some bookkeeping. Invoke knuth_morris_pratt_* when the
11515         bookkeeping indicates that it's worth it.
11516         * modules/mbsstr (Depends-on): Add stdbool, mbslen, strnlen.
11517
11518         * modules/mbsstr-tests: New file.
11519         * tests/test-mbsstr1.c: New file.
11520         * tests/test-mbsstr2.sh: New file.
11521         * tests/test-mbsstr2.c: New file.
11522         * tests/test-mbsstr3.sh: New file.
11523         * tests/test-mbsstr3.c: New file.
11524         * m4/locale-fr.m4: New file.
11525
11526 2007-02-11  Bruno Haible  <bruno@clisp.org>
11527
11528         * lib/mbsrchr.c (mbsrchr): Fix bug.
11529
11530         * modules/mbsrchr-tests: New file.
11531         * tests/test-mbsrchr.sh: New file.
11532         * tests/test-mbsrchr.c: New file.
11533
11534 2007-02-11  Bruno Haible  <bruno@clisp.org>
11535
11536         * lib/mbschr.c (mbschr): Fix bug.
11537
11538         * modules/mbschr-tests: New file.
11539         * tests/test-mbschr.sh: New file.
11540         * tests/test-mbschr.c: New file.
11541         * m4/locale-zh.m4: New file.
11542
11543 2007-02-11  Bruno Haible  <bruno@clisp.org>
11544
11545         Support for copying multibyte string iterators.
11546         * lib/mbiter.h: Include <string.h>.
11547         (mbiter_multi_copy): New function.
11548         (mbi_copy): New macro.
11549         * lib/mbuiter.h: Include <string.h>.
11550         (mbuiter_multi_copy): New function.
11551         (mbui_copy): New macro.
11552
11553 2007-02-11  Bruno Haible  <bruno@clisp.org>
11554
11555         New module mbslen.
11556         * modules/mbslen: New file.
11557         * lib/mbslen.c: New file.
11558         * lib/string_.h (mbslen): New declaration.
11559         * m4/mbslen.m4: New file.
11560         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
11561         GNULIB_MBSLEN.
11562         * modules/string (string.h): Also substitute GNULIB_MBSLEN.
11563         * MODULES.html.sh (Internationalization functions): Add mbslen.
11564
11565 2007-02-11  Bruno Haible  <bruno@clisp.org>
11566
11567         Ensure O(n) worst-case complexity of strcasestr substitute.
11568         * lib/strcasestr.c: Include stdbool.h.
11569         (knuth_morris_pratt): New function.
11570         (strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when the
11571         bookkeeping indicates that it's worth it.
11572         * modules/strcasestr (Depends-on): Add stdbool, strnlen.
11573
11574         * modules/strcasestr-tests: New file.
11575         * tests/test-strcasestr.c: New file.
11576
11577 2007-02-11  Bruno Haible  <bruno@clisp.org>
11578
11579         Ensure O(n) worst-case complexity of c_strcasestr.
11580         * lib/c-strcasestr.c: Include stdbool.h, string.h.
11581         (knuth_morris_pratt): New function.
11582         (c_strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when
11583         the bookkeeping indicates that it's worth it.
11584         * modules/c-strcasestr (Depends-on): Add stdbool, strnlen.
11585
11586         * modules/c-strcasestr-tests: New file.
11587         * tests/test-c-strcasestr.c: New file.
11588
11589 2007-02-11  Bruno Haible  <bruno@clisp.org>
11590
11591         Ensure O(n) worst-case complexity of c_strstr.
11592         * lib/c-strstr.c: Include stdbool.h, string.h.
11593         (knuth_morris_pratt): New function.
11594         (c_strstr): Add some bookkeeping. Invoke knuth_morris_pratt when the
11595         bookkeeping indicates that it's worth it.
11596         * modules/c-strstr (Depends-on): Add stdbool, strnlen.
11597
11598         * lib/c-strstr.c: Complete rewrite for maintainability.
11599
11600         * modules/c-strstr-tests: New file.
11601         * tests/test-c-strstr.c: New file.
11602
11603 2007-02-11  Bruno Haible  <bruno@clisp.org>
11604
11605         * m4/javacomp.m4 (gt_JAVACOMP): Work around a 'tr' bug in coreutils
11606         5.2.1 and earlier, whereby \055 was treated just like the range
11607         delimiter '-'.
11608         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
11609
11610 2007-02-08  Bruno Haible  <bruno@clisp.org>
11611
11612         * modules/regex (Depends-on): Add stdbool.
11613         Reported by Dalibor Topic <robilad@kaffe.org>.
11614
11615 2007-02-05  Paul Eggert  <eggert@cs.ucla.edu>
11616
11617         * m4/regex.m4 (gl_REGEX): Check for glibc bug #3957.
11618         Prefer returning from main to exiting from it.
11619         Remove unnecessary parens after sizeof.
11620
11621 2007-02-05  Bruno Haible  <bruno@clisp.org>
11622
11623         New module mbssep.
11624         * modules/mbssep: New file.
11625         * lib/mbssep.c: New file.
11626         * lib/string_.h (strsep): Add a conditional link warning.
11627         (mbssep): New declaration.
11628         * m4/mbssep.m4: New file.
11629         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
11630         GNULIB_MBSSEP.
11631         * modules/string (string.h): Also substitute GNULIB_MBSSEP.
11632         * MODULES.html.sh (Internationalization functions): Add mbssep.
11633
11634 2007-02-05  Bruno Haible  <bruno@clisp.org>
11635
11636         * lib/strsep.c (strsep): Fix actions in case of no delimiters.
11637         Optimize search in case of 1 delimiter.
11638
11639 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
11640
11641         * lib/acl.h: Include sys/types.h before sys/acl.h.
11642
11643 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
11644
11645         Merge upstream fix for glibc bugzilla #3957:
11646
11647         2007-02-05  Jakub Jelinek  <jakub@redhat.com>
11648
11649         * lib/regcomp.c (parse_bracket_exp): Set '\n' bit rather than '\0'
11650         bit for RE_HAT_LISTS_NOT_NEWLINE.
11651         (build_charclass_op): Remove bogus comment.
11652
11653 2007-02-05  Simon Josefsson  <simon@josefsson.org>
11654
11655         * lib/gc.h, lib/gc-libgcrypt.c: Support SHA-256/384/512.
11656
11657 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
11658
11659         * lib/getsubopt.c [!_LIBC]: Include config.h and getsubopt.h.
11660         * lib/memmem.c [!defined _LIBC]: Include config.h.
11661
11662 2007-02-04  Bruno Haible  <bruno@clisp.org>
11663
11664         * lib/string_.h (GL_LINK_WARNING2): Put the word "warning:" into the
11665         warning message.
11666
11667 2007-02-04  Bruno Haible  <bruno@clisp.org>
11668
11669         New module mbstok_r.
11670         * modules/mbstok_r: New file.
11671         * lib/mbstok_r.c: New file.
11672         * lib/string_.h (strtok_r): Change argument names to match the
11673         comments. Add a conditional link warning.
11674         (mbstok_r): New declaration.
11675         * m4/mbstok_r.m4: New file.
11676         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
11677         GNULIB_MBSTOK_R.
11678         * modules/string (string.h): Also substitute GNULIB_MBSTOK_R.
11679         * MODULES.html.sh (Internationalization functions): Add mbstok_r.
11680
11681 2007-02-04  Bruno Haible  <bruno@clisp.org>
11682
11683         New module mbsspn.
11684         * modules/mbsspn: New file.
11685         * lib/mbsspn.c: New file.
11686         * lib/string_.h (strspn): Add a conditional link warning.
11687         (mbsspn): New declaration.
11688         * m4/mbsspn.m4: New file.
11689         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
11690         GNULIB_MBSSPN.
11691         * modules/string (string.h): Also substitute GNULIB_MBSSPN.
11692         * MODULES.html.sh (Internationalization functions): Add mbsspn.
11693
11694 2007-02-04  Bruno Haible  <bruno@clisp.org>
11695
11696         New module mbspbrk.
11697         * modules/mbspbrk: New file.
11698         * lib/mbspbrk.c: New file.
11699         * lib/string_.h (strpbrk): Add a conditional link warning.
11700         (mbspbrk): New declaration.
11701         * m4/mbspbrk.m4: New file.
11702         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
11703         GNULIB_MBSPBRK.
11704         * modules/string (string.h): Also substitute GNULIB_MBSPBRK.
11705         * MODULES.html.sh (Internationalization functions): Add mbspbrk.
11706
11707 2007-02-04  Bruno Haible  <bruno@clisp.org>
11708
11709         New module mbscspn.
11710         * modules/mbscspn: New file.
11711         * lib/mbscspn.c: New file.
11712         * lib/string_.h (strcspn): Add a conditional link warning.
11713         (mbscspn): New declaration.
11714         * m4/mbscspn.m4: New file.
11715         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
11716         GNULIB_MBSCSPN.
11717         * modules/string (string.h): Also substitute GNULIB_MBSCSPN.
11718         * MODULES.html.sh (Internationalization functions): Add mbscspn.
11719
11720 2007-02-04  Bruno Haible  <bruno@clisp.org>
11721
11722         New module mbscasestr, reduced goal of strcasestr.
11723         * modules/mbscasestr: New file.
11724         * lib/mbscasestr.c: New file, copied from lib/strcasestr.c.
11725         (mbscasestr): Renamed from strcasestr.
11726         * lib/strcasestr.c: Don't include mbuiter.h.
11727         (strcasestr): Remove support for multibyte locales.
11728         * lib/string_.h (strcasestr): Don`t rename. Declare only if missing.
11729         Change the conditional link warning.
11730         (mbscasestr): New declaration.
11731         * m4/mbscasestr.m4: New file.
11732         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Enable the replacement only if
11733         the system does not have strcasestr. Set HAVE_STRCASESTR instead of
11734         REPLACE_STRCASESTR.
11735         (gl_PREREQ_STRCASESTR): Don't require gl_FUNC_MBRTOWC.
11736         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
11737         HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
11738         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSCASESTR.
11739         * modules/string (string.h): Also substitute GNULIB_MBSCASESTR.
11740         Substitute HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
11741         * modules/strcasestr (Files): Remove m4/mbrtowc.m4.
11742         (Depends-on): Remove mbuiter.
11743         * MODULES.html.sh (Internationalization functions): Add mbscasestr.
11744
11745 2007-02-04  Bruno Haible  <bruno@clisp.org>
11746
11747         Simplify handling of strncasecmp.
11748         * lib/string_.h (strncasecmp): Remove test for GNULIB_STRCASE. Change
11749         the conditional link warning.
11750         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
11751         HAVE_STRCASECMP, not REPLACE_STRCASECMP.
11752         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Don't initialize GNULIB_STRCASE.
11753         * modules/strcase (configure.ac): Don't invoke
11754         gl_STRING_MODULE_INDICATOR.
11755         * modules/string (string.h): Don't substitute GNULIB_STRCASE.
11756
11757 2007-02-04  Bruno Haible  <bruno@clisp.org>
11758
11759         New module mbscasecmp, reduced goal of strcasecmp.
11760         * modules/mbscasecmp: New file.
11761         * lib/mbscasecmp.c: New file, copied from lib/strcasecmp.c.
11762         (mbscasecmp): Renamed from strcasecmp.
11763         * lib/strcasecmp.c: Don't include mbuiter.h.
11764         (strcasecmp): Remove support for multibyte locales.
11765         * lib/string_.h (strcasecmp): Don`t rename. Declare only if missing.
11766         Change the conditional link warning.
11767         (mbscasecmp): New declaration.
11768         * m4/mbscasecmp.m4: New file.
11769         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Enable the replacement only if
11770         the system lacks strcasecmp. Set HAVE_STRCASECMP instead of
11771         REPLACE_STRCASECMP.
11772         (gl_PREREQ_STRCASECMP): Don't require gl_FUNC_MBRTOWC.
11773         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
11774         GNULIB_MBSCASECMP.
11775         * modules/string (string.h): Also substitute GNULIB_MBSCASECMP.
11776         Substitute HAVE_STRCASECMP instead of REPLACE_STRCASECMP.
11777         * modules/strcase (Files): Remove m4/mbrtowc.m4.
11778         (Depends-on): Remove mbuiter.
11779         * MODULES.html.sh (Internationalization functions): Add mbscasecmp.
11780
11781 2007-02-04  Bruno Haible  <bruno@clisp.org>
11782
11783         New module mbsstr. Remove module strstr.
11784         * modules/mbsstr: New file.
11785         * modules/strstr: Remove file.
11786         * lib/mbsstr.c: Renamed from lib/strstr.c.
11787         (mbsstr): Renamed from strstr.
11788         * lib/string_.h (strstr): Remove declaration. Change the conditional
11789         link warning.
11790         (mbsstr): New declaration.
11791         * m4/mbsstr.m4: New file.
11792         * m4/strstr.m4: Remove file.
11793         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Don't initialize
11794         REPLACE_STRSTR.
11795         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSSTR.
11796         Don't initialize GNULIB_STRSTR.
11797         * modules/string (string.h): Also substitute GNULIB_MBSSTR. Don't
11798         substitute GNULIB_STRSTR and REPLACE_STRSTR.
11799         * MODULES.html.sh (Internationalization functions): Add mbsstr.
11800         (Support for systems lacking ANSI C 89): Remove strstr.
11801
11802 2007-02-04  Bruno Haible  <bruno@clisp.org>
11803
11804         New module mbsrchr.
11805         * modules/mbsrchr: New file.
11806         * lib/mbsrchr.c: New file.
11807         * lib/string_.h (strrchr): Add a conditional link warning.
11808         (mbsrchr): New declaration.
11809         * m4/mbsrchr.m4: New file.
11810         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
11811         GNULIB_MBSRCHR.
11812         * modules/string (string.h): Also substitute GNULIB_MBSRCHR.
11813         * MODULES.html.sh (Internationalization functions): Add mbsrchr.
11814
11815 2007-02-04  Bruno Haible  <bruno@clisp.org>
11816
11817         New module mbschr.
11818         * modules/mbschr: New file.
11819         * lib/mbschr.c: New file.
11820         * lib/string_.h (strchr): Add a conditional link warning.
11821         (mbschr): New declaration.
11822         * m4/mbschr.m4: New file.
11823         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
11824         GNULIB_MBSCHR.
11825         * modules/string (string.h): Also substitute GNULIB_MBSCHR.
11826         * MODULES.html.sh (Internationalization functions): Add mbschr.
11827
11828 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
11829
11830         * lib/stdbool_.h: Mention that bool bit-fields aren't supported.
11831
11832         * modules/stdarg (configure.ac-early): Require AC_PROG_CC_STDC.
11833
11834 2007-02-04  Bruno Haible  <bruno@clisp.org>
11835
11836         New module description section 'configure.ac-early'.
11837         * gnulib-tool (sed_extract_prog): Recognize configure.ac-early.
11838         (func_get_autoconf_early_snippet): New function.
11839         (func_import, func_create_testdir): Use it. Remove special cases for
11840         modules 'extensions' and 'lock'.
11841         * modules/extensions (configure.ac-early): Require
11842         gl_USE_SYSTEM_EXTENSIONS.
11843         * modules/lock (configure.ac-early): Require gl_LOCK_EARLY.
11844
11845 2007-02-04  Bruno Haible  <bruno@clisp.org>
11846
11847         Make use of gcj-4.3's -fsource and -ftarget option.
11848         * m4/javacomp.m4 (gt_JAVACOMP): Test whether gcj is in version >= 4.3,
11849         and if so try the options -fsource and -ftarget.
11850         * lib/javacomp.c (compile_using_gcj): Add fsource_option,
11851         source_version, ftarget_option, target_version arguments.
11852         (is_envjavac_gcj43, is_envjavac_gcj43_usable): New functions.
11853         (is_envjavac_oldgcj_14_14_usable): Renamed from
11854         is_envjavac_gcj_14_14_usable.
11855         (is_envjavac_oldgcj_14_13_usable): Renamed from
11856         is_envjavac_gcj_14_13_usable.
11857         (is_gcj_present): Update.
11858         (is_gcj_43, is_gcj43_usable): New functions.
11859         (is_oldgcj_14_14_usable): Renamed from is_gcj_14_14_usable. Update.
11860         (is_oldgcj_14_13_usable): Renamed from is_gcj_14_13_usable. Update.
11861         (compile_java_class): Test whether gcj is in version >= 4.3, and if so
11862         try the options -fsource and -ftarget.
11863
11864 2007-02-03  Paul Eggert  <eggert@cs.ucla.edu>
11865
11866         * lib/xalloc.h (x2nrealloc): Fix an unlikely bug in the overflow
11867         checking code.  Set N = ceil (1.5 * N) rather than to a slightly
11868         larger value.
11869
11870 2007-02-03  Jim Meyering  <jim@meyering.net>
11871
11872         Give tools a better chance to allocate space for very large buffers.
11873         * lib/xalloc.h (x2nrealloc): Use 3/2, not 2, as buffer size factor.
11874
11875         Make pwd and readlink work also when run with an unreadable parent dir
11876         on systems with openat support.
11877         * lib/getcwd.c (__getcwd) [HAVE_PARTLY_WORKING_GETCWD]: Use the system
11878         provided getcwd function, even when we have openat support.
11879         Reported by Dmitry V. Levin in <http://bugzilla.redhat.com/227168>.
11880
11881 2007-02-02  Bruno Haible  <bruno@clisp.org>
11882
11883         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
11884         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): Provoke a link
11885         error only if GNULIB_POSIXCHECK is defined. Needed to avoid artificial
11886         portability problems if one of these functions is only used on specific
11887         platforms.
11888         Reported by Paul Eggert.
11889
11890 2007-02-02  Paul Eggert  <eggert@cs.ucla.edu>
11891
11892         Avoid mempcpy in the regex code, as the string.h mempcpy stuff
11893         is causing more trouble than it's curing.
11894         * lib/regex_internal.h (__mempcpy): Remove.
11895         * lib/regcomp.c (regerror): Rewrite to avoid the need for mempcpy
11896         (and make the code a tad smaller to boot).
11897         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for mempcpy.
11898
11899 2007-02-02  Jim Meyering  <jim@meyering.net>
11900
11901         * modules/arpa_inet: Put AC_PROG_MKDIR_P in the configure.ac:
11902         section, not in the Makefile.am: one.
11903
11904 2007-02-02  Eric Blake  <ebb9@byu.net>
11905
11906         * lib/strchrnul.c: Always include config.h first.
11907
11908         * modules/mountlist (Depends-on): Revert 2007-01-31 change,
11909         gnulib strstr is not necessary here.
11910
11911 2007-02-02  Simon Josefsson  <simon@josefsson.org>
11912
11913         * m4/socklen.m4: Fix typo.
11914
11915 2007-02-02  Eric Blake  <ebb9@byu.net>
11916
11917         * modules/arpa_inet (Makefile.am): Use MKDIR_P to avoid races.
11918         * modules/netinet_in (Makefile.am): Likewise.
11919
11920 2007-02-01  Bruno Haible  <bruno@clisp.org>
11921
11922         * lib/string_.h (GL_LINK_WARNING): New macro.
11923         (strcasecmp, strstr, strcasestr): If provided by the system,
11924         conditionally define as a macro that leads to a warning instead of to
11925         an error.
11926         (strncasecmp): Conditionally define as a macro that leads to a warning.
11927
11928 2007-02-01  Karl Berry  <karl@gnu.org>
11929
11930         * config/srclist.txt (strtok_r.c): lose sync, no more strtok_r.h.
11931
11932 2007-02-01  Bruno Haible  <bruno@clisp.org>
11933
11934         * MODULES.html.sh (Unicode string functions): Update after 2007-01-27
11935         renamings.
11936
11937 2007-02-01  Eric Blake  <ebb9@byu.net>
11938
11939         * modules/regex (Depends-on): Revert dependence on mempcpy.
11940         * lib/regex_internal.h [! _LIBC && !__mempcpy]: Undo string
11941         module's definition of mempcpy.
11942         Reported by Paul Eggert.
11943
11944 2007-02-01  Paul Eggert  <eggert@cs.ucla.edu>
11945
11946         * lib/string_.h: If the gnulib module XYZ is not present, undefine
11947         the symbol XYZ before redefining it.  This fixes a problem with
11948         programs that don't use XYZ, when compiled on systems that define
11949         XYZ to something else.
11950
11951 2007-01-31  Paul Eggert  <eggert@cs.ucla.edu>
11952
11953         * lib/mkdir-p.c (make_dir_parents): Close a race condition that
11954         occurs when "mkdir -m foo" creates a setgid directory that is (1)
11955         writeable to group or other and (2) is intended to have a special
11956         mode bit that is set or cleared.  In such a case, the directory
11957         should be neither group- nor other-writeable until the special
11958         mode bits are right.
11959
11960 2007-01-31  Eric Blake  <ebb9@byu.net>
11961
11962         * modules/mountlist (Depends-on): Add strstr.
11963
11964         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): Correct m4 usage
11965         bug.
11966         * modules/string (Makefile.am): Remove redundant replacement.
11967         * modules/regex (Depends-on): Add mempcpy.
11968
11969 2007-01-31  Bruno Haible  <bruno@clisp.org>
11970
11971         New module description field 'Link'.
11972         * gnulib-tool (func_usage): Document --extract-link-directive.
11973         (sed_extract_prog): Recognize 'Link' directive.
11974         (func_get_link_directive): New function.
11975         (func_import): Show summary of link directives.
11976         Handle --extract-link-directive option.
11977         * modules/acl (Link): New section.
11978         * modules/clock-time (Link): New section.
11979         * modules/euidaccess (Link): New section.
11980         * modules/gettext (Link): New section.
11981         * modules/iconv (Link): New section.
11982         * modules/lock (Link): New section.
11983         * modules/nanosleep (Link): New section.
11984         * modules/readline (Link): New section.
11985
11986 2007-01-27  Bruno Haible  <bruno@clisp.org>
11987
11988         Enforce the use of gnulib modules for unportable <string.h> functions.
11989         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): New macro.
11990         (gl_STRING_MODULE_INDICATOR_DEFAULTS): New macro.
11991         (gl_HEADER_STRING_H_BODY): Require it.
11992         * lib/string_.h: If the gnulib module XYZ is not present, redefine
11993         the symbol XYZ to one that gives a link error.
11994         * modules/string (Makefile.am): Also substitute the GNULIB_* variables.
11995         * modules/memmem (configure.ac): Invoke gl_STRING_MODULE_INDICATOR.
11996         * modules/mempcpy (configure.ac): Likewise.
11997         * modules/memrchr (configure.ac): Likewise.
11998         * modules/stpcpy (configure.ac): Likewise.
11999         * modules/stpncpy (configure.ac): Likewise.
12000         * modules/strcase (configure.ac): Likewise.
12001         * modules/strcasestr (configure.ac): Likewise.
12002         * modules/strchrnul (configure.ac): Likewise.
12003         * modules/strdup (configure.ac): Likewise.
12004         * modules/strndup (configure.ac): Likewise.
12005         * modules/strnlen (configure.ac): Likewise.
12006         * modules/strpbrk (configure.ac): Likewise.
12007         * modules/strsep (configure.ac): Likewise.
12008         * modules/strstr (configure.ac): Likewise.
12009         * modules/strtok_r (configure.ac): Likewise.
12010
12011 2007-01-31  Jean-Louis Martineau  <martineau@zmanda.com>  (tiny change)
12012
12013         * lib/gai_strerror.c (values): Add EAI_OVERFLOW.
12014
12015 2007-01-30  Jim Meyering  <jim@meyering.net>
12016
12017         * lib/mpsort.c (mpsort): Remove spurious "return" in void function.
12018
12019 2007-01-29  Bruno Haible  <bruno@clisp.org>
12020
12021         * lib/allocsa.h: Use '#if HAVE_*' instead of '#ifdef HAVE_*'.
12022         * lib/execute.c: Likewise.
12023         * lib/pipe.c: Likewise.
12024         * lib/printf-args.h: Likewise.
12025         * lib/printf-args.c: Likewise.
12026         * lib/printf-parse.c: Likewise.
12027         * lib/vasnprintf.c: Likewise.
12028
12029 2007-01-29  Eric Blake  <ebb9@byu.net>
12030
12031         * lib/memrchr.c: Assume <string.h> unconditionally, to pull in
12032         declaration.
12033
12034 2007-01-29  Paul Eggert  <eggert@cs.ucla.edu>
12035
12036         * lib/strptime.h (strptime): Use 'restrict' for args where
12037         POSIX requires this.
12038         * lib/strptime.c (strptime): Likewise.
12039         Change license notice from LGPL to GPL, since gnulib-tool will
12040         change this as needed.
12041         Include <config.h> if _LIBC is not defined, not if HAVE_CONFIG_H is
12042         defined.
12043         Include "strptime.h" first, to check interface.
12044         Do not #undef _LIBC and _NL_CURRENT.
12045         Do not include <stdlib.h>; no longer needed.
12046         Include "time_r.h" and declare ptime_locale_status
12047         only if _LIBC is not defined.
12048         (__P): Remove unused macro.
12049         (match_string): Bring back glibc version, but use it only if _LIBC
12050         is defined.
12051         (__strptime_internal): Compile tm_gmtoff code if _LIBC is defined, too.
12052         Remove unnecessary assertion and abort() call.
12053         Use #ifdef _NL_CURRENT rather than #if 0, for benefit of glibc.
12054         * m4/strptime.m4: Fix serial number comment.
12055         (gl_FUNC_STRPTIME): Require AC_C_RESTRICT, gl_TM_GMTOFF.
12056         * modules/strptime (Files): Add m4/tm_gmtoff.m4.
12057         (Depends-on): Add time_r.
12058
12059 2007-01-29  Bruno Haible  <bruno@clisp.org>
12060
12061         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
12062         strptime.
12063         * modules/strptime (Depends-on): Add stdbool.
12064         * lib/strptime.h: Include <time.h> always. Add comments.
12065
12066 2007-01-29  Yoann Vandoorselaere  <yoann@prelude-ids.org>
12067
12068         * modules/strptime: New file.
12069         * lib/strptime.h: New file.
12070         * lib/strptime.c: New file.
12071         * m4/strptime.m4: New file.
12072
12073 2007-01-28  Paul Eggert  <eggert@cs.ucla.edu>
12074
12075         * MODULES.html.sh: New module mpsort.
12076         * lib/mpsort.c, lib/mpsort.h, m4/mpsort.m4, modules/mpsort: New files.
12077
12078         * lib/regex.h (_Restrict_): Renamed from __restrict, to avoid
12079         a circularity problem with HP-UX ia64 reported by Bob Proulx in
12080         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00394.html>.
12081         All uses changed.
12082         (_Restrict_arr_): Renamed from __restrict_arr, for similar reasons.
12083         All uses changed.
12084         * lib/regcomp.c, lib/regexec.c: Change all uses from __restrict
12085         to _Restrict_.
12086         * lib/regexec.c (regexec): Declare pmatch with _Restrict_arr_, so that
12087         the parameter matches the prototype.
12088
12089 2007-01-28  Jim Meyering  <jim@meyering.net>
12090
12091         * modules/sys_time (Makefile.am) [MOSTLYCLEANFILES]: Do use
12092         sys/time.h here, reverting that part of the previous patch:
12093         <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/8959>.
12094
12095 2007-01-28  Bruno Haible  <bruno@clisp.org>
12096
12097         * modules/sys_time (Makefile.am): Build sys/time.h only when it's the
12098         value of $(SYS_TIME_H).
12099         [MOSTLYCLEANFILES]: Now that sys/time.h is created only when needed,
12100         remove it conditionally, too. [added by Jim Meyering]
12101         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Set SYS_TIME_H.
12102         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
12103         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Set SYS_TIME_H when setting
12104         GETTIMEOFDAY_REPLACEMENT to 1.
12105
12106 2007-01-28  Bruno Haible  <bruno@clisp.org>
12107
12108         * m4/unistd_h.m4 (gl_HEADER_UNISTD_DEFAULTS): New macro.
12109         (gl_HEADER_UNISTD): Require it. Don't set UNISTD_H to empty here.
12110         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_HEADER_UNISTD_DEFAULTS.
12111         Set UNISTD_H instead of UNISTD_H2.
12112         * modules/fchdir (BUILT_SOURCES): Drop $(UNISTD_H2).
12113
12114 2007-01-28  Bruno Haible  <bruno@clisp.org>
12115
12116         * modules/mbchar (Makefile.am): Add mbchar.c to lib_SOURCES.
12117         * m4/mbchar.m4 (gl_MBCHAR): Remove AC_LIBOBJ invocation.
12118
12119 2007-01-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12120
12121         * gnulib-tool (func_emit_lib_Makefile_am, func_add_or_update)
12122         (func_create_testdir): Ensure C locale for `grep' and `tr'
12123         character ranges.
12124         (func_create_megatestdir): Avoid one `grep'.  Fix bug in
12125         ACLOCAL_AMFLAGS parsing state machine.
12126
12127 2007-01-27  Bruno Haible  <bruno@clisp.org>
12128
12129         * modules/unistr/base: Update.
12130
12131 2007-01-27  Bruno Haible  <bruno@clisp.org>
12132
12133         Rename u32-mbtouc -> u32-mbtouc-unsafe, u32-mbtouc-safe -> u32-mbtouc,
12134         u32_mbtouc -> u32_mbtouc_unsafe, u32_mbtouc_safe -> u32_mbtouc.
12135         * modules/unistr/u32-mbtouc-unsafe: Renamed from
12136         modules/unistr/u32-mbtouc.
12137         * lib/unistr/u32-mbtouc-unsafe.c: Renamed from lib/unistr/u32-mbtouc.c.
12138         * lib/unistr.h: Update.
12139         * lib/linebreak.c: Update.
12140         * modules/unistr/u32-mbtouc: Renamed from
12141         modules/unistr/u32-mbtouc-safe.
12142         * lib/unistr/u32-mbtouc.c: Renamed from lib/unistr/u32-mbtouc-safe.c.
12143         * lib/unistr.h: Update.
12144         * lib/unistr/u32-to-u8.c: Update.
12145         * lib/unistr/u32-to-u16.c: Update.
12146
12147 2007-01-27  Bruno Haible  <bruno@clisp.org>
12148
12149         Rename utf16-ucs4 -> utf16-ucs4-unsafe, utf16-ucs4-safe -> utf16-ucs4,
12150         u16_mbtouc -> u16_mbtouc_unsafe, u16_mbtouc_safe -> u16_mbtouc.
12151         * modules/utf16-ucs4-unsafe: Renamed from modules/utf16-ucs4.
12152         * lib/utf16-ucs4-unsafe.h: Renamed from lib/utf16-ucs4.h.
12153         * lib/unistr/utf16-ucs4-unsafe.c: Renamed from lib/unistr/utf16-ucs4.c.
12154         * modules/unistr/u16-mbtouc-unsafe: Renamed from
12155         modules/unistr/u16-mbtouc.
12156         * lib/unistr/u16-mbtouc-unsafe.c: Renamed from lib/unistr/u16-mbtouc.c.
12157         * lib/unistr.h: Update.
12158         * lib/linebreak.c: Update.
12159         * modules/linebreak: Update.
12160         * modules/utf16-ucs4: Renamed from modules/utf16-ucs4-safe.
12161         * lib/utf16-ucs4.h: Renamed from lib/utf16-ucs4-safe.h.
12162         * lib/unistr/utf16-ucs4.c: Renamed from lib/unistr/utf16-ucs4-safe.c.
12163         * modules/unistr/u16-mbtouc: Renamed from
12164         modules/unistr/u16-mbtouc-safe.
12165         * lib/unistr/u16-mbtouc.c: Renamed from lib/unistr/u16-mbtouc-safe.c.
12166         * lib/unistr.h: Update.
12167         * lib/unistr/u16-to-u8.c: Update.
12168         * modules/unistr/u16-to-u8: Update.
12169         * lib/unistr/u16-to-u32.c: Update.
12170         * modules/unistr/u16-to-u32: Update.
12171
12172 2007-01-27  Bruno Haible  <bruno@clisp.org>
12173
12174         Rename utf8-ucs4 -> utf8-ucs4-unsafe, utf8-ucs4-safe -> utf8-ucs4,
12175         u8_mbtouc -> u8_mbtouc_unsafe, u8_mbtouc_safe -> u8_mbtouc.
12176         * modules/utf8-ucs4-unsafe: Renamed from modules/utf8-ucs4.
12177         * lib/utf8-ucs4-unsafe.h: Renamed from lib/utf8-ucs4.h.
12178         * lib/unistr/utf8-ucs4-unsafe.c: Renamed from lib/unistr/utf8-ucs4.c.
12179         * modules/unistr/u8-mbtouc-unsafe: Renamed from
12180         modules/unistr/u8-mbtouc.
12181         * lib/unistr/u8-mbtouc-unsafe.c: Renamed from lib/unistr/u8-mbtouc.c.
12182         * lib/unistr.h: Update.
12183         * lib/striconveh.c: Update.
12184         * modules/striconveh: Update.
12185         * lib/linebreak.c: Update.
12186         * modules/linebreak: Update.
12187         * modules/utf8-ucs4: Renamed from modules/utf8-ucs4-safe.
12188         * lib/utf8-ucs4.h: Renamed from lib/utf8-ucs4-safe.h.
12189         * lib/unistr/utf8-ucs4.c: Renamed from lib/unistr/utf8-ucs4-safe.c.
12190         * modules/unistr/u8-mbtouc: Renamed from modules/unistr/u8-mbtouc-safe.
12191         * lib/unistr/u8-mbtouc.c: Renamed from lib/unistr/u8-mbtouc-safe.c.
12192         * lib/unistr.h: Update.
12193         * lib/striconveh.c: Update.
12194         * modules/striconveh: Update.
12195         * lib/unistr/u8-to-u16.c: Update.
12196         * modules/unistr/u8-to-u16: Update.
12197         * lib/unistr/u8-to-u32.c: Update.
12198         * modules/unistr/u8-to-u32: Update.
12199
12200 2007-01-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12201
12202         Sync from Libtool.
12203         * lib/argz.c: Do not include strings.h nor memory.h, include
12204         string.h unconditionally.  Patch by Simon Josefsson.
12205
12206 2007-01-27  Bruno Haible  <bruno@clisp.org>
12207
12208         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): New macro, extracted
12209         from gl_HEADER_STRING_H_BODY.
12210         (gl_HEADER_STRING_H_BODY): Require it.
12211         * m4/memmem.m4 (gl_FUNC_MEMMEM): Require gl_HEADER_STRING_H_DEFAULTS.
12212         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
12213         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
12214         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
12215         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
12216         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP): Likewise.
12217         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
12218         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
12219         * m4/strdup.m4 (gl_FUNC_STRDUP): Likewise.
12220         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
12221         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
12222         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Likewise.
12223         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
12224         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
12225         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
12226
12227 2007-01-27  Bruno Haible  <bruno@clisp.org>
12228
12229         * gnulib-tool (func_emit_lib_Makefile_am): If $for_test is true, turn
12230         check_PROGRAMS into noinst_PROGRAMS.
12231         (func_emit_tests_Makefile_am): Likewise. Also don't initialize
12232         check_PROGRAMS in this case.
12233         (func_import): Set for_test to false.
12234         (func_create_testdir): Set for_test to true.
12235
12236 2007-01-27  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
12237             Bruno Haible  <bruno@clisp.org>
12238
12239         * modules/strcasestr (Files): Remove lib/strcasestr.h.
12240         (Depends-on): Add string.
12241         (Includes): Use <string.h> instead of strcasestr.h.
12242         * modules/string (Makefile.am): Also substitute the value of
12243         REPLACE_STRCASESTR.
12244         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Don't define strcasestr here;
12245         assume strcasestr is declared in <string.h> not <strings.h>. Also
12246         set REPLACE_STRCASESTR.
12247         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Provide a default value for
12248         REPLACE_STRCASESTR.
12249         * lib/strcasestr.h: Remove file.
12250         * lib/strcasestr.c: Include <string.h> instead of strcasestr.h.
12251         * lib/string_.h (strcasestr): New declaration.
12252
12253 2007-01-27  Bruno Haible  <bruno@clisp.org>
12254
12255         * lib/string_.h: Use 'extern'.
12256
12257 2007-01-27  Jim Meyering  <jim@meyering.net>
12258
12259         * lib/regex_internal.c (re_string_reconstruct): Remove declaration
12260         of set-but-not-used local, "q".
12261
12262         * lib/mempcpy.c: Include <config.h> before <string.h>.
12263         This fixes a compilation error on HP-UX, due to the system's
12264         "restrict"-using mempcpy prototype.
12265
12266 2007-01-26  Bruno Haible  <bruno@clisp.org>
12267
12268         Small optimization.
12269         * lib/javacomp.c: Include c-strstr.h.
12270          (is_envjavac_gcj): Use c_strstr instead of strstr.
12271         * modules/javacomp (Depends-on): Add c-strstr, remove strstr.
12272
12273 2007-01-26  Bruno Haible  <bruno@clisp.org>
12274
12275         * MODULES.html.sh (Unicode string functions): Add the new modules.
12276
12277         * modules/uniconv/u32-strconv-to-locale: New file.
12278         * lib/uniconv/u32-strconv-to-locale.c: New file.
12279
12280         * modules/uniconv/u16-strconv-to-locale: New file.
12281         * lib/uniconv/u16-strconv-to-locale.c: New file.
12282
12283         * modules/uniconv/u8-strconv-to-locale: New file.
12284         * lib/uniconv/u8-strconv-to-locale.c: New file.
12285
12286         * modules/uniconv/u32-strconv-from-locale: New file.
12287         * lib/uniconv/u32-strconv-from-locale.c: New file.
12288
12289         * modules/uniconv/u16-strconv-from-locale: New file.
12290         * lib/uniconv/u16-strconv-from-locale.c: New file.
12291
12292         * modules/uniconv/u8-strconv-from-locale: New file.
12293         * lib/uniconv/u8-strconv-from-locale.c: New file.
12294
12295         * modules/uniconv/u32-strconv-to-enc: New file.
12296         * lib/uniconv/u32-strconv-to-enc.c: New file.
12297         * modules/uniconv/u32-strconv-to-enc-tests: New file.
12298         * tests/uniconv/test-u32-strconv-to-enc.c: New file.
12299
12300         * modules/uniconv/u16-strconv-to-enc: New file.
12301         * lib/uniconv/u16-strconv-to-enc.c: New file.
12302         * lib/uniconv/u-strconv-to-enc.h: New file.
12303         * modules/uniconv/u16-strconv-to-enc-tests: New file.
12304         * tests/uniconv/test-u16-strconv-to-enc.c: New file.
12305
12306         * modules/uniconv/u8-strconv-to-enc: New file.
12307         * lib/uniconv/u8-strconv-to-enc.c: New file.
12308         * modules/uniconv/u8-strconv-to-enc-tests: New file.
12309         * tests/uniconv/test-u8-strconv-to-enc.c: New file.
12310
12311         * modules/uniconv/u32-strconv-from-enc: New file.
12312         * lib/uniconv/u32-strconv-from-enc.c: New file.
12313         * modules/uniconv/u32-strconv-from-enc-tests: New file.
12314         * tests/uniconv/test-u32-strconv-from-enc.c: New file.
12315
12316         * modules/uniconv/u16-strconv-from-enc: New file.
12317         * lib/uniconv/u16-strconv-from-enc.c: New file.
12318         * modules/uniconv/u16-strconv-from-enc-tests: New file.
12319         * tests/uniconv/test-u16-strconv-from-enc.c: New file.
12320
12321         * modules/uniconv/u8-strconv-from-enc: New file.
12322         * lib/uniconv/u8-strconv-from-enc.c: New file.
12323         * lib/uniconv/u-strconv-from-enc.h: New file.
12324         * modules/uniconv/u8-strconv-from-enc-tests: New file.
12325         * tests/uniconv/test-u8-strconv-from-enc.c: New file.
12326
12327         * modules/uniconv/u32-conv-from-enc: New file.
12328         * lib/uniconv/u32-conv-from-enc.c: New file.
12329         * modules/uniconv/u32-conv-from-enc-tests: New file.
12330         * tests/uniconv/test-u32-conv-from-enc.c: New file.
12331
12332         * modules/uniconv/u16-conv-from-enc: New file.
12333         * lib/uniconv/u16-conv-from-enc.c: New file.
12334         * lib/uniconv/u-conv-from-enc.h: New file.
12335         * modules/uniconv/u16-conv-from-enc-tests: New file.
12336         * tests/uniconv/test-u16-conv-from-enc.c: New file.
12337
12338         * modules/uniconv/u8-conv-from-enc: New file.
12339         * lib/uniconv/u8-conv-from-enc.c: New file.
12340         * modules/uniconv/u8-conv-from-enc-tests: New file.
12341         * tests/uniconv/test-u8-conv-from-enc.c: New file.
12342
12343         * modules/uniconv/base: New file.
12344         * lib/uniconv.h: New file.
12345
12346 2007-01-26  Paul Eggert  <eggert@cs.ucla.edu>
12347
12348         * doc/gnulib-tool.texi (Initial import): Update to match current
12349         behavior with strdup module.
12350         * lib/.cppi-disable: Remove strcase.h, strdup.h, strndup.h, strnlen.h.
12351         * lib/memmem.h: Remove; all uses removed.  This is now done
12352         by <string.h>.
12353         * lib/mempcpy.h: Likewise.
12354         * lib/memrchr.h: Likewise.
12355         * lib/stpcpy.h: Likewise.
12356         * lib/stpncpy.h: Likewise.
12357         * lib/strcase.h: Likewise.
12358         * lib/strchrnul.h: Likewise.
12359         * lib/strdup.h: Likewise.
12360         * lib/strndup.h: Likewise.
12361         * lib/strnlen.h: Likewise.
12362         * lib/strpbrk.h: Likewise.
12363         * lib/strsep.h: Likewise.
12364         * lib/strstr.h: Likewise.
12365         * lib/strtok_r.h: Likewise.
12366         * lib/string_.h: New file.
12367         * lib/argp-namefrob.h: Don't include no-longer-existent include files.
12368         Rely on <string.h> instead.
12369         * lib/canon-host.c: Likewise.
12370         * lib/chdir-long.c: Likewise.
12371         * lib/concatpath.c: Likewise.
12372         * lib/exclude.c: Likewise.
12373         * lib/fchdir.c: Likewise.
12374         * lib/getaddrinfo.c: Likewise.
12375         * lib/getcwd.c: Likewise.
12376         * lib/getsubopt.c: Likewise.
12377         * lib/glob.c: Likewise.
12378         * lib/hard-locale.c: Likewise.
12379         * lib/iconvme.c: Likewise.
12380         * lib/javacomp.c: Likewise.
12381         * lib/mempcpy.c: Likewise.
12382         * lib/memrchr.c: Likewise.
12383         * lib/regex_internal.h: Likewise.
12384         * lib/stpncpy.c: Likewise.
12385         * lib/strcasecmp.c: Likewise.
12386         * lib/strchrnul.c: Likewise.
12387         * lib/strdup.c: Likewise.
12388         * lib/striconv.c: Likewise.
12389         * lib/striconveh.c: Likewise.
12390         * lib/striconveha.c: Likewise.
12391         * lib/strncasecmp.c: Likewise.
12392         * lib/strndup.c: Likewise.
12393         * lib/strnlen.c: Likewise.
12394         * lib/strsep.c: Likewise.
12395         * lib/strstr.c: Likewise.
12396         * lib/strtok_r.c: Likewise.
12397         * lib/userspec.c: Likewise.
12398         * lib/w32spawn.h: Likewise.
12399         * lib/xstrndup.c: Likewise.
12400         * lib/mountlist.c (strstr): Remove decl.
12401         * m4/string_h.m4: New file.
12402         * m4/memmem.m4 (gl_FUNC_MEMMEM): Set HAVE_DECL_MEMMEM if necessary.
12403         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Set HAVE_MEMPCPY if necessary.
12404         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Set HAVE_MEMRCHR
12405         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Set HAVE_STPCPY if necessary.
12406         * m4/stpncpy.m4 (gl_PREREQ_STPNCPY): Set HAVE_STPNCPY if necessary.
12407         * m4/strcase.m4 (gl_FUNC_STRCASECMP):
12408         Set REPLACE_STRCASECMP if necessary.
12409         (gl_FUNC_STRNCASECMP): Set HAVE_DECL_STRNCASECMP if necessary.
12410         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Set HAVE_STRCHRNUL if necessary.
12411         * m4/strdup.m4 (gl_FUNC_STRDUP): Set HAVE_DECL_STRDUP if necessary.
12412         * m4/strndup.m4 (gl_FUNC_STRNDUP): Set HAVE_DECL_STRNLEN and
12413         HAVE_DECL_STRDUP if necessary.
12414         (gl_PREREQ_STRNLEN): Don't bother to check for strnlen decl,
12415         since gl_FUNC_STRNDUP does that now.
12416         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Set HAVE_DECL_STRNLEN if necessary.
12417         Check for decl here...
12418         (gl_PREREQ_STRNLEN): ... not here.
12419         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Set HAVE_STRPBRK if necessary.
12420         * m4/strsep.m4 (gl_FUNC_STRSEP): Set HAVE_STRSEP if necessary.
12421         * m4/strstr.m4 (gl_FUNC_STRSTR): Set REPLACE_STRSTR if necessary.
12422         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Set HAVE_DECL_STRTOK_R if
12423         necessary.
12424         * modules/string: New file.
12425         * modules/memmem (Files): Remove special-purpose include file.
12426         (Depends-on): Add string.
12427         (Include): Include <string.h>, not the removed file.
12428         * modules/mempcpy: Likewise.
12429         * modules/memrchr: Likewise.
12430         * modules/stpcpy: Likewise.
12431         * modules/stpncpy: Likewise.
12432         * modules/strcase: Likewise.
12433         * modules/strchrnul: Likewise.
12434         * modules/strdup: Likewise.
12435         * modules/strndup: Likewise.
12436         * modules/strnlen: Likewise.
12437         * modules/strpbrk: Likewise.
12438         * modules/strsep: Likewise.
12439         * modules/strstr: Likewise.
12440         * modules/strtok_r: Likewise.
12441         * tests/test-dirname.c: Don't include "strdup.h", since
12442         <string.h> now suffices.
12443         * tests/test-memmem.c: Don't include "memmem.h", since
12444         <string.h> now suffices.
12445
12446 2007-01-25  Bruno Haible  <bruno@clisp.org>
12447
12448         * lib/striconveh.c (mem_cd_iconveh_internal): Ignore *lengthp if
12449         *resultp is 0.
12450
12451         * lib/unistr/u16-to-u8.c (u16_to_u8): Fix u8_uctomb invocation.
12452         * lib/unistr/u32-to-u8.c (u32_to_u8): Likewise.
12453         * lib/unistr/u8-to-u16.c (u8_to_u16): Fix u16_uctomb invocation.
12454         * lib/unistr/u32-to-u16.c (u32_to_u16): Likewise.
12455
12456         * modules/unistr/u8-to-u16 (Depends-on): Add missing modules.
12457         * modules/unistr/u8-to-u32 (Depends-on): Add missing modules.
12458         * modules/unistr/u16-to-u8 (Depends-on): Add missing modules.
12459         * modules/unistr/u16-to-u32 (Depends-on): Add missing modules.
12460         * modules/unistr/u32-to-u8 (Depends-on): Add missing modules.
12461         * modules/unistr/u32-to-u16 (Depends-on): Add missing modules.
12462
12463 2007-01-24  Bruno Haible  <bruno@clisp.org>
12464
12465         Don't AC_REQUIRE autoconf macros that invoke AC_LIBOBJ. See
12466         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00279.html>.
12467         * m4/argp.m4 (gl_ARGP): Invoke, don't require, gl_GETOPT_SUBSTITUTE.
12468         * m4/fts.m4 (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): Invoke, don't require,
12469         gl_FUNC_FTS_CORE.
12470         (gl_FUNC_FTS_CORE): Invoke, don't require, gl_FUNC_OPENAT.
12471         * m4/lstat.m4 (gl_FUNC_LSTAT): Invoke, don't require,
12472         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
12473         * m4/memcmp.m4 (gl_FUNC_MEMCMP): Invoke, don't require, AC_FUNC_MEMCMP.
12474         * m4/mktime.m4 (gl_FUNC_MKTIME): Invoke, don't require, AC_FUNC_MKTIME.
12475         * m4/openat.m4 (gl_FUNC_OPENAT): Invoke, don't require,
12476         gl_FUNC_FCHOWNAT.
12477         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Invoke, don't require,
12478         gl_FUNC_STRFTIME.
12479         * m4/strtod.m4 (gl_FUNC_STRTOD): Invoke, don't require, AC_FUNC_STRTOD.
12480         Reported by Ralf Wildenhues.
12481
12482 2007-01-24  Bruno Haible  <bruno@clisp.org>
12483
12484         Drop AC_REQUIRE calls that are redundant with the module dependencies.
12485         * m4/canon-host.m4 (gl_PREREQ_CANON_HOST): Don't require
12486         gl_GETADDRINFO.
12487         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Don't require AM_STDBOOL_H,
12488         gl_FUNC_MEMPCPY, gl_FUNC_OPENAT, gl_FUNC_MEMRCHR.
12489         * m4/openat.m4 (gl_PREREQ_OPENAT): Don't require gl_SAVE_CWD.
12490
12491 2007-01-24  Paul Eggert  <eggert@cs.ucla.edu>
12492
12493         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Add test for glibc bug 361.
12494         Don't use 'exit'; just return from 'main'.
12495         (_AC_LIBOBJ_FNMATCH): Check for headers and functions just once.
12496
12497         * lib/fnmatch_.h: Readjust white space and comments to match
12498         glibc, to avoid spurious diffs.
12499
12500 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
12501
12502         * lib/fnmatch_loop.c (internal_fnmatch) [!_LIBC]: #if-out the
12503         2004-12-01 change by Jakub Jelinek, since this code won't compile
12504         if !LIBC.  Problem reported by Bob Proulx.
12505
12506 2007-01-23  Bruno Haible  <bruno@clisp.org>
12507
12508         * lib/striconveh.c: Include c-strcaseeq.h.
12509         (mem_iconveh, str_iconveh): Use STRCASEEQ instead of c_strcasecmp.
12510         * modules/striconveh (Depends-on): Add c-strcaseeq.
12511
12512 2007-01-23  Bruno Haible  <bruno@clisp.org>
12513
12514         * MODULES.html.sh (String handling): Add streq, c-strcaseeq.
12515
12516         * modules/c-strcaseeq: New file.
12517         * lib/c-strcaseeq.h: New file.
12518
12519         * modules/streq: New file.
12520         * lib/streq.h: New file.
12521
12522 2007-01-23  Bruno Haible  <bruno@clisp.org>
12523
12524         * modules/striconveha-tests: New file.
12525         * tests/test-striconveha.c: New file.
12526
12527         * lib/striconveha.h: Include <stdbool.h>.
12528         (mem_iconveha, str_iconveha): Add 'transliterate' argument.
12529         * lib/striconveha.c: Include allocsa.h, strdup.h, c-strcase.h.
12530         (mem_iconveha_notranslit): Renamed from mem_iconveha.
12531         (mem_iconveha): New function.
12532         (str_iconveha_notranslit): Renamed from str_iconveha.
12533         (str_iconveha): New function.
12534         * modules/striconveha (Depends-on): Add stdbool, allocsa, strdup,
12535         c-strcase.
12536
12537 2007-01-23  Bruno Haible  <bruno@clisp.org>
12538
12539         * lib/striconveha.c (mem_iconveha): Fix endless recursion. Try all
12540         encodings without forgiving before trying any encoding with handler.
12541         (str_iconveha): Try all encodings without forgiving before trying any
12542         encoding with handler.
12543
12544 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
12545
12546         Import the following changes from libc.
12547
12548         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
12549
12550         * lib/fnmatch_loop.c: Adjust for changed secondary hash function.
12551
12552         2004-12-01  Jakub Jelinek  <jakub@redhat.com>
12553
12554         * lib/fnmatch_loop.c (internal_fnmatch): Clear is_seqval after
12555         normal_bracket label.
12556
12557         2004-09-01  Jakub Jelinek  <jakub@redhat.com>
12558
12559         [BZ #361]
12560         * lib/fnmatch_loop.c (FCT): For backslash between brackets, branch
12561         to normal_bracket after fetching the next character.
12562
12563 2007-01-22  Bruno Haible  <bruno@clisp.org>
12564
12565         * lib/striconveh.h (mem_cd_iconveh, mem_iconveh): Add 'offsets'
12566         argument.
12567         * lib/striconveh.c (iconv_carefully_1): New function.
12568         (mem_cd_iconveh_internal, mem_cd_iconveh, mem_iconveh): Add 'offsets'
12569         argument.
12570         (str_cd_iconveh): Update.
12571         * lib/striconveha.h (mem_iconveha): Add 'offsets' argument.
12572         * lib/striconveha.c (mem_iconveha): Add 'offsets' argument.
12573         * tests/test-striconveh.c (MAGIC): New macro.
12574         (new_offsets): New function.
12575         (main): Test call with and without offsets.
12576
12577 2007-01-22  Bruno Haible  <bruno@clisp.org>
12578
12579         * modules/sys_stat (Makefile.am): Use @MKDIR_P@ instead of $(MKDIR_P).
12580         * modules/sys_select (Makefile.am): Likewise.
12581         * modules/sys_socket (Makefile.am): Likewise.
12582         * modules/sys_time (Makefile.am): Likewise.
12583
12584 2007-01-22  Paul Eggert  <eggert@cs.ucla.edu>
12585
12586         * modules/gettimeofday (License): Change from GPL to LGPL, since
12587         gettimeofday is a library function.
12588
12589 2007-01-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
12590
12591         * lib/poll.c (rpl_poll): Don't check against FD_SETSIZE under Win32.
12592
12593 2007-01-21  Bruno Haible  <bruno@clisp.org>
12594
12595         * m4/gnulib-common.m4 (AC_PROG_MKDIR_P): New macro.
12596
12597 2007-01-21  Bruno Haible  <bruno@clisp.org>
12598
12599         * modules/striconveha: New file.
12600         * lib/striconveha.h: New file.
12601         * lib/striconveha.c: New file.
12602         * MODULES.html.sh (Internationalization functions): Add striconveha.
12603         * lib/striconv.c (str_iconv): Optimize the case of an empty input
12604         string.
12605         * lib/striconveh.c (mem_iconveh, str_iconveh): Likewise.
12606
12607 2007-01-21  Bruno Haible  <bruno@clisp.org>
12608
12609         * lib/striconv.c (str_iconv): Guarantee errno is set when strdup fails.
12610         * lib/striconveh.c (str_iconveh): Likewise.
12611
12612 2007-01-21  Bruno Haible  <bruno@clisp.org>
12613
12614         * lib/striconveh.h (mem_iconveh): New declaration.
12615         * lib/striconveh.c (mem_iconveh): New function.
12616         * tests/test-striconveh.c (main): Add tests for mem_iconveh.
12617
12618 2007-01-21  Bruno Haible  <bruno@clisp.org>
12619
12620         * lib/xstriconv.h (xmem_cd_iconv): Change specification.
12621
12622         * lib/striconveh.h (mem_cd_iconveh): Change specification.
12623         * lib/striconveh.c (mem_cd_iconveh): Don't free the user-supplied
12624         original result buffer.
12625         (str_cd_iconveh): Update.
12626         * tests/test-striconveh.c (main): Update.
12627
12628         * lib/striconv.h (mem_cd_iconv): Change specification.
12629         * lib/striconv.c (mem_cd_iconv): Don't free the user-supplied original
12630         result buffer.
12631         (str_cd_iconv): Update.
12632         * tests/test-striconv.c (main): Update.
12633
12634 2007-01-21  Bruno Haible  <bruno@clisp.org>
12635
12636         * gnulib-tool: Fix test whether sed is GNU sed supporting --posix.
12637
12638 2007-01-20  Jim Meyering  <jim@meyering.net>
12639
12640         * lib/userspec.c (parse_with_separator): If a user or group string
12641         starts with "+", skip the corresponding name-to-ID look-up, since
12642         such a look-up must fail: user and group names may not include "+".
12643
12644 2007-01-19  Paul Eggert  <eggert@cs.ucla.edu>
12645
12646         * lib/poll.c: Include sys/time.h and time.h unconditionally,
12647         since we now assume the sys_time module.
12648         * m4/poll.m4 (gl_PREREQ_POLL): Don't require AC_HEADER_TIME or
12649         check for sys/time.h; no longer needed.
12650         * modules/poll (Depends-on): Depend on sys_time.
12651
12652 2007-01-18  Bruno Haible  <bruno@clisp.org>
12653
12654         * m4/mktime.m4 (AC_FUNC_MKTIME): Remove test for <sys/time.h>.
12655         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
12656
12657         * m4/tempname.m4 (gl_PREREQ_TEMPNAME): Remove tests for sys/time.h and
12658         gettimeofday.
12659
12660         * tests/test-gettimeofday.c: Include <time.h>.
12661         (dummy): Remove variable.
12662
12663         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Renamed from
12664         gl_HEADER_SYS_TIME_H.
12665         (gl_HEADER_SYS_TIME_H): New macro.
12666
12667         * lib/sys_time_.h: Test GETTIMEOFDAY_REPLACEMENT instead of
12668         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
12669         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY,
12670         gl_FUNC_GETTIMEOFDAY_CLOBBER): Set GETTIMEOFDAY_REPLACEMENT instead of
12671         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
12672         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H): Initialize
12673         GETTIMEOFDAY_REPLACEMENT instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE
12674         and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
12675         * modules/sys_time (sys/time.h): Substitute GETTIMEOFDAY_REPLACEMENT
12676         instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and
12677         GETTIMEOFDAY_CLOBBERS_LOCALTIME.
12678
12679         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Undo the
12680         last change; it caused a compilation error when cross-compiling to
12681         Cygwin.
12682
12683 2007-01-18  Jim Meyering  <jim@meyering.net>
12684
12685         Use "$(MKDIR_P) sys", not race-prone "test -d sys || mkdir sys".
12686         * modules/sys_stat (Makefile.am): Use "$(MKDIR_P) sys", rather
12687         than the race-prone "test -d sys || mkdir sys".
12688         (configure.ac): Use AC_PROG_MKDIR_P.
12689         * modules/sys_select: Likewise.
12690         * modules/sys_socket: Likewise.
12691         * modules/sys_time: Likewise.
12692
12693 2007-01-18  Eric Blake  <ebb9@byu.net>
12694
12695         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Also
12696         replace gettimeofday.
12697         * lib/gettimeofday.c (rpl_gettimeofday): Declare with replacement
12698         name, to avoid infinite recursion.
12699
12700 2007-01-17  Paul Eggert  <eggert@cs.ucla.edu>
12701
12702         * MODULES.html.sh (Support for systems lacking POSIX:2001): New
12703         module sys_time.
12704         * lib/gethrxtime.c: Include <sys/time.h>, since we can no longer
12705         assume timespec.h defines struct timeval.
12706         * lib/settime.c: Likewise.
12707         * lib/utimens.c: Likewise.
12708         * lib/gettime.c (gettime): Remove test against HAVE_GETTIMEOFDAY,
12709         since we now assume the gettimeofday module.
12710         * lib/tempname.c (__gen_tempname): Likewise.
12711         * lib/gettimeofday.h: Remove.
12712         * lib/gettimeofday.c: Include <sys/time.h> instead of "gettimeofday.h".
12713         Don't include <sys/types.h> and <stdlib.h>; shouldn't be needed.
12714         Include <time.h>, for 'time()'.
12715         (localtime_buffer_addr): Also use this workaround if
12716         TZSET_CLOBBERS_LOCALTIME.  Set to a dummy static variable by default,
12717         to simplify the uses.  All uses changed.
12718         (localtime, gmtime, tzset, gettimeofday): Reformat slightly so
12719         that #undef is inside {}, and 'const' follows type name consistently.
12720         (tzset): Define replacement only if TZSET_CLOBBERS_LOCALTIME.
12721         (gettimeofday): Do not use the maximum possible value for
12722         tv->tv_usec, since that might break usages other than ls.c.
12723         Instead, we'll leave ls.c alone.  This undoes today's patch
12724         by Bruno.  Add a compile-time warning for 1s-clock resolution;
12725         we've never observed the problem but might as well keep the
12726         canary.
12727         * lib/nanosleep.c: Include timespec.h first, for interface check.
12728         * lib/nanosleep.c: Include <sys/time.h> unconditionally, since we
12729         now assume the sys_time module.
12730         * lib/tempname.c: Likewise.
12731         * lib/timespec.h: Likewise.
12732         * lib/nanosleep.c: Don't worry about TIME_WITH_SYS_TIME; no longer
12733         needed.
12734         * lib/strftime.c: Likewise.
12735         * lib/timespec.h: Likewise.
12736         * lib/posixtm.c: Include posixtm.h first, for interface check.
12737         Don't worry about TM_IN_SYS_TIME; that's wayyy obsolete.
12738         * lib/posixtm.h: Include stdbool.h and time.h, for proper interface.
12739         * lib/strftime.c: Don't include <sys/types.h>; shouldn't be needed.
12740         * lib/sys_time_.h: New file.
12741         * lib/timespec.h (struct timespec): Use long int, not long.
12742         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
12743         (gl_FUNC_GETTIMEOFDAY_CLOBBER, gl_PREREQ_GETTIMEOFDAY):
12744         Remove obsolescent call to AC_HEADER_TIME.
12745         * m4/mktime.m4 (AC_FUNC_MKTIME): Likewise.
12746         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
12747         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
12748         * m4/timespec.m4 (gl_TIMESPEC, gl_CHECK_TYPE_STRUCT_TIMESPEC):
12749         Likewise.
12750         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Likewise.
12751         * m4/utimbuf.m4 (gl_CHECK_TYPE_STRUCT_UTIMBUF): Likewise.
12752         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): Move sys/time.h tests
12753         into the sys_time module.  Check for gettimeofday just once.
12754         Prefix our variables with gl_, not with ac_ or jm_.  Tighten test
12755         for gettimeofday signature to just check the signature.  Merely
12756         compile it, since linking doesn't test signature.  Improve test for
12757         whether gettimeofday.o is actually needed.
12758         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Renamed from
12759         AC_FUNC_GETTIMEOFDAY_CLOBBER.  All uses changed.  Use
12760         AC_RUN_IFELSE rather than AC_TRY_RUN.  If clobbering, set
12761         and define GETTIMEOFDAY_CLOBBERS_LOCALTIME.
12762         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Don't define
12763         GETTIMEOFDAY_CLOBBERS_LOCALTIME; that's gl_FUNC_GETTIMEOFDAY_CLOBBER's
12764         job.  Don't define tzset; that's gl_FUNC_TZSET_CLOBBER's job.
12765         * m4/mktime.m4 (AC_FUNC_MKTIME): Just include <time.h> rather
12766         than worrying about sys/time.h.
12767         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
12768         Don't bother worrying about TIME_WITH_SYS_TIME.
12769         * m4/stat-time.m4 (gl_STAT_TIME): Likewise.
12770         * m4/posixtm.m4 (gl_POSIXTM): Remove obsolescent call to AC_STRUCT_TM.
12771         * m4/sys_time_h.m4: New file.
12772         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Require gl_HEADER_SYS_TIME_H.
12773         Don't include sys/time.h.  Return from main rather than exiting.
12774         Define TZSET_CLOBBERS_LOCALTIME, for consistency with other names;
12775         all uses changed.
12776         * modules/gethrxtime (Depends-on): Add sys_time.
12777         * modules/gettime (Depends-on): Likewise.
12778         * modules/gettimeofday (Depends-on): Likewise.
12779         * modules/nanosleep (Depends-on): Likewise.
12780         * modules/settime (Depends-on): Likewise.
12781         * modules/tempname (Depends-on): Likewise.
12782         * modules/utimens (Depends-on): Likewise.
12783         * modules/gettimeofday (Files): Remove lib/gettimeofday.h.
12784         (Include:) Change back to <sys/time.h>.
12785         (Maintainer:) Add self.
12786         * modules/sys_time: New file.
12787         * modules/tempname (Depends-on): Add gettimeofday.
12788         * tests/test-gettimeofday.c: Include <sys/time.h>
12789         rather than gettimeofday.h.
12790
12791 2007-01-17  Bruno Haible  <bruno@clisp.org>
12792
12793         * gnulib-tool (func_get_license): Revert last patch. Instead, let
12794         the license default to GPL.
12795         (func_create_testdir): Don't complain if a module is LGPL and its
12796         tests module depends on GPLed modules.
12797
12798 2007-01-17  Bruno Haible  <bruno@clisp.org>
12799
12800         * lib/gettimeofday.c (gettimeofday): Add code for the case
12801         HAVE_GETTIMEOFDAY && !GETTIMEOFDAY_CLOBBERS_LOCALTIME. Use the
12802         maximum possible value for tv->tv_usec, rather than the minimum one.
12803
12804 2005-10-08  Martin Lambers  <marlam@marlam.de>
12805 2005-10-08  Paul Eggert  <eggert@cs.ucla.edu>
12806 2007-01-16  Bruno Haible  <bruno@clisp.org>
12807
12808         * modules/gettimeofday (Files): Add lib/gettimeofday.h.
12809         (configure.ac): Remove AC_FUNC_GETTIMEOFDAY_CLOBBER. Add
12810         gl_FUNC_GETTIMEOFDAY.
12811         (Include): Add gettimeofday.h.
12812         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): New macro.
12813         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't invoke gl_PREREQ_GETTIMEOFDAY.
12814         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Define
12815         GETTIMEOFDAY_CLOBBERS_LOCALTIME. Invoke gl_PREREQ_GETTIMEOFDAY here.
12816         (gl_PREREQ_GETTIMEOFDAY): Check for <sys/timeb.h> and _ftime.
12817         * lib/gettimeofday.h: New file.
12818         * lib/gettimeofday.c: Include <sys/timeb.h>.
12819         (localtime_buffer_addr, rpl_localtime, rpl_gmtime, rpl_tzset): Define
12820         only if GETTIMEOFDAY_CLOBBERS_LOCALTIME.
12821         (rpl_gettimeofday) [!HAVE_GETTIMEOFDAY]: Use _ftime() when available;
12822         fall back on time().
12823
12824         * tests/test-gettimeofday.c: New file.
12825         * modules/gettimeofday-tests: New file.
12826
12827 2007-01-16  Eric Blake  <ebb9@byu.net>
12828
12829         * modules/fnmatch (Depends-on): Depend on wchar.
12830         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Assume <wchar.h>.
12831         * m4/fnmatch.m4: Likewise.
12832         * modules/mbchar (Makefile.am): Assume <wchar.h>.
12833         * m4/mbchar.m4: Likewise.
12834         * modules/mbswidth (Depends-on): Depend on wchar.
12835         * lib/mbswidth.c: Assume <wchar.h>.
12836         * m4/mbswidth.m4: Likewise.
12837         * modules/quotearg (Depends-on): Depend on wchar.
12838         * lib/quotearg.c: Assume <wchar.h>.
12839         * m4/quotearg.m4: Likewise.
12840         * modules/regex (Depends-on): Depend on wchar.
12841         * lib/regex_internal.h: Assume <wchar.h>.
12842         * m4/regex.m4: Likewise.
12843         * modules/stdint (Depends-on): Depend on wchar.
12844         * lib/stdint_.h [!defined WCHAR_MIN]: Assume <wchar.h>.
12845         * m4/stdint.m4: Likewise.
12846         * tests/test-stdint.c [HAVE_WINT_T]: Likewise.
12847         * modules/strftime (Depends-on): Depend on wchar.
12848         * lib/strftime.c (DO_MULTIBYTE): Assume <wchar.h>.
12849         * modules/strtol (Depends-on): Depend on wchar.
12850         * lib/strtol.c: Assume <wchar.h>.
12851         * modules/wcwidth (Depends-on): Depend on wchar.
12852         * lib/wcwidth.h: Assume <wchar.h>.
12853         * m4/wcwidth.m4: Likewise.
12854
12855 2007-01-16  Bruno Haible  <bruno@clisp.org>
12856
12857         * modules/csharpexec-script: New, created from...
12858         * modules/csharpexec: ... this.
12859
12860 2007-01-16  Paolo Bonzini  <bonzini@gnu.org>
12861
12862         * modules/javaexec-script: New, created from...
12863         * modules/javaexec: ... this.
12864
12865 2007-01-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
12866
12867         * modules/poll (Dependencies): Add sys_select.
12868
12869 2007-01-15  Jim Meyering  <jim@meyering.net>
12870
12871         * m4/readutmp.m4 (gl_READUTMP): Work around AIX 4.3 struct-
12872         redefinition bug when using both <utmp.h> and <utmpx.h> headers.
12873         * lib/readutmp.h: Likewise.  Reported by Daniel Richard G. in
12874         <http://article.gmane.org/gmane.comp.gnu.core-utils.bugs/9415>.
12875
12876 2007-01-15  Bruno Haible  <bruno@clisp.org>
12877
12878         * modules/striconveh: New file.
12879         * lib/striconveh.h: New file.
12880         * lib/striconveh.c: New file.
12881         * MODULES.html.sh (Internationalization functions): Add striconveh.
12882
12883         * modules/striconveh-tests: New file.
12884         * tests/test-striconveh.c: New file.
12885
12886 2007-01-15  Bruno Haible  <bruno@clisp.org>
12887
12888         * lib/striconv.c (str_cd_iconv): Use the first algorithm if iconv is
12889         not from GNU libiconv or GNU libc.
12890
12891 2007-01-15  Bruno Haible  <bruno@clisp.org>
12892
12893         * doc/gnulib-intro.texi (Copyright): Explain the different license
12894         terms for module descriptions, autoconf macros, tests, documentation.
12895
12896 2007-01-14  Bruno Haible  <bruno@clisp.org>
12897
12898         * modules/striconv-tests: New file.
12899         * tests/test-striconv.c: New file.
12900
12901 2007-01-14  Bruno Haible  <bruno@clisp.org>
12902
12903         * modules/iconv-tests: New file.
12904         * tests/test-iconv.c: New file.
12905
12906 2007-01-14  Bruno Haible  <bruno@clisp.org>
12907
12908         * gnulib-tool (func_get_license): For test modules, use the license of
12909         the main module.
12910
12911 2007-01-14  Bruno Haible  <bruno@clisp.org>
12912
12913         * modules/iconv (Include): Clarify that <iconv.h> can only be included
12914         if iconv is found to exist.
12915
12916 2007-01-14  Bruno Haible  <bruno@clisp.org>
12917
12918         * modules/c-ctype-tests: New file.
12919         * tests/test-c-ctype.c: New file.
12920
12921 2007-01-14  Bruno Haible  <bruno@clisp.org>
12922
12923         * modules/binary-io-tests: New file.
12924         * tests/test-binary-io.sh: New file.
12925         * tests/test-binary-io.c: New file.
12926
12927 2007-01-14  Bruno Haible  <bruno@clisp.org>
12928
12929         * modules/array-oset-tests: New file.
12930         * tests/test-array_oset.c: New file.
12931
12932 2007-01-14  Bruno Haible  <bruno@clisp.org>
12933
12934         * modules/array-list-tests: New file.
12935         * tests/test-array_list.c: New file.
12936
12937 2007-01-14  Bruno Haible  <bruno@clisp.org>
12938
12939         * gnulib-tool (func_create_testdir): Don't unnecessarily run configure
12940         and make.
12941         Reported by Simon Josefsson in
12942         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00139.html>
12943
12944 2007-01-14  Bruno Haible  <bruno@clisp.org>
12945
12946         * modules/allocsa-tests: New file.
12947         * tests/test-allocsa.c: New file.
12948
12949 2007-01-14  Bruno Haible  <bruno@clisp.org>
12950
12951         * modules/fchdir (Depends-on): Add absolute-header.
12952         * modules/unistd (Depends-on): Likewise.
12953
12954 2006-12-30  Bruno Haible  <bruno@clisp.org>
12955
12956         * modules/fchdir: New file.
12957         * modules/unistd (Files): Add lib/unistd_.h.
12958         (Makefile.am): Generate unistd.h from unistd_.h.
12959         * lib/fchdir.c: New file.
12960         * lib/dirent_.h: New file.
12961         * lib/unistd_.h: New file.
12962         * lib/fcntl_.h (open) [FCHDIR_REPLACEMENT]: New replacement.
12963         * m4/fchdir.m4: New file.
12964         * m4/unistd_h.m4 (gl_PREREQ_UNISTD): New macro.
12965         (gl_HEADER_UNISTD): Invoke it.
12966         * lib/dup-safer.c (dup_safer) [FCHDIR_REPLACEMENT]: Use the dup
12967         function.
12968         * lib/backupfile.c (opendir, closedir): Undefine.
12969         * lib/chown.c (open, close): Undefine.
12970         * lib/clean-temp.c (open, close): Undefine.
12971         * lib/copy-file.c (open, close): Undefine.
12972         * lib/execute.c (open, close): Undefine.
12973         * lib/fsusage.c (open, close): Undefine.
12974         * lib/gc-gnulib.c (open, close): Undefine.
12975         * lib/getcwd.c (opendir, closedir): Undefine.
12976         * lib/glob.c (opendir, closedir): Undefine.
12977         * lib/javacomp.c (open, close): Undefine.
12978         * lib/mountlist.c (open, close, opendir, closedir): Undefine.
12979         * lib/openat-proc.c (open, close): Undefine.
12980         * lib/pagealign_alloc.c (open, close): Undefine.
12981         * lib/pipe.c (open, close): Undefine.
12982         * lib/progreloc.c (open, close): Undefine.
12983         * lib/savedir.c (opendir, closedir): Undefine.
12984         * lib/utime.c (open, close): Undefine.
12985         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add fchdir.
12986
12987 2007-01-10  Bruno Haible  <bruno@clisp.org>
12988
12989         * lib/striconv.c (mem_cd_iconv): Align the temporary buffer.
12990
12991 2007-01-12  Eric Blake  <ebb9@byu.net>
12992
12993         Provide a robust <wchar.h>.  Further simplifications are now
12994         possible in other modules, but not included here.
12995         * modules/wchar: New module.
12996         * m4/wchar.m4: New file.
12997         * lib/wchar_.h: Likewise.
12998         * modules/mbchar (Depends-on): Depend on wchar, as the first use
12999         of the new module.
13000         * MODULES.html.sh (Extended multibyte and wide character utilities):
13001         New section.
13002
13003 2007-01-12  Paul Eggert  <eggert@cs.ucla.edu>
13004
13005         * lib/xreadlink.c (SYMLINK_MAX) [!defined SYMLINK_MAX]: Define
13006         to a reasonable default for memory allocation.
13007         (xreadlink): Don't allocate a huge buffer, to work around a buggy
13008         file system that reports garbage st_size values for symlinks.
13009         Problem reported by Liyang Hu.
13010
13011 2007-01-11  Simon Josefsson  <simon@josefsson.org>
13012
13013         * gnulib-tool (func_all_modules): Exclude all .* files (e.g.,
13014         Emacs .#* auto-save files).
13015
13016 2007-01-11  Bruno Haible  <bruno@clisp.org>
13017
13018         * gnulib-tool (func_all_modules): Exclude all files inside the CVS
13019         directory.
13020
13021 2007-01-10  Paul Eggert  <eggert@cs.ucla.edu>
13022
13023         Use @...@ consistently in lib/wctype_.h.
13024         * lib/wctype_.h [HAVE_WINT_T]: Go back to using @...@, but rely
13025         on it being set to 1 or 0.
13026         * m4/wctype.m4 (gl_WCTYPE_H): Set HAVE_WINT_T to 1 or 0, and
13027         go back to AC_SUBSTing it.
13028         * modules/wctype (Makefile.am): Undo previous change.
13029
13030 2007-01-10  Eric Blake  <ebb9@byu.net>
13031
13032         * lib/wctype_.h [HAVE_WINT_T]: Rely on AC_DEFINE.
13033         * m4/wctype.m4 (gl_WCTYPE_H): No need to AC_SUBST(HAVE_WINT_T).
13034         * modules/wctype (Makefile.am): Likewise.
13035         Reported by Chris McGuire.
13036
13037 2007-01-10  Jim Meyering  <jim@meyering.net>
13038
13039         fts.c: a small readability/maintainability improvement
13040         * lib/fts.c (fts_read): Make this code slightly more readable and
13041         maintainable by hoisting the "sp->fts_cur = p" assignments to
13042         immediately follow the statements that set P.  Derived from
13043         the patch by Miloslav Trmac in http://bugzilla.redhat.com/222089.
13044
13045 2007-01-10  Eric Blake  <ebb9@byu.net>
13046
13047         * lib/wctype_.h [HAVE_WINT_T]: Include <stddef.h> before
13048         <wchar.h>, to work around BSDI bug in BSD/OS 4.0.1.
13049         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
13050         * m4/wint_t.m4 (gt_TYPE_WINT_T): Likewise.
13051         Reported by Chris McGuire.
13052
13053 2007-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13054
13055         * gnulib-tool (func_all_modules): Use POSIX conforming escaping
13056         in sed script.
13057
13058 2007-01-09  Bruno Haible  <bruno@clisp.org>
13059
13060         * MODULES.html.sh: Accept options --cvs-urls, --git-urls.
13061         (repo_url_prefix, repo_url_suffix, repo_url_suffix_repl): New
13062         variables.
13063         (func_module): Use them.
13064
13065 2007-01-09  Bruno Haible  <bruno@clisp.org>
13066
13067         * modules/unistr/base: New file.
13068         * lib/unistr.h: New file.
13069
13070         * modules/unistr/u8-to-u16: New file.
13071         * lib/unistr/u8-to-u16.c: New file.
13072
13073         * modules/unistr/u8-to-u32: New file.
13074         * lib/unistr/u8-to-u32.c: New file.
13075
13076         * modules/unistr/u16-to-u8: New file.
13077         * lib/unistr/u16-to-u8.c: New file.
13078
13079         * modules/unistr/u16-to-u32: New file.
13080         * lib/unistr/u16-to-u32.c: New file.
13081
13082         * modules/unistr/u32-to-u8: New file.
13083         * lib/unistr/u32-to-u8.c: New file.
13084
13085         * modules/unistr/u32-to-u16: New file.
13086         * lib/unistr/u32-to-u16.c: New file.
13087
13088         * modules/unistr/u8-check: New file.
13089         * modules/unistr/u16-check: New file.
13090         * modules/unistr/u32-check: New file.
13091         * lib/unistr/u8-check.c: New file.
13092         * lib/unistr/u16-check.c: New file.
13093         * lib/unistr/u32-check.c: New file.
13094
13095         * modules/unistr/u8-chr: New file.
13096         * modules/unistr/u16-chr: New file.
13097         * modules/unistr/u32-chr: New file.
13098         * lib/unistr/u8-chr.c: New file.
13099         * lib/unistr/u16-chr.c: New file.
13100         * lib/unistr/u32-chr.c: New file.
13101
13102         * modules/unistr/u8-cmp: New file.
13103         * modules/unistr/u16-cmp: New file.
13104         * modules/unistr/u32-cmp: New file.
13105         * lib/unistr/u8-cmp.c: New file.
13106         * lib/unistr/u16-cmp.c: New file.
13107         * lib/unistr/u32-cmp.c: New file.
13108
13109         * modules/unistr/u8-cpy: New file.
13110         * modules/unistr/u16-cpy: New file.
13111         * modules/unistr/u32-cpy: New file.
13112         * lib/unistr/u8-cpy.c: New file.
13113         * lib/unistr/u16-cpy.c: New file.
13114         * lib/unistr/u32-cpy.c: New file.
13115         * lib/unistr/u-cpy.h: New file.
13116
13117         * modules/unistr/u8-cpy-alloc: New file.
13118         * modules/unistr/u16-cpy-alloc: New file.
13119         * modules/unistr/u32-cpy-alloc: New file.
13120         * lib/unistr/u8-cpy-alloc.c: New file.
13121         * lib/unistr/u16-cpy-alloc.c: New file.
13122         * lib/unistr/u32-cpy-alloc.c: New file.
13123         * lib/unistr/u-cpy-alloc.h: New file.
13124
13125         * modules/unistr/u8-endswith: New file.
13126         * modules/unistr/u16-endswith: New file.
13127         * modules/unistr/u32-endswith: New file.
13128         * lib/unistr/u8-endswith.c: New file.
13129         * lib/unistr/u16-endswith.c: New file.
13130         * lib/unistr/u32-endswith.c: New file.
13131         * lib/unistr/u-endswith.h: New file.
13132
13133         * modules/unistr/u8-mblen: New file.
13134         * modules/unistr/u16-mblen: New file.
13135         * modules/unistr/u32-mblen: New file.
13136         * lib/unistr/u8-mblen.c: New file.
13137         * lib/unistr/u16-mblen.c: New file.
13138         * lib/unistr/u32-mblen.c: New file.
13139
13140         * modules/unistr/u8-mbtouc: New file.
13141         * modules/unistr/u16-mbtouc: New file.
13142         * modules/unistr/u32-mbtouc: New file.
13143         * lib/unistr/u8-mbtouc.c: New file.
13144         * lib/unistr/u16-mbtouc.c: New file.
13145         * lib/unistr/u32-mbtouc.c: New file.
13146
13147         * modules/unistr/u8-mbtouc-safe: New file.
13148         * modules/unistr/u16-mbtouc-safe: New file.
13149         * modules/unistr/u32-mbtouc-safe: New file.
13150         * lib/unistr/u8-mbtouc-safe.c: New file.
13151         * lib/unistr/u16-mbtouc-safe.c: New file.
13152         * lib/unistr/u32-mbtouc-safe.c: New file.
13153
13154         * modules/unistr/u8-move: New file.
13155         * modules/unistr/u16-move: New file.
13156         * modules/unistr/u32-move: New file.
13157         * lib/unistr/u8-move.c: New file.
13158         * lib/unistr/u16-move.c: New file.
13159         * lib/unistr/u32-move.c: New file.
13160         * lib/unistr/u-move.h: New file.
13161
13162         * modules/unistr/u8-next: New file.
13163         * modules/unistr/u16-next: New file.
13164         * modules/unistr/u32-next: New file.
13165         * lib/unistr/u8-next.c: New file.
13166         * lib/unistr/u16-next.c: New file.
13167         * lib/unistr/u32-next.c: New file.
13168
13169         * modules/unistr/u8-prev: New file.
13170         * modules/unistr/u16-prev: New file.
13171         * modules/unistr/u32-prev: New file.
13172         * lib/unistr/u8-prev.c: New file.
13173         * lib/unistr/u16-prev.c: New file.
13174         * lib/unistr/u32-prev.c: New file.
13175
13176         * modules/unistr/u8-set: New file.
13177         * modules/unistr/u16-set: New file.
13178         * modules/unistr/u32-set: New file.
13179         * lib/unistr/u8-set.c: New file.
13180         * lib/unistr/u16-set.c: New file.
13181         * lib/unistr/u32-set.c: New file.
13182         * lib/unistr/u-set.h: New file.
13183
13184         * modules/unistr/u8-startswith: New file.
13185         * modules/unistr/u16-startswith: New file.
13186         * modules/unistr/u32-startswith: New file.
13187         * lib/unistr/u8-startswith.c: New file.
13188         * lib/unistr/u16-startswith.c: New file.
13189         * lib/unistr/u32-startswith.c: New file.
13190         * lib/unistr/u-startswith.h: New file.
13191
13192         * modules/unistr/u8-stpcpy: New file.
13193         * modules/unistr/u16-stpcpy: New file.
13194         * modules/unistr/u32-stpcpy: New file.
13195         * lib/unistr/u8-stpcpy.c: New file.
13196         * lib/unistr/u16-stpcpy.c: New file.
13197         * lib/unistr/u32-stpcpy.c: New file.
13198         * lib/unistr/u-stpcpy.h: New file.
13199
13200         * modules/unistr/u8-stpncpy: New file.
13201         * modules/unistr/u16-stpncpy: New file.
13202         * modules/unistr/u32-stpncpy: New file.
13203         * lib/unistr/u8-stpncpy.c: New file.
13204         * lib/unistr/u16-stpncpy.c: New file.
13205         * lib/unistr/u32-stpncpy.c: New file.
13206         * lib/unistr/u-stpncpy.h: New file.
13207
13208         * modules/unistr/u8-strcat: New file.
13209         * modules/unistr/u16-strcat: New file.
13210         * modules/unistr/u32-strcat: New file.
13211         * lib/unistr/u8-strcat.c: New file.
13212         * lib/unistr/u16-strcat.c: New file.
13213         * lib/unistr/u32-strcat.c: New file.
13214         * lib/unistr/u-strcat.h: New file.
13215
13216         * modules/unistr/u8-strchr: New file.
13217         * modules/unistr/u16-strchr: New file.
13218         * modules/unistr/u32-strchr: New file.
13219         * lib/unistr/u8-strchr.c: New file.
13220         * lib/unistr/u16-strchr.c: New file.
13221         * lib/unistr/u32-strchr.c: New file.
13222
13223         * modules/unistr/u8-strcmp: New file.
13224         * modules/unistr/u16-strcmp: New file.
13225         * modules/unistr/u32-strcmp: New file.
13226         * lib/unistr/u8-strcmp.c: New file.
13227         * lib/unistr/u16-strcmp.c: New file.
13228         * lib/unistr/u32-strcmp.c: New file.
13229
13230         * modules/unistr/u8-strcpy: New file.
13231         * modules/unistr/u16-strcpy: New file.
13232         * modules/unistr/u32-strcpy: New file.
13233         * lib/unistr/u8-strcpy.c: New file.
13234         * lib/unistr/u16-strcpy.c: New file.
13235         * lib/unistr/u32-strcpy.c: New file.
13236         * lib/unistr/u-strcpy.h: New file.
13237
13238         * modules/unistr/u8-strcspn: New file.
13239         * modules/unistr/u16-strcspn: New file.
13240         * modules/unistr/u32-strcspn: New file.
13241         * lib/unistr/u8-strcspn.c: New file.
13242         * lib/unistr/u16-strcspn.c: New file.
13243         * lib/unistr/u32-strcspn.c: New file.
13244         * lib/unistr/u-strcspn.h: New file.
13245
13246         * modules/unistr/u8-strdup: New file.
13247         * modules/unistr/u16-strdup: New file.
13248         * modules/unistr/u32-strdup: New file.
13249         * lib/unistr/u8-strdup.c: New file.
13250         * lib/unistr/u16-strdup.c: New file.
13251         * lib/unistr/u32-strdup.c: New file.
13252         * lib/unistr/u-strdup.h: New file.
13253
13254         * modules/unistr/u8-strlen: New file.
13255         * modules/unistr/u16-strlen: New file.
13256         * modules/unistr/u32-strlen: New file.
13257         * lib/unistr/u8-strlen.c: New file.
13258         * lib/unistr/u16-strlen.c: New file.
13259         * lib/unistr/u32-strlen.c: New file.
13260         * lib/unistr/u-strlen.h: New file.
13261
13262         * modules/unistr/u8-strmblen: New file.
13263         * modules/unistr/u16-strmblen: New file.
13264         * modules/unistr/u32-strmblen: New file.
13265         * lib/unistr/u8-strmblen.c: New file.
13266         * lib/unistr/u16-strmblen.c: New file.
13267         * lib/unistr/u32-strmblen.c: New file.
13268
13269         * modules/unistr/u8-strmbtouc: New file.
13270         * modules/unistr/u16-strmbtouc: New file.
13271         * modules/unistr/u32-strmbtouc: New file.
13272         * lib/unistr/u8-strmbtouc.c: New file.
13273         * lib/unistr/u16-strmbtouc.c: New file.
13274         * lib/unistr/u32-strmbtouc.c: New file.
13275
13276         * modules/unistr/u8-strncat: New file.
13277         * modules/unistr/u16-strncat: New file.
13278         * modules/unistr/u32-strncat: New file.
13279         * lib/unistr/u8-strncat.c: New file.
13280         * lib/unistr/u16-strncat.c: New file.
13281         * lib/unistr/u32-strncat.c: New file.
13282         * lib/unistr/u-strncat.h: New file.
13283
13284         * modules/unistr/u8-strncmp: New file.
13285         * modules/unistr/u16-strncmp: New file.
13286         * modules/unistr/u32-strncmp: New file.
13287         * lib/unistr/u8-strncmp.c: New file.
13288         * lib/unistr/u16-strncmp.c: New file.
13289         * lib/unistr/u32-strncmp.c: New file.
13290
13291         * modules/unistr/u8-strncpy: New file.
13292         * modules/unistr/u16-strncpy: New file.
13293         * modules/unistr/u32-strncpy: New file.
13294         * lib/unistr/u8-strncpy.c: New file.
13295         * lib/unistr/u16-strncpy.c: New file.
13296         * lib/unistr/u32-strncpy.c: New file.
13297         * lib/unistr/u-strncpy.h: New file.
13298
13299         * modules/unistr/u8-strnlen: New file.
13300         * modules/unistr/u16-strnlen: New file.
13301         * modules/unistr/u32-strnlen: New file.
13302         * lib/unistr/u8-strnlen.c: New file.
13303         * lib/unistr/u16-strnlen.c: New file.
13304         * lib/unistr/u32-strnlen.c: New file.
13305         * lib/unistr/u-strnlen.h: New file.
13306
13307         * modules/unistr/u8-strpbrk: New file.
13308         * modules/unistr/u16-strpbrk: New file.
13309         * modules/unistr/u32-strpbrk: New file.
13310         * lib/unistr/u8-strpbrk.c: New file.
13311         * lib/unistr/u16-strpbrk.c: New file.
13312         * lib/unistr/u32-strpbrk.c: New file.
13313         * lib/unistr/u-strpbrk.h: New file.
13314
13315         * modules/unistr/u8-strrchr: New file.
13316         * modules/unistr/u16-strrchr: New file.
13317         * modules/unistr/u32-strrchr: New file.
13318         * lib/unistr/u8-strrchr.c: New file.
13319         * lib/unistr/u16-strrchr.c: New file.
13320         * lib/unistr/u32-strrchr.c: New file.
13321
13322         * modules/unistr/u8-strspn: New file.
13323         * modules/unistr/u16-strspn: New file.
13324         * modules/unistr/u32-strspn: New file.
13325         * lib/unistr/u8-strspn.c: New file.
13326         * lib/unistr/u16-strspn.c: New file.
13327         * lib/unistr/u32-strspn.c: New file.
13328         * lib/unistr/u-strspn.h: New file.
13329
13330         * modules/unistr/u8-strstr: New file.
13331         * modules/unistr/u16-strstr: New file.
13332         * modules/unistr/u32-strstr: New file.
13333         * lib/unistr/u8-strstr.c: New file.
13334         * lib/unistr/u16-strstr.c: New file.
13335         * lib/unistr/u32-strstr.c: New file.
13336         * lib/unistr/u-strstr.h: New file.
13337
13338         * modules/unistr/u8-strtok: New file.
13339         * modules/unistr/u16-strtok: New file.
13340         * modules/unistr/u32-strtok: New file.
13341         * lib/unistr/u8-strtok.c: New file.
13342         * lib/unistr/u16-strtok.c: New file.
13343         * lib/unistr/u32-strtok.c: New file.
13344         * lib/unistr/u-strtok.h: New file.
13345
13346         * modules/unistr/u8-uctomb: New file.
13347         * modules/unistr/u16-uctomb: New file.
13348         * modules/unistr/u32-uctomb: New file.
13349         * lib/unistr/u8-uctomb.c: New file.
13350         * lib/unistr/u16-uctomb.c: New file.
13351         * lib/unistr/u32-uctomb.c: New file.
13352
13353         * MODULES.html.sh (Unicode string functions): Add the new modules.
13354
13355 2007-01-08  Bruno Haible  <bruno@clisp.org>
13356
13357         * gnulib-tool (func_all_modules): Use find, not ls, to traverse the
13358         modules directory. Filter out CVS, ChangeLog, COPYING, README also from
13359         subdirectories.
13360
13361 2007-01-08  Karl Berry  <karl@gnu.org>
13362
13363         * doc/error.texi: mention that main() fns must set program_name
13364         when progname is used.
13365
13366 2007-01-08  Paul Eggert  <eggert@cs.ucla.edu>
13367
13368         * m4/wctype.m4 (gl_WCTYPE_H): Compute ABSOLUTE_WCTYPE_H even if
13369         WCTYPE_H is empty, for the benefit of builds from non-distclean
13370         directories.  Problem reported by Eric Blake in
13371         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00157.html>.
13372
13373 2007-01-08  Bruno Haible  <bruno@clisp.org>
13374
13375         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Remove
13376         PROVIDE_CANONICALIZE_FILENAME_MODE macro definition.
13377         * lib/canonicalize.h: Test GNULIB_CANONICALIZE instead of
13378         PROVIDE_CANONICALIZE_FILENAME_MODE.
13379         * modules/canonicalize (configure.ac): Use gl_MODULE_INDICATOR.
13380
13381 2007-01-08  Bruno Haible  <bruno@clisp.org>
13382
13383         * m4/fts.m4 (gl_FUNC_FTS_LGPL): Remove _LGPL_PACKAGE macro definition.
13384         * lib/fts_.h (_LGPL_PACKAGE): Remove macro.
13385         Use !GNULIB_FTS instead of _LGPL_PACKAGE.
13386         * lib/fts.c: Likewise.
13387         * modules/fts (configure.ac): Use gl_MODULE_INDICATOR.
13388
13389 2006-12-25  Bruno Haible  <bruno@clisp.org>
13390
13391         * modules/utf8-ucs4-safe: New file.
13392         * lib/utf8-ucs4-safe.h: New file.
13393         * lib/unistr/utf8-ucs4-safe.c: New file.
13394
13395         * modules/utf16-ucs4-safe: New file.
13396         * lib/utf16-ucs4-safe.h: New file.
13397         * lib/unistr/utf16-ucs4-safe.c: New file.
13398
13399         * MODULES.html.sh (Unicode string functions): Add the new modules.
13400
13401 2007-01-08  Bruno Haible  <bruno@clisp.org>
13402
13403         * modules/utf8-ucs4 (Files, lib_SOURCES): Add unistr/utf8-ucs4.c.
13404         (Depends-on): Add unitypes.
13405         * lib/utf8-ucs4.h: Add double-inclusion guard. Include unitypes.h.
13406         (u8_mbtouc_aux): Move out to separate file.
13407         (u8_mbtouc): Use ucs4_t, uint8_t types.
13408         * lib/unistr/utf8-ucs4.c: New file.
13409
13410         * modules/utf16-ucs4 (Files, lib_SOURCES): Add unistr/utf16-ucs4.c.
13411         (Depends-on): Add unitypes.
13412         * lib/utf16-ucs4.h: Add double-inclusion guard. Include unitypes.h.
13413         (u16_mbtouc_aux): Move out to separate file.
13414         (u16_mbtouc): Use ucs4_t, uint16_t types.
13415         * lib/unistr/utf16-ucs4.c: New file.
13416
13417         * modules/ucs4-utf8 (Files, lib_SOURCES): Add unistr/ucs4-utf8.c.
13418         (Depends-on): Add unitypes.
13419         * lib/ucs4-utf8.h: Add double-inclusion guard. Include unitypes.h.
13420         (u8_uctomb_aux): Move out to separate file.
13421         (u8_uctomb): Use ucs4_t, uint8_t types.
13422         * lib/unistr/ucs4-utf8.c: New file.
13423
13424         * modules/ucs4-utf16 (Files, lib_SOURCES): Add unistr/ucs4-utf16.c.
13425         (Depends-on): Add unitypes.
13426         * lib/ucs4-utf16.h: Add double-inclusion guard. Include unitypes.h.
13427         (u16_uctomb_aux): Move out to separate file.
13428         (u16_uctomb): Use ucs4_t, uint16_t types.
13429         * lib/unistr/ucs4-utf16.c: New file.
13430
13431 2006-12-25  Bruno Haible  <bruno@clisp.org>
13432
13433         * modules/unitypes: New file.
13434         * lib/unitypes.h: New file.
13435         * MODULES.html.sh (func_all_modules): New section "Unicode string
13436         functions". Move ucs4-utf8, ucs4-utf16, utf8-ucs4, utf16-ucs4 to
13437         this section. Add unitypes.
13438
13439 2007-01-08  Bruno Haible  <bruno@clisp.org>
13440
13441         Avoid variable names that conflict with those from libtool.
13442         * m4/lib-link.m4 (AC_LIB_RPATH, AC_LIB_LINKFLAGS_BODY,
13443         AC_LIB_LINKFLAGS_FROM_LIBS): Rename libext to acl_libext,
13444         shlibext to acl_shlibext, libname_spec to acl_libname_spec,
13445         library_names_spec to acl_library_names_spec, hardcode_* to
13446         acl_hardcode_*.
13447         Reported by Ralf Wildenhues.
13448
13449 2007-01-08  Bruno Haible  <bruno@clisp.org>
13450
13451         * m4/gc-arcfour.m4 (gl_GC_ARCFOUR): Remove GC_USE_ARCFOUR macro
13452         definition.
13453         * m4/gc-arctwo.m4 (gl_GC_ARCTWO): Remove GC_USE_ARCTWO macro
13454         definition.
13455         * m4/gc-des.m4 (gl_GC_DES): Remove GC_USE_DES macro definition.
13456         * m4/gc-hmac-md5.m4 (gl_GC_HMAC_MD5): Remove GC_USE_HMAC_MD5 macro
13457         definition.
13458         * m4/gc-hmac-sha1.m4 (gl_GC_HMAC_SHA1): Remove GC_USE_HMAC_SHA1 macro
13459         definition.
13460         * m4/gc-md2.m4 (gl_GC_MD2): Remove GC_USE_MD2 macro definition.
13461         * m4/gc-md4.m4 (gl_GC_MD4): Remove GC_USE_MD4 macro definition.
13462         * m4/gc-md5.m4 (gl_GC_MD5): Remove GC_USE_MD5 macro definition.
13463         * m4/gc-random.m4 (gl_GC_RANDOM): Remove GC_USE_RANDOM macro
13464         definition.
13465         * m4/gc-rijndael.m4 (gl_GC_RIJNDAEL): Remove GC_USE_RIJNDAEL macro
13466         definition.
13467         * m4/gc-sha1.m4 (gl_GC_SHA1): Remove GC_USE_SHA1 macro definition.
13468         * lib/gc-gnulib.c: Use GNULIB_GC_<algorithm> instead of
13469         GC_USE_<algorithm>.
13470         * lib/gc-libgcrypt.c: Likewise.
13471         * modules/gc-arcfour (configure.ac): Use gl_MODULE_INDICATOR.
13472         * modules/gc-arctwo (configure.ac): Likewise.
13473         * modules/gc-des (configure.ac): Likewise.
13474         * modules/gc-hmac-md5 (configure.ac): Likewise.
13475         * modules/gc-hmac-sha1 (configure.ac): Likewise.
13476         * modules/gc-md2 (configure.ac): Likewise.
13477         * modules/gc-md4 (configure.ac): Likewise.
13478         * modules/gc-md5 (configure.ac): Likewise.
13479         * modules/gc-random (configure.ac): Likewise.
13480         * modules/gc-rijndael (configure.ac): Likewise.
13481         * modules/gc-sha1 (configure.ac): Likewise.
13482
13483 2007-01-08  Bruno Haible  <bruno@clisp.org>
13484
13485         * m4/close-stream.m4 (gl_CLOSE_STREAM): Remove GNULIB_CLOSE_STREAM
13486         macro definition.
13487         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Remove GNULIB_FCNTL_SAFER macro
13488         definition.
13489         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Remove GNULIB_FOPEN_SAFER macro
13490         definition.
13491         * modules/close-stream (configure.ac): Invoke gl_MODULE_INDICATOR.
13492         * modules/fcntl-safer (configure.ac): Likewise.
13493         * modules/fopen-safer (configure.ac): Likewise.
13494         * modules/fwriteerror (configure.ac): Likewise. Remove explicit
13495         GNULIB_FWRITEERROR macro definition.
13496
13497 2007-01-08  Bruno Haible  <bruno@clisp.org>
13498
13499         * m4/gnulib-common.m4: New file.
13500         * gnulib-tool (func_get_autoconf_snippet): Undo last change.
13501         (func_get_filelist): Add m4/gnulib-common.m4.
13502
13503 2007-01-08  Bruno Haible  <bruno@clisp.org>
13504
13505         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Simplify the sorting
13506         command.
13507
13508 2007-01-08  Jim Meyering  <jim@meyering.net>
13509
13510         Use a more robust test for a "can't happen" condition.
13511         * lib/fts.c (fts_read): Revert the change of 2006-11-22, since it
13512         narrowed the st_size value.  Presuming the "can't happen" condition
13513         is true, that narrowing could conceivably convert an invalid st_size
13514         value into a valid one.  Instead, use a change based on Matthew
13515         Woehlke's original patch.
13516
13517         Slight readability improvement: use an assert-like macro
13518         in place of literal "abort ()" uses.
13519         * lib/fts.c (fts_assert): Define.
13520         (fts_set_stat_required, cwd_advance_fd, fts_read, fd_ring_check):
13521         Use this macro instead of a bare 'abort'.
13522
13523 2007-01-05  Paul Eggert  <eggert@cs.ucla.edu>
13524
13525         Don't worry about using IRIX 5.3's wctype.h broken definitions;
13526         simply work around them.
13527         * lib/wctype_.h: Remove test for HAVE_WCTYPE_CTMP_BUG.
13528         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph, iswlower):
13529         (iswprint, iswpunct, iswspace, iswupper, iswxdigit): Undef before
13530         declaring.
13531         Don't bother to define as macros, since the standard doesn't require it.
13532         * m4/wctype.m4 (WCTYPE_H, ABSOLUTE_WCTYPE_H): Simplify, since we no
13533         longer worry about IRIX 5.3.
13534         (HAVE_WCTYPE_CTMP_BUG): Remove.
13535
13536 2007-01-04  Paul Eggert  <eggert@cs.ucla.edu>
13537
13538         * lib/wctype_.h (_ctmp_) [HAVE_WCTYPE_CTMP_BUG]: Now of type wchar_t,
13539         not wint_t.  Also, include <ctype.h>, to fix another IRIX bug.
13540         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
13541         Problems reported by Georg Schwarz for IRIX 5.3.
13542
13543         * gnulib-tool (autoconf_minversion): Take the maximum version number
13544         found, not the minimum.  Problem reported by James Youngman.
13545
13546 2007-01-03  Karl Berry  <karl@gnu.org>
13547
13548         * doc/error.texi: new file, explaining interaction with progname.
13549         * doc/gnulib.texi: include it.  Update copyright.
13550
13551 2007-01-03  Simon Josefsson  <simon@josefsson.org>
13552
13553         * gnulib-tool (func_create_testdir): Run AC_CANONICAL_BUILD and
13554         AC_CANONICAL_HOST, to improve autobuild outputs.
13555
13556 2007-01-03  Paolo Bonzini  <bonzini@gnu.org>
13557             Yoann Vandoorselaere <yoann.v@prelude-ids.com>
13558
13559         * lib/poll.c (poll): Use recv on Mac OS X to distinguish connected
13560         sockets, server sockets, and other file descriptors.  Count errors
13561         to compute the return value.  Reorder the code a bit to be easier
13562         to follow.  Don't set event bits that were not requested (except
13563         POLLERR and POLLHUP).
13564
13565 2007-01-01  Bruno Haible  <bruno@clisp.org>
13566
13567         * modules/lchmod (Include): Require lchmod.h, not lchown.h.
13568
13569 2007-01-03  Jim Meyering  <jim@meyering.net>
13570
13571         * modules/fts-lgpl (Depends-on): Add i-ring.  Reported by Bruno Haible.
13572
13573 2007-01-02  Bruno Haible  <bruno@clisp.org>
13574
13575         * modules/settime (Include): Require timespec.h.
13576         * modules/nanosleep (Include): Likewise.
13577
13578 2007-01-01  Bruno Haible  <bruno@clisp.org>
13579
13580         * gnulib-tool (func_emit_copyright_notice): Bump year.
13581         (func_get_autoconf_snippet): Emit a GNULIB_<modulename> macro.
13582
13583 2007-01-01  Bruno Haible  <bruno@clisp.org>
13584
13585         Improve support for OpenBSD.
13586         * build-aux/config.rpath (libname_spec): Export.
13587         (library_names_spec): New variable. Export.
13588         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Extract libname_spec and
13589         library_names_spec from the config.rpath output. Locate shared library
13590         through the name pattern in library_names_spec.
13591
13592 2007-01-01  Eric Blake  <ebb9@byu.net>
13593
13594         * lib/version-etc.c (COPYRIGHT_YEAR): Bump for new year.
13595
13596 2006-12-30  Paul Eggert  <eggert@cs.ucla.edu>
13597
13598         * gnulib-tool (SORT): Remove, since we no longer assume GNU sort.
13599         Rewrite so as not to assume GNU sort or "tail -1".  Also, don't
13600         assume the C locale, and avoid an "eval" that could cause trouble.
13601         Problem with SORT reported by Bob Proulx.
13602
13603         * lib/getpagesize.h (getpagesize) [defined __amigaos4__]:
13604         Define.  Trivial patch from Henning Nielsen Lund, originally
13605         sent to bug-grep@gnu.org today.
13606
13607 2006-12-29  Paul Eggert  <eggert@cs.ucla.edu>
13608
13609         * lib/acl.h: Include sys/types.h and sys/stat.h, for mode_t and
13610         struct stat.  Problem reported by Henning Nielsen Lund.
13611         * lib/acl.c: Include acl.h first, to check interface.  Don't
13612         bother to include sys/types.h and sys/stat.h again.
13613
13614 2006-12-28  Paul Eggert  <eggert@cs.ucla.edu>
13615
13616         Import the following change from libc; problem reported by
13617         Sven Verdoolaege.
13618
13619         2005-10-13  Ulrich Drepper  <drepper@redhat.com>
13620
13621         [BZ #1373]
13622         * lib/argp.h: Remove __NTH for __argp_usage inline function.
13623
13624 2006-12-28  Jim Meyering  <jim@meyering.net>
13625
13626         * build-aux/announce-gen: Do not assume that the package
13627         builds any of tar.gz, tar.bz2, and .xdelta files.
13628         Suggestion from Simon Josefsson.
13629
13630 2006-12-28  Simon Josefsson  <simon@josefsson.org>
13631
13632         * modules/announce-gen: New file.
13633
13634 2006-12-27  Paul Eggert  <eggert@cs.ucla.edu>
13635
13636         * lib/mbchar.h: Just include <wctype.h>; the wctype module
13637         handles its gotchas now.
13638         * lib/mbswidth.c: Likewise.
13639         * lib/wcwidth.h: Likewise.
13640         * m4/mbchar.m4 (gl_MBCHAR): Don't bother checking for wctype.h
13641         and iswcntrl; the wctype module does this stuff now.
13642         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
13643         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
13644         * modules/mbchar (Depends-on): Add wctype.
13645         * modules/mbswidth (Depends-on): Likewise.
13646         * modules/wcwidth (Depends-on): Likewise.
13647
13648 2006-12-27  Eric Blake  <ebb9@byu.net>
13649
13650         * lib/fnmatch.c: Reinstate inclusion of <wchar.h>, since this
13651         module uses more than what <wctype.h> is required to provide.
13652
13653 2006-12-26  Eric Blake  <ebb9@byu.net>
13654
13655         * gnulib-tool (sed_extract_prog): Avoid space-tab.
13656
13657 2006-12-26  Eric Blake  <ebb9@byu.net>
13658
13659         * modules/absolute-header: New module.
13660         * modules/fcntl (Depends-on): Depend on it.
13661         * modules/inttypes (Depends-on): Likewise.
13662         * modules/stdint (Depends-on): Likewise.
13663         * modules/sys_stat (Depends-on): Likewise.
13664         * modules/wctype (Depends-on): Likewise.
13665         * MODULES.html.sh (Support for building libraries and
13666         executables): Document it.
13667
13668 2006-12-25  Paul Eggert  <eggert@cs.ucla.edu>
13669
13670         * gnulib-tool (SED): Remove, undoing previous change.
13671         The problem was that it broke coreutils on Solaris, because
13672         "sed --posix" leaked into a makefile.
13673         (sed): New alias, if 'alias' and GNU sed.
13674
13675 2006-12-24  Jim Meyering  <jim@meyering.net>
13676
13677         Work around an fchownat bug in glibc-2.4:
13678         http://lists.ubuntu.com/archives/ubuntu-users/2006-September/093218.html
13679         This bug would cause "chown -RP ... DIR" to follow symlinks in DIR,
13680         in spite of the -P option.
13681         * m4/openat.m4 (gl_FUNC_FCHOWNAT, gl_FUNC_FCHOWNAT_DEREF_BUG):
13682         New macros.
13683         (gl_PREREQ_OPENAT): Require gl_FUNC_FCHOWNAT.
13684         * modules/openat (Files): Add lib/fchownat.c.
13685         * lib/openat.c (fchownat): Don't define here.  Move to...
13686         * lib/fchownat.c: ...this new file.
13687
13688 2006-12-23  Paul Eggert  <eggert@cs.ucla.edu>
13689
13690         Fix bug reported by Bruno Haible in
13691         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00228.html>
13692         where quotearg.c didn't compile on Mac OS X 10.2 because it
13693         lacks <wchar.h> and wint_t.
13694         * lib/wctype_.h (__wctype_wint_t): New type.
13695         Include <stdio.h>, <time.h>, <wchar.h> only if HAVE_WINT_T.
13696         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph):
13697         (iswlower, iswprint, iswpunct, iswspace, iswupper, ixwxdigit):
13698         Arg is now of type __wctype_wint_t, not wint_t.
13699         * m4/wctype.m4 (gl_WCTYPE_H): Require gt_TYPE_WINT_T, and
13700         substitute HAVE_WINT_T.
13701         * modules/wctype (Files): Add m4/wint_t.m4.
13702         (wctype.h): Substitute HAVE_WINT_T.
13703
13704 2006-12-23  Bruno Haible  <bruno@clisp.org>
13705
13706         * lib/safe-read.h [C++]: Wrap declarations in extern "C".
13707
13708 2006-12-23  Bruno Haible  <bruno@clisp.org>
13709
13710         * lib/canonicalize-lgpl.c (__realpath): Test HAVE_READLINK instead of
13711         S_ISLNK.
13712         Needed because gnulib's sys/stat.h replacement defines S_ISLNK on
13713         mingw.
13714
13715 2006-12-22  Bruno Haible  <bruno@clisp.org>
13716
13717         * lib/copy-file.c: Include acl.h.
13718         (copy_file_preserving) [USE_ACL]: Use copy_acl instead of chmod.
13719         Close the file descriptors only after being done with copy_acl.
13720         * modules/copy-file (Depends-on): Add acl.
13721
13722 2006-12-22  Bruno Haible  <bruno@clisp.org>
13723
13724         * gnulib-tool (SED): New variable.
13725         Use $SED instead of sed everywhere.
13726
13727 2006-12-22  Bruno Haible  <bruno@clisp.org>
13728
13729         * modules/no-c++: New file.
13730         * m4/no-c++.m4: New file.
13731         * MODULES.html.sh (Support for building libraries and executables):
13732         Add no-c++.
13733
13734 2006-12-22  Paul Eggert  <eggert@cs.ucla.edu>
13735
13736         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
13737         Include <limits.h>, and use its INT_MAX to rewrite the
13738         j loop so that it does not overflow 'int'.  Problem reported by
13739         Ralf Wildenhues in
13740         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00084.html>.
13741         Play it safe by shifting left by 1 rather than multiplying by 2,
13742         as GCC is less likely to optimize this away when the value
13743         is signed (when it assumes overflow leads to undefined behavior).
13744         Also, don't assume time_t uses two's complement.
13745
13746 2006-12-21  Paul Eggert  <eggert@cs.ucla.edu>
13747
13748         * MODULES.html.sh: New module wctype.
13749         * lib/wctype_.h, m4/wctype.m4, modules/wctype: New files.
13750         * lib/fnmatch.c: Don't bother to include <wchar.h> before
13751         <wctype.h>, since the new wctype module should fix this.
13752         * lib/quotearg.c: Include <wctype.h> unconditionally, since
13753         the wctype module should arrange for it.
13754         * lib/regex_internal.h: Likewise.
13755         * m4/quotearg.m4 (gl_QUOTEARG): Don't check for wctype.h or iswprint,
13756         since the wctype module should handle this now.
13757         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for wctype.h.
13758         * modules/fnmatch (Depends-on): Add wctype.
13759         * modules/quotearg (Depends-on): Likewise.
13760         * modules/regex (Depends-on): Likewise.
13761
13762 2006-12-19  Bruno Haible  <bruno@clisp.org>
13763
13764         * lib/strdup.h [C++]: Wrap definitions in extern "C".
13765         Suggested by Lorenzo Bettini <bettini@dsi.unifi.it>.
13766
13767 2006-12-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13768
13769         * modules/savewd (Depends-on): Fix dependency on fcntl.
13770
13771 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
13772
13773         * m4/stdint.m4 (gl_STDINT_H): Set STDINT_H to empty if stdint.h
13774         conforms to C99, rather than relying on the user's environment
13775         setting of STDINT_H.
13776
13777 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
13778         and Eric Blake  <ebb9@byu.net>
13779
13780         * lib/dirname.h (DOUBLE_SLASH_IS_DISTINCT_ROOT): Default to 0, not 1.
13781         This is more consistent with the other defines here.
13782         * m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT):
13783         Port to z/OS.  Problem reported by Paul Gilmartin.
13784         Change local vars to use gl_ prefix rather than ac_.
13785         Don't define DOUBLE_SLASH_IS_DISTINCT_ROOT to 0, for consistency
13786         with other defines.
13787         * modules/double-slash-root: New module.
13788         * modules/dirname (Files): Remove m4/double-slash-root.m4.
13789         (Depends-on): Add double-slash-root.
13790         * MODULES.html.sh (File system functions): Mention new module.
13791
13792 2006-12-14  Paul Eggert  <eggert@cs.ucla.edu>
13793
13794         * lib/yesno.c [!ENABLE_NLS]: Don't include getline.h.
13795         (yesno) [!ENABLE_NLS]: Don't invoke getline or rpmatch.
13796         This is for the benefit of gzip, which doesn't do i18n.
13797
13798 2006-12-12  Jim Meyering  <jim@meyering.net>
13799
13800         * m4/acl.m4 (gl_ACL_GET_FILE): Fix logic error.
13801         Reported by Andreas Schwab <schwab@suse.de>.
13802
13803 2006-12-12  Bruno Haible  <bruno@clisp.org>
13804
13805         Merge these changes.
13806         2006-09-05  Bruno Haible  <bruno@clisp.org>
13807         * lib/iconvme.c (iconv_string): No need to save and restore errno when
13808         iconv_alloc succeeded.
13809         (iconv_alloc): Don't assume that malloc() or realloc(), when failing,
13810         sets errno to ENOMEM. (malloc on GNU/kFreeBSD doesn't.) No need to
13811         test for " && dest " at the end - dest is always != NULL there. Call
13812         iconv with 4xNULL arguments initially, to reset the state. Call iconv
13813         with 2xNULL arguments, also to flush the state storage. Handle the
13814         IRIX iconv behaviour. Realloc the final result, to throw away unused
13815         memory.
13816
13817 2006-12-11  Paul Eggert  <eggert@cs.ucla.edu>
13818
13819         * m4/openat.m4 (gl_FUNC_OPENAT): Don't compile mkdirat
13820         and fchmodat unconditionally, since glibc 2.4 has them.
13821         Problem reported by Arkadiusz Miskiewicz.
13822
13823 2006-12-10  Bruno Haible  <bruno@clisp.org>
13824
13825         * gnulib-tool (func_import): Show the include files only for those
13826         modules that are copied and specified.
13827         Reported by Karl Berry.
13828
13829 2006-12-08  Jim Meyering  <jim@meyering.net>
13830
13831         * build-aux/announce-gen ($VERSION): Don't use of $Revision...$.
13832         Instead, use Emacs' time-stamp write hook.  Note that the time is UTC.
13833
13834         * build-aux/announce-gen: Add two new options, both optional:
13835         --bootstrap-tools=TOOL_LIST
13836               a comma-separated list of tools, e.g.,
13837               autoconf,automake,bison,gnulib
13838         --gnulib-snapshot-date=DATE
13839               if gnulib is in the bootstrap tool list,
13840               then report this as the snapshot date.
13841               If not specified, use the current date/time.
13842               If you specify a date here, be sure it's UTC.
13843
13844 2006-12-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13845
13846         * tests/test-argp-2.sh: Fix test to match actual output.
13847         (func_compare): Fix sed script to be portable.
13848
13849 2006-12-05  Paul Eggert  <eggert@cs.ucla.edu>
13850
13851         * lib/utimens.c (futimens) [HAVE_BUGGY_NFS_TIME_STAMPS]: Add a
13852         workaround for this case.  It is not autoconfigured now; offhand
13853         it's hard to see how to autoconfigure it.
13854
13855 2006-12-03  Paul Eggert  <eggert@cs.ucla.edu>
13856
13857         * lib/mkdir-p.c (make_dir_parents): Fix race condition when making
13858         a directory that is about to be chowned.  Such a directory's
13859         initial file permissions should permit the owner only and this
13860         should not be changed until after the chown, since the group and
13861         other bits would be incorrect if they granted permission before
13862         the chown.
13863
13864         Fix porting problem for iswctype reported by Georg Schwarz in:
13865         http://lists.gnu.org/archive/html/bug-coreutils/2006-12/msg00017.html
13866         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Require HAVE_ISWCTYPE, too.
13867         * lib/regex_internal.h (RE_ENABLE_I18N): Likewise.
13868         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for iswctype, too.
13869         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
13870
13871 2006-12-03  Jim Meyering  <jim@meyering.net>
13872
13873         * lib/fts.c (fts_load): Don't set sp->fts_dev here, since
13874         p->fts_statp may not yet be defined.
13875         (fts_read): Instead, set it in the caller, once p->fts_statp is
13876         sure to be defined, and corresponds to a top-level directory.
13877         This bug made du -x fail.  Here's the coreutils test case:
13878         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commit;h=ba45154d8e9f
13879         Reported by Mike Frysinger.
13880
13881 2006-12-01  Jim Meyering  <jim@meyering.net>
13882
13883         * modules/savewd (Depends-on): Add fcntl_h to avoid self-test
13884         build failure due to missing definition of HAVE_WORKING_O_NOFOLLOW.
13885         Reported by Simon Josefsson.
13886
13887 2006-11-30  Jim Meyering  <jim@meyering.net>
13888
13889         * m4/warning.m4: Use the all-permissive copyright notice
13890         recommended by RMS (rather than LGPL).
13891         * m4/vararrays.m4: Likewise.
13892         * m4/flexmember.m4: Likewise.
13893
13894 2006-11-29  Bruno Haible  <bruno@clisp.org>
13895
13896         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
13897         noinst_LIBRARIES. Augment noinst_LIBRARIES and noinst_LTLIBRARIES
13898         using +=.
13899         Reported by Simon Josefsson <simon@josefsson.org>.
13900
13901 2006-11-28  James Youngman <jay@gnu.org>
13902
13903         * README: Advise users that they might find the bug-gnulib@gnu.org
13904         and autotools-announce@gnu.org mailing lists useful.
13905
13906 2006-11-28  Bruno Haible  <bruno@clisp.org>
13907
13908         * m4/ptrdiff_max.m4: Remove file.
13909
13910 2006-11-21  Bruno Haible  <bruno@clisp.org>
13911
13912         * m4/eoverflow.m4 (gl_EOVERFLOW): Use AC_COMPUTE_INT instead of
13913         _AC_COMPUTE_INT.
13914         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
13915         * m4/ptrdiff_max.m4 (gl_PTRDIFF_MAX): Use AC_COMPUTE_INT instead of
13916         _AC_COMPUTE_INT.
13917         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
13918         * m4/size_max.m4 (gl_SIZE_MAX): Use AC_COMPUTE_INT instead of
13919         _AC_COMPUTE_INT.
13920         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
13921
13922 2006-11-28  Jim Meyering  <jim@meyering.net>
13923
13924         * lib/regcomp.c (parse_branch): Rename local, exp->expr, to avoid
13925         warning from "gcc -Wshadow" about shadowing the builtin.
13926
13927 2006-11-27  Bruno Haible  <bruno@clisp.org>
13928
13929         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): Use AC_COMPUTE_INT instead of
13930         _AC_COMPUTE_INT.
13931         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
13932
13933 2006-11-27  Bruno Haible  <bruno@clisp.org>
13934             Paul Eggert  <eggert@cs.ucla.edu>
13935
13936         * lib/regex.h (__restrict_arr): Redo logic of #if, for clarity.
13937
13938 2006-11-26  Bruno Haible  <bruno@clisp.org>
13939
13940         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
13941         noinst_LTLIBRARIES.
13942
13943 2006-11-27  Paul Eggert  <eggert@cs.ucla.edu>
13944             Bruno Haible  <bruno@clisp.org>
13945
13946         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to 0
13947         if compiling with "gcc -ansi".
13948
13949 2006-11-26  Paul Eggert  <eggert@cs.ucla.edu>
13950
13951         Fix some incompatibilities with gcc -ansi -pedantic.
13952         * lib/regex.h (__restrict_arr): Don't use the [restrict] syntax
13953         if compiling pedantically with GCC, unless it's C99 or later.
13954         Don't trust sys/cdefs.h's definition of __restrict_arr, either, as
13955         it mishandles gcc -ansi -pedantic as well.
13956         * lib/regex_internal.h (re_token_t): Don't use enum bitfields
13957         if gcc -pedantic.
13958         * lib/regexec.c (check_node_accept_bytes): Don't use auto
13959         initializers for struct if -pedantic, unless it's C99 or later.
13960
13961 2006-11-25  Nix  <nix@esperi.org.uk>  (tiny change)
13962
13963         * m4/fcntl_h.m4 (gl_FCNTL_H): Test the atime, not the mtime.
13964         Don't close an fd more than once. Identical atimes indicate
13965         success, not failure.
13966
13967 2006-11-22  Robinson Mittmann <bob@hoplon.com>  (tiny change)
13968
13969         * lib/sincosl.c (kernel_sinl): Fix typo in threshold.
13970
13971 2006-11-23  Jim Meyering  <jim@meyering.net>
13972
13973         * build-aux/announce-gen: New file.  From coreutils.
13974
13975 2006-11-22  Jim Meyering  <jim@meyering.net>
13976
13977         Work around a compile-time error from the HP-UX 11.00 /bin/cc.
13978         * lib/fts.c (enum Fts_stat): Give this previously-anon enum a name.
13979         (fts_read): Use a temporary to narrow the overused st_size member
13980         before using it in a switch statement.  Reported by Matthew Woehlke.
13981
13982         * m4/clock_time.m4 (gl_CLOCK_TIME): Quote AC_SUBST argument.
13983         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Likewise.
13984
13985 2006-11-20  Bruno Haible  <bruno@clisp.org>
13986
13987         * gettext.m4 (AM_GNU_GETTEXT): Revert 2005-07-28 patch: Use
13988         changequote instead of pairs of brackets.
13989         Reported by Andreas Schwab <schwab@suse.de>.
13990
13991 2006-11-21  Jim Meyering  <jim@meyering.net>
13992
13993         * lib/fts.c (fts_safe_changedir): Move a declaration "up",
13994         so as to remain compatible with older compilers.
13995         Patch from Michael Deutschmann.
13996
13997 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
13998
13999         * MODULES.html.sh (File system functions): Add openat.
14000
14001         * lib/openat.h (rpl_fstatat): New macro, if
14002         [HAVE_OPENAT && ! LSTAT_FOLLOWS_SLASHED_SYMLINK.
14003         (fstatat): Define to rpl_fstatat under the same conditions,
14004         unless COMPILING_FSTATAT.
14005         * m4/openat.m4 (gl_FUNC_OPENAT): Compile fstatat.c too, if fstatat
14006         seems to have the bug.
14007         * lib/fstatat.c: New file.
14008         * modules/openat (Files): Add it.
14009
14010 2006-11-20  Bruno Haible  <bruno@clisp.org>
14011
14012         * Makefile: New file.
14013
14014 2006-11-20  Jim Meyering  <jim@meyering.net>
14015
14016         The beginnings of syntax-related checks for gnulib.
14017         * lib/Makefile: New file.
14018         * lib/t-idcache: New script.  Ensure that the two halves of
14019         idcache.c stay in sync.
14020
14021         * lib/idcache.c: Adjust comments in user- and group- portions to
14022         be more accurate, and to be consistent with one another.
14023
14024 2006-11-20  Jim Meyering  <jim@meyering.net>
14025
14026         * lib/idcache.c: Restore most of the 2006-11-06 patch, so as to
14027         continue using the flexible array member (thus, this module performs
14028         half as many malloc calls), with the addition that...
14029         (getgroup, getuser): Consistently record a non-match via an empty
14030         "name" string, and map an empty string match to a NULL return value.
14031         * modules/idcache (Depends-on): Re-add flexmember.
14032
14033         * lib/idcache.c (getuser): Remove all uses of the register keyword.
14034         (getuidbyname, getgroup, getgidbyname): Likewise.
14035
14036         Use cleaner syntax: NULL rather than 0.
14037         * lib/idcache.c (getuidbyname, getgidbyname): Return NULL, not 0.
14038
14039 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
14040
14041         * lib/idcache.c: Undo most recent patch, dated 2006-11-06.
14042         It mishandled the case where the group was missing.
14043         Problem reported by Greg Schafer.
14044         * modules/idcache: Likewise.
14045
14046 2006-11-18  Jim Meyering  <jim@meyering.net>
14047
14048         * check-module (%exempt_header): Add exception for some
14049         conditionally-included headers.
14050
14051         * modules/i-ring (Depends-on): Add verify.
14052         (License): Change to LGPL.
14053
14054 2006-11-16  Paul Eggert  <eggert@cs.ucla.edu>
14055
14056         * modules/getaddinfo (Depends-on): Remove inttostr; add snprintf.
14057         * lib/getaddrinfo.c: Include snprintf.h rather than intprops.h
14058         and inttostr.h.  Use snprintf rather than uinttostr, so that
14059         LGPLed code doesn't depend on GPLed.
14060
14061 2006-11-17  Paul Eggert  <eggert@cs.ucla.edu>
14062
14063         * modules/inline (License): Change from GPL to LGPL.
14064
14065 2006-11-17  Jim Meyering  <jim@meyering.net>
14066
14067         * modules/d-type (License): Switch to LGPL.
14068
14069 2006-11-15  Bruno Haible  <bruno@clisp.org>
14070
14071         * m4/alloca.m4 (gl_FUNC_ALLOCA): Fix the AC_CACHE_CHECK message.
14072
14073 2006-11-15  Eric Blake  <ebb9@byu.net>
14074
14075         * m4/allocsa.m4 (gl_ALLOCSA): Don't invoke macro already picked up by
14076         the module dependency.
14077
14078 2006-11-15  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
14079             Bruno Haible  <bruno@clisp.org>
14080
14081         * gnulib-tool (func_create_testdir): Add license consistency check.
14082
14083 2006-11-15  Eric Blake  <ebb9@byu.net>
14084
14085         * m4/alloca.m4 (gl_FUNC_ALLOCA): Use AC_CACHE_CHECK to avoid a
14086         random "(cached)" in configure output.
14087
14088 2006-11-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14089
14090         * m4/inttypes.m4 (gl_INTTYPES_H): Use AC_CACHE_CHECK so that the
14091         test for conforming inttypes.h is both announced and cached.
14092
14093         * MODULES.html.sh (seen_modules, seen_files): New variables.
14094         (func_module): Rewrite to use a few less gnulib-tool and sed
14095         invocations.  Avoid a couple of quadratic algorithms for ...
14096         (missed_modules, missed_files): ... these, with ...
14097         (func_append, func_tmpdir): ... these new functions, from
14098         gnulib-tool.  Analogously, install traps for cleanup.
14099
14100         * tests/test-gc.c (main): Remove unused variables.
14101         * tests/test-read-file.c: Include stdlib.h, for 'free'.
14102
14103 2006-11-14  Paul Eggert  <eggert@cs.ucla.edu>
14104
14105         * modules/inttostr (License): Change to LGPL.
14106
14107 2006-11-14  Eric Blake  <ebb9@byu.net>
14108
14109         * modules/tempname (License): Change to LGPL.
14110
14111 2006-11-14  Eric Blake  <ebb9@byu.net>
14112
14113         * doc/functions.texi (Function Portability): *printf functions on
14114         Cygwin now understand all POSIX size specifiers.
14115
14116 2006-11-14  Bruno Haible  <bruno@clisp.org>
14117
14118         * modules/c-ctype (License): Change to LGPL.
14119
14120 2006-11-12  Bruno Haible  <bruno@clisp.org>
14121
14122         * m4/lib-link.m4 (AC_LIB_LINKFLAGS, AC_LIB_HAVE_LINKFLAGS,
14123         AC_LIB_LINKFLAGS_BODY): Also set a LIB${NAME}_PREFIX variable. Needed
14124         for GNOME libraries, for which the include files are installed in
14125         subdirectories of $prefix/include.
14126
14127 2006-11-12  Bruno Haible  <bruno@clisp.org>
14128
14129         * m4/lib-link.m4: Require at least autoconf-2.54.
14130         (AC_LIB_LINKFLAGS_BODY) [autoconf < 2.61]: Turn dots into the library
14131         name to underscores for the --with option.
14132
14133 2006-11-13  Bruno Haible  <bruno@clisp.org>
14134
14135         * gnulib-tool (func_create_testdir): Set gl_source_base correctly in
14136         the tests directory.
14137         Reported by Ralf Wildenhues.
14138
14139 2006-11-13  Bruno Haible  <bruno@clisp.org>
14140
14141         * gnulib-tool (func_emit_initmacro_start): Also override AC_LIBSOURCES.
14142         (func_emit_initmacro_end): Undo the override here.
14143         (func_emit_initmacro_done): Emit a definition for gl_LIBSOURCES.
14144         Works around the famous automake error in coreutils.
14145
14146 2006-11-13  Eric Blake  <ebb9@byu.net>
14147
14148         * lib/gl_anytree_oset.h (gl_tree_search_atleast): Return the
14149         element, not its node.
14150
14151 2006-11-12  Bruno Haible  <bruno@clisp.org>
14152
14153         * gnulib-tool (func_emit_lib_Makefile_am): Replace occurrences of
14154         '$(top_srcdir)/build-aux/', taking into account the real auxdir.
14155
14156 2006-11-12  Bruno Haible  <bruno@clisp.org>
14157
14158         * gnulib-tool: New option --local-symlink.
14159         (func_usage): Document it.
14160         (lsymbolic): New variable.
14161         (func_import, func_create_testdir): If --symlink was not specified,
14162         test whether --local-symlink was specified and the file comes from
14163         the local_gnulib_dir.
14164
14165 2006-11-12  Bruno Haible  <bruno@clisp.org>
14166
14167         * gnulib-tool (func_ln): New function.
14168         (func_ln_if_changed, func_create_testdir): Use it instead of "ln -s".
14169
14170 2006-11-12  Bruno Haible  <bruno@clisp.org>
14171
14172         Finish support for source files in subdirectories.
14173         * gnulib-tool (func_emit_lib_Makefile_am): If some of the source files
14174         are in subdirectories, set uses_subdirs and add 'subdir-objects' to
14175         AUTOMAKE_OPTIONS.
14176         (func_import, func_create_testdir): Invoke AM_PROG_CC_C_O in this case.
14177
14178 2006-11-12  Bruno Haible  <bruno@clisp.org>
14179
14180         * gnulib-tool (func_get_automake_snippet): Synthesize also an
14181         EXTRA_lib_SOURCES augmentation.
14182         (func_emit_lib_Makefile_am): Initialize EXTRA_lib..._SOURCES to empty.
14183
14184 2006-11-12  Jim Meyering  <jim@meyering.net>
14185
14186         Make fts (in FTS_CWDFD mode) more efficient by caching a few open
14187         file descriptors.  This also averts a failure on systems with
14188         native openat support when a traversed directory lacks "x" access.
14189         * lib/fts_.h: Include "i-ring.h"
14190         (struct FTS) [fts_fd_ring]: New member.
14191         * lib/fts.c (RESTORE_INITIAL_CWD): Also call fd_ring_clear.
14192         (FCHDIR): Add parentheses.
14193         (fd_ring_check, fd_ring_print) [!FTS_DEBUG]: Define away.
14194         (cwd_advance_fd): Add a 3rd parameter.  Adjust all callers.
14195         When descending, rather than simply closing the previous
14196         fts_cwd_fd value, push that file descriptor onto the ring.
14197         (same_fd, fd_ring_print, fd_ring_check) [FTS_DEBUG]: New functions.
14198         (fts_open): Initialize the new fd_ring member.
14199         (fts_close): Clear the ring.
14200         (fts_safe_changedir): When possible, use our new fd_ring to skip
14201         the diropen and fstat and dev/ino comparison that would normally
14202         accompany a virtual `chdir ("..")'.
14203
14204         * modules/fts (Depends-on): Add i-ring.
14205         * modules/i-ring: New module.
14206         * lib/i-ring.c, lib/i-ring.h, lib/i-ring-test.c: New files.
14207         * m4/i-ring.m4: New file.
14208
14209 2006-11-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14210
14211         * gnulib-tool (func_create_testdir): Fix replacement of
14212         `build-aux' in configure.ac.  Run autotools in gltests
14213         subdirectory.
14214         (func_create_testdir, func_create_megatestdir, test): There is
14215         no need for '--force' in most autotool invocations in a new
14216         tree.  Actually fail the whole test if any of the tools, or the
14217         configure or make stages fail.
14218
14219         Sync from Automake.
14220         * build-aux/gnupload: Revert last change.  Add pointer to upload
14221         instructions of the GNU Maintenance Instructions.
14222         Suggestion by Karl Berry.
14223
14224 2006-11-10  Jim Meyering  <jim@meyering.net>
14225
14226         * lib/fts.c [FTS_DEBUG]: Don't try to print a pointer via %s.
14227
14228 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
14229
14230         * lib/gettext.h (dgettext, dcgettext, ngettext) [! ENABLE_NLS]:
14231         (dngettext, dcngettext, bindtextdomain) [! ENABLE_NLS]:
14232         (bind_textdomain_codeset) [! ENABLE_NLS]:
14233         Evaluate all the arguments.  That way, callers get compatible behavior
14234         if the arguments have side effects.  Also, it avoids some GCC
14235         diagnostics in some cases; Joel E. Denny reported problems when Bison
14236         was configured with --enable-gcc-warnigs.
14237
14238 2006-11-10  Jim Meyering  <jim@meyering.net>
14239
14240         * m4/inline.m4 (gl_INLINE): Check with the compiler, not cpp, so that
14241         relevant options in CFLAGS (like -O, -fno-inline) are taken into
14242         account.
14243
14244 2006-11-10  Jim Meyering  <jim@meyering.net>
14245
14246         * modules/inline: New file/module.
14247         * modules/xalloc (Files): Remove m4/inline.m4.
14248         (Depends-on): Add inline, instead.
14249         * modules/oset: Likewise.
14250         * modules/list: Likewise.
14251
14252 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
14253
14254         * lib/stdint_.h (uintmax_t): Fix typo: int64_t -> uint64_t.
14255         Problem reported by Matthew Woehlke.
14256
14257 2006-11-09  Bruno Haible  <bruno@clisp.org>
14258
14259         * lib/tempname.c (gen_tempname): Remove variant that invokes
14260         __gen_tempname.
14261         * m4/tempname.m4 (gl_FUNC_GEN_TEMPNAME): Don't test for
14262         __gen_tempname.
14263
14264 2006-11-08  Bruno Haible  <bruno@clisp.org>
14265
14266         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Set ac_cv_type_long_long_int
14267         to 'yes' instead of 'cross-compiling'.
14268
14269 2006-11-08  Paul Eggert  <eggert@cs.ucla.edu>
14270
14271         * lib/quotearg.h (quotearg_free): New decl.
14272         * lib/quotearg.c (quotearg_free): New function.
14273         (slot0, nslots, slotvec0, slotvec):
14274         Now file-scope so that quotearg_free can get at them.
14275
14276 2006-11-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14277
14278         Sync from Automake.
14279         * build-aux/gnupload: Add missing 'gnu' to example URL.
14280         Report by Karl Berry.
14281
14282 2006-11-08  Bruno Haible  <bruno@clisp.org>
14283
14284         * m4/inline.m4 (gl_INLINE): Also test __NO_INLINE__.
14285         Suggested by Paul Eggert.
14286
14287 2006-11-08  Jim Meyering  <jim@meyering.net>
14288
14289         * lib/fts.c [!_LGPL_PACKAGE]: Don't include fcntl--.h twice.
14290         It's already included if !_LIBC.
14291         (fts_safe_changedir): Add a comment.
14292
14293 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
14294
14295         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Detect bug in
14296         Tandem NonStop Kernel (OSS) cc -O circa 2004, reported by
14297         Matthew Woehlke.
14298
14299         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Move
14300         definitions up, to avoid colliding with change below.
14301         (static_inline) [HAVE_INLINE]: New macro.
14302         (xnmalloc, xnrealloc, x2nrealloc, xcharalloc):
14303         Provide extern decls when !HAVE_INLINE.  Do not define unless
14304         static_inline is defined, either by us or by xmalloc.c.  Use
14305         static_inline rather than static inline.
14306         (XCALLOC): Optimize sizeof(T) = 1 case.
14307         * lib/xmalloc.c (static_inline) [!HAVE_INLINE]: New macro.
14308
14309 2006-11-07  Bruno Haible  <bruno@clisp.org>
14310
14311         * lib/xalloc.h (XNMALLOC): Restore optimization of sizeof(T) = 1 case.
14312         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require gl_INLINE instead of
14313         AC_C_INLINE.
14314         * modules/xalloc (Files): Add m4/inline.m4.
14315
14316 2006-11-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14317
14318         * README: Fix typo.
14319         * doc/gnulib.texi (Miscellaneous Notes): Likewise, rename...
14320         (Miscellanous Notes): ...from this.
14321
14322 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
14323
14324         * m4/flexmember.m4 (AC_C_FLEXIBLE_ARRAY_MEMBER):
14325         Mention that offsetof should be used instead of sizeof.
14326         From Bruno Haible.
14327
14328 2006-11-07  Bruno Haible  <bruno@clisp.org>
14329
14330         * lib/w32spawn.h (prepare_spawn): Use XNMALLOC instead of xmalloc.
14331
14332 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
14333
14334         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
14335         * lib/gl_anyavltree_list2.h (create_subtree_with_contents):
14336         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
14337         (gl_tree_add_before, gl_tree_add_after):
14338         Use XMALLOC instead of xmalloc, and XCALLOC instead of xzalloc.
14339         * lib/gl_anyhash_list2.h (hash_resize): Likewise.
14340         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
14341         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before):
14342         (gl_linked_add_after, gl_linked_add_at): Likewise.
14343         * lib/gl_anyrbtree_list2.h (create_subtree_with_contents):
14344         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
14345         (gl_tree_add_before, gl_tree_add_after): Likewise.
14346         * lib/gl_anytree_list2.h (gl_tree_create_empty): Likewise.
14347         * lib/gl_anytree_oset.h (gl_tree_create_empty): Likewise.
14348         * lib/gl_anytreehash_list1.h (add_to_bucket): Likewise.
14349
14350 2006-11-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14351
14352         * lib/gl_oset.h: Use C comment style, not C++ comment style.
14353
14354 2006-11-06  Bruno Haible  <bruno@clisp.org>
14355
14356         * m4/inline.m4: New file.
14357         * m4/gl_list.m4 (gl_LIST): Require gl_INLINE.
14358         * modules/list (Files): Add m4/inline.m4.
14359         * modules/oset (Files): Likewise.
14360
14361 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
14362
14363         * lib/idcache.c: Include <stddef.h>, for offsetof.
14364         (struct userid.name): Change from char * to a flexible array member.
14365         All uses changed.
14366         * modules/idcache (Depends-on): Add flexmember.
14367
14368         * MODULES.html.sh (Core language properties): New module flexmember.
14369         * modules/flexmember, m4/flexmember.m4: New files.
14370
14371         * lib/xalloc.h (xnmalloc, xnrealloc, x2nrealloc): Now static
14372         inline functions that are identical with the old xnmalloc_inline,
14373         xnrealloc_inline, x2nrealloc_inline of lib/xmalloc.c.  This is so
14374         that we can avoid some unnecessary integer multiplications and
14375         divisions in the common case where the element size is known at
14376         compile time.
14377         (XNMALLOC) [HAVE_INLINE]: Remove special case, which is no longer
14378         needed.
14379         (xnboundedmalloc): Remove.
14380         (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Use lower-case letters for
14381         arguments, for consistency with rest of this header.
14382         (xcharalloc): Rewrite using XNMALLOC.
14383         * lib/xmalloc.c (xnmalloc_inline, xnmalloc, xnrealloc_inline):
14384         (xnrealloc, x2nrealloc_inline, x2nrealloc): Remove.  The *_inline
14385         versions have been moved to lib/xalloc.h and renamed to be the
14386         non-*_inline versions.
14387         (xmalloc, xrealloc): Implement without reference to the xnmalloc
14388         and xnrealloc functions, since those functions are now inline and
14389         now call us.
14390         (x2realloc): Invoke x2realloc, not x2realloc_inline, to accommodate
14391         renaming described above.
14392         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Remove AC_C_INLINE since
14393         xmalloc.c no longer uses inline directly.  gl_PREREQ_XALLOC now
14394         captures the dependency in AC_C_INLINE.
14395
14396         New module canonicalize-lgpl, proposed by Charles Wilson in
14397         <http://lists.gnu.org/archive/html/bug-gnulib/2006-11/msg00020.html>
14398         with a few small changes afterwards.
14399         * MODULES.html.sh (File system functions): New module
14400         canonicalize-lgpl.
14401         * lib/canonicalize.h: Add comments for canonicalize_filename_mode
14402         and canonicalize_file_name.
14403         * lib/canonicalize-lgpl.c, m4/canonicalize-lgpl.m4:
14404         * modules/canonicalize-lgpl: New files.
14405
14406 2006-11-05  Bruno Haible  <bruno@clisp.org>
14407
14408         * gnulib-tool (func_import, func_create_testdir): Create directories
14409         also for files in subdirectories of lib/.
14410
14411 2006-11-05  Bruno Haible  <bruno@clisp.org>
14412
14413         * lib/gl_array_list.c (gl_array_iterator_next): Make pointer decrement
14414         ANSI C compliant.
14415
14416 2006-11-03  Bruno Haible  <bruno@clisp.org>
14417
14418         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
14419         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require AC_C_INLINE.
14420         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): New macros.
14421         (xnboundedmalloc): New inline function.
14422         * lib/classpath.c (new_classpath): Use XNMALLOC instead of xmalloc.
14423         * lib/clean-temp.c (create_temp_dir): Use XNMALLOC, XMALLOC instead of
14424         xmalloc.
14425         * lib/concatpath.c (concatenated_pathname): Use XNMALLOC instead of
14426         xmalloc.
14427         * lib/fatal-signal.c (at_fatal_signal): Use XNMALLOC instead of xmalloc.
14428         * lib/findprog.c (find_in_path): Use XNMALLOC instead of xmalloc.
14429         * lib/gl_array_list.c (gl_array_create_empty): Use XMALLOC instead of
14430         xmalloc.
14431         (gl_array_create): Use XNMALLOC, XMALLOC instead of xmalloc.
14432         * lib/gl_array_oset.c (gl_array_create_empty): Use XNMALLOC instead of
14433         xmalloc.
14434         * lib/gl_avltree_oset.c (gl_tree_add_first, gl_tree_add_before,
14435         gl_tree_add_after): Use XMALLOC instead of xmalloc.
14436         * lib/gl_carray_list.c (gl_carray_create_empty): Use XMALLOC instead of
14437         xmalloc.
14438         (gl_carray_create): Use XNMALLOC, XMALLOC instead of xmalloc.
14439         * lib/gl_rbtree_oset.c (gl_tree_add_first, gl_tree_add_before,
14440         gl_tree_add_after): Use XMALLOC instead of xmalloc.
14441         * lib/gl_sublist.c (gl_sublist_create): Use XMALLOC instead of xmalloc.
14442         * lib/pagealign_alloc.c (new_memnode): Use XMALLOC instead of xmalloc.
14443         * lib/sh-quote.c (shell_quote_argv): Use XNMALLOC instead of xmalloc.
14444         * lib/xvasprintf.c (xstrcat): Use XNMALLOC instead of xmalloc.
14445
14446 2006-11-03  Bruno Haible  <bruno@clisp.org>
14447
14448         * lib/c-ctype.h [C++]: Define functions without name mangling.
14449         * lib/fwriteerror.h [C++]: Likewise.
14450         * lib/gcd.h [C++]: Likewise.
14451         * lib/linebreak.h [C++]: Likewise.
14452
14453 2006-11-03  Paul Eggert  <eggert@cs.ucla.edu>
14454
14455         * lib/canonicalize.h: (canonicalize_mode_t, CAN_EXISTING):
14456         (CAN_ALL_BUT_LAST, CAN_MISSING, canonicalize_filename_mode):
14457         Define only if PROVIDE_CANONICALIZE_FILENAME_MODE is defined.
14458         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
14459         Check for functions and headers just once.
14460         Check for declaration of canonicalize_file_name.
14461         Define PROVIDE_CANONICALIZE_FILENAME_MODE.
14462
14463 2006-11-02  Charles Wilson  <cygwin@cwilson.fastmail.fm>
14464
14465         * gnulib-tool (func_import): Fix typo in actioncmd.
14466
14467 2006-11-02  Bruno Haible  <bruno@clisp.org>
14468
14469         * gnulib-tool (func_get_automake_snippet): Interpret a backslash-
14470         newline sequence in the Makefile.am snippet as a space, like "make"
14471         does.
14472         Reported by Roger Persson <perrog@gmail.com>.
14473
14474 2006-11-01  Bruno Haible  <bruno@clisp.org>
14475
14476         * m4/strcase.m4 (gl_FUNC_STRNCASECMP): Check whether strncasecmp is
14477         already declared in <string.h>.
14478         * lib/strcase.h (strncasecmp): Don't declare it if yes.
14479
14480 2006-11-01  Bruno Haible  <bruno@clisp.org>
14481
14482         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Don't define strcasecmp here.
14483         * lib/strcase.h: Include <string.h>.
14484         (strcasecmp): Define to rpl_strcasecmp here.
14485
14486 2006-11-01  Bruno Haible  <bruno@clisp.org>
14487
14488         * lib/printf-parse.c (PRINTF_PARSE): Cast malloc/realloc results.
14489
14490 2006-11-01  Eric Blake  <ebb9@byu.net>
14491
14492         * lib/mkstemp-safer.c (mkstemp_safer): Allow C++ compilation.
14493
14494         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Allow C++ configuration.
14495
14496 2006-10-29  Bruno Haible  <bruno@clisp.org>
14497
14498         Make it compile in C++ mode.
14499         * lib/full-write.c (full_rw): Add a cast.
14500
14501 2006-11-01  Bruno Haible  <bruno@clisp.org>
14502
14503         * gnulib-tool (func_get_automake_snippet): Change sed_combine_lines to
14504         be POSIX compliant.
14505         Reported by Roger Persson <perrog@gmail.com>.
14506
14507 2006-11-01  Eric Blake  <ebb9@byu.net>
14508
14509         * lib/getopt_.h: Fix comments.
14510
14511 2006-10-31  Eric Blake  <ebb9@byu.net>
14512
14513         * modules/tmpdir (Depends-on): Add sys_stat.
14514         * modules/mkdtemp (Depends-on): Add tempname, drop unistd.
14515         * lib/mkdtemp.c (gen_tempname): Remove; tempname covers this.
14516         * lib/tmpdir.c (S_ISDIR): Simplify, thanks to sys_stat.
14517         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Simplify, thanks to
14518         tempname.
14519
14520 2006-10-31  Paul Eggert  <eggert@cs.ucla.edu>
14521
14522         Avoid some C++ diagnostics reported by Bruno Haible.
14523         * lib/quotearg.c (clone_quoting_options): Use xmemdup rather than
14524         xmalloc.
14525         (quotearg_alloc): Use xcharalloc rather than xmalloc.
14526         (struct slotvec): Move to top level.
14527         (quotearg_n_options): Rewrite to avoid xmalloc.
14528         * lib/xalloc.h (xcharalloc): New function.
14529         * (xrealloc, xnrealloc, x2realloc, x2nrealloc, xmemdup):
14530         [defined __cplusplus]: Add function template that provides result
14531         type propagation.  This part of the change is from Bruno Haible.
14532
14533 2006-10-29  Bruno Haible  <bruno@clisp.org>
14534
14535         Make it compile in C++ mode.
14536         * lib/striconv.c (mem_cd_iconv): Cast malloc/realloc result.
14537         * lib/strnlen1.c (strnlen1): Cast memchr result.
14538         * lib/mbchar.h (mb_copy): Rename arguments to 'new_mbc', 'old_mbc'.
14539         * lib/clean-temp.c (string_equals, string_hash): Add casts.
14540         (create_temp_dir): Rename local variable 'template'.
14541         (compile_csharp_using_sscli): Add cast.
14542         * lib/fatal-signal.c (at_fatal_signal): Cast xmalloc result.
14543         * lib/findprog.c (find_in_path): Likewise.
14544         * lib/linebreak.c (mbs_width_linebreaks): Cast malloc result.
14545         * lib/wait-process.c (register_slave_subprocess): Likewise.
14546
14547 2006-10-22  Bruno Haible  <bruno@clisp.org>
14548
14549         * modules/tsearch: New file.
14550         * lib/tsearch.h: New file.
14551         * lib/tsearch.c: New file, from glibc-2.5 with small modifications.
14552         * m4/tsearch.m4: New file.
14553         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add tsearch.
14554
14555 2006-10-29  Eric Blake  <ebb9@byu.net>
14556
14557         * lib/arcfour.c: Assume config.h.
14558         * lib/arctwo.c: Likewise.
14559         * lib/base64.c: Likewise.
14560         * lib/check-version.c: Likewise.
14561         * lib/crc.c: Likewise.
14562         * lib/des.c: Likewise.
14563         * lib/gc-gnulib.c: Likewise.
14564         * lib/gc-libgcrypt.c: Likewise.
14565         * lib/gc-pbkdf2-sha1.c: Likewise.
14566         * lib/getaddrinfo.c: Likewise.
14567         * lib/getdelim.c: Likewise.
14568         * lib/getline.c: Likewise.
14569         * lib/hmac-md5.c: Likewise.
14570         * lib/hmac-sha1.c: Likewise.
14571         * lib/iconvme.c: Likewise.
14572         * lib/md2.c: Likewise.
14573         * lib/md4.c: Likewise.
14574         * lib/memxor.c: Likewise.
14575         * lib/read-file.c: Likewise.
14576         * lib/readline.c: Likewise.
14577         * lib/rijndael-alg-fst.c: Likewise.
14578         * lib/rijndael-api-fst.c: Likewise.
14579         * lib/xgetdomainname.c: Likewise.
14580
14581 2006-10-28  Eric Blake  <ebb9@byu.net>
14582
14583         * lib/xstrndup.c: Assume config.h.
14584
14585 2006-10-27  Paul Eggert  <eggert@cs.ucla.edu>
14586
14587         Move stat.h-substitute stuff from lib/stat-macros.h to lib/stat_.h.
14588         stat-macros.h is now for our own macros, whereas stat_h is for
14589         macros in the <sys/stat.h> name space.
14590         * lib/stat-macros.h: Remove copyright notice, as this file is now tiny.
14591         (STAT_MACROS_H): Remove.
14592         (S_IFMT, S_ISBLK, S_ISCHR, S_ISDIR, S_ISFIFO, S_ISLNK, S_ISNAM):
14593         (S_ISMPB, S_ISMPC, S_ISNWK, S_ISREG, S_ISSOCK, S_ISDOOR, S_ISPORT):
14594         (S_TYPEISMQ, S_TYPEISTMO, S_TYPEISSEM, S_TYPEISSHM, S_ISCTG, S_ISOFD):
14595         (S_ISOFL, S_ISWHT, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IRGRP):
14596         (S_IROTH, S_IWUSR, S_IWGRP, S_IWOTH, S_IXUSR, S_IXGRP, S_IXOTH):
14597         (S_IRWXU, S_IRWXG, S_IRWXO, S_IXUGO, S_IRWXUGO):
14598         Move these macros to ...
14599         * lib/stat_.h: here.  Don't include stat-macros.h.
14600         * lib/canonicalize.c: Don't include stat-macros.h.
14601         * lib/chown.c: Likewise.
14602         * lib/euidaccess.c: Likewise.
14603         * lib/file-type.c: Likewise.
14604         * lib/filemode.c: Likewise.
14605         * lib/glob.c: Likewise.
14606         * lib/isapipe.c: Likewise.
14607         * lib/lchown.c: Likewise.
14608         * lib/lstat.c: Likewise.
14609         * lib/mkdir-p.c: Likewise.
14610         * lib/rmdir.c: Likewise.
14611         * m4/lchown.m4 (gl_FUNC_LCHOWN): Don't require gl_STAT_MACROS.
14612         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Don't check for io.h
14613         unless mkdir isn't declared, to speed up 'configure'.
14614         Always create sys/stat.h, since it's unlikely any real sys/stat.h
14615         would define all the S_* symbols.
14616         * modules/canonicalize (Depends-on):
14617         Depend on sys_stat, not stat-macros.
14618         * modules/chown: Likewise.
14619         * modules/euidaccess: Likewise.
14620         * modules/filemode: Likewise.
14621         * modules/file-type: Likewise.
14622         * modules/glob: Likewise.
14623         * modules/isapipe: Likewise.
14624         * modules/lchown: Likewise.
14625         * modules/lstat: Likewise.
14626         * modules/mkancesdirs: Likewise.
14627         * modules/rmdir: Likewise.
14628         * modules/mkdir-p (Depends-on): Also depend on sys_stat.
14629         * modules/modechange: Likewise.
14630         * modules/stat-macros (Files): Remove m4/stat-macros.m4.
14631         (configure.ac): Remove gl_STAT_MACROS.
14632         * modules/sys_stat (Depends-on): Remove stat-macros.
14633
14634 2006-10-27  Bruno Haible  <bruno@clisp.org>
14635
14636         * m4/signed.m4: Remove file.
14637         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS_: Remove bh_C_SIGNED
14638         invocation.
14639         * modules/vasnprintf (Files): Remove m4/signed.m4.
14640
14641 2006-10-27  Bruno Haible  <bruno@clisp.org>
14642
14643         Update to GNU gettext 0.16.
14644         * modules/gettext (Files): Add m4/intl.m4, m4/intldir.m4. Remove
14645         m4/inttypes-h.m4, m4/signed.m4.
14646         * m4/gettext.m4: Update to GNU gettext 0.16.
14647         * m4/intl.m4: New file, from GNU gettext.
14648         * m4/intldir.m4: New file, from GNU gettext.
14649         * config/srclist.txt: Update
14650
14651 2006-10-27  Eric Blake  <ebb9@byu.net>
14652
14653         * MODULES.html.sh: Document tempname.
14654         * modules/mkstemp (Depends-on): Add tempname, and drop transitive
14655         dependencies.
14656         (Files): Move lib/tempname.c...
14657         * modules/tempname: ...to this new module.
14658         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Remove tempname checks.
14659         (gl_PREREQ_TEMPNAME): Move...
14660         * m4/tempname.m4: ...to this new file.
14661         * lib/mkstemp.c (includes) [!_LIBC]: Use tempname.h.
14662         * modules/sys_stat (Depends-on): Add stat-macros.
14663         * lib/stat_.h (includes): Pick up stat macros.
14664         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Replace <sys/stat.h>
14665         if stat macros are broken.
14666         * lib/tempname.c (includes): No need to include "stat-macros.h".
14667         (__gen_tempname) [!_LIBC]: Expose as gen_tempname.
14668         (direxists, __path_search) [!_LIBC]: Don't compile these in
14669         gnulib; the tmpdir module covers that.
14670         * lib/tempname.h: New file.
14671
14672 2006-10-26  Paul Eggert  <eggert@cs.ucla.edu>
14673
14674         * COPYING: Explain how gnulib-tool converts licence headers.
14675         Almost all wording by Eric Blake.
14676
14677 2006-10-25  Paul Eggert  <eggert@cs.ucla.edu>
14678
14679         * lib/mbchar.h (is_basic_table): Make read-only.
14680         * lib/mbchar.c (is_basic_table): Likewise.
14681         Reported by John Darrington.
14682
14683 2006-10-25  Bruno Haible  <bruno@clisp.org>
14684
14685         * lib/progname.h (set_program_name): Undefine before defining.
14686
14687 2006-10-25  Bruno Haible  <bruno@clisp.org>
14688
14689         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to
14690         false for non-gcc C++ compilers.
14691         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
14692
14693 2006-10-24  Bruno Haible  <bruno@clisp.org>
14694
14695         * lib/striconv.c (mem_cd_iconv, str_cd_iconv): Treat all non-GNU
14696         iconv implementations like Irix iconv.
14697
14698 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
14699
14700         * modules/vararrays: New file.
14701         * m4/vararrays.m4: New file, taken from diffutils.
14702         * MODULES.html.sh: New module vararrays.
14703
14704 2006-10-24  Karl Berry  <karl@gnu.org>
14705
14706         * doc/gnulib-intro.texi: --- instead of --; non-naive naive.
14707         Don't call GNU Unix.
14708
14709 2006-10-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14710
14711         * users.txt: Add Libtool.
14712
14713         Sync from Libtool:
14714
14715         2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
14716
14717         * lib/argz.c: Remove check for HAVE_CONFIG_H, to conform
14718         to gnulib's policy of including config.h unconditionally.
14719
14720 2006-10-24  Bruno Haible  <bruno@clisp.org>
14721
14722         * modules/wcwidth (Files): Add m4/wint_t.m4.
14723         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gt_TYPE_WINT_T.
14724         * lib/wcwidth.h (iswprint): Use 'int' if 'wint_t' is not defined.
14725
14726 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
14727
14728         * lib/getdate.y (yyerror): Make the arguments pointer-to-const,
14729         to pacify GCC with some -W flags enabled.  Problem reported by
14730         Bruno Haible.
14731
14732 2006-10-24  Jim Meyering  <jim@meyering.net>
14733
14734         * MODULES.html.sh: Remove uinttostr.  It's not a module.
14735         Reported by Karl Berry.
14736
14737 2006-10-23  Bruno Haible  <bruno@clisp.org>
14738
14739         * lib/fts.c (fts_build): Move variable declaration, for C89 compliance.
14740
14741 2006-10-24  Bruno Haible  <bruno@clisp.org>
14742
14743         * lib/gl_list.h: Use C comment style, not C++ comment style.
14744
14745 2006-10-23  Eric Blake  <ebb9@byu.net>
14746
14747         * lib/getaddrinfo.c (includes): Add missing include.
14748
14749 2006-10-23  Bruno Haible  <bruno@clisp.org>
14750             Paul Eggert  <eggert@cs.ucla.edu>
14751
14752         Ability to rename obstack_free.
14753         * lib/obstack.h (__obstack_free): New macro. Declare instead of
14754         obstack_free.
14755         (obstack_free): Invoke the __obstack_free macro.
14756         * lib/obstack.c (obstack_free): Use __obstack_free macro.
14757
14758 2006-10-23  Bruno Haible  <bruno@clisp.org>
14759             Paul Eggert  <eggert@cs.ucla.edu>
14760
14761         * lib/argp.h (argp_parse, __argp_parse): Comment out the identifiers
14762         __argc, __argv from the declaration. (They are defined as macros on
14763         mingw.)
14764
14765 2006-10-22  Bruno Haible  <bruno@clisp.org>
14766
14767         * doc/gnulib-intro.texi: New file.
14768         * doc/gnulib.texi: Include it.
14769
14770 2006-10-21  Bruno Haible  <bruno@clisp.org>
14771
14772         * doc/gnulib.texi: Split the chapter "Gnulib" into 3 chapters
14773         "Introduction", "Miscellanous Notes", "Particular Modules".
14774
14775 2006-10-21  Bruno Haible  <bruno@clisp.org>
14776
14777         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
14778         Change mostlyclean-local rule to avoid sh syntax error from bash
14779         versions 2.00..2.05 when $(MOSTLYCLEANDIRS) is empty.
14780
14781 2006-10-23  Jim Meyering  <jim@meyering.net>
14782
14783         * lib/getaddrinfo.c (getnameinfo): Use new lightweight uinttostr,
14784         in place of snprintf.
14785
14786         * modules/inttostr (Files): Add lib/uinttostr.c.
14787         * lib/uinttostr.c (inttostr): New file/function.
14788         * lib/inttostr.h (uinttostr): Declare.
14789         * m4/inttostr.m4: Add AC_LIBOBJ([uinttostr]).
14790         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
14791         Add uinttostr.
14792         * modules/getaddrinfo (Depends-on): Remove snprintf.  Add inttostr.
14793
14794 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
14795
14796         * lib/canonicalize.c (ELOOP): Define if not already defined.
14797         Problem reported by Bruno Haible in
14798         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00282.html>.
14799
14800 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
14801
14802         * lib/stdint_.h [defined _AIX]: Don't include <sys/types.h>.
14803         Problem reported by Perry Smith and Ville Laurikari.
14804
14805         * lib/getndelim2.c (SSIZE_MAX): Use same defn that getdelim.c
14806         uses.
14807
14808 2006-10-19  Bruno Haible  <bruno@clisp.org>
14809
14810         * lib/getndelim2.c (SSIZE_MAX): Provide fallback definition. Needed
14811         for mingw.
14812
14813 2006-10-19  Bruno Haible  <bruno@clisp.org>
14814
14815         * lib/openat-priv.h (EOPNOTSUPP): Provide fallback definition.
14816         Needed for mingw.
14817
14818 2006-10-19  Bruno Haible  <bruno@clisp.org>
14819
14820         * m4/size_max.m4 (gl_SIZE_MAX): Cache the result.
14821
14822 2006-10-19  Bruno Haible  <bruno@clisp.org>
14823
14824         * m4/allocsa.m4 (gl_ALLOCSA): Invoke gl_FUNC_ALLOCA, don't AC_REQUIRE
14825         it.
14826
14827 2006-10-19  Bruno Haible  <bruno@clisp.org>
14828
14829         * m4/alloca.m4 (gl_FUNC_ALLOCA): Cache the result of the AC_EGREP_CPP
14830         invocation.
14831
14832 2006-10-19  Bruno Haible  <bruno@clisp.org>
14833
14834         * gnulib-tool (func_create_testdir): Don't include ftruncate and
14835         mountlist by default.
14836
14837 2006-10-16  Bruno Haible  <bruno@clisp.org>
14838
14839         * lib/c-strstr.c: Include c-strstr.h.
14840
14841 2006-10-18  Charles Wilson  <cygwin@cwilson.fastmail.fm>
14842
14843         * gnulib-tool: Don't clobber $sourcebase when $local_gnulib_dir ends
14844         in a slash.
14845
14846 2006-10-18  Bruno Haible  <bruno@clisp.org>
14847
14848         * lib/lock.h [C++]: Wrap definitions in extern "C".
14849
14850 2006-10-18  Bruno Haible  <bruno@clisp.org>
14851
14852         * gnulib-tool (func_emit_initmacro_end): Remove duplicates from the
14853         gl_LIBOBJS list.
14854
14855 2006-10-18  Bruno Haible  <bruno@clisp.org>
14856
14857         * lib/findprog.c (find_in_path): Avoid "gcc -Wwrite-strings" warning.
14858
14859 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>
14860
14861         * lib/xstrtol.h: Include gettext.h.
14862         (_STRTOL_ERROR): Wrap English-language formats inside gettext.
14863         Problem reported by Eric Blake.
14864         * modules/xstrtol (Depends-on): Add gettext-h.
14865
14866 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>  (tiny change)
14867
14868         * lib/strftime.c (advance): New macro.
14869         (add): Use it to avoid adding 0 to a FILE *.  FILE can be an
14870         incomplete type, so you can't add 0 to it.  Problem and patch
14871         reported by Eelco Dolstra for dietlibc.
14872
14873 2006-10-18  Jim Meyering  <jim@meyering.net>
14874
14875         * lib/readutmp.c (desirable_utmp_entry): Use "bool" as the
14876         type for a local, and rename it: s/up/user_proc/.
14877
14878 2006-10-18  Sergey Poznyakoff  <gray@gnu.org.ua>
14879
14880         * lib/readutmp.c (desirable_utmp_entry): Implement new flag:
14881         READ_UTMP_USER_PROCESS.
14882         * lib/readutmp.h (READ_UTMP_USER_PROCESS): New flag
14883
14884 2006-10-17  Paul Eggert  <eggert@cs.ucla.edu>
14885
14886         * lib/localcharset.c: Do not check HAVE_SETLOCALE.
14887         * m4/localcharset.m4 (gl_LOCALCHARSET): Don't check for setlocale.
14888
14889 2006-10-17  Eric Blake  <ebb9@byu.net>
14890
14891         * lib/sigprocmask.c (sigprocmask): Fix typo.
14892
14893         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Fix typo.
14894
14895         * modules/clean-temp (Makefile.am): Don't add to make output...
14896         (configure.ac): ...instead define SIGNAL_SAFE_LIST inside
14897         config.h.
14898
14899 2006-10-17  Bruno Haible  <bruno@clisp.org>
14900
14901         * lib/gettext.h (gettext, ngettext, pgettext, npgettext): Define
14902         differently if DEFAULT_TEXT_DOMAIN is set.
14903
14904 2006-10-16  Bruno Haible  <bruno@clisp.org>
14905
14906         * lib/clean-temp.c: Include fwriteerror.h.
14907
14908 2006-10-16  Bruno Haible  <bruno@clisp.org>
14909
14910         * getndelim2.m4 (gl_GETNDELIM2): Remove 2003-10-23 hack.
14911
14912 2006-10-16  Bruno Haible  <bruno@clisp.org>
14913
14914         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Also test for sigset_t.
14915         * lib/sigprocmask.h: Include <sys/types.h>.
14916         (sigset_t): Use the system's definition if present.
14917
14918 2006-10-17  Eric Blake  <ebb9@byu.net>
14919
14920         * lib/xvasprintf.c (includes): Assume config.h.
14921         * lib/xasprintf.c (includes): Likewise.
14922
14923 2006-10-16  Paul Eggert  <eggert@cs.ucla.edu>
14924
14925         * lib/fsusage.c (PROPAGATE_ALL_ONES): Don't assume uintmax_t is
14926         at least as wide as intmax_t.
14927
14928 2006-10-16  Alexandre Duret-Lutz  <adl@gnu.org>
14929
14930         (Imported from Automake.)
14931         * build-aux/gnupload: Update to version 1.1 of directive file.
14932
14933 2006-10-16  Eric Blake  <ebb9@byu.net>
14934
14935         * modules/configmake (Makefile.am): Add pkglibexecdir support, to
14936         match Automake 1.10a.
14937
14938 2006-10-14  Bruno Haible  <bruno@clisp.org>
14939
14940         * modules/sigprocmask: New file.
14941         * lib/sigprocmask.h: New file.
14942         * lib/sigprocmask.c: New file.
14943         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Renamed from
14944         gt_SIGNALBLOCKING. When not defining HAVE_POSIX_SIGNALBLOCKING,
14945         request sigprocmask.o.
14946         (gl_PREREQ_SIGPROCMASK): New macro.
14947         * modules/fatal-signal (Files): Remove m4/signalblocking.m4.
14948         (Depends-on): Add sigprocmask.
14949         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Don't require
14950         gt_SIGNALBLOCKING. Test for 'raise' only once.
14951         * lib/fatal-signal.c: Include sigprocmask.h.
14952         (fatal_signal_set, init_fatal_signal_set, block_fatal_signals,
14953         unblock_fatal_signals): Define always.
14954         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
14955         sigprocmask.
14956
14957 2006-10-14  Paul Eggert  <eggert@cs.ucla.edu>
14958
14959         Sync from Automake.
14960         * build-aux/install-sh (posix_mkdir): Reject FreeBSD 6.1 mkdir -p -m,
14961         which incorrectly sets the mode of an existing destination
14962         directory.  In some cases the unpatched install-sh could do the
14963         equivalent of "chmod 777 /" or "chmod 0 /" on a buggy FreeBSD
14964         system.  We hope this is rare in practice, but it's clearly worth
14965         fixing.  Problem reported by Alex Unleashed in
14966         <http://lists.gnu.org/archive/html/bug-autoconf/2006-10/msg00012.html>.
14967         Also, don't bother to check for -m bugs unless we're using -m;
14968         suggested by Stepan Kasal.
14969
14970 2006-10-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14971
14972         Sync from Automake.
14973         * build-aux/depcomp (gcc3): Put dependency extraction flags before the
14974         `-c' flag, so they appear at the same position as in %FASTDEP%
14975         mode in depend2.am.  Fixes build failure for FreeBSD's c89,
14976         which ignores unknown options only after the first non-option.
14977         Bug report against M4 by Nelson H. F. Beebe.
14978
14979 2006-10-13  Jim Meyering  <jim@meyering.net>
14980
14981         Fix a bug in yesterday's change.
14982         * lib/fts.c (fts_open): When using FTS_XDEV|FTS_NOSTAT,
14983         p->fts_statp->st_dev would be used uninitialized.
14984         Ensures that we always call fts_stat on the very first entry.
14985         Miklos Szeredi reported that find -xdev stopped working.
14986
14987 2006-10-12  Bruno Haible  <bruno@clisp.org>
14988
14989         * gnulib-tool (func_get_automake_snippet): Append an automatically
14990         computed EXTRA_DIST augmentation.
14991         * modules/acl (Makefile.am): Remove EXTRA_DIST augmentation.
14992         * modules/alloca-opt (Makefile.am): Likewise.
14993         * modules/allocsa (Makefile.am): Likewise.
14994         * modules/arcfour (Makefile.am): Likewise.
14995         * modules/arctwo (Makefile.am): Likewise.
14996         * modules/argmatch (Makefile.am): Likewise.
14997         * modules/argz (Makefile.am): Likewise.
14998         * modules/atexit (Makefile.am): Likewise.
14999         * modules/backupfile (Makefile.am): Likewise.
15000         * modules/byteswap (Makefile.am): Likewise.
15001         * modules/c-strtod (Makefile.am): Likewise.
15002         * modules/c-strtold (Makefile.am): Likewise.
15003         * modules/calloc (Makefile.am): Likewise.
15004         * modules/canon-host (Makefile.am): Likewise.
15005         * modules/canonicalize (Makefile.am): Likewise.
15006         * modules/chdir-long (Makefile.am): Likewise.
15007         * modules/chdir-safer (Makefile.am): Likewise.
15008         * modules/check-version (Makefile.am): Likewise.
15009         * modules/chown (Makefile.am): Likewise.
15010         * modules/cloexec (Makefile.am): Likewise.
15011         * modules/close-stream (Makefile.am): Likewise.
15012         * modules/closeout (Makefile.am): Likewise.
15013         * modules/crc (Makefile.am): Likewise.
15014         * modules/csharpexec (Makefile.am): Likewise.
15015         * modules/cycle-check (Makefile.am): Likewise.
15016         * modules/des (Makefile.am): Likewise.
15017         * modules/dev-ino (Makefile.am): Likewise.
15018         * modules/dirfd (Makefile.am): Likewise.
15019         * modules/dirname (Makefile.am): Likewise.
15020         * modules/dup2 (Makefile.am): Likewise.
15021         * modules/eealloc (Makefile.am): Likewise.
15022         * modules/error (Makefile.am): Likewise.
15023         * modules/euidaccess (Makefile.am): Likewise.
15024         * modules/exclude (Makefile.am): Likewise.
15025         * modules/exitfail (Makefile.am): Likewise.
15026         * modules/fcntl-safer (Makefile.am): Likewise.
15027         * modules/fcntl (Makefile.am): Likewise.
15028         * modules/file-type (Makefile.am): Likewise.
15029         * modules/fileblocks (Makefile.am): Likewise.
15030         * modules/filemode (Makefile.am): Likewise.
15031         * modules/filenamecat (Makefile.am): Likewise.
15032         * modules/fnmatch (Makefile.am): Likewise.
15033         * modules/fopen-safer (Makefile.am): Likewise.
15034         * modules/fpending (Makefile.am): Likewise.
15035         * modules/fprintftime (Makefile.am): Likewise.
15036         * modules/free (Makefile.am): Likewise.
15037         * modules/fsusage (Makefile.am): Likewise.
15038         * modules/ftruncate (Makefile.am): Likewise.
15039         * modules/fts (Makefile.am): Likewise.
15040         * modules/gc-arcfour (Makefile.am): Likewise.
15041         * modules/gc-des (Makefile.am): Likewise.
15042         * modules/gc-hmac-md5 (Makefile.am): Likewise.
15043         * modules/gc-hmac-sha1 (Makefile.am): Likewise.
15044         * modules/gc-md4 (Makefile.am): Likewise.
15045         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
15046         * modules/gc-sha1 (Makefile.am): Likewise.
15047         * modules/gc (Makefile.am): Likewise.
15048         * modules/getaddrinfo (Makefile.am): Likewise.
15049         * modules/getcwd (Makefile.am): Likewise.
15050         * modules/getdelim (Makefile.am): Likewise.
15051         * modules/getdomainname (Makefile.am): Likewise.
15052         * modules/getgroups (Makefile.am): Likewise.
15053         * modules/gethostname (Makefile.am): Likewise.
15054         * modules/gethrxtime (Makefile.am): Likewise.
15055         * modules/getline (Makefile.am): Likewise.
15056         * modules/getloadavg (Makefile.am): Likewise.
15057         * modules/getlogin_r (Makefile.am): Likewise.
15058         * modules/getndelim2 (Makefile.am): Likewise.
15059         * modules/getopt (Makefile.am): Likewise.
15060         * modules/getpagesize (Makefile.am): Likewise.
15061         * modules/getpass-gnu (Makefile.am): Likewise.
15062         * modules/getpass (Makefile.am): Likewise.
15063         * modules/getsubopt (Makefile.am): Likewise.
15064         * modules/gettime (Makefile.am): Likewise.
15065         * modules/gettimeofday (Makefile.am): Likewise.
15066         * modules/getugroups (Makefile.am): Likewise.
15067         * modules/getusershell (Makefile.am): Likewise.
15068         * modules/glob (Makefile.am): Likewise.
15069         * modules/group-member (Makefile.am): Likewise.
15070         * modules/hard-locale (Makefile.am): Likewise.
15071         * modules/hash (Makefile.am): Likewise.
15072         * modules/hmac-md5 (Makefile.am): Likewise.
15073         * modules/hmac-sha1 (Makefile.am): Likewise.
15074         * modules/human (Makefile.am): Likewise.
15075         * modules/idcache (Makefile.am): Likewise.
15076         * modules/imaxabs (Makefile.am): Likewise.
15077         * modules/imaxdiv (Makefile.am): Likewise.
15078         * modules/inet_ntop (Makefile.am): Likewise.
15079         * modules/inet_pton (Makefile.am): Likewise.
15080         * modules/intprops (Makefile.am): Likewise.
15081         * modules/inttostr (Makefile.am): Likewise.
15082         * modules/inttypes (Makefile.am): Likewise.
15083         * modules/isapipe (Makefile.am): Likewise.
15084         * modules/javaversion (Makefile.am): Likewise.
15085         * modules/lchmod (Makefile.am): Likewise.
15086         * modules/lchown (Makefile.am): Likewise.
15087         * modules/localcharset (Makefile.am): Likewise.
15088         * modules/long-options (Makefile.am): Likewise.
15089         * modules/lstat (Makefile.am): Likewise.
15090         * modules/malloc (Makefile.am): Likewise.
15091         * modules/mathl (Makefile.am): Likewise.
15092         * modules/mbchar (Makefile.am): Likewise.
15093         * modules/md2 (Makefile.am): Likewise.
15094         * modules/md4 (Makefile.am): Likewise.
15095         * modules/md5 (Makefile.am): Likewise.
15096         * modules/memcasecmp (Makefile.am): Likewise.
15097         * modules/memchr (Makefile.am): Likewise.
15098         * modules/memcmp (Makefile.am): Likewise.
15099         * modules/memcoll (Makefile.am): Likewise.
15100         * modules/memcpy (Makefile.am): Likewise.
15101         * modules/memmem (Makefile.am): Likewise.
15102         * modules/memmove (Makefile.am): Likewise.
15103         * modules/mempcpy (Makefile.am): Likewise.
15104         * modules/memrchr (Makefile.am): Likewise.
15105         * modules/memset (Makefile.am): Likewise.
15106         * modules/memxor (Makefile.am): Likewise.
15107         * modules/mkancesdirs (Makefile.am): Likewise.
15108         * modules/mkdir-p (Makefile.am): Likewise.
15109         * modules/mkdir (Makefile.am): Likewise.
15110         * modules/mkdtemp (Makefile.am): Likewise.
15111         * modules/mkstemp (Makefile.am): Likewise.
15112         * modules/mktime (Makefile.am): Likewise.
15113         * modules/modechange (Makefile.am): Likewise.
15114         * modules/mountlist (Makefile.am): Likewise.
15115         * modules/nanosleep (Makefile.am): Likewise.
15116         * modules/obstack (Makefile.am): Likewise.
15117         * modules/openat (Makefile.am): Likewise.
15118         * modules/pagealign_alloc (Makefile.am): Likewise.
15119         * modules/pathmax (Makefile.am): Likewise.
15120         * modules/physmem (Makefile.am): Likewise.
15121         * modules/poll (Makefile.am): Likewise.
15122         * modules/posixtm (Makefile.am): Likewise.
15123         * modules/posixver (Makefile.am): Likewise.
15124         * modules/putenv (Makefile.am): Likewise.
15125         * modules/quote (Makefile.am): Likewise.
15126         * modules/quotearg (Makefile.am): Likewise.
15127         * modules/raise (Makefile.am): Likewise.
15128         * modules/read-file (Makefile.am): Likewise.
15129         * modules/readline (Makefile.am): Likewise.
15130         * modules/readlink (Makefile.am): Likewise.
15131         * modules/readtokens (Makefile.am): Likewise.
15132         * modules/readutmp (Makefile.am): Likewise.
15133         * modules/realloc (Makefile.am): Likewise.
15134         * modules/regex (Makefile.am): Likewise.
15135         * modules/rename-dest-slash (Makefile.am): Likewise.
15136         * modules/rename (Makefile.am): Likewise.
15137         * modules/rijndael (Makefile.am): Likewise.
15138         * modules/rmdir (Makefile.am): Likewise.
15139         * modules/rpmatch (Makefile.am): Likewise.
15140         * modules/safe-read (Makefile.am): Likewise.
15141         * modules/safe-write (Makefile.am): Likewise.
15142         * modules/same-inode (Makefile.am): Likewise.
15143         * modules/same (Makefile.am): Likewise.
15144         * modules/save-cwd (Makefile.am): Likewise.
15145         * modules/savedir (Makefile.am): Likewise.
15146         * modules/setenv (Makefile.am): Likewise.
15147         * modules/settime (Makefile.am): Likewise.
15148         * modules/sha1 (Makefile.am): Likewise.
15149         * modules/sig2str (Makefile.am): Likewise.
15150         * modules/snprintf (Makefile.am): Likewise.
15151         * modules/stat-macros (Makefile.am): Likewise.
15152         * modules/stat-time (Makefile.am): Likewise.
15153         * modules/stdbool (Makefile.am): Likewise.
15154         * modules/stdint (Makefile.am): Likewise.
15155         * modules/stdlib-safer (Makefile.am): Likewise.
15156         * modules/stpcpy (Makefile.am): Likewise.
15157         * modules/stpncpy (Makefile.am): Likewise.
15158         * modules/strcase (Makefile.am): Likewise.
15159         * modules/strcasestr (Makefile.am): Likewise.
15160         * modules/strchrnul (Makefile.am): Likewise.
15161         * modules/strcspn (Makefile.am): Likewise.
15162         * modules/strdup (Makefile.am): Likewise.
15163         * modules/strerror (Makefile.am): Likewise.
15164         * modules/strftime (Makefile.am): Likewise.
15165         * modules/strndup (Makefile.am): Likewise.
15166         * modules/strnlen (Makefile.am): Likewise.
15167         * modules/strpbrk (Makefile.am): Likewise.
15168         * modules/strsep (Makefile.am): Likewise.
15169         * modules/strstr (Makefile.am): Likewise.
15170         * modules/strtod (Makefile.am): Likewise.
15171         * modules/strtoimax (Makefile.am): Likewise.
15172         * modules/strtok_r (Makefile.am): Likewise.
15173         * modules/strtol (Makefile.am): Likewise.
15174         * modules/strtoll (Makefile.am): Likewise.
15175         * modules/strtoul (Makefile.am): Likewise.
15176         * modules/strtoull (Makefile.am): Likewise.
15177         * modules/strtoumax (Makefile.am): Likewise.
15178         * modules/strverscmp (Makefile.am): Likewise.
15179         * modules/sys_socket (Makefile.am): Likewise.
15180         * modules/sys_stat (Makefile.am): Likewise.
15181         * modules/sysexits (Makefile.am): Likewise.
15182         * modules/time_r (Makefile.am): Likewise.
15183         * modules/timegm (Makefile.am): Likewise.
15184         * modules/timespec (Makefile.am): Likewise.
15185         * modules/tmpfile-safer (Makefile.am): Likewise.
15186         * modules/trim (Makefile.am): Likewise.
15187         * modules/unistd-safer (Makefile.am): Likewise.
15188         * modules/unlinkdir (Makefile.am): Likewise.
15189         * modules/unlocked-io (Makefile.am): Likewise.
15190         * modules/userspec (Makefile.am): Likewise.
15191         * modules/utime (Makefile.am): Likewise.
15192         * modules/utimecmp (Makefile.am): Likewise.
15193         * modules/utimens (Makefile.am): Likewise.
15194         * modules/vasnprintf (Makefile.am): Likewise.
15195         * modules/vasprintf (Makefile.am): Likewise.
15196         * modules/vsnprintf (Makefile.am): Likewise.
15197         * modules/xalloc (Makefile.am): Likewise.
15198         * modules/xgetcwd (Makefile.am): Likewise.
15199         * modules/xnanosleep (Makefile.am): Likewise.
15200         * modules/xreadlink (Makefile.am): Likewise.
15201         * modules/xstrtod (Makefile.am): Likewise.
15202         * modules/xstrtol (Makefile.am): Likewise.
15203         * modules/xstrtold (Makefile.am): Likewise.
15204         * modules/yesno (Makefile.am): Likewise.
15205         * modules/getdate (Makefile.am): Don't add getdate.h to EXTRA_DIST.
15206
15207 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
15208
15209         * modules/error (Makefile.am): Distribute files through
15210         EXTRA_DIST, not lib_SOURCES.
15211
15212 2006-10-12  Eric Blake  <ebb9@byu.net>
15213
15214         * modules/error (Makefile.am): Distribute files in /lib.
15215         * modules/obstack (Makefile.am): Likewise.
15216
15217 2006-10-12  Bruno Haible  <bruno@clisp.org>
15218
15219         * modules/acl (Makefile.am): Distribute all files in lib/ through
15220         EXTRA_DIST.
15221         * modules/arcfour (Makefile.am): Likewise.
15222         * modules/arctwo (Makefile.am): Likewise.
15223         * modules/argmatch (Makefile.am): Likewise.
15224         * modules/argz (Makefile.am): Likewise.
15225         * modules/atexit (Makefile.am): Likewise.
15226         * modules/backupfile (Makefile.am): Likewise.
15227         * modules/c-strtod (Makefile.am): Likewise.
15228         * modules/c-strtold (Makefile.am): Likewise.
15229         * modules/calloc (Makefile.am): Likewise.
15230         * modules/canon-host (Makefile.am): Likewise.
15231         * modules/canonicalize (Makefile.am): Likewise.
15232         * modules/chdir-long (Makefile.am): Likewise.
15233         * modules/chdir-safer (Makefile.am): Likewise.
15234         * modules/check-version (Makefile.am): Likewise.
15235         * modules/chown (Makefile.am): Likewise.
15236         * modules/cloexec (Makefile.am): Likewise.
15237         * modules/close-stream (Makefile.am): Likewise.
15238         * modules/closeout (Makefile.am): Likewise.
15239         * modules/crc (Makefile.am): Likewise.
15240         * modules/cycle-check (Makefile.am): Likewise.
15241         * modules/des (Makefile.am): Likewise.
15242         * modules/dirfd (Makefile.am): Likewise.
15243         * modules/dirname (Makefile.am): Likewise.
15244         * modules/dup2 (Makefile.am): Likewise.
15245         * modules/euidaccess (Makefile.am): Likewise.
15246         * modules/exclude (Makefile.am): Likewise.
15247         * modules/exitfail (Makefile.am): Likewise.
15248         * modules/fcntl-safer (Makefile.am): Likewise.
15249         * modules/file-type (Makefile.am): Likewise.
15250         * modules/fileblocks (Makefile.am): Likewise.
15251         * modules/filemode (Makefile.am): Likewise.
15252         * modules/filenamecat (Makefile.am): Likewise.
15253         * modules/fnmatch (Makefile.am): Likewise.
15254         * modules/fopen-safer (Makefile.am): Likewise.
15255         * modules/fpending (Makefile.am): Likewise.
15256         * modules/fprintftime (Makefile.am): Likewise.
15257         * modules/free (Makefile.am): Likewise.
15258         * modules/fsusage (Makefile.am): Likewise.
15259         * modules/ftruncate (Makefile.am): Likewise.
15260         * modules/fts (Makefile.am): Likewise.
15261         * modules/gc (Makefile.am): Likewise.
15262         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
15263         * modules/getaddrinfo (Makefile.am): Likewise.
15264         * modules/getcwd (Makefile.am): Likewise.
15265         * modules/getdelim (Makefile.am): Likewise.
15266         * modules/getdomainname (Makefile.am): Likewise.
15267         * modules/getgroups (Makefile.am): Likewise.
15268         * modules/gethostname (Makefile.am): Likewise.
15269         * modules/gethrxtime (Makefile.am): Likewise.
15270         * modules/getline (Makefile.am): Likewise.
15271         * modules/getloadavg (Makefile.am): Likewise.
15272         * modules/getlogin_r (Makefile.am): Likewise.
15273         * modules/getopt (Makefile.am): Likewise.
15274         * modules/getpass (Makefile.am): Likewise.
15275         * modules/getpass-gnu (Makefile.am): Likewise.
15276         * modules/getsubopt (Makefile.am): Likewise.
15277         * modules/gettime (Makefile.am): Likewise.
15278         * modules/gettimeofday (Makefile.am): Likewise.
15279         * modules/getugroups (Makefile.am): Likewise.
15280         * modules/getusershell (Makefile.am): Likewise.
15281         * modules/glob (Makefile.am): Likewise.
15282         * modules/group-member (Makefile.am): Likewise.
15283         * modules/hard-locale (Makefile.am): Likewise.
15284         * modules/hash (Makefile.am): Likewise.
15285         * modules/hmac-md5 (Makefile.am): Likewise.
15286         * modules/hmac-sha1 (Makefile.am): Likewise.
15287         * modules/human (Makefile.am): Likewise.
15288         * modules/idcache (Makefile.am): Likewise.
15289         * modules/imaxabs (Makefile.am): Likewise.
15290         * modules/imaxdiv (Makefile.am): Likewise.
15291         * modules/inet_ntop (Makefile.am): Likewise.
15292         * modules/inet_pton (Makefile.am): Likewise.
15293         * modules/inttostr (Makefile.am): Likewise.
15294         * modules/isapipe (Makefile.am): Likewise.
15295         * modules/lchown (Makefile.am): Likewise.
15296         * modules/long-options (Makefile.am): Likewise.
15297         * modules/lstat (Makefile.am): Likewise.
15298         * modules/malloc (Makefile.am): Likewise.
15299         * modules/mathl (Makefile.am): Likewise.
15300         * modules/mbchar (Makefile.am): Likewise.
15301         * modules/md2 (Makefile.am): Likewise.
15302         * modules/md4 (Makefile.am): Likewise.
15303         * modules/md5 (Makefile.am): Likewise.
15304         * modules/memcasecmp (Makefile.am): Likewise.
15305         * modules/memchr (Makefile.am): Likewise.
15306         * modules/memcmp (Makefile.am): Likewise.
15307         * modules/memcoll (Makefile.am): Likewise.
15308         * modules/memcpy (Makefile.am): Likewise.
15309         * modules/memmem (Makefile.am): Likewise.
15310         * modules/memmove (Makefile.am): Likewise.
15311         * modules/mempcpy (Makefile.am): Likewise.
15312         * modules/memrchr (Makefile.am): Likewise.
15313         * modules/memset (Makefile.am): Likewise.
15314         * modules/memxor (Makefile.am): Likewise.
15315         * modules/mkancesdirs (Makefile.am): Likewise.
15316         * modules/mkdir (Makefile.am): Likewise.
15317         * modules/mkdir-p (Makefile.am): Likewise.
15318         * modules/mkdtemp (Makefile.am): Likewise.
15319         * modules/mkstemp (Makefile.am): Likewise.
15320         * modules/mktime (Makefile.am): Likewise.
15321         * modules/modechange (Makefile.am): Likewise.
15322         * modules/mountlist (Makefile.am): Likewise.
15323         * modules/nanosleep (Makefile.am): Likewise.
15324         * modules/openat (Makefile.am): Likewise.
15325         * modules/pagealign_alloc (Makefile.am): Likewise.
15326         * modules/physmem (Makefile.am): Likewise.
15327         * modules/poll (Makefile.am): Likewise.
15328         * modules/posixtm (Makefile.am): Likewise.
15329         * modules/posixver (Makefile.am): Likewise.
15330         * modules/putenv (Makefile.am): Likewise.
15331         * modules/quote (Makefile.am): Likewise.
15332         * modules/quotearg (Makefile.am): Likewise.
15333         * modules/raise (Makefile.am): Likewise.
15334         * modules/read-file (Makefile.am): Likewise.
15335         * modules/readline (Makefile.am): Likewise.
15336         * modules/readlink (Makefile.am): Likewise.
15337         * modules/readtokens (Makefile.am): Likewise.
15338         * modules/readutmp (Makefile.am): Likewise.
15339         * modules/realloc (Makefile.am): Likewise.
15340         * modules/regex (Makefile.am): Likewise.
15341         * modules/rename (Makefile.am): Likewise.
15342         * modules/rename-dest-slash (Makefile.am): Likewise.
15343         * modules/rijndael (Makefile.am): Likewise.
15344         * modules/rmdir (Makefile.am): Likewise.
15345         * modules/rpmatch (Makefile.am): Likewise.
15346         * modules/safe-read (Makefile.am): Likewise.
15347         * modules/safe-write (Makefile.am): Likewise.
15348         * modules/same (Makefile.am): Likewise.
15349         * modules/save-cwd (Makefile.am): Likewise.
15350         * modules/savedir (Makefile.am): Likewise.
15351         * modules/setenv (Makefile.am): Likewise.
15352         * modules/settime (Makefile.am): Likewise.
15353         * modules/sha1 (Makefile.am): Likewise.
15354         * modules/sig2str (Makefile.am): Likewise.
15355         * modules/snprintf (Makefile.am): Likewise.
15356         * modules/stdlib-safer (Makefile.am): Likewise.
15357         * modules/stpcpy (Makefile.am): Likewise.
15358         * modules/stpncpy (Makefile.am): Likewise.
15359         * modules/strcase (Makefile.am): Likewise.
15360         * modules/strcasestr (Makefile.am): Likewise.
15361         * modules/strchrnul (Makefile.am): Likewise.
15362         * modules/strcspn (Makefile.am): Likewise.
15363         * modules/strdup (Makefile.am): Likewise.
15364         * modules/strerror (Makefile.am): Likewise.
15365         * modules/strftime (Makefile.am): Likewise.
15366         * modules/strndup (Makefile.am): Likewise.
15367         * modules/strnlen (Makefile.am): Likewise.
15368         * modules/strpbrk (Makefile.am): Likewise.
15369         * modules/strsep (Makefile.am): Likewise.
15370         * modules/strstr (Makefile.am): Likewise.
15371         * modules/strtod (Makefile.am): Likewise.
15372         * modules/strtoimax (Makefile.am): Likewise.
15373         * modules/strtok_r (Makefile.am): Likewise.
15374         * modules/strtol (Makefile.am): Likewise.
15375         * modules/strtoll (Makefile.am): Likewise.
15376         * modules/strtoul (Makefile.am): Likewise.
15377         * modules/strtoull (Makefile.am): Likewise.
15378         * modules/strtoumax (Makefile.am): Likewise.
15379         * modules/strverscmp (Makefile.am): Likewise.
15380         * modules/time_r (Makefile.am): Likewise.
15381         * modules/timegm (Makefile.am): Likewise.
15382         * modules/tmpfile-safer (Makefile.am): Likewise.
15383         * modules/unistd-safer (Makefile.am): Likewise.
15384         * modules/unlinkdir (Makefile.am): Likewise.
15385         * modules/userspec (Makefile.am): Likewise.
15386         * modules/utime (Makefile.am): Likewise.
15387         * modules/utimecmp (Makefile.am): Likewise.
15388         * modules/utimens (Makefile.am): Likewise.
15389         * modules/vasnprintf (Makefile.am): Likewise.
15390         * modules/vasprintf (Makefile.am): Likewise.
15391         * modules/vsnprintf (Makefile.am): Likewise.
15392         * modules/xalloc (Makefile.am): Likewise.
15393         * modules/xgetcwd (Makefile.am): Likewise.
15394         * modules/xnanosleep (Makefile.am): Likewise.
15395         * modules/xreadlink (Makefile.am): Likewise.
15396         * modules/xstrtod (Makefile.am): Likewise.
15397         * modules/xstrtol (Makefile.am): Likewise.
15398         * modules/xstrtold (Makefile.am): Likewise.
15399         * modules/yesno (Makefile.am): Likewise.
15400
15401 2006-10-12  Jim Meyering  <jim@meyering.net>
15402
15403         * m4/getloadavg.m4: Revert the change below.
15404
15405         * m4/getloadavg.m4 (gl_GETLOADAVG): Test for the existence of
15406         lib/getloadavg.c using "ls -L", not "test -f".  The latter would
15407         fail with a symlink, which is what coreutils' ./bootstrap now
15408         creates by default.
15409
15410 2006-10-12  Bruno Haible  <bruno@clisp.org>
15411
15412         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): Don't define for MSVC or
15413         mingw.
15414         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX): Handle
15415         MSVC and mingw explicitly.
15416
15417 2006-10-11  Simon Josefsson  <jas@extundo.com>
15418             Bruno Haible  <bruno@clisp.org>
15419
15420         Add support for multiple gnulib-tool invocations in the scope of a
15421         single configure.ac file.
15422         * gnulib-tool (func_emit_lib_Makefile_am): In the _LIBADD variable,
15423         use a private [LT]LIBOBJS variant. Define a _DEPENDENCIES variable
15424         with the same contents as the _LIBADD variable.
15425         (func_emit_initmacro_start, func_emit_initmacro_end,
15426         func_emit_initmacro_done): New functions.
15427         (func_import, func_create_testdir): Invoke them. Allow the identifiers
15428         gl_LIBOBJS and gl_LTLIBOBJS.
15429
15430 2006-10-11  Bruno Haible  <bruno@clisp.org>
15431
15432         * gnulib-tool (GETTEXTPATH, AUTOHEADER, AUTOPOINT): New variables.
15433         (func_create_testdir): Don't create po/Makefile.am, don't invoke
15434         autoreconf. Instead, invoke autopoint explicitly but move back the
15435         *.m4 files from gnulib.
15436
15437 2006-10-11  Bruno Haible  <bruno@clisp.org>
15438
15439         * gnulib-tool (func_usage): Make module names after --create-testdir
15440         optional.
15441         (func_create_testdir): If no module was specified, use nearly all
15442         modules.
15443
15444 2006-10-12  Jim Meyering  <jim@meyering.net>
15445
15446         Big performance improvement for fts-based tools that use FTS_NOSTAT.
15447         Avoid spurious inode-mismatch problems on non-POSIX file systems.
15448         Details: http://article.gmane.org/gmane.comp.lib.gnulib.bugs/7416
15449         * lib/fts_.h (FTS_DEFER_STAT): Define new flag.
15450         (FTS_OPTIONMASK): Extend the mask to reflect this addition.
15451         * lib/fts.c (DT_IS_KNOWN, DT_MUST_BE): Define.
15452         (FTS_NO_STAT_REQUIRED, FTS_STAT_REQUIRED): Define.
15453         (fts_set_stat_required): New function.
15454         (fts_open): Defer the calls to fts_stat, if possible or requested.
15455         Move the code that maps a command-line fts_info value FTS_DOT to FTS_D
15456         into fts_stat itself.
15457         (fts_read): Perform any required (deferred) fts_stat call.
15458         (fts_build): Likewise, for the directory we're about to open and read.
15459         In the readdir loop, carefully decide whether each entry will require
15460         an eventual call to fts_stat, using dirent.d_type info if available.
15461         (fts_stat): Move the test for whether to honor FTS_COMFOLLOW on
15462         a command line argument into this function.  Update all callers.
15463         Map a return value of FTS_DOT to FTS_D for a command line argument.
15464         * modules/fts (Depends-on): Add d-type.  Alphabetize.
15465         Thanks to Miklos Szeredi for his tenacity and for the initial
15466         bug report about "find" failing on a FUSE-based file system.
15467
15468         * lib/fts.c (fts_open): Use consistent indentation.
15469
15470 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
15471
15472         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Renamed from
15473         gl_USE_SYSTEM_EXTENSIONS, to fix a coreutils bootstrap failure
15474         reported by Jim Meyering.  All uses of cache variables renamed
15475         to match Autoconf's.
15476         (gl_USE_SYSTEM_EXTENSIONS): New macro, which simply requires
15477         the other one.
15478
15479         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH):
15480         Fix misspelling in diagnostic.
15481
15482 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
15483
15484         * lib/mkdir-p.c (HAVE_FCHMOD): Define to false if not already
15485         defined.  Problem reported by Matthew Woehlke.
15486
15487         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): New macro.
15488         Add support for Tandem NonStop R series.
15489         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX):
15490         Use new macro.
15491
15492         * lib/rename-dest-slash.c: Include stdbool.h but not string.h.
15493         (has_trailing_slash): Omit size arg; all callers changed.
15494         Omit 'inline', since it doesn't help performance and we'd
15495         need to configure it.
15496         Don't count //, ///, etc. as having a trailing slash.
15497         As a side effect, this removes a C99ism reported by Matthew Woehlke.
15498         (rpl_rename_dest_slash): On failure, use rename's errno rather
15499         than (in some cases) an incorrect or junk errno.
15500         Simplify code by removing need to compute length; this does
15501         cause it to make two passes instead of one over the file name,
15502         but it's worth it.
15503
15504         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Undo previous
15505         change, since Autoconf's version may no longer be appropriate now
15506         that we are using CVS Autoconf's version.  Add support for Tandem.
15507
15508 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
15509             Bruno Haible  <bruno@clisp.org>
15510
15511         * lib/allocsa.h (sa_alignment_longlong, sa_alignment_max): Test
15512         HAVE_LONG_LONG_INT instead of HAVE_LONG_LONG.
15513         * m4/allocsa.m4 (gl_ALLOCSA): Invoke AC_TYPE_LONG_LONG_INT instead of
15514         gl_AC_TYPE_LONG_LONG.
15515
15516         * lib/printf-args.h (arg_type, argument): Test HAVE_LONG_LONG_INT
15517         instead of HAVE_LONG_LONG.
15518         * lib/printf-args.c (printf_fetchargs): Likewise.
15519         * lib/printf-parse.c (PRINTF_PARSE): Likewise.
15520         * lib/vasnprintf.c (VASNPRINTF): Likewise.
15521         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS, gl_PREREQ_PRINTF_PARSE,
15522         gl_PREREQ_VASNPRINTF): Invoke AC_TYPE_LONG_LONG_INT instead of
15523         gl_AC_TYPE_LONG_LONG.
15524
15525 2006-10-11  Bruno Haible  <bruno@clisp.org>
15526
15527         * m4/longlong.m4: Add comments.
15528         * m4/ulonglong.m4: Likewise.
15529
15530 2006-10-10  Bruno Haible  <bruno@clisp.org>
15531
15532         Make it possible to #define stpcpy, strdup to aliases.
15533         * lib/stpcpy.c (stpcpy) [!_LIBC]: Don't undefine.
15534         * lib/strdup.c (strdup) [!_LIBC]: Don't undefine.
15535
15536 2006-10-10  Bruno Haible  <bruno@clisp.org>
15537
15538         Make it possible to #define gcd to an alias.
15539         * lib/gcd.c: Include config.h.
15540
15541 2006-10-10  Bruno Haible  <bruno@clisp.org>
15542
15543         Make it possible to #define c_isascii to an alias.
15544         * lib/c-ctype.h: Don't define the macros if NO_C_CTYPE_MACROS is
15545         defined. Undefine the macros before defining them, to avoid gcc
15546         warnings.
15547         * lib/c-ctype.c: Include config.h. Don't undefine the macros; instead,
15548         define NO_C_CTYPE_MACROS early.
15549
15550 2006-10-10  Bruno Haible  <bruno@clisp.org>
15551
15552         Make it possible to #define set_program_name to an alias.
15553         * lib/progname.c: Don't undefine set_program_name; instead, undefine
15554         ENABLE_RELOCATABLE early.
15555
15556 2006-10-10  Paul Eggert  <eggert@cs.ucla.edu>
15557
15558         Port to Tandem NSK OSS, which has 64-bit signed int but at most
15559         32-bit unsigned int.  Problem reported by Matthew Woehlke in:
15560         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00062.html
15561         More generally, don't assume that 64-bit signed int is available
15562         if unsigned int is, and vice versa.
15563         * lib/inttypes_.h (_PRIu64_PREFIX, _SCNu64_PREFIX): Depend on
15564         unsigned symbols, not on their signed counterparts.
15565         * lib/stdint_.h (uint64_t, uint_least64_t, uint_fast64_t, uintmax_t):
15566         (UINT64_MAX, UINT_LEAST64_MAX, UINT_FAST64_MAX, UINTMAX_MAX):
15567         (UINT64_C, UINTMAX_C):
15568         Likewise.
15569         * lib/strtoimax.c (strtoll): Depend on signed symbols, not their
15570         unsigned counterparts.
15571         (Have_long_long, Unsigned): New macros.
15572         (Int): Renamed from INT.
15573         (strtoimax): Use the new macros.
15574         * m4/stdint.m4 (gl_STDINT_H): Require AC_TYPE_UNSIGNED_LONG_LONG_INT
15575         and substitute HAVE_UNSIGNED_LONG_LONG_INT.
15576         * modules/inttypes (inttypes.h): Substitute
15577         HAVE_UNSIGNED_LONG_LONG_INT.
15578         * modules/stdint (stdint.h): Likewise.
15579         (Files): Add m4/ulonglong.m4.
15580
15581 2006-10-10  Bruno Haible  <bruno@clisp.org>
15582
15583         Fix a gcc -Wshadow warning.
15584         * lib/gl_anyhash_list2.h (hash_resize): Rename local variable 'index'
15585         to 'bucket'.
15586         * lib/gl_anylinked_list2.h (gl_linked_search_from_to,
15587         gl_linked_indexof_from_to): Likewise.
15588         * lib/gl_linkedhash_list.c (add_to_bucket, remove_from_bucket):
15589         Likewise.
15590         * lib/gl_anytreehash_list1.h (add_to_bucket, remove_from_bucket):
15591         Likewise.
15592         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Likewise.
15593         Reported by Eric Blake.
15594
15595 2006-10-09  Paul Eggert  <eggert@cs.ucla.edu>
15596
15597         * lib/filemode.h [HAVE_DECL_STRMODE]: Include unistd.h too,
15598         for NetBSD.  Problem reported by Bruno Haible.
15599
15600 2006-10-09  Jim Meyering  <jim@meyering.net>
15601
15602         * lib/lchown.c: Include <sys/stat.h> before "stat-macros.h".
15603         Patch from Bruno Haible.
15604
15605 2006-10-09  Jim Meyering  <jim@meyering.net>
15606
15607         * lib/fts-cycle.c (leave_dir): When "leaving" a top level directory due
15608         to FTS_SKIP, don't copy the parent's uninitialized dev/ino values.
15609         Trigger with e.g., mkdir d && valgrind ./chmod u+rwx d d
15610
15611 2006-10-08  Paul Eggert  <eggert@cs.ucla.edu>
15612
15613         Don't include <config.h> twice; this doesn't work in some cases,
15614         e.g., when config.h has "#define intmax_t long long int" and
15615         we include <config.h>, <inttypes.h>, <config.h> in that order.
15616         Problem reported by Matthew Woehlke in:
15617         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00073.html
15618         * lib/fprintftime.c: Don't include config.h or fprintftime.h.
15619         * lib/fts-cycle.c: Don't include config.h.
15620         * lib/strftime.c: Include fprintftime.h if FPRINTFTIME is defined.
15621         * lib/xstrtoimax.c: Remove copyright notice since it's short tnow.
15622         Don't include config.h or xstrtol.h.  Define STRTOL_T_MINIMUM
15623         and STRTOL_T_MAXIMUM unconditionally, since we now assume gnulib
15624         inttypes.h.
15625         * lib/xstrtoumax.c: Likewise.
15626         * lib/xstrtol.c: Include config.h and xstrtol.h after defining
15627         __strtol and the like, so that this module is more like its siblings.
15628         (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [! defined STRTOL_T_MINIMUM]:
15629         Remove; no longer needed now that we assume gnulib inttypes.h.
15630
15631 2006-10-08  Bruno Haible  <bruno@clisp.org>
15632
15633         * doc/gnulib-tool.texi: Emphasize the drawbacks of the --symlink
15634         option.
15635
15636 2006-10-07  Jim Meyering  <jim@meyering.net>
15637
15638         * modules/inttypes (inttypes.h): Revert what seems to have been
15639         an inadvertent part of today's change: use "|", not "/" in the
15640         substitution for the "/"-containing string, $(ABSOLUTE_INTTYPES_H).
15641
15642 2006-10-07  Bruno Haible  <bruno@clisp.org>
15643
15644         * modules/sublist: New file.
15645
15646 2006-10-07  Bruno Haible  <bruno@clisp.org>
15647
15648         * modules/alloca-opt (alloca.h): Add a "DO NOT EDIT" comment.
15649         * modules/argz (argz.h): Likewise.
15650         * modules/arpa_inet (arpa/inet.h): Likewise.
15651         * modules/byteswap (byteswap.h): Likewise.
15652         * modules/configmake (configmake.h): Likewise.
15653         * modules/fcntl (fcntl.h): Likewise.
15654         * modules/fnmatch (fnmatch.h): Likewise.
15655         * modules/getopt (getopt.h): Likewise.
15656         * modules/glob (glob.h): Likewise.
15657         * modules/inttypes (inttypes.h): Likewise.
15658         * modules/netinet_in (netinet/in.h): Likewise.
15659         * modules/poll (poll.h): Likewise.
15660         * modules/stdbool (stdbool.h): Likewise.
15661         * modules/stdint (stdint.h): Likewise.
15662         * modules/sys_select (sys/select.h): Likewise.
15663         * modules/sys_socket (sys/socket.h): Likewise.
15664         * modules/sys_stat (sys/stat.h): Likewise.
15665         * modules/sysexits (sysexits.h): Likewise.
15666         * modules/unistd (unistd.h): Likewise.
15667         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
15668         Add a "DO NOT EDIT" comment to the generated file.
15669         (func_import): Likewise for gnulib-comp.m4.
15670
15671 2006-10-07  Bruno Haible  <bruno@clisp.org>
15672
15673         * lib/gl_sublist.h: New file.
15674         * lib/gl_sublist.c: New file.
15675
15676 2006-10-06  Paul Eggert  <eggert@cs.ucla.edu>
15677
15678         * lib/mkancesdirs.c (mkancesdirs): Pass to MAKE_DIR both the full file
15679         name (relative to the original working directory) and the file
15680         name component (relative to the temporary working directory).  All
15681         callers changed.
15682         * lib/mkancesdirs.h (mkancesdirs): Adjust prototype to match.
15683         * lib/mkdir-p.c (make_dir_parents): Likewise.
15684         * lib/mkdir-p.h (make_dir_parents): Likewise.
15685
15686 2006-10-06  Eric Blake  <ebb9@byu.net>
15687
15688         Define several macros for use by the clean-temp module.
15689         * m4/close-stream.m4 (gl_CLOSE_STREAM): Define GNULIB_CLOSE_STREAM.
15690         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Define GNULIB_FCNTL_SAFER.
15691         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Define GNULIB_FOPEN_SAFER.
15692
15693         * lib/clean-temp.h (close_stream_temp): New declaration.
15694         * lib/clean-temp.c (includes): Pull in headers according to what
15695         other modules are in use.
15696         (close_stream_temp) [GNULIB_CLOSE_STREAM]: New function.
15697
15698 2006-10-06  Bruno Haible  <bruno@clisp.org>
15699
15700         * lib/javacomp.c (write_temp_file): Use fopen_temp, fwriteerror_temp
15701         instead of fopen, fwriteerror.
15702
15703 2006-10-06  Bruno Haible  <bruno@clisp.org>
15704
15705         * lib/clean-temp.h (cleanup_temp_file, cleanup_temp_subdir,
15706         cleanup_temp_dir_contents, cleanup_temp_dir): Change return type to
15707         int.
15708         * lib/clean-temp.c (do_unlink, do_rmdir, cleanup_temp_file,
15709         cleanup_temp_subdir, cleanup_temp_dir_contents, cleanup_temp_dir):
15710         Return an error indicator.
15711         Suggested by Eric Blake.
15712
15713 2006-10-06  Bruno Haible  <bruno@clisp.org>
15714
15715         * lib/clean-temp.c (PATH_MAX): Provide a fallback for GNU Hurd.
15716         Reported by Eric Blake.
15717
15718 2006-10-06  Bruno Haible  <bruno@clisp.org>
15719
15720         * modules/closeout (Description): Mention stderr too.
15721
15722 2006-10-06  Bruno Haible  <bruno@clisp.org>
15723         and Paul Eggert  <eggert@cs.ucla.edu>
15724
15725         * lib/closeout.c (close_stdout): Also close stderr.
15726         * lib/closeout.h: Update comment.
15727
15728 2006-10-05  Paul Eggert  <eggert@cs.ucla.edu>
15729
15730         Fix some Darwin-7.9.0 porting problems reported by Bruno Haible in
15731         <http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00063.html>.
15732         * lib/dirchownmod.c: Include lchown.h.
15733         * lib/lchown.c: Don't include files that lchown.h now includes.
15734         Don't declare chown, since lchown.h now does that.
15735         * lib/lchown.h: Include errno.h, sys/types.h, unistd.h.
15736         (lchown): Define to rpl_chown if lchown is declared but
15737         does not exist.  Declare using a prototype if lchown is not
15738         declared.  Add a copyright notice.
15739         * lib/mkstemp.h: Include <unistd.h>.
15740         * lib/openat.c: Include lchown.h.
15741
15742         * lib/fcntl_.h (O_NOFOLLOW): Don't depend on O_NOFOLLOW_IS_INEFFECTIVE;
15743         we now test for that separately.
15744         * lib/fts.c (fts_safe_changedir): Inspect HAVE_WORKING_O_NOFOLLOW
15745         rather than O_NOFOLLOW, when testing whether it's possible to
15746         avoid a race condition reliably.
15747         * lib/savewd.c (savewd_chdir): Likewise.
15748
15749         Remove macros that are no longer needed now that stdint.h is
15750         reliable.
15751         * lib/fsusage.c (UINTMAX_MAX): Remove.
15752         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Remove.
15753         * lib/utimecmp.c (SIZE_MAX): Remove.
15754
15755         * m4/lchown.m4 (gl_FUNC_LCHOWN): Check whether lchown is declared.
15756
15757         * m4/fcntl_h.m4 (gl_FCNTL_H): Define HAVE_WORKING_O_NOFOLLOW instead
15758         of O_NOFOLLOW_IS_INEFFECTIVE.  Define HAVE_WORKING_O_NOATIME if
15759         O_NOATIME works.
15760
15761 2006-10-05  Bruno Haible  <bruno@clisp.org>
15762
15763         * lib/gl_list.h (gl_sortedlist_search_from_to,
15764         gl_sortedlist_indexof_from_to): New declarations.
15765         (gl_list_implementation): New fields sortedlist_search_from_to,
15766         sortedlist_indexof_from_to.
15767         (gl_sortedlist_search_from_to, gl_sortedlist_indexof_from_to): New
15768         inline functions.
15769         * lib/gl_list.c (gl_sortedlist_search_from_to,
15770         gl_sortedlist_indexof_from_to): New functions.
15771         * lib/gl_array_list.c (gl_array_sortedlist_indexof_from_to): New
15772         function.
15773         (gl_array_sortedlist_indexof, gl_array_sortedlist_search): Use it.
15774         (gl_array_sortedlist_search_from_to): New function.
15775         (gl_array_list_implementation): Update.
15776         * lib/gl_carray_list.c (gl_carray_sortedlist_indexof_from_to): New
15777         function.
15778         (gl_carray_sortedlist_indexof, gl_carray_sortedlist_search): Use it.
15779         (gl_carray_sortedlist_search_from_to): New function.
15780         (gl_carray_list_implementation): Update.
15781         * lib/gl_anylinked_list2.h (gl_linked_sortedlist_search_from_to,
15782         gl_linked_sortedlist_indexof_from_to): New functions.
15783         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
15784         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
15785         * lib/gl_anytree_list2.h (gl_tree_sortedlist_search_from_to,
15786         gl_tree_sortedlist_indexof_from_to): New functions.
15787         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
15788         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
15789         Update.
15790         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
15791         * lib/gl_rbtreehash_list.c (gl_avltreehash_list_implementation):
15792         Update.
15793
15794 2006-10-05  Bruno Haible  <bruno@clisp.org>
15795
15796         * lib/gl_list.h (gl_list_search_from, gl_list_search_from_to,
15797         gl_list_indexof_from, gl_list_indexof_from_to): New declarations.
15798         (struct gl_list_implementation): Add fields search_from_to,
15799         indexof_from_to. Remove fields search, indexof.
15800         (gl_list_search): Use the search_from_to method.
15801         (gl_list_search_from, gl_list_search_from_to): New functions.
15802         (gl_list_indexof): Use the indexof_from_to method.
15803         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
15804         * lib/gl_list.c (gl_list_search): Use the search_from_to method.
15805         (gl_list_search_from, gl_list_search_from_to): New functions.
15806         (gl_list_indexof): Use the indexof_from_to method.
15807         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
15808         * lib/gl_array_list.c (gl_array_indexof_from_to): Renamed from
15809         gl_array_indexof. Add start_index, end_index arguments.
15810         (gl_array_search_from_to): Renamed from gl_array_search. Add
15811         start_index, end_index arguments.
15812         (gl_array_remove, gl_array_list_implementation): Update.
15813         * lib/gl_carray_list.c (gl_carray_indexof_from_to): Renamed from
15814         gl_carray_indexof. Add start_index, end_index arguments.
15815         (gl_carray_search_from_to): Renamed from gl_carray_search. Add
15816         start_index, end_index arguments.
15817         (gl_carray_remove, gl_carray_list_implementation): Update.
15818         * lib/gl_anylinked_list2.h (gl_linked_search_from_to): Renamed from
15819         gl_linked_search. Add start_index, end_index arguments.
15820         (gl_linked_indexof_from_to): Renamed from gl_linked_indexof. Add
15821         start_index, end_index arguments.
15822         (gl_linked_remove): Update.
15823         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
15824         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
15825         * lib/gl_anytree_list1.h (iterstack_item_t): Change type of 'rightp'
15826         field to 'size_t'.
15827         * lib/gl_anytree_list2.h (gl_tree_search_from_to): Renamed from
15828         gl_tree_search. Add start_index, end_index arguments.
15829         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
15830         start_index, end_index arguments.
15831         (gl_tree_remove): Update.
15832         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
15833         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
15834         * lib/gl_anytreehash_list1.h (compare_position_threshold): New
15835         function.
15836         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Renamed from
15837         gl_tree_search. Add start_index, end_index arguments.
15838         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
15839         start_index, end_index arguments.
15840         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
15841         Update.
15842         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
15843
15844 2006-10-05  Bruno Haible  <bruno@clisp.org>
15845
15846         * modules/fwriteerror (configure.ac): Define GNULIB_FWRITEERROR.
15847
15848         * lib/clean-temp.h (open_temp, fopen_temp, close_temp, fclose_temp,
15849         fwriteerror_temp): New declarations.
15850         * lib/clean-temp.c (uintptr_t): Provide fallback definition.
15851         (descriptors): New variable.
15852         (cleanup): First, close the descriptors.
15853         (register_fd, unregister_fd, open_temp, fopen_temp, close_temp,
15854         fclose_temp, fwriteerror_temp): New functions.
15855
15856 2006-10-04  Jim Meyering  <jim@meyering.net>
15857
15858         * lib/fts.c (fts_open): Tiny comment change.
15859
15860 2006-10-04  Bruno Haible  <bruno@clisp.org>
15861
15862         Make it possible to invoke AC_GNU_SOURCE after gl_LOCK_EARLY.
15863         * m4/lock.m4 (gl_LOCK_EARLY_BODY): New macro, extracted code from
15864         gl_LOCK_BODY.
15865         (gl_LOCK_EARLY): Require gl_LOCK_EARLY_BODY, not gl_LOCK_BODY.
15866         (gl_LOCK_BODY): Remove settings of CPPFLAGS, now done in
15867         gl_LOCK_EARLY_BODY.
15868         (gl_LOCK): Require gl_LOCK_BODY.
15869
15870 2006-10-04  Bruno Haible  <bruno@clisp.org>
15871
15872         * lib/gl_oset.h (gl_setelement_threshold_fn): New type.
15873         (gl_oset_search_atleast): New declaration.
15874         (struct gl_oset_implementation): Add field 'search_atleast'.
15875         (gl_oset_search_atleast): New inline function.
15876         * lib/gl_oset.c (gl_oset_search_atleast): New function.
15877         * lib/gl_array_oset.c (gl_array_search_atleast): New function.
15878         (gl_array_oset_implementation): Update.
15879         * lib/gl_anytree_oset.h (gl_tree_search_atleast): New function.
15880         * lib/gl_avltree_oset.c (gl_avltree_oset_implementation): Update.
15881         * lib/gl_rbtree_oset.c (gl_rbtree_oset_implementation): Update.
15882
15883 2006-10-04  Bruno Haible  <bruno@clisp.org>
15884
15885         * lib/fatal-signal.c (fatal_signals) [WOE32]: Add the SIGBREAK signal.
15886
15887 2006-10-03  Bruno Haible  <bruno@clisp.org>
15888
15889         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Renamed
15890         from gl_avltreehash_list_implementation.
15891
15892 2006-10-03  Bruno Haible  <bruno@clisp.org>
15893
15894         * lib/gl_oset.c (gl_oset_add): Fix return type.
15895
15896 2006-10-02  Paolo Bonzini  <bonzini@gnu.org>  (tiny change)
15897
15898         * lib/quotearg.c (mbstate_t) [!HAVE_MBRTOWC]: #define to int.
15899
15900 2006-10-02  Eric Blake  <ebb9@byu.net>
15901
15902         * modules/strnlen (Depends-on): Add extensions.
15903
15904 2006-10-02  Eric Blake  <ebb9@byu.net>
15905
15906         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use autoconf's
15907         definition in 2.60+.
15908
15909 2006-10-02  Dmitry V. Levin  <ldv@altlinux.org>
15910
15911         * lib/fts.c (fts_close, fts_build, fts_palloc): Remove redundant
15912         checks.
15913
15914 2006-10-02  Bruno Haible  <bruno@clisp.org>
15915
15916         * gnulib-tool (func_emit_lib_Makefile_am): Don't add no-dependencies
15917         to the AUTOMAKE_OPTIONS.
15918         Reported by Jim Meyering.
15919
15920 2006-09-29  Paul Eggert  <eggert@cs.ucla.edu>
15921
15922         Work around bug in Solaris 10 /proc file system:
15923         /proc/self/fd/NNN/.. isn't the parent directory of
15924         the directory whose file descriptor is NNN.  This needs to
15925         be worked around at run time, not compile time, since a
15926         program might be built on Solaris 8, where things work, and
15927         run on Solaris 10.
15928         * lib/openat-priv.h (BUILD_PROC_NAME): Remove.  All callers changed
15929         to use the following interface instead:
15930         (OPENAT_BUFFER_SIZE): New macro.
15931         (openat_proc_name): New function.
15932         * lib/at-func.c (AT_FUNC_NAME): Adjust to above changes.
15933         * lib/openat.c (openat_permissive, openat_needs_fchdir, fdopendir):
15934         Likewise.
15935         * lib/openat-proc.c: New file.
15936         * modules/openat (Files): Add lib/openat-proc.c.
15937         (Depends-on): Add same-inode, stdbool.
15938         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBOBJ(openat-proc).
15939
15940 2006-09-29  Bruno Haible  <bruno@clisp.org>
15941
15942         * lib/fwriteerror.h (fwriteerror_no_ebadf): New declaration.
15943         * lib/(do_fwriteerror): Renamed from fwriteerror. Add ignore_ebadf
15944         argument. Set stdout_closed before testing for ferror, not after.
15945         (fwriteerror, fwriteerror_no_ebadf): New functions.
15946
15947 2006-09-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15948
15949         * m4/intmax.m4 (gt_TYPE_INTMAX_T): Avoid unused variables warning.
15950
15951 2006-09-28  Paolo Bonzini  <bonzini@gnu.org>
15952
15953         * lib/poll.c (rpl_poll) [__APPLE__]: Use FIONREAD instead of MSG_PEEK.
15954         * m4/poll.m4: Look for sys/ioctl.h and sys/filio.h.
15955
15956 2006-09-28  Jim Meyering  <jim@meyering.net>
15957
15958         * lib/mkdir-p.c: Include "dirchownmod.h", not "dirchownmod.c".
15959         Include <unistd.h>.
15960
15961 2006-09-28  Bruno Haible  <bruno@clisp.org>
15962
15963         * modules/avltreehash-list (Depends-on): Add stdint, remove size_max.
15964         * modules/linkedhash-list (Depends-on): Likewise.
15965         * modules/rbtreehash-list (Depends-on): Likewise.
15966
15967 2006-09-28  Bruno Haible  <bruno@clisp.org>
15968
15969         * lib/strndup.h: Simplify the redefinition of strndup.
15970         (_GL_CONCAT, _GL_XCONCAT, __STRNDUP_ID): Remove macros.
15971         * m4/strndup.m4 (gl_FUNC_STRNDUP): Don't define __STRNDUP_PREFIX.
15972
15973 2006-09-28  Bruno Haible  <bruno@clisp.org>
15974
15975         * lib/gl_avltreehash_list.c: Include <stdint.h> instead of size_max.h.
15976         * lib/gl_linkedhash_list.c: Likewise.
15977         * lib/gl_rbtreehash_list.c: Likewise.
15978
15979 2006-09-27  Paul Eggert  <eggert@cs.ucla.edu>
15980
15981         * lib/canon-host.c (canon_host_r): Work around bug in Darwin 7.9.0
15982         getaddrinfo.
15983
15984         * lib/__fpending.h: Don't include <stdio_ext.h> unless
15985         HAVE_DECL___FPENDING.  This avoids a bug with lsbcc, where
15986         it causes <stdio_ext.h> to cause a compile-time error.
15987         Problem reported by Nelson H. F. Beebe.
15988         * lib/getpass.c: Likewise, except for HAVE_DECL___FSETLOCKING instead
15989         of HAVE_DECL___PENDING.
15990
15991         * m4/fpending.m4 (gl_FUNC_FPENDING): Check for stdio_ext at most once.
15992         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for __fsetlocking's
15993         declaration.
15994
15995 2006-09-27  Jim Meyering  <jim@meyering.net>
15996
15997         This file could end up with a definition for a function
15998         named __strndup, rather than rpl_strndup on a system with
15999         incomplete weak_alias support.
16000         * lib/strndup.c (strndup): Rename from __strndup.
16001         Remove #defines that used to map __strndup to strndup.
16002         Don't use K&R prototypes.
16003         Remove LIBC-related code, since this file is not sync'd with glibc.
16004         * lib/strndup.h: Revamp, accordingly.
16005         * m4/strndup.m4: Modernize.
16006
16007 2006-09-26  Paul Eggert  <eggert@cs.ucla.edu>
16008
16009         * modules/savewd (Depends-on): Add 'raise'.
16010         * lib/savewd.c: Include <signal.h>, for 'raise'.
16011
16012 2006-09-26  Jim Meyering  <jim@meyering.net>
16013
16014         * m4/acl.m4 (AC_FUNC_ACL): Disable ACL support altogether
16015         when we detect Darwin 8.7.0's acl_get_file bug.
16016         Rearrange to perform the new (below) run-test while $LIBS
16017         contains any acl-related library.  Set USE_ACL at the end.
16018         (gl_ACL_GET_FILE): New function.
16019
16020 2006-09-26  Eric Blake  <ebb9@byu.net>
16021
16022         * lib/verror.c: Include <config.h> unconditionally.
16023
16024 2006-09-25  Paul Eggert  <eggert@cs.ucla.edu>
16025
16026         * modules/clock-time (Maintainer): Add self.
16027         * modules/getlogin_r (Depends-on): Add extensions.
16028
16029 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16030
16031         * modules/clock-time: New module.
16032         * modules/nanosleep (Depends-on): Add clock-time.
16033         * modules/gethrxtime (Depends-on): Likewise.
16034         * modules/gettime (Depends-on): Likewise.
16035         * modules/settime (Depends-on): Likewise.
16036
16037         * modules/fts-lgpl: Depend on openat.
16038         * modules/mkancesdirs: Depend on savewd.
16039         * modules/mkdir-p: Likewise.
16040
16041 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16042
16043         * m4/host-os.m4 (gl_HOST_OS): Require AC_CANONICAL_HOST.
16044
16045         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Rename cache variable from
16046         `gl_have_arbitrary_file_name_length_limit' to
16047         `gl_cv_have_arbitrary_file_name_length_limit', so that caching
16048         actually works between configure runs.
16049
16050 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16051             Bruno Haible  <bruno@clisp.org>
16052
16053         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Include <string.h>.
16054
16055 2006-09-25  Jim Meyering  <jim@meyering.net>
16056
16057         * m4/fcntl_h.m4 (gl_FCNTL_H): Fix typo in test for failed open.
16058         This typo caused coreutils/tests/dd/misc to fail on Darwin 8.7.0.
16059
16060 2006-09-25  Eric Blake  <ebb9@byu.net>
16061
16062         * gnulib-tool (func_import, func_create_testdir): Fix typos in
16063         exec's in 2006-09-18 patch when shuffling fds.
16064
16065 2006-09-25  Bruno Haible  <bruno@clisp.org>
16066
16067         * m4/getloadavg.m4 (gl_GETLOADAVG): Fix directory in error message.
16068         Reported by Jim Meyering.
16069
16070 2006-09-24  Jim Meyering  <jim@meyering.net>
16071
16072         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Don't use '>' to
16073         compare a pointer against a literal "0".  That caused failures with
16074         at least HP-UX's hpcc.
16075
16076 2006-09-22  Simon Josefsson  <jas@extundo.com>
16077
16078         * modules/gc-sha1:
16079         * modules/gc-md4:
16080         * modules/gc-hmac-sha1:
16081         * modules/gc-hmac-md5:
16082         * modules/gc-des:
16083         * modules/gc-arcfour: Distribute more files.
16084
16085 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16086
16087         * lib/gl_anylinked_list2.h [lint] (gl_linked_iterator)
16088         (gl_linked_iterator_from_to): Initialize struct completely.
16089         * lib/gl_anytree_list2.h [lint] (gl_tree_iterator): Likewise.
16090         (gl_tree_iterator_from_to): Likewise
16091         * lib/gl_anytree_oset.h [lint] (gl_tree_iterator): Likewise.
16092         * lib/gl_array_list.c [lint] (gl_array_iterator)
16093         (gl_array_iterator_from_to): Likewise.
16094         * lib/gl_array_oset.c [lint] (gl_array_iterator): Likewise.
16095         * lib/gl_carray_list.c [lint] (gl_carray_iterator)
16096         (gl_carray_iterator_from_to): Likewise.
16097
16098         * lib/gc-gnulib.c [GC_USE_HMAC_SHA1]: include hmac.h for hmac_sha1.
16099         * lib/md4.c (md4_process_block): Remove unused variable.
16100         * lib/rijndael-api-fst.c (rijndaelBlockDecrypt): GCC suggests
16101         parentheses for clarity.
16102
16103 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16104
16105         * modules/bison-i18n (Depends-on): Add gettext.
16106
16107 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16108
16109         * m4/fsusage.m4 (gl_STATFS_TRUNCATES): Avoid unused variable.
16110         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Likewise.
16111         * m4/jm-winsz1.m4 (gl_HEADER_TIOCGWINSZ_IN_TERMIOS_H): Likewise;
16112         also add missing comma that caused broken test.
16113         * m4/link-follow.m4 (gl_AC_FUNC_LINK_FOLLOWS_SYMLINK): Include
16114         stdlib.h, for `abort'.
16115         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Avoid unused
16116         variables.
16117         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Check for and
16118         include unistd.h if present, for `rmdir'.
16119         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Avoid unused
16120         variables.
16121         * m4/putenv.m4 (gl_FUNC_PUTENV): Rewrite using AC_RUN_IFELSE, and
16122         in the process include standard headers for prototypes.
16123         * m4/readutmp.m4 (gl_READUTMP): Require AC_GNU_SOURCE, so utmpxname
16124         gets declared on GNU/Linux.
16125         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Check for and include
16126         unistd.h, for `rmdir'.
16127         * m4/time_r.m4 (gl_TIME_R): Avoid unused variables.
16128
16129         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Avoid expression that is
16130         always true.
16131         * m4/strndup.m4 (gl_FUNC_STRNDUP): include stdlib.h, for `free'.
16132
16133         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Avoid gcc -Wall warnings.
16134
16135 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16136
16137         * gnulib-tool (func_version): Create output all at once.  This
16138         may help avoid triggering unnecessary SIGPIPEs, and at any
16139         rate it doesn't hurt.
16140
16141 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16142             Bruno Haible  <bruno@clisp.org>
16143
16144         * m4/lock.m4 (gl_LOCK_BODY): Avoid unused variables warning.
16145         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
16146         * m4/signed.m4 (bh_C_SIGNED): Likewise.
16147
16148         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): New macro.
16149         (gl_FUNC_VASPRINTF): Invoke it.
16150
16151 2006-09-22  Bruno Haible  <bruno@clisp.org>
16152
16153         * m4/getloadavg.m4 (gl_GETLOADAVG): Expect the directory of
16154         getloadavg.c as first argument.
16155
16156 2006-09-22  Bruno Haible  <bruno@clisp.org>
16157
16158         * gnulib-tool (func_import, func_create_testdir): Set gl_source_base
16159         at the beginning of the gl_INIT macro.
16160         * modules/getloadavg (configure.ac): Pass $gl_source_base to
16161         gl_GETLOADAVG.
16162
16163 2006-09-22  Bruno Haible  <bruno@clisp.org>
16164
16165         * gnulib-tool (func_create_megatestdir): Don't include the config-h
16166         module.
16167         Suggested by Ralf Wildenhues.
16168
16169 2006-09-20  Paul Eggert  <eggert@cs.ucla.edu>
16170
16171         Import this patch from libc:
16172
16173         2006-09-06  Jakub Jelinek  <jakub@redhat.com>
16174
16175         * lib/regex_internal.c (re_string_reconstruct): Handle
16176         offset < pstr->valid_raw_len && pstr->offsets_needed case.
16177         Ensure no bytes read before raw_mbs array.  Pass a saved copy of
16178         pstr->valid_len - 1 rather than pstr->valid_raw_len - 1 to
16179         re_string_context_at.
16180
16181         * m4/regex.m4 (gl_REGEX): Check for locale.h, since the test
16182         now requires it.
16183         (gl_PREREQ_REGEX): Don't check for locale.h any more, since
16184         gl_REGEX now does it for us.
16185         (gl_REGEX): Add test taken from
16186         http://sourceware.org/ml/libc-hacker/2006-09/msg00008.html.
16187
16188         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require AC_SYS_LARGEFILE.
16189         Check that large offsets work.  Modernize Autoconf usages.
16190         Prefer "yes" to mean a good thing rather than a bad.
16191         Don't put "#define mkstemp" in config.h, as this might interfere
16192         with standard system headers that "#define mkstemp mkstemp64".
16193
16194         * modules/mkstemp (Depends-on): Add extensions, so that
16195         mkstemp is visible on some platforms.
16196         (Makefile.am): Add mkstemp.h to EXTRA_DIST.
16197         (Include): Change to "mkstemp.h" from <stdlib.h>.
16198         (Files): Add mkstemp.h.
16199
16200         * lib/mkstemp.h: New file, since some standard headers
16201         #define mkstemp.
16202         * lib/mkstemp.c: Revamp to put the !_LIBC code together.
16203         Include "mkstemp.h".
16204         Make the _LIBC code resemble glibc original more,
16205         e.g., use K&R style.
16206         * lib/mkstemp-safer.c: Include "mkstemp.h" instead of <stdlib.h>.
16207         (mkstemp): Remove, since mkstemp.h does this for us.
16208         * lib/stdlib--.h: Include mkstemp.h.
16209
16210         Import this patch from libc:
16211
16212         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
16213
16214         * lib/tempname.c (__gen_tempname): Change attempts_min
16215         into a macro.  Use preprocessor to decide how to initialize
16216         attempts [Coverity CID 67].
16217
16218 2006-09-20  Bruno Haible  <bruno@clisp.org>
16219
16220         * lib/mkdtemp.c: Import from libc.
16221         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
16222                 * sysdeps/posix/tempname.c (__gen_tempname): Change
16223                 attempts_min into a macro.  Use preprocessor to decide how to
16224                 initialize attempts [Coverity CID 67].
16225         2001-11-27  Paul Eggert  <eggert@twinsun.com>
16226                 * sysdeps/posix/tempname.c (__gen_tempname): Try at least
16227                 ATTEMPTS_MIN or TMP_MAX times, whichever is greater.
16228
16229 2006-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16230
16231         * gnulib-tool (func_exit): New function, to allow to pass the
16232         exit status portably through the trap.  Use everywhere.
16233         (--help, --version): Signal a write error.
16234         (trap): catch SIGPIPE, for write errors.
16235         Exit at the end of the trap, with the correct exit status.
16236
16237 2006-09-19  Karl Berry  <karl@gnu.org>
16238
16239         * doc/gnulib.texi: note about the license texinfo files.
16240
16241 2006-09-19  Eric Blake  <ebb9@byu.net>
16242
16243         * gnulib-tool: Avoid space-tab.
16244
16245 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
16246
16247         * lib/getaddrinfo.c (getaddrinfo) [defined HAVE_IPV6]: Fix typo
16248         that prevented coreutils 6.1 from building.  Problem reported
16249         by Petter Reinholdtsen.
16250
16251 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
16252
16253         * gnulib-tool (avoidlist): Fix typo that broke options like
16254         --avoid=lock that are used by coreutils bootstrap.
16255
16256 2006-09-18  Mark D. Baushke  <mdb@gnu.org>
16257
16258         * m4/inttypes.m4 (gl_INTTYPES_H): Quote "test" args
16259         more systematically.
16260
16261 2006-09-18  Jim Meyering  <jim@meyering.net>
16262
16263         * lib/savewd.c (savewd_restore): Don't shadow: s/status/child_status/.
16264
16265 2006-09-18  Bruno Haible  <bruno@clisp.org>
16266
16267         * modules/inttypes (Files): Remove m4/inttypes-h.m4.
16268
16269 2006-09-18  Bruno Haible  <bruno@clisp.org>
16270
16271         * m4/inttypes-h.m4 (gl_HEADER_INTTYPES_H): Remove macro.
16272         * m4/inttypes-pri.m4: Require autoconf >= 2.52.
16273         (gt_INTTYPES_PRI): Invoke AC_CHECK_HEADERS on inttypes.h. Test
16274         ac_cv_header_inttypes_h instead of gl_cv_header_inttypes_h.
16275         * m4/gettext.m4: Require autoconf >= 2.52.
16276         (gt_INTL_SUBDIR_CORE): Invoke AC_CHECK_HEADERS on inttypes.h.
16277         * m4/inttypes.m4 (gl_INTTYPES_H): Test ac_cv_header_inttypes_h instead
16278         of gl_cv_header_inttypes_h.
16279
16280 2006-09-18  Bruno Haible  <bruno@clisp.org>
16281
16282         * lib/javaversion.c: Include configmake.h.
16283
16284 2006-09-18  Bruno Haible  <bruno@clisp.org>
16285
16286         * gnulib-tool (func_import, func_create_testdir): Use exec tricks to
16287         avoid that the while loops be executed in a subshell.
16288
16289 2006-09-18  Bruno Haible  <bruno@clisp.org>
16290
16291         * MODULES.html.sh (func_module): Break long lines.
16292         Suggested by Bruce Korb <bkorb@gnu.org>.
16293
16294 2006-09-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16295
16296         Speed up by a factor of 1.12.
16297         * gnulib-tool (nl): New variable.
16298         (func_import): Rewrite include directive extraction to only read each
16299         directive once.
16300
16301 2006-09-17  Bruno Haible  <bruno@clisp.org>
16302
16303         * modules/javaversion (Makefile.am): Remove DEFS setting.
16304         (Depends-on): Add configmake, for PKGDATADIR definition.
16305
16306 2006-09-17  Bruno Haible  <bruno@clisp.org>
16307
16308         * gnulib-tool (func_create_testdir): Rewrite all files at once.
16309
16310 2006-09-17  Bruno Haible  <bruno@clisp.org>
16311
16312         * gnulib-tool (func_append): New function, stolen from libtool.m4.
16313         (func_modules_transitive_closure, func_modules_add_dummy,
16314         func_modules_to_filelist, func_import, func_create_testdir,
16315         func_create_megatestdir, ...): Use it wherever possible.
16316         Suggested by Ralf Wildenhues.
16317
16318 2006-09-16  Karl Berry  <karl@gnu.org>
16319
16320         * doc/fdl.texi (ADDENDUM): switch to @heading from @appendixsubsec,
16321         to avoid sectioning errors.
16322         * doc/lgpl.texi, gpl.texi (Copying): downcase @unnumbered title.
16323         [ifinfo]: blank line after @center-ed titles.
16324         * doc/lgpl.texi (Library Copying): Rename main node to GNU LGPL.
16325         Spell FSF address consistently with others.
16326         (These changes approved by rms.)
16327
16328 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16329
16330         Speed up by a factor of 1.61.
16331         * gnulib-tool (func_modules_transitive_closure): Rewrite to not check
16332         already checked module names again.
16333
16334 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16335
16336         Speed up by a factor of 1.13.
16337         * gnulib-tool (func_import): Rewrite all old_files at once; likewise
16338         for new_files, and the input to func_add_or_update.
16339
16340 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16341
16342         * gnulib-tool (func_all_modules, func_modules_to_filelist, func_import,
16343         func_create_testdir, ...): Change 'sort | uniq' to 'sort -u'.
16344
16345 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
16346
16347         * modules/mkancesdirs (Depends-on): Add fcntl.
16348         * modules/savewd: New file.
16349         * MODULES.html.sh (File system functions): Add savewd.
16350
16351         * modules/configmake (Makefile.am): Add support for the
16352         Automake-supplied PKGLIBDIR, PKGINCLUDEDIR, PKGDATADIR.
16353
16354 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
16355
16356         * m4/savewd.m4: New file.
16357
16358 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
16359
16360         * lib/dirchownmod.c: Don't include fcntl.h; no longer needed.
16361         (dirchownmod): New arg FD.  All callers changed.
16362         Use FD rather than opening the directory ourself, as opening is
16363         now the caller's responsibility.
16364         * lib/dirchownmod.h: Likewise.
16365         * lib/mkancesdirs.c: Include <sys/types.h>, for portability to older
16366         hosts that require <sys/types.h> before <sys/stat.h>.  Include
16367         fcntl.h, savewd.h, and unistd.h, not dirname.h and stat-macros.h.
16368         (test_dir): Remove.
16369         (mkancesdirs): Return length of prefix of FILE that has already
16370         been made, or -2 if there is a child doing the work.  Redo
16371         algorithm so that it is O(N) rather than O(N**2).  Optimize away
16372         ".", and treat ".." specially since it might stray back into
16373         already-created areas.  Use a subprocess if necessary.  New arg
16374         WD; all users changed.  MAKE_DIR function should now return 1
16375         if it creates a directory that is not readable.  Return -2 if
16376         a child process is spun off.
16377         * lib/mkancesdirs.h: Include <stddef.h>, for ptrdiff_t.
16378         Adjust signature to match code.
16379         * lib/mkdir-p.c: Include dirname.h, for IS_ABSOLUTE_FILE_NAME.
16380         (make_dir_parents): Use a subprocess if necessary.  New arg WD;
16381         all users changed.
16382         * lib/savewd.c, lib/savewd.h: New files.
16383
16384 2006-09-15  Jim Meyering  <jim@meyering.net>
16385
16386         * modules/rename-dest-slash: New module.
16387         * MODULES.html.sh (posix_compat): Add it here.
16388
16389         * modules/rename: Reflect vb_FUNC_RENAME -> gl_FUNC_RENAME change.
16390
16391 2006-09-15  Jim Meyering  <jim@meyering.net>
16392
16393         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH): New
16394         file.
16395
16396         * m4/rename.m4 (gl_FUNC_RENAME): Rename from vb_FUNC_RENAME.
16397
16398 2006-09-15  Jim Meyering  <jim@meyering.net>
16399
16400         * lib/rename-dest-slash.c (has_trailing_slash): Use
16401         FILE_SYSTEM_PREFIX_LEN, for non-POSIX systems.
16402         (rpl_rename_dest_slash): Perform the cheaper trailing slash
16403         test before testing whether SRC is a directory.
16404         Suggestions from Bruno Haible.
16405
16406         Avoid a warning about an unused variable.
16407         * lib/regex_internal.c (re_dfa_add_node): Move declaration of "type"
16408         into the #ifdef block where it's used.
16409
16410         * lib/rename-dest-slash.c: New file.
16411
16412 2006-09-14  Bruno Haible  <bruno@clisp.org>
16413
16414         * lib/allocsa.c: Include <config.h> unconditionally.
16415         * lib/asnprintf.c: Likewise.
16416         * lib/asprintf.c: Likewise.
16417         * lib/c-strcasecmp.c: Likewise.
16418         * lib/c-strcasestr.c: Likewise.
16419         * lib/c-strncasecmp.c: Likewise.
16420         * lib/c-strstr.c: Likewise.
16421         * lib/classpath.c: Likewise.
16422         * lib/clean-temp.c: Likewise.
16423         * lib/concatpath.c: Likewise.
16424         * lib/copy-file.c: Likewise.
16425         * lib/csharpcomp.c: Likewise.
16426         * lib/csharpexec.c: Likewise.
16427         * lib/execute.c: Likewise.
16428         * lib/fatal-signal.c: Likewise.
16429         * lib/findprog.c: Likewise.
16430         * lib/fwriteerror.c: Likewise.
16431         * lib/gl_array_list.c: Likewise.
16432         * lib/gl_array_oset.c: Likewise.
16433         * lib/gl_avltree_list.c: Likewise.
16434         * lib/gl_avltree_oset.c: Likewise.
16435         * lib/gl_avltreehash_list.c: Likewise.
16436         * lib/gl_carray_list.c: Likewise.
16437         * lib/gl_linked_list.c: Likewise.
16438         * lib/gl_linkedhash_list.c: Likewise.
16439         * lib/gl_list.c: Likewise.
16440         * lib/gl_oset.c: Likewise.
16441         * lib/gl_rbtree_list.c: Likewise.
16442         * lib/gl_rbtree_oset.c: Likewise.
16443         * lib/gl_rbtreehash_list.c: Likewise.
16444         * lib/imaxabs.c: Likewise.
16445         * lib/imaxdiv.c: Likewise.
16446         * lib/javacomp.c: Likewise.
16447         * lib/javaexec.c: Likewise.
16448         * lib/javaversion.c: Likewise.
16449         * lib/linebreak.c: Likewise.
16450         * lib/localcharset.c: Likewise.
16451         * lib/lock.c: Likewise.
16452         * lib/mbchar.c: Likewise.
16453         * lib/mbswidth.c: Likewise.
16454         * lib/mkdtemp.c: Likewise.
16455         * lib/pipe.c: Likewise.
16456         * lib/printf-args.c: Likewise.
16457         * lib/printf-parse.c: Likewise.
16458         * lib/progname.c: Likewise.
16459         * lib/progreloc.c: Likewise.
16460         * lib/readlink.c: Likewise.
16461         * lib/sh-quote.c: Likewise.
16462         * lib/stpcpy.c: Likewise.
16463         * lib/stpncpy.c: Likewise.
16464         * lib/strcasecmp.c: Likewise.
16465         * lib/strcasestr.c: Likewise.
16466         * lib/strcspn.c: Likewise.
16467         * lib/striconv.c: Likewise.
16468         * lib/strncasecmp.c: Likewise.
16469         * lib/strnlen1.c: Likewise.
16470         * lib/strstr.c: Likewise.
16471         * lib/strtok_r.c: Likewise.
16472         * lib/tls.c: Likewise.
16473         * lib/tmpdir.c: Likewise.
16474         * lib/unicodeio.c: Likewise.
16475         * lib/unsetenv.c: Likewise.
16476         * lib/vasnprintf.c: Likewise.
16477         * lib/vasprintf.c: Likewise.
16478         * lib/wait-process.c: Likewise.
16479         * lib/xallocsa.c: Likewise.
16480         * lib/xsetenv.c: Likewise.
16481         * lib/xstriconv.c: Likewise.
16482
16483 2006-09-13  Simon Josefsson  <jas@extundo.com>
16484
16485         * m4/getdate.m4: Don't AC_LIBOBJ([getdate]), automake takes care of
16486         that internally, suggested by Ralf Wildenhues
16487         <Ralf.Wildenhues@gmx.de>.
16488
16489 2006-09-13  Simon Josefsson  <jas@extundo.com>
16490
16491         * gnulib-tool (func_emit_lib_Makefile_am): Use $(LIBOBJS), not
16492         @LIBOBJS@.
16493         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
16494
16495 2006-09-13  Paul Eggert  <eggert@cs.ucla.edu>
16496
16497         * lib/_fpending.c: Include <config.h> unconditionally, since we no
16498         longer worry about uses that don't define HAVE_CONFIG_H.
16499         * lib/acl.c, lib/alloca.c, lib/argmatch.c, lib/atexit.c:
16500         * lib/backupfile.c, lib/basename.c, lib/c-stack.c, lib/c-strtod.c:
16501         * lib/calloc.c,lib/ canon-host.c, lib/canonicalize.c, lib/chdir-long.c:
16502         * lib/chdir-safer.c, lib/chown.c, lib/cloexec.c, lib/close-stream.c:
16503         * lib/closeout.c, lib/creat-safer.c, lib/cycle-check.c, lib/diacrit.c:
16504         * lib/dirchownmod.c, lib/dirfd.c, lib/dirname.c, lib/dup-safer.c:
16505         * lib/dup2.c, lib/error.c, lib/euidaccess.c, lib/exclude.c:
16506         * lib/exitfail.c, lib/fchmodat.c, lib/fchown-stub.c, lib/fd-safer.c:
16507         * lib/file-type.c, lib/fileblocks.c, lib/filemode.c, lib/filenamecat.c:
16508         * lib/fnmatch.c, lib/fopen-safer.c, lib/fprintftime.c, lib/free.c:
16509         * lib/fsusage.c, lib/ftruncate.c, lib/fts-cycle.c, lib/fts.c:
16510         * lib/full-write.c, lib/gai_strerror.c, lib/getcwd.c, lib/getdate.y:
16511         * lib/getdomainname.c, lib/getgroups.c, lib/gethostname.c:
16512         * lib/gethrxtime.c, lib/getloadavg.c, lib/getlogin_r.c:
16513         * lib/getndelim2.c, lib/getnline.c, lib/getopt.c, lib/getopt1.c:
16514         * lib/getpass.c, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c:
16515         * lib/getusershell.c, lib/glob.c, lib/group-member.c:
16516         * lib/hard-locale.c, lib/hash-pjw.c, lib/hash.c, lib/human.c:
16517         * lib/idcache.c, lib/inet_ntop.c, lib/inet_pton.c, lib/inttostr.c:
16518         * lib/isdir.c, lib/lchown.c, lib/linebuffer.c, lib/long-options.c:
16519         * lib/lstat.c, lib/malloc.c, lib/md5.c, lib/memcasecmp.c, lib/memchr.c:
16520         * lib/memcmp.c, lib/memcoll.c, lib/memcpy.c, lib/memmove.c:
16521         * lib/memrchr.c, lib/mkancesdirs.c, lib/mkdir-p.c, lib/mkdir.c:
16522         * lib/mkdirat.c, lib/mkstemp-safer.c, lib/mkstemp.c, lib/modechange.c:
16523         * lib/mountlist.c, lib/nanosleep.c, lib/obstack.c, lib/open-safer.c:
16524         * lib/openat-die.c, lib/openat.c, lib/pagealign_alloc.c, lib/physmem.c:
16525         * lib/pipe-safer.c, lib/posixtm.c, lib/posixver.c, lib/putenv.c:
16526         * lib/quote.c, lib/quotearg.c, lib/raise.c, lib/readtokens.c:
16527         * lib/readtokens0.c, lib/readutmp.c, lib/realloc.c, lib/regex.c:
16528         * lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c:
16529         * lib/same.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c:
16530         * lib/settime.c, lib/sha1.c, lib/sig2str.c, lib/snprintf.c:
16531         * lib/strdup.c, lib/strerror.c, lib/strftime.c, lib/stripslash.c:
16532         * lib/strndup.c, lib/strnlen.c, lib/strpbrk.c, lib/strtod.c:
16533         * lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c:
16534         * lib/time_r.c, lib/timegm.c, lib/tmpfile-safer.c, lib/unlinkdir.c:
16535         * lib/userspec.c, lib/utime.c, lib/utimecmp.c, lib/utimens.c:
16536         * lib/version-etc-fsf.c, lib/version-etc.c, lib/xalloc-die.c:
16537         * lib/xgetcwd.c, lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c:
16538         * lib/xnanosleep.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtoimax.c:
16539         * lib/xstrtol.c, lib/xstrtoumax.c, lib/yesno.c:
16540         Likewise.
16541
16542 2006-09-13  Eric Blake  <ebb9@byu.net>
16543
16544         * lib/getopt.c: Fix typo in last commit.
16545
16546 2006-09-12  Sergey Poznyakoff  <gray@gnu.org.ua>
16547
16548         * lib/argp-help.c (argp_doc): Make sure NULL is not passed to
16549         dgettext.
16550
16551 2006-09-12  Jim Meyering  <jim@meyering.net>
16552
16553         * lib/nanosleep.c: Include <sys/types.h> before sys/select.h, to avoid
16554         compilation failure (due to use of pid_t in latter) on NetBSD 1.6.
16555         Reported by Nelson H. F. Beebe.
16556
16557 2006-09-10  Sergey Poznyakoff  <gray@gnu.org.ua>
16558
16559         * lib/argp-parse.c (__argp_parse) [!_LIBC]: Make sure
16560         program_invocation_name and program_invocation_short_name are
16561         initialized.
16562         * lib/argp-namefrob.h: Move declarations of program_invocation_name
16563         and program_invocation_short_name to argp.h, so they are visible
16564         to user programs.
16565         * lib/argp.h: Likewise
16566
16567 2006-09-10  Bruno Haible  <bruno@clisp.org>
16568
16569         * modules/mkdtemp (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
16570         m4/inttypes_h.m4, m4/uintmax_t.m4.
16571
16572 2006-09-10  Bruno Haible  <bruno@clisp.org>
16573
16574         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Don't require
16575         gl_AC_TYPE_UINTMAX_T.
16576
16577 2006-09-10  Bruno Haible  <bruno@clisp.org>
16578
16579         * lib/mkdtemp.c: Include <stdint.h> always. Don't include <inttypes.h>.
16580
16581 2006-09-09  Sergey Poznyakoff  <gray@gnu.org.ua>
16582
16583         * lib/argp.h (struct argp): Document the N_("..") "\v" N_("..")
16584         convention.  Text proposed by Bruno Haible.
16585         (struct argp_option): Document the use of N_() wrappers.
16586
16587         * lib/argp-help.c (argp_doc): Split the untranslated doc string on
16588         '\v', and translate the two parts separately, instead of feeding
16589         the whole string to gettext.  This allows to exclude
16590         '\v' from the strings visible to the translator by writing doc
16591         strings as N_("..") "\v" N_("..").
16592
16593 2006-09-09  Paul Eggert  <eggert@cs.ucla.edu>
16594
16595         * config/srclist.txt: Undo latest change; the bug was fixed.
16596
16597 2006-09-09  Bruno Haible  <bruno@clisp.org>
16598
16599         * gnulib-tool (func_emit_lib_Makefile_am): Eliminate lib_LDFLAGS
16600         assignments if building a library without libtool.
16601         (func_emit_tests_Makefile_am): Likewise. Handle lib_* variables as
16602         in func_emit_lib_Makefile_am.
16603         (func_import): When building a static library libfoo.a, arrange to
16604         define variables LIBFOO_LIBDEPS and LIBFOO_LTLIBDEPS.
16605         (func_create_testdir): Likewise.
16606         * modules/gc (configure.ac, Makefile.am): If building statically,
16607         augment gl_libdeps and gl_ltlibdeps instead of lib_LDFLAGS.
16608         * modules/iconvme (configure.ac, Makefile.am): Likewise.
16609         * modules/striconv (configure.ac, Makefile.am): Likewise.
16610         Based on a suggestion by Ralf Wildenhues.
16611
16612 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
16613
16614         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
16615         Check for unistd.h too, since Autoconf doesn't assume POSIX.
16616         Also:
16617
16618         2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
16619         Add year_2050_test to catch glibc bug 2821
16620         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
16621
16622         2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
16623         Prefer #ifdef to #if.
16624
16625         2006-04-02  Paul Eggert  <eggert@cs.ucla.edu>
16626         Return from 'main' instead of calling 'exit'.
16627
16628 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
16629
16630         * lib/mktime.c (guess_time_tm): Fix bug where mktime
16631         returned the maximum time_t value rather than (time_t) -1.
16632         Problem originally reported by William Bardwell
16633         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
16634
16635         * lib/isapipe.h (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
16636         Moved to here ...
16637         * lib/isapipe.c (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
16638         ... from here.
16639
16640 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
16641
16642         * config/srclist.txt: Temporarily comment out mktime.c until glibc bug
16643         2821 is fixed.
16644
16645 2006-09-08  Jim Meyering  <jim@meyering.net>
16646
16647         Don't make generated files read-only.  That would bother too many
16648         people.  However, do retain the ability to work when targets are
16649         read-only: remove the destination and temporary files before writing
16650         them (when generated via sed or echo), or by using the -f option for
16651         both cp and mv commands.  Suggestion to use -f from Paul Eggert.
16652         * modules/alloca-opt, modules/argz, modules/arpa_inet:
16653         * modules/byteswap, modules/configmake, modules/fcntl:
16654         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
16655         * modules/localcharset, modules/netinet_in, modules/poll:
16656         * modules/stdbool, modules/stdint, modules/sys_select:
16657         * modules/sys_socket, modules/sys_stat, modules/sysexits:
16658
16659 2006-09-08  Jim Meyering  <jim@meyering.net>
16660
16661         Avoid new build failure on FreeBSD 6.0.
16662         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Include
16663         <sys/param.h> when testing whether getmntinfo uses statvfs.  Patch by
16664         Pavel Tsekov, in <http://savannah.gnu.org/bugs/?17643>.
16665
16666 2006-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16667
16668         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't use plain echo.
16669
16670 2006-09-07  Jim Meyering  <jim@meyering.net>
16671
16672         Fix global typo in last change: use chmod u-w, not chmod u-x.
16673         Spotted by Paul Eggert and Bruce Korb.
16674         * modules/alloca-opt, modules/argz, modules/arpa_inet:
16675         * modules/byteswap, modules/configmake, modules/fcntl:
16676         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
16677         * modules/localcharset, modules/netinet_in, modules/poll:
16678         * modules/stdbool, modules/stdint, modules/sys_select:
16679         * modules/sys_socket, modules/sys_stat, modules/sysexits:
16680
16681 2006-09-06  Jim Meyering  <jim@meyering.net>
16682
16683         Make generated files be read-only.
16684         * modules/alloca-opt (Makefile.am): Work also when $@ is read-only.
16685         Ensure that each generated file is now read-only.
16686         * modules/argz: Likewise.
16687         * modules/arpa_inet: Likewise.
16688         * modules/byteswap: Likewise.
16689         * modules/configmake: Likewise.
16690         * modules/fcntl: Likewise.
16691         * modules/fnmatch: Likewise.
16692         * modules/getopt: Likewise.
16693         * modules/glob: Likewise.
16694         * modules/inttypes: Likewise.
16695         * modules/netinet_in: Likewise.
16696         * modules/poll: Likewise.
16697         * modules/stdbool: Likewise.
16698         * modules/stdint: Likewise.
16699         * modules/sys_select: Likewise.
16700         * modules/sys_socket: Likewise.
16701         * modules/sys_stat: Likewise.
16702         * modules/sysexits: Likewise.
16703         * modules/localcharset: Same as above, but continue using temporary
16704         file named "t-$@" (why different?) rather than the "$@-t" used
16705         everywhere else.
16706
16707         * modules/sysexits (Makefile.am): Replace literal occurrences
16708         of "sysexit.h" more readable, and more consistent, "$@".
16709
16710 2006-09-06  Bruno Haible  <bruno@clisp.org>
16711
16712         * modules/striconv: New file.
16713         * modules/xstriconv: New file.
16714         * MODULES.html.sh (Internationalization functions): Add striconv,
16715         xstriconv.
16716
16717 2006-09-06  Bruno Haible  <bruno@clisp.org>
16718
16719         * modules/gc (Makefile.am): Augment lib_LDFLAGS, not lib_LIBADD.
16720         * modules/iconvme (Makefile.am): Likewise. Also handle the case of
16721         not using libtool correctly.
16722
16723 2006-09-06  Bruno Haible  <bruno@clisp.org>
16724
16725         * lib/striconv.h: New file.
16726         * lib/striconv.c: New file, merging iconvme.c with GNU gettext's
16727         iconvstring.c.
16728         * lib/xstriconv.h: New file.
16729         * lib/xstriconv.c: New file.
16730
16731 2006-09-06  Bruno Haible  <bruno@clisp.org>
16732
16733         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
16734         lib_..._LDFLAGS.
16735
16736 2006-09-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16737
16738         * lib/argz_.h: Sync from Libtool.
16739
16740         2006-09-04  George Bosilca <bosilca@cs.utk.edu>
16741                 and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16742
16743         * lib/libltdl/argz_.h: It's __cplusplus, not _cplusplus.
16744
16745 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
16746
16747         * modules/trim: New file.
16748
16749 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
16750
16751         * lib/trim.h: New file.
16752         * lib/trim.c: New file.
16753
16754 2006-09-05  Bruno Haible  <bruno@clisp.org>
16755
16756         * MODULES.html.sh (String handling): Add trim.
16757
16758 2006-09-04  Karl Berry  <karl@gnu.org>
16759
16760         * config/srclist.txt (signed.m4, gettext.m4): changes not propagated
16761         until next release.
16762
16763 2006-09-03  Bruno Haible  <bruno@clisp.org>
16764
16765         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Locate mingw shared libraries
16766         correctly.
16767
16768 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
16769
16770         * m4/getloadavg.m4 (gl_GETLOADAVG): Use CONFIGURING_GETLOADAVG,
16771         not gl_GETLOADAVG.  Omit unneeded semicolons.
16772         Problems reported by Ralf Wildenhues in
16773         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
16774         (gl_PREREQ_GETLOADAVG): Use AC_DEFUN, not m4_define.  Put
16775         at the end, which is the usual gnulib style.
16776
16777         * m4/fstypename.m4 (gl_FSTYPENAME): Use AC_CHECK_MEMBERS instead
16778         of doing all the work ourselves.
16779         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Don't check for
16780         sys/statvfs.h since the code doesn't use HAVE_SYS_STATVFS_H.
16781
16782 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
16783
16784         * lib/getloadavg.c: Use CONFIGURING_GETLOADAVG, not gl_GETLOADAVG.
16785         Problem reported by Ralf Wildenhues in
16786         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
16787
16788         * lib/mountlist.c: All uses of HAVE_F_FSTYPENAME_IN_STATFS replaced by
16789         HAVE_STRUCT_STATFS_F_FSTYPENAME.
16790
16791 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
16792
16793         * gnulib-tool (func_emit_lib_Makefile_am): Fix typos in
16794         yesterday's patch by changing test -n to test -z.
16795
16796 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
16797
16798         * modules/getloadavg (Files): Add m4/getloadavg.m4.
16799         (configure.ac): AC_FUNC_GETLOADAVG -> gl_GETLOADAVG, as
16800         the former is now obsolescent.
16801
16802         * modules/chdir-long (Depends-on): Add fcntl.
16803
16804 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
16805
16806         * m4/fnmatch.m4: Add comment that Autoconf AC_FUNC_FNMATCH is
16807         obsolescent, and programs should use gnulib instead.
16808         * m4/getloadavg.m4: New file, with contents taken from Autoconf
16809         but with prefixes changed.
16810
16811 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
16812
16813         * lib/getloadavg.c [defined gl_GETLOADAVG]: Don't include config.h
16814         or stdbool.h, because they might not exist while configuring.
16815
16816         * lib/chdir-long.c: Include <fcntl.h>, for O_DIRECTORY.
16817         Don't include unistd.h or limits.h; not needed, since chdir-long.h
16818         does that for us.
16819         (O_DIRECTORY): Remove.
16820
16821 2006-08-31  Eric Blake  <ebb9@byu.net>
16822
16823         * gnulib-tool: Don't let emacs change spaces to TAB.
16824
16825 2006-08-31  Bruno Haible  <bruno@clisp.org>
16826
16827         * gnulib-tool: When calling func_import more than once, do it in a
16828         subshell.
16829         Reported by Eric Blake <ebb9@byu.net>.
16830
16831 2006-08-31  Bruno Haible  <bruno@clisp.org>
16832
16833         * gnulib-tool (nl): Remove variable.
16834         (sed_transform_lib_file): Use more robust test for config-h module.
16835         (func_import): Fix typo in 2006-08-25 patch.
16836
16837 2006-08-31  Bruno Haible  <bruno@clisp.org>
16838
16839         * gnulib-tool (func_emit_lib_Makefile_am): When --makefile-name was
16840         specified, augment Makefile.am variables instead of assigning them.
16841
16842 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
16843
16844         Work around a bug in both the Linux and SunOS 64-bit kernels:
16845         nanosleep mishandles sleeps for longer than 2**31 seconds.
16846         Problem reported by Frank v Waveren in
16847         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
16848         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Require gl_CLOCK_TIME.
16849         Check for nanosleep bug.
16850         (LIB_NANOSLEEP): Append clock_gettime library if needed.
16851
16852 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
16853
16854         Work around a bug in both the Linux and SunOS 64-bit kernels:
16855         nanosleep mishandles sleeps for longer than 2**31 seconds.
16856         Problem reported by Frank v Waveren in
16857         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
16858         * lib/nanosleep.c (BILLION): New constant.
16859         (getnow) [HAVE_BUG_BIG_NANOSLEEP]: New functions.
16860         (rpl_nanosleep) [HAVE_BUG_BIG_NANOSLEEP]: Completely new
16861         implementation.
16862
16863 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
16864
16865         * modules/nanosleep (Depends-on): Add gettime.
16866
16867 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
16868         and Simon Josefsson  <jas@extundo.com>
16869         and Oskar Liljeblad  <oskar@osk.mine.nu>
16870
16871         * MODULES.html.sh (Support for building documentation): Add gpl, lgpl.
16872         * gnulib-tool (func_import): New license type 'unmodifiable license
16873         text'.
16874         * modules/fdl: Use it.  Longer description.
16875         * module/gpl, module/lgpl: New files.
16876
16877 2006-08-30  Jim Meyering  <jim@meyering.net>
16878
16879         * lib/isapipe.c (isapipe): Rename local s/fd/fd_pair/ to avoid
16880         shadowing the parameter.
16881
16882 2006-08-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16883
16884         Sync from Libtool:
16885
16886         2006-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16887
16888         * lib/libltdl/argz.c: Use `#ifdef HAVE_CONFIG_H', to facilitate code
16889         sharing with gnulib.  Report by Eric Blake.
16890
16891 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
16892
16893         * modules/isapipe: New file.
16894         * MODULES.html.sh (File descriptor based Input/Output): Add isapipe.
16895
16896 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
16897
16898         * modules/configmake (Makefile.am): Add a comment, and omit
16899         the CONFIGMAKE_ prefix from generated macro names.  Suggested
16900         by Bruno Haible.
16901
16902 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
16903
16904         * m4/isapipe.m4: New file.
16905
16906 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
16907
16908         * lib/isapipe.c, lib/isapipe.h: New files.
16909
16910 2006-08-29  Jim Meyering  <jim@meyering.net>
16911
16912         * modules/configmake (Makefile.am): Make configmake.h depend on
16913         Makefile.  Otherwise, a stale configmake.h could hang around.
16914
16915 2006-08-29  Eric Blake  <ebb9@byu.net>
16916
16917         * lib/error.c (error_at_line, print_errno_message): Match libc, after
16918         resolution of upstream bug 3044.
16919
16920 2006-08-29  Bruno Haible  <bruno@clisp.org>
16921
16922         * modules/localcharset (Depends-on): Add configmake.
16923         (Makefile.am): Remove setting of LIBDIR through DEFS.
16924
16925 2006-08-29  Bruno Haible  <bruno@clisp.org>
16926
16927         * lib/localcharset.c: Include configmake.h in order to get LIBDIR
16928         defined.
16929
16930 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
16931
16932         * modules/fcntl: New file.
16933         * modules/chdir-safer (Depends-on): Add fcntl.
16934         * modules/fts: Likewise.
16935         * modules/mkdir-p: Likewise.
16936
16937         * modules/stdint (Makefile.am): Do not substitute ABSOLUTE_INTTYPES_H.
16938         This undoes the most recent change, since we're now addressing the
16939         problem in a different way.
16940
16941         * gnulib-tool (emit_lib_Makefile_am): Don't put $makefile_name
16942         into output, since the output might be called Makefile.am even
16943         if $makefile_name is something different.
16944         (func_import): Use $makefile_am rather than
16945         ${makefile_name-Makefile.am}, to fix a bug where makefile_name was
16946         empty.
16947
16948         * modules/inttypes (Files): Add m4/inttypes-h.m4.
16949
16950 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
16951
16952         * m4/inttypes.m4 (gl_INTTYPES_H): Move ABSOLUTE_INTTYPES_H code here...
16953         * m4/stdint.m4 (gl_STDINT_H): ... from here.  This undoes the most
16954         recent change to stdint.m4, since we're now addressing the problem in a
16955         different way.
16956
16957 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
16958
16959         * m4/fcntl_h.m4: New file.
16960
16961 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
16962
16963         * lib/fcntl_.h: New file.
16964         * lib/chdir-safer.c (O_DIRECTORY, O_NOFOLLOW): Remove, now that we have
16965         the fcntl module.
16966         * lib/dirchownmod.c: Likewise.
16967         * lib/fts.c: Likewise.
16968
16969         * lib/inttypes_.h [defined _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H]:
16970         Include @ABSOLUTE_INTTYPES_H@ if available, but do nothing else.
16971         * lib/stdint_.h (_GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H): Define
16972         just before including <inttypes.h>, to avoid circular inclusion.
16973
16974 2006-08-28  Jim Meyering  <jim@meyering.net>
16975
16976         * doc/visibility.texi: Actually read and correct the grammar of the
16977         sentence affected by yesterday's change.
16978
16979 2006-08-28  Eric Blake  <ebb9@byu.net>
16980
16981         * modules/inttypes (Makefile.am): Fix sed error when inttypes.h
16982         needs wrapper.
16983
16984 2006-08-28  Eric Blake  <ebb9@byu.net>
16985
16986         * m4/inttypes.m4 (gl_INTTYPES_H): Fix missing #endif.
16987
16988 2006-08-28  Eric Blake  <ebb9@byu.net>
16989
16990         * m4/codeset.m4 (AM_LANGINFO_CODESET): Avoid compiler warning.
16991
16992 2006-08-28  Bruno Haible  <bruno@clisp.org>
16993
16994         * modules/c-strstr: New file, from GNU gettext.
16995         * MODULES.html.sh (String handling): Add c-strstr.
16996
16997 2006-08-28  Bruno Haible  <bruno@clisp.org>
16998
16999         * m4/inttypes.m4 (gl_INTTYPES_H): Don't test for the existence of SCNX*
17000         macros.
17001         Reported by Eric Blake.
17002
17003 2006-08-28  Bruno Haible  <bruno@clisp.org>
17004
17005         * lib/vasnprintf.c (EOVERFLOW): Remove definition.
17006         (VASNPRINTF): Return a string of length > INT_MAX without failing.
17007         * lib/vasprintf.c: Include errno.h, limits.h.
17008         (EOVERFLOW): New fallback definition.
17009         (vasprintf): Test here whether the string length is > INT_MAX.
17010         * lib/vsnprintf.c: Include errno.h, limits.h.
17011         (EOVERFLOW): New fallback definition.
17012         (vsnprintf): Fix bug when generated string was too long for the buffer.
17013         Test here whether the string length is > INT_MAX.
17014
17015 2006-08-28  Bruno Haible  <bruno@clisp.org>
17016
17017         * lib/inttypes_.h (SCNX*): Remove definitions.
17018         Reported by Eric Blake.
17019
17020 2006-08-28  Bruno Haible  <bruno@clisp.org>
17021
17022         * lib/c-strstr.h: New file, from GNU gettext.
17023         * lib/c-strstr.c: New file, from GNU gettext.
17024
17025 2006-08-28  Bruno Haible  <bruno@clisp.org>
17026
17027         * gnulib-tool: Reorder some statements.
17028
17029 2006-08-28  Bruno Haible  <bruno@clisp.org>
17030
17031         * gnulib-tool: New option --makefile-name.
17032         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Use
17033         $makefile_name.
17034         (func_import): Write $makefile_name to the cache file, and read it from
17035         there unless explicitly specified. Use $makefile_name as file name
17036         instead of Makefile.am. Adjust the recommendations accordingly.
17037
17038 2006-08-28  Bruno Haible  <bruno@clisp.org>
17039
17040         * gnulib-tool (func_verify_module): Check against misapplying patch.
17041
17042 2006-08-28  Bruno Haible  <bruno@clisp.org>
17043
17044         * gnulib-tool (func_relativize, func_relconcat): New functions.
17045         Give an error if --local-dir is given with --update.
17046         Remove trailing slashes from $local_gnulib_dir.
17047         (func_import): Store the relativized $local_gnulib_dir in
17048         gnulib-cache.m4, and read it from there if not specified explicitly.
17049
17050 2006-08-28  Bruno Haible  <bruno@clisp.org>
17051
17052         * gnulib-tool (func_get_tests_module): Don't assume that $gnulib_dir
17053         is the current directory. Respect also $local_gnulib_dir.
17054
17055 2006-08-28  Bruno Haible  <bruno@clisp.org>
17056             Simon Josefsson  <jas@extundo.com>
17057
17058         BeOS portability.
17059         * lib/getaddrinfo.c (PF_INET, PF_UNSPEC): New macros.
17060
17061 2006-08-27  Jim Meyering  <jim@meyering.net>
17062
17063         * doc/visibility.texi: Remove duplicate word: "pointer".
17064
17065 2006-08-26  Bruno Haible  <bruno@clisp.org>
17066
17067         * modules/inttypes (Files): Add lib/inttypes_.h, remove lib/inttypes.h.
17068         Add m4/inttypes.m4, remove m4/_inttypes_h.m4 and m4/include_next.m4.
17069         (Makefile.am): Create inttypes.h from inttypes_.h.
17070         * modules/stdint (Makefile.am): Substitute also ABSOLUTE_INTTYPES_H.
17071
17072         * modules/imaxabs: New file.
17073
17074         * modules/imaxdiv: New file.
17075
17076 2006-08-26  Bruno Haible  <bruno@clisp.org>
17077
17078         * m4/inttypes.m4: New file.
17079         * m4/_inttypes_h.m4: Remove file.
17080         * m4/inttypes-pri.m4 (gt_INTTYPES_PRI): Also AC_SUBST
17081         PRI_MACROS_BROKEN.
17082         * m4/stdint.m4 (gl_STDINT_H): Define also ABSOLUTE_INTTYPES_H.
17083
17084         * m4/imaxabs.m4: New file.
17085
17086         * m4/imaxdiv.m4: New file.
17087
17088 2006-08-26  Bruno Haible  <bruno@clisp.org>
17089
17090         * lib/inttypes_.h: New file.
17091         * lib/inttypes.h: Remove file.
17092         * lib/stdint_.h: Include <inttypes.h> through its absolute filename.
17093
17094         * lib/imaxabs.c: New file.
17095
17096         * lib/imaxdiv.c: New file.
17097
17098 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
17099
17100         New config-h module, so that "make" output needn't be cluttered
17101         by -DHAVE_CONFIG_H.
17102         * MODULES.html.sh (Support for building libraries and executables):
17103         Add config-h.
17104         * modules/config-h: New file.
17105         * gnulib-tool (nl, sed_transform_lib_file): New vars.
17106         (func_import): Turn "#ifdef HAVE_CONFIG_H" to "#if 1" if
17107         the config-h module is used.
17108
17109         New configmake module, so that "make" output needn't be cluttered
17110         by fluff like '-DLIBDIR=\"/usr/local/lib\"'.
17111         * MODULES.html.sh (Support for building libraries and executables):
17112         Add configmake.
17113         * modules/configmake: New file.
17114
17115 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
17116
17117         * m4/config-h.m4: New file.
17118
17119 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
17120
17121         * config/srclist.txt: Add elisp-comp.
17122
17123 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
17124
17125         * MODULES.html.sh (Support for building libraries and executables):
17126         Add elisp-comp.
17127         * build-aux/elisp-comp: New file.
17128         * modules/elisp-comp: New file.
17129
17130 2006-08-24  Bruno Haible  <bruno@clisp.org>
17131
17132         * gnulib-tool (func_create_testdir): Use non-default values of
17133         sourcebase and m4base.
17134
17135 2006-08-24  Bruno Haible  <bruno@clisp.org>
17136
17137         * MODULES.html.sh (Compatibility checks for POSIX:2001 functions: Fix
17138         HTML structure.
17139
17140 2006-08-23  Paul Eggert  <eggert@cs.ucla.edu>
17141
17142         * modules/openat (Depends-on): Add lchown.
17143
17144 2006-08-23  Bruno Haible  <bruno@clisp.org>
17145
17146         * gnulib-tool (func_import, func_create_testdir): Emit an invocation
17147         of gl_LOCK_EARLY instead of gl_LOCK.
17148
17149 2006-08-23  Bruno Haible  <bruno@clisp.org>
17150
17151         * m4/lock.m4 (gl_LOCK_BODY): Change the default value of gl_use_threads
17152         on OSF/1 to no.
17153         Reported by Stephen Cartwright <sgcartwr@ucalgary.ca>.
17154
17155 2006-08-23  Bruno Haible  <bruno@clisp.org>
17156
17157         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't consider BeOS statvfs
17158         as unusable.
17159
17160         * m4/lock.m4 (gl_LOCK_EARLY): Renamed from gl_LOCK.
17161         (gl_LOCK_BODY): Remove gl_PREREQ_LOCK invocation.
17162         (gl_LOCK): New macro.
17163
17164 2006-08-22  Simon Josefsson  <jas@extundo.com>
17165
17166         * modules/gc-md5 (Makefile.am): Need to add md5.h, after changes
17167         to md5 module.
17168
17169 2006-08-22  Simon Josefsson  <jas@extundo.com>
17170
17171         * MODULES.html.sh: Add "Support for maintaining and release
17172         projects".
17173
17174         * build-aux/gnupload: New file, from coreutils.
17175
17176 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
17177
17178         Avoid the need for AC_LIBSOURCES in m4 macros.
17179         * modules/arcfour (EXTRA_DIST): Add arcfour.h.
17180         * modules/arctwo (EXTRA_DIST): Add arctwo.h.
17181         * modules/check-version (EXTRA_DIST): Add check-version.h.
17182         * modules/crc (EXTRA_DIST): Add crc.h.
17183         * modules/des (EXTRA_DIST): Add des.h.
17184         * modules/gc (EXTRA_DIST): Add gc.h.
17185         * modules/getdelim (EXTRA_DIST): Add getdelim.h.
17186         * modules/getline (EXTRA_DIST): Add getline.h.
17187         * modules/getlogin_r (EXTRA_DIST): Add getlogin_r.h.
17188         * modules/hmac-md5 (EXTRA_DIST): Add hmac.h.
17189         * modules/hmac-sha1 (EXTRA_DIST): Add hmac.h.
17190         * modules/md2 (EXTRA_DIST): Add md2.h.
17191         * modules/md4 (EXTRA_DIST): Add md4.h.
17192         * modules/pagealign_alloc (EXTRA_DIST): Add pagealign_alloc.h.
17193         * modules/read-file (EXTRA_DIST): Add read-file.h.
17194         * modules/readline (EXTRA_DIST): Add readline.h.
17195         * modules/rijndael (EXTRA_DIST): Add rijndael-alg-fst.h,
17196         rijndael-api-fst.h.
17197
17198 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
17199
17200         * m4/rijndael.m4 (gl_ARCFOUR):
17201         * m4/arctwo.m4 (gl_ARCTWO):
17202         * m4/check-version.m4 (gl_CHECK_VERSION):
17203         * m4/crc.m4 (gl_CRC):
17204         * m4/des.m4 (gl_DES):
17205         * m4/gc-pbkdf2-sha1.m4 (gl_GC_PBKDF2_SHA1):
17206         * m4/gc.m4 (gl_GC):
17207         * m4/getdelim.m4 (gl_FUNC_GETDELIM):
17208         * m4/getline.m4 (gl_FUNC_GETLINE):
17209         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE):
17210         * m4/hmac-md5.m4 (gl_HMAC_MD5):
17211         * m4/hmac-sha1.m4 (gl_HMAC_SHA1):
17212         * m4/md2.m4 (gl_MD2):
17213         * m4/md4.m4 (gl_MD4):
17214         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC):
17215         * m4/read-file.m4 (gl_FUNC_READ_FILE):
17216         * m4/readline.m4 (gl_FUNC_READLINE):
17217         * m4/rijndael.m4 (gl_RIJNDAEL):
17218         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
17219         to get the necessary .h files and whatnot.
17220
17221 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
17222
17223         * config/srclist.txt: Remove gnupload, since coreutils now syncs from
17224         gnulib rather than the other way around.
17225         * config/srclistvars.sh (COREUTILS): Remove.
17226
17227 2006-08-22  Jim Meyering  <jim@meyering.net>
17228
17229         * modules/mkdir-p (Makefile.am): Fix typo: s/lib+SOURCES/lib_SOURCES/.
17230
17231         * modules/getpass-gnu (Makefile.am): Add getpass.h to EXTRA_DIST.
17232
17233 2006-08-22  Eric Blake  <ebb9@byu.net>
17234
17235         * modules/regexprops-generic: New file.
17236         * MODULES.html.sh (Support for building documentation): List it.
17237
17238 2006-08-22  Eric Blake  <ebb9@byu.net>
17239
17240         * m4/stdint_h.m4 (gl_AC_HEADER_STDINT_H): Avoid compiler warning.
17241         * m4/inttypes_h.m4 (gl_AC_HEADER_INTTYPES_H): Likewise.
17242         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Likewise.
17243         * m4/intmax_t.m4 (gt_AC_TYPE_INTMAX_T): Likewise.
17244
17245 2006-08-22  Bruno Haible  <bruno@clisp.org>
17246
17247         * gnulib-tool (func_emit_lib_Makefile_am): Don't treat lib_LIBRARIES
17248         and lib_LTLIBRARIES like the other lib_* variables.
17249
17250 2006-08-22  Bruno Haible  <bruno@clisp.org>
17251
17252         * build-aux/x-to-1.in: New file, from GNU gettext.
17253
17254 2006-08-22  Bruno Haible  <bruno@clisp.org>
17255
17256         * m4/readutmp.m4 (gl_READUTMP): Compile readutmp.c only if <utmp.h> or
17257         <utmpx.h> exists.
17258
17259 2006-08-22  Bruno Haible  <bruno@clisp.org>
17260
17261         * lib/readutmp.h: Skip most definitions if neither <utmp.h> nor
17262         <utmpx.h> exists.
17263
17264 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
17265
17266         BeOS portability.
17267         * lib/dirchownmod.c (dirchownmod): Don't use fchmod if it doesn't
17268         exist.
17269         Problem reported by Bruno Haible.
17270
17271 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
17272
17273         Avoid the need for AC_LIBSOURCES in m4 macros.
17274         * modules/acl (EXTRA_DIST): Add acl.h.
17275         * modules/argmatch (Files): Add m4/argmatch.m4.
17276         (configure.ac): Add gl_ARGMATCH.
17277         (EXTRA_DIST): Renamed from lib_SOURCES, for
17278         consistency with the other modules.  Remove argmatch.c.
17279         * modules/backupfile (EXTRA_DIST): Add backupfile.h.
17280         * modules/c-strtod (EXTRA_DIST): Add c-strtod.h.
17281         * modules/c-strtold (EXTRA_DIST): Add c-strtod.c, c-strtod.h.
17282         * modules/canonhost (EXTRA_DIST): Add c-canonhost.h.
17283         * modules/canonicalize (EXTRA_DIST): Add canonicalize.h.
17284         * modules/chdir-long (EXTRA_DIST): Add chdir-long.h.
17285         * modules/chdir-safer (EXTRA_DIST): Add chdir-safer.h.
17286         * modules/cloexec (EXTRA_DIST): Add cloexec.h.
17287         * modules/close-stream (EXTRA_DIST): Add close-stream.h.
17288         * modules/closeout (EXTRA_DIST): Add closeout.h.
17289         * modules/cycle-check (EXTRA_DIST): Add cycle-check.h.
17290         * modules/dev-ino (EXTRA_DIST): Add dev-ino.h.
17291         * modules/dirfd (EXTRA_DIST): Add dirfd.h.
17292         * modules/dirname (EXTRA_DIST): Renamed from lib_SOURCES.  Add
17293         dirname.h; remove basename.c and stripslash.c.
17294         * modules/exclude (EXTRA_DIST): Add exclude.h.
17295         * modules/exitfail (EXTRA_DIST): Add exitfail.h.
17296         * modules/fcntl-safer (EXTRA_DIST): Add fcntl-safer.h fcntl--.h.
17297         * modules/file-type (EXTRA_DIST): Add file-type.h.
17298         * modules/filemode (EXTRA_DIST): Add filemode.h.
17299         * modules/filenamecat (EXTRA_DIST): Add filenamecat.h.
17300         * modules/fopen-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
17301         * modules/fpending (EXTRA_DIST): Add __fpending.h.
17302         * modules/fprintftime (EXTRA_DIST): Add fprintftime.h.
17303         * modules/fsusage (EXTRA_DIST): Add fsusage.h.
17304         * modules/fts (EXTRA_DIST): Add fts_.h fts-cycle.c.
17305         * modules/getcwd (EXTRA_DIST): Add getcwd.h.
17306         * modules/getdate (EXTRA_DIST): Add getdate.c.
17307         * modules/gethrxtime (EXTRA_DIST): Add gethrxtime.h xtime.h.
17308         * modules/getpagesize (EXTRA_DIST): Add getpagesize.h.
17309         * modules/getpass (EXTRA_DIST): Add getpass.h.
17310         * modules/glob (EXTRA_DIST): Add glob_.h glob-libc.h.
17311         * modules/group-member (EXTRA_DIST): Add group-member.h.
17312         * modules/hard-locale (EXTRA_DIST): Add hard-locale.h.
17313         * modules/hash (EXTRA_DIST): Add hash.h.
17314         * modules/human (EXTRA_DIST): Add human.h.
17315         * modules/inttypes (EXTRA_DIST): Add inttypes.h.
17316         * modules/lchmod (EXTRA_DIST): Add lchmod.h.
17317         * modules/lchown (EXTRA_DIST): Add lchown.h.
17318         * modules/long-options (EXTRA_DIST): Add long-options.h.
17319         * modules/lstat (EXTRA_DIST): Add lstat.h.
17320         * modules/md5 (EXTRA_DIST): Add memcasecmp.h.
17321         * modules/memcoll (EXTRA_DIST): Add memcoll.h.
17322         * modules/mempcpy (EXTRA_DIST): Add mempcpy.h.
17323         * modules/memrchr (EXTRA_DIST): Add memrchr.h.
17324         * modules/memxor (EXTRA_DIST): Add memxor.h.
17325         * modules/mkancesdirs (EXTRA_DIST): Add mkancesdirs.h.
17326         * modules/mkdir-p (EXTRA_DIST): Add modechange.h.
17327         * modules/mountlist (EXTRA_DIST): Add mountlist.h.
17328         * modules/openat (EXTRA_DIST): Add at-func.c openat.h openat-priv.h.
17329         * modules/pathmax (EXTRA_DIST): Add pathmax.h.
17330         * modules/physmem (EXTRA_DIST): Add physmem.h.
17331         * modules/posixtm (EXTRA_DIST): Add posixtm.h.
17332         * modules/posixver (EXTRA_DIST): Add posixver.h.
17333         * modules/quote (EXTRA_DIST): Add quote.h.
17334         * modules/quotearg (EXTRA_DIST): Add quotearg.h.
17335         * modules/readtokens (EXTRA_DIST): Add readtokens.h.
17336         * modules/readutmp (EXTRA_DIST): Add readutmp.h.
17337         * modules/regex (EXTRA_DIST): Add regcomp.c regex.h regex_internal.c
17338         regex_internal.h regexec.c.
17339         * modules/safe-read (EXTRA_DIST): Add safe-read.h.
17340         * modules/safe-write (EXTRA_DIST): Add safe-write.h.
17341         * modules/same (EXTRA_DIST): Add same.h.
17342         * modules/same-inode (EXTRA_DIST): Add same-inode.h.
17343         * modules/save-cwd (EXTRA_DIST): Add save-cwd.h.
17344         * modules/savedir (EXTRA_DIST): Add savedir.h.
17345         * modules/sha1 (EXTRA_DIST): Add sha1.h.
17346         * modules/sig2str (EXTRA_DIST): Add sig2str.h.
17347         * modules/stat-macros (EXTRA_DIST): Add stat-macros.h.
17348         * modules/stat-time (EXTRA_DIST): Add stat-time.h.
17349         * modules/stdlib-safer (EXTRA_DIST): Add stdlib-safer.h stdlib--.h.
17350         * modules/strdup (EXTRA_DIST): Add strdup.h.
17351         * modules/strftime (EXTRA_DIST): Add strftime.h.
17352         * modules/strndup (EXTRA_DIST): Add strndup.h.
17353         * modules/strnlen (EXTRA_DIST): Add strnlen.h.
17354         * modules/strverscmp (EXTRA_DIST): Add strverscmp.h.
17355         * modules/time_r (EXTRA_DIST): Add time_r.h.
17356         * modules/timespec (EXTRA_DIST): Add timespec.h.
17357         * modules/tmpfile-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
17358         * modules/unistd-safer (EXTRA_DIST): Add unistd-safer.h unistd--.h.
17359         * modules/unlinkdir (EXTRA_DIST): Add unlinkdir.h.
17360         * modules/unlocked-io (EXTRA_DIST): Add unlocked-io.h.
17361         * modules/userspec (EXTRA_DIST): Add userspec.h.
17362         * modules/utimecmp (EXTRA_DIST): Add utimecmp.h.
17363         * modules/utimens (EXTRA_DIST): Add utimens.h.
17364         * modules/xalloc (EXTRA_DIST): Add xalloc.h.
17365         * modules/xgetcwd (EXTRA_DIST): Add xgetcwd.h.
17366         * modules/xnanosleep (EXTRA_DIST): Add xnanosleep.h.
17367         * modules/xreadlink (EXTRA_DIST): Add xreadlink.h.
17368         * modules/xstrtod (EXTRA_DIST): Add xstrtod.h.
17369         * modules/xstrtol (EXTRA_DIST): Add xstrtol.h.
17370         * modules/xstrtold (EXTRA_DIST): Add xstrtod.c xstrtod.h.
17371         * modules/yesno (EXTRA_DIST): Add yesno.h.
17372
17373 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
17374
17375         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Check for fchmod.
17376
17377         * m4/argmatch.m4: New file, from coreutils with AC_LIBSOURCES removed.
17378         * m4/dev-ino.m4, same-inode.m4: Remove.
17379
17380         * m4/_inttypes_h.m4 (gl_INTTYPES_H):
17381         * m4/acl.m4 (AC_FUNC_ACL):
17382         * m4/backupfile.m4 (gl_BACKUPFILE):
17383         * m4/c-strtod.m4 (gl_C99_STRTOLD):
17384         * m4/canon-host.m4 (gl_CANON_HOST):
17385         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
17386         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG):
17387         * m4/chdir-safer.m4 (gl_CHDIR_SAFER):
17388         * m4/cloexec.m4 (gl_CLOEXEC):
17389         * m4/close-stream.m4 (gl_CLOSE_STREAM):
17390         * m4/closeout.m4 (gl_CLOSEOUT):
17391         * m4/dirfd.m4 (gl_FUNC_DIRFD):
17392         * m4/dirname.m4 (gl_DIRNAME):
17393         * m4/exclude.m4 (gl_EXCLUDE):
17394         * m4/exitfail.m4 (gl_EXITFAIL):
17395         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER):
17396         * m4/file-type.m4 (gl_FILE_TYPE):
17397         * m4/filemode.m4 (gl_FILEMODE):
17398         * m4/filenamecat.m4 (gl_FILE_NAME_CONCAT):
17399         * m4/fpending.m4 (gl_FUNC_FPENDING):
17400         * m4/fprintftime.m4 (gl_FPRINTFTIME):
17401         * m4/fts.m4 (gl_FUNC_FTS):
17402         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL):
17403         * m4/getdate.m4 (gl_GETDATE):
17404         * m4/gethrxtime.m4 (gl_GETHRXTIME):
17405         * m4/getpagesize.m4 (gl_GETPAGESIZE):
17406         * m4/getpass.m4 (gl_FUNC_GETPASS):
17407         * m4/gettime.m4 (gl_GETTIME):
17408         * m4/getugroups.m4 (gl_GETUGROUPS):
17409         * m4/glob.m4 (gl_GLOB_SUBSTITUTE):
17410         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER):
17411         * m4/hard-locale.m4 (gl_HARD_LOCALE):
17412         * m4/hash.m4 (gl_HASH):
17413         * m4/idcache.m4 (gl_IDCACHE):
17414         * m4/lchmod.m4 (gl_FUNC_LCHMOD):
17415         * m4/lchown.m4 (gl_FUNC_LCHOWN):
17416         * m4/long-options.m4 (gl_LONG_OPTIONS):
17417         * m4/lstat.m4 (gl_FUNC_LSTAT):
17418         * m4/md5.m4 (gl_MD5):
17419         * m4/memcasecmp.m4 (gl_MEMCASECMP):
17420         * m4/memcoll.m4 (gl_MEMCOLL):
17421         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY):
17422         * m4/memrchr.m4 (gl_FUNC_MEMRCHR):
17423         * m4/memxor.m4 (gl_MEMXOR):
17424         * m4/mkancesdirs.m4 (gl_MKANCESDIRS):
17425         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS):
17426         * m4/modechange.m4 (gl_MODECHANGE):
17427         * m4/mountlist.m4 (gl_MOUNTLIST):
17428         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
17429         * m4/openat.m4 (gl_FUNC_OPENAT):
17430         * m4/pathmax.m4 (gl_PATHMAX):
17431         * m4/physmem.m4 (gl_PHYSMEM):
17432         * m4/posixtm.m4 (gl_POSIXTM):
17433         * m4/posixver.m4 (gl_POSIXVER):
17434         * m4/quote.m4 (gl_QUOTE):
17435         * m4/quotearg.m4 (gl_QUOTEARG):
17436         * m4/readtokens.m4 (gl_READTOKENS):
17437         * m4/readutmp.m4 (gl_READUTMP):
17438         * m4/regex.m4 (gl_REGEX):
17439         * m4/safe-read.m4 (gl_SAFE_READ):
17440         * m4/safe-write.m4 (gl_SAFE_WRITE):
17441         * m4/same.m4 (gl_SAME):
17442         * m4/save-cwd.m4 (gl_SAVE_CWD):
17443         * m4/savedir.m4 (gl_SAVEDIR):
17444         * m4/settime.m4 (gl_SETTIME):
17445         * m4/sha1.m4 (gl_SHA1):
17446         * m4/sig2str.m4 (gl_FUNC_SIG2STR):
17447         * m4/stat-macros.m4 (gl_STAT_MACROS):
17448         * m4/stat-time.m4 (gl_STAT_TIME):
17449         * m4/stdio-safer.m4 (gl_FOPEN_SAFER):
17450         * m4/stdlib-safer.m4 (gl_STDLIB_SAFER):
17451         * m4/strdup.m4 (gl_FUNC_STRDUP):
17452         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME):
17453         * m4/strndup.m4 (gl_FUNC_STRNDUP):
17454         * m4/strnlen.m4 (gl_FUNC_STRNLEN):
17455         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP):
17456         * m4/time_r.m4 (gl_TIME_R):
17457         * m4/timespec.m4 (gl_TIMESPEC):
17458         * m4/unistd-safer.m4 (gl_UNISTD_SAFER):
17459         * m4/unlinkdir.m4 (gl_UNLINKDIR):
17460         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO):
17461         * m4/userspec.m4 (gl_USERSPEC):
17462         * m4/utimecmp.m4 (gl_UTIMECMP):
17463         * m4/utimens.m4 (gl_UTIMENS):
17464         * m4/xalloc.m4 (gl_XALLOC):
17465         * m4/xgetcwd.m4 (gl_XGETCWD):
17466         * m4/xnanosleep.m4 (gl_XNANOSLEEP):
17467         * m4/xreadlink.m4 (gl_XREADLINK):
17468         * m4/xstrtod.m4 (gl_XSTRTOD):
17469         * m4/yesno.m4 (gl_YESNO):
17470         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
17471         to get the necessary .h files and whatnot.
17472
17473 2006-08-21  Mark D. Baushke  <mdb@gnu.org>
17474             Bruno Haible  <bruno@clisp.org>
17475
17476         * gnulib-tool (func_verify_module): Work around Sun's non-POSIX 1003.2
17477         /bin/sh understanding of '!' conditional negation.
17478
17479 2006-08-21  Jim Meyering  <jim@meyering.net>
17480
17481         * modules/openat (Depends-on): Really alphabetize.
17482
17483         * modules/acl (Depends-on): Add error and quote.
17484
17485         * check-module (find_included_lib_files): Add at-func.c to the
17486         ok-to-include-more-than-once white list.
17487
17488         * modules/openat (Depends-on): Add lstat.  Alphabetize.
17489
17490 2006-08-21  Bruno Haible  <bruno@clisp.org>
17491
17492         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
17493         Emit a pkgdata_DATA variable only if some snippets add contents to it.
17494         Reported by Martin Lambers <marlam@marlam.de>.
17495
17496 2006-08-21  Bruno Haible  <bruno@clisp.org>
17497
17498         * gnulib-tool (func_emit_lib_Makefile_am): If the snippets already
17499         specify an installation location, don't emit a noinst_LIBRARIES or
17500         noinst_LTLIBRARIES assignment.
17501
17502 2006-08-21  Bruno Haible  <bruno@clisp.org>
17503
17504         BeOS portability.
17505         * modules/mbchar (Include): Don't test HAVE_WCTYPE_H any more, since
17506         BeOS has mbrtowc() but no <wctype.h>.
17507
17508 2006-08-21  Bruno Haible  <bruno@clisp.org>
17509
17510         BeOS portability.
17511         * m4/mbchar.m4 (gl_MBCHAR): Compile mbchar.c also if <wctype.h> doesn't
17512         exist.
17513
17514 2006-08-21  Bruno Haible  <bruno@clisp.org>
17515
17516         BeOS portability.
17517         * lib/mbchar.h: Include <wctype.h> only if it exists.
17518
17519 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
17520
17521         Remove files that are no longer needed by their respective modules.
17522         * m4/obstack.m4: Remove.
17523         * m4/strerror_r.m4: Remove.
17524         * m4/uint32_t.m4: Remove.
17525         * m4/uintptr_t.m4: Remove.
17526         * m4/ullong_max.m4: Remove.
17527         * m4/xstrtoimax.m4: Remove.
17528         * m4/xstrtoumax.m4: Remove.
17529
17530         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Do not require
17531         gl_AC_TYPE_UINTMAX_T, gl_STRUCT_DEV_INO, or gl_SAME_INODE, since gnulib
17532         dependencies now capture this.
17533
17534         * m4/cycle-check.m4 (gl_CYCLE_CHECK):
17535         Do not use AC_LIBSOURCES, since gnulib modules now do this.
17536         * m4/fsusage.m4 (gl_FSUSAGE): Likewise.
17537         * m4/human.m4 (gl_HUMAN): Likewise.
17538         * m4/inttostr.m4 (gl_INTTOSTR): Likewise.
17539         * m4/xstrtol.m4 (gl_XSTRTOL): Likewise.
17540
17541         * m4/filemode.m4 (gl_FILEMODE): Require AC_STRUCT_ST_DM_MODE.
17542
17543         * m4/filemode.m4 (gl_PREREQ_FSUSAGE_EXTRA): Do not require
17544         gl_AC_TYPE_INTMAX_T or gl_AC_TYPE_UINTMAX_T, since we now require
17545         stdint.
17546         * m4/human.m4 (gl_HUMAN): Likewise.
17547         * m4/inttostr.m4 (gl_PREREQ_INTTOSTR): Likewise.
17548         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Likewise.
17549         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
17550         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
17551         * m4/xstrtol (gl_XSTRTOL): Likewise.
17552
17553         * m4/gethrxtime.m4 (gl_XTIME): gl_AC_TYPE_LONG_LONG ->
17554         AC_TYPE_LONG_LONG_INT.
17555         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
17556         * m4/strtoll.m4 (gl_FUNC_STRTOLL): Likewise.
17557         * m4/strtoull.m4 (gl_FUNC_STRTOULL): Likewise, for unsigned long.
17558         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
17559
17560         * m4/human.m4 (gl_HUMAN): Do not require AM_STDBOOL_H since we depend
17561         on stdbool.
17562
17563         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL_H, gl_PREREQ_XSTRTOL): Remove.
17564         (gl_PREREQ_XSTRTOUL): Remove.
17565
17566         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Check for hasmntopt.
17567
17568         * m4/posixver.m4: Fix comment since head -1 now works even in POSIX
17569         mode.
17570
17571 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
17572
17573         Add and change modules to make it easier for coreutils to use
17574         gnulib-tool.
17575         * modules/backupfile (Files): Remove m4/d-ino.m4.
17576         (Depends-on): Add d-ino.
17577         * modules/cycle-check (Depends-on): Add stdint.
17578         (lib_SOURCES): Add cycle-check.h.
17579         * modules/d-ino: New module.
17580         * modules/d-type: New module.
17581         * modules/error (Files): Remove m4/strerror_r.m4.
17582         * modules/filemode (Files): Add m4/st_dm_mode.m4.
17583         * modules/fsuage (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
17584         m4/inttypes_h.m4, m4/uintmax_t.m4.
17585         (Depends-on): Add stdint.
17586         (lib_SOURCES): Add fsusage.h.
17587         * modules/getcwd (Files): Remove d-ino.m4.
17588         (Depends-on): Add d-ino.
17589         * modules/getndelim2 (Depends-on): Add stdint.
17590         * modules/glob (Files): Remove m4/d-type.m4.
17591         (Depends-on): Add d-type.
17592         * modules/host-os: New module.
17593         * modules/human (Files):  Remove m4/ulonglong.m4, m4/stdint_h.m4,
17594         m4/inttypes_h.m4, m4/uintmax_t.m4.
17595         * Depends-on: Add stdint.
17596         (lib_SOURCES): Add human.h.
17597         * modules/inttostr (Files): Remove m4/intmax_t.m4,
17598         m4/inttostr.m4, m4/inttypes_h.m4, m4/longlong.m4, m4/stdint_h.m4,
17599         m4/uintmax_t.m4, m4/ulonglong.m4.
17600         (Depends-on): Add stdint.
17601         (EXTRA_DIST): Add inttostr.h.
17602         * modules/lchmod: New module.
17603         * modules/link-follow: New module.
17604         * modules/mkdir-p (Files): Remove lib/lchmod.h, m4/lchmod.m4.
17605         (Depends-on): Add lchmod.
17606         * modules/mkstemp (Files): Remove m4/ulonglong.m4,
17607         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4.
17608         (Depends-on): Add stdint.
17609         * modules/obstack (Files): Remove m4/inttypes_h.m4, m4/obstack.m4,
17610         m4/stdint_h.m4, m4/uintmax_t.m4, m4/ulonglong.m4.
17611         (Depends-on): Add stdint.
17612         (configure.ac): Change gl_OBSTACK to AC_FUNC_OBSTACK.
17613         * modules/perl: New module.
17614         * modules/regex (Depends-on): Add stdint.
17615         * modules/rmdir-errno: New module.
17616         * modules/strtoimax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
17617         m4/intmax_t.m4.
17618         (Depends-on): Add stdint.
17619         * modules/strtoumax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
17620         m4/uintmax_t.m4.
17621         (Depends-on): Add stdint.
17622         * modules/unlink-busy: New module.
17623         * modules/utimecmp (Depends-on): Add stdint.
17624         * modules/uptime: New module.
17625         * modules/winsz-ioctl: New module.
17626         * modules/winsz-termios: New module.
17627         * modules/xnanosleep (Depends-on): Add nanosleep.
17628         * modules/ullong_max: Remove.
17629         * modules/xstrtoimax (Files): Remove m4/xstrtoimax.m4.
17630         (configure.ac): Remove gl_XSTRTOIMAX; no action needed now.
17631         * modules/xstrtol (Files): Remove m4/ulonglong.m4, m4/longlong.m4,
17632         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4, m4/intmax_t.m4.
17633         (Depends-on): Add inttypes.
17634         (lib_SOURCES): Add xstrtol.h.
17635         * modules/xstrtoumax (Files): Remove m4/xstrtoumax.m4.
17636         (configure.ac): Remove gl_XSTRTOUMAX; no action needed now.
17637         * MODULES.html.sh: Move 'assert' into the assert section.
17638         Move 'dummy' into the linking section.
17639         Remove ullong_max.
17640         Add section for compatibility checks for POSIX:2001 functions,
17641         and put d-ino, d-type, link-follow, rmdir-errno, unlink-busy,
17642         winsz-ioctl, and winsz-termios into it.
17643         Add lchmod.
17644         Add top-level Misc section and put host-os, perl, and uptime
17645         into it.
17646
17647 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
17648
17649         * lib/cycle-check.h: Include <stdint.h> unconditionally, since we
17650         now assume the stdint module.  Do not include inttypes.h.
17651         * lib/fsusage.h: Likewise.
17652         * lib/getndelim2.c: Likewise.
17653         * lib/human.h: Likewise.
17654         * lib/inttostr.h: Likewise.
17655         * lib/obstack.c: Likewise.
17656         * lib/regex_internal.h: Likewise.
17657         * lib/tempname.c: Likewise.
17658         * lib/utimecmp.c: Likewise.
17659         * lib/xstrtol.h: Likewise.
17660
17661         * lib/stat_.h: Fix typo: HAVE_FUNC_LSTAT -> HAVE_LSTAT.
17662
17663         * lib/strtoimax.c: Adjust to macro name changes in Autoconf,
17664         e.g., HAVE_LONG_LONG -> HAVE_LONG_LONG_INT.
17665         * lib/xtime.h: Likewise.
17666
17667 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
17668
17669         * modules/openat (Files): Add lib/fchmodat.c.
17670         Fixes problem reported by Jay Youngman.
17671
17672 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
17673
17674         * lib/fchmodat.c: New file, from coreutils.  This was inadvertently
17675         omitted in the 2006-08-17 update.  Problem reported by Jay Youngman.
17676
17677 2006-08-18  Paul Eggert  <eggert@cs.ucla.edu>
17678             Bruno Haible  <bruno@clisp.org>
17679
17680         * m4/bison-i18n.m4 (BISON_I18N): Also handle the case where yacc exists
17681         and is a script that invokes bison. Tighten the code. Add comments.
17682
17683 2006-08-18  Jim Meyering  <jim@meyering.net>
17684
17685         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Also check for
17686         CLOCK_REALTIME, since gethrxtime may revert to using clock_gettime via
17687         gettime.c.  Gabor Z. Papp reported that gethrxtime-using programs
17688         failed to link due to unresolved clock_gettime on a linux-2.4.x system.
17689
17690 2006-08-18  Bruno Haible  <bruno@clisp.org>
17691
17692         * modules/bison-i18n: New file.
17693         * MODULES.html.sh (Internationalization functions): Add it.
17694
17695 2006-08-18  Bruno Haible  <bruno@clisp.org>
17696
17697         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Also check for
17698         sys/statvfs.h. When getmntinfo was found, check its declaration and
17699         set either MOUNTED_GETMNTINFO or MOUNTED_GETMNTINFO2 depending on it.
17700
17701 2006-08-18  Bruno Haible  <bruno@clisp.org>
17702
17703         * m4/bison-i18n.m4: New file, from bison.
17704
17705 2006-08-18  Bruno Haible  <bruno@clisp.org>
17706
17707         * lib/mountlist.c [MOUNTED_GETMNTINFO2]: Include sys/statvfs.h.
17708         (ME_DUMMY): Treat "kernfs" as a dummy.
17709         (read_file_system_list) [MOUNTED_GETMNTINFO2]: Implement.
17710
17711 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
17712
17713         Update from coreutils.
17714
17715         2006-08-15  Jim Meyering  <jim@meyering.net>
17716
17717         * m4/openat.m4 (gl_FUNC_OPENAT): Add at-func.c via AC_LIBSOURCES.
17718
17719         2006-01-17  Jim Meyering  <jim@meyering.net>
17720
17721         * m4/fts.m4 (gl_FUNC_FTS_CORE): Depend on gl_FUNC_OPENAT.
17722
17723         2006-01-11  Jim Meyering  <jim@meyering.net>
17724
17725         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile fchmodat.c.
17726         Check for the lchmod function.
17727
17728 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
17729
17730         Update from coreutils.
17731
17732         * lib/__fpending.h: Add copyright notice.
17733         * lib/fprintftime.h: Likewise.
17734         * lib/savedir.c: Use (C) in copyright notice.
17735         * lib/savedir.h: Likewise.
17736
17737         2006-08-15  Jim Meyering  <jim@meyering.net>
17738
17739         * lib/at-func.c: New file, with the logic of all emulated at-functions.
17740         * lib/openat-priv.h: Include <errno.h> and define ENOSYS,
17741         in support of the EXPECTED_ERRNO macro.
17742         * lib/openat.c (fstatat, unlinkat, fchownat): Remove function
17743         definitions.  Instead, define the appropriate symbols and include
17744         "at-func.c".
17745         * lib/mkdirat.c (mkdirat): Likewise.
17746         * lib/fchmodat.c (fchmodat): Likewise.
17747         (ENOSYS): Remove definition.
17748         * lib/openat.c: Don't include <errno.h>, now that "openat-priv.h" does
17749         it.  Don't include "unistd--.h" -- it wasn't ever used.
17750
17751         2006-01-17  Jim Meyering  <jim@meyering.net>
17752
17753         Rewrite fts.c not to change the current working directory,
17754         by using openat, fstatat, fdopendir, etc..
17755
17756         * lib/fts.c [! _LIBC]: Include "openat.h" and "unistd--.h".
17757         (HAVE_OPENAT_SUPPORT): Define.
17758         [_LIBC] (fchdir): Don't undef or define; no longer used.
17759         (FCHDIR): Define in terms of cwd_advance_fd rather than fchdir.
17760         Now, this `function' always succeeds, and consumes its file descriptor
17761         parameter -- so callers must not close such FDs.  Update callers.
17762         (diropen_fd, opendirat, cwd_advance_fd): New functions.
17763         (diropen): Add parameter, SP.  Adjust all callers.
17764         Implement using diropen_fd, rather than open.
17765         (fts_open): Initialize new member, fts_cwd_fd.
17766         Remove fts_rft-setting code.
17767         (fts_close): Close fts_cwd_fd, if necessary.
17768         (__opendir2): Define in terms of opendir or opendirat,
17769         depending on whether the FST_NOCHDIR flag is set.
17770         (fts_build): Since fts_safe_changedir consumes its FD, and since
17771         this code must do `closedir(dirp)', dup the dirfd(dirp) argument,
17772         and close the dup'd file descriptor upon failure.
17773         (fts_stat): Use fstatat(...AT_SYMLINK_NOFOLLOW) in place of lstat.
17774         (fts_safe_changedir): Tweak semantics to reflect that this function
17775         now calls cwd_advance_fd and hence consumes its FD argument.
17776         * lib/fts_.h [struct FTS] (fts_cwd_fd): New member.
17777         [struct FTS] (fts_rft): Remove now-unused member.
17778         [struct FTS] (fts_cycle.state): Improve comment.
17779
17780         * lib/openat.c (openat_needs_fchdir): New function.
17781         * lib/openat.h (openat_needs_fchdir): Declare it.
17782
17783 2006-08-16  Paul Eggert  <eggert@cs.ucla.edu>
17784
17785         * lib/memcoll.c (memcoll): Set errno = 0 in the shortcut case, too.
17786         Problem and fix reported by Pádraig Brady in
17787         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00099.html>.
17788
17789 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
17790
17791         * modules/cycle-check (configure.ac): Add gl_CYCLE_CHECK.
17792
17793 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
17794
17795         * lib/memcoll.c (memcoll): Optimize for the common case where the
17796         arguments are bytewise equal.
17797
17798 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
17799
17800         * doc/regexprops-generic.texi: Add a copyright notice.
17801
17802 2006-08-15  Bruno Haible  <bruno@clisp.org>
17803
17804         * modules/tmpdir (License): Change to LGPL.
17805
17806 2006-08-15  Bruno Haible  <bruno@clisp.org>
17807
17808         * gnulib-tool (func_all_modules, func_verify_module): COPYING is not a
17809         module.
17810
17811 2006-08-14  Simon Josefsson  <jas@extundo.com>
17812
17813         * config/srclist.txt: Add gnupload.
17814
17815 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
17816
17817         Change copyright notice from LGPL 2 to GPL 2, since that's the
17818         standard form used in the gnulib repository.
17819         * tests/test-lock.c: Likewise.
17820         * tests/test-stdint.c: Likewise.
17821         * tests/test-tls.c: Likewise.
17822
17823         * users.txt: Add bison, diffutils, libprelude, prelude-lml,
17824         prelude-manager.  User shorter URLs for GNU projects, without '?'.
17825         Add copyright notice.
17826
17827         * check-module: Add copyright notice.  Output a copyright
17828         notice if "--version" is specified.
17829         * modules/COPYING: New file.
17830         * tests/test-getaddrinfo.c: Add copyright notice.
17831         * tests/test-verify.c: Likewise.
17832
17833 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
17834
17835         Change copyright notice from LGPL 2 to GPL 2, since that's the
17836         standard form used in the gnulib repository.
17837         * lib/lock.c: LGPL -> GPL.
17838         * lib/lock.h: Likewise.
17839         * lib/strnlen1.c: Likewise.
17840         * lib/strnlen1.h: Likewise.
17841         * lib/tls.c: Likewise.
17842         * lib/tls.h: Likewise.
17843         * lib/tmpdir.c: Likewise.
17844
17845         * lib/TODO: Remove; this belongs only in coreutils.
17846
17847 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
17848
17849         Add copyright notices to long-enough files that lack them, since
17850         otherwise the files aren't clearly free.  Use the same notice that
17851         getdate.texi already uses.
17852         * doc/alloca-opt.texi: Add copyright notice.
17853         * doc/alloca.texi: Likewise.
17854         * doc/ctime.texi: Likewise.
17855         * doc/functions.texi: Likewise.
17856         * doc/gcd.texi: Likewise.
17857         * doc/gnulib-tool.texi: Likewise.
17858         * doc/inet_ntoa.texi: Likewise.
17859         * doc/visibility.texi: Likewise.
17860
17861         * doc/getdate.texi: Update FDL version from 1.1 to 1.2.
17862         * doc/quote.texi: Add copyright notice.
17863
17864         * doc/solaris-versions: Add SunOS 5.10, SunOS 1.x, SunOS 4.0, SunOS
17865         4.0.x, SunOS 4.1.1.1, SunOS 4.1.1_U1, SunOS 4.1.3B.  SunOS 4.1.3
17866         was Solaris 1.1A.  Remove space before B in Solaris 1.1.1B.
17867         Mention SunOS 5.11.  Mention that everything before SunOS 5.7
17868         is now obsolete, and give a pointer to the Sun list.
17869         Add copyright notice.
17870
17871 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
17872
17873         * config/srclistvars.sh: Add copyright notice.
17874
17875 2006-08-14  Eric Blake  <ebb9@byu.net>
17876
17877         Import the following change from libc:
17878
17879         2006-08-12  Ulrich Drepper  <drepper@redhat.com>
17880
17881         Upstream bug 2997.
17882         * lib/misc/error.c: Add space between program name and message if file
17883         name is missing.
17884
17885 2006-08-12  Karl Berry  <karl@gnu.org>
17886
17887         * config/srclist.txt (ssize_t.m4, sig_atomic_t.m4, signalblocking.m4):
17888         remove, these originate in gnulib now.
17889
17890 2006-08-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17891
17892         * doc/Makefile (standards.info standards.html standards.dvi):
17893         Also depend on make-stds.texi.
17894
17895 2006-08-11  Paul Eggert  <eggert@cs.ucla.edu>
17896
17897         * lib/pipe-safer.c (pipe_safer): Fix misspelling: HAVE_FUNC_PIPE ->
17898         HAVE_PIPE.  Fix a file descriptor leak when fd_safer fails.
17899
17900         * lib/regex_internal.c (re_string_skip_chars): Don't assume WEOF fits
17901         in wchar_t.  Problem reported by Eric Blake.
17902
17903         * lib/snprintf.c (snprintf): memcpy LEN bytes, not SIZE - 1, when
17904         LEN is smaller than SIZE.  Suggested by Bruno Haible.
17905         Also, help the compiler to keep LEN in a register.
17906
17907 2006-08-11  Eric Blake  <ebb9@byu.net>
17908
17909         * users.txt: Sort.  Add tar.
17910
17911 2006-08-11  Bruno Haible  <bruno@clisp.org>
17912
17913         * users.txt: New file.
17914
17915 2006-08-11  Bruno Haible  <bruno@clisp.org>
17916
17917         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Include <stdio.h> and <time.h>
17918         before <wchar.h>. Needed for OSF/1 and BSD/OS.
17919
17920 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
17921
17922         * modules/snprintf (Depends-on): Remove minmax.
17923         (Maintainer): Add self and Bruno.
17924
17925 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
17926
17927         * lib/.cppi-disable: Add snprintf.h, socket_.h.
17928         * lib/snprintf.c: Include <errno.h> and <limits.h>.
17929         (EOVERFLOW): Define if the system does not.
17930         Do not include "minmax.h"; it wasn't used.
17931         (snprintf): Don't assume size_t promotes to an unsigned type.
17932         Fix bug when generated string was too long for the buffer: the
17933         buffer's contents are supposed to be the initial prefix of the
17934         output.  Don't assume vasnprintf returns EOVERFLOW if the size
17935         exceeds INT_MAX; do the check ourselves.
17936
17937         Import the following changes from libc:
17938
17939         2006-06-02  Jakub Jelinek  <jakub@redhat.com>
17940
17941         * lib/posix/regex_internal.c (re_string_skip_chars): If no character
17942         has been converted at all, set *last_wc to WEOF.  If mbrtowc failed,
17943         set wc to the byte which couldn't be converted.
17944         (re_string_reconstruct): Don't clear valid_raw_len before calling
17945         re_string_skip_chars.  If wc is WEOF after re_string_skip_chars, set
17946         tip_context using re_string_context_at.
17947
17948         2006-05-02  Ulrich Drepper  <drepper@redhat.com>
17949
17950         * lib/posix/regex.h: g++ still cannot handled [restrict].
17951
17952         2006-04-21  Ulrich Drepper  <drepper@redhat.com>
17953
17954         * lib/posix/regex.h: Remove special handling for VMS.
17955
17956 2006-08-10  Jim Meyering  <jim@meyering.net>
17957
17958         * modules/same-inode: New module.
17959         * modules/dev-ino: New module.
17960         * modules/cycle-check: Depend on these modules, rather than simply
17961         including their .h files.
17962         (Makefile.am): Don't list cycle-check.[ch] here, now that they're
17963         required via m4/cycle-check.m4.
17964         * modules/same: Depend on new same-inode module, rather than
17965         including same-inode.h.
17966         * modules/chdir-safer: New file.
17967
17968         * modules/chown (Depends-on): Add stat-macros.
17969
17970 2006-08-10  Jim Meyering  <jim@meyering.net>
17971
17972         * m4/cycle-check.m4: New file.
17973         Require gl_STRUCT_DEV_INO and gl_SAME_INODE.
17974         * m4/dev-ino.m4, m4/same-inode.m4: New files.
17975
17976 2006-08-10  Eric Blake  <ebb9@byu.net>
17977
17978         * modules/verror (Depends-on): Remove bogus gl_VERROR that snuck
17979         in from original proposal.
17980
17981 2006-08-10  Eric Blake  <ebb9@byu.net>
17982         and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
17983
17984         * gnulib-tool (func_import): Detect unexpanded macros in gnulib
17985         namespace.
17986
17987 2006-08-10  Bruno Haible  <bruno@clisp.org>
17988
17989         * gnulib-tool (func_create_testdir): Detect unexpanded macros here
17990         as well.
17991
17992 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
17993
17994         Sync from coreutils.
17995
17996         2006-07-19  Mike Frysinger  <vapier@gentoo.org>
17997
17998         * lib/mountlist.c [ME_REMOTE]: Filter out cifs.
17999         Reported by Toralf Förster in <http://bugs.gentoo.org/141012>.
18000
18001 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
18002
18003         * modules/restrict: Remove; no longer needed now that we assume
18004         Autoconf 2.59 or later.
18005         * MODULES.html.sh: Remove 'restrict'.
18006         * modules/argp (Depends-on): Remove 'restrict'.
18007         * modules/base64 (Depends-on): Likewise.
18008         * modules/gc (Depends-on): Likewise.
18009         * modules/getaddrinfo (Depends-on): Likewise.
18010         * modules/glob (Depends-on): Likewise.
18011         * modules/inet_ntop (Depends-on): Likewise.
18012         * modules/inet_pton (Depends-on): Likewise.
18013         * modules/memxor (Depends-on): Likewise.
18014         * modules/regex (Depends-on): Likewise.
18015         * modules/strtok_r (Depends-on): Likewise.
18016         * modules/time_r (Depends-on): Likewise.
18017
18018 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
18019
18020         * m4/argp.m4 (gl_ARGP): Require AC_C_RESTRICT.
18021         * m4/gc.m4 (gl_PREREQ_GC): Likewise.
18022         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
18023         * m4/inet_ntop.m4 (gl_PREREQ_INET_NTOP): Likewise.
18024         * m4/inet_pton.m4 (gl_PREREQ_INET_PTON): Likewise.
18025         * m4/memxor.m4 (gl_MEMXOR): Likewise.
18026         * m4/restrict.m4: Remove; no longer needed.  All remaining uses of
18027         gl_C_RESTRICT replaced by AC_C_RESTRICT.
18028
18029         Merge from coreutils.
18030         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_C_RESTRICT, not
18031         gl_C_RESTRICT, now that we assume Autoconf 2.59 or later.
18032         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
18033         * m4/time_r.m4 (gl_TIME_R): Likewise.
18034
18035 2006-08-09  Karl Berry  <karl@gnu.org>
18036
18037         * config/srclist.txt: no more gettext-tools, per Bruno.
18038
18039 2006-08-08  Eric Blake  <ebb9@byu.net>
18040
18041         * modules/verror: New module.
18042         * MODULES.html.sh: Document it.
18043
18044 2006-08-08  Eric Blake  <ebb9@byu.net>
18045
18046         * lib/verror.h, lib/verror.c: New files.
18047
18048 2006-08-08  Eric Blake  <ebb9@byu.net>
18049
18050         * lib/verror.c (verror_at_line): Work around glibc bug 2997, so that
18051         verror_at_line output complies with GNU Coding Standards even when
18052         file is NULL.
18053
18054 2006-08-07  Bruno Haible  <bruno@clisp.org>
18055
18056         * lib/allocsa.h (sa_alignof) [_AIX]: Also consider 'long long' in newer
18057         versions of AIX.
18058         Reported by Ralf Wildenhues.
18059
18060 2006-08-07  Bruno Haible  <bruno@clisp.org>
18061
18062         * gnulib-tool (func_create_testdir): Wrap the set of autoconf snippets
18063         in an AC_DEFUN. Needed so that the autoconf snippets can use
18064         AC_REQUIRE.
18065
18066 2006-08-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18067
18068         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
18069         Initialize pkgdata_DATA.
18070         * modules/javaversion (Makefile.am): Add to pkgdata_DATA, rather than
18071         overriding it.
18072
18073 2006-08-06  Eric Blake  <ebb9@byu.net>
18074
18075         * lib/error.h: Fold in some upstream changes from glibc.
18076         * lib/error.c: Likewise.
18077
18078 2006-08-04  Bruno Haible  <bruno@clisp.org>
18079
18080         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
18081         Make the mostlyclean-local rule depend on mostlyclean-generic.
18082         Reported by Jim Meyering. Solution suggested by Ralf Wildenhues.
18083
18084 2006-07-31  Bruno Haible  <bruno@clisp.org>
18085
18086         * m4/localcharset.m4 (gl_LOCALCHARSET): Remove tests for <stddef.h>,
18087         <stdlib.h>, <string.h>.
18088
18089 2006-07-30  Bruno Haible  <bruno@clisp.org>
18090
18091         * modules/readlink (License): Change to LGPL.
18092
18093 2006-07-30  Bruno Haible  <bruno@clisp.org>
18094
18095         * modules/javaversion (Makefile.am): Distribute javaversion.java and
18096         javaversion.class. Also install javaversion.class in $(pkgdatadir) and
18097         set PKGDATADIR to point to it.
18098
18099 2006-07-30  Bruno Haible  <bruno@clisp.org>
18100
18101         * modules/csharpexec (configure.ac): Comment out macro invocation.
18102         * modules/javaexec (configure.ac): Likewise.
18103         * modules/javacomp-script (configure.ac): Likewise.
18104
18105         * modules/csharpcomp-script (configure.ac): Use AC_REQUIRE.
18106
18107 2006-07-30  Bruno Haible  <bruno@clisp.org>
18108
18109         * modules/clean-temp (Depends-on): Add linkedhash-list, remove
18110         linked-list.
18111
18112 2006-07-30  Bruno Haible  <bruno@clisp.org>
18113
18114         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Assume <string.h> exists.
18115
18116 2006-07-30  Bruno Haible  <bruno@clisp.org>
18117
18118         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
18119         Initialize MOSTLYCLEANFILES to core and *.stackdump, so that core dumps
18120         get removed.
18121
18122 2006-07-29  Bruno Haible  <bruno@clisp.org>
18123
18124         Make it possible for gnulib-tool to work with locally modified or
18125         augmented gnulib repositories.
18126         * gnulib-tool (func_usage): Document --local-dir option.
18127         (local_gnulib_dir): New variable.
18128         Handle --local-dir option.
18129         (func_lookup_file): New function.
18130         (func_all_modules, func_verify_module): Look also in $local_gnulib_dir.
18131         (func_get_description, func_get_filelist, func_get_description,
18132         func_get_filelist, func_get_dependencies, func_get_autoconf_snippet,
18133         func_get_automake_snippet, func_get_include_directive,
18134         func_get_license, func_get_maintainer): Use func_lookup_file.
18135         (func_import, func_create_testdir): Use func_lookup_file.
18136
18137 2006-07-29  Bruno Haible  <bruno@clisp.org>
18138
18139         * modules/setenv (Depends-on): Add unistd.
18140
18141 2006-07-29  Bruno Haible  <bruno@clisp.org>
18142
18143         * lib/setenv.c: Undo unintended modification done on 2006-02-27.
18144
18145 2006-07-29  Bruno Haible  <bruno@clisp.org>
18146
18147         * lib/localcharset.c: Assume <stddef.h>, <stdlib.h>, <string.h> exist.
18148
18149 2006-07-29  Bruno Haible  <bruno@clisp.org>
18150
18151         * gnulib-tool (import, update): If there is no Makefile.am, look at
18152         aclocal.m4, instead of bailing out.
18153
18154 2006-07-29  Bruno Haible  <bruno@clisp.org>
18155
18156         * gnulib-tool (func_usage): Revert most of the 2006-07-15 change.
18157         Categorize the options by when they are useful.
18158
18159 2006-07-29  Bruno Haible  <bruno@clisp.org>
18160
18161         * gnulib-tool (func_usage): Document option --no-libtool.
18162         Handle option --no-libtool.
18163         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Update
18164         for changed semantics of $libtool variable.
18165         (func_import): Likewise. If libtool is not used, show this through
18166         an option --no-libtool.
18167         (func_create_testdir): Update.
18168
18169 2006-07-29  Bruno Haible  <bruno@clisp.org>
18170
18171         * gnulib-tool (func_import): Extend error message about missing
18172         --doc-base.
18173
18174 2006-07-29  Bruno Haible  <bruno@clisp.org>
18175
18176         * gnulib-tool (func_import): Don't create the $docbase directory if
18177         there is no file to store there.
18178
18179 2006-07-29  Bruno Haible  <bruno@clisp.org>
18180
18181         * gnulib-tool (autoconf_minversion): If a --dir option is given and
18182         relevant, look for configure.ac there, not in the current directory.
18183         Also use a simple search for AC_PREREQ, not "autoconf --trace".
18184
18185 2006-07-29  Bruno Haible  <bruno@clisp.org>
18186
18187         * gnulib-tool (SORT): New variable.
18188         (func_usage): Undocument --assume-autoconf option.
18189         Remove --assume-autoconf option handling.
18190         (autoconf_minversion): Determine from the contents of configure.ac.
18191         (func_import): Remove autoconf_minversion handling.
18192         Suggested by Eric Blake.
18193
18194 2006-07-29  Bruno Haible  <bruno@clisp.org>
18195
18196         * doc/gnulib-tool.texi (gl_LIBTOOL): Mention --no-libtool option.
18197
18198 2006-07-29  Bruno Haible  <bruno@clisp.org>
18199
18200         * config/srclist.txt (*setenv.[ch]): Remove rules.
18201
18202 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
18203
18204         * m4/inet_pton.m4, inet_ntop.m4: Check for netinet/in.h too.
18205
18206 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
18207
18208         * lib/inet_ntop.h, inet_pton.h: Need to include netinet/in.h before
18209         arpa/inet.h.
18210
18211 2006-07-28  Simon Josefsson  <jas@extundo.com>
18212
18213         * modules/inet_ntop (Depends-on): Depend on arpa_inet.
18214         * modules/inet_pton (Depends-on): Likewise.
18215
18216 2006-07-28  Simon Josefsson  <jas@extundo.com>
18217
18218         * m4/netinet_in_h.m4: New file.
18219
18220 2006-07-28  Simon Josefsson  <jas@extundo.com>
18221
18222         * lib/inet_ntop.h, inet_pton.h: No need to guard netinet/in.h
18223         #include's.
18224
18225 2006-07-28  Simon Josefsson  <jas@extundo.com>
18226
18227         * lib/inet_ntop.h, inet_pton.h: No need to guard arpa/inet.h
18228         #include's.
18229
18230 2006-07-28  Paul Eggert  <eggert@cs.ucla.edu>
18231
18232         * lib/modechange.c (mode_compile): Numeric modes now affect setuid and
18233         setgid on directories only if they set these bits.
18234         * lib/modechange.h: Remove obsolete comment about masks.
18235
18236 2006-07-28  Eric Blake  <ebb9@byu.net>
18237
18238         * lib/regex_internal.h (struct re_dfa_t) [!_LIBC]: Avoid invalid C89
18239         macro expansion.
18240
18241 2006-07-28  Bruno Haible  <bruno@clisp.org>
18242
18243         * lib/inet_ntop.h, inet_pton.h: Use #if HAVE* instead of #ifdef HAVE*.
18244
18245 2006-07-28  Bruno Haible  <bruno@clisp.org>
18246
18247         * m4/mbchar.m4 (gl_MBCHAR): Also test for iswcntrl.
18248
18249 2006-07-28  Bruno Haible  <bruno@clisp.org>
18250
18251         * lib/mbchar.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
18252         iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit):
18253         Define fallbacks.
18254         Avoids link error on FreeBSD 4.x.
18255         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
18256
18257         * lib/wcwidth.h (iswprint): Assume an ASCII compatible wide character
18258         encoding.
18259         * lib/mbswidth.c (iswcntrl): Likewise.
18260
18261 2006-07-27  Bruno Haible  <bruno@clisp.org>
18262
18263         * m4/stdint.m4 (gl_STDINT_H): Define __STDC_CONSTANT_MACROS during the
18264         test.
18265
18266 2006-07-27  Bruno Haible  <bruno@clisp.org>
18267
18268         * lib/stdint_.h (INT*_C, UINT*_C) [C++]: Define these if
18269         __STDC_CONSTANT_MACROS is defined, not if __STDC_LIMIT_MACROS is
18270         defined.
18271
18272 2006-07-26  Eric Blake  <ebb9@byu.net>
18273
18274         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Check for missing pipe.
18275
18276 2006-07-26  Eric Blake  <ebb9@byu.net>
18277
18278         * lib/mkstemp-safer.c [! HAVE_MKSTEMP]: Add prototype for platforms
18279         like mingw that lack mkstemp.
18280         * lib/pipe-safer.c (pipe_safer) [!HAVE_FUNC_PIPE]: Provide fallback to
18281         avoid compilation warning on mingw.
18282
18283 2006-07-26  Bruno Haible  <bruno@clisp.org>
18284
18285         * m4/stdint.m4 (gl_STDINT_H): Also verify the existence of the macros
18286         INT*_MIN, INT_LEAST*_MAX, INT_LEAST*_MIN, UINT_LEAST*_MAX,
18287         INT_FAST*_MIN, INTPTR_MIN.
18288
18289 2006-07-25  Bruno Haible  <bruno@clisp.org>
18290
18291         * modules/version-etc (Depends-on): Add stdarg.
18292
18293 2006-07-25  Bruno Haible  <bruno@clisp.org>
18294
18295         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Avoid 'eval' in front of
18296         complex commands.
18297
18298 2006-07-25  Bruno Haible  <bruno@clisp.org>
18299
18300         * lib/version-etc.c (version_etc_va): Use va_copy, assumed to be
18301         defined in <stdarg.h> or config.h.
18302
18303 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
18304
18305         * m4/stdio-safer.m4 (gl_FOPEN_SAFER, gl_TMPFILE_SAFER): New macros.
18306         (gl_STDIO_SAFER): Remove.
18307
18308 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
18309
18310         * MODULES.html.sh (File stream based Input/Output):
18311         Add fopen-safer, tmpfile-safer; remove stdio-safer.
18312         * modules/getusershell (Depends-on): Change stdio-safer to fopen-safer.
18313         * modules/fopen-safer, modules/tmpfile-safer: New files.
18314         * modules/stdio-safer: Remove.
18315
18316 2006-07-24  Bruno Haible  <bruno@clisp.org>
18317
18318         * modules/tmpdir: New file.
18319         * MODULES.html.sh (File system functions): Add it.
18320
18321 2006-07-24  Bruno Haible  <bruno@clisp.org>
18322
18323         * modules/javacomp (Depends-on): Add unistd, javaversion, binary-io,
18324         getline, pathname, fwriteerror, clean-temp, xvasprintf, strstr.
18325
18326 2006-07-24  Bruno Haible  <bruno@clisp.org>
18327
18328         * modules/clean-temp: New file.
18329
18330 2006-07-24  Bruno Haible  <bruno@clisp.org>
18331
18332         * m4/tmpdir.m4: New file, from GNU gettext.
18333
18334 2006-07-24  Bruno Haible  <bruno@clisp.org>
18335
18336         * lib/tmpdir.h: New file, from GNU gettext.
18337         * lib/tmpdir.c: New file, from GNU gettext.
18338
18339 2006-07-24  Bruno Haible  <bruno@clisp.org>
18340
18341         * lib/clean-temp.h: New file, from GNU gettext.
18342         * lib/clean-temp.c: New file, from GNU gettext.
18343
18344 2006-07-23  Eric Blake  <ebb9@byu.net>
18345
18346         * modules/stdio-safer (Files): Add tmpfile-safer.c.
18347         (Depends-on): Add binary-io.
18348
18349 2006-07-23  Eric Blake  <ebb9@byu.net>
18350
18351         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add tmpfile-safer.c.
18352
18353 2006-07-23  Eric Blake  <ebb9@byu.net>
18354
18355         * lib/tmpfile-safer.c: New file.
18356         * lib/stdio-safer.h (fopen_safer): Add prototype.
18357         * lib/stdio--.h (tmpfile): Make safer.
18358
18359 2006-07-23  Bruno Haible  <bruno@clisp.org>
18360
18361         * lib/gl_anylinked_list2.h (ASYNCSAFE): New macro.
18362         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before,
18363         gl_linked_add_after, gl_linked_add_at, gl_linked_remove_node,
18364         gl_linked_remove_at): Use it.
18365
18366 2006-07-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
18367         and Simon Josefsson <jas@extundo.com>
18368
18369         * lib/getaddrinfo.h (AI_PASSIVE): Make sure it is defined.
18370
18371         * lib/getaddrinfo.c (getaddrinfo): Support AI_PASSIVE.
18372
18373 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
18374
18375         * modules/close-stream: New file.
18376         * modules/closeout (Description): Make it clear that it exits
18377         with a diagnostic on error.
18378         (Depends-on): Add close-stream.  Remove fpending, stdbool.
18379         * MODULES.html.sh (File stream based Input/Output): Add close-stream.
18380
18381 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
18382
18383         * m4/close-stream.m4: New file.
18384
18385 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
18386
18387         * lib/close-stream.c, lib/close-stream.h: New files.
18388
18389 2006-07-22  Bruno Haible  <bruno@clisp.org>
18390
18391         Merge from GNU gettext 0.15.
18392
18393         2006-05-01  Bruno Haible  <bruno@clisp.org>
18394
18395                 * build-aux/javacomp.sh.in: Update for changed javacomp.m4.
18396
18397         2006-07-22  Bruno Haible  <bruno@clisp.org>
18398
18399                 * modules/javaversion: New file.
18400                 * MODULES.html.sh (Java): Add javaversion.
18401
18402         2006-03-12  Bruno Haible  <bruno@clisp.org>
18403
18404                 * build-aux/javaexec.sh.in: Update for changed javaexec.m4.
18405
18406         2005-12-04  Bruno Haible  <bruno@clisp.org>
18407
18408                 * build-aux/csharpexec.sh.in: Add support for 'clix' launcher
18409                 (untested).
18410
18411         2006-06-21  Bruno Haible  <bruno@clisp.org>
18412
18413                 Avoid warnings from recent versions of mcs.
18414                 * build-aux/csharpcomp.sh.in (options_mcs): Don't use options
18415                 -o, -L, -r any more. Use options documented since mcs-1.0
18416                 instead. Similarly for -g.
18417
18418         2005-12-04  Bruno Haible  <bruno@clisp.org>
18419
18420                 * build-aux/csharpcomp.sh.in: Suffix for resources is
18421                 .resources, not .resource.
18422
18423         2005-07-09  Bruno Haible  <bruno@clisp.org>
18424
18425                 * build-aux/csharpcomp.sh.in (options_csc): For -l option,
18426                 add a .dll suffix.
18427                 Reported by Mark Junker <mjscod@gmx.de>.
18428
18429         2006-07-22  Bruno Haible  <bruno@clisp.org>
18430
18431                 * modules/gettext: Upgrade to gettext-0.15.
18432                 (Files): Remove m4/isc-posix.m4. Add m4/lock.m4,
18433                 m4/visibility.m4.
18434                 Replace m4/inttypes.m4 with m4/inttypes-h.m4.
18435
18436 2006-07-22  Bruno Haible  <bruno@clisp.org>
18437
18438         Merge from GNU gettext 0.15.
18439
18440         2006-03-25  Bruno Haible  <bruno@clisp.org>
18441
18442                 * lib-link.m4 (AC_LIB_LINKFLAGS_FROM_LIBS): New macro.
18443
18444         2006-07-21  Bruno Haible  <bruno@clisp.org>
18445
18446                 * javacomp.m4 (gt_JAVACOMP): Convert target_version "null" to
18447                 "1.1".
18448
18449         2006-05-09  Bruno Haible  <bruno@clisp.org>
18450
18451                 * javacomp.m4 (gt_JAVACOMP): On Cygwin, set
18452                 CLASSPATH_SEPARATOR to a semicolon. Use CLASSPATH_SEPARATOR
18453                 for the conftestver execution.
18454
18455         2006-05-01  Bruno Haible  <bruno@clisp.org>
18456
18457                 * javacomp.m4 (gt_JAVACOMP): Accept a source-version and an
18458                 optional target-version argument. Verify that the compiler
18459                 groks source of the specified source-version, or add -source
18460                 option as necessary. Verify that the compiler produces
18461                 bytecode in the specified target-version, or add -target and
18462                 -source options as necessary. Make the result of the test
18463                 available as variable CONF_JAVAC. Also log error output in
18464                 config.log.
18465
18466         2006-03-11  Bruno Haible  <bruno@clisp.org>
18467
18468                 * javacomp.m4 (gt_JAVACOMP): Treat gcj-4.x like gcj-3.x.
18469
18470         2006-05-09  Bruno Haible  <bruno@clisp.org>
18471
18472                 * javaexec.m4 (gt_JAVAEXEC): On Cygwin, set
18473                 CLASSPATH_SEPARATOR to a semicolon.
18474
18475         2006-03-12  Bruno Haible  <bruno@clisp.org>
18476
18477                 * javaexec.m4 (gt_JAVAEXEC): Make the result of the test
18478                 available as variable CONF_JAVA, for subsequent autoconf
18479                 tests. Also log error output in config.log.
18480
18481         2006-07-19  Bruno Haible  <bruno@clisp.org>
18482
18483                 * getline.m4 (AM_FUNC_GETLINE): When cross-compiling, assume
18484                 that getline works on glibc2 systems. Needed to avoid trouble
18485                 in relocatable.c.
18486                 Reported by Nils Magnus Larsgard <nmlarsgaard@atmel.no>.
18487
18488         2005-12-04  Bruno Haible  <bruno@clisp.org>
18489
18490                 * csharpexec.m4 (gt_CSHARPEXEC): Add support for 'clix'
18491                 launcher (untested).
18492
18493         2005-12-04  Bruno Haible  <bruno@clisp.org>
18494
18495                 * csharpcomp.m4 (gt_CSHARPCOMP): Also set CSHARPCOMPFLAGS.
18496
18497         2006-07-22  Bruno Haible  <bruno@clisp.org>
18498
18499                 * gettext.m4: Update from GNU gettext-0.15.
18500                 * nls.m4: Likewise.
18501                 * po.m4: Likewise.
18502                 * inttypes-pri.m4: Likewise.
18503                 * inttypes-h.m4: Renamed from inttypes.m4.
18504                 (gl_HEADER_INTTYPES_H): Renamed from gt_HEADER_INTTYPES_H.
18505
18506 2006-07-22  Bruno Haible  <bruno@clisp.org>
18507
18508         Merge from GNU gettext 0.15.
18509
18510         2005-07-05  Bruno Haible  <bruno@clisp.org>
18511
18512                 * printf-args.c (printf_fetchargs): Work around broken
18513                 definition of wint_t on mingw.
18514
18515         2005-02-12  Bruno Haible  <bruno@clisp.org>
18516
18517                 * xallocsa.h: Add extern "C" for C++.
18518
18519         2006-05-17  Bruno Haible  <bruno@clisp.org>
18520
18521                 Cygwin portability.
18522                 * progreloc.c (WIN32_NATIVE): Renamed from WIN32.
18523
18524         2006-04-30  Bruno Haible  <bruno@clisp.org>
18525
18526                 * progreloc.c: Include <mach-o/dyld.h> if available.
18527                 (find_executable): Use _NSGetExecutablePath when possible.
18528
18529         2006-05-06  Charles Wilson  <cygwin@cwilson.fastmail.fm>
18530
18531                 * progreloc.c (maybe_executable) [CYGWIN]: Use the access()
18532                 function.
18533
18534         2005-12-29  Bruno Haible  <bruno@clisp.org>
18535
18536                 * progreloc.c (set_program_name_and_installdir): Fix
18537                 compilation error.
18538
18539         2005-12-04  Bruno Haible  <bruno@clisp.org>
18540
18541                 Cygwin portability.
18542                 * progreloc.c: Include <windows.h> also on Cygwin.
18543                 (find_executable): Add support for Cygwin.
18544                 (set_program_name_and_installdir): Handle also platforms with
18545                 nonempty EXEEXT.
18546
18547         2006-07-11  Bruno Haible  <bruno@clisp.org>
18548
18549                 * javacomp.c: Fix a comment.
18550                 Reported by Jim Meyering.
18551
18552         2006-04-30  Bruno Haible  <bruno@clisp.org>
18553
18554                 * javacomp.h (compile_java_class): Add source_version,
18555                 target_version arguments.
18556                 * javacomp.c: Rewritten to choose only a compiler that
18557                 respects the specified source_version and target_version.
18558
18559         2006-06-27  Bruno Haible  <bruno@clisp.org>
18560
18561                 Assume correct S_ISDIR macro.
18562                 * mkdtemp.c: Remove test of STAT_MACROS_BROKEN.
18563
18564         2006-07-22  Bruno Haible  <bruno@clisp.org>
18565
18566                 * javaversion.h: New file, from GNU gettext.
18567                 * javaversion.c: New file, from GNU gettext.
18568                 * javaversion.java: New file, from GNU gettext.
18569                 * javaversion.class: New file, from GNU gettext.
18570
18571         2006-05-17  Bruno Haible  <bruno@clisp.org>
18572
18573                 Cygwin portability.
18574                 * javaexec.c (execute_java_class): Test for jview program
18575                 also on Cygwin.
18576
18577         2006-04-09  Bruno Haible  <bruno@clisp.org>
18578
18579                 * fatal-signal.c: Don't include string.h.
18580                 (at_fatal_signal): Use a copying loop instead of memcpy.
18581
18582         2005-12-04  Bruno Haible  <bruno@clisp.org>
18583
18584                 * csharpexec.c: Add support for 'clix' launcher (untested).
18585                 (execute_csharp_using_sscli): New function.
18586                 (execute_csharp_program): Call it.
18587
18588         2006-06-21  Bruno Haible  <bruno@clisp.org>
18589
18590                 Avoid warnings from recent versions of mcs.
18591                 * csharpcomp.c (compile_csharp_using_mono): Don't use options
18592                 -o, -L, -r any more. Use options documented since mcs-1.0
18593                 instead. Similarly for -g.
18594
18595         2005-07-09  Bruno Haible  <bruno@clisp.org>
18596
18597                 * csharpcomp.c (compile_csharp_using_sscli): For -l option,
18598                 add a .dll suffix.
18599                 Reported by Mark Junker <mjscod@gmx.de>.
18600
18601         2006-06-17  Bruno Haible  <bruno@clisp.org>
18602
18603                 * config.charset: Update for NetBSD 3.0.
18604
18605         2006-05-17  Bruno Haible  <bruno@clisp.org>
18606
18607                 Cygwin portability.
18608                 * localcharset.c (WIN32_NATIVE): Renamed from WIN32.
18609
18610         2006-05-16  Bruno Haible  <bruno@clisp.org>
18611
18612                 * localcharset.c [CYGWIN]: Include <windows.h>.
18613                 (get_charset_aliases): For Cygwin, return the same CPxxx
18614                 aliases list as under WIN32.
18615                 (locale_charset) [CYGWIN]: Try to retrieve the encoding from
18616                 the environment variables. Fall back to GetACP().
18617
18618         2006-04-05  Bruno Haible  <bruno@clisp.org>
18619
18620                 * config.charset: Update Juan Manuel Guerrero's address.
18621
18622         2005-02-12  Bruno Haible  <bruno@clisp.org>
18623
18624                 * allocsa.h: Add extern "C" for C++.
18625
18626         2005-02-10  Bruno Haible  <bruno@clisp.org>
18627
18628                 * allocsa.h (sa_alignof): Define differently with AIX xlc, to
18629                 avoid a bug of this compiler on AIX 3.2.5 dealing with enums.
18630
18631         2006-07-22  Bruno Haible  <bruno@clisp.org>
18632
18633                 * gettext.h: Update to GNU gettext-0.15.
18634
18635 2006-07-22  Bruno Haible  <bruno@clisp.org>
18636
18637         * config/srclist.txt: Resync printf-args.c, vasnprintf.c,
18638         localcharset.c, mkdtemp.c, config.rpath, lib-ld.m4, lib-link.m4,
18639         lib-prefix.m4, longdouble.m4, ssize_t.m4.
18640
18641 2006-07-21  Eric Blake  <ebb9@byu.net>
18642
18643         * modules/stdlib-safer: New file.
18644         * MODULES.html.sh (File stream based Input/Output): Add
18645         stdlib-safer.
18646
18647 2006-07-21  Eric Blake  <ebb9@byu.net>
18648
18649         * lib/stdlib-safer.h: New file from coreutils, required by
18650         stdlib--.h.
18651
18652 2006-07-20  Paul Eggert  <eggert@cs.ucla.edu>
18653
18654         * gnulib-tool (func_usage): Document --assume-autoconf='latest-stable'.
18655
18656 2006-07-20  Bruno Haible  <bruno@clisp.org>
18657
18658         * gnulib-tool: Recognize new option --assume-autoconf.
18659         (autoconf_minversion): New variable.
18660         (func_get_filelist): Use it to decide whether to add onceonly_2_57.m4.
18661
18662 2006-07-20  Bruno Haible  <bruno@clisp.org>
18663
18664         * MODULES.html.sh (func_all_modules): Add a missing func_begin_table.
18665
18666 2006-07-19  Derek R. Price  <derek@ximbiot.com>
18667
18668         * lib/getaddrinfo.h: Don't define unimplemented AI_* flags.
18669         Reindent and repaginate.
18670
18671 2006-07-19  Derek Price  <derek@ximbiot.com>
18672
18673         * doc/gnulib.texi (Libtool and Windows):  Eliminate passive voice.
18674         Correct grammar.
18675
18676 2006-07-17  Bruno Haible  <bruno@clisp.org>
18677
18678         * modules/list: New file.
18679         * modules/array-list: New file.
18680         * modules/carray-list, modules/carray-list-tests: New files.
18681         * modules/linked-list, modules/linked-list-tests: New files.
18682         * modules/avltree-list, modules/avltree-list-tests: New files.
18683         * modules/rbtree-list, modules/rbtree-list-tests: New files.
18684         * modules/linkedhash-list, modules/linkedhash-list-tests: New files.
18685         * modules/avltreehash-list, modules/avltreehash-list-tests: New files.
18686         * modules/rbtreehash-list, modules/rbtreehash-list-tests: New files.
18687         * modules/oset: New file.
18688         * modules/array-oset: New file.
18689         * modules/avltree-oset, modules/avltree-oset-tests: New files.
18690         * modules/rbtree-oset, modules/rbtree-oset-tests: New files.
18691         * tests/test-carray_list.c: New file.
18692         * tests/test-linked_list.c: New file.
18693         * tests/test-avltree_list.c: New file.
18694         * tests/test-rbtree_list.c: New file.
18695         * tests/test-linkedhash_list.c: New file.
18696         * tests/test-avltreehash_list.c: New file.
18697         * tests/test-rbtreehash_list.c: New file.
18698         * tests/test-avltree_oset.c: New file.
18699         * tests/test-rbtree_oset.c: New file.
18700         * MODULES.html.sh (Container data structures): New section.
18701
18702 2006-07-17  Bruno Haible  <bruno@clisp.org>
18703
18704         * m4/gl_list.m4: New file.
18705
18706 2006-07-17  Bruno Haible  <bruno@clisp.org>
18707
18708         * lib/gl_list.h: New file.
18709         * lib/gl_list.c: New file.
18710         * lib/gl_array_list.h: New file.
18711         * lib/gl_array_list.c: New file.
18712         * lib/gl_carray_list.h: New file.
18713         * lib/gl_carray_list.c: New file.
18714         * lib/gl_linked_list.h: New file.
18715         * lib/gl_linked_list.c: New file.
18716         * lib/gl_anylinked_list1.h: New file.
18717         * lib/gl_anylinked_list2.h: New file.
18718         * lib/gl_avltree_list.h: New file.
18719         * lib/gl_avltree_list.c: New file.
18720         * lib/gl_anyavltree_list1.h: New file.
18721         * lib/gl_anyavltree_list2.h: New file.
18722         * lib/gl_rbtree_list.h: New file.
18723         * lib/gl_rbtree_list.c: New file.
18724         * lib/gl_anyrbtree_list1.h: New file.
18725         * lib/gl_anyrbtree_list2.h: New file.
18726         * lib/gl_anytree_list1.h: New file.
18727         * lib/gl_anytree_list2.h: New file.
18728         * lib/gl_linkedhash_list.h: New file.
18729         * lib/gl_linkedhash_list.c: New file.
18730         * lib/gl_anyhash_list1.h: New file.
18731         * lib/gl_anyhash_list2.h: New file.
18732         * lib/gl_avltreehash_list.h: New file.
18733         * lib/gl_avltreehash_list.c: New file.
18734         * lib/gl_rbtreehash_list.h: New file.
18735         * lib/gl_rbtreehash_list.c: New file.
18736         * lib/gl_anytreehash_list1.h: New file.
18737         * lib/gl_anytreehash_list2.h: New file.
18738
18739         * lib/gl_oset.h: New file.
18740         * lib/gl_oset.c: New file.
18741         * lib/gl_array_oset.h: New file.
18742         * lib/gl_array_oset.c: New file.
18743         * lib/gl_avltree_oset.h: New file.
18744         * lib/gl_avltree_oset.c: New file.
18745         * lib/gl_rbtree_oset.h: New file.
18746         * lib/gl_rbtree_oset.c: New file.
18747         * lib/gl_anytree_oset.h: New file.
18748
18749 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
18750
18751         * m4/mkancesdirs.m4: New file.
18752         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Mention dirchownmod.c,
18753         dirchownmod.h.  Don't require AC_FUNC_ALLOCA, gl_AFS, gl_CHDIR_SAFER;
18754         no longer needed.  Require gl_FUNC_LCHOWN, since dirchownmod.c needs
18755         it.
18756
18757 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
18758
18759         * lib/dirchownmod.c, lib/dirchownmod.h, lib/mkancesdirs.c:
18760         * lib/mkancesdirs.h: New files.
18761         * lib/mkdir-p.c: Don't include alloca.h, stdio.h, sys/types.h,
18762         unistd.h, string.h, chdir-safer.h, dirname.h, lchmod.h, lchown.h,
18763         save-cwd.h.  Instead, include dirchownmod.h and mkancesdirs.h.
18764         (make_dir_parents): New args MAKE_ANCESTOR, OPTIONS, ANNOUNCE,
18765         MODE_BITS.  Remove options VERBOSE_FMT_STRING, CWD_ERRNO.  All
18766         callers changed.  Revamp internals significantly, by not
18767         attempting to create directories that are temporarily more
18768         permissive than the final results.  Do not attempt to use
18769         save_cwd/restore_cwd; it isn't worth it for mkdir and install.
18770         This removes some race conditions, fixes some bugs, and simplifies
18771         things.  Use new dirchownmod function to do owner and mode changes.
18772         * lib/mkdir-p.h: Likewise.
18773         * lib/modechange.c (octal_to_mode): New function.
18774         (struct mode_change): New member mentioned.
18775         (make_node_op_equals): New arg mentioned.  All callers changed.
18776         (mode_compile): Keep track of which mode bits the user has explicitly
18777         mentioned.
18778         (mode_adjust): New arg DIR, so that we implement the X op correctly.
18779         New arg PMODE_BITS, to keep track of which mode bits the user
18780         mentioned; it treats S_ISUID and S_ISGID speciall.
18781         All callers changed.
18782         * lib/modechange.h: Likewise.
18783
18784 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
18785
18786         * MODULES.html.sh: Add mkancestors.
18787         * modules/mkancesdirs: New module.
18788         * modules/mkdir-p (Files): Remove lib/chdir-safer.c, lib/chdir-safer.h,
18789         lib/same-inode.h, m4/afs.m4, m4/chdir-safer.m4.
18790         The chdir-safer and afs files are now orphans; I'll remove them
18791         unless someone speaks up.
18792         Add lib/dirchownmod.c, lib/dirchownmod.h.
18793         (Depends-on): Remove alloca, chown, save-cwd, dirname.
18794         Add lchown, mkancesdirs.
18795         (Maintainer): Add self.
18796
18797 2006-07-15  Karl Berry  <karl@gnu.org>
18798
18799         * gnulib-tool: help message wording/arrangement.
18800
18801 2006-07-14  Simon Josefsson  <jas@extundo.com>
18802
18803         * doc/gnulib.texi (Libtool and Windows): New section.
18804
18805 2006-07-12  Simon Josefsson  <jas@extundo.com>
18806
18807         * modules/gendocs (License): Fix license, approved by Karl.
18808
18809 2006-07-12  Eric Blake  <ebb9@byu.net>
18810
18811         * MODULES.html.sh: Add gendocs.
18812
18813 2006-07-11  Eric Blake  <ebb9@byu.net>
18814
18815         * modules/fdl: New module, to install doc/fdl.texi.
18816         * MODULES.html.sh: Add new section for documentation modules.
18817         * gnulib-tool: Avoid space-tab.
18818         (--doc-base): New option, to manage files from doc.
18819
18820 2006-07-11  Eric Blake  <ebb9@byu.net>
18821
18822         * m4/absolute-header.m4: Fix comments to match recent change.
18823
18824 2006-07-11  Eric Blake  <ebb9@byu.net>
18825
18826         * gnulib-tool: List --doc-base before --tests-base.
18827
18828 2006-07-11  Derek R. Price  <derek@ximbiot.com>
18829
18830         * lib/glob.c: s/NAMLEN/_D_EXACT_NAMLEN/.
18831
18832 2006-07-11  Bruno Haible  <bruno@clisp.org>
18833
18834         * README: Mention where to put documentation.
18835
18836 2006-07-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18837
18838         * doc/functions.texi, gnulib-tool.texi, gnulib.texi: Fix some typos.
18839
18840 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
18841
18842         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Like today's change
18843         to stdint.m4.
18844
18845 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
18846
18847         * m4/stdint.m4 (gl_STDINT_H): Like yesterday's change to
18848         absolute-header.m4.  Also, set ABSOLUTE_STDINT_H to a string
18849         "no/such/file/stdint.h" when there is no such file, so that
18850         the resulting C code can be parsed by dodgy compilers.
18851         Problems reported by Bob Proulx.
18852
18853 2006-07-10  Derek R. Price  <derek@ximbiot.com>
18854
18855         * lib/backupfile.c, dirfd.h, fts.c, getcwd.c, glob.c, glob_.h:
18856         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
18857         macros into the GNU _D_EXACT_NAMLEN.
18858         * lib/savedir.c:  Likewise.
18859         (savedirstream): Use _D_EXACT_NAMLEN in preference to strlen.
18860
18861 2006-07-10  Derek R. Price  <derek@ximbiot.com>
18862         and Paul Eggert  <eggert@cs.ucla.edu>
18863
18864         * m4/backupfile.m4, d-ino.m4, d-type.m4, dirfd.m4, fts.m4, getcwd.m4:
18865         * m4/savedir.m4:
18866         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
18867         macros into the GNU _D_EXACT_NAMLEN.
18868
18869 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
18870
18871         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Use "" rather than <>
18872         around the absolute name, to work around a problem with the HP-UX
18873         11.23 native C compiler, reported by Bob Proulx.
18874
18875 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
18876
18877         * doc/maintain.texi, make-stds.texi: Sync from
18878         <http://savannah.gnu.org/projects/gnustandards>.
18879
18880 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
18881
18882         * build-aux/depcomp, build-aux/install-sh: Sync from Automake.
18883
18884 2006-07-09  Jim Meyering  <jim@meyering.net>
18885
18886         * m4/glob.m4: Remove a doubled word in a comment.
18887
18888 2006-07-09  Jim Meyering  <jim@meyering.net>
18889
18890         * lib/argp-pv.c: Remove a doubled word in a comment.
18891         * lib/check-version.c (check_version): Likewise.
18892         * lib/javacomp.c (compile_java_class): Likewise.
18893
18894 2006-07-08  Paul Eggert  <eggert@cs.ucla.edu>
18895
18896         * gnulib-tool (func_get_filelist): Don't echo m4/onceonly_2_57.m4,
18897         for the benefit of people using Autoconf 2.60.  If you want to
18898         support older Autoconf versions you can copy m4/onceonly_2_57.m4
18899         (or m4/onceonly.m4, if pre-2.57) manually.
18900
18901 2006-07-08  Jim Meyering  <jim@meyering.net>
18902
18903         * m4/link-follow.m4: Remove one of two adjacent "whether"s in a
18904         comment.
18905         * m4/getopt.m4: Remove one of two adjacent "your"s in a comment.
18906         * m4/regex.m4 (gl_REGEX): Remove one of two adjacent "the"s in a
18907         comment.
18908
18909 2006-07-08  Jim Meyering  <jim@meyering.net>
18910
18911         * lib/getndelim2.h (getndelim2): Remove doubled "after" in comment.
18912
18913 2006-07-07  Simon Josefsson  <jas@extundo.com>
18914
18915         * tests/test-crc.c: Change expected crc value, the test vector
18916         were probably computed using the old broken crc.c?
18917
18918 2006-07-06  Simon Josefsson  <jas@extundo.com>
18919
18920         * modules/sys_socket (Files): Add m4/sockpfaf.m4 (this module is
18921         now the canonical place for the M4 file).
18922
18923         * modules/getaddrinfo (Files): Remove m4/sockpfaf.m4, we get it
18924         from the sys_socket dependency now.
18925
18926         * modules/inet_pton (Files): Ditto.
18927
18928         * modules/inet_ntop (Files): Ditto.
18929
18930 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
18931
18932         * modules/getusershell (configure.ac): Use gl_FUNC_GETUSERSHELL,
18933         not gl_PREREQ_GETUSERSHELL.
18934
18935 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18936
18937         * m4/_inttypes_h.m4 (gl_INTTYPES_H): Use AC_CHECK_DECLS_ONCE
18938         with only one argument, for Autoconf 2.60.
18939         * m4/fileblocks.m4 (gl_PREREQ_FILEBLOCKS): AC_CHECK_DECLS_ONCE may
18940         expand to nothing, so add a shell command to avoid syntax error.
18941         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
18942
18943 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18944
18945         * lib/strtod.c (strtod): cast the argument of tolower to unsigned char.
18946
18947 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
18948
18949         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't check for getenv decl;
18950         no longer needed.  Check for isblank decl.
18951         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Don't check for getenv decl.
18952         * m4/regex.m4 (gl_PREREQ_REGEX): Dheck for isblank decl instead
18953         of existence.
18954
18955 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
18956
18957         * lib/getloadavg.c: Use __VMS, not VMS.
18958         * lib/getopt.c: Likewise.
18959         * lib/getpagesize.h: Likewise.
18960         * lib/glob.c: Remove most VMS cruft; it hasn't been tested for a while
18961         and probably does not work.
18962
18963 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
18964
18965         * lib/.cppi-disable: Add wcwidth.
18966         * lib/fnmatch.c (ISBLANK): Remove.  All uses changed to isblank.
18967         (isblank) [! (defined isblank || HAVE_DECL_ISBLANK)]: New macro.
18968         (ISGRAPH): Remove.  All uses changed to isgraph.
18969         (FOLD) [!defined _LIBC]: Remove special case.
18970         * lib/getdate.y (lookup_word): Remove no-longer-needed call to islower.
18971         * lib/regex_internal.h (isblank): Depend on HAVE_DECL_ISBLANK, not
18972         HAVE_ISBLANK.
18973         * lib/strftime.c (TOLOWER, TOUPPER) [!defined _LIBC]: Remove special
18974         case.
18975
18976 2006-07-06  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
18977
18978         * lib/getaddrinfo.c: Changes to compile under MSVC6: changed
18979         '#if WIN32_NATIVE' to '#ifdef' & moved WSAAPI macro inside
18980         brackets.  Other minor changes to suppress some compiler
18981         warnings.
18982
18983 2006-07-06  Derek R. Price  <derek@ximbiot.com>
18984         and Paul Eggert  <eggert@cs.ucla.edu>
18985
18986         * m4/backupfile.m4 (gl_BACKUPFILE): Check for dirent.h, instead
18987         of invoking obsolescent AC_HEADER_DIRENT macro.
18988         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Likewise.
18989         * m4/d-type.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Likewise.
18990         * m4/dirfd.m4 (gl_FUNC_DIRFD): Likewise.
18991         * m4/fts.m4 (gl_FUNC_FTS_CORE): Likewise.
18992         * m4/getcwd.m4 (gl_PREREQ_GETCWD): Likewise.
18993         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
18994         * m4/savedir.m4 (gl_SAVEDIR): Likewise.
18995         * m4/readdir.m4: Remove; no longer needed.
18996
18997 2006-07-06  Derek R. Price  <derek@ximbiot.com>
18998         and Paul Eggert  <eggert@cs.ucla.edu>
18999
19000         * lib/backupfile.c [HAVE_DIRENT_H && ! HAVE_NDIR_H]:
19001         Don't worry about this obsolete case any more.
19002         (HAVE_DIR): Remove.  All uses removed; we now assume you can read
19003         directories.
19004         * lib/dirfd.h [HAVE_DIRENT_H && ! HAVE_NDIR_H]: Don't
19005         worry about this obsolete case any more.
19006         * lib/fts.c: Likewise.
19007         * lib/getcwd.c: Likewise.
19008         * lib/glob.h: Likewise.
19009         * lib/savedir.c: Likewise.
19010
19011 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
19012
19013         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Use AC_CHECK_DECLS_ONCE
19014         rather than AC_CHECK_DECLS for strtoimax and strtoumax.
19015         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Remove; no longer
19016         needed.
19017         All uses removed.
19018         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
19019         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
19020         * m4/exclude.m4 (gl_EXCLUDE): Don't check for isascii; no longer
19021         needed.
19022         * m4/getdate.m4 (gl_GETDATE): Likewise.
19023         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
19024         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
19025         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
19026         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
19027         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
19028         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
19029         * m4/exclude.m4 (gl_EXCLUDE): Don't require AC_C_INLINE; no longer
19030         needed.
19031
19032 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
19033
19034         * lib/memcasecmp.c: Include <limits.h>.
19035         (memcasecmp): Don't assume UCHAR_MAX <= INT_MAX.
19036         * lib/strtod.c (strtod): Don't assume isspace works on negative chars.
19037         Don't assume isdigit succeeds only on '0' through '9'.
19038
19039 2006-07-05  Eric Blake  <ebb9@byu.net>
19040
19041         * modules/getaddrinfo (Depends-on): Add snprintf.
19042
19043 2006-07-05  Eric Blake  <ebb9@byu.net>
19044
19045         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Use gl_HEADER_SYS_SOCKET
19046         to avoid 'header present but could not be compiled' on cygwin.
19047
19048 2006-07-05  Eric Blake  <ebb9@byu.net>
19049
19050         * lib/getaddrinfo.h (NI_NUMERICHOST, NI_NUMERICSERV): Define if
19051         missing from netdb.h.
19052         * lib/getaddrinfo.c (includes): Include inet_ntop and snprintf.
19053
19054 2006-07-05  Derek R. Price  <derek@ximbiot.com>
19055
19056         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Don't require AC_HEADER_STDC;
19057         no longer needed.
19058         * m4/exclude.m4 (gl_EXCLUDE): Likewise.
19059         * m4/getdate.m4 (gl_GETDATE): Likewise.
19060         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
19061         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
19062         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
19063         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
19064         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
19065
19066 2006-07-05  Derek R. Price  <derek@ximbiot.com>
19067
19068         * lib/exclude.c (IN_CTYPE_DOMAIN, is_space): Remove; no longer needed.
19069         All uses of is_space replaced by isspace.
19070         * lib/exit.h: Don't talk about STDC_HEADERS.
19071         * lib/fnmatch.c (ISASCII): Remove; no longer needed.  All uses removed.
19072         (ISPRINT, ISDIGIT, ISALNUM, ISALPHA, ISCNTRL, ISLOWER, ISPUNCT):
19073         (ISSPACE, ISUPPER, ISXDIGIT): Remove; no longer needed.  All uses
19074         replaced by isprint etc.
19075         * lib/getdate.y (IN_CTYPE_DOMAIN, ISSPACE, ISALPHA, ISLOWER): Likewise.
19076         * lib/getusershell.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
19077         * lib/memcasecmp.c (IN_CTYPE_DOMAIN, ISLOWER, TOUPPER): Likewise.
19078         * lib/strtod.c (IN_CTYPE_DOMAIN, ISSPACE, ISDIGIT, TOLOWER): Likewise.
19079         * lib/strtol.c (IN_CTYPE_DOMAIN): Likewise.
19080         * lib/xstrtol.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
19081
19082 2006-07-05  Bruno Haible  <bruno@clisp.org>
19083
19084         * m4/strndup.m4 (gl_FUNC_STRNDUP): When cross-compiling, check whether
19085         the function exists, before testing against AIX.
19086         Reported by Martin Lambers <marlam@marlam.de>.
19087
19088 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
19089
19090         * modules/cycle-check (lib_SOURCES): Add same-inode.h.
19091         From Mark D. Baushke.
19092
19093 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
19094
19095         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Prepend three slashes
19096         to the absolute name, not just one, to bypass Sun C 5.8's
19097         "warning: #include of /usr/include/... may be non-portable".
19098
19099 2006-07-04  Eric Blake  <ebb9@byu.net>
19100
19101         * modules/dirname-tests: New test module.
19102         * tests/test-dirname.c: New file, replacing dirname.c
19103         TEST_DIRNAME section that was recently deleted.
19104
19105 2006-07-04  Bruno Haible  <bruno@clisp.org>
19106
19107         Assume ANSI C header files and <ctype.h> functions.
19108         * lib/mbswidth.c (IN_CTYPE_DOMAIN, ISPRINT, ISCNTRL): Remove macros.
19109         (mbsnwidth): Use isprint, iscntrl instead.
19110
19111 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
19112
19113         Merge from coreutils.
19114         * MODULES.html.sh: Add xstrtold.
19115         * modules/xstrtold: New file.
19116         * modules/cycle-check (Files): Add lib/same-inode.h.
19117         * modules/dirname (Files): Add m4/double-slash-root.m4.
19118         * modules/getcwd (Files): Add m4/getcwd-abort-bug.m4.
19119         * modules/mkdir-p (Files): Add lib/same-inode.h.
19120         * modules/same (Files): Add lib/same-inode.h.
19121
19122 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
19123
19124         * m4/absolute-header.m4: Renamed from full-header-path.m4.
19125         This is to keep the terminology clean; POSIX talks about
19126         "absolute pathnames", not "full pathnames", but the GNU
19127         Coding Standards say to use "path" for something else;
19128         so use "absolute" to keep both sides happy.
19129         (gl_ABSOLUTE_HEADER): Renamed from gl_FULL_HEADER_PATH.
19130         Set gl_absolute_header, not gl_full_header_path.
19131         Set gl_cv_absolute_<header>, not gl_full_path_<header>.
19132         Define ABSOLUTE_<HEADER>, not FULL_PATH_<HEADER>.
19133         All uses changed.
19134
19135         Merge from coreutils.
19136
19137         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
19138
19139         * m4/c-strtod.m4 (gl_C_STRTOLD): Add c-strtod.c to LIBSOURCES.
19140         Require gl_USE_SYSTEM_EXTENSIONS, not gl_C_STRTOD, since we don't
19141         want to require the building of c-strtod.o.
19142         * m4/lib-check.m4 (cu_LIB_CHECK): Remove SEQ_LIBM, since seq no longer
19143         needs -lm directly.
19144         * m4/xstrtod.m4 (gl_XSTRTOLD): New macro.
19145
19146         2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
19147
19148         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Prefer binutils's
19149         --as-needed option if available.  Problem reported by Albert Chin in
19150         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00114.html>.
19151         However, use -Wl,--as-needed, not bare --as-needed, since HP-UX 11.11
19152         cc merely issues a bunch of annoying warnings for --as-needed
19153         (this problem was reported by Bob Proulx).  Also, try linking with
19154         -lm to detect a bug in binutils 2.16 (this problem was reported
19155         by Ralf Wildenhues).
19156
19157         2006-06-18  Jim Meyering  <jim@meyering.net>
19158
19159         Test for a bug that causes glibc's getcwd to suffer a failed assertion.
19160         * m4/getcwd-abort-bug.m4 (gl_FUNC_GETCWD_ABORT_BUG): New file and
19161         macro.
19162         * m4/getcwd.m4 (gl_FUNC_GETCWD): If we detect support for getcwd_null,
19163         also check for glibc-2.4's abort-inducing bug.
19164
19165         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Fix typo.
19166         Low-probability clean-up should be to use rmdir to get rid of
19167         the just-created directory, not unlink.
19168
19169         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): If ftruncate is missing, make
19170         configure fail, and request a bug report to inform us about it.
19171         Add a comment that, barring reports to the contrary, in 2007 we'll
19172         assume ftruncate is universally available.
19173
19174         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
19175
19176         * m4/filemode.m4 (gl_FILEMODE): Check for strmode declaration.
19177
19178         2006-03-12  Jim Meyering  <jim@meyering.net>
19179
19180         * m4/chdir-safer.m4 (gl_CHDIR_SAFER): Add same-inode.h to the list.
19181         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Likewise.
19182         * m4/same.m4 (gl_SAME): Likewise.
19183         * m4/root-dev-ino.m4 (gl_ROOT_DEV_INO): Likewise.
19184
19185         2006-03-11  Eric Blake  <ebb9@byu.net>
19186
19187         * m4/double-slash-root.m4: New file, provides gl_DOUBLE_SLASH_ROOT.
19188         * m4/dirname.m4 (gl_DIRNAME): Use gl_DOUBLE_SLASH_ROOT.
19189         * m4/dos.m4 (FILE_SYSTEM_PREFIX_LEN): Move from here to dirname.h.
19190         (FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE): New define.
19191
19192 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
19193
19194         * lib/stdint_.h: Include <sys/types.h> after @FULL_PATH_STDINT_H@, for
19195         MacOS X 10.4.6.  Don't mention <sys/int_types.h>.  Problems
19196         reported by Mark D. Baushke, one in
19197         <http://lists.gnu.org/archive/html/bug-gnulib/2006-07/msg00015.html>.
19198
19199         Merge from coreutils.
19200
19201         * lib/.cppi-disable: Add stdint_.h.
19202         * lib/.cvsignore: Add stdint.h.
19203
19204         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
19205
19206         * lib/xstrtod.c (XSTRTOD, DOUBLE): New macros, so that we can support
19207         both double and long double versions.
19208         (XSTRTOD): Renamed from xstrtod.  Use DOUBLE internally.
19209         * lib/xstrtold.c: New file.
19210         * lib/xstrtod.h (xstrtold): New decl.
19211
19212         2006-05-22  Paul Eggert  <eggert@cs.ucla.edu>
19213
19214         * lib/filemode.c (setst): Remove.
19215         (strmode): Rewrite to avoid setst.  This makes the code shorter,
19216         (arguably) clearer, and the generated code is a bit smaller on my
19217         Debian GNU/Linux stable x86 host.
19218
19219         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
19220
19221         * lib/filemode.c: Include "filemode.h" first, to test the interface.
19222         Assume that filemode.h includes sys/types.h and sys/stat.h.
19223         (HAVE_ST_DM_MODE): New macro, moved here from ls.c.
19224         (ftypelet): Reorder to put common cases first, for efficiency.
19225         Add 'P', 'w'.  Remove 'M', since it's now the caller's responsibility
19226         to do 'M'.
19227         (strmode): Renamed from mode_string, and now stores 12 bytes instead
19228         of 10, for compatibility with FreeBSD.  All callers changed.
19229         (filemodestring): Now stores 12 bytes instead of 10, and sets file
19230         types that can't be deduced solely from st_mode.  First arg is now a
19231         const pointer.
19232         * lib/filemode.h (HAVE_DECL_STRMODE): Include <string.h> for strmode.
19233         (strmode): Renamed from mode_string.
19234         (filemodestring): New decl.
19235         * lib/stat-macros.h: Don't undef S_ISDOOR, since it's never buggy.
19236         (S_ISDOOR): Don't bother with S_IFDOOR, since that code is never
19237         needed.
19238         (S_ISPORT, S_ISWHT): New macros, if not already defined.
19239
19240         2006-04-12  Paul Eggert  <eggert@cs.ucla.edu>
19241
19242         * lib/fsusage.c: Don't include <inttypes.h> or <stdint.h>, since
19243         fsusage.h now does that.  Include fsusage.h first, to test interface.
19244         Prefer statvfs if it works, since it's blessed by POSIX.  Attempt
19245         at most one method (the old code could have generated decls that
19246         didn't conform to C89, not that this was ever exercised).
19247         * lib/fsusage.h: Include <inttypes.h> and <stdint.h> if they exist.
19248
19249         2006-03-19  Jim Meyering  <jim@meyering.net>
19250
19251         Work even in a chroot where d_ino values for entries in "/"
19252         don't match the stat.st_ino values for the same names.
19253         * lib/getcwd.c (__getcwd): When no d_ino value matches the target inode
19254         number, iterate through all entries again, using lstat instead.
19255         Reported by Kenshi Muto in http://bugs.debian.org/355810, and by
19256         Zouhir Hafidi in https://bugzilla.redhat.com/bugzilla/190656.
19257
19258         * lib/getcwd.c (__getcwd): Clarify a comment.
19259         Use memcpy in place of a call to strcpy.
19260
19261         2006-03-12  Jim Meyering  <jim@meyering.net>
19262
19263         * lib/fts-cycle.c (leave_dir): If cycle-check's saved dev-ino pair
19264         matches that of the current directory (which we're about to chdir ".."
19265         out of), then save the dev-ino of the parent, instead.
19266
19267         * lib/same-inode.h (SAME_INODE): New file/macro.
19268         * lib/chdir-safer.c (SAME_INODE): Remove definition.
19269         Include "same-inode.h", instead.
19270         * lib/same.c: Likewise.
19271         * lib/cycle-check.h: Include "same-inode.h".
19272         (CYCLE_CHECK_REFLECT_CHDIR_UP): Define.
19273         * lib/cycle-check.c (SAME_INODE): Remove definition.
19274         * lib/root-dev-ino.h: Include "same-inode.h".
19275
19276         2006-03-11  Eric Blake  <ebb9@byu.net>
19277
19278         * lib/same.c (same_name): s/base_name/last_component/
19279         * lib/backupfile.c (check_extension, numbered_backup): Likewise.
19280         * lib/filenamecat.c (file_name_concat): Likewise.
19281
19282         2006-03-11  Eric Blake  <ebb9@byu.net>,
19283                     Paul Eggert  <eggert@cs.ucla.edu>
19284
19285         * lib/dirname.h (FILE_SYSTEM_PREFIX_LEN): Move here from dos.m4.
19286         [FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't treat 1: as a
19287         drive prefix.
19288         (IS_ABSOLUTE_FILE_NAME): Treat all drive letters as absolute on
19289         platforms like cygwin with FILE_SYSTEM_DRIVE_PREFIX_IS_ABSOLUTE.
19290         (last_component): New method.
19291         * lib/dirname.c (dir_len): Determine when drive letters need a
19292         subsequent slash.  Preserve // when it is special.
19293         (dir_name): Don't append dot when drive letter is absolute.
19294         [TEST_DIRNAME]: Move into a full-blown gnulib test.
19295         * lib/basename.c (base_name): New semantics - malloc the result.
19296         Preserve // when it is special.  Preserve relative files that look
19297         like drive letters.
19298         (base_len): Preserve // when it is special.
19299         (last_component): New method, similar to old base_name semantics.
19300         * lib/stripslash.c (strip_trailing_slashes): Use last_component, not
19301         base_name.  Strip redundant slashes from ///.
19302
19303 2006-07-03  Jim Meyering  <jim@meyering.net>
19304
19305         * lib/cycle-check.h (CYCLE_CHECK_REFLECT_CHDIR_UP): Abort if this
19306         macro is used before the first cycle_check call.
19307
19308 2006-07-03  Eric Blake  <ebb9@byu.net>
19309
19310         * modules/dirname (Depends-on): Add xstrndup.
19311
19312 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
19313
19314         * m4/stdint.m4 (gl_STDINT_H): Use more-mnemonic identifiers for
19315         test cases, so that config.log is a bit easier to follow.
19316
19317 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
19318
19319         * lib/stdint_.h (intmax_t, uintmax_t): Prefer long to long long if
19320         both are 64 bits, since this seems to be the tradition, and this
19321         prevents gcc -Wformat from warning about usages with PRIuMAX.  If
19322         we ever run into a host that prefers long long to long in this
19323         case, we'll need another configure-time test.  Problem reported by
19324         Jim Meyering.
19325
19326 2006-07-02  Eric Blake  <ebb9@byu.net>
19327
19328         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Simplify by using AC_CHECK_DECLS.
19329
19330 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
19331
19332         * modules/inttypes (Depends-on): No longer depends on stdint.
19333         * modules/stdint (Description): Say more about assumptions.
19334         Say that the fast types might differ.  Say macros are used.
19335         (Files): Remove m4/size_max.m4, m4/wchar_t.m4.  Add m4/longlong.m4.
19336         (Makefile.am): Revise list of substituted symbols to match
19337         new stdint.m4.
19338         * modules/stdint-tests (Files): Add m4/wchar_t.m4, m4/wint_t.m4.
19339         (configure.ac): Add gt_TYPE_WCHAR_T, gt_TYPE_WINT_T.
19340         * tests/test-stdint.c (verify_same_types)
19341         [! (__GNUC__ >= 2 && DO_PEDANTIC)]: Put in a decl, so that
19342         the code conforms to C99/C89.
19343         Test for WCHAR_MIN and WCHAR_MAX only if HAVE_WCHAR_T.
19344         Test for WINT_MIN and WINT_MAX only if HAVE_WINT_T.
19345
19346 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
19347
19348         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Backport from Autoconf 2.60,
19349         but fix a bug, by requiring at least 64 bits.
19350         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
19351         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Now just call
19352         AC_TYPE_LONG_LONG_INT.  This macro is obsolete and will go soon.
19353         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG) Likewise.
19354
19355         * m4/stdint.m4 (gl_STDINT_H): Rewrite to accommodate stdint_.h
19356         changes.  Make 2.59 a prerequisite.  Check and substitute for
19357         HAVE_LONG_LONG_INT.  Rely on Autoconf to check for stdint.h and
19358         inttypes.h.  Do not use special include files; just use the
19359         defaults.  Check for sys/inttypes.h and sys/bitypes.h in the usual
19360         way now.  Remove no-longer-needed tests for HAVE_LONG_64BIT,
19361         HAVE_LONG_LONG_64BIT, int8_t, int16_t, int32_t, int64_t, uint8_t,
19362         uint16_t, uint32_t uint64_t, int_least8_t, int_least16_t,
19363         int_least32_t, int_least64_t, uint_least8_t, uint_least16_t,
19364         uint_least32_t, uint_least64_t, int_fast8_t, int_fast16_t,
19365         int_fast32_t, int_fast64_t, uint_fast8_t uint_fast16_t,
19366         uint_fast32_t, uint_fast64_t, intptr_t, uintptr_t, intmax_t,
19367         uintmax_t, INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX,
19368         UINT16_MAX, INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN,
19369         INT64_MAX, UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX,
19370         UINT_LEAST8_MAX, INT_LEAST16_MIN, INT_LEAST16_MAX,
19371         UINT_LEAST16_MAX, INT_LEAST32_MIN, INT_LEAST32_MAX,
19372         UINT_LEAST32_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX,
19373         UINT_LEAST64_MAX, INT_FAST8_MIN, INT_FAST8_MAX, UINT_FAST8_MAX,
19374         INT_FAST16_MIN, INT_FAST16_MAX, UINT_FAST16_MAX, INT_FAST32_MIN,
19375         INT_FAST32_MAX, UINT_FAST32_MAX, INT_FAST64_MIN, INT_FAST64_MAX,
19376         UINT_FAST64_MAX, INTPTR_MIN, INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN,
19377         INTMAX_MAX, UINTMAX_MAX, PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN,
19378         SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN,
19379         WINT_MAX.  Check for C99 conformance more strictly, by detecting
19380         bugs in glibc 2.4, Solaris 10, and OpenBSD 3.9.  On the other hand do
19381         not check for things that C99 does not require, e.g., int8_t.  If
19382         a test isn't needed unless <stdint.h> isn't working, and is
19383         unlikely to be needed for any other reason, then don't do it
19384         unless <stdint.h> isn't working.  Do not check for ptrdiff_t or
19385         size_t, since we assume C89 freestanding at least.  Do not check
19386         for sig_atomic_t, wchar_t, or wint_t, since the code now does
19387         the right thing even if the types are not defined.  Instead use:
19388         (gl_STDINT_TYPE_PROPERTIES): New macro.
19389         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H): Remove.  Don't bother
19390         testing whether <sys/types.h> clashes, as Autoconf does this for
19391         us now.  All uses removed.
19392         (gl_STDINT_CHECK_TYPES, gl_STDINT_MISSING_BOUND):
19393         (gl_STDINT_MISSING_BOUNDS, gl_STDINT_MISSING_BOUNDS2):
19394         (gl_CHECK_TYPE_SAME):
19395         Remove; no longer needed.
19396         (gl_STDINT_BITSIZEOF): Don't bother to check whether the type
19397         exists, since we'll return 0 anyway in that case.
19398         (gl_INTEGER_TYPE_SUFFIX, gl_STDINT_INCLUDES): New macros.
19399
19400 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
19401
19402         * lib/stdint_.h (_GL_STDINT_H): Renamed from _STDINT_H, to avoid
19403         possible collision with system files.
19404         (<stdio.h>, <time.h>, <wchar.h>) [defined __cplusplus && ! defined
19405         __STDC_CONSTANT_MACROS)]: Do not include, since we don't need
19406         WCHAR_MIN and WCHAR_MAX in this case.
19407         (<stddef.h>): Do not include; no longer needed.
19408         (<sys/types.h>): Include if @HAVE_SYS_TYPES_H@, not if
19409         (defined(__OpenBSD__) || defined(__bsdi__) || defined(__sgi)).
19410         (<sys/inttypes.h>): Include if @HAVE_SYS_INTTYPES_H@ &&
19411         !@HAVE_INTTYPES_H@, not if (defined(__FreeBSD__)
19412         && (__FreeBSD__ >= 3) && (__FreeBSD__ <= 4)).
19413         (__STDINT_H__) [@HAVE_STDINT_H@ && defined __sgi && ! defined
19414         __c99]: Define, to work around IRIX <stdint.h> incompatibility.
19415         (@FULL_PATH_STDINT_H@) [!(defined(__sgi) && @HAVE_INTTYPES_H@ &&
19416         !defined(__c99))]: Include in this case too, since it's harmless
19417         now.
19418         (<inttypes.h>) [@HAVE_INTTYPES_H@]: Include, since it's no longer
19419         dangerous to do so.
19420         (@FULL_PATH_INTTYPES_H@) [(defined(__hpux) || defined(_AIX)) &&
19421         @HAVE_INTTYPES_H@]: Do not include, since we now include <inttypes.h>.
19422         (_STDINT_MIN, _STDINT_MAX): New macros.
19423         (int8_t, uint8_t, int16_t, uint16_t, int32_t, uint32_t, int64_t):
19424         (uint64_t, int_least8_t, uint_least8_t, int_least16_t):
19425         (uint_least16_t, int_least32_t, uint_least32_t, int_least64_t):
19426         (uint_least64_t, int_fast8_t, uint_fast8_t, int_fast16_t):
19427         (uint_fast16_t, int_fast32_t, uint_fast32_t, int_fast64_t):
19428         (uint_fast64_t, intptr_t, uintptr_t, intmax_t, uintmax_t): Now
19429         macros, not typedefs; this simplifies things quite a bit.
19430         Use long int for all types narrower than int64_t.
19431         (intmax_t, uintmax_t, INTMAX_C, UINTMAX_C):
19432         Define in terms of long long int or int64_t or long int,
19433         not int64_t or int32_t.  This saves some compile-time testing.
19434         (INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX, UINT16_MAX):
19435         (INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN, INT64_MAX):
19436         (UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX, UINT_LEAST8_MAX):
19437         (INT_LEAST16_MIN, INT_LEAST16_MAX, UINT_LEAST16_MAX):
19438         (INT_LEAST32_MIN, INT_LEAST32_MAX, UINT_LEAST32_MAX):
19439         (INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX, INT_FAST8_MIN):
19440         (INT_FAST8_MAX, UINT_FAST8_MAX, INT_FAST16_MIN, INT_FAST16_MAX):
19441         (UINT_FAST16_MAX, INT_FAST32_MIN, INT_FAST32_MAX, UINT_FAST32_MAX):
19442         (INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTPTR_MIN):
19443         (INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN, INTMAX_MAX, UINTMAX_MAX):
19444         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
19445         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
19446         undef any previous version and define our own version, for
19447         simplicity and consistency with the new macros for types.
19448         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
19449         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
19450         Simplify definitions by using _STDINT_MIN and _STDINT_MAX
19451         where appropriate.  Rely on new symbols @PTRDIFF_T_SUFFIX@,
19452         @SIG_ATOMIC_T_SUFFIX@, @SIZE_T_SUFFIX@, @WCHAR_T_SUFFIX@,
19453         @WINT_T_SUFFIX@ to keep things simple here.
19454         (UINT8_C, UINT16_C, UINT32_C, INT64_C, UINT64_C):
19455         Simplify by assuming typical 8/16/32/64 host, since we're
19456         already doing that elsewhere anyway.
19457         Use (LONG_MAX >> 31 >> 31 == 1) rather than @HAVE_LONG_64BIT@,
19458         and assume long long int is 64 bits if available.  This
19459         speeds up 'configure'.
19460
19461 2006-07-01  Eric Blake  <ebb9@byu.net>
19462
19463         * m4/stdarg.m4 (gl_STDARG_H): Use proper AH_VERBATIM.
19464         Reported by Andreas Buening.
19465
19466 2006-07-01  Eric Blake  <ebb9@byu.net>
19467
19468         * m4/stdarg.m4 (gl_STDARG_H): Properly parenthesize gl_va_copy.
19469
19470 2006-06-30  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
19471
19472         * lib/getaddrinfo.c: fixed typo
19473
19474 2006-06-29  Jim Meyering  <jim@meyering.net>
19475
19476         * modules/strftime (Maintainer): Add my name, since with the
19477         FPRINTFTIME changes strftime.c has forked from glibc.
19478
19479 2006-06-29  Eric Blake  <ebb9@byu.net>
19480
19481         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Use AC_C_INLINE.
19482
19483 2006-06-29  Eric Blake  <ebb9@byu.net>
19484
19485         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): New file.
19486
19487 2006-06-29  Eric Blake  <ebb9@byu.net>
19488
19489         * lib/stat_.h: New file.
19490
19491 2006-06-29  Eric Blake  <ebb9@byu.net>
19492
19493         * lib/stat_.h (rpl_mkdir): Declare inline, to avoid warnings about
19494         unused static function.
19495
19496 2006-06-29  Eric Blake  <ebb9@byu.net>
19497
19498         * doc/functions.texi (Function Portability): Document missing lstat
19499         on mingw.
19500
19501 2006-06-29  Eric Blake  <ebb9@byu.net>
19502
19503         * MODULES.html.sh: Add sys_stat.
19504         * modules/sys_stat: New module.
19505         * modules/mkstemp (Depends-on): Add sys_stat.
19506
19507 2006-06-29  Derek R. Price  <derek@ximbiot.com>
19508
19509         * m4/strftime.m4: Don't call AC_FUNC_STRFTIME.
19510
19511 2006-06-29  Derek R. Price  <derek@ximbiot.com>
19512
19513         * m4/c-bs-a.m4: Removed.
19514
19515 2006-06-29  Derek R. Price  <derek@ximbiot.com>
19516
19517         * lib/strftime.c: Assume strftime() exists.
19518
19519 2006-06-29  Derek Price  <derek@ximbiot.com>
19520
19521         * modules/c-bs-a: Removed - \a is C89.
19522         * MODULES.html.sh: Remove c-bs-a.
19523
19524 2006-06-29  Bruno Haible  <bruno@clisp.org>
19525
19526         * modules/wcwidth (License): Change to LGPL.
19527
19528 2006-06-28  Simon Josefsson  <jas@extundo.com>
19529
19530         * tests/test-getaddrinfo.c: Test getnameinfo too.  Call WSAStartup
19531         on _WIN32.
19532
19533         * modules/getaddrinfo (Depends-on): Add inet_ntop, needed by
19534         getnameinfo.
19535
19536 2006-06-28  Simon Josefsson  <jas@extundo.com>
19537
19538         * m4/getaddrinfo.m4: Look for getnameinfo prototypes too.
19539
19540 2006-06-28  Simon Josefsson  <jas@extundo.com>
19541
19542         * lib/getaddrinfo.c: Try to load ws2_32.dll on Windows, to find the
19543         functions there.  It will succeed on Windows XP, but on Windows
19544         2000 and (presumably) earlier, it will fail, and use the internal
19545         re-implementation.
19546         (use_win32_p): New function.
19547         (getaddrinfo): Use strtoul on servname, to support numeric ports.
19548         Support AI_NUMERICSERV to disable getservbyname.
19549         (getnameinfo): New function, only supports
19550         NI_NUMERICHOST|NI_NUMERICSERV for now.
19551
19552         * lib/getaddrinfo.h: Test and check for AI_* flags separately, MinGW
19553         only have some of them.  Add AI_NUMERICSERV.  Add prototype for
19554         getnameinfo.
19555
19556 2006-06-28  Eric Blake  <ebb9@byu.net>
19557
19558         * modules/wcwidth: New file.
19559         * modules/mbchar (Depends-on): Add wcwidth.
19560         * modules/mbswidth (Depends-on): Add wcwidth.
19561         * MODULES.html.sh: Add wcwidth.
19562
19563 2006-06-28  Eric Blake  <ebb9@byu.net>
19564
19565         * m4/mbswidth.m4 (gl_MBSDWIDTH): Move wcwidth from here...
19566         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): ...to this new file.
19567
19568 2006-06-28  Eric Blake  <ebb9@byu.net>
19569
19570         * lib/xvasprintf.h: Fix comments.
19571
19572 2006-06-28  Eric Blake  <ebb9@byu.net>
19573
19574         * lib/mbchar.h (wcwidth): Include wcwidth.h.
19575         * lib/mbswidth.c (wcwidth): Move from here...
19576         * lib/wcwidth.h: ...to this new file.
19577
19578 2006-06-28  Derek R. Price  <derek@ximbiot.com>
19579
19580         * m4/savedir.m4: Remove AC_FUNC_CLOSEDIR_VOID requirement.
19581
19582         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't require AC_C_CONST, since
19583         it's obsolete.
19584         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Likewise.
19585
19586 2006-06-28  Derek R. Price  <derek@ximbiot.com>
19587
19588         * lib/savedir.c (CLOSEDIR): Remove.  All uses changed to closedir.
19589         Autoconf 2.60 says this stuff was obsolete.
19590
19591 2006-06-28  Bruno Haible  <bruno@clisp.org>
19592
19593         * modules/wcwidth (Files): Add m4/wchar_t.m4.
19594
19595 2006-06-28  Bruno Haible  <bruno@clisp.org>
19596
19597         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Also require AC_C_INLINE and
19598         gt_TYPE_WCHAR_T.
19599
19600 2006-06-28  Bruno Haible  <bruno@clisp.org>
19601
19602         * lib/wcwidth.h: Declare nothing if !HAVE_WCHAR_T. Provide a fallback
19603         declaration for wcwidth.
19604         * lib/mbswidth.c: Restore the includes of <wchar.h> and <wctypes.h>.
19605
19606 2006-06-28  Bruno Haible  <bruno@clisp.org>
19607
19608         * lib/mkdtemp.c [MINGW]: Include <io.h>.
19609         (mkdir): Define using _mkdir.
19610
19611 2006-06-28  Bruno Haible  <bruno@clisp.org>
19612
19613         * lib/getaddrinfo.h: Fix POSIX URL.
19614         * lib/getaddrinfo.c (WIN32_NATIVE): New macro. Use it instead of
19615         _WIN32.
19616         (use_win32_p): Make static.
19617         (getaddrinfo): Reject service name if it is empty or does not consist
19618         solely of decimal digits, or if its value is > 65535.
19619         (getnameinfo): Remove useless casts.
19620
19621 2006-06-27  Simon Josefsson  <jas@extundo.com>
19622
19623         * modules/sys_select: New file, suggested by Bruno Haible, Paul
19624         Eggert and Martin Lambers.
19625
19626 2006-06-27  Simon Josefsson  <jas@extundo.com>
19627
19628         * m4/sys_select_h.m4: New file, suggested by Bruno Haible, Paul
19629         Eggert and Martin Lambers.
19630
19631 2006-06-27  Bruno Haible  <bruno@clisp.org>
19632
19633         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): For nonexistent types, set the
19634         result to 0, not to empty.
19635         Reported by Martin Neitzel <neitzel@sco.gaertner.de>.
19636
19637 2006-06-27  Bruno Haible  <bruno@clisp.org>
19638
19639         * lib/stdint_.h (intmax_t, uintmax_t): Undefine before typedef.
19640
19641 2006-06-26  Simon Josefsson  <jas@extundo.com>
19642
19643         * m4/inet_ntop.m4: Don't check for sys/types.h, we assume it is
19644         present.
19645
19646 2006-06-26  Paul Eggert  <eggert@cs.ucla.edu>
19647
19648         * lib/base64.c (B64): Use _ as the formal parameter, not x, to avoid
19649         bug in IBM C V6 for AIX.  Problem reported by Larry Jones in
19650         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00181.html>.
19651
19652 2006-06-26  Mark D. Baushke  <mdb@gnu.org>
19653
19654         * m4/stdint.m4 (gl_STDINT_H): Treat BSD/OS like OpenBSD.
19655
19656 2006-06-26  Bruno Haible  <bruno@clisp.org>
19657
19658         * modules/stdint (Makefile.am): Also substitute HAVE_WCHAR_H.
19659
19660 2006-06-26  Bruno Haible  <bruno@clisp.org>
19661
19662         * m4/stdint.m4 (gl_STDINT_H): Test also for <wchar.h>.
19663
19664 2006-06-26  Bruno Haible  <bruno@clisp.org>
19665
19666         * m4/stdint.m4 (gl_STDINT_H): Don't include <stdint.h> when using the
19667         SGI C compiler in pre-C99 mode.
19668         Suggested by Mark D. Baushke and Larry Jones.
19669
19670 2006-06-26  Bruno Haible  <bruno@clisp.org>
19671
19672         * lib/stdint_.h: Include <wchar.h> if necessary for WCHAR_MIN or
19673         WCHAR_MAX.
19674         Reported by Mark D. Baushke and Larry Jones.
19675
19676 2006-06-26  Bruno Haible  <bruno@clisp.org>
19677
19678         * lib/stdint_.h: Don't include <stdint.h> when using the SGI C compiler
19679         in pre-C99 mode.
19680         Suggested by Mark D. Baushke and Larry Jones.
19681
19682 2006-06-23  Simon Josefsson  <jas@extundo.com>
19683             Bruno Haible  <bruno@clisp.org>
19684
19685         * gnulib-tool (func_emit_lib_Makefile_am): Define MOSTLYCLEANDIRS.
19686         Emit mostlyclean-local rule.
19687         (func_emit_tests_Makefile_am): Likewise.
19688         * modules/sys_socket (Makefile.am): Use MOSTLYCLEANDIRS.
19689
19690 2006-06-23  Mark D. Baushke  <mdb@gnu.org>
19691
19692         * lib/stdint_.h: Treat BSD/OS like OpenBSD.
19693
19694 2006-06-23  Bruno Haible  <bruno@clisp.org>
19695
19696         * tests/test-stdint.c: Update to match ISO C 99 Technical
19697         Corrigendum 1.
19698
19699 2006-06-23  Bruno Haible  <bruno@clisp.org>
19700
19701         * m4/stdint.m4 (gl_STDINT_H): Treat IRIX like OpenBSD.
19702
19703 2006-06-23  Bruno Haible  <bruno@clisp.org>
19704
19705         * lib/stdint_.h: Treat IRIX like OpenBSD.
19706
19707 2006-06-23  Bruno Haible  <bruno@clisp.org>
19708
19709         * lib/stdint_.h (UINT8_C, UINT16_C, UINT32_C): Define according to
19710         ISO C 99 Technical Corrigendum 1.
19711
19712 2006-06-22  Simon Josefsson  <jas@extundo.com>
19713
19714         * m4/sockpfaf.m4: Include winsock2.h too, to make it work under
19715         MinGW.
19716
19717 2006-06-22  Paul Eggert  <eggert@cs.ucla.edu>
19718
19719         * lib/glob.c (collated_compare): Remove 'const' uses that weren't
19720         needed.  Some compiler complained about some of them.  Problem reported
19721         by Larry Jones in
19722         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00172.html>.
19723
19724 2006-06-21  Simon Josefsson  <jas@extundo.com>
19725
19726         * tests/test-getaddrinfo.c: New file.
19727
19728         * modules/getaddrinfo-tests: New file.
19729
19730         * MODULES.html.sh: Add inet_pton.
19731
19732         * modules/inet_pton: New file.
19733
19734 2006-06-21  Simon Josefsson  <jas@extundo.com>
19735
19736         * m4/getaddrinfo.m4: Don't define WINVER.  Look for gethostbyname in
19737         -lws2_32 too.  Fixes getaddrinfo on Windows 2000, with the price
19738         of using the (limited) gnulib implementation on Windows XP.
19739
19740         * m4/inet_pton.m4: New file.
19741
19742 2006-06-21  Simon Josefsson  <jas@extundo.com>
19743
19744         * lib/getaddrinfo.c (getaddrinfo): Set ai_family in the return
19745         variable.
19746
19747         * lib/socket_.h: Don't define WINVER.
19748
19749         * lib/inet_pton.h, inet_pton.c: New file, taken from glibc but
19750         slightly modified to work in gnulib.
19751
19752 2006-06-21  Simon Josefsson  <jas@extundo.com>
19753
19754         * doc/gnulib.texi (Windows sockets): Add.
19755
19756 2006-06-21  Paul Eggert  <eggert@cs.ucla.edu>
19757
19758         * lib/read-file.c (fread_file): Start with buffer allocation of
19759         0 bytes rather than 1 byte; this simplifies the code.
19760         Don't invoke feof; it's not needed.  Refactor to avoid duplicate
19761         code to free buffer and save/restore errno.
19762         (internal_read_file): Remove unused local.
19763
19764 2006-06-20  Paul Eggert  <eggert@cs.ucla.edu>
19765
19766         * lib/openat.c (openat): Use ?:, not if, to work around GCC bug 4210
19767         <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=4210>.
19768         Problem reported by Denis Excoffier in
19769         <http://lists.gnu.org/archive/html/bug-tar/2006-06/msg00023.html>.
19770
19771 2006-06-19  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
19772
19773         * modules/sys_socket, modules/socklen: Include sys/types since
19774         FreeBSD 4.x's sys/socket.h needs it.
19775
19776 2006-06-19  Simon Josefsson  <jas@extundo.com>
19777
19778         * lib/inet_ntop.c: Always build inet_ntop4, since inet_ntop6 calls it.
19779
19780 2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
19781
19782         * lib/alloca_.h (alloca) [defined alloca]: Don't define or declare.
19783
19784 2006-06-19  Bruno Haible  <bruno@clisp.org>
19785
19786         * m4/stdint.m4 (gl_STDINT_H): Enclose the values of FULL_PATH_STDINT_H
19787         and FULL_PATH_INTTYPES_H in angle brackets.
19788         Reported by Mark D. Baushke <mdb@gnu.org>.
19789
19790 2006-06-17  Eric Blake  <ebb9@byu.net>
19791
19792         * m4/rmdir-errno.m4 (gl_FUNC_FMDIR_NOTEMPTY): Assume errno.h declares
19793         errno.
19794
19795 2006-06-17  Bruno Haible  <bruno@clisp.org>
19796
19797         * m4/stdint.m4 (gl_STDINT_H) [FreeBSD >= 5]: Don't include
19798         <sys/inttypes.h>.
19799
19800 2006-06-17  Bruno Haible  <bruno@clisp.org>
19801
19802         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove test
19803         whether errno is declared. Assume <errno.h> declares errno.
19804
19805 2006-06-17  Bruno Haible  <bruno@clisp.org>
19806
19807         * lib/stdint_.h [FreeBSD >= 5]: Don't include <sys/inttypes.h>.
19808
19809 2006-06-17  Bruno Haible  <bruno@clisp.org>
19810
19811         * lib/stdint_.h (_UINT8_T, _UINT32_T, _UINT64_T): New macros. Fixes a
19812         problem on Solaris 2.5.1.
19813
19814 2006-06-16  Eric Blake  <ebb9@byu.net>
19815
19816         * lib/unsetenv.c [!defined errno]: Assume errno.h declares errno.
19817         * lib/unicodeio.c [!defined errno]: Likewise.
19818         * lib/strtol.c [!defined errno]: Likewise.
19819         * lib/strtod.c [!defined errno]: Likewise.
19820
19821 2006-06-15  Eric Blake  <ebb9@byu.net>
19822
19823         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Work in spite of -Werror.
19824
19825 2006-06-15  Eric Blake  <ebb9@byu.net>
19826
19827         * config/srclist.txt (ssize_t.m4): Lose sync.
19828
19829 2006-06-15  Bruno Haible  <bruno@clisp.org>
19830
19831         * modules/stdint (Files): Include m4/full-header-path.m4,
19832         m4/size_max.m4, m4/wchar_t.m4.
19833         (Makefile.am): Many more substitutions.
19834         * modules/stdint-tests: New file.
19835         * tests/test-stdint.c: New file.
19836
19837 2006-06-15  Bruno Haible  <bruno@clisp.org>
19838
19839         * m4/stdint.m4 (gl_STDINT_H): Rewritten to produce a complete stdint.h.
19840         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H, gl_STDINT_CHECK_TYPES,
19841         gl_STDINT_MISSING_BOUND, gl_STDINT_MISSING_BOUNDS,
19842         gl_STDINT_MISSING_BOUNDS2, gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED,
19843         gl_CHECK_TYPE_SAME): New macros.
19844
19845 2006-06-15  Bruno Haible  <bruno@clisp.org>
19846
19847         * m4/size_max.m4 (gl_SIZE_MAX): Make it work also when cross-compiling.
19848
19849 2006-06-15  Bruno Haible  <bruno@clisp.org>
19850
19851         * lib/stdint_.h: Rewritten to be fully auto-configured.
19852         Fixes bug on HP-UX/IA64.
19853
19854 2006-06-11  Paul Eggert  <eggert@cs.ucla.edu>
19855
19856         * lib/getdate.y (__attribute__): Don't define if already defined.
19857         Problem reported by Larry Jones.
19858         * lib/utimens.c (__attribute__): Likewise.
19859
19860 2006-06-04  Paul Eggert  <eggert@cs.ucla.edu>
19861
19862         * lib/regexec.c (group_nodes_into_DFAstates): Fix a buffer overrun
19863         reported by Andreas Schwab.
19864
19865 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19866             Bruno Haible  <bruno@clisp.org>
19867
19868         * m4/strndup.m4 (gl_FUNC_STRNDUP): Replace the AC_REPLACE_FUNCS with a
19869         check for the declaration of strnlen and a run test that exposes the
19870         AIX 5.1 strnlen bug.  In the failure case, #define strndup to
19871         rpl_strndup.
19872
19873 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19874             Bruno Haible  <bruno@clisp.org>
19875
19876         * lib/strndup.c (strndup) [!_LIBC]: Don't undefine macro definition.
19877
19878 2006-05-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19879
19880         * m4/c-strtod.m4 (gl_C99_STRTOLD): Use a link test rather than a
19881         compile test, for Tru64 4.0D.
19882
19883 2006-05-28  Karl Berry  <karl@gnu.org>
19884
19885         * config/srclist.txt (printf-args.c): lose sync.
19886
19887 2006-05-26  Martin Lambers  <marlam@marlam.de>
19888
19889         * lib/getpass.c: Updates the test for the native W32 API, and adds
19890         missing includes, thus fixing compilation warnings.
19891
19892 2006-05-25  Sergey Poznyakoff  <gray@gnu.org.ua>
19893
19894         * lib/exclude.c (exclude_fnmatch): New function.
19895         (excluded_file_name): Call exclude_fnmatch.
19896         * lib/exclude.h (excluded_file_name): New prototype
19897
19898 2006-05-25  Paul Eggert  <eggert@cs.ucla.edu>
19899
19900         * lib/tempname.c (small_open, large_open): New macros.
19901         (__open, __open64) [!_LIBC]: Remove.
19902         (__gen_tempname): Use small_open and large_open instead of __open
19903         and __open64.  This fixes a portability bug on HP-UX 11.11i
19904         reported by Simon Wing-Tang in
19905         <http://lists.gnu.org/archive/html/bug-coreutils/2006-05/msg00114.html>.
19906
19907 2006-05-24  Bruno Haible  <bruno@clisp.org>
19908
19909         * lib/printf-args.c (printf_fetchargs): Turn NULL pointers for
19910         TYPE_STRING and TYPE_WIDE_STRING into a non-NULL replacement.
19911         Reported by Thorsten Maerz <torte@netztorte.de> via
19912         Aaron Stone <aaron@serendipity.cx>.
19913
19914 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
19915
19916         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Rename cache variables to use
19917         gl_ rather than jm_.  Link, don't run, so that cross-compiles are
19918         allowed.  Check that resulting type is arithmetic.  Move AC_REQUIRE
19919         and AC_CHECK_HEADERS_ONCE outside of AC_CACHE_CHECK, since they're
19920         not really conditional on the cache.
19921         (gl_PREREQ_NANOSLEEP): Check for sys/select.h.
19922
19923 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
19924
19925         * lib/nanosleep.c [HAVE_SYS_SELECT_H]: Include <sys/select.h>.
19926         Use the usual Autoconf way to include <time.h> and/or sys/time.h.
19927         (my_usleep): Don't mishandle maximum value.
19928
19929 2006-05-19  Jim Meyering  <jim@meyering.net>
19930
19931         * lib/getugroups.c: Correct an outdated comment.  From Bruno Haible.
19932
19933 2006-05-17  Bruno Haible  <bruno@clisp.org>
19934
19935         Cygwin portability.
19936         * lib/classpath.c (PATH_SEPARATOR) [CYGWIN]: Define as ':'.
19937
19938 2006-05-17  Bruno Haible  <bruno@clisp.org>
19939
19940         * lib/stdint_.h: Fix recognition of Cygwin.
19941
19942 2006-05-15  Bruno Haible  <bruno@clisp.org>
19943
19944         * build-aux/config.rpath: Improve support for Sun C 5.9 on Linux, based
19945         on libtool patch by Ralf Wildenhues.
19946
19947 2006-05-14  Paul Eggert  <eggert@cs.ucla.edu>
19948
19949         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Fix overly-picky
19950         test for C99 conformance; (bool) 0.5 is an integer constant
19951         expression, but (bool) -0.5 is not.  Problem reported by Fedor
19952         Sergeev in <http://forum.sun.com/jive/thread.jspa?threadID=96202>.
19953
19954 2006-05-11  Simon Josefsson  <jas@extundo.com>
19955
19956         * m4/xvasprintf.m4: Fix obvious typo.
19957
19958 2006-05-11  Jim Meyering  <jim@meyering.net>
19959
19960         * lib/sha1.c (sha1_buffer): Correct comment: s/MD5/SHA1/.  From
19961         James Lemley.
19962
19963 2006-05-10  Simon Josefsson  <jas@extundo.com>
19964
19965         * lib/md4.c: Typo fix, update copyright years.
19966         (K1, K2): Don't use L because it turn computations into 64-bit on
19967         64-bit platforms.
19968
19969 2006-05-10  Paul Eggert  <eggert@cs.ucla.edu>
19970
19971         * lib/crc.c (crc32_update): Remove unnecessary L suffix.
19972         * lib/md4.c (rol): Cast right-shift arg to uint32_t to prevent
19973         unwanted sign propagation, e.g., on hosts with 64-bit int.
19974         There still are some problems with reeelly weird theoretical hosts
19975         (e.g., 33-bit int) but it's not worth worrying about now.
19976         * lib/sha1.c (rol): Likewise.
19977         (K1, K2, K3, K4): Remove unnecessary L suffix.
19978
19979 2006-05-10  Bruno Haible  <bruno@clisp.org>
19980
19981         * lib/des.c: Cast to avoid warnings.
19982
19983 2006-05-09  Bruno Haible  <bruno@clisp.org>
19984
19985         * modules/xvasprintf (Files): Add m4/xvasprintf.m4.
19986         (Depends-on): Depend also on xsize, stdarg.
19987         (configure.ac): Add gl_XVASPRINTF.
19988
19989 2006-05-09  Bruno Haible  <bruno@clisp.org>
19990
19991         * m4/xvasprintf.m4: New file.
19992
19993 2006-05-09  Bruno Haible  <bruno@clisp.org>
19994
19995         * lib/xvasprintf.c: Include limits.h, string.h, xsize.h.
19996         (EOVERFLOW): Define fallback value.
19997         (xstrcat): New function.
19998         (xvasprintf): Recognize the special case of a string concatenation.
19999
20000 2006-05-08  Eric Blake  <ebb9@byu.net>
20001
20002         * gnulib-tool (func_version): Base copyright year on CVS date.
20003         (func_emit_copyright_notice): New function.
20004         (func_emit_lib_Makefile_am): Use it.
20005         (func_emit_tests_Makefile_am): Likewise.
20006         (func_import): Likewise.
20007
20008 2006-05-08  Bruno Haible  <bruno@clisp.org>
20009
20010         * modules/stdarg: New file.
20011         * MODULES.html.sh (func_all_modules): Add section for <stdarg.h>.
20012
20013 2006-05-08  Bruno Haible  <bruno@clisp.org>
20014
20015         * m4/stdarg.m4: New file, from GNU gettext.
20016
20017 2006-05-08  Bruno Haible  <bruno@clisp.org>
20018
20019         * config/srclist.txt (build-aux/config.rpath): different from latest
20020         release.
20021
20022 2006-05-08  Bruno Haible  <bruno@clisp.org>
20023
20024         * build-aux/config.rpath: Add support for Sun C 5.9 on Linux.
20025
20026 2006-05-05  Jim Meyering  <jim@meyering.net>
20027
20028         * m4/warning.m4: New file, derived from bison's file by the same name.
20029
20030 2006-05-03  Bruno Haible  <bruno@clisp.org>
20031
20032         * lib/stdint_.h: Shorter URL.
20033         * lib/inttypes.h: Likewise.
20034
20035 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
20036
20037         * modules/inttypes (Maintainer): Change from Derek Price to 'all'.
20038
20039 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
20040
20041         * lib/verify.h: Document the internals better.  Most of this change
20042         was written by Bruno Haible.
20043
20044 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
20045
20046         * doc/verify.texi: New file, partly based on a proposal by
20047         Bruno Haible.
20048
20049 2006-05-02  Bruno Haible  <bruno@clisp.org>
20050
20051         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Move the include_next
20052         test from here...
20053         * m4/_inttypes_h.m4 (gl_INTTYPES_H): ... to here.
20054
20055 2006-04-29  Bruno Haible  <bruno@clisp.org>
20056
20057         * lib/gcd.c: Use WORD_T and GCD instead of unsigned long and gcd.
20058         Suggested by Oskar Liljeblad <oskar@osk.mine.nu>.
20059
20060 2006-04-29  Bruno Haible  <bruno@clisp.org>
20061
20062         * gnulib-tool: Make --update option actually work.
20063
20064 2006-04-29  Bruno Haible  <bruno@clisp.org>
20065
20066         * doc/gcd.texi: New file.
20067         * doc/gnulib.texi: Include it.
20068
20069 2006-04-25  Paul Eggert  <eggert@cs.ucla.edu>
20070
20071         * lib/getdate.y (get_date): When adding relative date, start with the
20072         initial time, not with the result of the first mktime call.
20073
20074 2006-04-25  Bruno Haible  <bruno@clisp.org>
20075
20076         * gnulib-tool (func_import): Output the include directives in three
20077         blocks, sorted separately.
20078         Reported by Ben Pfaff <blp@cs.stanford.edu>.
20079
20080 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
20081
20082         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use prototype
20083         to define main with arguments, for C++.  Reported by Eric Blake.
20084         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC):
20085         Prefer 'int main ()' to 'int main (void)', for C++.
20086         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Likewise.
20087         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Specify a return type
20088         for 'main', for C99 and C++.
20089
20090 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
20091
20092         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Use return, not exit.
20093         Don't assume that exit status -1 is valid.
20094         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
20095         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
20096         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Likewise.
20097         * m4/readdir.m4 (GL_FUNC_READDIR): Include <stdlib.h>.
20098         * m4/rename.m4 (vb_FUNC_RENAME): Likewise.
20099         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use AC_RUN_IFELSE,
20100         not AC_TRY_RUN.  Use return, not exit.  Don't assume that
20101         functions can be used without declaring them, or that you can
20102         exit with status -1.
20103         * m4/utimes-null.m4 (gl_FUNC_UTIMES_NULL): Likewise.
20104
20105 2006-04-24  Karl Berry  <karl@gnu.org>
20106
20107         * config/srclist.txt (longdouble.m4): sync lost.
20108
20109 2006-04-24  Eric Blake  <ebb9@byu.net>
20110
20111         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Avoid unused variable warning.
20112
20113 2006-04-24  Bruno Haible  <bruno@clisp.org>
20114
20115         * m4/poll.m4 (gl_FUNC_POLL): When cross-compiling, reject also the
20116         poll() implementation in AIX.
20117         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
20118
20119 2006-04-24  Bruno Haible  <bruno@clisp.org>
20120
20121         * m4/poll.m4 (gl_FUNC_POLL): Rearrange code, so that POLL_H gets
20122         assigned exactly once.
20123
20124 2006-04-23  Claudio Fontana  <claudio@gnu.org>
20125             Bruno Haible  <bruno@clisp.org>
20126
20127         * modules/gettext (Makefile.am): Add a -I flag for <libintl.h>.
20128         * gnulib-tool (func_emit_lib_Makefile_am): Emit empty default value
20129         for AM_CPPFLAGS.
20130
20131 2006-04-23  Bruno Haible  <bruno@clisp.org>
20132
20133         * modules/copy-file: Depend on unistd.
20134         * modules/execute: Likewise.
20135         * modules/fatal-signal: Likewise.
20136         * modules/findprog: Likewise.
20137         * modules/mkdtemp : Likewise.
20138         * modules/pipe: Likewise.
20139         * modules/wait-process: Likewise.
20140
20141 2006-04-23  Bruno Haible  <bruno@clisp.org>
20142
20143         * lib/fwriteerror.c (fwriteerror): Call fclose also when an error
20144         condition was already detected.
20145         Reported by Ben Pfaff <blp@cs.stanford.edu>.
20146
20147 2006-04-23  Bruno Haible  <bruno@clisp.org>
20148
20149         * lib/copy-file.c: Include <unistd.h> unconditionally.
20150         * lib/execute.c: Likewise.
20151         * lib/fatal-signal.c: Likewise.
20152         * lib/findprog.c: Likewise.
20153         * lib/mkdtemp.c: Likewise.
20154         * lib/pipe.h: Likewise.
20155         * lib/pipe.c: Likewise.
20156         * lib/wait-process.h: Likewise.
20157
20158 2006-04-23  Bruno Haible  <bruno@clisp.org>
20159
20160         * gnulib-tool (func_usage): Fix --import description. Document
20161         --update.
20162         (func_import): Create temporary file in a temporary directory, if
20163         --dry-run is specified. Silence errors from 'grep' when there are no
20164         m4 files in $m4dir.
20165         (func_create_testdir): Silence errors from 'grep' when there are no
20166         m4 files in $m4dir.
20167         Reported by Karl Berry <karl@freefriends.org>.
20168
20169 2006-04-20  Bruno Haible  <bruno@clisp.org>
20170
20171         * m4/argp.m4 (gl_ARGP): Don't call AC_CHECK_DECLS_ONCE with more than
20172         one argument, so that the code will be portable to Autoconf 2.60.
20173         * m4/getlogin_r.m4 (gl_PREREQ_GETLOGIN_R): Likewise.
20174         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
20175         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO): Likewise.
20176
20177 2006-04-19  Derek Price  <derek@ximbiot.com>
20178             Eric Blake  <ebb9@byu.net>
20179
20180         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Use </full/path.h>
20181         rather than "/full/path.h".  Update comment to match.  Shorten &
20182         generalize m4_translit call via AS_TR_CPP.
20183
20184 2006-04-19  Derek Price  <derek@ximbiot.com>
20185             Eric Blake  <ebb9@byu.net>
20186
20187         * lib/inttypes.h: Correct grammar in comment.
20188
20189 2006-04-18  Derek Price  <derek@ximbiot.com>
20190             Paul Eggert  <eggert@cs.ucla.edu>
20191
20192         * modules/inttypes: New file.
20193         * modules/strtoimax, modules/strtoumax: Depend on inttypes.
20194
20195 2006-04-18  Derek Price  <derek@ximbiot.com>
20196             Paul Eggert  <eggert@cs.ucla.edu>
20197
20198         * m4/_inttypes_h.m4, m4/full-header-path.m4, m4/include_next.m4:
20199         New files.
20200
20201 2006-04-18  Derek Price  <derek@ximbiot.com>
20202             Paul Eggert  <eggert@cs.ucla.edu>
20203
20204         * lib/inttypes.h: New file.
20205         * lib/strtoimax.c: Assume <inttypes.h>.
20206
20207 2006-04-15  Paul Eggert  <eggert@cs.ucla.edu>
20208
20209         * lib/utimens.c (futimens): glibc futimesat messes up if /proc
20210         isn't mounted.  Problem reported by Kir Kolyshkin.
20211
20212 2006-04-13  Paul Eggert  <eggert@cs.ucla.edu>
20213
20214         * lib/regcomp.c (init_dfa): Don't use wchar_t or wctype_t if
20215         RE_ENABLE_I18N is not defined.  Problem reported by Mark D. Baushke via
20216         Derek R. Price.
20217         * lib/regex.h (RE_DUP_MAX): Update comment to match current
20218         implementation.
20219
20220 2006-04-12  Eric Blake  <ebb9@byu.net>
20221
20222         * modules/time_r (Makefile.am): Remove lib_SOURCES line, as this
20223         is now done automatically by the corresponding Autoconf macro.
20224
20225 2006-04-11  Paul Eggert  <eggert@cs.ucla.edu>
20226
20227         * m4/time_r.m4 (gl_TIME_R): Add AC_LIBSOURCES for time_r.c and
20228         time_r.h.
20229
20230 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
20231
20232         Merge regex changes from libc, removing some of our
20233         POSIX-conformance changes that were rejected and redoing them in a
20234         less-intrusive way.
20235
20236         * lib/regcomp.c (re_compile_internal, init_dfa):
20237         Length arg is now size_t, not Idx.  All uses changed.
20238         (peek_token): Forward decl now says internal_function.
20239         (__re_error_msgid, __re_error_msgid_idx):
20240         Now static rather than extern with attribute_hidden.
20241         (re_compile_pattern) [!defined _LIBC]: Use K&R-style defn.
20242         For some reason libc prefers K&R style defns for external functions.
20243         (regerror) [!defined _LIBC]: Likewise.
20244         (re_set_syntax, re_compile_fastmap, regcomp, regfree, re_comp):
20245         (seek_collating_symbol_entry, lookup_collation_sequence_value):
20246         (build_range_exp, build_collating_symbol):
20247         Use K&R-style defn.
20248         (re_compile_fastmap): Use '\0' to memset, not 0.
20249         (utf8_sb_map): Make the calculations more obvious.
20250         (init_dfa, parse_bracket_exp, build_charclass_op):
20251         Call calloc and cast result, as glibc does.
20252         (init_word_char, fetch_token, peek_token, peek_token_bracket):
20253         (build_range_exp, build_collating_symbol):
20254         Now internal functions.
20255
20256         * lib/regex.c [!defined _LIBC]: Allow compiling with C++ compilers.
20257
20258         * lib/regex.h (__USE_GNU_REGEX): New macro.  Don't depend on
20259         _REGEX_SOURCE any more; depend on _GNU_SOURCE instead.
20260         Don't depend on VMS; depend on __VMS instead, for POSIX
20261         namespace cleanness.
20262         (regoff_t): Define to ssize_t, not long int.
20263
20264         Remove the REG_ macros named below.  Instead, make the old names
20265         (e.g., RE_BACKSLASH_ESCAPE_IN_LISTS) visible only if
20266         __USE_GNU_REGEX.
20267         (REG_BACKSLASH_ESCAPE_IN_LISTS):
20268         (REG_BK_PLUS_QM, REG_CHAR_CLASSES, REG_CONTEXT_INDEP_ANCHORS):
20269         (REG_CONTEXT_INDEP_OPS, REG_CONTEXT_INVALID_OPS):
20270         (REG_DOT_NEWLINE, REG_DOT_NOT_NULL, REG_HAT_LISTS_NOT_NEWLINE):
20271         (REG_INTERVALS, REG_LIMITED_OPS, REG_NEWLINE_ALT):
20272         (REG_NO_BK_BRACES, REG_NO_BK_PARENS, REG_NO_BK_REFS):
20273         (REG_NO_BK_VBAR, REG_NO_EMPTY_RANGES):
20274         (REG_UNMATCHED_RIGHT_PAREN_ORD, REG_NO_POSIX_BACKTRACKING):
20275         (REG_NO_GNU_OPS, REG_DEBUG, REG_INVALID_INTERVAL_ORD):
20276         (REG_IGNORE_CASE, REG_CARET_ANCHORS_HERE):
20277         (REG_CONTEXT_INVALID_DUP, REG_NO_SUB, REG_SYNTAX_EMACS):
20278         (REG_SYNTAX_AWK, REG_SYNTAX_GNU_AWK, REG_SYNTAX_POSIX_AWK):
20279         (REG_SYNTAX_GREP, REG_SYNTAX_EGREP, REG_SYNTAX_POSIX_EGREP):
20280         (REG_SYNTAX_ED, REG_SYNTAX_SED, _REG_SYNTAX_POSIX_COMMON):
20281         (REG_SYNTAX_POSIX_BASIC, REG_SYNTAX_POSIX_MINIMAL_BASIC):
20282         (REG_SYNTAX_POSIX_EXTENDED, REG_SYNTAX_POSIX_MINIMAL_EXTENDED):
20283         (REG_DUP_MAX, REG_UNALLOCATED, REG_REALLOCATE, REG_FIXED):
20284         (REG_NREGS):
20285         Remove.  All uses replaced by the old RE_* names.
20286         (RE_BACKSLASH_ESCAPE_IN_LISTS):
20287         (RE_BK_PLUS_QM, RE_CHAR_CLASSES, RE_CONTEXT_INDEP_ANCHORS):
20288         (RE_CONTEXT_INDEP_OPS, RE_CONTEXT_INVALID_OPS):
20289         (RE_DOT_NEWLINE, RE_DOT_NOT_NULL, RE_HAT_LISTS_NOT_NEWLINE):
20290         (RE_INTERVALS, RE_LIMITED_OPS, RE_NEWLINE_ALT):
20291         (RE_NO_BK_BRACES, RE_NO_BK_PARENS, RE_NO_BK_REFS):
20292         (RE_NO_BK_VBAR, RE_NO_EMPTY_RANGES):
20293         (RE_UNMATCHED_RIGHT_PAREN_ORD, RE_NO_POSIX_BACKTRACKING):
20294         (RE_NO_GNU_OPS, RE_DEBUG, RE_INVALID_INTERVAL_ORD):
20295         (RE_IGNORE_CASE, RE_CARET_ANCHORS_HERE):
20296         (RE_CONTEXT_INVALID_DUP, RE_NO_SUB):
20297         Don't bother having these macros be independent of each others'
20298         values, since they no longer exist in the POSIX name space.
20299
20300         Rename the following member names back to their old names,
20301         unless !__USE_GNU_REGEX.  All uses changed back.
20302         (buffer): Renamed from re_buffer.
20303         (allocated): Renamed from re_allocated.
20304         (used): Renamed from re_used.
20305         (syntax): Renamed from re_syntax.
20306         (fastmap): Renamed from re_fastmap.
20307         (translate): Renamed from re_translate.
20308         (can_be_null): Renamed from re_can_be_null.
20309         (regs_allocated): Renamed from re_regs_allocated.
20310         (fastmap_accurate): Renamed from re_fastmap_accurate.
20311         (no_sub): Renamed from re_no_sub.
20312         (not_bol): Renamed from re_not_bol.
20313         (not_eol): Renamed from re_not_eol.
20314         (newline_anchor): Renamed from re_newline_anchor.
20315         (num_regs): Renamed from rm_num_regs.
20316         (start): Renamed from rm_start.
20317         (end): Renamed from rm_end.
20318
20319         (free_state): Move up a bit.
20320
20321         * lib/regex_internal.h (inline) [__GNUC__ < 3 && defined _LIBC]:
20322         #define to be empty.
20323         (ASCII_CHARS): New macro, replacing all uses of 0x80 and/or SBC_MAX / 2
20324         when that is what is intended.
20325         (SBC_MAX): Define to UCHAR_MAX + 1, not 256.
20326         (__re_error_msgid, __re_error_msgid_idx): Remove decls; not needed.
20327         (MAX): New macro.
20328         (re_xmalloc, re_calloc, re_xrealloc, re_x2realloc): Remove.
20329         All uses changed back to re_malloc, etc.  It's now the caller's
20330         responsibility to check for overflow; all callers changed.
20331         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc, re_xnrealloc):
20332         (re_x2nrealloc): Remove.
20333         (free_state): Remove decl.
20334
20335         * lib/regexc.c (regexec, re_match, re_search, re_match_2, re_search_2):
20336         (re_set_registers, re_exec):
20337         Use K&R-style defn.
20338
20339         2006-01-31  Roland McGrath  <roland@redhat.com>
20340
20341         * lib/regcomp.c (calc_eclosure_iter): Remove dead variables.
20342         Reported by Mike Frysinger <vapier@gentoo.org>.
20343
20344         2006-01-15  Andreas Jaeger  <aj@suse.de>
20345
20346         [BZ #1950]
20347         * lib/regex_internal.c (re_string_reconstruct): Adjust for
20348         build_wcs_upper_buffer change.
20349         (build_wcs_upper_buffer): Change return type.
20350
20351         2005-12-10  Ulrich Drepper  <drepper@redhat.com>
20352
20353         * lib/regex_internal.h: Include <stdint.h> if available.
20354
20355         2005-12-06  Paolo Bonzini  <bonzini@gnu.org>
20356
20357         * lib/regex_internal.h (SIZE_MAX): Provide a default definition.
20358
20359         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
20360
20361         * lib/regcomp.c: Adjust for changed secondary hash function.
20362
20363         2005-09-30  Ulrich Drepper  <drepper@redhat.com>
20364
20365         * lib/regex.h: Pretty printing.
20366         Clean up namespace a bit.
20367
20368         2005-09-30  Jakub Jelinek  <jakub@redhat.com>
20369
20370         * lib/regexec.c (update_cur_sifted_state, check_arrival,
20371         check_arrival_add_next_nodes): Avoid using uninitialized variable.
20372
20373         2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
20374                     Ulrich Drepper  <drepper@redhat.com>
20375
20376         [BZ #1302]
20377         * lib/regex_internal.h (bitset_t): Renamed from bitset.  All uses
20378         changed.
20379         (bitset_word_t): Renamed from bitset_word.  All uses changed.
20380
20381         2005-09-22  Ulrich Drepper  <drepper@redhat.com>
20382
20383         [BZ #281]
20384         * lib/regex.h: Define RE_TRANSLATE_TYPE as unsigned char *.
20385         * lib/regcomp.c: Remove unnecessary uses of
20386         unsigned RE_TRANSLATE_TYPE.
20387         * lib/regex_internal.h: Likewise.
20388         * lib/regex_internal.c: Likewise.
20389         * lib/regexec.c: Likewise.
20390         Based on a patch by Stepan Kasal <kasal@ucw.cz>.
20391
20392         2005-09-07  Ulrich Drepper  <drepper@redhat.com>
20393
20394         * lib/regexec.c (find_recover_state): Remove unnecessary
20395         initialization.
20396         (transit_state_bkref): Make DFA a const pointer.
20397         (get_subexp): Likewise.
20398         (check_arrival): Likewise.
20399         (update_cur_sifted_state): Likewise.
20400         (re_search_internal): Likewise.
20401         (prune_impossible_nodes): Likewise.
20402         (acquire_init_state_context): Likewise.
20403         (proceed_next_node): Likewise.
20404         (set_regs): Likewise.
20405         (free_fail_stack_return): Likewise.
20406         (check_arrival_expand_ecl): Mark DFA parameter as const.
20407         (check_arrival_expand_ecl_sub): Likewise.
20408         (check_subexp_limits): Likewise.
20409         (sub_epsilon_src_nodes):  Likewise.
20410         (add_epsilon_src_nodes):  Likewise.
20411         (merge_state_array): Likewise.
20412         (update_regs): Likewise.
20413         (build_trtable): Likewise.
20414         (sift_states_backward): Mark MCTX parameter as const.
20415         (build_sifted_states): Likewise.
20416         (update_cur_sifted_state): Likewise.
20417         (sift_states_mkref): Likewise.
20418         (check_arrival_expand_ecl): Mark eclosure as const.
20419         (check_dst_limits_calc_pos_1): Likewise.
20420         * lib/regex_internal.h (re_match_context_t): Make dfa a const
20421         pointer.
20422
20423         2005-09-06  Ulrich Drepper  <drepper@redhat.com>
20424
20425         * lib/regexec.c (merge_state_with_log): Define dfa as const pointer.
20426         (transit_state_sb): Likewise.
20427         (transit_state_mb): Likewise.
20428         (sift_states_iter_mb): Likewise.
20429         (check_arrival_add_next_nodes): Likewise.
20430         (check_node_accept_bytes): Change first parameter to pointer-to-const.
20431         [_LIBC] (re_search_2_stub): Use mempcpy.
20432
20433         * lib/regex_internal.c (re_string_reconstruct): Avoid calling
20434         mbrtowc for very simple UTF-8 case.
20435
20436         * lib/regex_internal.c (re_acquire_state): Make DFA pointer arg
20437         a pointer-to-const.
20438         (re_acquire_state_context): Likewise.
20439         * lib/regex_internal.h: Adjust prototypes.
20440
20441         * lib/regex.c: Prevent using C++ compilers.
20442
20443         * lib/regex_internal.c (re_acquire_state): Minor code rearrangement.
20444         (re_acquire_state_context): Likewise.
20445
20446 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
20447
20448         * modules/regex (Depends-on): Add ssize_t.
20449
20450 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
20451
20452         * m4/regex.m4 (gl_REGEX): Check for new glibc interface to
20453         translation table.
20454
20455 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
20456
20457         * doc/gnulib-tool.texi (Modified imports): pathname -> file name.
20458
20459 2006-03-29  Mark D. Baushke  <mdb@gnu.org>
20460             Bruno Haible  <bruno@clisp.org>
20461
20462         * lib/stdint_.h: On OpenBSD, don't redefine types already included in
20463         <sys/types.h> and <inttypes.h>.
20464
20465 2006-03-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20466
20467         * m4/argz.m4 (gl_FUNC_ARGZ): If we define `error_t', also define
20468         `__error_t_defined', so argp.h will not typedef the former.
20469
20470 2006-03-25  Paul Eggert  <eggert@cs.ucla.edu>
20471
20472         * m4/regex.m4 (gl_REGEX): Don't insist on REG_SYNTAX_POSIX_EGREP,
20473         REG_SYNTAX_EMACS, and REG_IGNORE_CASE.  Settle for the traditional
20474         glibc names.  Even if glibc is changed to conform to POSIX, the
20475         traditional names will be available anyway, since regex depends on
20476         the extensions module.  Also, fix a longstanding typo in the
20477         implementation of Spencer ERE test #75 from grep 2.3.  Problems
20478         reported by Emanuele Giaquinta.  Also, change sense of cached
20479         variable, so that the message makes sense.
20480
20481 2006-03-24  Simon Josefsson  <jas@extundo.com>
20482
20483         * lib/base64.c: Fix problems reported by Eric Blake <ebb9@byu.net>,
20484         including some doc fixes.
20485         (base64_encode_alloc): Fix +1 bug on allocation failures.
20486
20487 2006-03-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20488
20489         * lib/base64.c (base64_encode): Do not read past end of array with
20490         unsanitized input on systems with CHAR_BIT > 8.
20491
20492 2006-03-24  Eric Blake  <ebb9@byu.net>
20493
20494         * lib/time_r.c (copy_string_result): Remove, as it is no longer used.
20495
20496 2006-03-22  Karl Berry  <karl@gnu.org>
20497
20498         * config/srclist.txt (*setenv.[ch]): get from coreutils.
20499         * config/srclistvars.sh (COREUTILS): new var.
20500
20501 2006-03-17  Jim Meyering  <jim@meyering.net>
20502
20503         * m4/regex.m4 (gl_REGEX): Fix typo in last change:
20504         s/_REGEX_WIDE_OFFSETS/_REGEX_LARGE_OFFSETS/.
20505
20506 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
20507
20508         * m4/regex.m4 (gl_REGEX): Don't check for off_t, since the code
20509         no longer needs it.  Instead, check that regoff_t is as least
20510         as wide as ptrdiff_t.
20511
20512         Don't define _REGEX_WIDE_OFFSETS unless using the included regex,
20513         so that our regex.h stays compatible with the installed regex.
20514         This is helpful for installers who configure --without-included-regex.
20515         Problem reported by Emanuele Giaquinta.
20516
20517 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
20518
20519         * lib/regex.h (regoff_t) [defined _REGEX_LARGE_OFFSETS]:
20520         Typedef to long int, not to off_, as POSIX will likely change
20521         in that direction.
20522
20523 2006-03-15  Eric Blake  <ebb9@byu.net>
20524
20525         * m4/dirfd.m4 (gl_FUNC_DIRFD): Use AC_REQUIRE for AC_HEADER_DIRENT.
20526
20527 2006-03-13  Sergey Poznyakoff  <gray@gnu.org.ua>
20528
20529         * lib/argp-help.c (validate_uparams): Fix typo
20530         * lib/argp-parse.c (argp_default_options): Consistently begin help
20531         messages with a lowercase letter.
20532
20533 2006-03-11  Paul Eggert  <eggert@cs.ucla.edu>
20534
20535         * lib/time_r.h (asctime_r, ctime_r): Remove.  These functions can
20536         overrun buffers and shouldn't be used (much as gets shouldn't be
20537         used).
20538         * lib/time_r.c (asctime_r, ctime_r): Likewise.
20539
20540 2006-03-08  Simon Josefsson  <jas@extundo.com>
20541
20542         * m4/gc-random.m4: Permit 'no' as variable values and fix warnings,
20543         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
20544
20545 2006-03-08  Simon Josefsson  <jas@extundo.com>
20546
20547         * m4/gc-random.m4: Call AC_CANONICAL_HOST and use $host_os instead of
20548         $target, suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
20549
20550 2006-03-08  Simon Josefsson  <jas@extundo.com>
20551
20552         * lib/gc-gnulib.c (randomize): Don't open files called 'no', they
20553         signal that configure disabled the device.
20554
20555 2006-03-08  Simon Josefsson  <jas@extundo.com>
20556
20557         * build-aux/maint.mk: Fix refresh-po, to handle no translated
20558         languages.
20559
20560 2006-03-07  Simon Josefsson  <jas@extundo.com>
20561
20562         * modules/getopt (Depends-on): Add unistd.
20563
20564         * modules/unistd: New file.
20565
20566 2006-03-07  Simon Josefsson  <jas@extundo.com>
20567
20568         * modules/gc-random: New file.
20569
20570 2006-03-07  Simon Josefsson  <jas@extundo.com>
20571
20572         * m4/unistd_h.m4: New file.
20573
20574 2006-03-07  Simon Josefsson  <jas@extundo.com>
20575
20576         * m4/readline.m4 (gl_FUNC_READLINE): Rewrite the cached part of the
20577         test to be side-effect free by storing the result in the cache
20578         variable gl_cv_lib_readline, and moving the assignment of
20579         LIBREADLINE and LTLIBREADLINE outside the COMMANDS-TO-SET-IT.
20580         From Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
20581
20582 2006-03-07  Simon Josefsson  <jas@extundo.com>
20583
20584         * m4/gc-random.m4: New file, mostly from gc.m4.  Warn instead of
20585         error on missing devices (the functions will return an error).
20586
20587         * m4/gc.m4: Move random stuff to gc-random.m4
20588
20589 2006-03-07  Simon Josefsson  <jas@extundo.com>
20590
20591         * lib/unistd_.h: New file.
20592
20593 2006-03-07  Simon Josefsson  <jas@extundo.com>
20594
20595         * lib/gc-libgcrypt.c, gc-gnulib.c: Use GC_USE_RANDOM.
20596
20597 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
20598
20599         * m4/unistd_h.m4 (gl_HEADER_UNISTD): Rename, to match modules file.
20600         Problem reported by Juan Manuel Guerrero.
20601
20602 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
20603
20604         * lib/c-stack.c: Include unistd.h unconditionally, since we now assume
20605         the unistd module.
20606         * lib/getlogin_r.c: Likewise.
20607         * lib/getlogin_r.h: Likewise.
20608         * lib/glob.c: Likewise.
20609         * lib/pagealign_alloc.c: Likewise.
20610         * lib/unistd_.h: Remove; no longer needed.
20611
20612 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
20613
20614         * MODULES.html.sh (Support for systems lacking POSIX:2001):
20615         Add unistd.
20616         * modules/c-stack (Depends-on): Add unistd.
20617         * modules/getlogin_r: Likewise.
20618         * modules/glob: Likewise.
20619         * modules/pagealign_alloc: Likewise.
20620         * modules/unistd (Files): Remove lib/unistd_.h.
20621         (EXTRA_DIST): Remove.
20622         (unistd.h): Create using 'echo' rather than 'cp', so that we don't
20623         need unistd_.h.
20624         (MOSTLYCLEANFILES): Remove unistd.h-t.
20625
20626 2006-03-03  Simon Josefsson  <jas@extundo.com>
20627
20628         * build-aux/maint.mk: Add several syntax checks from CoreUtils.
20629
20630 2006-03-03  Simon Josefsson  <jas@extundo.com>
20631
20632         * build-aux/maint.mk: Add refresh-po rule, based on ideas from
20633         libidn and bison.
20634
20635 2006-03-03  Simon Josefsson  <jas@extundo.com>
20636
20637         * build-aux/maint.mk: Add indent target.
20638
20639 2006-03-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de> (tiny change)
20640
20641         * m4/poll.m4 (gl_FUNC_POLL): If we deem poll(2) unacceptable, use
20642         our replacement poll.h in any case, to avoid a differing
20643         declaration from a system header.  Seen on AIX.
20644
20645 2006-03-01  Simon Josefsson  <jas@extundo.com>
20646
20647         * lib/readline.c: Fix typo, tiny patch from Stepan Kasal
20648         <kasal@ucw.cz>.
20649
20650 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
20651
20652         * modules/gettime (Depends-on): Add extensions module.
20653         * modules/nanosleep (Depends-on): Likewise.
20654         * modules/settime (Depends-on): Likewise.
20655
20656 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
20657
20658         * m4/clock_time.m4 (gl_CLOCK_TIME): Require gl_USE_SYSTEM_EXTENSIONS,
20659         not merely AC_GNU_SOURCE, for the benefit of Solaris 10 when compiled
20660         pedantically.
20661         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
20662         * m4/timespec.m4 (gl_TIMESPEC): Likewise.
20663
20664         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use "=" with "test",
20665         not "==".  Reported by Ralf Wildenhues.
20666
20667 2006-03-01  Karl Berry  <karl@gnu.org>
20668
20669         * doc/Copyright/request-*: new files, synced from gnuorg.
20670
20671 2006-03-01  Karl Berry  <karl@gnu.org>
20672
20673         * config/srclist.txt (Copyright/*): new entries.
20674
20675 2006-02-28  Simon Josefsson  <jas@extundo.com>
20676
20677         * lib/getopt.c: Protect #include of unistd.h, for MSVS.
20678
20679 2006-02-27  Simon Josefsson  <jas@extundo.com>
20680
20681         * lib/base64.h: Indent #define's.  From Jim Meyering
20682         <jim@meyering.net>.
20683
20684 2006-02-27  Jim Meyering  <jim@meyering.net>
20685
20686         Revert the change of 2006-02-24, so these files can continue
20687         to be sync'd from gettext.
20688         * lib/mkdtemp.c, setenv.c, unsetenv.c: *Un*-normalize inclusion
20689         of `config.h'.
20690
20691 2006-02-26  Paul Eggert  <eggert@cs.ucla.edu>
20692
20693         * modules/intprops: New file.
20694         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
20695         Add intprops.
20696         * modules/getloadavg (Files): Remove lib/intprops.h.
20697         (Depends-on): Add intprops.
20698         * modules/human: Likewise.
20699         * modules/inttostr: Likewise.
20700         * modules/openat: Likewise.
20701         * modules/sig2str: Likewise.
20702         * modules/userspec: Likewise.
20703         * modules/utimecmp: Likewise.
20704         * modules/xnanosleep: Likewise.
20705         * modules/xstrtol: Likewise.
20706
20707 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny changes)
20708
20709         * modules/xstrtod: Omit xstrtod.h, xstrtod.c; they're in LIB_SOURCES.
20710         * modules/lock-tests (TESTS): Use $(EXEEXT).
20711         * modules/tls-tests: Likewise.
20712         * modules/argp-tests: Likewise.
20713         (check_PROGRAMS): New var, replacing...
20714         (noinst_PROGRAMS, test_argp_SOURCES): Remove.
20715
20716 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20717
20718         * lib/mkdtemp.c, lib/setenv.c, lib/unsetenv.c: Normalize inclusion of
20719         `config.h'.
20720
20721 2006-02-24  Paul Eggert  <eggert@cs.ucla.edu>
20722
20723         * lib/glob.c: Say "invalid" rather than "illegal" in comments.
20724
20725 2006-02-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20726
20727         Sync from coreutils.
20728         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Require gl_FUNC_LCHMOD and
20729         gl_CHDIR_SAFER.
20730
20731 2006-02-22  Jim Meyering  <jim@meyering.net>
20732
20733         Sync from coreutils.
20734         * m4/chdir-safer.m4: New file.
20735
20736 2006-02-20  Paul Eggert  <eggert@cs.ucla.edu>
20737
20738         * lib/getcwd.c (AT_FDCWD): Work around a bug in Solaris 9 and 10, where
20739         AT_FDCWD exceeds INT_MAX.
20740         * lib/openat.h (AT_FDCWD): Likewise.
20741
20742 2006-02-17  Eric Blake  <address@hidden>
20743
20744         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Fix caching error.
20745
20746 2006-02-16  Simon Josefsson  <jas@extundo.com>
20747
20748         * modules/getaddrinfo (Depends-on): Add sys_socket.
20749
20750 2006-02-15  Simon Josefsson  <jas@extundo.com>
20751
20752         * build-aux/maint.mk: Add dsyntax-check rule.
20753
20754 2006-02-15  Eric Blake  <ebb9@byu.net>
20755
20756         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Don't attempt using
20757         winsock2.h or ws2tcpip.h when sys/socket.h is present. Fixes
20758         'present but cannot compile' warnings on cygwin.
20759         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Use gl_HEADER_SYS_SOCKET.  Don't
20760         use ws2tcpip.h if sys/socket.h works.
20761         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Use gl_HEADER_SYS_SOCKET.
20762         (gl_GETADDRINFO): Don't use ws2tcpip.h when sys/socket.h is present.
20763
20764 2006-02-14  Simon Josefsson  <jas@extundo.com>
20765
20766         * modules/maintainer-makefile (Files): Rename.
20767
20768         * build-aux/GNUmakefile: Rename Makefile.maint to maint.mk
20769         and (the local) Makefile.cfg to maint-cfg.mk.
20770
20771         * build-aux/Makefile.maint, build-aux/maint.mk: Renamed the former
20772         to the latter.
20773
20774         * modules/maintainer-makefile: New module.
20775
20776         * build-aux/Makefile.maint: New file, from GNU CoreUtils, although
20777         severaly stripped to make it possible to build it up from scratch
20778         with reliable tests.
20779
20780         * build-aux/GNUmakefile: New file, from GNU CoreUtils with some
20781         fixes to permit overriding the default actions when configure and
20782         makefile are not available.
20783
20784 2006-02-14  Paul Eggert  <eggert@cs.ucla.edu>
20785
20786         Sync from coreutils.
20787         * modules/lstat (Depends-on): Don't depend on xalloc.
20788         (License): Change from GPL to LGPL, since this is now simply a
20789         replacement for a libc function.
20790
20791 2006-02-14  Jim Meyering  <jim@meyering.net>
20792
20793         Sync from coreutils.
20794
20795         Eliminate the unwelcome (albeit unlikely) possibility of xmalloc
20796         failure on deficient systems, and simplify gnulib lgpl dependencies.
20797         * lib/lstat.c (rpl_lstat): Rewrite to use stat() in place of the
20798         xmalloc/lstat combination.  Based on a patch from Bruno Haible.
20799
20800         * lib/xalloc-die.c: Remove unused definition of N_.
20801
20802 2006-02-14  Jim Meyering  <jim@meyering.net>
20803
20804         Sync from coreutils.
20805         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Invoke
20806         AC_CHECK_FUNCS(getmntent) unconditionally so that tests of
20807         $ac_cv_func_getmntent (e.g., in gl_LIST_MOUNTED_FILE_SYSTEMS) need not
20808         double-quote uses of that variable, to accommodate the rare case in
20809         which getmntent is available in none of the libraries checked.  This
20810         happens at least on FreeBSD 5.0.
20811
20812 2006-02-13  Simon Josefsson  <jas@extundo.com>
20813
20814         * gnulib-tool (Usage): Fix --import, from
20815         karl@freefriends.org (Karl Berry).
20816
20817 2006-02-13  Sergey Poznyakoff  <gray@gnu.org.ua>
20818
20819         * lib/argp-fmtstream.c: Restore another bugfix lost on 2005-12-12
20820
20821 2006-02-07  Sergey Poznyakoff  <gray@gnu.org.ua>
20822
20823         * lib/argp-namefrob.h: Restore changes accidentally lost during the
20824         "autoupdate" on 2005-12-12.
20825
20826 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
20827
20828         * modules/closeout (Depends-on): Remove atexit.
20829
20830 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
20831
20832         * lib/closeout.c (close_stdout): Don't assume 'bool' converts nonzero
20833         ints to 0 or 1, as this isn't true for the stdbool.h substitute.
20834
20835 2006-02-05  Paul Eggert  <eggert@cs.ucla.edu>
20836
20837         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Don't #define
20838         __EXTENSIONS__ if this causes compilation to fail.  Problem
20839         reported by Nelson H. F. Beebe with Solaris 10 and Sun C 5.7
20840         c89 -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED.
20841
20842 2006-01-27  Paul Eggert  <eggert@cs.ucla.edu>
20843
20844         * lib/fnmatch.c (L_): Renamed from L, to work around a bug in
20845         Mac OS X 10.3.9 with GCC 3 reported by Claudio Fontana in
20846         <http://lists.gnu.org/archive/html/bug-gnulib/2006-01/msg00074.html>.
20847         All uses changed.
20848
20849 2006-01-26  Simon Josefsson  <jas@extundo.com>
20850
20851         * lib/socket_.h: Set WINVER to 0x0501, to make sure getaddrinfo
20852         prototype is visible on mingw32.
20853
20854         * lib/getaddrinfo.h: Define EAI_ADDRFAMILY and EAI_SYSTEM if not set,
20855         for mingw32.
20856
20857         * lib/gai_strerror.c, getaddrinfo.h: Protect netdb.h #include (for
20858         mingw32).
20859
20860 2006-01-26  Paul Eggert  <eggert@cs.ucla.edu>
20861
20862         * lib/fts.c (diropen): Open with O_NOCTTY | O_NONBLOCK too.  Don't
20863         attempt to open for write; this always fails, at least on POSIX
20864         hosts.  This reinstates the 2006-01-09 change, which was
20865         inadvertently removed.
20866
20867 2006-01-26  Bruno Haible  <bruno@clisp.org>
20868
20869         * gnulib-tool (func_import): Use "trap 'exit $?' instead of "trap :".
20870         Reported by Paul Eggert.
20871
20872 2006-01-26  Bruno Haible  <bruno@clisp.org>
20873             Paul Eggert  <eggert@cs.ucla.edu>
20874
20875         * lib/stdbool_.h (_Bool)
20876         [(! (defined __cplusplus || defined __BEOS__)
20877           && !defined __GNUC__
20878           && !(defined __HP_cc || defined __xlc__
20879                || (defined __SUNPRO_C && (__SUNPRO_C < 0x550 || __STDC__ == 1))
20880                || defined __sgi))]:
20881         #define to signed char in these cases too; this simplifies
20882         the code (so that we don't have to worry about HP-UX, AIX, SunPRO,
20883         etc., separately) and makes it more conservative.
20884
20885 2006-01-25  Simon Josefsson  <jas@extundo.com>
20886
20887         * m4/getaddrinfo.m4: Look for getaddrinfo inside ws2tcip.h and
20888         -lws2_32.  Protect sys/socket.h and netdb.h #include's.  Include
20889         ws2tcpip.h with WINVER=0x0501.  All for mingw32.
20890
20891 2006-01-25  Sergey Poznyakoff  <gray@gnu.org.ua>
20892
20893         * lib/argp-namefrob.h: Bugfix. Remove stray #
20894
20895 2006-01-25  Paul Eggert  <eggert@cs.ucla.edu>
20896
20897         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for xlc bug if __GCC__ too,
20898         so that we test the test.
20899         Check for yet another HP-UX cc bug involving *bool |= bool.
20900
20901 2006-01-25  Karl Berry  <karl@gnu.org>
20902
20903         * config/srclist.txt (vasnprintf.c): sync lost.
20904
20905 2006-01-25  Jim Meyering  <jim@meyering.net>
20906
20907         Sync from the stable (b5) branch of coreutils:
20908
20909         * lib/fts.c (fts_children): Don't let close() clobber errno from
20910         failed fchdir().
20911
20912         * lib/fts.c (fts_stat): When following a symlink-to-directory,
20913         don't necessarily interpret stat-fails+lstat-succeeds as indicating
20914         a dangling symlink.  That can also happen at least for ELOOP.
20915         The fix: return FTS_SLNONE only when the stat errno is ENOENT.
20916         FYI, this bug predates the inclusion of fts.c in coreutils.
20917
20918         * lib/fts.c (fts_open): Put new maxarglen declaration and uses
20919         in their own block, so pre-c99 compilers don't object.
20920
20921         Avoid the double-free (first in fts_read, second in fts_close) that
20922         would occur when an `active' directory is made inaccessible (e.g.,
20923         via chmod a-x) during a traversal.
20924         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
20925         before returning.  Reproduce this failure by
20926         mkdir -p a/b; cd a; chmod a-x . b
20927         Reported by Stavros Passas.
20928
20929 2006-01-25  Jim Meyering  <jim@meyering.net>
20930
20931         * lib/fileblocks.c: Remove more useless parentheses.
20932         * lib/readutmp.h: Likewise.
20933
20934 2006-01-25  Bruno Haible  <bruno@clisp.org>
20935
20936         * lib/stdbool_.h (_Bool) [IRIX cc]: Define as 'signed char', to avoid
20937         warnings.
20938         Reported by Paul Eggert.
20939
20940 2006-01-25  Bruno Haible  <bruno@clisp.org>
20941
20942         * gnulib-tool (func_import): Use "trap :" instead of "trap -" to get
20943         rid of a trap command. For Solaris sh.
20944         Reported by Mark D. Baushke <mdb@gnu.org>.
20945
20946 2006-01-24  Simon Josefsson  <jas@extundo.com>
20947
20948         * lib/socket_.h (SHUT_WR, SHUT_RDWR): Don't hardcode, suggested by
20949         Bruno.
20950
20951 2006-01-24  Karl Berry  <karl@gnu.org>
20952
20953         * config/srclist.txt (argp-namefrob.h): sync lost.
20954
20955 2006-01-24  Jim Meyering  <jim@meyering.net>
20956
20957         * modules/openat (Files): Add lib/intprops.h.
20958         From Mark D. Baushke.
20959
20960 2006-01-24  Jim Meyering  <jim@meyering.net>
20961
20962         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBSOURCES([intprops.h]).
20963         Reported by Mark D. Baushke.
20964
20965 2006-01-24  Jim Meyering  <jim@meyering.net>
20966
20967         * lib/socket_.h: Remove useless parentheses in uses of cpp `defined'.
20968
20969 2006-01-24  Bruno Haible  <bruno@clisp.org>
20970
20971         * modules/strnlen (Maintainer): Change from glibc to all.
20972
20973 2006-01-24  Bruno Haible  <bruno@clisp.org>
20974
20975         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for IBM and HP-UX bugs.
20976         Patch by Paul Eggert.
20977
20978 2006-01-24  Bruno Haible  <bruno@clisp.org>
20979
20980         * lib/stdbool_.h (_Bool) [__cplusplus]: Don't define if the compiler
20981         already has it.
20982         Report and patch by Albert Chin-A-Young  <china@thewrittenword.com> on
20983         2005-11-26.
20984
20985         * lib/stdbool_.h (_Bool) [HP-UX cc, AIX cc,xlc]: Define as
20986         'signed char' to avoid problems with the built-in _Bool type.
20987         Reported by Paul Eggert on 2005-11-26.
20988
20989 2006-01-24  Bruno Haible  <bruno@clisp.org>
20990
20991         * gnulib-tool (func_import): Avoid constructing complicated sed
20992         expressions inside backquote.
20993         Report and solution by Mark D. Baushke <mdb@gnu.org>.
20994
20995 2006-01-23  Ulrich Drepper  <drepper@redhat.com>
20996
20997         These changes imported from libc.
20998         * lib/getopt.c: Use __fxprintf instead of inline stream orientation
20999         test and two separate function calls.
21000         * lib/strndup.c (__strndup): Add libc_hidden_def.
21001
21002 2006-01-23  Simon Josefsson  <jas@extundo.com>
21003
21004         * modules/lock-tests: Use check_PROGRAMS instead of noinst_PROGRAMS.
21005         Remove the test_*_SOURCES variable: automake infers it by default.
21006         * modules/tls-tests: Likewise.
21007
21008 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
21009
21010         Work around porting bugs reported by Dieter in
21011         <http://lists.gnu.org/archive/html/bug-bison/2006-01/msg00049.html>.
21012         * lib/getopt.c (_NOPROTO): Remove; no longer needed.
21013         Include <stdlib.h> and <unistd.h> in all environments; it's safe now.
21014         Include "getopt.h" first, to check interface.
21015         (getenv): Declare only if defined HAVE_DECL_GETENV &&
21016         !HAVE_DECL_GETENV.
21017         * lib/strndup.c [!_LIBC]: Include "strndup.h" to get prototype.
21018         (__strndup): Revert to K&R-style function dfns, the glibc style.
21019         * lib/strnlen.c: Don't claim it's taken from glibc; it's not.
21020         (strnlen, __strnlen): Remove #defines and #undefs; not needed.
21021         Include strnlen.h first, to get prototype properly.
21022         (strnlen): Renamed from __strnlen.
21023         Remove weak alias.
21024
21025 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
21026
21027         * m4/getopt.m4 (gl_PREREQ_GETOPT): Check for getenv decl.
21028
21029 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
21030
21031         * config/srclist.txt: Adjust to reflect glibc reorganization.
21032         This affects only comments.
21033
21034 2006-01-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
21035
21036          * gnulib-tool, build-aux/csharpcomp.sh.in: Do not pass `-q' to mktemp.
21037          Reported by Bruce Korb <bkorb@gnu.org>.
21038
21039 2006-01-22  Paul Eggert  <eggert@cs.ucla.edu>
21040
21041         * lib/quotearg.c (quotearg_buffer_restyled): Add "default: break;"
21042         to pacify gcc -Wswitch-default.
21043
21044 2006-01-22  Bruno Haible  <bruno@clisp.org>
21045
21046         * lib/vasnprintf.c (VASNPRINTF): In the computation of the size of the
21047         temporary buffer for sprintf, take into account the precision also
21048         for 'd', 'i', 'u', 'o', 'x', 'X'.
21049
21050 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
21051
21052         * modules/argp-tests: New module
21053         * tests/test-argp.c: New file
21054         * tests/test-argp-2.sh: New file
21055
21056 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
21057
21058         * lib/argp-help.c (usage_long_opt): Do not print DOC options.
21059         (__argp_base_name): Removed
21060         * lib/argp-namefrob.h (__argp_basename): Removed definition. Was a
21061         typo.
21062         (__argp_base_name): Provide macro definition or extern declaration
21063         depending on the configuration
21064
21065 2006-01-20  Simon Josefsson  <jas@extundo.com>
21066
21067         * modules/inet_ntop (Depends-on): Depend on sys_socket.
21068
21069 2006-01-20  Simon Josefsson  <jas@extundo.com>
21070
21071         * lib/inet_ntop.h: Unconditionally include sys/socket.h.
21072
21073 2006-01-20  Paul Eggert  <eggert@cs.ucla.edu>
21074
21075         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Use -Wl,-z,ignore
21076         rather than -Xlinker -z -Xlinker ignore, as it's more portable.
21077         Suggested by Bruno Haible.
21078
21079 2006-01-20  Karl Berry  <karl@gnu.org>
21080
21081         * config/srclist.txt (argp-fmtstream.h, localcharset.c): comment out
21082         until changes propagate, I guess.
21083
21084 2006-01-19  Simon Josefsson  <jas@extundo.com>
21085
21086         * m4/socklen.m4: Look in ws2tcpip.h too, for mingw32.
21087
21088 2006-01-19  Simon Josefsson  <jas@extundo.com>
21089
21090         * lib/socket_.h: Map SHUT_RD, SHUT_WR, SHUT_RDWR correctly.
21091
21092 2006-01-19  Simon Josefsson  <jas@extundo.com>
21093
21094         * gnulib-tool: Set check_PROGRAMS.
21095
21096         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
21097         modules/des-tests, modules/gc-arcfour-tests,
21098         modules/gc-arctwo-tests, modules/gc-des-tests,
21099         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
21100         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
21101         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
21102         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
21103         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
21104         modules/md5-tests, modules/readline, modules/rijndael-tests: Use
21105         check_PROGRAMS instead of noinst_PROGRAMS to be able to remove
21106         test_*_SOURCES.
21107
21108 2006-01-18  Simon Josefsson  <jas@extundo.com>
21109
21110         * modules/socklen (Depends-on): Depend on sys_socket.
21111
21112 2006-01-18  Simon Josefsson  <jas@extundo.com>
21113
21114         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
21115         modules/des-tests, modules/gc-arcfour-tests,
21116         modules/gc-arctwo-tests, modules/gc-des-tests,
21117         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
21118         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
21119         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
21120         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
21121         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
21122         modules/md5-tests, modules/readline, modules/rijndael-tests: Add
21123         $(EXEEXT) to automake TESTS variable, for mingw32.
21124
21125 2006-01-17  Simon Josefsson  <jas@extundo.com>
21126
21127         * modules/socklen (Include): Need sys/socket.h.
21128
21129 2006-01-17  Bruno Haible  <bruno@clisp.org>
21130
21131         * modules/ssize_t (Include): Add <sys/types.h>.
21132
21133 2006-01-16  Paul Eggert  <eggert@cs.ucla.edu>
21134
21135         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Don't use ldd, as
21136         it's not portable and it doesn't work with cross-compiles.
21137         Problem reported by Bruno Haible.  Fix missing-$ typo in
21138         'test "gl_cv_ignore_unused_libraries" ...' that prevented
21139         -zignore from being used with Sun's C compiler.
21140
21141 2006-01-12  Simon Josefsson  <jas@extundo.com>
21142
21143         * lib/base64.c: Fix warning, reported by Bruno Haible
21144         <bruno@clisp.org> and patch by Paul Eggert <eggert@CS.UCLA.EDU>.
21145
21146 2006-01-12  Bruno Haible  <bruno@clisp.org>
21147
21148         * modules/ldd: New file.
21149         * build-aux/ldd.sh.in: New file.
21150         * MODULES.html.sh (Support for building libraries and executables): Add
21151         ldd.
21152
21153 2006-01-12  Bruno Haible  <bruno@clisp.org>
21154
21155         * m4/ldd.m4: New file.
21156
21157 2006-01-12  Bruno Haible  <bruno@clisp.org>
21158
21159         * gnulib-tool (func_import, func_create_testdir): Don't go into an
21160         endless loop while replacing $auxdir with build-aux.
21161
21162 2006-01-11  Simon Josefsson  <jas@extundo.com>
21163
21164         * lib/stdint_.h (SIZE_MAX): Add missing (.
21165
21166 2006-01-11  Paul Eggert  <eggert@cs.ucla.edu>
21167
21168         Sync from coreutils.
21169         * lib/md5.c: Fix commentary typos.
21170         (alignof, UNALIGNED_P): No need for a GCC-specific version.
21171         * lib/md5.h (__attribute__): Remove; unused.
21172         * lib/sha1.c: Fix commentary to match md5 better.
21173         * lib/sha1.h (struct sha1_ctx): Use a word buffer, not a byte buffer,
21174         so that we don't need to worry about alignment.  All uses changed.
21175         This merges the 2005-10-28 md5 change into sha1.
21176
21177 2006-01-11  Jim Meyering  <jim@meyering.net>
21178
21179         Sync from coreutils.
21180         * lib/md5.c (OP): Fix spacing.
21181
21182 2006-01-11  Bruno Haible  <bruno@clisp.org>
21183
21184         Ensure automatic ordering between gl_LOCK and gl_ARGP.
21185         * m4/lock.m4 (gl_LOCK_BODY): Renamed from gl_LOCK.
21186         (gl_LOCK): New macro, requiring gl_LOCK_BODY.
21187
21188 2006-01-11  Bruno Haible  <bruno@clisp.org>
21189
21190         Ensure automatic ordering between gl_LOCK and gl_ARGP.
21191         * gnulib-tool (func_import, func_create_testdir): Put gl_LOCK into
21192         the "early" section as well.
21193
21194 2006-01-11  Bruno Haible  <bruno@clisp.org>
21195
21196         Avoid "ar: no archive members specified" error on MacOS X.
21197         * gnulib-tool (func_modules_add_dummy): New function.
21198         (func_import, func_create_testdir): Invoke it.
21199
21200 2006-01-11  Bruno Haible  <bruno@clisp.org>
21201
21202         * gnulib-tool (func_import, func_create_testdir): Replace build-aux
21203         with $auxdir in AC_CONFIG_FILES statements.
21204
21205 2006-01-11  Bruno Haible  <bruno@clisp.org>
21206
21207         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
21208         Initialize also noinst_HEADERS to empty.
21209
21210 2006-01-11  Bruno Haible  <bruno@clisp.org>
21211
21212         * gnulib-tool (AUTOMAKEPATH, AUTOCONF, ACLOCAL, AUTOMAKE): New
21213         variables.
21214         (func_create_megatestdir): Call aclocal, autoconf, automake here, not
21215         autoreconf.
21216
21217 2006-01-11  Bruno Haible  <bruno@clisp.org>
21218
21219         * gnulib-tool (AUTOCONF, ACLOCAL, AUTOMAKE, AUTORECONF): Make
21220         overridable by the user.
21221         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
21222
21223 2006-01-10  Simon Josefsson  <jas@extundo.com>
21224
21225         * modules/sys_socket: New file.
21226
21227 2006-01-10  Simon Josefsson  <jas@extundo.com>
21228
21229         * m4/sys_socket_h.m4: New file.
21230
21231 2006-01-10  Simon Josefsson  <jas@extundo.com>
21232
21233         * lib/socket_.h: New file.
21234
21235 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
21236
21237         * modules/readutmp (Maintainer): Add myself.
21238
21239 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
21240
21241         * m4/memcoll.m4 (gl_MEMCOLL): Don't require AC_FUNC_MEMCMP, undoing
21242         the 2002-12-31 change.  Problem and fix reported by Bruno Haible.
21243         People who are still concerned with buggy memcmp implementations
21244         can invoke gl_FUNC_MEMCMP themselves.
21245
21246 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
21247
21248         * lib/regex_internal.h (BITSET_WORD_BITS):
21249         Work around a bug in 64-bit PGC (before version 6.1-2), where the
21250         preprocessor mishandles large unsigned values as if they were signed.
21251         Problem reported by Claudio Fontana in
21252         <http://lists.gnu.org/archive/html/bug-gnulib/2005-12/msg00061.html>.
21253
21254 2006-01-10  Jim Meyering  <jim@meyering.net>
21255
21256         Avoid the double-free (first in fts_read, second in fts_close) that
21257         would occur when an `active' directory is made inaccessible (e.g.,
21258         via chmod a-x) during a traversal.
21259         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
21260         before returning.  Reproduce this failure by
21261         mkdir -p a/b; cd a; chmod a-x . b
21262         Reported by Stavros Passas.
21263
21264         Sync from coreutils.
21265         * lib/sha1.c: Tweak grammar in a comment.
21266
21267 2006-01-10  Jim Meyering  <jim@meyering.net>
21268
21269         * m4/fpending.m4: Also include <stdio.h>, for Dragonfly.
21270         Patch by Joerg Sonnenberger.
21271
21272 2006-01-10  Bruno Haible  <bruno@clisp.org>
21273
21274         * modules/readutmp: Depend on module free.
21275         * modules/strtok_r: Depend on module restrict.
21276
21277 2006-01-10  Bruno Haible  <bruno@clisp.org>
21278
21279         * modules/gettext (configure.ac): Add an invocation of
21280         AM_GNU_GETTEXT_VERSION. Needed since autoreconf is used by gnulib-tool.
21281
21282 2006-01-10  Bruno Haible  <bruno@clisp.org>
21283
21284         * m4/localcharset.m4 (gl_LOCALCHARSET): Also test for getc_unlocked.
21285         Reported by Werner Lemberg <wl@gnu.org>.
21286
21287 2006-01-10  Bruno Haible  <bruno@clisp.org>
21288
21289         * lib/localcharset.c: Update from GNU gettext.
21290
21291 2006-01-10  Bruno Haible  <bruno@clisp.org>
21292
21293         * lib/argp.h (__const): Remove macro. Use const instead.
21294         * lib/argp-fmtstream.h (__const): Likewise.
21295         * lib/glob_.h (__const): Remove macro.
21296         * lib/glob-libc.h: Use const instead of __const.
21297
21298 2006-01-10  Bruno Haible  <bruno@clisp.org>
21299
21300         * gnulib-tool (func_emit_tests_Makefile_am): Emit an empty SUBDIR
21301         variable.
21302         Needed to avoid an automake error regarding the 'gettext' module.
21303
21304 2006-01-09  Simon Josefsson  <jas@extundo.com>
21305
21306         * modules/inet_ntop (Depends-on): Add restrict.
21307
21308 2006-01-09  Simon Josefsson  <jas@extundo.com>
21309
21310         * modules/gc-rijndael-tests (License): Put under LGPL.
21311
21312         * modules/gc-des-tests (License): Likewise.
21313
21314         * modules/gc-arcfour-tests (License): Likewise.
21315
21316         * modules/gc-arctwo-tests (License): Likewise.
21317
21318         * modules/gc-pbkdf2-sha1-tests (License): Likewise.
21319
21320         * modules/gc-hmac-sha1-tests (Files): Likewise.
21321
21322         * modules/gc-hmac-md5-tests (License): Likewise.
21323
21324         * modules/gc-sha1-tests (License): Likewise.
21325
21326         * modules/gc-md5-tests (License): Likewise.
21327
21328         * modules/gc-md4-tests (License): Likewise.
21329
21330         * modules/gc-md2-tests (License): Likewise.
21331
21332         * modules/gc-tests (License): Likewise.
21333
21334         * modules/des-tests (License): Likewise.
21335
21336         * modules/md4-tests (License): Likewise.
21337
21338         * modules/md2-tests (License): Likewise.
21339
21340 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
21341
21342         Sync from coreutils:
21343
21344         * MODULES.html.sh (build_lib): New section, with new lib-ignore module.
21345         * modules/lib-ignore: New file.
21346         * modules/mkdir-p (Files): Add chdir-safer.c, chdir-safer.h, lchmod.h,
21347         chdir-safer.m4, lchmod.m4.
21348         * modules/openat: Add mkdirat.c, openat-priv.h.
21349
21350 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
21351
21352         Sync from coreutils.
21353         * m4/lib-ignore.m4: New file.
21354         * m4/lchmod.m4: New file.
21355
21356 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
21357
21358         Sync from coreutils.
21359         * lib/chdir-long.c (cdb_free): Don't bother trying to open directory
21360         for write access: POSIX says that must fail.
21361         * lib/fts.c (diropen): Likewise.
21362         * lib/save-cwd.c (save_cwd): Likewise.
21363         * lib/chdir-long.c (cdb_free): Open with O_NOCTTY | O_NONBLOCK as
21364         well, for minor improvements on hosts that lack O_DIRECTORY.
21365         * lib/chown.c (rpl_chown) [CHOWN_MODIFIES_SYMLINK]:
21366         Don't try O_WRONLY unless O_RDONLY failed wth EACCES.
21367         Fall back on chown if open failed with EACCES.
21368
21369         * lib/gettime.c (gettime) [!defined OK_TO_USE_1S_CLOCK]:
21370         Report an error at compile-time if only a 1-second nominal clock
21371         resolution is found.
21372
21373         * lib/lchmod.h: New file.
21374         * lib/mkdir-p.c: Include lchmod.h, lchown.h.
21375         (make_dir_parents): Use lchown rather than chown, and
21376         lchmod rather than chmod.
21377
21378         * lib/mountlist.c (ME_DUMMY): "none" and "proc" file systems are
21379         dummies too.  Problem with "none" reported by Bob Proulx.  Problem with
21380         "proc" reported by n0dalus.
21381
21382         * lib/mountlist.c: Include <limits.h>.
21383         (dev_from_mount_options)
21384         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]:
21385         New function.  It no longer assumes "dev=" has the System V meaning
21386         on Linux (since it doesn't).  It also parses "dev=" more carefully.
21387         (read_file_system_list)
21388         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]: Use it.
21389         MOUNTED_GETMNTENT2 is new here; the code didn't used to look for
21390         dev= in that case.
21391
21392         * lib/posixtm.h (PDS_PRE_2000): New macro.
21393         * lib/posixtm.c (year): Arg is now syntax_bits rather than
21394         allow_century.  All usages changed.  Reject dates outside the range
21395         1969-1999 if PDS_PRE_2000 is used.
21396
21397 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
21398
21399         Sync from coreutils.
21400         * doc/getdate.texi (General date syntax): Invalid dates are rejected.
21401         (Time of day items): Mention the possibility of leap seconds.
21402         Problem reported by Dr. David Alan Gilbert.
21403
21404 2006-01-09  Jim Meyering  <jim@meyering.net>
21405
21406         Sync from coreutils.
21407
21408         * lib/version-etc.c (COPYRIGHT_YEAR): Update to 2006.
21409
21410         * lib/chdir-safer.h, lib/chdir-safer.c: New files.
21411
21412         * lib/modechange.c (mode_compile): Reject an invalid mode string
21413         that starts with an octal digit.  From Andreas Gruenbacher.
21414
21415         * lib/openat.c: Include "fcntl--.h" and "unistd--.h", to map open
21416         and dup to open_safer and dup_safer, respectively.
21417         (openat_permissive): Fix typo in comment.
21418
21419         * lib/openat.c: Don't include <stdlib.h>, <unistd.h>, <fcntl.h>,
21420         "gettext.h"; either no longer needed or are guaranteed by openat.h.
21421         (_): Remove; no longer needed.
21422         (openat): Renamed from rpl_openat; no need for rpl_openat
21423         since openat.h renames openat for us.
21424         Replace most of the body with a call to openat_permissive,
21425         to avoid duplicate code.
21426         Port to (probably hypothetical) environments were mode_t is
21427         wider than int.
21428         (openat_permissive): Require mode arg, so that we can check
21429         types better.  Put it just after flags.  Change cwd failure
21430         indicator from pointer-to-bool to pointer-to-errno-value.
21431         All callers changed.
21432         Invoke openat_save_fail and/or openat_restore_fail if
21433         cwd_errno is null, so that openat can call us.
21434         (openat_permissive, fdopendir, fstatat, unlinkat):
21435         Simplify errno handling to avoid some duplicate code,
21436         as it's OK to set errno on success.
21437         * lib/openat.h: Revamp code so that function macros depend on
21438         __OPENAT_PREFIX only, not also on AT_FDCWD.
21439         (openat_ro): Remove.  Caller changed to use openat_permissive.
21440         (openat_permissive): Now a macro, if not a function.
21441         (openat_restore_fail, openat_save_fail): Now always functions,
21442         since mkdirat needs them even if __OPENAT_PREFIX is defined.
21443
21444         * lib/openat-priv.h: New file, defining macros used by mkdirat.c
21445         and openat.c.
21446         * lib/mkdirat.c: Include openat-priv.h.
21447         Remove definitions of macros defined therein.
21448         * lib/openat.c: Likewise.
21449
21450         * lib/mkdirat.c (mkdirat): New file and function.
21451         * lib/openat.h (mkdirat): Declare.
21452
21453         * lib/openat.c (fdopendir): Don't change errno when returning non-NULL.
21454
21455         * lib/openat.h (openat_permissive): Declare.
21456         (openat_ro): Define.
21457
21458         * lib/openat.c (EXPECTED_ERRNO): New macro.
21459         (openat_permissive): New function -- used in remove.c rewrite.
21460         (all functions): Set errno just before returning, only if there
21461         was an actual failure.
21462         Use EXPECTED_ERRNO rather than comparing against only ENOTDIR.
21463
21464         Emulate openat-family functions using Linux's procfs, if possible.
21465         Idea and some code based on Ulrich Drepper's glibc changes.
21466
21467         * lib/openat.c: (BUILD_PROC_NAME): New macro.
21468         Include <stdio.h>, <string.h>, "alloca.h" and "intprops.h".
21469         (rpl_openat): Emulate by trying to open /proc/self/fd/%d/%s,
21470         before falling back on save_cwd and restore_cwd.
21471         (fdopendir, fstatat, unlinkat): Likewise.
21472
21473         * lib/openat.c (fstatat, unlinkat): Perform the syscall directly,
21474         skipping the save_cwd...restore_cwd overhead, if FILE is absolute.
21475
21476         * lib/openat.c (rpl_openat): Use the promoted type (int), not mode_t,
21477         as second argument to va_arg.  Otherwise, some versions of gcc
21478         warn that `if this code is reached, the program will abort'.
21479
21480 2006-01-09  Jim Meyering  <jim@meyering.net>
21481
21482         Sync from coreutils.
21483         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile mkdirat.c.
21484         Require openat-priv.h.
21485
21486 2006-01-09  Bruno Haible  <bruno@clisp.org>
21487
21488         * modules/strnlen (Include): Use strnlen.h.
21489
21490 2006-01-09  Bruno Haible  <bruno@clisp.org>
21491
21492         * m4/stdint.m4 (gl_STDINT_H): Also test for <sys/bitypes.h>.
21493
21494 2006-01-09  Bruno Haible  <bruno@clisp.org>
21495
21496         * lib/sysexit_.h (EX_OK): New macro.
21497         Suggested by Martin Lambers <marlam@marlam.de>.
21498
21499 2006-01-09  Bruno Haible  <bruno@clisp.org>
21500
21501         * lib/stdint_.h: On Linux libc4 and libc5, include <sys/bitypes.h> and
21502         don't define _STDINT_H_NEED_SIGNED_INT_TYPES.
21503
21504 2006-01-09  Bruno Haible  <bruno@clisp.org>
21505
21506         * lib/stdint_.h (SIZE_MAX): Write the value without involving negative
21507         numbers.
21508
21509 2006-01-09  Bruno Haible  <bruno@clisp.org>
21510
21511         * lib/javacomp.sh.in: Move to ../build-aux/javacomp.sh.in.
21512         * lib/javaexec.sh.in: Move to ../build-aux/javaexec.sh.in.
21513         * lib/csharpcomp.sh.in: Move to ../build-aux/csharpcomp.sh.in.
21514         * lib/csharpexec.sh.in: Move to ../build-aux/csharpexec.sh.in.
21515
21516 2006-01-09  Bruno Haible  <bruno@clisp.org>
21517
21518         * build-aux/javacomp.sh.in: New file, moved from lib/.
21519         * modules/javacomp-script (Files): Update.
21520         (configure.ac): Add AC_CONFIG_FILES invocation.
21521         (EXTRA_DIST): Remove variable.
21522
21523         * build-aux/javaexec.sh.in: New file, moved from lib/.
21524         * modules/javaexec (Files): Update.
21525         (configure.ac): Add AC_CONFIG_FILES invocation.
21526         (EXTRA_DIST): Remove javaexec.sh.in.
21527
21528         * build-aux/csharpcomp.sh.in: New file, moved from lib/.
21529         * modules/csharpcomp-script (Files): Update.
21530         (configure.ac): Add AC_CONFIG_FILES invocation.
21531         (EXTRA_DIST): Remove variable.
21532
21533         * build-aux/csharpexec.sh.in: New file, moved from lib/.
21534         * modules/csharpexec (Files): Update.
21535         (configure.ac): Add AC_CONFIG_FILES invocation.
21536         (EXTRA_DIST): Remove csharpexec.sh.in.
21537
21538 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
21539
21540         Sync from coreutils.
21541
21542         Add POSIX ACL support
21543         * lib/acl.h (copy_acl, set_acl): Add declarations.
21544         * lib/acl.c (acl_entries): Add fallback implementation for POSIX ACL
21545         systems other than Linux.
21546         (chmod_or_fchmod): New function: use fchmod when possible,
21547         and chmod otherwise.
21548         (file_has_acl): Add a POSIX ACL implementation, with a
21549         Linux-specific subcase.
21550         (copy_acl): Add: copy an acl and S_ISUID, S_ISGID, and
21551         S_ISVTX from one file to another.  Fall back to fchmod/chmod when
21552         acls are unsupported.
21553         (set_acl): Add: set a file's acl and S_ISUID, S_ISGID, and
21554         S_ISVTX to a defined value.  Fall back to fchmod/chmod when acls
21555         are unsupported.
21556
21557 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
21558
21559         Sync from coreutils.
21560         * m4/acl.m4 (AC_FUNC_ACL): Add POSIX ACL and Linux-specific acl tests.
21561
21562 2006-01-07  Bruno Haible  <bruno@clisp.org>
21563
21564         * gnulib-tool (func_import): Add an AC_PROG_RANLIB dependency to
21565         gl_EARLY.
21566
21567 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
21568
21569         * lib/strftime.c (tzname): Don't declare if it is already #defined.
21570         Problem reported for Mingw by Mark Junker.
21571
21572 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
21573
21574         * README: Gnulib normally doesn't generate a tarball.
21575
21576 2006-01-03  Paul Eggert  <eggert@cs.ucla.edu>
21577
21578         * lib/xtime.h (xtime_make, xtime_nonnegative_nsec, xtime_nsec): Use
21579         long int, not int, for nanosecond counts, so that people who are
21580         used to POSIX struct timespec won't be surprised.  Reported by Jim
21581         Meyering.
21582
21583 2005-12-28  Bruno Haible  <bruno@clisp.org>
21584
21585         * build-aux/config.rpath: Update from GNU gettext.
21586
21587 2005-12-16  Jim Meyering  <jim@meyering.net>
21588
21589         * modules/fprintftime: New module.
21590         * MODULES.html.sh (Date and time <time.h>): Add fprintftime.
21591
21592 2005-12-16  Jim Meyering  <jim@meyering.net>
21593
21594         * m4/fprintftime.m4: New file.
21595
21596 2005-12-16  Jim Meyering  <jim@meyering.net>
21597
21598         * lib/fprintftime.c, lib/fprintftime.h: New files.
21599
21600 2005-12-15  Simon Josefsson  <jas@extundo.com>
21601
21602         * modules/socklen (configure.ac): Fix M4 macro name, to align with
21603         new m4/socklen.m4.
21604
21605 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
21606
21607         * m4/argp.m4: Define HAVE_DECL_PROGRAM_INVOCATION_NAME and
21608         HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME
21609
21610 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
21611
21612         * lib/argp-fmtstream.c (__argp_fmtstream_update): Fix coredump
21613         * lib/argp-help.c (fill_in_uparams): Check if the constructed
21614         struct uparams is valid. Fall back to the default values if it is
21615         not.
21616
21617 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
21618
21619         * modules/argp (Files): Add argp-pin.c
21620         (Depends-on): dirname
21621         (lib_SOURCES): Add argp-pin.c
21622
21623 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
21624
21625         * m4/argp.m4:  Check if program_invocation_name and
21626         program_invocation_short_name are declared and define appropriate
21627         macros if they are not.
21628
21629 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
21630
21631         * lib/argp-help.c (__argp_base_name): New function
21632         (__argp_short_program_name): Rewrite using __argp_base_name
21633         * lib/argp-namefrob.h: Define program_invocation_name and
21634         program_invocation_short_name if requested
21635         (__argp_base_name): Add prototype
21636         * lib/argp-parse.c (argp_def): Use gettext wrappers
21637         (argp_default_parser): Use __argp_base_name
21638         * lib/argp-pin.c: New file. Defines program_invocation_name and
21639         program_invocation_short_name on systems that lack them.
21640
21641 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
21642
21643         * m4/stat-time.m4 (gl_STAT_TIME): Add check for
21644         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
21645         porting problem reported by Georg Schwarz in
21646         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
21647
21648 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
21649
21650         * lib/stat-time.h (STATE_TIMESPEC, STAT_TIMESPEC_NS): Add check for
21651         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
21652         porting problem reported by Georg Schwarz in
21653         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
21654
21655 2005-12-05  Bruno Haible  <bruno@clisp.org>
21656
21657         * lib/csharpcomp.sh.in (options_csc): For -l option, add a .dll suffix.
21658         * lib/csharpcomp.c (compile_csharp_using_sscli): Likewise.
21659         Reported by Mark Junker <mjscod@gmx.de>.
21660
21661 2005-12-02  Paul Eggert  <eggert@cs.ucla.edu>
21662
21663         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Renamed from gl_SOCKLEN_T.
21664         Use implementation from Albert Chin, with some
21665         comments/corrections by Stepan Kasal and myself.
21666
21667 2005-12-02  Bruno Haible  <bruno@clisp.org>
21668
21669         * gnulib-tool (func_import): Accept GPLed build tool modules when
21670         --lgpl is given.
21671         * modules/csharpcomp-script: New file.
21672         * modules/csharpcomp: Depend on it.
21673         * modules/javacomp-script: New file.
21674         * modules/javacomp: Depend on it.
21675         Suggested by Simon Josefsson.
21676
21677 2005-12-01  Paul Eggert  <eggert@cs.ucla.edu>
21678
21679         * m4/regex.m4 (gl_REGEX): Check whether off_t can be used in a switch
21680         statement, to work around an HP-UX 10.20 compiler bug reported by
21681         Peter O'Gorman.
21682
21683 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
21684
21685         * modules/savedir (Depends-on): Add openat.
21686
21687 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
21688
21689         * lib/stdint_.h (intmax_t) [defined intmax_t]: Do not declare.
21690         (uintmax_t) [defined uintmax_t]: Do not declare.
21691         (SIZE_MAX) [defined SIZE_MAX]: Do not define.
21692         This works around a problem if intmax_t.m4 and/or uintmax_t.m4
21693         and/or size_max.m4 are also used.  Problem reported by Mark D. Baushke.
21694         (SIZE_MAX): Define to ((size_t) -1), not (~(size_t)0), for the
21695         sake of portability to weird hosts that C allows (though we don't
21696         know of any practical examples).
21697
21698         * lib/savedir.h (fdsavedir): New decl.
21699         * lib/savedir.c (fdsavedir, savedirstream): New functions; the latter
21700         contains most of the former guts of savedir.
21701         (savedir): Use savedirstream.
21702         Include "openat.h".
21703
21704 2005-11-25  Paul Eggert  <eggert@cs.ucla.edu>
21705
21706         * modules/obstack (Files): Add m4/ulonglong.m4.
21707         Problem reported by Davide Angelocola.
21708
21709 2005-11-15  Paul Eggert  <eggert@cs.ucla.edu>
21710
21711         * lib/xstrtod.c: Don't bother with #pragma STDC FENV_ACCESS ON, as
21712         coreutils no longer futzes with rounding modes.
21713
21714 2005-11-14  Jim Meyering  <jim@meyering.net>
21715
21716         * lib/mkstemp-safer.c: Include <config.h>, required for possible
21717         replacement of mkstemp.
21718
21719 2005-11-10  Simon Josefsson  <jas@extundo.com>
21720
21721         * lib/readline.c: Remove EOL.
21722
21723 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
21724
21725         * modules/gethrxtime (Depends-on): Add gettime.
21726
21727 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
21728
21729         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Don't require AC_HEADER_TIME
21730         or gettimeofday; no longer needed.
21731
21732 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
21733
21734         * lib/gethrxtime.c: Include "timespec.h" rather than the sys/time /
21735         time business.
21736         (gethrxtime) [! (HAVE_NANOUPTIME
21737         || (defined CLOCK_MONOTONIC && HAVE_CLOCK_GETTIME)
21738         || HAVE_MICROUPTIME)]: Fall back on gettime rather than rolling
21739         our own approximation.
21740
21741 2005-11-08  Eric Blake  <ebb9@byu.net>
21742
21743         * lib/inet_ntop.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
21744
21745 2005-11-08  Eric Blake  <ebb9@byu.net>
21746
21747         * lib/getaddrinfo.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
21748
21749 2005-11-04  Bruno Haible  <bruno@clisp.org>
21750
21751         * gnulib-tool: Implement --update mode.
21752
21753 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
21754
21755         Fix porting problem reported by Theodoros V. Kalamatianos.
21756         * lib/utimens.c (futimens) [HAVE_WORKING_UTIMES && HAVE_FUTIMES]:
21757         Don't assume that futimes failing means we must fail.
21758
21759 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
21760
21761         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Revamp wording and local
21762         variables to suggest the intended function of the PATH_MAX check.
21763
21764 2005-10-30  Kean Johnston  <jkj@sco.com>
21765
21766         Trivial changes to support SCO systems.
21767         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Check for MAXPATHLEN as well
21768         as PATH_MAX.
21769         * m4/fpending.m4 (gl_FUNC_FPENDING): Correct check for SCO systems,
21770         where __ptr is null when no I/O is pending.
21771
21772 2005-10-29  Paul Eggert  <eggert@cs.ucla.edu>
21773
21774         * lib/getcwd.c (__getcwd): Don't assume that system calls after readdir
21775         leave errno alone.  Problem reported by Dmitry V. Levin.
21776
21777 2005-10-28  Simon Josefsson  <jas@extundo.com>
21778
21779         * tests/test-gc-md4.c, tests/test-gc-md5.c, tests/test-gc-sha1.c:
21780         Test more.
21781
21782         * tests/test-gc-md2.c, tests/test-md2.c: New files.
21783
21784         * modules/md2, modules/md2-tests: New files.
21785
21786 2005-10-28  Simon Josefsson  <jas@extundo.com>
21787
21788         * m4/inet_ntop.m4: More tests.
21789
21790         * m4/gc-md2.m4, md2.m4: New file.
21791
21792 2005-10-28  Simon Josefsson  <jas@extundo.com>
21793
21794         * lib/inet_ntop.h, inet_ntop.c: Make it work under mingw32: Add
21795         "restrict" keywords, as per POSIX.  Protect the function
21796         declaration around HAVE_DECL_INET_NTOP rather than HAVE_INET_NTOP.
21797         Don't use K&R prototypes.  Check the sprintf return values.
21798         Re-define EAFNOSUPPORT if not present.  Indent.
21799
21800         * lib/md5.h, md5.c: Simplify buffer handling visavi alignment,
21801         suggested by Bruno Haible <bruno@clisp.org>.
21802
21803         * lib/gc-gnulib.c, gc-libgcrypt.c: Check calloc return value.
21804
21805         * lib/gc.h: Add MD2 and RMD160 length defines.  Add prototypes.
21806
21807         * lib/gc-libgcrypt.c: Add MD2 (which is not available through
21808         libgcrypt).
21809
21810         * lib/gc-gnulib.c: Add MD2.  Implement gc_hash_* API.
21811
21812         * lib/md2.h, lib/md2.c: New files.
21813
21814 2005-10-28  Paul Eggert  <eggert@cs.ucla.edu>
21815
21816         * lib/savedir.c (savedir): Don't assume that xrealloc etc. leave
21817         errno alone.  Problem reported by Frederic Jolliton.
21818
21819 2005-10-27  Paul Eggert  <eggert@cs.ucla.edu>
21820
21821         * modules/verify (License): Change from GPL to LGPL.  This is a
21822         tiny module and there are apparently near-equivalents that are
21823         under the BSD license.
21824
21825 2005-10-24  Simon Josefsson  <jas@extundo.com>
21826
21827         * modules/sha1: Relicense to LGPL.
21828
21829 2005-10-24  Simon Josefsson  <jas@extundo.com>
21830
21831         * lib/md4.h: Shrink buffer size, now that we changed the type.
21832
21833 2005-10-23  Simon Josefsson  <jas@extundo.com>
21834
21835         * gnulib-tool (func_import): Fix --tests-base.
21836
21837 2005-10-22  Simon Josefsson  <jas@extundo.com>
21838
21839         * modules/arcfour (Depends-on): Need stdint.
21840
21841 2005-10-22  Simon Josefsson  <jas@extundo.com>
21842
21843         * m4/gc.m4: Don't be fooled by --disable-*random-device parameters,
21844         suggested by Bruno Haible <bruno@clisp.org>.  Fix error messages.
21845
21846 2005-10-22  Simon Josefsson  <jas@extundo.com>
21847
21848         * lib/md4.h, md4.c: Simplify buffer handling visavi alignment,
21849         suggested by Bruno Haible <bruno@clisp.org>.
21850
21851 2005-10-22  Simon Josefsson  <jas@extundo.com>
21852
21853         * lib/crc.h: Include stddef.h, for size_t.
21854
21855 2005-10-22  Simon Josefsson  <jas@extundo.com>
21856
21857         * lib/arcfour.h, arcfour.c: Use fixed size indices in the
21858         arcfour_context struct (simplify test vector testing in GNU
21859         Shishi).
21860
21861 2005-10-21  Simon Josefsson  <jas@extundo.com>
21862
21863         * modules/des, modules/des-tests: New files.
21864
21865         * modules/gc-des, modules/gc-des-tests: New files.
21866
21867         * tests/test-des.c, tests/test-gc-des.c: New file.
21868
21869 2005-10-21  Simon Josefsson  <jas@extundo.com>
21870
21871         * modules/arctwo, modules/arctwo-tests: New files.
21872
21873         * tests/test-arctwo.c: New file.
21874
21875         * modules/gc-arctwo, modules/gc-arctwo-tests: New files.
21876
21877         * tests/test-gc-arctwo.c: New file.
21878
21879 2005-10-21  Simon Josefsson  <jas@extundo.com>
21880
21881         * m4/gc.m4: Don't use libgcrypt if gcrypt.h isn't found, suggested by
21882         Bruno Haible <bruno@clisp.org>.
21883
21884         * m4/gc-des.m4: New file.
21885
21886 2005-10-21  Simon Josefsson  <jas@extundo.com>
21887
21888         * m4/arctwo.m4: New file.
21889
21890         * m4/gc-arctwo.m4: New file.
21891
21892 2005-10-21  Simon Josefsson  <jas@extundo.com>
21893
21894         * lib/rijndael-api-fst.c: Fix bugs in CBC mode for more than one
21895         block.
21896
21897 2005-10-21  Simon Josefsson  <jas@extundo.com>
21898
21899         * lib/hmac-md5.c (hmac_md5): Add comments, suggested by Bruno Haible
21900         <bruno@clisp.org>.
21901
21902         * lib/hmac-sha1.c (hmac_sha1): Likewise.
21903
21904         * lib/crc.c (crc32_update): Actually use crc parameter, suggested by
21905         Bruno Haible <bruno@clisp.org>.
21906
21907         * lib/crc.h: Include stdint.h directly, suggested by Bruno Haible
21908         <bruno@clisp.org>.
21909
21910 2005-10-21  Simon Josefsson  <jas@extundo.com>
21911
21912         * lib/gc-libgcrypt.c (gc_cipher_open): Handle ECB.
21913
21914 2005-10-21  Simon Josefsson  <jas@extundo.com>
21915
21916         * lib/gc-gnulib.c: Support ARCTWO in CBC mode.
21917
21918 2005-10-21  Simon Josefsson  <jas@extundo.com>
21919
21920         * lib/des.h, lib/des.c: New files.
21921
21922         * lib/gc-gnulib.c: Support DES.c
21923
21924 2005-10-21  Simon Josefsson  <jas@extundo.com>
21925
21926         * lib/arctwo.h, lib/arctwo.c: New files.
21927
21928         * lib/gc-gnulib.c: Support ARCTWO.
21929
21930 2005-10-21  Simon Josefsson  <jas@extundo.com>
21931
21932         * lib/arctwo.h (arctwo_setkey): Protect variable in CPP macro,
21933         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
21934
21935 2005-10-21  Simon Josefsson  <jas@extundo.com>
21936
21937         * gnulib-tool (func_import, func_create_testdir): Define automake
21938         conditional GL_COND_LIBTOOL if libtool is used (to be used by modules
21939         Makefile.am snippet),
21940         suggested by Bruno Haible <bruno@clisp.org>.
21941
21942         * modules/gc (Makefile.am): Use it.
21943
21944 2005-10-21  Bruno Haible  <bruno@clisp.org>
21945
21946         * gnulib-tool (func_import, func_create_testdir): Add quoting to last
21947         patch.
21948
21949 2005-10-19  Simon Josefsson  <jas@extundo.com>
21950
21951         * tests/test-gc-rijndael.c: New file.
21952
21953         * modules/gc-rijndael, modules/gc-rijndael-test: New files.
21954
21955 2005-10-19  Simon Josefsson  <jas@extundo.com>
21956
21957         * tests/test-gc-md4.c, tests/test-gc-md5.c: Test gc_hash_buffer
21958         interface too.
21959
21960 2005-10-19  Simon Josefsson  <jas@extundo.com>
21961
21962         * tests/test-gc-arcfour.c: New file.
21963
21964         * modules/gc-arcfour, modules/gc-arcfour-tests: New files.
21965
21966 2005-10-19  Simon Josefsson  <jas@extundo.com>
21967
21968         * modules/gc-md4, modules/gc-md4-tests: New file.
21969
21970         * tests/test-gc-md4.c: New file.
21971
21972 2005-10-19  Simon Josefsson  <jas@extundo.com>
21973
21974         * m4/gc-md4.m4: New file.
21975
21976 2005-10-19  Simon Josefsson  <jas@extundo.com>
21977
21978         * m4/gc-hmac-md5.m4, gc-hmac-sha1.m4, gc-md4.m4,
21979         gc-md5.m4, gc-sha1.m4: Fix typo, suggested by Stepan Kasal
21980         <kasal@ucw.cz>.
21981
21982 2005-10-19  Simon Josefsson  <jas@extundo.com>
21983
21984         * m4/gc-arcfour.m4: New file.
21985
21986         * m4/gc-rijndael.m4: New file.
21987
21988 2005-10-19  Simon Josefsson  <jas@extundo.com>
21989
21990         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support MD4.
21991
21992 2005-10-19  Simon Josefsson  <jas@extundo.com>
21993
21994         * lib/gc-gnulib.c: Support ARCFOUR.
21995
21996 2005-10-19  Simon Josefsson  <jas@extundo.com>
21997
21998         * lib/gc-gnulib.c: Implement gc_cipher_* API, currently only with AES
21999         support.
22000
22001         * lib/gc.h: Add ECB enum type.
22002
22003         * lib/hmac-md5.c, hmac-sha1.c: Include memxor.h.
22004
22005 2005-10-18  Simon Josefsson  <jas@extundo.com>
22006
22007         * tests/test-md5.c: New file.
22008
22009         * modules/md5-tests: New file.
22010
22011 2005-10-18  Simon Josefsson  <jas@extundo.com>
22012
22013         * tests/test-md4.c: New file.
22014
22015         * modules/md4, modules/md4-tests: New files.
22016
22017 2005-10-18  Simon Josefsson  <jas@extundo.com>
22018
22019         * m4/md4.m4: New file.
22020
22021 2005-10-18  Simon Josefsson  <jas@extundo.com>
22022
22023         * lib/md4.h, lib/md4.c: New files, based on md5.?.
22024
22025 2005-10-17  Stepan Kasal  <kasal@ucw.cz>
22026
22027         * gnulib-tool (func_create_testdir): Omit the second check whether
22028         BUILT_SOURCES in nonempty.
22029
22030 2005-10-17  Simon Josefsson  <jas@extundo.com>
22031
22032         * tests/test-rijndael.c: New file.
22033
22034 2005-10-17  Simon Josefsson  <jas@extundo.com>
22035
22036         * modules/sha1: Depend on stdint instead of md5.
22037
22038         * modules/md5: Depend on stdint, remove uint32_t.
22039
22040 2005-10-17  Simon Josefsson  <jas@extundo.com>
22041
22042         * modules/gc-sha1-tests: New file.
22043
22044         * tests/test-gc-sha1.c: New file.
22045
22046 2005-10-17  Simon Josefsson  <jas@extundo.com>
22047
22048         * m4/md5.m4: Remove call to uint32_t.m4.
22049
22050 2005-10-17  Simon Josefsson  <jas@extundo.com>
22051
22052         * lib/sha1.c: Use uint32_t instead of md5_uint32.t
22053
22054         * lib/sha1.h: Use stdint.h and uint32_t instead of md5_uint32 from
22055         md5.h.
22056
22057         * lib/md5.c: Use uin32_t.  Fix non-gcc UNALIGNED_P macro.
22058
22059         * lib/md5.h: Use stdint.h and uint32_t.  Doc fix.
22060
22061 2005-10-17  Simon Josefsson  <jas@extundo.com>
22062
22063         * lib/gc.h, gc-libgcrypt.c: Add more hash types/functions.
22064
22065 2005-10-17  Simon Josefsson  <jas@extundo.com>
22066
22067         * lib/gc.h, gc-libgcrypt.c: Add ciphers.
22068
22069 2005-10-17  Simon Josefsson  <jas@extundo.com>
22070
22071         * lib/gc-libgcrypt.c (gc_hmac_sha1): Fix assert.
22072
22073         * lib/gc.h (gc_nonce, gc_pseudo_random, gc_random): Add prototypes.
22074
22075 2005-10-17  Bruno Haible  <bruno@clisp.org>
22076
22077         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Change the return statement so
22078         that it can also be used in a test.
22079
22080 2005-10-16  Bruno Haible  <bruno@clisp.org>
22081
22082         * gnulib-tool (func_emit_tests_Makefile_am): Also define
22083         TESTS_ENVIRONMENT, so that individual tests can augment it.
22084
22085         * gnulib-tool (func_create_testdir): Use an intermediate target for
22086         building $(BUILT_SOURCES). Needed because BUILT_SOURCES can contain
22087         macros, like $(ALLOCA_H), which cannot be passed through the command
22088         line.
22089
22090 2005-10-15  Simon Josefsson  <jas@extundo.com>
22091
22092         * modules/rijndael-tests: New file.
22093
22094         * modules/rijndael: New file.
22095
22096 2005-10-15  Simon Josefsson  <jas@extundo.com>
22097
22098         * m4/rijndael.m4: New file.
22099
22100 2005-10-15  Simon Josefsson  <jas@extundo.com>
22101
22102         * lib/rijndael-api-fst.h, lib/rijndael-api-fst.c: New files.
22103
22104         * lib/rijndael-alg-fst.h, lib/rijndael-alg-fst.c: New files.
22105
22106 2005-10-14  Simon Josefsson  <jas@extundo.com>
22107
22108         * tests/test-arcfour.c: New file.
22109
22110         * modules/arcfour, modules/arcfour-tests: New files.
22111
22112 2005-10-14  Simon Josefsson  <jas@extundo.com>
22113
22114         * m4/arcfour.m4: New file.
22115
22116 2005-10-14  Simon Josefsson  <jas@extundo.com>
22117
22118         * lib/arcfour.h, lib/arcfour.c: New files.
22119
22120 2005-10-14  Roland McGrath  <roland@redhat.com>
22121
22122         Import from libc.  [BZ #1331]
22123         * lib/obstack.h [!__STDC__] (obstack_int_grow_fast): Fix misnamed
22124         macro argument.
22125         Reported by Matej Vela <vela@debian.org>.
22126
22127 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
22128
22129         * lib/obstack.c [defined _LIBC && defined USE_IN_LIBIO]: Don't
22130         include <wchar.h>; no longer needed.
22131
22132 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
22133
22134         * config/srclist.txt: Add glibc bug 321 for obstack.c, obstack.h.
22135
22136 2005-10-14  Jakub Jelinek  <jakub@redhat.com>
22137         and  Ulrich Drepper  <drepper@redhat.com>
22138
22139         Import from libc.
22140         * lib/obstack.c (print_and_abort) [defined _LIBC]: Use __fxprintf
22141         instead of inline stream orientation test and two separate
22142         function calls.  Pay no attention to USE_IN_LIBIO.
22143
22144 2005-10-13  Simon Josefsson  <jas@extundo.com>
22145
22146         * modules/gc-hmac-md5-tests: New file.
22147
22148         * tests/test-gc-hmac-sha1.c: New file.
22149
22150         * tests/test-gc.c (main): Remove MD5 and HMAC-MD5 tests.
22151
22152         * modules/gc-hmac-md5-tests: New file.
22153
22154         * tests/test-gc-md5.c: New file.
22155
22156         * modules/gc-md5-tests: New file.
22157
22158 2005-10-13  Simon Josefsson  <jas@extundo.com>
22159
22160         * lib/gc-pbkdf2-sha1.c (gc_pbkdf2_sha1): Optimize CEIL computation.
22161         Move memory allocation outside of loop.
22162
22163 2005-10-13  Paul Eggert  <eggert@cs.ucla.edu>
22164
22165         * lib/mkdir-p.c (make_dir_parents): Don't report an error if an
22166         intermediate directory is in a read-only file system.  Problem
22167         reported by Eric Blake.
22168
22169 2005-10-13  Oskar Liljeblad  <oskar@osk.mine.nu>
22170
22171         * modules/human (Depends-on): Depend on xstrtoumax, not xstrtol.
22172
22173 2005-10-12  Simon Josefsson  <jas@extundo.com>
22174
22175         * tests/test-hmac-sha1.c: New file.
22176
22177         * modules/hmac-sha1-tests: New file.
22178
22179         * modules/hmac-sha1: New file.
22180
22181 2005-10-12  Simon Josefsson  <jas@extundo.com>
22182
22183         * modules/gc-sha1: New file.
22184
22185 2005-10-12  Simon Josefsson  <jas@extundo.com>
22186
22187         * modules/gc-pbkdf2-sha1, modules/gc-pbkdf2-sha1-tests: New files.
22188
22189         * tests/test-gc-pbkdf2-sha1.c: New file.
22190
22191 2005-10-12  Simon Josefsson  <jas@extundo.com>
22192
22193         * modules/gc-md5, modules/gc-hmac-md5: New files.
22194
22195         * modules/gc (Files): Remove md5, memxor and hmac files.
22196
22197 2005-10-12  Simon Josefsson  <jas@extundo.com>
22198
22199         * m4/gc-pbkdf2-sha1.m4: New file.
22200
22201         * m4/gc-hmac-sha1.m4: New file.
22202
22203         * m4/gc-sha1: New file.
22204
22205         * m4/hmac-sha1.m4: New file.
22206
22207 2005-10-12  Simon Josefsson  <jas@extundo.com>
22208
22209         * m4/gc-md5.m4, m4/gc-hmac-md5.m4: New files.
22210
22211         * m4/gc.m4: Don't call gl_MD5, gl_MEMXOR or gl_HMAC_MD5.
22212
22213 2005-10-12  Simon Josefsson  <jas@extundo.com>
22214
22215         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Use Gc_rc for return types,
22216         suggested by Bruno Haible <bruno@clisp.org>.
22217
22218 2005-10-12  Simon Josefsson  <jas@extundo.com>
22219
22220         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support SHA-1.
22221
22222 2005-10-12  Simon Josefsson  <jas@extundo.com>
22223
22224         * lib/gc-pbkdf2-sha1.c: New file.
22225
22226         * lib/gc.h: Add gc_pbkdf2_sha1 prototype.
22227
22228 2005-10-12  Simon Josefsson  <jas@extundo.com>
22229
22230         * lib/gc-libgcrypt.c (gc_hmac_sha1): New function.
22231
22232         * lib/gc-gnulib.c (gc_hmac_sha1): New function.
22233
22234 2005-10-12  Simon Josefsson  <jas@extundo.com>
22235
22236         * lib/gc-gnulib.c: Condition MD5 and HMAC-MD5 use on GC_USE_MD5 and
22237         GC_USE_HMAC_MD5, respectively.
22238
22239         * lib/gc-libgcrypt.c (gc_md5): Fix assert call.
22240         (gc_md5): Fix typo.
22241
22242         * lib/gc.h (gc_hash_buffer): Use gc_hash in prototype.
22243
22244         * lib/gc-libgcrypt.c (gc_hash_buffer): Ditto.
22245
22246         * lib/gc-gnulib.c (gc_hash_buffer): Ditto.
22247
22248 2005-10-12  Bruno Haible  <bruno@clisp.org>
22249
22250         * m4/stdbool.m4 (gl_STDBOOL_H): Define as an alias of AM_STDBOOL_H.
22251         Reported by Stepan Kasal <kasal@ucw.cz>.
22252
22253 2005-10-11  Simon Josefsson  <jas@extundo.com>
22254
22255         * tests/test-crc.c: New file.
22256
22257         * modules/crc, modules/crc-tests: New files.
22258
22259 2005-10-11  Simon Josefsson  <jas@extundo.com>
22260
22261         * m4/crc.m4: New file.
22262
22263 2005-10-11  Simon Josefsson  <jas@extundo.com>
22264
22265         * lib/gc.h: Add gc_hash and gc_hash_buffer.
22266
22267         * lib/gc-gnulib.c (gc_hash_buffer): Add.  Reorder #include's.
22268
22269         * lib/gc-libgcrypt.c (gc_hash_buffer): Add.
22270
22271 2005-10-11  Simon Josefsson  <jas@extundo.com>
22272
22273         * lib/crc.h, lib/crc.c: New files.
22274
22275         * lib/gc.h (gc_hash_buffer): Add doc.
22276
22277 2005-10-11  Bruno Haible  <bruno@clisp.org>
22278
22279         * modules/c-strcasestr: New file.
22280         * MODULES.html.sh (String handling <string.h>): Add c-strcasestr.
22281
22282 2005-10-11  Bruno Haible  <bruno@clisp.org>
22283
22284         * modules/c-strcase: New file.
22285         * MODULES.html.sh (String handling <string.h>): Add c-strcase.
22286
22287 2005-10-11  Bruno Haible  <bruno@clisp.org>
22288
22289         * lib/strcasecmp.c: Include limits.h.
22290         (strcasecmp): Avoid integer overflow on exotic platforms.
22291         * lib/strncasecmp.c: Include limits.h.
22292         (strncasecmp): Avoid integer overflow on exotic platforms.
22293         Reported by Paul Eggert.
22294
22295 2005-10-11  Bruno Haible  <bruno@clisp.org>
22296
22297         * lib/c-strcasestr.h: New file, from GNU gettext.
22298         * lib/c-strcasestr.c: New file, from GNU gettext.
22299
22300 2005-10-11  Bruno Haible  <bruno@clisp.org>
22301
22302         * lib/c-strcase.h: New file, from GNU gettext.
22303         * lib/c-strcasecmp.c: New file, from GNU gettext.
22304         * lib/c-strncasecmp.c: New file, from GNU gettext.
22305
22306 2005-10-10  Paul Eggert  <eggert@cs.ucla.edu>
22307
22308         * modules/mempcpy (License): GPL -> LGPL.
22309         * modules/strchrnul (License): Likewise.
22310         * modules/sysexits (License): Likewise.
22311
22312 2005-10-08  Simon Josefsson  <jas@extundo.com>
22313
22314         * config/srclist.txt: Bug 1423 is closed, but 1439 remains.
22315
22316 2005-10-07  Simon Josefsson  <jas@extundo.com>
22317
22318         * m4/memxor.m4: Remove gl_C_RESTRICT call.
22319
22320 2005-10-06  Simon Josefsson  <jas@extundo.com>
22321
22322         * tests/test-hmac-md5.c: New file.
22323
22324         * modules/hmac-md5-tests: New file.
22325
22326         * modules/hmac-md5: New file.
22327
22328 2005-10-06  Simon Josefsson  <jas@extundo.com>
22329
22330         * m4/hmac-md5.m4: New file.
22331
22332         * m4/memxor.m4: Require gl_C_RESTRICT.
22333
22334 2005-10-06  Simon Josefsson  <jas@extundo.com>
22335
22336         * lib/memxor.c (memxor): Avoid casts and warnings.
22337
22338 2005-10-06  Simon Josefsson  <jas@extundo.com>
22339
22340         * lib/hmac-md5.c: New file.
22341
22342         * lib/hmac.h: New file.
22343
22344 2005-10-06  Paul Eggert  <eggert@cs.ucla.edu>
22345
22346         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check that bool
22347         promotes to int, not unsigned int, to catch the AIX 5.3
22348         compiler bug.
22349
22350 2005-10-05  Simon Josefsson  <jas@extundo.com>
22351
22352         * modules/memxor: New file.
22353
22354         * modules/iconv (Files): Move config.rpath to havelib, it is used
22355         there.
22356
22357         * modules/havelib (Files): Add config.rpath.
22358
22359 2005-10-05  Simon Josefsson  <jas@extundo.com>
22360
22361         * m4/memxor.m4: New file.
22362
22363 2005-10-05  Simon Josefsson  <jas@extundo.com>
22364
22365         * lib/memxor.c (memxor): Fix compiler error.
22366
22367         * lib/md5.h (MD5_DIGEST_SIZE, MD5_BLOCK_SIZE): Add, see also
22368         <http://sourceware.org/bugzilla/show_bug.cgi?id=1423>.
22369
22370         * lib/memxor.h, lib/memxor.c: New files.
22371
22372         * lib/getaddrinfo.h: Don't protect sys/types.h with HAVE_SYS_TYPES_H,
22373         we assume all systems have it, suggested by Jim Meyering
22374         <jim@meyering.net>.  Remove HAVE_SYS_SOCKET_H test too, to see if
22375         any systems lack sys/socket.h; mingw32 is known to lack it, but we
22376         don't support it yet anyway.  Also remove HAVE_NETDB_H test, for
22377         same reasons.
22378
22379 2005-10-05  Simon Josefsson  <jas@extundo.com>
22380
22381         * config/srclist.txt: Add glibc bug 1423 for md5.h.
22382
22383 2005-10-05  Paul Eggert  <eggert@cs.ucla.edu>
22384
22385         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Don't check for
22386         sys/socket.h, netdb.h, sys/types.h; the checks areno longer
22387         needed, since the source code now assumes these .h files.
22388
22389 2005-10-05  Derek Price  <derek@ximbiot.com>
22390
22391         * lib/getdelim.c (SIZE_MAX): New macro, if not already defined.
22392
22393 2005-10-05  Bruno Haible  <bruno@clisp.org>
22394
22395         * modules/stdint (License): Change to LGPL.
22396
22397 2005-10-04  Simon Josefsson  <jas@extundo.com>
22398
22399         * lib/getaddrinfo.h: Move sys/types.h include first, reported by "Mark
22400         D. Baushke" <mdb@gnu.org>.
22401
22402 2005-10-04  Bruno Haible  <bruno@clisp.org>
22403
22404         * lib/verify.h (verify_true): Provide alternative definition for C++.
22405
22406 2005-10-03  Paul Eggert  <eggert@cs.ucla.edu>
22407
22408         * lib/getdelim.c: Include getdelim.h first.  Include <limits.h>.
22409         (SSIZE_MAX): New macro, if not already defined.
22410         (getdelim): Fix buffer overrun on 64-bit hosts with lines longer
22411         than 2 GiB.
22412
22413 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
22414
22415         Sync from coreutils.
22416         * m4/openat.m4 (gl_FUNC_OPENAT): Check for fdopendir.
22417         * m4/ullong_max.m4 (gl_ULLONG_MAX): Simplify so that it merely
22418         defines ULONG_MAX_LT_ULLONG_MAX.  Thomas M.Ott reports that
22419         ULLONG_MAX doesn't work with 2.7.2.1.
22420
22421 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
22422
22423         * modules/xreadlink (Makefile.am): Remove lib_SOURCES.
22424         From Ben Pfaff.
22425
22426         * modules/exclude (Depends-on): Depend on verify.
22427         * modules/strtoimax (Depends-on): Likewise.
22428         * modules/utimecmp (Depends-on): Likewise.
22429
22430 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
22431
22432         * lib/exclude.c: Include verify.h.
22433         (verify): Remove.  All callers changed to use verify.h's version.
22434         * lib/strtoimax.c: Likewise.
22435         * lib/utimecmp.c: Likewis.e
22436
22437         Sync from coreutils.
22438         * lib/.cppi-disable: Add getaddrinfo.h, getdelim.h, getline.h,
22439         getpass.c, mbchar.h, mbuiter.h, strcase.h, strnlen.h, strnlen1.h.
22440         * lib/.cvsignore: Add fts.h, search.h, t-fpending.
22441         * lib/settime.c (settime): Fix { typo in previous patch.  Also, don't
22442         bother returning ENOSYS if settimeofday or stime fails; just let
22443         them return whatever errno they want to return.
22444         * lib/utimens.c: Include unistd.h, for dup2.
22445         (futimens): Fix typo: HAVE_FUTIMESAT was misspelled in an #if.
22446         (futimens) [! HAVE_FUTIMESAT]: If !file, set errno before returning -1.
22447
22448 2005-10-02  Jim Meyering  <jim@meyering.net>
22449
22450         Sync from coreutils.
22451         * m4/utimes.m4 (gl_FUNC_UTIMES): Detect the version of utimes
22452         from glibc-2.2.5 that fails for read-only files.
22453
22454 2005-10-02  Jim Meyering  <jim@meyering.net>
22455
22456         Sync from coreutils.
22457         * lib/fts-cycle.c [HAVE_CONFIG_H]: Include <config.h>.
22458         * lib/openat-die.c: Use `#ifdef HAVE_CONFIG_H', not
22459         `#if HAVE_CONFIG_H'.
22460         * lib/openat.c (fdopendir): Do not define if HAVE_FDOPENDIR.
22461         Remove AT_FDCWD test.
22462         Do not consume the fd unless successful.
22463         * lib/openat.h (fdopendir): Do not define if HAVE_FDOPENDIR.
22464         * lib/settime.c (settime): Move the HAVE_STIME block `up' into an #elif
22465         block, so that we don't even try to compile it if settimeofday is
22466         available.  This works around a compilation failure on OSF1 V5.1,
22467         due to stime requiring a `long int*' while tv_sec is `int'.
22468
22469 2005-10-02  Alfred M. Szmidt  <ams@gnu.org>
22470
22471         Sync from coreutils.
22472         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Compare $gl_have_path...
22473         against `yes', rather than just testing for nonempty.
22474
22475 2005-10-01  Simon Josefsson  <jas@extundo.com>
22476
22477         * m4/getaddrinfo.m4: Include sys/types.h for sys/socket.h, on FreeBSD
22478         and Darwin.
22479
22480         * m4/getaddrinfo.m4: Use AC_GNU_SOURCE, GNU only declare getaddrinfo
22481         as an (POSIX) extension.  Check for sys/types.h, sys/socket.h, and
22482         netdb.h too, needed by getaddrinfo.h.  Check if getaddrinfo,
22483         freeaddrinfo and gai_strerror are declared by the POSIX headers.
22484         Check if struct addrinfo is declared.
22485
22486 2005-10-01  Simon Josefsson  <jas@extundo.com>
22487
22488         * lib/getaddrinfo.h: Protect #include's of sys/socket.h and netdb.h.
22489         Only define struct addrinfo if !HAVE_STRUCT_ADDRINFO.  Protect
22490         AI_* and EAI_* definitions.  Protect function declarations.
22491
22492 2005-10-01  Jim Meyering  <jim@meyering.net>
22493
22494         Sync from coreutils.
22495
22496         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Look for getservbyname in these
22497         libraries [inet nsl socket xnet].  Nelson Beebe reported that with
22498         native cc on Solaris 7, getaddrinfo.c requires -lsocket.
22499         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
22500         in the inet and nsl libraries.  Required on Solaris 5.7.
22501
22502 2005-10-01  Jim Meyering  <jim@meyering.net>
22503
22504         Sync from coreutils.
22505         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
22506         in the inet and nsl libraries.  Required on Solaris 5.7.
22507
22508 2005-10-01  Eric Blake  <ebb9@byu.net>  (tiny change)
22509
22510         * lib/getdelim.c (getdelim): Remove unused variables.
22511
22512 2005-09-29  Paul Eggert  <eggert@cs.ucla.edu>
22513
22514         * lib/xtime.h (XTIME_PRECISION): Now of type int, not long long int,
22515         so that the code works even with ancient cpp.  Portability problem
22516         with GCC 2.7.2.1 reported by Thomas M.Ott.
22517
22518 2005-09-27  Paul Eggert  <eggert@cs.ucla.edu>
22519
22520         * modules/regex (Depends-on): Add strcase.
22521
22522         * modules/gethostname (Licence): Change from GPL to LGPL, since
22523         gethostname.c is a trivial implementation of a standard library
22524         function.
22525         * modules/poll (License): Change from GPL to LGPL, since it's
22526         derived from LGPL code.
22527
22528 2005-09-27  Jim Meyering  <jim@meyering.net>
22529
22530         * lib/getcwd.c: Change #ifdef<TAB>HAVE_CONFIG_H to #ifdef
22531         HAVE_CONFIG_H.
22532
22533         * lib/intprops.h (signed_type_or_expr__): Define.
22534         (INT_STRLEN_BOUND) [__GNUC__]: Use a slightly tighter bound
22535         for unsigned types.
22536
22537 2005-09-26  Paul Eggert  <eggert@cs.ucla.edu>
22538
22539         * lib/verify.h (verify_expr): Remove, replacing with:
22540         (verify_true): New macro that returns true instead of void.
22541         (verify_type__): Remove.
22542         (verify): Use verify_true rather than verify_type__.
22543
22544 2005-09-26  Bruno Haible  <bruno@clisp.org>
22545
22546         * modules/mbchar (Include): Mention that HAVE_WCHAR_H && HAVE_WCTYPE_H
22547         is necessary.
22548         (lib_SOURCES): Remove mbchar.c.
22549         * modules/mbfile (Include): Mention that HAVE_MBRTOWC is necessary.
22550         (Files): Add m4/mbrtowc.m4.
22551         * modules/mbiter: Likewise.
22552         * modules/mbuiter: Likewise.
22553
22554 2005-09-26  Bruno Haible  <bruno@clisp.org>
22555
22556         * m4/mbchar.m4 (gl_MBCHAR): Check for wchar.h and wctype.h. Don't
22557         compile mbchar.c if they are not both present.
22558         * m4/mbfile.m4 (gl_MBFILE): Require gl_FUNC_MBRTOWC.
22559         * m4/mbiter.m4 (gl_MBITER): Likewise.
22560         * m4/strstr.m4 (gl_PREREQ_STRSTR): Use AC_REQUIRE.
22561         * m4/strcasestr.m4 (gl_PREREQ_STRCASESTR): Likewise.
22562         * m4/strcase.m4 (gl_PREREQ_STRCASECMP): Likewise.
22563
22564 2005-09-25  Jim Meyering  <jim@meyering.net>
22565
22566         * modules/inet_ntop (Depends-on): Add socklen, since inet_ntop.c
22567         also uses socklen_t.
22568
22569 2005-09-24  Paul Eggert  <eggert@cs.ucla.edu>
22570
22571         * lib/utimens.c (ENOSYS): Define if not already defined.
22572         (futimens): Support having a null PATH if the file descriptor
22573         is nonnegative.
22574
22575         * lib/regex_internal.h (__GNUC_PREREQ, always_inline, inline, pure):
22576         Remove.
22577         (__attribute): Define to empty unless GCC 3.1 or later.
22578         This works around a core dump on OpenBSD 3.4, which has GCC
22579         2.95.3, which dumps core when given __attribute__(()).  It also
22580         simplifies other tests, since we really don't want to bother with
22581         worrying about which ancient version of GCC supported what.
22582         Original problem reported by Yoann Vandoorselaere, with part of
22583         the fix suggested by Derek Price.
22584
22585 2005-09-24  Jim Meyering  <jim@meyering.net>
22586
22587         * lib/verify.h (verify_type__): Use `unsigned int' as the bitfield type
22588         so we can once again use a positive bitfield width of 1 -- now we
22589         don't have to explain why we were using a bitfield width of 2.
22590
22591 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
22592
22593         * m4/regex.m4 (gl_REGEX): If replacing, define regcomp to rpl_regcomp,
22594         and similarly for the other external symbols.  Problem reported
22595         by James Gallager.
22596
22597         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Catch Sun Studio 10u1 on Linux
22598         bug reported by Jim Meyering.
22599
22600         * m4/utimens.m4 (gl_UTIMENS): Check for futimesat.
22601         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Undo previous change;
22602         not needed, since socklen is a prerequisite module.
22603
22604 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
22605
22606         * lib/getaddrinfo.c [HAVE_NETINET_IN_H]: Include <netinet/in.h>.
22607         Problem reported by Eric Blake.
22608         (getaddrinfo): Initialize se so that it's not garbage.
22609         Redo internal storage allocation so that it doesn't make unportable
22610         assumptions about alignment.
22611         Fix a memory leak.
22612
22613         * lib/utimens.c (futimens): Use futimesat if available.
22614         Prefer it to futimes since it doesn't have the futimes bug.
22615
22616         * lib/verify.h (GL_CONCAT0, GL_CONCAT): Remove.
22617         (verify): Don't use the __LINE__ trick, as it doesn't work in general.
22618         Instead, declare a function that returns a pointer to an array,
22619         and use verify_type__ to declare the size of the array.
22620         Problem and germ of a solution reported by Bruno Haible.
22621         (verify_type__): Use 2, not 1, for bitfield size, to avoid
22622         a warning with Irix 6.5 cc.  Problem reported by Bruno Haible.
22623
22624 2005-09-23  Jim Meyering  <jim@meyering.net>
22625
22626         Sync from coreutils.
22627         Correct build failure (socklen_t not defined) on at least
22628         mips-sgi-irix6.5 and alphaev67-dec-osf5.1.
22629         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Require gl_SOCKLEN_T.
22630
22631 2005-09-23  Jim Meyering  <jim@meyering.net>
22632
22633         * modules/getaddrinfo (Depends-on): Add socklen.
22634
22635 2005-09-23  Bruno Haible  <bruno@clisp.org>
22636
22637         * tests/test-verify.c: New file.
22638
22639 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
22640
22641         Sync from coreutils.
22642
22643         * modules/argmatch (Depends-on): Add verify.
22644         * modules/getloadavg (Depends-on): Depend on fcntl-safer, not
22645         unistd-safer.
22646         * modules/save-cwd (Depends-on): Likewise.
22647
22648         * modules/openat (Files): Add lib/openat-die.c.
22649         (Depends-on): Remove error, exitfail.
22650         Add dirname.
22651
22652         * modules/verify: New file.
22653         * MODULES.html.sh (Diagnostics <assert.h>): New section,
22654         with "verify" module.
22655
22656 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
22657
22658         Sync from coreutils.
22659
22660         * m4/backupfile.m4, calloc.m4, chown.m4, cloexec.m4, dup2.m4:
22661         * m4/fileblocks.m4, free.m4, ftruncate.m4, getcwd.m4, getpagesize.m4:
22662         * m4/getugroups.m4, group-member.m4, idcache.m4, link-follow.m4:
22663         * m4/mkstemp.m4, mktime.m4, mountlist.m4, nanosleep.m4, pathmax.m4:
22664         * m4/physmem.m4, posixver.m4, putenv.m4, safe-read.m4, same.m4:
22665         * m4/save-cwd.m4, stdio-safer.m4, unistd-safer.m4, unlinkdir.m4:
22666         * m4/userspec.m4, xgetcwd.m4, xreadlink.m4:
22667         Don't bother checking for string.h, stdlib.h, unistd.h.
22668         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't require
22669         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK; that's now the lstat
22670         module's job.
22671         * m4/jm-macros.m4 (gl_MACROS): Likewise.
22672         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_LSTAT.
22673
22674         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): New macro.
22675         (gl_GETDATE): Use it.
22676
22677         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Don't bother checking for unistd.h.
22678
22679 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
22680
22681         Sync from coreutils.
22682
22683         * lib/.cppi-disable: Add regcomp.c, regex_internal.c, regex_internal.h,
22684         stat-time.h.
22685         * lib/argmatch.h: Include verify.h
22686         (ARGMATCH_VERIFY): Use verify rather than rolling our own.
22687         (ARGMATCH_ASSERT): Remove; unused.
22688         * lib/canonicalize.c: Assume STDC_HEADERS.
22689         * lib/exclude.c: Include "strcase.h".
22690         * lib/regex_internal.h [!defined _LIBC]: Likewise.
22691         * lib/getusershell.c: Include stdio--.h rather than stdio.h
22692         and stdio-safer.h.
22693         (getusershell): Call fopen, not fopen_safer.
22694         * lib/save-cwd.c: Include fcntl--.h rather than fcntl.h.
22695         Do not include unistd-safer.h.
22696         (save_cwd): Don't call fd_safer; no longer needed
22697         now that we include fcntl--.h.
22698
22699         * lib/getdate.y (relative_time): New type.
22700         (RELATIVE_TIME_0): New constant.
22701         (parser_control): Use relative_time instead of doing it ourselves.
22702         (%union): Add new relative_time rel member.
22703         (tYEAR_UNIT, tMONTH_UNIT, tHOUR_UNIT, tMINUTE_UNIT, tSEC_UNIT):
22704         Now typeless.
22705         (relunit, relunit_snumber): Now of type rel.
22706         (zone, rel, relunit, get_date): Adjust to above changes.
22707
22708         * lib/getloadavg.c: Include fcntl--.h rather than fcntl.h.
22709         Do not include unistd-safer.h.
22710         (getloadavg): Don't call fd_safer; no longer needed
22711         now that we include fcntl--.h.
22712
22713         * lib/mkdir-p.c (ENOSYS): Define to EEXIST if not defined.
22714         (make_dir_parents): Treat ENOSYS like EEXIST.
22715
22716         Improve quality of diagnostics on restore_cwd failure.
22717         * lib/mkdir-p.h (make_dir): Remove.  All uses replaced by mkdir.
22718         (make_dir_parents): Last arg is now int * (for errno), not bool *.
22719         * lib/mkdir-p.c (make_dir, make_dir_parents): Likewise.
22720         Rewrite "mkdir -p" algorithm to avoid the need for "stat"
22721         each time through the loop.  Do not diagnose restore_cwd failure;
22722         that is the caller's job (and perhaps the caller does not care).
22723
22724         * lib/mkdir-p.c (CLEANUP_CWD, CLEANUP): Remove.
22725         (make_dir_parents): Revamp to avoid need for CLEANUP_CWD, CLEANUP.
22726         If the file already exists but is not a directory, don't bother
22727         to try to make its parents.
22728         Close potential file descriptor leak if we can't chdir("/") (!).
22729         Don't always return true if chdir($PWD) fails; return true only
22730         if the requested action was done successfully (except for the
22731         chdir($PWD)).
22732         Don't log final directory unless we actually made it.
22733         Refactor to avoid duplicate code to fix up permissions.
22734         Don't attempt to fix up parent permissions if chdir($PWD) fails.
22735
22736         * lib/strftime.c (my_strftime): Rewrite the previous change slightly,
22737         to make it a bit faster and (I hope) clearer.
22738         * lib/strftime.c (my_strftime): Add support for %:z, %::z, %:::z.
22739         Fix bug in formats like %2N.
22740
22741         * lib/verify.h: New file.
22742
22743 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
22744
22745         Sync from coreutils.
22746         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Check for netinet/in.h.
22747
22748 2005-09-22  Jim Meyering  <jim@meyering.net>
22749
22750         Sync from coreutils.
22751
22752         * m4/lstat.m4 (gl_FUNC_LSTAT):
22753         Use AC_LIBSOURCES to require lstat.c and lstat.h.
22754         Remove obsolete comment.
22755         * m4/xreadlink.m4: Use AC_LIBSOURCES and AC_LIBOBJ.
22756         * m4/xstrtod.m4: Likewise.
22757
22758         * m4/openat.m4 (gl_FUNC_OPENAT): Add openat-die.c.
22759
22760 2005-09-22  Jim Meyering  <jim@meyering.net>
22761
22762         Sync from coreutils.
22763
22764         * lib/backupfile.c: Use ARGMATCH_VERIFY, just in case.
22765
22766         * lib/posixtm.c (posixtime) [lint]: Initialize *all* of tm0, not just
22767         the .tm_year member, since otherwise gcc-4.0 would now warn about
22768         tm_zone, tm_gmtoff, tm_isdst, tm_yday, tm_wday.
22769
22770         * lib/quotearg.c (quotearg_n_options): Change code to be suboptimal, in
22771         order to avoid an unsuppressible warning from gcc on 64-bit systems.
22772
22773         * lib/getdate.y (get_date): Undo part of the 2005-04-04 change, so that
22774         the command "date -d'2005-03-27 +1 day'" succeeds once again, even
22775         when run in a time zone for which daylight savings time is in effect
22776         for the starting date.
22777
22778         * lib/mkdir-p.c (make_dir_parents): Don't let a failed chdir($PWD)
22779         stop us from restricting permissions of just-created absolute-named
22780         directories.
22781         * lib/mkdir-p.c (CLEANUP_CWD): Return *true*, not false when failing
22782         to restore initial working directory.
22783         * lib/mkdir-p.c (make_dir_parents): New parameter:
22784         different_working_dir, to tell caller if/when we change the working
22785         directory and are unable to return to the initial one.
22786         * lib/mkdir-p.h (make_dir_parents): Update prototype.
22787         * lib/mkdir-p.c (CLEANUP_CWD): Change one more `return 1' to
22788         `return false'.  This fixes a bug introduced on 2004-07-30.
22789
22790         * lib/openat.c (fdopendir): Be sure to close the supplied
22791         file descriptor before returning.  This makes our replacement
22792         implementation a little closer to Solaris's, where fdopendir
22793         ties the file descriptor to the returned DIR* pointer.
22794         * lib/openat.c (unlinkat): New function.
22795         * lib/openat.h (unlinkat): Add prototype.
22796         * lib/openat-die.c (openat_save_fail): Rename from openat_save_die.
22797         (openat_restore_fail): Rename from openat_restore_die.
22798         * lib/openat.c, openat.h: Reflect s/_die/_fail/ renaming.
22799
22800         Provide an alternative to exiting immediately upon save_cwd or
22801         restore_cwd failure.  Now, an application can arrange e.g.,
22802         to perform a longjump in that case.
22803         * lib/openat.c: Include dirname.h.
22804         Use IS_ABSOLUTE_FILE_NAME rather than testing for leading slash.
22805         (rpl_openat, fdopendir, fstatat): Call openat_save_die
22806         and openat_restore_die rather than calling error directly.
22807         Don't include "error.h" or "exitfail.h"; they're no longer needed.
22808
22809         * lib/openat-die.c (openat_save_die, openat_restore_die): New file.
22810         * lib/openat.h (openat_save_die, openat_restore_die): Declare and
22811         define.
22812
22813         * lib/strftime.c [FPRINTFTIME] (fprintftime): Provide a new interface:
22814         size_t fprintftime (FILE *fp, char const *fmt, struct tm const *tm,
22815                             int utc, int nanoseconds);
22816         Background:
22817         date should not have to allocate a megabyte of virtual memory to
22818         handle a format argument like +%1048575T.  When implemented with
22819         strftime, it must allocate such a buffer, use strftime to fill it
22820         in, print it, then free it.
22821         With fprintftime, it simply prints everything and exits.
22822         With no need for memory allocation, that's one fewer way to fail.
22823         * lib/strftime.c (my_strftime): Parse the colons of %:::z *after* the
22824         optional field width, not before, so we accept %9:z, not %:9z.
22825         (my_strftime): Be sure to use L_('x') for literals.
22826
22827         * lib/backupfile.c, lib/canon-host.c, lib/canonicalize.c, lib/chown.c:
22828         * lib/cloexec.c, lib/dup-safer.c, lib/dup2.c, lib/euidaccess.c:
22829         * lib/fd-safer.c, lib/fileblocks.c, lib/fopen-safer.c, lib/fsusage.c:
22830         * lib/ftruncate.c, lib/getcwd.c, lib/getcwd.h, lib/getloadavg.c:
22831         * lib/getopt_.h, lib/getpagesize.h, lib/getugroups.c:
22832         * lib/group-member.c, lib/human.h, lib/idcache.c, lib/mkdir-p.c:
22833         * lib/mountlist.c, lib/nanosleep.c, lib/pathmax.h, lib/physmem.c:
22834         * lib/posixver.c, lib/putenv.c, lib/raise.c, lib/safe-read.c:
22835         * lib/same.c, lib/save-cwd.c, lib/setenv.c, lib/settime.c:
22836         * lib/tempname.c, lib/unlinkdir.c, lib/unsetenv.c, lib/userspec.c:
22837         * lib/xgethostname.c, lib/xreadlink.c:
22838         Assume HAVE_UNISTD_H, i.e., include <unistd.h> unconditionally.
22839
22840         * lib/chown.c, lib/cloexec.c, lib/dup-safer.c, lib/dup2.c:
22841         * lib/fsusage.c, lib/getcwd.c, lib/getloadavg.c, lib/mountlist.c:
22842         * lib/openat.h, lib/save-cwd.c, lib/tempname.c:
22843         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
22844         and don't include <sys/file.h>).
22845
22846 2005-09-22  Eric Blake  <ebb9@byu.net>  (tiny change)
22847
22848         Sync from coreutils.
22849
22850         * lib/getloadavg.c (getloadavg) [__CYGWIN__]: Port to cygwin.
22851         [__linux__]: Allocate a big enough buffer for /proc/loadavg.
22852         [!LDAV_DONE]: Avoid unused variable warning.
22853
22854 2005-09-21  Bruno Haible  <bruno@clisp.org>
22855
22856         * lib/unicodeio.h (unicode_to_mb): New declaration.
22857
22858 2005-09-20  Derek Price  <derek@ximbiot.com>
22859
22860         * lib/getaddrinfo.c: Don't include <netdb.h> included from
22861         getaddrinfo.h.
22862
22863 2005-09-20  Bruno Haible  <bruno@clisp.org>
22864
22865         * gnulib-tool: Remove trailing slashes from the values specified for
22866         --source-base, --m4-base, --tests-base, --aux-dir.
22867         Suggested by Simon Josefsson <jas@extundo.com>.
22868
22869 2005-09-20  Bruno Haible  <bruno@clisp.org>
22870
22871         * gnulib-tool (func_all_modules, func_modules_transitive_closure,
22872         func_modules_to_filelist, func_import, func_create_testdir): Make all
22873         sorting results locale-independent, so that gnulib-cache.m4 doesn't
22874         change when gnulib-tool is invoked in a different locale.
22875
22876 2005-09-19  Simon Josefsson  <jas@extundo.com>
22877
22878         * m4/socklen.m4: Fix typo.
22879
22880 2005-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22881
22882         Use a consistent style for including <config.h>.
22883         * lib/__fpending.c, lib/acl.c, lib/argmatch.c, lib/argp-help.c,
22884         lib/argp-parse.c, lib/argp-pvh.c, lib/backupfile.c, lib/basename.c,
22885         lib/c-stack.c, lib/calloc.c, lib/check-version.c, lib/cloexec.c,
22886         lib/closeout.c, lib/copy-file.c, lib/creat-safer.c, lib/cycle-check.c,
22887         lib/dirfd.c, lib/dirname.c, lib/dup-safer.c, lib/dup2.c,
22888         lib/euidaccess.c, lib/exclude.c, lib/exitfail.c, lib/fatal-signal.c,
22889         lib/fd-safer.c, lib/file-type.c, lib/fileblocks.c, lib/filemode.c,
22890         lib/filenamecat.c, lib/findprog.c, lib/fnmatch.c, lib/fopen-safer.c,
22891         lib/free.c, lib/fsusage.c, lib/ftruncate.c, lib/full-write.c,
22892         lib/fwriteerror.c, lib/getaddrinfo.c, lib/getcwd.c, lib/getdelim.c,
22893         lib/getline.c, lib/getlogin_r.c, lib/getndelim2.c, lib/getnline.c,
22894         lib/getopt1.c, lib/getpass.c, lib/group-member.c, lib/hard-locale.c,
22895         lib/hash-pjw.c, lib/hash.c, lib/human.c, lib/idcache.c,
22896         lib/inet_ntop.c, lib/isdir.c, lib/long-options.c, lib/malloc.c,
22897         lib/memcasecmp.c, lib/memcmp.c, lib/memcoll.c, lib/memcpy.c,
22898         lib/memmove.c, lib/mkdir-p.c, lib/modechange.c, lib/mountlist.c,
22899         lib/open-safer.c, lib/physmem.c, lib/pipe-safer.c, lib/pipe.c,
22900         lib/poll.c, lib/posixver.c, lib/progname.c, lib/progreloc.c,
22901         lib/putenv.c, lib/quote.c, lib/quotearg.c, lib/readline.c,
22902         lib/readlink.c, lib/realloc.c, lib/regex.c, lib/rename.c, lib/rmdir.c,
22903         lib/rpmatch.c, lib/safe-read.c, lib/same.c, lib/save-cwd.c,
22904         lib/savedir.c, lib/sig2str.c, lib/strcspn.c, lib/strerror.c,
22905         lib/stripslash.c, lib/strncasecmp.c, lib/strndup.c, lib/strnlen.c,
22906         lib/strnlen1.c, lib/strsep.c, lib/strstr.c, lib/strtod.c,
22907         lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c,
22908         lib/time_r.c, lib/userspec.c, lib/utimecmp.c, lib/version-etc-fsf.c,
22909         lib/version-etc.c, lib/wait-process.c, lib/xalloc-die.c, lib/xgetcwd.c,
22910         lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c, lib/xreadlink.c,
22911         lib/xsetenv.c, lib/xstrndup.c, lib/xstrtoimax.c, lib/xstrtol.c,
22912         lib/xstrtoumax.c, lib/yesno.c:
22913         Standardize inclusion of config.h.
22914         * lib/__fpending.h, lib/dirfd.h, lib/getdate.h, lib/human.h,
22915         lib/inttostr.h:  Removed inclusion of config.h from header files.
22916         * lib/inttostr.c:  Adjusted in-tree users.
22917         * lib/timespec.h: Remove superfluous warning to include config.h.
22918         * lib/atexit.c, lib/chdir-long.c, lib/chown.c, lib/fchown-stub.c,
22919         lib/getgroups.c, lib/gettimeofday.c, lib/lchown.c, lib/lstat.c,
22920         lib/mkdir.c, lib/mkstemp.c, lib/nanosleep.c, lib/openat.c, lib/raise.c,
22921         lib/readtokens0.c, lib/readutmp.c, lib/unlinkdir.c: Guard inclusion of
22922         config.h with HAVE_CONFIG_H.
22923
22924 2005-09-19  Jim Meyering  <jim@meyering.net>
22925
22926         * modules/pathmax (License): Change to LGPL.
22927
22928 2005-09-19  Derek Price  <derek@ximbiot.com>
22929
22930         * config/srclist.txt: glibc's glob.h is now in lib/glob-libc.h.
22931
22932 2005-09-19  Bruno Haible  <bruno@clisp.org>
22933
22934         * gnulib-tool (import): Provide default for --tests-base.
22935
22936 2005-09-19  Bruno Haible  <bruno@clisp.org>
22937
22938         * doc/quote.texi: New file, extracted from gnulib.texi.
22939         * doc/ctime.texi: New file, extracted from gnulib.texi.
22940         * doc/inet_ntoa.texi: New file, extracted from gnulib.texi.
22941         * doc/gnulib-tool.texi: New file, extracted from gnulib.texi.
22942         * doc/gnulib.texi: Include them.
22943
22944 2005-09-18  Bruno Haible  <bruno@clisp.org>
22945
22946         Portability fix.
22947         * gnulib-tool (func_readlink): New function.
22948         (func_ln_if_changed): Use it.
22949
22950 2005-09-18  Bruno Haible  <bruno@clisp.org>
22951
22952         * gnulib-tool: Support --with-tests also with --import.
22953         (func_emit_tests_Makefile_am): Use variables $m4base and $testsbase.
22954         (func_import): Use variables $testsbase and $inctests. Emit a
22955         gl_TESTS_BASE form into gnulib-cache.m4. Create $testsbase/Makefile.am.
22956         Remind the user to add AC_CONFIG_FILES($testsdir/Makefile) and
22957         SUBDIRS += $testsdir.
22958         (func_create_testdir): Update.
22959
22960 2005-09-18  Bruno Haible  <bruno@clisp.org>
22961
22962         * gnulib-tool: Revise --dry-run implementation. Use variable $doit
22963         instead of $dry_run.
22964         (func_cp_if_changed, func_mv_if_changed): Remove functions.
22965         (func_ln_if_changed): Don't handle dry-run here.
22966         (func_import): In dry-run mode, detect more precisely which actions
22967         would be performed, and don't use "...ing" verbs.
22968
22969 2005-09-18  Bruno Haible  <bruno@clisp.org>
22970
22971         * gnulib-tool (func_tmpdir): New function, taken from GNU gettextize.
22972         (func_import): Use join on two temporary files instead of three nested
22973         loops, in order to determine which files are new or old.
22974
22975 2005-09-18  Bruno Haible  <bruno@clisp.org>
22976
22977         * gnulib-tool (func_import): Comment out code that spits out the
22978         new files with --dry-run.
22979
22980 2005-09-18  Bruno Haible  <bruno@clisp.org>
22981
22982         * doc/gnulib.texi (Invoking gnulib-tool): 50% rewritten.
22983
22984 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
22985
22986         * lib/stat-time.h: New file.
22987         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP, ATIME_CMP, CTIME_CMP):
22988         (MTIME_CMP, TIMESPEC_NS): Remove.  Now done by stat-time.h,
22989         in a different way.
22990         (timespec_cmp): New function.
22991         * lib/utimecmp.c: Include stat-time.h.
22992         (SYSCALL_RESOLUTION): Depend on whether various struct stat
22993         members exist, not on the obsolescent ST_MTIM_NSEC.
22994         (utimecmp): Use the new stat-time functions rater than TIMESPEC_NS.
22995
22996 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
22997
22998         * config/srclist.txt: Remove glibc bug 1033 and uncomment mktime.c.
22999
23000 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
23001
23002         * MODULES.html.sh (File system functions): Add stat-time.
23003         * modules/stat-time: New file.
23004         * modules/timespec (Files): Remove m4/st_mtim.m4; this
23005         is now done in a different way, by the stat-time module.
23006         * modules/utimecmp (Depends-on): Add stat-time.
23007
23008 2005-09-15  Paul Eggert  <eggert@cs.ucla.edu>
23009
23010         * m4/st_mtim.m4: Remove.  Superseded by...
23011         * m4/stat-time.m4: New file.
23012         * m4/timespec.m4 (gl_TIMESPEC): Require AC_C_INLINE.
23013         Do not invoke AC_STRUCT_ST_MTIM_NSEC; no longer needed.
23014
23015 2005-09-15  Derek Price  <derek@ximbiot.com>
23016
23017         * m4/strstr.m4 (gl_FUNC_STRSTR): Don't define strstr here.
23018
23019 2005-09-15  Derek Price  <derek@ximbiot.com>
23020
23021         * lib/regex_internal.h: Blank `pure' for GNUC < 3.
23022         * lib/regex_internal.c: Ditto, using this...
23023         (__GNUC_PREREQ): ...new macro.
23024         * lib/regcomp.c, regexec.c: Blank `always_inline' for GNUC < 3.1
23025         using...
23026         (__GNUC_PREREQ): ...this new macro.
23027
23028         * lib/strstr.h: Include string.h. Define strstr as a macro here.
23029
23030 2005-09-15  Derek Price  <derek@ximbiot.com>
23031             Paul Eggert  <eggert@cs.ucla.edu>
23032
23033         * lib/regcomp.c, regexec.c, regex_internal.c: Back out previous
23034         changes, consolidating in...
23035         * lib/regex_internal.h: ...this file.
23036
23037 2005-09-13  Jim Meyering  <jim@meyering.net>
23038
23039         * lib/canon-host.c: Filter through gnu indent and reword comments
23040         slightly.
23041         * lib/canon-host.h (ch_strerror_r): Tweak cpp indentation and spacing.
23042
23043 2005-09-13  Derek Price  <derek@ximbiot.com>
23044
23045         * lib/canon-host.c (canon_host_r): Set *cherror on memory allocation
23046         failure.
23047         Reported by Jim Meyering  <jim@meyering.net>.
23048
23049 2005-09-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
23050
23051         * lib/base64.c: Typo.
23052         (base64_encode): Put b64str in initialized data section.
23053
23054 2005-09-12  Paul Eggert  <eggert@cs.ucla.edu>
23055
23056         Merge glibc and coreutils changes into gnulib, plus a few
23057         extra fixes.
23058         * lib/md5.c: Use #error rather than a string.
23059         (CYCLIC): New macro, from glibc source.  Use it instead of rol.
23060         * lib/md5.h (__GNUC_PREREQ, __THROW): Define if not defined already.
23061         (__attribute__): Define to empty for non recent-GCC.
23062         (__md5_buffer, __md5_finish_ctx, __md5_init_ctx, __md5_process_block):
23063         (__md5_process_bytes, __md5_read_ctx, __md5_stream):
23064         Renamed from their non-__ counterparts, with new macros replacing
23065         them if not _LIBC.  Add __THROW attribute.
23066         (rol): Remove.
23067         (struct md5_ctx): Align buffer if using GCC.
23068         * lib/sha1.h (struct sha1_ctx): Likewise.
23069         * lib/sha1.c (SWAP): Renamed from the NOTSWAP.  All uses changed.
23070         The old name was backwards.
23071         (NOTSWAP): Remove; not used.
23072         (rol): New macro, moved here from md5.h.
23073         (sha1_process_block): Remove a FIXME that doesn't make sense.
23074
23075 2005-09-12  Derek Price  <derek@ximbiot.com>
23076
23077         Return usable errors from canon-host.
23078         * lib/canon-host.h: New file.
23079         * lib/canon-host.c (canon_host): Wrap...
23080         (canon_host_r): ...this new function, which now relies exclusively on
23081         getaddrinfo.
23082         (ch_strerror): New function.
23083         (last_cherror): New global.
23084         * lib/getaddrinfo.c: Move include of getaddrinfo.h first to test
23085         interface.
23086         (getaddrinfo): Add AI_CANONNAME functionality.  Don't do arithmetic on
23087         void *.
23088         (freeaddrinfo): Free ai->ai_canonname when set.
23089
23090 2005-09-12  Derek Price  <derek@ximbiot.com>
23091
23092         Make canon-host require getaddrinfo.
23093         * m4/canon-host.m4 (gl_CANON_HOST): Remove most dependencies.
23094         AC_LIBSOURCE canon-host.h.  Call...
23095         (gl_PREREQ_CANON_HOST): ...this new function, which requires
23096         gl_GETADDRINFO.
23097         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Compile gai_strerror when needed.
23098
23099 2005-09-12  Derek Price  <derek@ximbiot.com>
23100
23101         * modules/canon-host: Add canon-host.h.  Depend on getaddrinfo.  Make
23102         LGPL.
23103         * modules/getaddrinfo: Add link to opengroup spec.  Depend on strdup.
23104
23105 2005-09-12  Derek Price  <derek@ximbiot.com>
23106
23107         * lib/gai_strerror.c: Include config.h when available.  Include
23108         getaddrinfo.h before other headers to test interface.
23109         Reported by Larry Jones <lawrence.jones@ugs.com>.
23110
23111 2005-09-12  Derek Price  <derek@ximbiot.com>
23112             Paul Eggert  <eggert@cs.ucla.edu>
23113
23114         * modules/glob (Files): Add glob-libc.h.
23115
23116 2005-09-12  Derek Price  <derek@ximbiot.com>
23117             Paul Eggert  <eggert@cs.ucla.edu>
23118
23119         * m4/glob.m4 (gl_GLOB_SUBSTITUTE): AC_LIBSOURCES for glob.c,
23120         glob_.h, glob-libc.h.
23121         (gl_PREREQ_GLOB): Remove _SYS_CDEFS_H hack; no longer needed.
23122
23123 2005-09-12  Derek Price  <derek@ximbiot.com>
23124             Paul Eggert  <eggert@cs.ucla.edu>
23125
23126         * lib/glob-libc.h: Renamed from glob_.h.  The new version is
23127         taken from libc's glob.h, except with '#ifdef __GLOB_GNULIB'
23128         protecting things that should be done only in gnulib contexts.
23129         * lib/glob_.h: New file, containing only the glob things needed for
23130         gnulib.
23131         (GLOB_PREFIX): Remove.  All uses changed to look for __GLOB_GNULIB.
23132         (__GLOB_CONCAT, __GLOB_XCONCAT, __GLOB_ID): Remove; no longer needed.
23133         (glob, globfree, glob_pattern_p): Now defined simply in terms of
23134         rpl_glob, rpl_globfree, rpl_glob_pattern_p.
23135         (__GLOB_GNULIB): New macro, to keep the glob.h changes clearer
23136         and to respect the namespace rules better.
23137
23138 2005-09-08  Simon Josefsson  <jas@extundo.com>
23139
23140         * modules/socklen: New file.
23141
23142 2005-09-08  Simon Josefsson  <jas@extundo.com>
23143
23144         * m4/socklen.m4: New file.
23145
23146 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
23147
23148         * modules/utimens (Files): Add m4/utimbuf.m4, since
23149         m4/utimens.m4 requires gl_CHECK_TYPE_STRUCT_UTIMBUF.
23150         Reported by Sergey Poznyakoff.
23151
23152 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
23153
23154         * lib/glob.c (glob, globfree, __glob_pattern_p): Use old-style function
23155         definitions, since that's the preferred style in glibc.
23156         Fix a minor spacing issue, and update copyright notice to match
23157         glibc's.
23158
23159 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
23160
23161         * config/srclist.txt: Remove glibc bug 1061; it's been fixed.
23162
23163 2005-09-06  Simon Josefsson  <jas@extundo.com>
23164
23165         * lib/getpass.c (getpass): Fix typo, test for HAVE_TCSETATTR and not
23166         TCSETATTR.  Reported by Derek Price <derek@ximbiot.com>.
23167
23168 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
23169
23170         * lib/regex_internal.h (bitset_not): Add parens to avoid gcc -Wall
23171         warning.
23172
23173 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
23174
23175         * config/srclist.txt: Add glibc bug 1302.
23176
23177 2005-09-05  Paul Eggert  <eggert@cs.ucla.edu>
23178
23179         Change bitset word type from unsigned int to unsigned long int,
23180         as this has better performance on typical 64-bit hosts.
23181         Port bitset code to hosts with unusual word sizes.
23182         * lib/regcomp.c (build_equiv_class, build_charclass, build_range_exp):
23183         (build_collating_symbol):
23184         Prefer bitset to re_bitset_ptr_t in prototypes, when the actual
23185         argument is a bitset.  This is merely a style issue, but it makes
23186         it clearer that an entire array is expected.
23187         (re_compile_fastmap_iter, init_dfa, init_word_char, optimize_subexps):
23188         * lib/regcomp.c (lower_subexp, parse_bracket_exp, built_charclass_op):
23189         Port to the case where bitset_word is not the same as unsigned int.
23190         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
23191         (bitset_not, bitset_merge, bitset_set_all, bitset_mask):
23192         Likewise.
23193         * lib/regexec.c (check_dst_limits_calc_pos_1,
23194         check_subexp_matching_top):
23195         (build_trtable, group_nodes_into_DFAstates):
23196         Likewise.
23197         * lib/regcomp.c (re_compile_fastmap_iter, utf8_sb_map, optimize_utf8):
23198         Don't assume that SBC_MAX is a multiple of BITSET_WORD_BITS.
23199         * lib/regex_internal.h (bitset_set_all, bitset_not): Likewise.
23200         * lib/regexec.c (group_nodes_into_DFAstates): Likewise.
23201         * lib/regcomp.c (utf8_sb_map): Don't assume UINT_MAX == 0xffffffff.
23202         * lib/regcomp.c (optimize_subexps, lower_subexp):
23203         Work even if bitset_word has holes in its bitwise representation.
23204         * lib/regex_internal.h (BITSET_WORD_BITS): Likewise.
23205         * lib/regexec.c (check_dst_limits_calc_pos_1,
23206         check_subexp_matching_top):
23207         Likewise.
23208         * lib/regex_internal.c (re_string_reconstruct):
23209         Don't assume UCHAR_MAX == 255.
23210         * lib/regex_internal.h (bitset_set_all): Likewise.
23211         * lib/regex_internal.h (BITSET_WORD_BITS): Renamed from UINT_BITS.
23212         All uses changed.
23213         (BITSET_WORDS): Renamed from BITSET_UINTS.  All uses changed.
23214         (bitset_word): New type, replacing 'unsigned int' for bitset uses.
23215         All uses changed.
23216         (BITSET_WORD_MAX): New macro.
23217         (bitset_set, bitset_clear, bitset_contain, bitset_empty):
23218         (bitset_set_all, bitset_copy):  Now inline functions, not macros.
23219         (bitset_empty, bitset_copy):
23220         Prefer sizeof (bitset) to multiplying it out ourselves.
23221         (bitset_not_merge): Remove; unused.
23222         (bitset_contain): Return bool, not unsigned int with one bit on.
23223         All callers changed.
23224         * lib/regexec.c (build_trtable): Don't assume bitset has no stricter
23225         alignment than re_node_set; do this by defining a new internal
23226         type struct dests_alloc and using it to allocate memory.
23227
23228 2005-09-05  Bruno Haible  <bruno@clisp.org>
23229
23230         * gnulib-tool (func_import): Fix comparison in handling of symbolic
23231         links.
23232
23233 2005-09-04  Martin Lambers  <marlam@marlam.de>  (tiny change)
23234
23235         * modules/size_max (Makefile.am): Add size_max.h
23236
23237 2005-09-04  Derek Price  <derek@ximbiot.com>
23238
23239         * gnulib-tool (func_import): Fix reversed $symbolic logic.
23240
23241 2005-09-03  Simon Josefsson  <jas@extundo.com>
23242
23243         * gnulib-tool: Fix typo.
23244
23245 2005-09-03  Simon Josefsson  <jas@extundo.com>
23246
23247         * config/srclist.txt: Add glibc bug 1293.
23248
23249 2005-09-03  Derek Price  <derek@ximbiot.com>
23250
23251         * m4/getlogin_r (gl_GETLOGIN_R): Fix cut & paste error.
23252         From Larry Jones <lawrence.jones@ugs.com>.
23253
23254 2005-09-02  Simon Josefsson  <jas@extundo.com>
23255
23256         * modules/socklen: New file.
23257
23258 2005-09-02  Simon Josefsson  <jas@extundo.com>
23259
23260         * modules/havelib: New module.
23261
23262         * modules/gettext, modules/iconv, modules/lock, modules/readline:
23263         Use havelib.
23264
23265 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
23266
23267         Check for arithmetic overflow when calculating sizes, to prevent
23268         some buffer-overflow issues.  These patches are conservative, in the
23269         sense that when I couldn't determine whether an overflow was possible,
23270         I inserted a run-time check.
23271         * lib/regex_internal.h (re_xmalloc, re_xrealloc, re_x2realloc): New
23272         macros.
23273         (SIZE_MAX) [!defined SIZE_MAX]: New macro.
23274         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc):
23275         (re_xnrealloc, re_x2nrealloc): New inline functions.
23276         * lib/regcomp.c (init_dfa, analyze, build_range_exp,
23277         parse_bracket_exp):
23278         (build_equiv_class, build_charclass): Check for arithmetic overflow
23279         in size expression calculations.
23280         * lib/regex_internal.c (re_string_realloc_buffers):
23281         (build_wcs_upper_buffer, re_node_set_add_intersect):
23282         (re_node_set_init_union, re_node_set_insert, re_node_set_insert_last):
23283         (re_dfa_add_node, register_state): Likewise.
23284         * lib/regexec.c (re_search_stub, re_copy_regs, re_search_internal):
23285         (prune_impossible_nodes, push_fail_stack, set_regs, check_arrival):
23286         (build_trtable, extend_buffers, match_ctx_init, match_ctx_add_entry):
23287         (match_ctx_add_subtop, match_ctx_add_sublast): Likewise.
23288
23289 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
23290
23291         * modules/inttostr (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
23292         m4/ulonglong.m4.  Problem reported by Martin Lambers.
23293
23294 2005-09-02  Bruno Haible  <bruno@clisp.org>
23295
23296         Support for lib vs. lib64 distinction on biarch platforms.
23297         * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): New macro.
23298         (AC_LIB_PREFIX): Require it. Use $acl_libdirstem instead of 'lib'.
23299         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Likewise.
23300
23301 2005-09-02  Bruno Haible  <bruno@clisp.org>
23302
23303         * gnulib-tool (import): In the other first-use case, provide defaults
23304         as well.
23305
23306 2005-09-02  Bruno Haible  <bruno@clisp.org>
23307
23308         * config/srclist.txt: lib-link.m4 and lib-prefix.m4 currently have
23309         patches not yet found in the latest gettext release.
23310
23311 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
23312
23313         * lib/glob.c (GET_LOGIN_NAME_MAX): Renamed from LOGIN_NAME_MAX,
23314         to avoid a collision with bits/local_lim.h in glibc.
23315         All uses changed.  Problem reported by Dmitry V. Levin in
23316         <http://sources.redhat.com/bugzilla/show_bug.cgi?id=1060>.
23317
23318         * lib/regex_internal.c (build_wcs_upper_buffer): Fix portability
23319         bugs in int versus size_t comparisons.
23320         (re_string_context_at): Fix bug where the code assumed that
23321         Idx is signed.
23322
23323         Use bool where appropriate.
23324         * lib/regcomp.c (re_set_fastmap): ICASE arg is bool, not int.
23325         All callers changed.
23326         (calc_eclosure_iter): Likewise, for ROOT arg.
23327         (parse_bracket_element): Likewise, for ACCEPT_HYPHEN arg.
23328         (build_charclass_op): Likewise, for NON_MATCH arg.
23329         * lib/regex_internal.c (re_string_allocate, re_string_construct):
23330         (re_string_construct_common): Likewise, for ICASE arg.
23331         * lib/regexec.c (re_search_2_stub, re_search_stub):
23332         Likewise, for RET_LEN arg.
23333         (check_matching): Likewise, for FL_LONGEST_MATCH arg.
23334         (set_regs): Likewise, for FL_BACKTRACK arg.
23335         * lib/regcomp.c (re_compile_fastmap_iter, optimize_utf8):
23336         (duplicate_node_closure, calc_inveclosure, calc_eclosure):
23337         (calc_eclosure_iter, parse_bracket_exp):
23338         Use bool for internal variables that are booleans.
23339         * lib/regexec.c (re_search_internal, check_matching,
23340         proceed_next_node):
23341         (set_regs, build_sifted_states, sift_states_bkref):
23342         (check_arrival_add_next_nodes, check_arrival_expand_ecl_sub):
23343         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
23344         (find_collation_sequence_value):
23345         Likewise.
23346         * lib/regex_internal.c (re_node_set_insert, re_node_set_insert_last):
23347         (re_node_set_compare):
23348         Return bool, not int. All callers changed.
23349         * lib/regexec.c (check_halt_node_context, check_dst_limits):
23350         (build_trtable, check_node_accept): Likewise.
23351         * lib/regex_internal.h: Include stdbool.h.
23352
23353         Fix bugs uncovered when converting to bool.
23354         * lib/regcomp.c (calc_eclosure_iter): Check for storage allocation
23355         failure instead of charging ahead blindly.
23356         * lib/regex_internal.c (register_state): Likewise.
23357         * lib/regexec.c (re_search_2_stub): Use simpler method than boolean
23358         for freeing internal storage.
23359         (group_nodes_into_DFA_states): Use unsigned int, not int, for
23360         bitset pieces used as boolean, to avoid undefined behavior
23361         on hosts that do int overflow checking.
23362
23363 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
23364
23365         * config/srclist.txt: Add glibc bugs 1285-1287.
23366
23367 2005-09-01  Jim Meyering  <jim@meyering.net>
23368
23369         * m4/lchown.m4: Require gl_FUNC_CHOWN, for the definition of
23370         CHOWN_MODIFIES_SYMLINK, which is used by lchown.c.
23371         Require gl_STAT_MACROS, too.
23372
23373 2005-09-01  Bruno Haible  <bruno@clisp.org>
23374
23375         * gnulib-tool (import): In the first-use case, provide defaults.
23376
23377 2005-09-01  Bruno Haible  <bruno@clisp.org>
23378
23379         * gnulib-tool (func_import): Remove the .tmp files.
23380
23381 2005-09-01  Bruno Haible  <bruno@clisp.org>
23382
23383         * gnulib-tool (func_import): Fix handling of symbolic links.
23384
23385 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
23386
23387         On 64-bit hosts (where size_t is 64 bits and int is 32 bits), the
23388         old glibc regex code mishandles strings longer than 2**31 bytes.
23389         This patch fixes this when the regex code is used in gnulib
23390         (i.e., outside glibc).
23391
23392         This patch should not affect the use of the regex code inside
23393         glibc.  No doubt this problem also needs to be handled for glibc
23394         as well, but the result will be an incompatible change to the
23395         glibc ABI, and the old ABI will have to be supported too.  That
23396         can be the the subject for another patch.
23397
23398         * lib/regex.h (_REGEX_LARGE_OFFSETS): New feature-test macro,
23399         governing whether the rest of this patch is active.  By default,
23400         the macro is disabled and the patch has no effect.
23401         (regoff_t) [defined _REGEX_LARGE_OFFSETS]: Define to off_t, not int.
23402         (__re_idx_t, __re_size_t, __re_long_size_t): New types.
23403         (struct re_pattern_buffer, re_search, re_search_2, re_match):
23404         (re_match_2, re_set_registers): Use the new types.
23405         * lib/regex_internal.h (Idx, re_hashval_t): New types.
23406         (REG_MISSING, REG_ERROR, REG_VALID_INDEX, REG_VALID_NONZERO_INDEX):
23407         New macros.
23408         (re_node_set, re_charset_t, re_token_t, re_string_realloc_buffers):
23409         (re_string_context_at, bin_tree_t, re_dfastate_t):
23410         (struct re_state_table_entry, state_array_t, re_sub_match_last_t):
23411         (re_sub_match_top_t, re_match_context_t, re_sift_context_t):
23412         (struct re_fail_stack_ent_t, struct re_fail_stack_t, struct re_dfa_t):
23413         (re_string_char_size_at, re_string_wchar_at):
23414         (re_string_elem_size_at):
23415         Use the new types and macros to port to 64-bit hosts.
23416         Use unsigned types for internal values, so that the code
23417         mostly works even for arrays larger than SSIZE_MAX.
23418         * lib/regcomp.c (re_compile_internal, init_dfa, duplicate_node):
23419         (search_duplicated_node, calc_eclosure_iter, fetch_number):
23420         (parse_reg_exp, parse_branch, parse_expression, parse_sub_exp):
23421         (build_equiv_class, build_charclass, re_compile_fastmap_iter):
23422         (free_dfa_content, create_initial_state, optimize_utf8, analyze):
23423         (optimize_subexps, calc_first, link_nfa_nodes, duplicate_node_closure):
23424         (calc_inveclosure, parse_dup_op, build_range_exp):
23425         (build_collating_symbol, parse_bracket_exp, build_charclass_op):
23426         (fetch_number, create_token_tree, mark_opt_subexp):
23427         Likewise.
23428         * lib/regex_internal.c (re_string_construct_common,
23429         create_ci_newstate):
23430         (create_cd_newstate, re_string_allocate, re_string_construct):
23431         (re_string_realloc_buffers, build_wcs_upper_buffer):
23432         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
23433         (re_string_reconstruct, re_string_peek_byte_case):
23434         (re_string_fetch_byte_case, re_string_context_at):
23435         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
23436         (re_node_set_init_copy, re_node_set_add_intersect):
23437         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
23438         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
23439         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
23440         (re_acquire_state, re_acquire_state_context, register_state):
23441         Likewise.
23442         * lib/regex.c (match_ctx_init, match_ctx_add_entry,
23443         search_cur_bkref_entry):
23444         (match_ctx_add_subtop, match_ctx_add_sublast, sift_ctx_init):
23445         (re_search_internal, re_search_2_stub, re_search_stub)
23446         (re_copy_regs, check_matching, check_halt_state_context, update_regs):
23447         (push_fail_stack, sift_states_iter_mb, build_sifted_states):
23448         (update_cur_sifted_state, check_dst_limits):
23449         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
23450         (check_subexp_limits, sift_states_bkref, merge_state_array):
23451         (check_subexp_matching_top, get_subexp, get_subexp_sub):
23452         (find_subexp_node, check_arrival, check_arrival_add_next_nodes):
23453         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
23454         (expand_bkref_cache, check_node_accept_bytes):
23455         (group_nodes_into_DFAstates, check_node_accept, regexec, re_match):
23456         (re_search, re_match_2, re_search_2, prune_impossible_nodes):
23457         (acquire_init_state_context, check_halt_node_context):
23458         (proceed_next_node, pop_fail_stack, set_regs, free_fail_stack_return):
23459         (sift_states_backward, clean_state_log_if_needed):
23460         (sub_epsilon_src_nodes, add_epsilone_src_nodes, merge_state_with_log):
23461         (find_recover_state, transit_state_sb, transit_state_mb):
23462         (transit_state_bkref, build_trtable, match_ctx_clean):
23463         Likewise.
23464         * lib/regcomp.c (parse_dup_op): Add an extra test if Idx is unsigned,
23465         to work around an assumption that REG_MISSING is negative.
23466
23467         * lib/regcomp.c (re_comp) [defined _REGEX_RE_COMP || defined _LIBC]:
23468         (seek_collating_symbol_entry) [defined _LIBC]:
23469         (lookup_collation_sequence_value) [defined _LIBC]:
23470         (build_range_exp, build_collating_symbol) [defined _LIBC]:
23471         Use prototypes rather than old-style function definitions.
23472         * lib/regexec.c (re_exec) [defined _REGEX_RE_COMP || defined _LIBC]:
23473         (transit_state_sb) [0]:
23474         (find_collation_sequence_value) [defined _LIBC]: Likewise.
23475
23476         * lib/regexec.c (re_search_internal): Simplify update of rm_so and
23477         rm_eo.
23478
23479         * lib/regcomp.c (re_compile_fastmap_iter, init_dfa, init_word_char):
23480         (optimize_subexps, lower_subexp):
23481         Don't assume 1<<31 has defined behavior on hosts with 32-bit int,
23482         since the signed shift might overflow.  Use 1u<<31 instead.
23483         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
23484         Likewise.
23485         * lib/regexec.c (check_dst_limits_calc_pos_1,
23486         check_subexp_matching_top): Likewise.
23487
23488         * lib/regcomp.c (optimize_subexps, lower_subexp):
23489         Use CHAR_BIT rather than 8, for clarity.
23490         * lib/regexec.c (check_dst_limits_calc_pos_1):
23491         (check_subexp_matching_top): Likewise.
23492         * lib/regcomp.c (init_dfa): Make table_size unsigned, so that we don't
23493         have to worry about portability issues when shifting it left.
23494         Remove no-longer-needed test for table_size > 0.
23495         * lib/regcomp.c (parse_sub_exp): Do not shift more bits than there are
23496         in a word, as the resulting behavior is undefined.
23497         * lib/regexec.c (check_dst_limits_calc_pos_1): Likewise;
23498         in one case, a <= should have been an <, and in another case the
23499         whole test was missing.
23500         * lib/regex_internal.h (BYTE_BITS): Remove.  All uses changed to
23501         the standard name CHAR_BIT.
23502         * lib/regexec.c (match_ctx_add_entry): Don't assume that ~0 == -1;
23503         this is not true on one's complement and signed-magnitude hosts.
23504
23505         * lib/regex_internal.h (re_sub_match_top_t): Remove unused member
23506         next_last_offset.
23507         (struct re_dfa_t): Remove unused member states_alloc.
23508         * lib/regcomp.c (init_dfa): Don't initialize unused members.
23509
23510 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
23511
23512         * m4/regex.m4 (gl_REGEX): Require AC_SYS_LARGEFILE, Define
23513         _REGEX_LARGE_OFFSETS).  Test for regoff_t/off_t bug in 64-bit
23514         and large-file glibc and in 32-bit large-file Solaris.
23515
23516 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
23517
23518         * lib/regex_internal.c (re_string_reconstruct): Don't assume buffer
23519         lengths fit in regoff_t; this isn't true if regoff_t is the same
23520         width as size_t.
23521         * lib/regex.c (re_search_internal): 5th arg is LAST_START
23522         (= START + RANGE) instead of RANGE.  This avoids overflow
23523         problems when regoff_t is the same width as size_t.
23524         All callers changed.
23525         (re_search_2_stub): Check for overflow when adding the
23526         sizes of the two strings.
23527         (re_search_stub): Check for overflow when adding START
23528         to RANGE; if it occurs, substitute the extreme value.
23529
23530 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
23531
23532         * config/srclist.txt: Add glibc bugs 1273, 1278-1282, 1284.
23533
23534 2005-08-31  Jim Meyering  <jim@meyering.net>
23535
23536         * lib/regcomp.c (search_duplicated_node): Make first pointer arg
23537         a pointer-to-const.
23538         * lib/regex_internal.c (create_ci_newstate, create_cd_newstate):
23539         (register_state): Likewise.
23540         * lib/regexec.c (search_cur_bkref_entry, check_dst_limits):
23541         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
23542         (group_nodes_into_DFAstates): Likewise.
23543
23544 2005-08-31  Jim Meyering  <jim@meyering.net>
23545
23546         * check-module: Add a FIXME comment.
23547
23548 2005-08-31  Eric Blake  <ebb9@byu.net>
23549
23550         * modules/unistd-safer (Files): Add unistd--.h.
23551         * modules/stdio-safer (Files): Add stdio--.h.
23552
23553 2005-08-31  Derek Price  <derek@ximbiot.com>
23554
23555         * lib/getdelim.c (getdelim): Return EOF on EOF.
23556         Reported by Larry Jones <lawrence.jones@ugs.com>.
23557
23558 2005-08-31  Bruno Haible  <bruno@clisp.org>
23559
23560         Avoid unnecessary diffs in the generated lib/Makefile.am.
23561         * gnulib-tool (func_emit_lib_Makefile_am): Don't write the cmd into
23562         the generated files.
23563         (func_import): Don't set cmd.
23564
23565 2005-08-31  Bruno Haible  <bruno@clisp.org>
23566
23567         * lib/strstr.c: Include <stddef.h>, for NULL.
23568         * lib/strcasestr.c: Likewise.
23569         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
23570
23571 2005-08-31  Bruno Haible  <bruno@clisp.org>
23572
23573         * gnulib-tool: New option --macro-prefix.
23574         (func_import): Use macro_prefix.
23575         (import): Handle option --macro-prefix.
23576
23577 2005-08-31  Bruno Haible  <bruno@clisp.org>
23578
23579         * gnulib-tool (import): Rename most ac_* variables to cached_*.
23580         Also use new variables cached_lgpl, cached_libtool.
23581
23582 2005-08-31  Bruno Haible  <bruno@clisp.org>
23583
23584         * gnulib-tool (func_import): Require AC_GNU_SOURCE etc. instead of
23585         always instantiating them.
23586
23587 2005-08-31  Bruno Haible  <bruno@clisp.org>
23588
23589         * gnulib-tool (func_import): Read the previous cached settings
23590         from gnulib-cache.m4 and gnulib-comp.m4. Remove files that were
23591         earlier added by gnulib but are now dropped. Warn when a gnulib file
23592         overwrites a non-gnulib file.
23593
23594 2005-08-31  Bruno Haible  <bruno@clisp.org>
23595
23596         * gnulib-tool (func_import): Generate two files gnulib-cache.m4 and
23597         gnulib-comp.m4 instead of a single gnulib.m4, to make it easy for
23598         projects that don't keep autogenerated files in CVS. Put into
23599         actioncmd only the specified modules, not the transitive closure.
23600
23601 2005-08-31  Bruno Haible  <bruno@clisp.org>
23602
23603         * gnulib-tool (func_import): Fix defaulting of $libname and $libtool.
23604         Create directories that shall be filled.
23605         (import): Don't look for gl_* macros in configure.ac. Recurse across
23606         all directories containing a gnulib-cache.m4 files, if meaningful.
23607
23608 2005-08-31  Bruno Haible  <bruno@clisp.org>
23609
23610         * gnulib-tool (func_import): Emit also a stub for gl_LIBTOOL.
23611         (import): Set seen_libtool when we see gl_LIBTOOL.
23612
23613 2005-08-31  Bruno Haible  <bruno@clisp.org>
23614
23615         * gnulib-tool (func_import): Also copy m4/gnulib-tool.m4. Omit
23616         declaration macro definitions from generated gnulib.m4.
23617
23618 2005-08-30  Oskar Liljeblad  <oskar@osk.mine.nu>
23619
23620         * lib/iconvme.h: Add prototype for iconv_alloc.
23621
23622 2005-08-29  Simon Josefsson  <jas@extundo.com>
23623
23624         * lib/iconvme.c: Fix errno.
23625
23626 2005-08-29  Bruno Haible  <bruno@clisp.org>
23627
23628         * gnulib-tool: Enclose all occurrences of $destdir in "...", so
23629         that it works when the directory contains spaces.
23630
23631 2005-08-29  Bruno Haible  <bruno@clisp.org>
23632
23633         * gnulib-tool (import): Avoid unnecessary spaces in $avoidlist.
23634
23635 2005-08-29  Bruno Haible  <bruno@clisp.org>
23636
23637         * gnulib-tool (func_import): Emit more comments into gnulib.m4.
23638         Emit more advice.
23639
23640 2005-08-29  Bruno Haible  <bruno@clisp.org>
23641         and Stepan Kasal  <kasal@ucw.cz>
23642
23643         * check-module: If more parameters are given, check each of them
23644         separately; add more exceptions, as noted by Jim Meyering.
23645         (check_module): New procedure.
23646         (%exempt_header): Now contains all exceptions.
23647
23648 2005-08-29  Ben Pfaff  <blp@cs.stanford.edu>
23649
23650         * modules/byteswap (Makefile.am): Fix rule to not assume GNU make.
23651
23652 2005-08-29  Oskar Liljeblad  <oskar@osk.mine.nu>
23653
23654         * lib/iconvme.c: Split iconv_string into iconv_alloc.
23655
23656 2005-08-28  Bruno Haible  <bruno@clisp.org>
23657
23658         * m4/gnulib-tool.m4: New file.
23659
23660 2005-08-27  Jim Meyering  <jim@meyering.net>
23661
23662         * modules/unistd-safer (Files): Add pipe-safer.c.
23663         * modules/fcntl-safer (Files): Add creat-safer.c.
23664
23665 2005-08-27  Jim Meyering  <jim@meyering.net>
23666
23667         * m4/stdlib-safer.m4: New file.  From coreutils.
23668         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add stdio--.h.
23669         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Add creat-safer.c to the
23670         AC_LIBSOURCES list and arrange to compile it via AC_LIBOBJ.
23671         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise, add pipe-safer.c.
23672         Add pipe-safer.c and unistd--.h to the AC_LIBSOURCES list.
23673
23674 2005-08-27  Jim Meyering  <jim@meyering.net>
23675
23676         * lib/fopen-safer.c: Merge minor changes from coreutils.
23677         * lib/dup-safer.c: Likewise.
23678         * lib/fd-safer.c: Likewise.
23679
23680         Merge from coreutils.
23681         * lib/stdio--.h: New file.
23682         * lib/stdlib--.h: New file.
23683         * lib/mkstemp-safer.c: New file.
23684
23685         GNU tar needs these.
23686         * lib/pipe-safer.c: New file.
23687         * lib/creat-safer.c: New file.
23688         * lib/fcntl--.h (creat): Define to creat_safer.
23689         * lib/fcntl-safer.h: Include <sys/types.h> and declare creat_safer.
23690         * lib/unistd--.h (pipe): Define to pipe_safer.
23691         * lib/unistd-safer.h: Declare pipe_safer.
23692
23693 2005-08-26  Simon Josefsson  <jas@extundo.com>
23694
23695         * lib/getpass.c: Use _WIN32 instead of WIN32, suggested by Bruno
23696         Haible <bruno@clisp.org>.
23697
23698 2005-08-26  Paul Eggert  <eggert@cs.ucla.edu>
23699
23700         * lib/regex_internal.h: Remove all references to
23701         RE_NO_INTERNAL_PROTOTYPES; no longer neeeded now that we assume C89
23702         or better.
23703         (bitset_not, bitset_merge, bitset_not_merge):
23704         (bitset_mask, re_string_allocate, re_string_construct):
23705         (re_string_reconstruct, re_string_destruct, re_string_elem_size_at):
23706         (re_string_char_size_at, re_string_wchar_at, re_string_peek_byte_case):
23707         (re_string_fetch_byte_case, re_node_set_alloc, re_node_set_init_1):
23708         (re_node_set_init_2, re_node_set_init_copy, re_node_set_add_intersect):
23709         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
23710         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
23711         (re_node_set_remove_at, re_dfa_add_node, re_acquire_state):
23712         (re_acquire_state_context):
23713         Remove unnecessary forward decls.
23714         (re_string_char_size_at, re_string_wchar_at, re_string_elem_size_at):
23715         Put __attribute at function definition,
23716         now that the function decl has been removed.
23717         * lib/regex_internal.c (re_string_peek_byte_case):
23718         (re_string_fetch_byte_case, re_node_set_compare, re_node_set_contains):
23719         Likewise.
23720
23721 2005-08-25  Stepan Kasal  <kasal@ucw.cz>
23722
23723         * m4/regex.m4: Add AC_PREREQ(2.50).
23724         (gl_REGEX): If --with-included-regex was given, skip the autodetection.
23725
23726 2005-08-25  Simon Josefsson  <jas@extundo.com>
23727
23728         * m4/getpass.m4: Check for termios.h, tcgetattr, tcsetattr, and
23729         __fsetlocking.
23730
23731 2005-08-25  Simon Josefsson  <jas@extundo.com>
23732
23733         * lib/getpass.c: Add WIN32 implementation.  Conditionalize use of
23734         termios.h, tcgetattr, tcsetattr and __fsetlocking.  Remove some
23735         GLIBC specific code.
23736
23737 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
23738
23739         Make regex safe for g++.  This fixes one real bug (an "err"
23740         that should have been "*err").  g++ problem reported by
23741         Sam Steingold.
23742         * lib/regex_internal.h (re_calloc): New macro, consistent with
23743         re_malloc etc.  All callers of calloc changed to use re_calloc.
23744         * lib/regex_internal.c (build_wcs_upper_buffer): Return reg_errcode_t,
23745         not int.  All callers changed.
23746         * lib/regcomp.c (re_compile_fastmap_iter): Don't use
23747         alloca (mb_cur_max); just use an array of size MB_LEN_MAX.
23748         * lib/regexec.c (push_fail_stack): Use re_realloc, not realloc.
23749         (find_recover_state): Change "err" to "*err"; this fixes what
23750         appears to be a real bug.
23751         (check_arrival_expand_ecl_sub): Be consistent about reg_errcode_t
23752         versus int.
23753
23754 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
23755
23756         * modules/regex (Depends-on): Add malloc, since the code
23757         assumes that !malloc(0) means failure.
23758
23759 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
23760
23761         * lib/regexec.c (set_regs): Don't alloca with an unbounded size.
23762
23763         alloca modernization/simplification for regex.
23764         * lib/regex.c: Remove portability cruft for alloca.  This no longer
23765         needs to be at the start of the file, and can be moved into
23766         regex_internal.h and simplified.
23767         * lib/regex_internal.h: Include <alloca.h>.
23768         (__libc_use_alloca) [!defined _LIBC]: New macro.
23769         * lib/regexec.c (build_trtable): Remove "#ifdef _LIBC", since the code
23770         now works outside glibc.
23771
23772 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>