Fix syntax of --keyword option.
[pspp] / ChangeLog
1 2008-05-19  Bruno Haible  <bruno@clisp.org>
2
3         * modules/propername (Notice, configure.ac): Put quoted "..." into
4         --keyword option.
5         * lib/propername.h: Update comments accordingly.
6         Reported by Eric Blake.
7
8 2008-05-19  Martin Lambers  <marlam@marlam.de>  (tiny change)
9
10         * modules/getpass-gnu (Depends-on): Add fseeko.
11
12 2008-05-19  Simon Josefsson  <simon@josefsson.org>
13
14         * modules/base64-tests: New file.
15
16 2008-05-19  Bo Borgerson <gigabo@gmail.com>
17
18         * lib/base64.c (base64_decode_ctx): If a decode context structure
19         was passed in use it to ignore newlines.  If a context structure
20         was _not_ passed in, continue to treat newlines as garbage (this
21         is the historical behavior).  Formerly base64_decode.
22         (base64_decode_alloc_ctx): Formerly base64_decode_alloc.  Now
23         takes a decode context structure.
24         * lib/base64.h (base64_decode): Macro for four-argument calls.
25         (base64_decode_alloc): Likewise.
26         * lib/base64.c (base64_decode_ctx): If a decode context structure
27         was passed in use it to ignore newlines.  If a context structure
28         was _not_ passed in, continue to treat newlines as garbage (this
29         is the historical behavior).  Formerly base64_decode.
30         (base64_decode_alloc_ctx): Formerly base64_decode_alloc.  Now
31         takes a decode context structure.
32         * lib/base64.h (base64_decode): Macro for four-argument calls.
33         (base64_decode_alloc): Likewise.
34
35 2008-05-19  Jim Meyering  <meyering@redhat.com>
36
37         avoid a warning from gcc
38         * lib/trim.c (IF_LINT): Define.
39         (trim2): Use it to void a "may be used uninitialized" warning.
40
41         Fix doc typo.
42         * doc/glibc-functions/getpass.texi (getpass): s/PATH_MAX/PASS_MAX/.
43
44 2008-05-19  Bruno Haible  <bruno@clisp.org>
45
46         * doc/glibc-functions/getpass.texi: Document limits of other
47         implementations.
48
49 2008-05-19  Simon Josefsson  <simon@josefsson.org>
50             Bruno Haible <bruno@clisp.org>
51
52         * doc/glibc-functions/getpass.texi: Document gnulib implementation.
53
54 2008-05-18  Bruno Haible  <bruno@clisp.org>
55
56         * modules/propername: New file, from GNU gettext.
57         * lib/propername.h: New file, from GNU gettext.
58         * lib/propername.c: New file, from GNU gettext.
59         * MODULES.html.sh (Internationalization functions): Add propername.
60
61 2008-05-16  Jim Meyering  <meyering@redhat.com>
62             Bruno Haible  <bruno@clisp.org>
63
64         Avoid some warnings from "gcc -Wshadow".
65         * lib/vasnprintf.c (exp, remainder): Define to different identifiers.
66
67 2008-05-15  Eric Blake  <ebb9@byu.net>
68
69         Extend previous patch to cygwin 1.7.0.
70         * m4/memmem.m4 (gl_FUNC_MEMMEM): When cross-compiling, assume a
71         fast implementation in cygwin >= 1.7.0.
72         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
73         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
74
75 2008-05-15  Bruno Haible  <bruno@clisp.org>
76
77         * m4/memmem.m4 (gl_FUNC_MEMMEM): When cross-compiling, assume a fast
78         implementation in glibc >= 2.9.
79         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
80         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
81
82 2008-05-15  Bruno Haible  <bruno@clisp.org>
83
84         * MODULES.html.sh (Internationalization functions): Remove linebreak.
85         (Unicode string functions): Add unilbrk/*.
86         Reported by Karl Berry.
87
88 2008-05-15  Eric Blake  <ebb9@byu.net>
89
90         Fix violation of <stdbool.h> replacement in regex.
91         * lib/regcomp.c (re_compile_internal): Avoid implicit cast to bool.
92         * lib/regexec.c (re_search_internal): Likewise.
93         Reported by Heinrich Mislik <Heinrich.Mislik@univie.ac.at>.
94
95 2008-05-15  Jim Meyering  <meyering@redhat.com>
96
97         avoid distracting test output when git or cvs is not found
98         * tests/test-vc-list-files-cvs.sh: Suppress 'init' error output.
99         * tests/test-vc-list-files-git.sh: Likewise.
100
101 2008-05-15  Eric Blake  <ebb9@byu.net>
102
103         Glibc finally accepted the memmem speedup code, bugzilla #5514.
104         * doc/glibc-functions/memmem.texi (memmem): Mention last broken
105         glibc version.
106         * doc/glibc-functions/strcasestr.texi (strcasestr): Likewise.
107         * doc/posix-functions/strstr.texi (strstr): Likewise.
108         * lib/str-two-way.h (MAX): Sychronize with glibc.
109
110 2008-05-15  Paolo Bonzini  <bonzini@gnu.org>
111
112         * lib/regcomp.c (optimize_utf8): Add a note on why we test
113         opr.ctx_type.
114         (calc_first): Initialize constraint field.
115         (duplicate_node_closure): Use it instead of special casing ANCHORS.
116         Fix grammar.
117         (duplicate_node): Merge constraint field for all node types.
118         (calc_eclosure_iter): Look at constraint field for all node types.
119         * lib/regex_internal.c (create_cd_newstate): Don't look at
120         opr.ctx_type.
121
122 2008-05-14  Bruno Haible  <bruno@clisp.org>
123
124         Help GCC to do better code generation.
125         * lib/eealloc.h (eemalloc) [GCC >= 3]: Declare with attribute 'malloc'.
126         * lib/pagealign_alloc.h (pagealign_alloc, pagealign_xalloc): Likewise.
127         * lib/xalloc.h (ATTRIBUTE_MALLOC): New macro.
128         (xmalloc, xzalloc, xcalloc, xmemdup, xstrdup, xnmalloc, xcharalloc):
129         Declare with attribute 'malloc' if supported.
130
131 2008-05-14  Lasse Collin  <lasse.collin@tukaani.org>
132
133         use "echo STR|wc -c" rather than unportable "expr length STR"
134         * build-aux/mktempd (mktempd): Vendor-supplied expr from at least
135         OpenBSD 4.3 and Solaris 10 do not honor expr's "length" function.
136
137 2008-05-14  Jim Meyering  <meyering@redhat.com>
138
139         use dd ibs=$n count=1 ... rather than less-portable head -c$n
140         * build-aux/mktempd (rand_bytes): head's -cN option is not accepted
141         by Solaris 10's /bin/head or by the one from HP-UX 11.x.
142         Reported in http://sourceforge.net/forum/message.php?msg_id=4960334
143         via Collin Lasse.
144
145 2008-05-14  Eric Blake  <ebb9@byu.net>
146
147         Avoid quadratic growth in gl_LIBSOURCES.
148         * gnulib-tool (func_emit_initmacro_done): s/\(m4_append\)_uniq/\1/.
149         Suggested by Bruno Haible.
150
151         Test xmemdup0.
152         * modules/xmemdup0-tests: New file.
153         * tests/test-xmemdup0.c: Likewise.
154
155 2008-05-13  Eric Blake  <ebb9@byu.net>
156
157         Split xmemdup0 into its own module.
158         * modules/xmemdup0: New file.
159         * lib/xmemdup0.h: Likewise.
160         * lib/xmemdup0.c: Likewise.
161         * MODULES.html.sh (Memory management functions): Add xmemdup0.
162         * lib/xalloc.h (xmemdup0): Remove.
163         * lib/xmalloc.c (xmemdup0): Likewise.
164
165 2008-05-13  Eric Blake  <ebb9@byu.net>
166             Bruno Haible  <bruno@clisp.org>
167
168         Reduce number of forks required during autoconf.
169         * gnulib-tool (func_emit_initmacro_start): Prepare gl_LIBSOURCES_LIST
170         and gl_LIBSOURCES_DIR.
171         (func_emit_initmacro_end): Use them here in a single m4_syscmd...
172         (func_emit_initmacro_done) <gl_LIBSOURCES>: ...rather than in one
173         m4_syscmd per file.
174         <m4_foreach_w>: Move...
175         * m4/gnulib-common.m4 (m4_foreach_w): ...here.
176
177 2008-05-13  Eric Blake  <ebb9@byu.net>
178
179         * gnulib-tool: Fix various comment typos.
180
181 2008-05-12  Bruno Haible  <bruno@clisp.org>
182
183         Tailor the linebreaking algorithm.
184         * lib/unilbrk/tables.c (unilbrk_table): Change (IS,AL) entry.
185
186 2008-05-12  Bruno Haible  <bruno@clisp.org>
187
188         Update to Unicode 5.0.0.
189         * lib/unilbrk/tables.h (LBP_*): Add LBP_WJ, LBP_H2, LBP_H3, LBP_JL,
190         LBP_JV, LBP_JT. Redistribute values.
191         (unilbrk_table): Change size.
192         * lib/unilbrk/tables.c (unilbrk_table): Change size. Update to match
193         Unicode TR#14 rev. 22.
194         * lib/unilbrk/gen-lbrk.c (LBP_*): Add LBP_WJ, LBP_H2, LBP_H3, LBP_JL,
195         LBP_JV, LBP_JT. Redistribute values.
196         (get_lbp): Update to match Unicode TR#14 rev. 21/22 and Unicode 5.0.0.
197         (debug_output_lbp, fill_org_lbp, debug_output_org_lbp, output_lbp):
198         Update.
199         * lib/unilbrk/lbrkprop1.h: Regenerated.
200         * lib/unilbrk/lbrkprop2.h: Regenerated.
201         * lib/unilbrk/u8-possible-linebreaks.c (u8_possible_linebreaks):
202         Change handling of LBP_CM after LBP_ZW. Update for new value of LBP_BK.
203         * lib/unilbrk/u16-possible-linebreaks.c (u16_possible_linebreaks):
204         Likewise.
205         * lib/unilbrk/u32-possible-linebreaks.c (u32_possible_linebreaks):
206         Likewise.
207         * tests/unilbrk/test-u8-possible-linebreaks.c (main): Update expected
208         result.
209         * tests/unilbrk/test-u16-possible-linebreaks.c (main): Likewise.
210         * tests/unilbrk/test-u32-possible-linebreaks.c (main): Likewise.
211         * tests/unilbrk/test-ulc-possible-linebreaks.c (main): Likewise.
212         * tests/unilbrk/test-u8-width-linebreaks.c (main): Likewise.
213         * tests/unilbrk/test-u16-width-linebreaks.c (main): Likewise.
214         * tests/unilbrk/test-u32-width-linebreaks.c (main): Likewise.
215
216 2008-05-11  Bruno Haible  <bruno@clisp.org>
217
218         * lib/unilbrk/gen-lbrk.c (output_lbp): Fix whitespace.
219
220 2008-05-11  Bruno Haible  <bruno@clisp.org>
221
222         * lib/unilbrk/gen-lbrk.c: New file, from GNU gettext (gen-lbrkprop.c).
223         * modules/unilbrk/gen-lbrk: New file.
224
225 2008-05-11  Bruno Haible  <bruno@clisp.org>
226
227         * m4/sha256.m4 (gl_SHA256): Require AC_C_INLINE.
228         * m4/sha512.m4 (gl_SHA512): Likewise.
229
230 2008-05-11  Jim Meyering  <meyering@redhat.com>
231
232         New modules: crypto/sha256, crypto/sha512 (from coreutils)
233         * modules/crypto/sha256: New file.
234         * modules/crypto/sha512: Likewise.
235         * lib/sha256.c: Likewise.
236         * lib/sha256.h: Likewise.
237         * lib/sha512.c: Likewise.
238         * lib/sha512.h: Likewise.
239         * lib/u64.h: Likewise.
240         * m4/sha256.m4: Likewise.
241         * m4/sha512.m4: Likewise.
242         * MODULES.html.sh (Cryptographic computations (low-level)): List them.
243
244 2008-05-10  Bruno Haible  <bruno@clisp.org>
245
246         * MODULES.html.sh (Environment variables <stdlib.h>): Add unsetenv.
247         (Input/Output <stdio.h>): Add xprintf.
248         (Signal handling <signal.h>): Add strsignal.
249         (Cryptographic computations (high-level)): Add crypto/gc-camellia.
250         (Core language properties): Add func.
251         (Mathematics <math.h>): Add ceil, floor, frexp-nolibm.
252         (Support for systems lacking POSIX:2001): Add environ, EOVERFLOW,
253         strings.
254         (Enhancements for POSIX:2001 functions): Add iconv_open-utf.
255         (Input/output): New section.
256         (File system functions): Add openat-die, stat-macros.
257         (Networking functions): Add sockets.
258         (Unicode string functions): Add unictype/*.
259         (Support for building libraries and executables): Add gperf.
260         (Support for building documentation): Add agpl-3.0.
261         (Misc): Add nocrash.
262
263 2008-05-10  Bruno Haible  <bruno@clisp.org>
264
265         * modules/unictype/gen-ctype: New file.
266
267 2008-05-10  Jim Meyering  <meyering@redhat.com>
268
269         Make chdir-safer.c more efficient on a system with no symlinks.
270         * lib/chdir-safer.c (chdir_no_follow): Skip lstat and fstat calls
271         also if ELOOP is zero.  Suggested by Bruno Haible.
272
273         Make chdir-safer.c slightly safer.
274         * lib/chdir-safer.c (chdir_no_follow): Test HAVE_WORKING_O_NOFOLLOW,
275         not O_NOFOLLOW, in case the latter is nonzero and open ignores it.
276
277         Avoid compile failure on systems without ELOOP (like mingw).
278         * lib/chdir-safer.c (ELOOP): Define if not already defined.
279         Reported by Bruno Haible.
280
281 2008-05-10  Bruno Haible  <bruno@clisp.org>
282
283         * lib/unilbrk/ulc-common.c: Include c-strcaseeq.h instead of streq.h.
284         (is_utf8_encoding): Use a case-insensitive comparison.
285         * modules/unilbrk/ulc-common (Depends-on): Add c-strcaseeq. Remove
286         streq.
287
288 2008-05-10  Bruno Haible  <bruno@clisp.org>
289
290         * lib/unilbrk/ulc-common.c: Don't include <stdlib.h>.
291         (iconv_string_length, iconv_string_keeping_offsets): Remove functions.
292         * lib/unilbrk/ulc-common.h (iconv_string_length,
293         iconv_string_keeping_offsets): Remove declarations.
294         * lib/unilbrk/ulc-possible-linebreaks.c: Include <string.h>, uniconv.h.
295         Don't include <iconv.h>, streq.h, xsize.h.
296         (ulc_possible_linebreaks): Use u8_conv_from_encoding for doing the
297         conversion.
298         * lib/unilbrk/ulc-width-linebreaks.c: Include uniconv.h. Don't include
299         <iconv.h>, streq.h, xsize.h.
300         (ulc_width_linebreaks): Use u8_conv_from_encoding for doing the
301         conversion.
302         * modules/unilbrk/ulc-common (Depends-on): Remove iconv.
303         * modules/unilbrk/ulc-possible-linebreaks (Depends-on): Add
304         uniconv/u8-conv-from-enc. Remove iconv_open, streq, xsize.
305         * modules/unilbrk/ulc-width-linebreaks (Depends-on): Likewise.
306
307 2008-05-10  Bruno Haible  <bruno@clisp.org>
308
309         * modules/unilbrk/ulc-width-linebreaks-tests: New file.
310         * tests/unilbrk/test-ulc-width-linebreaks.c: New file.
311
312         * modules/unilbrk/u32-width-linebreaks-tests: New file.
313         * tests/unilbrk/test-u32-width-linebreaks.c: New file.
314
315         * modules/unilbrk/u16-width-linebreaks-tests: New file.
316         * tests/unilbrk/test-u16-width-linebreaks.c: New file.
317
318         * modules/unilbrk/u8-width-linebreaks-tests: New file.
319         * tests/unilbrk/test-u8-width-linebreaks.c: New file.
320
321         * modules/unilbrk/ulc-possible-linebreaks-tests: New file.
322         * tests/unilbrk/test-ulc-possible-linebreaks.c: New file.
323
324         * modules/unilbrk/u32-possible-linebreaks-tests: New file.
325         * tests/unilbrk/test-u32-possible-linebreaks.c: New file.
326
327         * modules/unilbrk/u16-possible-linebreaks-tests: New file.
328         * tests/unilbrk/test-u16-possible-linebreaks.c: New file.
329
330         * modules/unilbrk/u8-possible-linebreaks-tests: New file.
331         * tests/unilbrk/test-u8-possible-linebreaks.c: New file.
332
333 2008-05-10  Bruno Haible  <bruno@clisp.org>
334
335         Split up 'linebreak' module.
336         * lib/unilbrk.h: New file, based on lib/linebreak.h.
337         * lib/unilbrk/lbrkprop1.h: New file, extracted from lib/lbrkprop.h.
338         * lib/unilbrk/lbrkprop2.h: New file, renamed from lib/lbrkprop.h with
339         modifications.
340         * lib/unilbrk/tables.h: New file, extracted from lib/linebreak.c.
341         * lib/unilbrk/tables.c: New file, extracted from lib/linebreak.c.
342         * lib/unilbrk/u8-possible-linebreaks.c: New file, extracted from
343         lib/linebreak.c.
344         * lib/unilbrk/u16-possible-linebreaks.c: New file, extracted from
345         lib/linebreak.c.
346         * lib/unilbrk/u32-possible-linebreaks.c: New file, extracted from
347         lib/linebreak.c.
348         * lib/unilbrk/ulc-common.h: New file, extracted from lib/linebreak.c.
349         * lib/unilbrk/ulc-common.c: New file, extracted from lib/linebreak.c.
350         * lib/unilbrk/ulc-possible-linebreaks.c: New file, extracted from
351         lib/linebreak.c.
352         * lib/unilbrk/u8-width-linebreaks.c: New file, extracted from
353         lib/linebreak.c.
354         * lib/unilbrk/u16-width-linebreaks.c: New file, extracted from
355         lib/linebreak.c.
356         * lib/unilbrk/u32-width-linebreaks.c: New file, extracted from
357         lib/linebreak.c.
358         * lib/unilbrk/ulc-width-linebreaks.c: New file, extracted from
359         lib/linebreak.c.
360         * modules/unilbrk/base: New file.
361         * modules/unilbrk/tables: New file.
362         * modules/unilbrk/u8-possible-linebreaks: New file.
363         * modules/unilbrk/u16-possible-linebreaks: New file.
364         * modules/unilbrk/u32-possible-linebreaks: New file.
365         * modules/unilbrk/ulc-common: New file.
366         * modules/unilbrk/ulc-possible-linebreaks: New file.
367         * modules/unilbrk/u8-width-linebreaks: New file.
368         * modules/unilbrk/u16-width-linebreaks: New file.
369         * modules/unilbrk/u32-width-linebreaks: New file.
370         * modules/unilbrk/ulc-width-linebreaks: New file.
371         * lib/linebreak.h: Remove file.
372         * lib/linebreak.c: Remove file.
373         * m4/linebreak.m4: Remove file.
374         * modules/linebreak: Remove file.
375         * NEWS: Mention the changes.
376
377 2008-05-09  Eric Blake  <ebb9@byu.net>
378
379         Add xmemdup0.
380         * lib/xalloc.h (xmemdup0): New prototype and C++ typesafe
381         implementation.
382         * lib/xmalloc.c (xmemdup0): New C implementation.
383
384 2008-05-08  Bruno Haible  <bruno@clisp.org>
385
386         * m4/wctype.m4 (gl_WCTYPE_H): Correct indentation.
387
388 2008-05-07  Eric Blake  <ebb9@byu.net>
389
390         Support cross-compilation of <wctype.h>.
391         * m4/wctype.m4 (gl_WCTYPE_H): Fix improper nesting in
392         AC_CACHE_CHECK.
393
394 2008-05-06  Soren Hansen  <soren@ubuntu.com>  (tiny change)
395
396         * build-aux/vc-list-files: Add support for bzr.
397
398 2008-05-03  Jim Meyering  <meyering@redhat.com>
399
400         avoid failed assertion with tight malloc
401         * tests/test-getndelim2.c: Correct an off-by-one assertion.
402
403 2008-05-03  Simon Josefsson  <simon@josefsson.org>
404
405         * m4/inet_pton.m4: Set HAVE_DECL_INET_PTON to 0 when declarations
406         are needed from arpa/inet.h.
407         * m4/inet_ntop.m4: Likewise, for HAVE_DECL_INET_NTOP.
408         Reported by Bruno Haible.
409
410 2008-05-02  Jim Meyering  <meyering@redhat.com>
411
412         avoid compilation error on FreeBSD 6
413         * tests/test-getaddrinfo.c [!defined EAI_NODATA] (EAI_NODATA): Define.
414
415 2008-05-01  Jim Meyering  <meyering@redhat.com>
416
417         useless-if-before-free: correct --help's exit status description
418         * build-aux/useless-if-before-free (usage): Like grep, exit 0
419         for one or more matches, etc.  Reported by Bruno Haible.
420
421         vc-list-files: make the stand-alone gnulib test work
422         * modules/vc-list-files-tests (configure.ac):
423         Define and AC_SUBST abs_aux_dir.
424         (Makefile.am) [TESTS_ENVIRONMENT]: Rather than passing
425         $(abs_top_srcdir) to each script and having each of them
426         duplicate the work of setting PATH, set PATH here, using
427         the new variable, abs_aux_dir instead.
428         * tests/test-vc-list-files-cvs.sh: Don't set PATH here.
429         * tests/test-vc-list-files-git.sh: Likewise.
430         Reported by Bruno Haible.
431
432 2008-05-01  Bruno Haible  <bruno@clisp.org>
433
434         * lib/getndelim2.c (getndelim2): Fix newsize computation during
435         reallocation. Rename 'done' to 'found_delimiter'.
436
437 2008-05-01  Jim Meyering  <meyering@redhat.com>
438
439         vc-list-files: accommodate /bin/sh like the one from Solaris 10
440         * build-aux/vc-list-files: Use `...`, not $(...).
441
442 2008-04-30  Jim Meyering  <meyering@redhat.com>
443
444         add tests for vc-list-files
445         * modules/vc-list-files-tests: New module.
446         * tests/test-vc-list-files-cvs.sh: New file.
447         * tests/test-vc-list-files-git.sh: New file.
448
449         avoid a warning from gcc
450         * lib/getndelim2.c (IF_LINT): Define.
451         (getndelim2): Use it to void a "may be used uninitialized" warning.
452
453         vc-list-files: work properly with build-aux/cvsu, too
454         * build-aux/vc-list-files: Hoist the "./"-removing code to apply
455         to all cvs-based clauses.
456
457         vc-list-files: work properly in the CVS+awk case, too
458         * build-aux/vc-list-files: In the CVS+awk case, remove "./" prefix.
459
460         vc-list-files: avoid use of ${*-*} that fails when /bin/sh is dash
461         * build-aux/vc-list-files: Simplify ${*-*} to $dir, since we no longer
462         take more than one file argument, so .  Add quotes, just in case $dir
463         ever contains a shell meta-character.  Prompted by Soren Hansen in
464         <http://thread.gmane.org/gmane.comp.emulators.libvirt/6221/focus=6240>.
465
466 2008-04-29  Eric Blake  <ebb9@byu.net>
467
468         Optimize getndelim2 to use block operations when possible.
469         * modules/getndelim2 (Depends-on): Add stdbool, freadptr,
470         freadseek, and memchr2.
471         * lib/getndelim2.c (getndelim2): Use them for block reads.
472
473 2008-04-29  Bruno Haible  <bruno@clisp.org>
474
475         * m4/inet_ntop.m4 (gl_INET_NTOP): Require gl_USE_SYSTEM_EXTENSIONS.
476         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
477         * modules/inet_ntop (Depends-on): Add extensions.
478         * modules/inet_pton (Depends-on): Likewise.
479         Reported by Simon Josefsson.
480
481 2008-04-29  Jim Meyering  <meyering@redhat.com>
482
483         When the is more than one match in a block, match all of them.
484         * build-aux/useless-if-before-free: Iterate through each block
485         until there are no more matches.
486
487         Fix broken useless-if-before-free script.
488         * build-aux/useless-if-before-free: Fix typo: missing "?" after
489         the expression to match cast of argument to free-like function.
490
491 2008-04-29  Eric Blake  <ebb9@byu.net>
492
493         Use new header.
494         * lib/getaddrinfo.c (includes): s/"inet_ntop.h"/<arpa/inet.h>/.
495
496 2008-04-29  Jim Meyering  <meyering@redhat.com>
497
498         Avoid test segfault on x86_64 due to lack of inet_ntop declaration.
499         * tests/test-getaddrinfo.c: Include <arpa/inet.h>, now guaranteed
500         by gnulib to exist and to declare e.g., inet_ntop.
501         Don't include "inet_ntop.h", now removed.
502
503         * m4/arpa_inet_h.m4: Remove trailing blanks.
504
505 2008-04-29  Eric Blake  <ebb9@byu.net>
506
507         Silence valgrind on safe reads beyond potential array bounds.
508         * lib/rawmemchr.valgrind: New file.
509         * lib/strchrnul.valgrind: Likewise.
510         * modules/rawmemchr (Files): Distribute new file.
511         * modules/strchrnul (Files): Likewise.
512         Suggested by Bruno Haible.
513
514 2008-04-29  Bruno Haible  <bruno@clisp.org>
515
516         * lib/arpa_inet.in.h: Include system's <arpa/inet.h> if it exists.
517         (inet_ntop, inet_pton): Change portability warning's wording.
518         * m4/arpa_inet_h.m4 (gl_HEADER_ARPA_INET): Set HAVE_ARPA_INET_H.
519         Invoke gl_CHECK_NEXT_HEADERS.
520         (gl_ARPA_INET_H_DEFAULTS): Initialize ARPA_INET_H.
521         * m4/inet_ntop.m4 (gl_INET_NTOP): Require gl_ARPA_INET_H_DEFAULTS and
522         set ARPA_INET_H.
523         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
524         * modules/arpa_inet (Description): No longer only for systems that
525         lack it.
526         (Depends-on): Add include_next.
527         (Makeile.am): Substitute INCLUDE_NEXT, NEXT_ARPA_INET_H,
528         HAVE_ARPA_INET_H.
529
530 2008-04-29  Jim Meyering  <meyering@redhat.com>
531
532         * modules/mkdir (License): Re-license as LGPLv2+.
533
534 2008-04-29  Bruno Haible  <bruno@clisp.org>
535
536         * modules/rawmemchr (Maintainer): Set to Eric.
537         * modules/strchrnul (Maintainer): Likewise.
538
539 2008-04-29  Simon Josefsson  <simon@josefsson.org>
540
541         * m4/arpa_inet_h.m4 (gl_ARPA_INET_H_DEFAULTS): Set
542         HAVE_DECL_INET_NTOP and HAVE_DECL_INET_PTON.
543
544         * modules/arpa_inet (arpa/inet.h): Use them.
545
546 2008-04-28  Eric Blake  <ebb9@byu.net>
547
548         Test getndelim2.
549         * modules/getndelim2-tests: New file.
550         * tests/test-getndelim2.c: Likewise.
551         * lib/getndelim2.c (getndelim2): Never return 0.  Lock the
552         stream.
553         * m4/getndelim2.m4 (gl_GETNDELIM2): Check for lock functions.
554
555         * MODULES.html.sh: Document new module.
556
557 2008-04-20  Bruno Haible  <bruno@clisp.org>
558
559         * lib/c-stack.c (die): Use raise.
560         * modules/c-stack (Depends-on): Add raise.
561
562 2008-04-28  Bruno Haible  <bruno@clisp.org>
563
564         Expect rpmatch to be declared.
565         * lib/yesno.c (rpmatch): Remove declaration.
566
567         Declare rpmatch.
568         * lib/stdlib.in.h (rpmatch): New declaration.
569         * lib/rpmatch.c: Include <stdlib.h> first.
570         * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Require AC_USE_SYSTEM_EXTENSIONS and
571         gl_STDLIB_H_DEFAULTS. Set HAVE_RPMATCH.
572         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_RPMATCH,
573         HAVE_RPMATCH.
574         * modules/rpmatch (Depends-on): Add stdlib, extensions.
575         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
576         (Include): Set to <stdlib.h>.
577         * modules/stdlib (Makefile.am): Substitute GNULIB_RPMATCH and
578         HAVE_RPMATCH.
579         * NEWS: Document the change.
580
581 2008-04-28  Bruno Haible  <bruno@clisp.org>
582
583         Change rpmatch to use nl_langinfo when appropriate.
584         * lib/rpmatch.c: Include stdbool.h, string.h, langinfo.h.
585         (N_): New macro.
586         (localized_pattern): New function/macro.
587         (try): Remove match, nomatch arguments. Copy the pattern into safe
588         memory before caching it.
589         (rpmatch): Use localized_pattern. Add translator comments.
590         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Test for nl_langinfo and YESEXPR.
591         Suggested by Eric Blake.
592         * modules/rpmatch (Depends-on): Add stdbool.
593
594 2008-04-28  Eric Blake  <ebb9@byu.net>
595
596         Add rawmemchr module, matching glibc.
597         * modules/string (Makefile.am): New indicator.
598         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Set it.
599         * lib/string.in.h (rawmemchr): Declare when appropriate.
600         * modules/rawmemchr: New file.
601         * m4/rawmemchr.m4: Likewise.
602         * lib/rawmemchr.c: Likewise.
603         * modules/rawmemchr-tests: Likewise.
604         * tests/test-rawmemchr.c: Likewise.
605         * doc/glibc-functions/rawmemchr.texi (rawmemchr): Document
606         module.
607         * modules/strchrnul (Depends-on): Add rawmemchr.
608         * lib/strchrnul.c (strchrnul): Optimize a corner case.
609
610         Whitespace cleanup.
611         * tests/test-strchrnul.c: Reindent.
612         * lib/strchrnul.c: Likewise.
613
614         Optimize and test strchrnul.
615         * lib/strchrnul.c (strchrnul): Rewrite to do parallel search.
616         * modules/strchrnul-tests: New file.
617         * tests/test-strchrnul.c: Likewise.
618
619         Remove intprops dependency.
620         * modules/memchr (Depends-on): Remove intprops.
621         * modules/memrchr (Depends-on): Likewise.
622         * modules/memchr2 (Depends-on): Likewise.
623         * lib/memchr.c (__memchr): Hand-inline the TYPE_MAXIMUM check.
624         * lib/memrchr.c (__memrchr): Likewise.
625         * lib/memrchr2.c (memchr2): Likewise.
626         Reported by Simon Josefsson.
627
628 2008-04-28  Simon Josefsson  <simon@josefsson.org>
629
630         * m4/sys_socket_h.m4: Move AC_REQUIRE([AC_C_INLINE]) to top.
631         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
632
633 2008-04-28  Simon Josefsson  <simon@josefsson.org>
634
635         * lib/inet_ntop.h, lib/inet_pton.h: Remove files.
636
637         * lib/inet_ntop.c: Include arpa/inet.h instead of inet_ntop.h.
638
639         * lib/inet_pton.c: Include arpa/inet.h instead of inet_pton.h.
640
641         * lib/arpa_inet.in.h [@GNULIB_INET_NTOP@]: Inline inet_ntop.h
642         declarations.
643         [@GNULIB_INET_PTON@]: Inline inet_pton.h declarations.
644
645         * m4/inet_pton.m4: Don't check for header files.
646
647         * m4/inet_ntop.m4: Don't check for header files.
648
649 2008-04-28  Simon Josefsson  <simon@josefsson.org>
650
651         * m4/sys_socket_h.m4: Require AC_C_INLINE when necessary.
652         * lib/sys_socket.in.h (setsockopt): Use proper win32 tests (don't
653         trigger for cygwin).
654         Reported by Bruno Haible  <bruno@clisp.org>.
655
656 2008-04-28  Bruno Haible  <bruno@clisp.org>
657
658         * doc/posix-functions/strdup.texi: Mention mingw problem.
659
660 2008-04-27  Bruno Haible  <bruno@clisp.org>
661
662         * modules/stat-time-tests (Depends-on): Add sleep.
663         * tests/test-stat-time.c (force_unlink): New function.
664         (cleanup): Use it.
665         (test_mtime): Remove the ctime related tests.
666         (test_ctime): New function, containing the ctime related tests.
667         (main): Call test_ctime, except on native Windows platforms.
668
669 2008-04-27  Bruno Haible  <bruno@clisp.org>
670
671         * lib/rpmatch.c (rpmatch): Add some comments.
672         Reported by James Youngman <jay@gnu.org>.
673
674 2008-04-27  Bruno Haible  <bruno@clisp.org>
675
676         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Also test the behaviour on
677         quiet NaNs.
678
679 2008-04-27  Bruno Haible  <bruno@clisp.org>
680
681         Make test-yesno.sh work on mingw.
682         * tests/test-yesno.sh: Postprocess the output to convert CR/LF to LF.
683         * tests/test-yesno.c: Include yesno.h first. Include binary-io.h.
684         (main): Set stdin to binary mode.
685         * modules/yesno-tests (Depends-on): Add binary-io.
686
687 2008-04-27  Bruno Haible  <bruno@clisp.org>
688
689         Fix 'isfinite' on x86, x86_64, ia64 platforms.
690         * tests/test-isfinite.c (test_isfinitel): Also test the behavior on
691         argument that lie outside the IEEE 854 domain.
692         * m4/isfinite.m4 (gl_ISFINITEL_WORKS): New macro.
693         (gl_ISFINITE): Use it.
694         * doc/posix-functions/isfinite.texi: Document the fixed bugs.
695
696 2008-04-27  Bruno Haible  <bruno@clisp.org>
697
698         Allow local renaming in config.h.
699         * lib/memrchr.c (memrchr): Don't undefine outside libc.
700
701 2008-04-27  Bruno Haible  <bruno@clisp.org>
702
703         * lib/memchr.c (__memchr): Change type of 'i'.
704         * lib/memchr2.c (memchr2): Likewise.
705
706 2008-04-26  Eric Blake  <ebb9@byu.net>
707         and Bruno Haible  <bruno@clisp.org>
708
709         Optimize and test memrchr.
710         * modules/memrchr (Depends-on): Add intprops.
711         * lib/memrchr.c (__memrchr): Avoid false positives in loop.
712         * modules/memrchr-tests: New file.
713         * tests/test-memrchr.c: New file.
714
715 2008-04-26  Bruno Haible  <bruno@clisp.org>
716
717         Add tentative support for DragonFly BSD.
718         * lib/stdio-impl.h: Add macros for DragonFly BSD.
719         * lib/fbufmode.c (fbufmode): Update conditionals. Use fp_ instead of
720         fp.
721         * lib/fflush.c (clear_ungetc_buffer, disable_seek_optimization,
722         restore_seek_optimization, update_fpos_cache, rpl_fflush: Likewise.
723         * lib/fpurge.c (fpurge): Likewise.
724         * lib/freadable.c (freaadable): Likewise.
725         * lib/freadahead.c (freadahead): Likewise.
726         * lib/freading.c (freading): Likewise.
727         * lib/freadptr.c (freadptr): Likewise.
728         * lib/freadseek.c (freadptrinc): Likewise.
729         * lib/fseeko.c (fseeko): Likewise.
730         * lib/fseterr.c (fseterr): Likewise.
731         * lib/fwritable.c (fwritable): Likewise.
732         * lib/fwriting.c (fwriting): Likewise.
733
734 2008-04-26  Bruno Haible  <bruno@clisp.org>
735
736         * lib/stdio-impl.h: New file.
737         * lib/fbufmode.c: Include stdio-impl.h.
738         (fbufmode): Use fp_, remove redundant #defines.
739         * lib/fflush.c: Include stdio-impl.h.
740         (clear_ungetc_buffer): Remove redundant #defines.
741         * lib/fpurge.c: Include stdio-impl.h.
742         (fpurge): Remove redundant #defines.
743         * lib/freadable.c: Include stdio-impl.h.
744         (freadable): Remove redundant #defines.
745         * lib/freadahead.c: Include stdio-impl.h.
746         (freadahead): Remove redundant #defines.
747         * lib/freading.c: Include stdio-impl.h.
748         (freading): Remove redundant #defines.
749         * lib/freadptr.c: Include stdio-impl.h.
750         (freadptr): Remove redundant #defines.
751         * lib/freadseek.c: Include stdio-impl.h.
752         (freadptrinc): Remove redundant #defines.
753         * lib/fseeko.c: Include stdio-impl.h.
754         (rpl_fseeko): Remove redundant #defines.
755         * lib/fseterr.c: Include stdio-impl.h.
756         (fseterr): Remove redundant #defines.
757         * lib/fwritable.c: Include stdio-impl.h.
758         (fwritable: Remove redundant #defines.
759         * lib/fwriting.c: Include stdio-impl.h.
760         (fwriting): Remove redundant #defines.
761         * modules/fbufmode (Files): Add lib/stdio-impl.h.
762         * modules/fflush (Files): Likewise.
763         * modules/fpurge (Files): Likewise.
764         * modules/freadable (Files): Likewise.
765         * modules/freadahead (Files): Likewise.
766         * modules/freading (Files): Likewise.
767         * modules/freadptr (Files): Likewise.
768         * modules/freadseek (Files): Likewise.
769         * modules/fseeko (Files): Likewise.
770         * modules/fseterr (Files): Likewise.
771         * modules/fwritable (Files): Likewise.
772         * modules/fwriting (Files): Likewise.
773
774 2008-04-26  Bruno Haible  <bruno@clisp.org>
775
776         * lib/fflush.c (clear_ungetc_buffer, disable_seek_optimization,
777         restore_seek_optimization, update_fpos_cache): New functions, extracted
778         from rpl_fflush.
779         (rpl_fflush): Use them.
780         * m4/fflush.m4 (gl_PREREQ_FFLUSH): New macro.
781         (gl_REPLACE_FFLUSH): Use it.
782
783 2008-04-26  Bruno Haible  <bruno@clisp.org>
784
785         * tests/test-xstrtol.sh: Work around limitation of an old 'tr' program
786         on Solaris.
787         * tests/test-xstrtoimax.sh: Likewise.
788         * tests/test-xstrtoumax.sh: Likewise.
789         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
790
791 2008-04-26  Bruno Haible  <bruno@clisp.org>
792
793         * modules/memchr-tests: New file.
794         * tests/test-memchr.c; New file, based on tests/test-memchr2.c.
795
796 2008-04-26  Eric Blake  <ebb9@byu.net>
797             Bruno Haible  <bruno@clisp.org>
798
799         * lib/memchr.c: Include intprops.h.
800         (__memchr): Optimize parallel detection of matching bytes. Rename local
801         variables. Add explanatory comments.
802
803 2008-04-26  Bruno Haible  <bruno@clisp.org>
804
805         Fix module 'memchr', broken since 2000-10-28.
806         * lib/memchr.c: Outside glibc, define memchr, not __memchr.
807
808 2008-04-26  Bruno Haible  <bruno@clisp.org>
809
810         * lib/memchr2.c (memchr2): Rename local variables. Add explanatory
811         comments.
812
813 2008-04-25  Eric Blake  <ebb9@byu.net>
814
815         Use native fstatat on cygwin 1.7.0.
816         * m4/openat.m4 (gl_FUNC_OPENAT): Make sure lstat check is made
817         first.
818
819 2008-04-23  Eric Blake  <ebb9@byu.net>
820
821         Improve memchr2 performance.
822         * lib/memchr2.c (memchr2): Further optimize parallel detection of
823         NUL bytes.
824         * modules/memchr2 (Depends-on): Use intprops.h.
825
826 2008-04-23  Simon Josefsson  <simon@josefsson.org>
827
828         * lib/sys_socket.in.h (setsockopt): Be more type safe by declaring
829         an inline function instead of a CPP macro.  Patch by Ben Pfaff
830         <blp@cs.stanford.edu>.
831
832 2008-04-23  Simon Josefsson  <simon@josefsson.org>
833
834         * lib/arpa_inet.in.h: New file.
835
836         * modules/arpa_inet (Files): Add lib/arpa_inet.in.h.
837         (Makefile.am): Sed in substitute header file.
838
839         * m4/arpa_inet_h.m4: Add gl_ARPA_INET_H_DEFAULTS and
840         gl_ARPA_INET_MODULE_INDICATOR.  Use them.
841
842         * modules/inet_ntop (configure.ac): Use
843         gl_ARPA_INET_MODULE_INDICATOR.
844
845         * modules/inet_pton (configure.ac): Use
846         gl_ARPA_INET_MODULE_INDICATOR.
847
848 2008-04-22  Jim Meyering  <meyering@redhat.com>
849
850         * modules/verify (License): Re-license as LGPLv2+.
851
852 2008-04-22  Simon Josefsson  <simon@josefsson.org>
853
854         * lib/sys_socket.in.h: Define setsockopt macro to cast fourth
855         parameter to void* as per POSIX standard (MinGW uses char*).
856
857 2008-04-21  Bruno Haible  <bruno@clisp.org>
858
859         * lib/wctype.in.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
860         iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit):
861         Define to replacements if REPLACE_ISWCNTRL is 1.
862         * m4/wctype.m4 (gl_WCTYPE_H): Test whether the isw* functions work.
863         If not, set WCTYPE_H to nonempty and REPLACE_ISWCNTRL to 1.
864         * modules/wctype (Makefile.am): Substitute REPLACE_ISWCNTRL.
865         * doc/posix-functions/iswalnum.texi: Mention the 'wctype' module and
866         what it fixes.
867         * doc/posix-functions/iswalpha.texi: Likewise.
868         * doc/posix-functions/iswblank.texi: Likewise.
869         * doc/posix-functions/iswcntrl.texi: Likewise.
870         * doc/posix-functions/iswdigit.texi: Likewise.
871         * doc/posix-functions/iswgraph.texi: Likewise.
872         * doc/posix-functions/iswlower.texi: Likewise.
873         * doc/posix-functions/iswprint.texi: Likewise.
874         * doc/posix-functions/iswpunct.texi: Likewise.
875         * doc/posix-functions/iswspace.texi: Likewise.
876         * doc/posix-functions/iswupper.texi: Likewise.
877         * doc/posix-functions/iswxdigit.texi: Likewise.
878         Reported by Alain Guibert.
879
880 2008-04-21  Bruno Haible  <bruno@clisp.org>
881
882         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Fix typo in last commit.
883         Patch by Alain Guibert.
884
885 2008-04-21  Bruno Haible  <bruno@clisp.org>
886
887         Fix test failures on mingw.
888         * tests/test-xstrtol.c (print_no_progname): New function.
889         (main): Install it in error_print_progname hook.
890         * tests/test-xstrtol.sh: Convert CR/LF to NL in output.
891         * tests/test-xstrtoimax.sh: Likewise.
892         * tests/test-xstrtoumax.sh: Likewise.
893
894 2008-04-21  Bruno Haible  <bruno@clisp.org>
895
896         Fix test failure on mingw.
897         * tests/test-argp-2.sh (func_compare): Remove CRs from sed's output.
898
899 2008-04-21  Bruno Haible  <bruno@clisp.org>
900
901         * lib/localename.c (SUBLANG_TIBETAN_PRC, SUBLANG_TIBETAN_BHUTAN):
902         Actually assign a value.
903
904 2008-04-20  Bruno Haible  <bruno@clisp.org>
905
906         Fix conflict between modules 'canonicalize' and 'canonicalize-lgpl',
907         take 2.
908         * lib/canonicalize.c (canonicalize_file_name): Elide if the
909         'canonicalize-lgpl' module is also used.
910         * lib/canonicalize-lgpl.c: Undo last change.
911         * modules/canonicalize-lgpl (configure.ac): Invoke gl_MODULE_INDICATOR.
912
913 2008-04-20  Bruno Haible  <bruno@clisp.org>
914
915         * lib/mkdir.c (mkdir): Undefine after the includes, not right after
916         config.h. Provide _mkdir based fallback for mingw.
917         * lib/sys_stat.in.h (mkdir): Define through an 'extern' declaration
918         if REPLACE_MKDIR is 1. Otherwise, test for mingw directly.
919         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Require
920         gl_SYS_STAT_H_DEFAULTS. When doing the replacement, set REPLACE_MKDIR
921         rather than defining mkdir in config.h.
922         * m4/sys_stat_h.m4 (gl_SYS_STAT_MODULE_INDICATOR): New macro.
923         (gl_SYS_STAT_H_DEFAULTS): New macro.
924         (gl_HEADER_SYS_STAT_H): Require it. Don't set HAVE_DECL_MKDIR and
925         HAVE_IO_H any more.
926         * modules/sys_stat (Makefile.am): Substitute REPLACE_MKDIR instead of
927         HAVE_DECL_MKDIR and HAVE_IO_H.
928
929 2008-04-20  Bruno Haible  <bruno@clisp.org>
930
931         * lib/isapipe.c: Port to native Windows platforms.
932
933 2008-04-20  Bruno Haible  <bruno@clisp.org>
934
935         * lib/gc-gnulib.c: Include <windows.h> before <wincrypt.h>.
936
937 2008-04-21  Eric Blake  <ebb9@byu.net>
938
939         Work around preprocessors that don't handle UINTMAX_MAX.
940         * lib/memchr2.c (memchr2): Avoid embedded #if.
941         Reported by Alain Guibert, fix suggested by Bruno Haible.
942
943 2008-04-21  Simon Josefsson  <simon@josefsson.org>
944
945         * doc/posix-functions/strftime.texi (strftime): Explain better
946         Windows incompatibility.  Suggested by Micah Cowan
947         <micah@cowan.name>.
948
949 2008-04-20  Bruno Haible  <bruno@clisp.org>
950
951         * modules/uniconv/u32-conv-to-enc (Depends-on): Add unistr/u32-mblen,
952         unistr/u8-mblen.
953
954 2008-04-20  Bruno Haible  <bruno@clisp.org>
955
956         Fix test failure on platforms with non-GNU iconv.
957         * lib/uniconv/u16-conv-to-enc.c (u16_to_u8_lenient): New function.
958         (U_TO_U8): Use it, rather than u16_to_u8.
959         * lib/uniconv/u-conv-to-enc.h (FUNC): Allow an incomplete sequence of
960         units at the end of the input string.
961         * modules/uniconv/u16-conv-to-enc (Depends-on): Update.
962
963 2008-04-20  Bruno Haible  <bruno@clisp.org>
964
965         * tests/uniconv/test-u8-conv-to-enc.c (main): Accept result == NULL
966         when the resulting length is 0.
967         * tests/uniconv/test-u16-conv-to-enc.c (main): Likewise.
968
969 2008-04-20  Bruno Haible  <bruno@clisp.org>
970
971         * m4/roundf.m4 (gl_FUNC_ROUNDF): Add test whether roundf actually
972         works.
973         * doc/posix-functions/roundf.texi: Mention roundf bug on mingw.
974
975 2008-04-20  Bruno Haible  <bruno@clisp.org>
976
977         * tests/test-tsearch.c (main): Don't use initstate if it is missing.
978         * modules/tsearch-tests (configure.ac): Test for initstate function.
979
980 2008-04-20  Bruno Haible  <bruno@clisp.org>
981
982         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Also provided a substitute
983         for nlink_t if missing.
984         * tests/test-sys_stat.c: Check the existence of the nlink_t type.
985
986 2008-04-19  Bruno Haible  <bruno@clisp.org>
987
988         Work around snprintf bug on Linux libc5.
989         * m4/printf.m4 (gl_SNPRINTF_SIZE1): New macro.
990         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
991         gl_SNPRINTF_SIZE1.
992         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
993         * m4/snprintf.m4 (gl_FUNC_SNPRINTF): Likewise. Replace snprintf if
994         that test failed.
995         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Likewise.
996         * lib/vasnprintf.c (USE_SNPRINTF): Set to 0 on Linux libc5 systems.
997         * modules/snprintf (Files): Add m4/printf.m4.
998         * modules/vsnprintf (Files): Likewise.
999         * doc/posix-functions/snprintf.texi: Document Linux libc5 problem.
1000         * doc/posix-functions/vsnprintf.texi: Likewise.
1001
1002 2008-04-19  Bruno Haible  <bruno@clisp.org>
1003
1004         * lib/vasnprintf.c (floorlog10l, floorlog10): Reduce maximum error
1005         from 0.0058 to less than 10^-7.
1006
1007 2008-04-19  Bruno Haible  <bruno@clisp.org>
1008
1009         Fix rounding when a precision is given.
1010         * lib/vasnprintf.c (is_borderline): New function.
1011         (VASNPRINTF): For %e and %g, consider replacing the digits 10....0 with
1012         9...9x.
1013         * tests/test-vasnprintf-posix.c (test_function): Test rounding with %f,
1014         %e, %g.
1015         * tests/test-vasprintf-posix.c (test_function): Likewise.
1016         * tests/test-snprintf-posix.h (test_function): Likewise.
1017         * tests/test-sprintf-posix.h (test_function): Likewise.
1018         * tests/test-fprintf-posix.h (test_function): Test rounding with %f.
1019         * tests/test-printf-posix.h (test_function): Likewise.
1020         * tests/test-printf-posix.output: Update.
1021         Reported by John Darrington <john@darrington.wattle.id.au> via
1022         Ben Pfaff <blp@cs.stanford.edu>.
1023
1024 2008-04-18  Simon Josefsson  <simon@josefsson.org>
1025
1026         * doc/posix-functions/strftime.texi (strftime): Clarify platform.
1027         Suggested by Bruno Haible <bruno@clisp.org>.
1028
1029 2008-04-17  Bruno Haible  <bruno@clisp.org>
1030
1031         * lib/lock.h (gl_lock_destroy, gl_rwlock_destroy,
1032         gl_recursive_lock_destroy): Provide no-op definitions for the dummy
1033         implementation.
1034         Patch by Bruce Merry <bmerry@gmail.com>.
1035
1036 2008-04-17  Simon Josefsson  <simon@josefsson.org>
1037
1038         * doc/posix-functions/strftime.texi (strftime): Mention that %e
1039         doesn't work under Windows.
1040
1041 2008-04-16  Bruno Haible  <bruno@clisp.org>
1042
1043         * lib/localename.c (LANG_MAORI, LANG_QUECHUA, LANG_SOTHO, LANG_UIGHUR):
1044         New macros.
1045         (SUBLANG_BOSNIAN_BOSNIA_HERZEGOVINA_LATIN,
1046         SUBLANG_BOSNIAN_BOSNIA_HERZEGOVINA_CYRILLIC,
1047         SUBLANG_CROATIAN_CROATIA, SUBLANG_CROATIAN_BOSNIA_HERZEGOVINA_LATIN,
1048         SUBLANG_MONGOLIAN_CYRILLIC_MONGOLIA, SUBLANG_MONGOLIAN_PRC,
1049         SUBLANG_QUECHUA_BOLIVIA, SUBLANG_QUECHUA_ECUADOR, SUBLANG_QUECHUA_PERU,
1050         SUBLANG_RUSSIAN_RUSSIA, SUBLANG_RUSSIAN_MOLDAVIA, SUBLANG_SPANISH_US,
1051         SUBLANG_TIBETAN_PRC, SUBLANG_TIBETAN_BHUTAN, SUBLANG_UIGHUR_PRC): New
1052         macros.
1053         (gl_locale_name_from_win32_LANGID): Refine code for Croatian/Bosnian,
1054         Mongolian, Russian, Spanish, Tibetan. Add code for Maori, Quechua,
1055         Northern Sotho, Uighur.
1056
1057 2008-04-16  Bruno Haible  <bruno@clisp.org>
1058
1059         * lib/localename.c (SUBLANG_SINDHI_INDIA): New macro.
1060         (SUBLANG_SINDHI_PAKISTAN): Change value from 1 to 2.
1061         (gl_locale_name_from_win32_LANGID): Fix code for Sindhi.
1062         Reported by Daniel Bergström <daniel@octocode.com>.
1063
1064 2007-12-25  KJK::Hyperion  <hackbunny@reactos.com>
1065             Bruno Haible  <bruno@clisp.org>
1066
1067         * lib/localename.c (gl_locale_name_canonicalize) [WIN32_NATIVE]: New
1068         function.
1069         (gl_locale_name_from_win32_LANGID, gl_locale_name_from_win32_LCID):
1070         New functions, mostly extracted from gl_locale_name_default.
1071         (gl_locale_name_default): Use gl_locale_name_from_win32_LCID.
1072
1073 2008-04-16  Eric Blake  <ebb9@byu.net>
1074
1075         Adjust strtod detection to catch glibc 2.7 bug.
1076         * m4/strtod.m4 (gl_FUNC_STRTOD): Test "nan()" behavior.
1077         Reported by John Gatewood Ham.
1078
1079 2008-04-16  Bruno Haible  <bruno@clisp.org>
1080
1081         Add tentative support for Linux libc5.
1082         * lib/fbufmode.c (fbufmode) [__GNU_LIBRARY__==1]: Reuse glibc2 code.
1083         * lib/fpurge.c (fpurge): Likewise.
1084         * lib/freadable.c (freadable): Likewise.
1085         * lib/freadahead.c (freadahead): Likewise.
1086         * lib/freading.c (freading): Likewise.
1087         * lib/freadptr.c (freadptr): Likewise.
1088         * lib/freadseek.c (freadptrinc): Likewise.
1089         * lib/fseeko.c (rpl_fseeko): Likewise.
1090         * lib/fseterr.c (fseterr): Likewise.
1091         * lib/fwritable.c (fwritable): Likewise.
1092         * lib/fwriting.c (fwriting): Likewise.
1093         Reported by Alain Guibert <alguibert+bts@free.fr>.
1094
1095 2008-04-15  Bruno Haible  <bruno@clisp.org>
1096
1097         * modules/mathl (configure.ac): Define module indicator.
1098
1099 2008-04-15  Bruno Haible  <bruno@clisp.org>
1100
1101         * lib/logl.c (logl): Remove unused variables.
1102
1103 2008-04-15  Bruno Haible  <bruno@clisp.org>
1104
1105         * lib/uniconv/u-conv-to-enc.h (FUNC): Fix return value when U_TO_U8
1106         fails.
1107
1108 2008-04-15  Bruno Haible  <bruno@clisp.org>
1109
1110         * lib/trim.c (trim2): Fix argument of isspace() macro.
1111
1112 2008-04-15  Paolo Bonzini  <bonzini@gnu.org>
1113
1114         * lib/tanl.c (kernel_tanl): Rename flag to invert, initialize it
1115         to 0.
1116         * lib/trigl.c (ieee754_rem_pio2l): Fix range checks.
1117
1118 2008-04-14  Bruno Haible  <bruno@clisp.org>
1119
1120         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Fix underquoting of
1121         AC_LANG_PROGRAM argument.
1122         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Likewise.
1123         * m4/gethrxtime.m4 (gl_ARITHMETIC_HRTIME_T): Likewise.
1124         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Likewise.
1125         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
1126         * m4/math_h.m4 (gl_MATH_H): Likewise.
1127         * m4/mbstate_t.m4 (AC_TYPE_MBSTATE_T): Likewise.
1128         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
1129         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Likewise.
1130         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Likewise.
1131         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
1132         * m4/regex.m4 (gl_REGEX): Likewise.
1133         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Likewise.
1134         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET): Likewise.
1135         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
1136         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): Likewise.
1137         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
1138         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
1139         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
1140         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
1141
1142 2008-04-14  Jim Meyering  <meyering@redhat.com>
1143
1144         test-strtod: fix typos: s/abs/fabs/
1145         * tests/test-strtod.c (main): Use fabs, not narrowing-to-int "abs".
1146
1147 2008-04-13  Bruno Haible  <bruno@clisp.org>
1148
1149         Fix conflict between modules 'canonicalize' and 'canonicalize-lgpl'.
1150         * lib/canonicalize-lgpl.c: Elide the contents if the 'canonicalize'
1151         module is also used and while not building the reloc-wrapper.
1152
1153 2008-04-13  Bruno Haible  <bruno@clisp.org>
1154
1155         * tests/test-getaddrinfo.c (simple): Ignore EAI_NODATA error.
1156
1157 2008-04-13  Bruno Haible  <bruno@clisp.org>
1158
1159         Fix AIX compilation failure introduced on 2008-04-02.
1160         * tests/test-frexp.c (exp): Undefine before redefining.
1161         * tests/test-frexpl.c (exp): Likewise.
1162
1163 2008-04-13  Bruno Haible  <bruno@clisp.org>
1164
1165         Work around a HP-UX stdio bug.
1166         * tests/test-ftell.c (main): Disable the fseek/ftell test on HP-UX.
1167         * tests/test-ftello.c (main): Likewise.
1168         * doc/posix-functions/ftell.texi: Mention HP-UX bug.
1169         * doc/posix-functions/ftello.texi: Likewise.
1170
1171 2008-04-13  Bruno Haible  <bruno@clisp.org>
1172
1173         Make test-signbit pass on HP-UX/hppa.
1174         * tests/test-signbit.c (minus_zerol): New variable.
1175         (test_signbitl): Use it.
1176
1177 2008-04-13  Bruno Haible  <bruno@clisp.org>
1178
1179         Make truncl work on OSF/1 4.0.
1180         * m4/truncl.m4 (gl_FUNC_TRUNCL): Test whether truncl actually works.
1181         Set REPLACE_TRUNCL, not HAVE_DECL_TRUNCL.
1182         * lib/math.in.h (truncl): Test REPLACE_TRUNCL, not HAVE_DECL_TRUNCL.
1183         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_TRUNCL, not
1184         HAVE_DECL_TRUNCL.
1185         * modules/math (Makefile.am): Substitute REPLACE_TRUNCL, not
1186         HAVE_DECL_TRUNCL.
1187         * doc/posix-functions/truncl.texi: Document the OSF/1 4.0 problem.
1188
1189 2008-04-13  Bruno Haible  <bruno@clisp.org>
1190
1191         * lib/unictype.h: Remove trailing comma from enumeration definitions.
1192
1193 2008-04-13  Bruno Haible  <bruno@clisp.org>
1194
1195         * lib/count-one-bits.h (COUNT_ONE_BITS): Rewrite verification
1196         expression, so as to avoid HP-UX 11 cc compiler bug.
1197
1198 2008-04-13  Bruno Haible  <bruno@clisp.org>
1199
1200         * m4/regex.m4 (gl_PREREQ_REGEX): Also check for <libintl.h>.
1201
1202 2008-04-13  Bruno Haible  <bruno@clisp.org>
1203
1204         * lib/git-merge-changelog.c: Remove empty declaration outside of
1205         functions.
1206
1207 2008-04-13  Bruno Haible  <bruno@clisp.org>
1208
1209         * modules/quotearg-tests (Makefile.am): Define test_quotearg_LDADD.
1210
1211 2008-04-13  Bruno Haible  <bruno@clisp.org>
1212
1213         * doc/posix-headers/sys_socket.texi: Document the problem on EMX.
1214         * lib/sys_socket.in.h (SHUT_RD, SHUT_WR, SHUT_RDWR): Define if missing.
1215         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Replace <sys/socket.h>
1216         also if it exists but lacks definitions of the SHUT_* macros.
1217         * modules/sys_socket (Description): Update.
1218         Reported by Elbert Pol <e.pol@chello.nl>.
1219
1220 2008-04-13  Bruno Haible  <bruno@clisp.org>
1221
1222         * lib/localcharset.c (OS2): Don't redefine if already defined.
1223         Reported by Elbert Pol <e.pol@chello.nl>.
1224
1225 2008-04-13  Bruno Haible  <bruno@clisp.org>
1226
1227         * lib/binary-io.h [__EMX__]: Include <io.h>.
1228         Reported by Elbert Pol <e.pol@chello.nl>.
1229
1230 2008-04-12  Bruno Haible  <bruno@clisp.org>
1231
1232         * lib/fpucw.h: Enable the definitions also for x86_64.
1233         Needed for NetBSD/x86_64.
1234         Reported by Thomas Klausner <tk@giga.or.at>.
1235
1236 2008-04-12  Bruno Haible  <bruno@clisp.org>
1237
1238         * tests/test-strtod.c: Include isnand.h.
1239         (main): Use isnand instead of isnan.
1240         Reported by Jim Meyering.
1241
1242 2008-04-12  Bruno Haible  <bruno@clisp.org>
1243
1244         * m4/isnanf.m4 (gl_ISNANF_WORKS): Add a test for a special NaN.
1245         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
1246
1247 2008-04-12  Jim Meyering  <meyering@redhat.com>
1248
1249         * m4/math_h.m4 (gl_MATH_H): Fix typos.
1250
1251 2008-04-12  Bruno Haible  <bruno@clisp.org>
1252
1253         * lib/freadptr.c (freadptr) [__EMX__]: Fix wrong assertion.
1254         Reported by Elbert Pol <e.pol@chello.nl>.
1255
1256 2008-04-12  Eric Blake  <ebb9@byu.net>
1257
1258         Work around Solaris 10 math.h bug.
1259         * m4/math_h.m4 (gl_MATH_H): Check for bug.
1260         (gl_MATH_H_DEFAULTS): Set up default.
1261         * modules/math (Makefile.am): Replace new indicators.
1262         * lib/math.in.h (NAN, HUGE_VAL): Provide replacements.
1263         * tests/test-math.c (main): Test this.
1264         * m4/strtod.m4 (gl_FUNC_STRTOD): Don't rely on HUGE_VAL.
1265         * doc/posix-headers/math.texi (math.h): Mention bug.
1266         Reported by Nelson H. F. Beebe and Jim Meyering.
1267
1268 2008-04-11  Bruno Haible  <bruno@clisp.org>
1269
1270         Adapt to future versions of Apple GCC.
1271         * lib/argp-fmtstream.h (ARGP_FS_EI): Don't test __GNUC_GNU_INLINE__.
1272         Reported by Peter O'Gorman <peter@pogma.com>.
1273
1274 2008-04-11  Bruno Haible  <bruno@clisp.org>
1275
1276         * tests/test-getaddrinfo.c (simple): Ignore EAI_NONAME error.
1277
1278 2008-04-11  Bruno Haible  <bruno@clisp.org>
1279
1280         * modules/strsignal-tests (Makefile.am): Define test_strsignal_LDADD.
1281
1282         * modules/getaddrinfo-tests (Makefile.am): Define
1283         test_getaddrinfo_LDADD.
1284
1285 2008-04-11  Bruno Haible  <bruno@clisp.org>
1286
1287         * lib/strsignal.c (_sys_siglist): Don't declare if already declared.
1288         (init): Fix syntax error.
1289         * m4/strsignal.m4 (gl_PREREQ_STRSIGNAL): Check whether _sys_siglist
1290         is declared.
1291
1292 2008-04-11  Bruno Haible  <bruno@clisp.org>
1293
1294         * lib/glob.c: Include <stdbool.h>. Needed at least with IRIX cc.
1295         * modules/glob (Depends-on): Add stdbool.
1296
1297 2008-04-11  Bruno Haible  <bruno@clisp.org>
1298
1299         * lib/trim.c: Include <string.h>.
1300
1301 2008-04-11  Eric Blake  <ebb9@byu.net>
1302
1303         Avoid compile failure on OS/2.
1304         * lib/regex_internal.h (internal_function): Disable optimization
1305         on OS/2 (__EMX__), where it caused compiler error.
1306         Reported by Elbert Pol.
1307
1308 2008-04-11  Bruno Haible  <bruno@clisp.org>
1309
1310         Flush the standard error stream before aborting. Needed on mingw.
1311         * tests/test-argmatch.c (ASSERT): Call fflush(stderr) before abort().
1312         * tests/test-array_list.c (ASSERT): Likewise.
1313         * tests/test-array_oset.c (ASSERT): Likewise.
1314         * tests/test-avltree_list.c (ASSERT): Likewise.
1315         * tests/test-avltree_oset.c (ASSERT): Likewise.
1316         * tests/test-avltreehash_list.c (ASSERT): Likewise.
1317         * tests/test-binary-io.c (ASSERT): Likewise.
1318         * tests/test-byteswap.c (ASSERT): Likewise.
1319         * tests/test-c-ctype.c (ASSERT): Likewise.
1320         * tests/test-c-strcasecmp.c (ASSERT): Likewise.
1321         * tests/test-c-strcasestr.c (ASSERT): Likewise.
1322         * tests/test-c-strncasecmp.c (ASSERT): Likewise.
1323         * tests/test-c-strstr.c (ASSERT): Likewise.
1324         * tests/test-canonicalize-lgpl.c (ASSERT): Likewise.
1325         * tests/test-canonicalize.c (ASSERT): Likewise.
1326         * tests/test-carray_list.c (ASSERT): Likewise.
1327         * tests/test-ceilf1.c (ASSERT): Likewise.
1328         * tests/test-ceilf2.c (ASSERT): Likewise.
1329         * tests/test-ceill.c (ASSERT): Likewise.
1330         * tests/test-count-one-bits.c (ASSERT): Likewise.
1331         * tests/test-fbufmode.c (ASSERT): Likewise.
1332         * tests/test-fflush2.c (ASSERT): Likewise.
1333         * tests/test-floorf1.c (ASSERT): Likewise.
1334         * tests/test-floorf2.c (ASSERT): Likewise.
1335         * tests/test-floorl.c (ASSERT): Likewise.
1336         * tests/test-fopen.c (ASSERT): Likewise.
1337         * tests/test-fpending.c (ASSERT): Likewise.
1338         * tests/test-fprintf-posix.c (ASSERT): Likewise.
1339         * tests/test-fpurge.c (ASSERT): Likewise.
1340         * tests/test-freadable.c (ASSERT): Likewise.
1341         * tests/test-freadahead.c (ASSERT): Likewise.
1342         * tests/test-freading.c (ASSERT): Likewise.
1343         * tests/test-freadptr.c (ASSERT): Likewise.
1344         * tests/test-freadptr2.c (ASSERT): Likewise.
1345         * tests/test-freadseek.c (ASSERT): Likewise.
1346         * tests/test-freopen.c (ASSERT): Likewise.
1347         * tests/test-frexp.c (ASSERT): Likewise.
1348         * tests/test-frexpl.c (ASSERT): Likewise.
1349         * tests/test-fseek.c (ASSERT): Likewise.
1350         * tests/test-fseeko.c (ASSERT): Likewise.
1351         * tests/test-fstrcmp.c (ASSERT): Likewise.
1352         * tests/test-ftell.c (ASSERT): Likewise.
1353         * tests/test-ftello.c (ASSERT): Likewise.
1354         * tests/test-func.c (ASSERT): Likewise.
1355         * tests/test-fwritable.c (ASSERT): Likewise.
1356         * tests/test-fwriting.c (ASSERT): Likewise.
1357         * tests/test-getdelim.c (ASSERT): Likewise.
1358         * tests/test-getline.c (ASSERT): Likewise.
1359         * tests/test-i-ring.c (ASSERT): Likewise.
1360         * tests/test-iconv-utf.c (ASSERT): Likewise.
1361         * tests/test-iconv.c (ASSERT): Likewise.
1362         * tests/test-isfinite.c (ASSERT): Likewise.
1363         * tests/test-isnand.c (ASSERT): Likewise.
1364         * tests/test-isnanf.c (ASSERT): Likewise.
1365         * tests/test-isnanl.h (ASSERT): Likewise.
1366         * tests/test-ldexpl.c (ASSERT): Likewise.
1367         * tests/test-linked_list.c (ASSERT): Likewise.
1368         * tests/test-linkedhash_list.c (ASSERT): Likewise.
1369         * tests/test-localename.c (ASSERT): Likewise.
1370         * tests/test-lseek.c (ASSERT): Likewise.
1371         * tests/test-mbscasecmp.c (ASSERT): Likewise.
1372         * tests/test-mbscasestr1.c (ASSERT): Likewise.
1373         * tests/test-mbscasestr2.c (ASSERT): Likewise.
1374         * tests/test-mbscasestr3.c (ASSERT): Likewise.
1375         * tests/test-mbscasestr4.c (ASSERT): Likewise.
1376         * tests/test-mbschr.c (ASSERT): Likewise.
1377         * tests/test-mbscspn.c (ASSERT): Likewise.
1378         * tests/test-mbsncasecmp.c (ASSERT): Likewise.
1379         * tests/test-mbspbrk.c (ASSERT): Likewise.
1380         * tests/test-mbspcasecmp.c (ASSERT): Likewise.
1381         * tests/test-mbsrchr.c (ASSERT): Likewise.
1382         * tests/test-mbsspn.c (ASSERT): Likewise.
1383         * tests/test-mbsstr1.c (ASSERT): Likewise.
1384         * tests/test-mbsstr2.c (ASSERT): Likewise.
1385         * tests/test-mbsstr3.c (ASSERT): Likewise.
1386         * tests/test-memchr2.c (ASSERT): Likewise.
1387         * tests/test-memmem.c (ASSERT): Likewise.
1388         * tests/test-open.c (ASSERT): Likewise.
1389         * tests/test-printf-frexp.c (ASSERT): Likewise.
1390         * tests/test-printf-frexpl.c (ASSERT): Likewise.
1391         * tests/test-printf-posix.c (ASSERT): Likewise.
1392         * tests/test-quotearg.c (ASSERT): Likewise.
1393         * tests/test-rbtree_list.c (ASSERT): Likewise.
1394         * tests/test-rbtree_oset.c (ASSERT): Likewise.
1395         * tests/test-rbtreehash_list.c (ASSERT): Likewise.
1396         * tests/test-round1.c (ASSERT): Likewise.
1397         * tests/test-roundf1.c (ASSERT): Likewise.
1398         * tests/test-roundl.c (ASSERT): Likewise.
1399         * tests/test-signbit.c (ASSERT): Likewise.
1400         * tests/test-sleep.c (ASSERT): Likewise.
1401         * tests/test-snprintf-posix.c (ASSERT): Likewise.
1402         * tests/test-snprintf.c (ASSERT): Likewise.
1403         * tests/test-sprintf-posix.c (ASSERT): Likewise.
1404         * tests/test-stat-time.c (ASSERT): Likewise.
1405         * tests/test-strcasestr.c (ASSERT): Likewise.
1406         * tests/test-strerror.c (ASSERT): Likewise.
1407         * tests/test-striconv.c (ASSERT): Likewise.
1408         * tests/test-striconveh.c (ASSERT): Likewise.
1409         * tests/test-striconveha.c (ASSERT): Likewise.
1410         * tests/test-strsignal.c (ASSERT): Likewise.
1411         * tests/test-strstr.c (ASSERT): Likewise.
1412         * tests/test-strtod.c (ASSERT): Likewise.
1413         * tests/test-trunc1.c (ASSERT): Likewise.
1414         * tests/test-trunc2.c (ASSERT): Likewise.
1415         * tests/test-truncf1.c (ASSERT): Likewise.
1416         * tests/test-truncf2.c (ASSERT): Likewise.
1417         * tests/test-truncl.c (ASSERT): Likewise.
1418         * tests/test-vasnprintf-posix.c (ASSERT): Likewise.
1419         * tests/test-vasnprintf-posix2.c (ASSERT): Likewise.
1420         * tests/test-vasnprintf.c (ASSERT): Likewise.
1421         * tests/test-vasprintf-posix.c (ASSERT): Likewise.
1422         * tests/test-vasprintf.c (ASSERT): Likewise.
1423         * tests/test-vfprintf-posix.c (ASSERT): Likewise.
1424         * tests/test-vprintf-posix.c (ASSERT): Likewise.
1425         * tests/test-vsnprintf-posix.c (ASSERT): Likewise.
1426         * tests/test-vsnprintf.c (ASSERT): Likewise.
1427         * tests/test-vsprintf-posix.c (ASSERT): Likewise.
1428         * tests/test-wcwidth.c (ASSERT): Likewise.
1429         * tests/test-xfprintf-posix.c (ASSERT): Likewise.
1430         * tests/test-xprintf-posix.c (ASSERT): Likewise.
1431         * tests/test-xvasprintf.c (ASSERT): Likewise.
1432         * tests/uniconv/test-u16-conv-from-enc.c (ASSERT): Likewise.
1433         * tests/uniconv/test-u16-conv-to-enc.c (ASSERT): Likewise.
1434         * tests/uniconv/test-u16-strconv-from-enc.c (ASSERT): Likewise.
1435         * tests/uniconv/test-u16-strconv-to-enc.c (ASSERT): Likewise.
1436         * tests/uniconv/test-u32-conv-from-enc.c (ASSERT): Likewise.
1437         * tests/uniconv/test-u32-conv-to-enc.c (ASSERT): Likewise.
1438         * tests/uniconv/test-u32-strconv-from-enc.c (ASSERT): Likewise.
1439         * tests/uniconv/test-u32-strconv-to-enc.c (ASSERT): Likewise.
1440         * tests/uniconv/test-u8-conv-from-enc.c (ASSERT): Likewise.
1441         * tests/uniconv/test-u8-conv-to-enc.c (ASSERT): Likewise.
1442         * tests/uniconv/test-u8-strconv-from-enc.c (ASSERT): Likewise.
1443         * tests/uniconv/test-u8-strconv-to-enc.c (ASSERT): Likewise.
1444         * tests/unictype/test-bidi_byname.c (ASSERT): Likewise.
1445         * tests/unictype/test-bidi_name.c (ASSERT): Likewise.
1446         * tests/unictype/test-bidi_of.c (ASSERT): Likewise.
1447         * tests/unictype/test-bidi_test.c (ASSERT): Likewise.
1448         * tests/unictype/test-block_list.c (ASSERT): Likewise.
1449         * tests/unictype/test-block_of.c (ASSERT): Likewise.
1450         * tests/unictype/test-block_test.c (ASSERT): Likewise.
1451         * tests/unictype/test-categ_and.c (ASSERT): Likewise.
1452         * tests/unictype/test-categ_and_not.c (ASSERT): Likewise.
1453         * tests/unictype/test-categ_byname.c (ASSERT): Likewise.
1454         * tests/unictype/test-categ_name.c (ASSERT): Likewise.
1455         * tests/unictype/test-categ_none.c (ASSERT): Likewise.
1456         * tests/unictype/test-categ_of.c (ASSERT): Likewise.
1457         * tests/unictype/test-categ_or.c (ASSERT): Likewise.
1458         * tests/unictype/test-categ_test_withtable.c (ASSERT): Likewise.
1459         * tests/unictype/test-combining.c (ASSERT): Likewise.
1460         * tests/unictype/test-decdigit.c (ASSERT): Likewise.
1461         * tests/unictype/test-digit.c (ASSERT): Likewise.
1462         * tests/unictype/test-mirror.c (ASSERT): Likewise.
1463         * tests/unictype/test-numeric.c (ASSERT): Likewise.
1464         * tests/unictype/test-pr_byname.c (ASSERT): Likewise.
1465         * tests/unictype/test-pr_test.c (ASSERT): Likewise.
1466         * tests/unictype/test-predicate-part1.h (ASSERT): Likewise.
1467         * tests/unictype/test-scripts.c (ASSERT): Likewise.
1468         * tests/unictype/test-sy_c_ident.c (ASSERT): Likewise.
1469         * tests/unictype/test-sy_java_ident.c (ASSERT): Likewise.
1470         * tests/unistdio/test-u16-asnprintf1.c (ASSERT): Likewise.
1471         * tests/unistdio/test-u16-vasnprintf1.c (ASSERT): Likewise.
1472         * tests/unistdio/test-u16-vasnprintf2.c (ASSERT): Likewise.
1473         * tests/unistdio/test-u16-vasnprintf3.c (ASSERT): Likewise.
1474         * tests/unistdio/test-u16-vasprintf1.c (ASSERT): Likewise.
1475         * tests/unistdio/test-u16-vsnprintf1.c (ASSERT): Likewise.
1476         * tests/unistdio/test-u16-vsprintf1.c (ASSERT): Likewise.
1477         * tests/unistdio/test-u32-asnprintf1.c (ASSERT): Likewise.
1478         * tests/unistdio/test-u32-vasnprintf1.c (ASSERT): Likewise.
1479         * tests/unistdio/test-u32-vasnprintf2.c (ASSERT): Likewise.
1480         * tests/unistdio/test-u32-vasnprintf3.c (ASSERT): Likewise.
1481         * tests/unistdio/test-u32-vasprintf1.c (ASSERT): Likewise.
1482         * tests/unistdio/test-u32-vsnprintf1.c (ASSERT): Likewise.
1483         * tests/unistdio/test-u32-vsprintf1.c (ASSERT): Likewise.
1484         * tests/unistdio/test-u8-asnprintf1.c (ASSERT): Likewise.
1485         * tests/unistdio/test-u8-vasnprintf1.c (ASSERT): Likewise.
1486         * tests/unistdio/test-u8-vasnprintf2.c (ASSERT): Likewise.
1487         * tests/unistdio/test-u8-vasnprintf3.c (ASSERT): Likewise.
1488         * tests/unistdio/test-u8-vasprintf1.c (ASSERT): Likewise.
1489         * tests/unistdio/test-u8-vsnprintf1.c (ASSERT): Likewise.
1490         * tests/unistdio/test-u8-vsprintf1.c (ASSERT): Likewise.
1491         * tests/unistdio/test-ulc-asnprintf1.c (ASSERT): Likewise.
1492         * tests/unistdio/test-ulc-vasnprintf1.c (ASSERT): Likewise.
1493         * tests/unistdio/test-ulc-vasnprintf2.c (ASSERT): Likewise.
1494         * tests/unistdio/test-ulc-vasnprintf3.c (ASSERT): Likewise.
1495         * tests/unistdio/test-ulc-vasprintf1.c (ASSERT): Likewise.
1496         * tests/unistdio/test-ulc-vsnprintf1.c (ASSERT): Likewise.
1497         * tests/unistdio/test-ulc-vsprintf1.c (ASSERT): Likewise.
1498         * tests/uniwidth/test-u16-strwidth.c (ASSERT): Likewise.
1499         * tests/uniwidth/test-u16-width.c (ASSERT): Likewise.
1500         * tests/uniwidth/test-u32-strwidth.c (ASSERT): Likewise.
1501         * tests/uniwidth/test-u32-width.c (ASSERT): Likewise.
1502         * tests/uniwidth/test-u8-strwidth.c (ASSERT): Likewise.
1503         * tests/uniwidth/test-u8-width.c (ASSERT): Likewise.
1504         * tests/uniwidth/test-uc_width.c (ASSERT): Likewise.
1505         Reported by Eric Blake.
1506
1507 2008-04-11  Bruno Haible  <bruno@clisp.org>
1508
1509         * lib/wchar.in.h: Tweak comment.
1510
1511 2008-04-11  Bruno Haible  <bruno@clisp.org>
1512
1513         Fix __GNUC_STDC_INLINE__ predefine with Apple GCC on MacOS X 10.5.
1514         * gnulib-tool (func_emit_initmacro_start): Emit an invocation of
1515         gl_COMMON.
1516         * m4/gnulib-common.m4 (gl_COMMON, gl_COMMON_BODY): New macros.
1517
1518 2008-04-11  Bruno Haible  <bruno@clisp.org>
1519
1520         * modules/git-merge-changelog (git_merge_changelog_LDADD): Add LIBINTL.
1521
1522 2008-04-11  Simon Josefsson  <simon@josefsson.org>
1523
1524         * lib/gc-gnulib.c: On Windows, use CryptGenRandom from CSP instead
1525         of attempting to use non-existing /dev/*random.  Based on patch
1526         from Adam Strzelecki <ono@java.pl> in
1527         <http://lists.gnu.org/archive/html/help-gsasl/2008-02/msg00000.html>.
1528
1529 2008-04-08  Bruno Haible  <bruno@clisp.org>
1530
1531         Add tentative support for emx+gcc.
1532         * lib/fbufmode.c (fbufmode) [__EMX__]: Add conditional code.
1533         * lib/fpurge.c (fpurge): Likewise.
1534         * lib/freadable.c (freadable): Likewise.
1535         * lib/freadahead.c (freadahead): Likewise.
1536         * lib/freading.c (freading): Likewise.
1537         * lib/freadptr.c (freadptr): Likewise.
1538         * lib/freadseek.c (freadptrinc): Likewise.
1539         * lib/fseeko.c (rpl_fseeko): Likewise.
1540         * lib/fseterr.c (fseterr): Likewise.
1541         * lib/fwritable.c (fwritable): Likewise.
1542         * lib/fwriting.c (fwriting): Likewise.
1543         * m4/fpending.m4 (gl_FUNC_FPENDING): Add a variant for emx+gcc.
1544
1545 2008-04-09  Eric Blake  <ebb9@byu.net>
1546
1547         Avoid some autoconf warnings.
1548         * m4/regex.m4 (gl_REGEX): s/AC_HELP_STRING/AS_HELP_STRING/.
1549         * m4/acl.m4 (gl_FUNC_ACL): Likewise.
1550         * m4/afs.m4 (gl_AFS): Likewise.
1551         * m4/gc-random.m4 (gl_GC_RANDOM): Likewise.
1552         * m4/include_next.m4 (gl_INCLUDE_NEXT): s/AC_FOREACH/m4_foreach_w/.
1553         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
1554         * m4/stdint.m4 (gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED)
1555         (gl_INTEGER_TYPE_SUFFIX): Likewise.
1556         * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE)
1557         (AC_CHECK_DECLS_ONCE): Likewise.
1558         Rename file...
1559         * m4/onceonly.m4: ...to this, and delete 2.54 variant, now that
1560         gnulib-tool requires autoconf 2.59 or better.
1561         * gnulib-tool (func_get_filelist): s/\(onceonly\)_2_57.m4/\1.m4/.
1562
1563 2008-04-08  Eric Blake  <ebb9@byu.net>
1564
1565         Use 'git describe --match' if present (added in git 1.5.5).
1566         * build-aux/git-version-gen: Limit result to tags that match 'v*'
1567         if possible.
1568
1569 2008-04-08  Bruno Haible  <bruno@clisp.org>
1570
1571         Add tentative support for OpenServer.
1572         * lib/fbufmode.c (fbufmode): Add conditional define for _flag, _base,
1573         _ptr, _cnt.
1574         * lib/fpurge.c (fpurge): Likewise.
1575         * lib/freadable.c (freadable): Likewise.
1576         * lib/freadahead.c (freadahead): Likewise.
1577         * lib/freading.c (freading): Likewise.
1578         * lib/freadptr.c (freadptr): Likewise.
1579         * lib/freadseek.c (freadptrinc): Likewise.
1580         * lib/fseeko.c (rpl_fseeko): Likewise.
1581         * lib/fseterr.c (fseterr): Likewise.
1582         * lib/fwritable.c (fwritable): Likewise.
1583         * lib/fwriting.c (fwriting): Likewise.
1584         Reported by Roger Cornelius <rac@tenzing.org> and
1585         Brian K. White <brian@aljex.com>.
1586
1587 2008-04-06  Jim Meyering  <meyering@redhat.com>
1588
1589         * gnulib-tool (func_add_or_update): s/backuped/backed up/ in diagnostic
1590
1591 2008-04-06  Bruno Haible  <bruno@clisp.org>
1592
1593         Avoid possible error with non-ASCII bytes in UTF-8 locales.
1594         * tests/test-fprintf-posix.sh: Use "LC_ALL=C tr" instead of "tr".
1595         * tests/test-printf-posix.sh: Likewise.
1596         * tests/test-vfprintf-posix.sh: Likewise.
1597         * tests/test-vprintf-posix.sh: Likewise.
1598         * tests/test-xprintf-posix.sh: Likewise.
1599
1600 2008-04-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1601
1602         * m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT): Fix quoting,
1603         hide error from 'ls', needed on OS/2.
1604         Report by Elbert Pol <elbert.pol@gmail.com>.
1605
1606 2008-04-04  Eric Blake  <ebb9@byu.net>
1607
1608         Make test-fseeko.c failures meaningful.
1609         * tests/test-fseeko.c: Print line number on failure.
1610         * tests/test-fseek.c: Likewise.
1611         Reported by Nelson H. F. Beebe.
1612
1613         Improve strtod bug detection check.
1614         * m4/strtod.m4 (gl_FUNC_STRTOD): Also check for hex-float parsing,
1615         required for Solaris 10.
1616         Reported by Bob Friesenhahn and Nelson H. F. Beebe.
1617
1618 2008-04-04  Bruno Haible  <bruno@clisp.org>
1619
1620         * modules/relocatable-prog-wrapper (Files): Add m4/environ.m4. Needed
1621         by m4/setenv.m4.
1622
1623 2008-04-03  Eric Blake  <ebb9@byu.net>
1624
1625         Ensure sane .version contents.
1626         * top/GNUmakefile (_dummy): Also delete .version when rebuilding
1627         version string.
1628         * build-aux/git-version-gen: Improve documentation.
1629
1630         Make GNU make output nicer.
1631         * top/GNUmakefile [!_have-Makefile]: Add dependency on
1632         MAKECMDGOALS to enforce message for all command line targets.  Set
1633         srcdir for use in maint.mk.
1634
1635         Another maintainer tweak.
1636         * top/GNUmakefile (_is-dist-target): Allow maintainer-distcheck as
1637         a target that regenerates version.
1638
1639 2008-04-03  Jim Meyering  <meyering@redhat.com>
1640
1641         vc-list-files: don't cause coreutils "make po-check" failure
1642         * build-aux/vc-list-files: Skip postprocessing when $2 is '.'
1643
1644 2008-04-03  Eric Blake  <ebb9@byu.net>
1645
1646         Allow VPATH usage of vc-list-files.
1647         * build-aux/vc-list-files (scriptversion): Add timestamp.
1648         (options): Add --help, --version, -C.
1649         (CVS): Support installed cvsu.
1650
1651 2008-04-02  Bruno Haible  <bruno@clisp.org>
1652
1653         Avoid some "statement with no effect" warnings from gcc.
1654         * tests/test-wctype.c (main): Explicitly ignore unused values.
1655         Reported by Jim Meyering.
1656
1657 2008-04-02  Jim Meyering  <meyering@redhat.com>
1658
1659         Avoid some warnings from "gcc -Wshadow".
1660         * tests/test-frexp.c (exp): Define to a different identifier.
1661         * tests/test-frexpl.c (exp): Likewise.
1662
1663 2008-04-03  Jim Meyering  <meyering@redhat.com>
1664
1665         bootstrap: remove dangling *.[ch] symlinks from lib
1666         * build-aux/bootstrap [dangling symlink removal]: Move find's
1667         -depth option to precede all others, to avoid a warning.
1668         Remove *.[ch] files too, and from "$source_base" (usually lib/).
1669
1670 2008-04-02  Bruno Haible  <bruno@clisp.org>
1671
1672         Avoid some warnings from "gcc -Wshadow".
1673         * tests/tests-vfprintf-posix.c (my_fprintf): Move after test_function.
1674         * tests/tests-vprintf-posix.c (my_printf): Move after test_function.
1675         * tests/tests-vsnprintf-posix.c (my_snprintf): Move after test_function.
1676         * tests/tests-vsprintf-posix.c (my_sprintf): Move after test_function.
1677         Reported by Jim Meyering.
1678
1679 2008-04-01  Bruno Haible  <bruno@clisp.org>
1680
1681         Fix test to work on IRIX 6.5 with cc.
1682         * tests/test-math.c (numeric_equal): New function.
1683         (main): Use it.
1684
1685 2008-04-01  Bruno Haible  <bruno@clisp.org>
1686
1687         * doc/posix-headers/math.texi: Refine documentation of NAN problem.
1688
1689 2008-04-01  Bruno Haible  <bruno@clisp.org>
1690
1691         * tests/test-vasnprintf-posix.c: Include nan.h instead of <math.h>.
1692         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
1693         * modules/vasnprintf-posix-tests (Files): Add tests/nan.h.
1694         (Depends-on): Remove math.
1695
1696         * tests/test-vasprintf-posix.c: Include nan.h instead of <math.h>.
1697         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
1698         * modules/vasprintf-posix-tests (Files): Add tests/nan.h.
1699         (Depends-on): Remove math.
1700
1701         * tests/test-snprintf-posix.h: Include nan.h instead of <math.h>.
1702         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
1703         * modules/snprintf-posix-tests (Files): Add tests/nan.h.
1704         (Depends-on): Remove math.
1705         * modules/vsnprintf-posix-tests (Files): Add tests/nan.h.
1706         (Depends-on): Remove math.
1707
1708         * tests/test-sprintf-posix.h: Include nan.h instead of <math.h>.
1709         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
1710         * modules/sprintf-posix-tests (Files): Add tests/nan.h.
1711         (Depends-on): Remove math.
1712         * modules/vsprintf-posix-tests (Files): Add tests/nan.h.
1713         (Depends-on): Remove math.
1714
1715         * tests/test-round1.c: Include nan.h.
1716         (main): Use NaNd instead of NAN.
1717         * modules/round-tests (Files): Add tests/nan.h.
1718
1719         * tests/test-trunc1.c: Include nan.h.
1720         (main): Use NaNd instead of NAN.
1721         * modules/trunc-tests (Files): Add tests/nan.h.
1722
1723         * tests/test-roundf1.c: Include nan.h.
1724         (main): Use NaNf instead of NAN.
1725         * modules/roundf-tests (Files): Add tests/nan.h.
1726
1727         * tests/test-truncf1.c: Include nan.h.
1728         (main): Use NaNf instead of NAN.
1729         * modules/truncf-tests (Files): Add tests/nan.h.
1730
1731         * tests/test-ceilf1.c: Include nan.h.
1732         (main): Use NaNf instead of NAN.
1733         * modules/ceilf-tests (Files): Add tests/nan.h.
1734
1735         * tests/test-floorf1.c: Include nan.h.
1736         (main): Use NaNf instead of NAN.
1737         * modules/floorf-tests (Files): Add tests/nan.h.
1738
1739         * tests/test-isnanf.c: Include nan.h instead of <math.h>.
1740         (main): Use NaNf instead of NAN.
1741         * modules/isnanf-nolibm-tests (Files): Add tests/nan.h.
1742
1743         * tests/test-isnand.c: Include nan.h instead of <math.h>.
1744         (main): Use NaNd instead of NAN.
1745         * modules/isnand-nolibm-tests (Files): Add tests/nan.h.
1746
1747         * tests/test-frexp.c: Include nan.h.
1748         (main): Use NaNd instead of NAN.
1749         * modules/frexp-tests (Files): Add tests/nan.h.
1750
1751         * lib/isnan.c: Don't include <math.h>.
1752         (FUNC): Don't use NAN macro.
1753         * modules/isnand-nolibm (Depends-on): Remove math.
1754         * modules/isnanf-nolibm (Depends-on): Remove math.
1755         * modules/isnanl (Depends-on): Remove math.
1756         * modules/isnanl-nolibm (Depends-on): Remove math.
1757
1758         * tests/nan.h: New file.
1759
1760 2008-04-01  Eric Blake  <ebb9@byu.net>
1761
1762         Fix typos.
1763         * tests/test-strtod.c (main): s/FLT_/DBL_/ for minimum and epsilon
1764         values to be the right type.
1765
1766         For now, cater to gnulib strtod inaccuracies.
1767         * tests/test-strtod.c (main): Allow 1-ulp error on expected
1768         fractional results.  While not as nice from a QoI perspective, it
1769         is a quicker patch than correctly implementing decimal to binary
1770         rounding.
1771
1772 2008-03-31  Eric Blake  <ebb9@byu.net>
1773
1774         Guarantee a definition of NAN.
1775         * lib/math.in.h (NAN): Define if missing.
1776         * tests/test-math.c (main): Test it.
1777         * doc/posix-headers/math.texi (math.h): Document this.
1778         * lib/isnan.c (rpl_isnand): Use it.
1779         * tests/test-ceilf1.c (NaN): Delete, and use NAN instead.
1780         * tests/test-floorf1.c (NaN): Likewise.
1781         * tests/test-frexp.c (NaN): Likewise.
1782         * tests/test-isnand.c (NaN): Likewise.
1783         * tests/test-isnanf.c (NaN): Likewise.
1784         * tests/test-round1.c (NaN): Likewise.
1785         * tests/test-roundf1.c (NaN): Likewise.
1786         * tests/test-snprintf-posix.h (NaN): Likewise.
1787         * tests/test-sprintf-posix.h (NaN): Likewise.
1788         * tests/test-trunc1.c (NaN): Likewise.
1789         * tests/test-truncf1.c (NaN): Likewise.
1790         * tests/test-vasnprintf-posix.c (NaN): Likewise.
1791         * tests/test-vasprintf-posix.c (NaN): Likewise.
1792         * modules/isnand-nolibm (Depends-on): Add math.
1793         * modules/isnanf-nolibm (Depends-on): Likewise.
1794         * modules/isnanl (Depends-on): Likewise.
1795         * modules/isnanl-nolibm (Depends-on): Likewise.
1796         * modules/snprintf-posix-tests (Depends-on): Likewise.
1797         * modules/sprintf-posix-tests (Depends-on): Likewise.
1798         * modules/vsnprintf-posix-tests (Depends-on): Likewise.
1799         * modules/vsprintf-posix-tests (Depends-on): Likewise.
1800         * modules/vasnprintf-posix-tests (Depends-on): Likewise.
1801         * modules/vasprintf-posix-tests (Depends-on): Likewise.
1802
1803 2008-03-31  Bruno Haible  <bruno@clisp.org>
1804
1805         * tests/test-strtod.c (main): Update results for OSF/1 platforms.
1806         * doc/posix-functions/strtod.texi: Likewise.
1807
1808 2008-03-31  Bruno Haible  <bruno@clisp.org>
1809
1810         * tests/test-strtod.c (main): Don't use C99 syntax.
1811
1812 2008-03-31  Bruno Haible  <bruno@clisp.org>
1813
1814         * tests/test-strtod.c (main): Don't test NAN macro. Needed for Solaris.
1815         Reported by Eric Blake.
1816
1817 2008-03-31  Jim Meyering  <meyering@redhat.com>
1818
1819         Don't compare actual signbit return values.
1820         * tests/test-strtod.c (main): Rather, compare only their
1821         zero/non-zero nature.
1822
1823 2008-03-31  Eric Blake  <ebb9@byu.net>
1824
1825         More strtod documentation.
1826         * doc/posix-functions/strtod.texi (strtod): Interpret more test
1827         failures as distinct bugs.
1828
1829 2008-03-30  Paul Eggert  <eggert@cs.ucla.edu>
1830
1831         * lib/wchar.in.h [defined __need_mbstate_t]: Just include <wchar.h>.
1832         Problem reported by Erik Benada in
1833         <http://lists.gnu.org/archive/html/bug-gnulib/2008-03/msg00249.html>.
1834
1835 2008-03-30  Bruno Haible  <bruno@clisp.org>
1836
1837         * tests/test-strtod.c: Add comments about which assertion fails on which
1838         platform.
1839         * doc/posix-functions/strtod.texi: Add info about many more platforms.
1840
1841 2008-03-30  Eric Blake  <ebb9@byu.net>
1842
1843         Test signbit behavior on zeros.
1844         * tests/test-signbit.c (test_signbitf): Add tests for zero.
1845         (test_signbitd, test_signbitl): Likewise.
1846
1847         More strtod touchups.
1848         * tests/test-strtod.c (main): Ignore tests for signbit on NaN, and
1849         sign of negative underflow, for now.  Use .5, not .1.
1850         * doc/posix-functions/strtod.texi (strtod): Mention these
1851         limitations.
1852         Reported by Jim Meyering.
1853
1854 2008-03-30  Bruno Haible  <bruno@clisp.org>
1855
1856         * lib/striconveh.h (mem_iconveh, str_iconveh): Optimize the conversion
1857         from UTF-8 to UTF-8//TRANSLIT in the same way as from UTF-8 to UTF-8.
1858
1859 2008-03-30  Bruno Haible  <bruno@clisp.org>
1860
1861         Avoid failure when attempting to return empty iconv results on some
1862         platforms.
1863         * lib/striconveh.c (mem_cd_iconveh_internal): In the final memory
1864         allocation, don't report ENOMEM when the resulting string is empty.
1865
1866 2008-03-30  Bruno Haible  <bruno@clisp.org>
1867
1868         Fix buffer overrun.
1869         * lib/vasnprintf.c (VASNPRINTF): If !USE_SNPRINTF && pad_ourselves:
1870         Don't consider the width for tmp_length. Check count against tmp_length
1871         before doing the padding. Ensure enough allocation during padding.
1872
1873 2008-03-30  Eric Blake  <ebb9@byu.net>
1874
1875         strtod touchups.
1876         * lib/strtod.c (strtod): Avoid compiler warnings.
1877         Reported by Jim Meyering.
1878
1879 2008-03-30  Bruno Haible  <bruno@clisp.org>
1880
1881         * lib/unistdio/u-vsprintf.h (EOVERFLOW): Remove fallback.
1882         * modules/unistdio/ulc-vsprintf (Depends-on): Add EOVERFLOW.
1883         * modules/unistdio/u8-vsprintf (Depends-on): Add EOVERFLOW.
1884         * modules/unistdio/u8-u8-vsprintf (Depends-on): Add EOVERFLOW.
1885         * modules/unistdio/u16-vsprintf (Depends-on): Add EOVERFLOW.
1886         * modules/unistdio/u16-u16-vsprintf (Depends-on): Add EOVERFLOW.
1887         * modules/unistdio/u32-vsprintf (Depends-on): Add EOVERFLOW.
1888         * modules/unistdio/u32-u32-vsprintf (Depends-on): Add EOVERFLOW.
1889
1890         * lib/unistdio/u-vsnprintf.h (EOVERFLOW): Remove fallback.
1891         * modules/unistdio/ulc-vsnprintf (Depends-on): Add EOVERFLOW.
1892         * modules/unistdio/u8-vsnprintf (Depends-on): Add EOVERFLOW.
1893         * modules/unistdio/u8-u8-vsnprintf (Depends-on): Add EOVERFLOW.
1894         * modules/unistdio/u16-vsnprintf (Depends-on): Add EOVERFLOW.
1895         * modules/unistdio/u16-u16-vsnprintf (Depends-on): Add EOVERFLOW.
1896         * modules/unistdio/u32-vsnprintf (Depends-on): Add EOVERFLOW.
1897         * modules/unistdio/u32-u32-vsnprintf (Depends-on): Add EOVERFLOW.
1898
1899         * lib/unistdio/u-vasprintf.h (EOVERFLOW): Remove fallback.
1900         * modules/unistdio/ulc-vasprintf (Depends-on): Add EOVERFLOW.
1901         * modules/unistdio/u8-vasprintf (Depends-on): Add EOVERFLOW.
1902         * modules/unistdio/u8-u8-vasprintf (Depends-on): Add EOVERFLOW.
1903         * modules/unistdio/u16-vasprintf (Depends-on): Add EOVERFLOW.
1904         * modules/unistdio/u16-u16-vasprintf (Depends-on): Add EOVERFLOW.
1905         * modules/unistdio/u32-vasprintf (Depends-on): Add EOVERFLOW.
1906         * modules/unistdio/u32-u32-vasprintf (Depends-on): Add EOVERFLOW.
1907
1908         * lib/unistdio/ulc-vfprintf.c (EOVERFLOW): Remove fallback.
1909         * modules/unistdio/ulc-vfprintf (Depends-on): Add EOVERFLOW.
1910
1911         * lib/unistdio/ulc-fprintf.c (EOVERFLOW): Remove fallback.
1912         * modules/unistdio/ulc-fprintf (Depends-on): Add EOVERFLOW.
1913
1914         * lib/xvasprintf.c (EOVERFLOW): Remove fallback.
1915         * modules/xvasprintf (Depends-on): Add EOVERFLOW.
1916
1917         * lib/vsprintf.c (EOVERFLOW): Remove fallback.
1918         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Drop gl_EOVERFLOW.
1919         * modules/vsprintf-posix (Depends-on): Add EOVERFLOW.
1920
1921         * lib/vsnprintf.c (EOVERFLOW): Remove fallback.
1922         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Drop gl_EOVERFLOW.
1923         * modules/vsnprintf (Depends-on): Add EOVERFLOW.
1924
1925         * lib/vfprintf.c (EOVERFLOW): Remove fallback.
1926         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Drop gl_EOVERFLOW.
1927         * modules/vfprintf-posix (Depends-on): Add EOVERFLOW.
1928
1929         * lib/vasprintf.c (EOVERFLOW): Remove fallback.
1930         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Drop gl_EOVERFLOW.
1931         * modules/vasprintf (Depends-on): Add EOVERFLOW.
1932
1933         * lib/vasnprintf.c (EOVERFLOW): Remove fallback.
1934         * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Drop gl_EOVERFLOW.
1935         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Drop gl_EOVERFLOW.
1936         * modules/vasnprintf (Files): Remove m4/eoverflow.m4.
1937         (Depends-on): Add EOVERFLOW.
1938         * modules/unistdio/ulc-vasnprintf (Files): Remove m4/eoverflow.m4.
1939         (Depends-on): Add EOVERFLOW.
1940         * modules/unistdio/u8-vasnprintf (Files): Remove m4/eoverflow.m4.
1941         (Depends-on): Add EOVERFLOW.
1942         * modules/unistdio/u8-u8-vasnprintf (Files): Remove m4/eoverflow.m4.
1943         (Depends-on): Add EOVERFLOW.
1944         * modules/unistdio/u16-vasnprintf (Files): Remove m4/eoverflow.m4.
1945         (Depends-on): Add EOVERFLOW.
1946         * modules/unistdio/u16-u16-vasnprintf (Files): Remove m4/eoverflow.m4.
1947         (Depends-on): Add EOVERFLOW.
1948         * modules/unistdio/u32-vasnprintf (Files): Remove m4/eoverflow.m4.
1949         (Depends-on): Add EOVERFLOW.
1950         * modules/unistdio/u32-u32-vasnprintf (Files): Remove m4/eoverflow.m4.
1951         (Depends-on): Add EOVERFLOW.
1952
1953         * lib/sprintf.c (EOVERFLOW): Remove fallback.
1954         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Drop gl_EOVERFLOW.
1955         * modules/sprintf-posix (Depends-on): Add EOVERFLOW.
1956
1957         * lib/snprintf.c (EOVERFLOW): Remove fallback.
1958         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Drop gl_EOVERFLOW.
1959         * modules/snprintf (Depends-on): Add EOVERFLOW.
1960
1961         * lib/poll.c (EOVERFLOW): Remove fallback.
1962         * modules/poll (Depends-on): Add EOVERFLOW.
1963
1964         * lib/getugroups.c (EOVERFLOW): Remove fallback.
1965         * modules/getugroups (Depends-on): Add EOVERFLOW.
1966
1967         * lib/getdelim.c (EOVERFLOW): Remove fallback.
1968         * modules/getdelim (Depends-on): Add EOVERFLOW.
1969
1970         * lib/ftell.c (EOVERFLOW): Remove fallback.
1971         * modules/ftell (Depends-on): Add EOVERFLOW.
1972
1973         * lib/fprintf.c (EOVERFLOW): Remove fallback.
1974         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Drop gl_EOVERFLOW.
1975         * modules/fprintf-posix (Depends-on): Add EOVERFLOW.
1976
1977         * lib/c-stack.c (EOVERFLOW): Remove unused fallback.
1978
1979         * modules/EOVERFLOW-tests: New file.
1980         * tests/test-EOVERFLOW.c: New file.
1981
1982         * modules/EOVERFLOW: New file.
1983         * doc/posix-headers/errno.texi: Mention EOVERFLOW portability problem.
1984
1985 2008-03-30  Bruno Haible  <bruno@clisp.org>
1986
1987         Fix bug introduced on 2007-06-10.
1988         * lib/vasnprintf.c (VASNPRINTF): When performing zero-padding, use
1989         spaces instead of 0 digits for 's' also when ENABLE_UNISTDIO.
1990
1991 2008-03-30  Bruno Haible  <bruno@clisp.org>
1992
1993         Improve freadseek's efficiency after ungetc.
1994         * lib/freadseek.c: Include freadahead.h.
1995         (freadptrinc): New function, extracted from freadseek.
1996         (freadseek): Use it in a loop. Use freadahead to determine the number
1997         of loop iterations.
1998         * modules/freadseek (Depends-on): Add freadahead.
1999         (configure.ac): Require AC_C_INLINE.
2000
2001 2008-03-30  Bruno Haible  <bruno@clisp.org>
2002
2003         * lib/freadseek.c (freadseek): Don't ignore the return value of
2004         freadptr.
2005
2006 2008-03-29  Eric Blake  <ebb9@byu.net>
2007
2008         Add hex float support.
2009         * modules/strtod (Depends-on): Add c-ctype.
2010         (Link): Mention POW_LIB.
2011         * lib/strtod.c (strtod): Recognize hex floats.  Don't allow
2012         whitespace between 'e' and exponent.
2013         * tests/test-strtod.c (main): Enable hex float tests.
2014         * doc/posix-functions/strtod.texi (strtod): Document what gnulib
2015         now provides.
2016
2017         Document various strtod bugs, with some fixes.
2018         * doc/posix-functions/strtod.texi (strtod): Document bugs with
2019         "-0x", "inf", "nan", and hex constants.
2020         * doc/posix-functions/atof.texi (atof): Likewise.
2021         * modules/stdlib (Makefile.am): Support strtod.
2022         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Likewise.
2023         * m4/strtod.m4 (gl_FUNC_STRTOD): Fit in stdlib framework, and
2024         detect additional strtod bugs.
2025         * lib/stdlib.in.h (rpl_strtod): Add declarations.
2026         * lib/strtod.c (strtod): Return -0.0 on negative underflow.  Use
2027         bool where appropriate.  Parse 'inf' and 'nan'.
2028         * tests/test-strtod.c: New file.
2029         * modules/strtod (Depends-on): Add stdbool, stdlib.
2030         (configure.ac): Turn on module indicator.
2031         * modules/strtod-tests: New module.
2032
2033 2008-03-29  Eric Blake  <ebb9@byu.net>
2034
2035         Fix ftell on mingw.
2036         * lib/ftell.c (EOVERFLOW): Define if the system lacks it.
2037         * modules/ftell-tests (Depends-on): Add binary-io.
2038         * modules/ftello-tests (Depends-on): Likewise.
2039         * tests/test-ftell.c (main): Enhance test to cover behavior after
2040         ungetc.  Enforce binary mode.
2041         * tests/test-ftello.c (main): Likewise.
2042
2043         Pass test-freadseek on cygwin.
2044         * modules/freadseek (Depends-on): Use freadptr, not freadahead.
2045         * lib/freadseek.c (freadseek): Don't increment beyond bounds of
2046         ungetc buffer.
2047
2048         * tests/test-fflush2.c (main): Fix typo.
2049
2050 2008-03-29  Bruno Haible  <bruno@clisp.org>
2051
2052         * tests/test-fflush2.c (main): Temporarily disable the contents of
2053         this test.
2054         * m4/fflush.m4 (gl_FUNC_FFLUSH): Add a TODO.
2055         Reported by Eric Blake.
2056
2057 2008-03-28  Simon Josefsson  <simon@josefsson.org>
2058
2059         * lib/gc.h (enum Gc_hash): Add GC_SHA224.
2060         (GC_SHA224_DIGEST_SIZE): Add.
2061
2062         * lib/gc-libgcrypt.c (gc_hash_open): Handle SHA-224.
2063         (gc_hash_digest_length): Likewise.
2064         (gc_hash_buffer): Likewise.
2065
2066 2008-03-25  Bruno Haible  <bruno@clisp.org>
2067
2068         * doc/gnulib-tool.texi (gettextize and autopoint): Explain in more
2069         detail which gettext release to use.
2070         Reported by Simon Josefsson.
2071
2072 2008-03-26  Jim Meyering  <meyering@redhat.com>
2073
2074         gnumakefile: remove file from $(top_builddir), not from $(top_srcdir)
2075         * modules/gnumakefile (clean-GNUmakefile): Also, use
2076         test ... && ... || : syntax rather than if-then ... fi.
2077
2078         gnumakefile: Don't double-quote-expand $(VPATH) value.
2079         * modules/gnumakefile (clean-GNUmakefile): Use single quotes.
2080
2081 2008-03-24  Eric Blake  <ebb9@byu.net>
2082
2083         Alter GNUmakefile to install into top directory.
2084         * modules/maintainer-makefile: Split, and add dependency...
2085         * modules/gnumakefile: to this new module.
2086         * build-aux/GNUmakefile: Move...
2087         * top/GNUmakefile: ...here.
2088         * build-aux/maint.mk: Move...
2089         * top/maint.mk: ...here.
2090         * MODULES.html.sh (Support for maintaining...): Document new
2091         module.
2092
2093 2008-03-23  Bruno Haible  <bruno@clisp.org>
2094
2095         * gnulib-tool: New options --vc-files, --no-vc-files.
2096         (func_usage): Document them.
2097         (vc_files): New variable.
2098         (func_import): Consider vc_files.
2099         (func_create_testdir): Set vc_files to empty.
2100         Suggested by Jim Meyering and Karl Berry.
2101
2102 2008-03-23  Bruno Haible  <bruno@clisp.org>
2103
2104         Fix regex compilation error on HP-UX 11.
2105         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_TYPE_MBSTATE_T.
2106         * modules/regex (Files): Add m4/mbstate_t.m4.
2107         Reported by Ton Voon <ton.voon@altinity.com>.
2108
2109 2008-03-23  Bruno Haible  <bruno@clisp.org>
2110
2111         * doc/gnulib-tool.texi (gettextize and autopoint): New section.
2112
2113 2008-03-23  Eric Blake  <ebb9@byu.net>
2114             Bruno Haible  <bruno@clisp.org>
2115
2116         Install files from top/ in the destination directory.
2117         * gnulib-tool (func_get_automake_snippet): Synthesize an EXTRA_DIST
2118         augmentation also for the files from top/.
2119         (func_import, func_create_testdir): Rewrite file names:
2120         top/filename -> filename.
2121
2122 2008-03-23  Bruno Haible  <bruno@clisp.org>
2123
2124         Tweak "gnulib --version" output.
2125         * gnulib-tool (func_version): Replace "-dirty" suffix with "-modified".
2126
2127 2008-03-23  Bruno Haible  <bruno@clisp.org>
2128
2129         Tweak "gnulib --version" output.
2130         * gnulib-tool (func_version): Use date of last commit to ChangeLog,
2131         rather than contents of ChangeLog, when possible.
2132
2133 2008-03-21  Eric Blake  <ebb9@byu.net>
2134
2135         More --version tweaks.
2136         * gnulib-tool (func_version): Obey GNU Coding Standards.  Output
2137         date of last ChangeLog entry.
2138
2139 2008-03-21  Jim Meyering  <meyering@redhat.com>
2140
2141         * build-aux/GNUmakefile (_have-git-version-gen): Split long line.
2142
2143 2008-03-20  Eric Blake  <ebb9@byu.net>
2144
2145         VPATH fix.
2146         * build-aux/GNUmakefile (_have_git-version-gen): Look in correct dir.
2147
2148 2008-03-20  Simon Josefsson  <simon@josefsson.org>
2149
2150         * build-aux/GNUmakefile: Make git-version-gen optional.  Add
2151         _build-aux variable.  Suggested by Eric Blake <ebb9@byu.net>.
2152
2153 2008-03-20  Eric Blake  <ebb9@byu.net>
2154
2155         Sync GNUmakefile with coreutils.
2156         * build-aux/GNUmakefile (have-Makefile): Rename...
2157         (_have-Makefile): ...to this, for namespace consideration.
2158         (GNUmakefile.cfg): Include, if present.
2159         (_autoreconf): Define a default.
2160         (_is-dist-target): New rule for rebuilds to pick up intra-release
2161         version.
2162         (maint-cfg.mk): Rename...
2163         (cfg.mk): ...to this.
2164
2165 2008-03-18  Jim Meyering  <meyering@redhat.com>
2166
2167         New script and module: mktempd
2168         * MODULES.html.sh (maint+release support): Add mktempd.
2169         * build-aux/mktempd: New file.
2170         * modules/mktempd: New file.
2171
2172 2008-03-15  Jim Meyering  <meyering@redhat.com>
2173
2174         Undo last change.
2175         * lib/sha1.c, lib/md5.c: 63 != ~63.
2176         Reported by Andreas Schwab.
2177
2178         sha1.c, md5.c: Hoist a redundant expression.
2179         * lib/sha1.c (sha1_process_bytes): AND-off the low bits in
2180         "ctx->buflen" only once, before calling *_process_block.
2181         * lib/md5.c (md5_process_bytes): Likewise.
2182
2183 2008-03-14  Eric Blake  <ebb9@byu.net>
2184
2185         Bump copyright year in files generated by gnulib-tool.
2186         * gnulib-tool (func_emit_copyright_notice): Extract copyright from
2187         gnulib-tool, rather than hard-coding it.
2188
2189         Fix 'gnulib-tool --version' output to work with git.
2190         * gnulib-tool (func_gnulib_dir): New function, extracted from...
2191         (startup): ...here.
2192         (func_version): Use it to invoke git-version-gen, rather than
2193         relying on CVS keyword expansion.  Modernize wording.
2194         (cvsdatestamp, last_checkin_date, version): Kill unused
2195         variables.
2196
2197 2008-03-12  Jim Meyering  <meyering@redhat.com>
2198
2199         Recognize optional cast of the argument to free.
2200         * build-aux/useless-if-before-free: Update regexps.
2201
2202         * build-aux/bootstrap (gnulib_tool): Remove trailing blanks.
2203
2204 2008-03-11  Bruno Haible  <bruno@clisp.org>
2205
2206         Extend AC_LIB_LINKFLAGS to the situation of several libraries provided
2207         by a single package.
2208         * m4/lib-link.m4 (AC_LIB_FROMPACKAGE): New macro.
2209         (AC_LIB_LINKFLAGS_BODY): Use the information stored by
2210         AC_LIB_FROMPACKAGE. Use AC_ARG_WITH instead of AC_LIB_ARG_WITH.
2211         Reported by Sam Steingold <sds@gnu.org>.
2212
2213 2008-03-12  Sergey Poznyakoff  <gray@gnu.org.ua>
2214
2215         * build-aux/bootstrap (version_controlled_file): Adapt for SVN
2216         repositories.
2217
2218 2008-03-11  Bruno Haible  <bruno@clisp.org>
2219
2220         Avoid conflicts between local macro definitions.
2221         * m4/lib-link.m4 (AC_LIB_LINKFLAGS, AC_LIB_HAVE_LINKFLAGS,
2222         AC_LIB_LINKFLAGS_BODY): Use pushdef/popdef instead of define/undefine.
2223
2224 2008-03-10  Peter O'Gorman  <bug-gnulib@mlists.thewrittenword.com>
2225             Bruno Haible  <bruno@clisp.org>
2226
2227         Make va_copy work with some version of xlc on AIX 5.1.
2228         * lib/stdarg.in.h: New file.
2229         * m4/stdarg.m4 (gl_STDARG_H): Initialize STDARG_H and NEXT_STDARG_H.
2230         On AIX, use a <stdarg.h> file substitute.
2231         * modules/stdarg (Files): Add lib/stdarg.in.h.
2232         (Depends-on): Add include_next.
2233         (Makefile.am): Build a stdarg.h substitute if requested.
2234         * doc/posix-functions/va_copy.texi: Document the platforms lacking it.
2235
2236 2008-03-10  Bruno Haible  <bruno@clisp.org>
2237
2238         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Document a restriction.
2239         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
2240         Reported by Peter O'Gorman <bug-gnulib@mlists.thewrittenword.com>.
2241
2242 2008-03-10  Bruno Haible  <bruno@clisp.org>
2243
2244         * modules/stdlib (Depends-on): Add include_next, remove
2245         absolute-header.
2246
2247 2008-03-09  Bruno Haible  <bruno@clisp.org>
2248
2249         * lib/freadahead.h (freadahead): Document more precisely.
2250         * lib/freadahead.c (freadahead): When an ungetc is in effect, return
2251         the sum of both buffer sizes.
2252         * tests/test-freadahead.c (main): Also test behaviour after ungetc.
2253         * NEWS: Document the change.
2254
2255 2008-03-09  Bruno Haible  <bruno@clisp.org>
2256
2257         Extend freadptr to return also the buffer size.
2258         * lib/freadptr.h (freadptr): Add sizep argument.
2259         * lib/freadptr.c: Include freadptr.h, not freadahead.h.
2260         (freadptr): Add sizep argument. Determine buffer size like freadahead
2261         does.
2262         * tests/test-freadptr.c: Don't include freadahead.h.
2263         (main): Adapt for new calling convention of freadptr.
2264         * tests/test-freadptr2.c: New file, based on tests/test-freadahead.c.
2265         * tests/test-freadptr2.sh: New file, based on tests/test-freadahead.sh.
2266         * modules/freadptr-tests (Files): Add tests/test-freadptr2.c,
2267         tests/test-freadptr2.sh.
2268         (Depends): Remove freadahead.
2269         (TESTS): Add test-freadptr2.sh.
2270         (check_PROGRAMS): Add test-freadptr2.
2271
2272 2008-03-09  Bruno Haible  <bruno@clisp.org>
2273
2274         * doc/Makefile (%.pdf): Explain how to remedy the save_size error.
2275         Report and solution by Simon Josefsson.
2276
2277 2008-03-06  Bruno Haible  <bruno@clisp.org>
2278
2279         Make fflush after ungetc work on BSD platforms.
2280         * lib/fflush.c (rpl_fflush): Discard ungetc buffer if possible.
2281         * tests/test-fflush2.c: New file.
2282         * tests/test-fflush2.sh: New file.
2283         * modules/fflush-tests (Files): Add tests/test-fflush2.sh,
2284         tests/test-fflush2.c.
2285         (Makefile.am): Build test-fflush2 and run test-fflush2.sh.
2286         * doc/posix-functions/fflush.texi: Document fflush after ungetc bug.
2287
2288 2008-03-06  Eric Blake  <ebb9@byu.net>
2289
2290         Likewise for ftello.
2291         * modules/ftello (Dependencies): Add extensions.
2292         * m4/ftello.m4 (gl_FUNC_FTELLO): Require AC_USE_SYSTEM_EXTENSIONS.
2293
2294 2008-03-06  Bruno Haible  <bruno@clisp.org>
2295
2296         * modules/fseeko (Dependencies): Add extensions.
2297         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Require AC_USE_SYSTEM_EXTENSIONS.
2298         Needed on glibc systems.
2299
2300 2008-03-06  Bruno Haible  <bruno@clisp.org>
2301
2302         * doc/gnulib-tool.texi (@nosuchmodulenote): Avoid line break inside
2303         email address.
2304         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
2305
2306 2008-03-06  Bruno Haible  <bruno@clisp.org>
2307
2308         * users.txt: Add libgnupdf.
2309
2310 2008-03-06  Thien-Thi Nguyen  <ttn@gnuvola.org>  (tiny change)
2311
2312         * doc/gnulib-tool.texi (@nosuchmodulenote): New macro.
2313         (Header File Substitutes, Function Substitutes,
2314         Glibc Header File Substitutes, Glibc Function Substitutes): Use it.
2315         (Build robot for gnulib): Fix typo.
2316
2317 2008-03-06  Bruno Haible  <bruno@clisp.org>
2318
2319         * doc/gnulib-tool.texi (VCS Issues): Small updates.
2320         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
2321
2322 2008-03-06  Bruno Haible  <bruno@clisp.org>
2323
2324         * doc/func.texi: New file, extracted from doc/gnulib.texi.
2325         * doc/gnulib.texi: Include it.
2326
2327 2008-03-06  Simon Josefsson  <simon@josefsson.org>
2328
2329         * modules/func (License): Change license to unlimited; there was
2330         no LGPL parts in the module anyway.
2331
2332 2008-03-06  Simon Josefsson  <simon@josefsson.org>
2333
2334         * modules/__func__: Renamed to modules/func.
2335         * modules/__func__-tests: Renamed to modules/func-tests.
2336         * tests/test-__func__.c: Renamed to tests/test-func.c.
2337         * m4/__func__.m4: Renamed to m4/func.m4.
2338         * doc/gnulib.texi (__func__): Section renamed to func.
2339         Suggested by Eric Blake <ebb9@byu.net>.
2340
2341 2008-03-06  Simon Josefsson  <simon@josefsson.org>
2342
2343         * doc/gnulib.texi (__func__): Use C99 terminology when talking
2344         about __func__.  Make example self-contained.  Suggested by Eric
2345         Blake <ebb9@byu.net>.
2346
2347         * tests/test-__func__.c (main): Avoid extraneous () around __func.
2348         Suggested by Eric Blake <ebb9@byu.net>.
2349
2350 2008-03-06  Simon Josefsson  <simon@josefsson.org>
2351
2352         * modules/__func__: New file.
2353         * modules/__func__-tests: New file.
2354         * tests/test-__func__.c: New file.
2355         * m4/__func__.m4: New file.
2356         * doc/gnulib.texi (__func__): Document __func__ module.
2357
2358 2008-03-05  Simon Josefsson  <simon@josefsson.org>
2359
2360         * modules/byteswap (License): Re-license as LGPLv2+.
2361
2362 2008-03-05  Simon Josefsson  <simon@josefsson.org>
2363
2364         * doc/Makefile: Add pdf target.
2365
2366 2008-03-05  Simon Josefsson  <simon@josefsson.org>
2367
2368         * modules/inline (License): Use 'unlimited', since there are only
2369         *.m4 files in this module.
2370
2371 2008-03-03  John E. Malmberg  <wb8tyw@qsl.net>  (tiny change)
2372             Bruno Haible  <bruno@clisp.org>
2373
2374         Add support for HP C 7.1 on OpenVMS 8.3.
2375         * lib/alloca.in.h (alloca): Define as alias for DEC C on VMS.
2376
2377 2008-03-03  John E. Malmberg  <wb8tyw@qsl.net>  (tiny change)
2378
2379         Update VMS specifics.
2380         * lib/getopt.c [VMS]: Remove include of unixlib.h.
2381
2382 2008-03-02  Jim Meyering  <meyering@redhat.com>
2383
2384         Remove the last dependency on the "free" module.
2385         * m4/readutmp.m4 (gl_READUTMP): Don't require gl_FUNC_FREE.
2386         Reported by Bob Proulx.
2387
2388         * lib/getdelim.c (getdelim): Don't leak memory upon failed realloc.
2389
2390         Remove useless "if" tests before free.  Deprecate "free" module.
2391         * doc/posix-functions/free.texi: Mention that this
2392         module is no longer useful.
2393         * modules/free (Notice): Say this module is obsolete.
2394         * modules/readutmp (Depends-on): Remove free.
2395         * lib/save-cwd.c (free_cwd): Remove useless "if" before free.
2396         * lib/putenv.c (putenv): Likewise.
2397         * lib/gc-gnulib.c (gc_cipher_close): Likewise.
2398         * lib/getaddrinfo.c (freeaddrinfo): Likewise.
2399         * tests/test-c-strcasestr.c (main): Likewise.
2400         * tests/test-c-strstr.c (main): Likewise.
2401         * tests/test-mbscasestr1.c (main): Likewise.
2402         * tests/test-mbscasestr2.c (main): Likewise.
2403         * tests/test-mbsstr1.c (main): Likewise.
2404         * tests/test-mbsstr2.c (main): Likewise.
2405         * tests/test-memmem.c (main): Likewise.
2406         * tests/test-strcasestr.c (main): Likewise.
2407         * tests/test-striconv.c (main): Likewise.
2408         * tests/test-striconveh.c (main): Likewise.
2409         * tests/test-striconveha.c (main): Likewise.
2410         * tests/test-strstr.c (main): Likewise.
2411
2412         * build-aux/git-version-gen: Adjust a comment and the Usage string.
2413
2414         bootstrap: sync from coreutils again
2415         * build-aux/bootstrap: Remove dangling m4/*.m4 symlinks.
2416
2417 2008-03-01  Jim Meyering  <meyering@redhat.com>
2418
2419         bootstrap: sync from coreutils
2420         * build-aux/bootstrap (update_po_files): Copy a .po file into place
2421         also when the target doesn't exist.
2422
2423 2008-03-01  Eric Blake  <ebb9@byu.net>
2424
2425         Fix bugs in last patch.
2426         * lib/memchr2.c (memchr2): Fix typo.
2427         * tests/test-memchr2.c: Test previous bug, and don't use GNU
2428         extension.
2429         Reported by Bruce Korb.
2430
2431         New module 'memchr2'.
2432         * modules/memchr2: New file.
2433         * modules/memchr2-tests: Likewise.
2434         * lib/memchr2.h: Likewise.
2435         * lib/memchr2.c: Likewise, based on memchr.c.
2436         * tests/test-memchr2.c: New test.
2437         * MODULES.html.sh (String handling): Add memchr2.
2438
2439 2008-02-29  Bruno Haible  <bruno@clisp.org>
2440
2441         * modules/freadseek-tests: New file.
2442         * tests/test-freadseek.sh: New file.
2443         * tests/test-freadseek.c: New file.
2444
2445         New module 'freadseek'.
2446         * modules/freadseek: New file.
2447         * lib/freadseek.h: New file.
2448         * lib/freadseek.c: New file.
2449         * MODULES.html.sh (File stream based Input/Output): Add freadseek.
2450
2451 2008-02-29  Sergey Poznyakoff  <gray@gnu.org.ua>
2452
2453         * users.txt: Add anubis, cpio, mailfromd, mailutils, radius,
2454         wydawca.
2455
2456         * m4/argp.m4 (gl_ARGP): Use AC_TRY_LINK to test if
2457         program_invocation_name and program_invocation_short_name are
2458         present.
2459
2460 2008-02-28  Bruno Haible  <bruno@clisp.org>
2461
2462         * tests/test-freadptr.c: Add a test for behaviour after ungetc.
2463         * tests/test-freadptr.sh: Also test non-seekable stdin.
2464
2465 2008-02-28  Sergey Poznyakoff  <gray@gnu.org.ua>
2466
2467         * build-aux/bootstrap (source_base, m4_base)
2468         (doc_base, tests_base): New variables.
2469         (gnulib_tool_options): Do not hardcode base directories, use
2470         the above variables instead.
2471
2472 2008-02-28  Atsushi SAKAI  <sakaia@jp.fujitsu.com>
2473
2474         * lib/xsize.h: Fix typo in comment: s/tupe/type/.
2475
2476 2008-02-28  Bruno Haible  <bruno@clisp.org>
2477
2478         * modules/freadptr-tests: New file.
2479         * tests/test-freadptr.sh: New file.
2480         * tests/test-freadptr.c: New file.
2481
2482         New module 'freadptr'.
2483         * modules/freadptr: New file.
2484         * lib/freadptr.h: New file.
2485         * lib/freadptr.c: New file.
2486         * MODULES.html.sh (File stream based Input/Output): Add freadptr.
2487
2488 2008-02-26  Karl Berry  <karl@freefriends.org>
2489
2490         Sync from Libtool:
2491         * libltdl/argz.c (argz_add, argz_count): New functions.
2492         * libltdl/argz.in.h: Declare them.
2493         Report by Juan Manuel Guerrero <juan.guerrero@gmx.de>.
2494
2495 2008-02-22  Bruno Haible  <bruno@clisp.org>
2496
2497         * m4/time_r.m4 (gl_TIME_R): Also check that localtime_r's return type
2498         is a pointer type.  Needed for HP-UX 10.
2499         * doc/posix-functions/localtime_r.texi: Mention HP-UX 10.
2500         * doc/posix-functions/gmtime_r.texi: Likewise.
2501         Reported by Peter O'Gorman <bug-gnulib@mlists.thewrittenword.com>.
2502
2503 2008-02-24  Bruno Haible  <bruno@clisp.org>
2504
2505         * modules/environ-tests: New file.
2506         * tests/test-environ.c: New file.
2507
2508         New module 'environ'.
2509         * modules/environ: New file.
2510         * lib/unistd.in.h (environ): New declaration.
2511         * m4/environ.m4: New file.
2512         (gt_CHECK_VAR_DECL): Moved here from m4/setenv.m4. Undefine gt_cv_var
2513         after use.
2514         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_ENVIRON and
2515         HAVE_DECL_ENVIRON.
2516         * modules/unistd (Makefile.am): Substitute also GNULIB_ENVIRON and
2517         HAVE_DECL_ENVIRON.
2518         * doc/posix-functions/environ.texi: Mention module 'environ'. Remove
2519         wrong claim that 'environ' is missing on some systems.
2520         * modules/execute (Depends-on): Add environ.
2521         * lib/execute.c (environ): Remove fallback declaration.
2522         * modules/pipe (Depends-on): Add environ.
2523         * lib/pipe.c (environ): Remove fallback declaration.
2524         * modules/setenv (Depends-on): Add environ.
2525         * lib/setenv.c (environ): Remove fallback declaration.
2526         * modules/unsetenv (Depends-on): Add environ.
2527         * lib/unsetenv.c (environ): Remove fallback declaration.
2528         * m4/setenv.m4 (gt_CHECK_VAR_DECL): Remove macro. Moved to
2529         m4/environ.m4.
2530         (gl_PREREQ_SETENV): Require gl_ENVIRON instead of testing for environ.
2531         (gl_PREREQ_UNSETENV): Likewise.
2532
2533 2008-02-24  Bruno Haible  <bruno@clisp.org>
2534
2535         * doc/posix-functions/environ.texi: Document the MacOS X problem.
2536
2537 2008-02-20  Bob Proulx  <bob@proulx.com>
2538
2539         Enable use of older two part flavor 'git describe'.
2540         * build-aux/git-version-gen: If using the older two part flavor of
2541         git version then recreate the third part now present in the
2542         newer three part flavor of git describe.
2543
2544 2008-02-20  Martin Buchholz  <martin@xemacs.org>  (tiny change)
2545
2546         * lib/fts.c (fts_build): Typo correction to comment.
2547
2548 2008-02-17  Bruno Haible  <bruno@clisp.org>
2549
2550         * lib/git-merge-changelog.c (main) [split_merged_entry]: Avoid
2551         generating no-op conflicts.
2552
2553 2008-02-17  Bruno Haible  <bruno@clisp.org>
2554
2555         Speed up by 10%.
2556         * lib/git-merge-changelog.c (main): Use the iterator to iterate through
2557         result_entries, rather than an index-based loop.
2558
2559 2008-02-17  Bruno Haible  <bruno@clisp.org>
2560
2561         Speed up by 25%.
2562         * lib/git-merge-changelog.c (struct entry): New fields 'hashcode',
2563         'hashcode_cached'.
2564         (entry_create): New function.
2565         (entry_hashcode): Use the cached hashcode if possible.
2566         (read_changelog_file, try_split_merged_entry): Use entry_create.
2567
2568 2008-02-17  Bruno Haible  <bruno@clisp.org>
2569
2570         Speed up from O(n^2) to O(n) for long ChangeLog files.
2571         * lib/git-merge-changelog.c: Include gl_rbtreehash_list.h.
2572         (read_changelog_file): Change implementation of entries_reversed list
2573         to rbtreehash.
2574         * modules/git-merge-changelog (Depends-on): Add rbtreehash-list.
2575
2576 2008-02-17  Bruno Haible  <bruno@clisp.org>
2577
2578         New option --split-merged-entry.
2579         * lib/git-merge-changelog.c (FSTRCMP_STRICTER_THRESHOLD): New macro.
2580         (find_paragraph_end, try_split_merged_entry): New functions.
2581         (long_options): Add option --split-merged-entry.
2582         (usage): Document option --split-merged-entry.
2583         (main): Implement option --split-merged-entry.
2584         Reported by Eric Blake.
2585
2586 2008-02-17  Bruno Haible  <bruno@clisp.org>
2587
2588         * lib/git-merge-changelog.c: Include c-strstr.h.
2589         (main): Support the "git pull --rebase" situation.
2590         * modules/git-merge-changelog (Depends-on): Add c-strstr.
2591         Reported by Eric Blake.
2592
2593 2008-02-16  Eric Blake  <ebb9@byu.net>
2594
2595         Avoid doubling \ in common case of "c-maybe" quoting style.
2596         * lib/quotearg.c (quotearg_buffer_restyled): Don't escape \ when
2597         eliding outer quotes.
2598         * lib/quotearg.h: Document this.
2599         * tests/test-quotearg.c (result_strings, inputs, results_g)
2600         (flag_results, locale_results): Test it by adding a new string to
2601         each test group.
2602         (compare_strings): Test new string.
2603
2604 2008-02-13  Eric Blake  <ebb9@byu.net>
2605
2606         Avoid trigraph quoting in default output.
2607         * lib/quotearg.h (enum quoting_flags): Add QA_SPLIT_TRIGRAPHS.
2608         * lib/quotearg.c (quotearg_buffer_restyled): Don't quote trigraphs
2609         unless explicitly requested.
2610         * tests/test-quotearg.c (flag_results, main): Add additional tests.
2611
2612 2008-02-13  Lasse Collin  <lasse.collin@tukaani.org>
2613
2614         Don't rely on signed integer overflowing to negative value.
2615         * lib/getugroups.c (getugroups): Include <limits.h>.
2616         Instead, compare against INT_MAX, and increment only if the test passes.
2617
2618 2008-02-13  Jim Meyering  <meyering@redhat.com>
2619         and Eric Blake  <ebb9@byu.net>
2620
2621         Avoid shadowing warning and compile errors on Linux.
2622         * tests/test-quotearg.c [ENABLE_NLS]: Disable <libintl.h>
2623         forwarding macros on Linux.
2624         (dcgettext): Define a stub, for Linux.
2625         (results_g, main): Avoid warnings.
2626
2627 2008-02-12  Eric Blake  <ebb9@byu.net>
2628
2629         Silence warning in last patch.
2630         * lib/quotearg.c (quotearg_buffer_restyled): Add missing const.
2631
2632         Quotearg part 4: add tests, fix c-maybe colon quoting.
2633         * lib/quotearg.h: Improve documentation.
2634         * lib/quotearg.c (quotearg_buffer_restyled): Don't add extra
2635         escapes when adding outer quotes.  When quoting trigraphs, use
2636         valid C notation.  When quoting NUL, omit extra characters if next
2637         character is not digit.  Alter prototype.
2638         (quotearg_buffer, quotearg_alloc_mem, quotearg_n_options): Adjust
2639         callers.
2640         * modules/quotearg-tests: New module.
2641         * tests/test-quotearg.c: New test.
2642
2643 2008-02-07  Eric Blake  <ebb9@byu.net>
2644
2645         Quotearg part 3: add flag to control outer quote elision.
2646         * lib/quotearg.h (c_maybe_quoting_style): New style.
2647         (enum quoting_flags): Better documentation of flags.
2648         * lib/quotearg.c (quoting_style_args, quoting_style_vals): Add
2649         c-maybe style.
2650         (quotearg_buffer_restyled): Handle new flag to elide outer
2651         quotes.
2652
2653         Quotearg part 2: add flag that can control NUL elision.
2654         * lib/quotearg.h (set_quoting_flags): New prototype.
2655         * lib/quotearg.c (struct quoting_options): Add flag field.
2656         (set_quoting_flags): New function.
2657         (quotearg_buffer_restyled): Add flags parameter.
2658         (quotearg_alloc_mem): Set the flag if length cannot be returned.
2659         (quotearg_n_options): Set the flag, since length cannot be
2660         returned.
2661         (quoting_options_from_style): Default flags correctly.
2662
2663         Quotearg part 1: more wrappers, restore quotearg_char state.
2664         * lib/quotearg.h (quotearg_alloc_mem, quotearg_n_mem)
2665         (quotearg_mem, quotearg_style_mem, quotearg_char_mem)
2666         (quotearg_colon_mem): New wrappers.
2667         * lib/quotearg.c (quotearg_alloc, quotearg_char): Rewrite...
2668         (quotearg_alloc_mem, quotearg_char_mem): ...in terms of these new
2669         functions.
2670         (quotearg_n_mem, quotearg_mem, quotearg_style_mem)
2671         (quotearg_colon_mem): New functions.
2672
2673 2008-02-11  Bruno Haible  <bruno@clisp.org>
2674
2675         * modules/git-merge-changelog (Makefile.am): Don't use -L and -l for a
2676         library in the current directory: it does not work with parallel make.
2677         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
2678
2679 2008-02-11  Bruno Haible  <bruno@clisp.org>
2680
2681         * .gitattributes: New file.
2682
2683 2008-02-11  Jim Meyering  <meyering@redhat.com>
2684
2685         useless-if-before-free: Fix reversed exit values.
2686         * build-aux/useless-if-before-free: Use correct values
2687         for EXIT_MATCH and EXIT_NO_MATCH.
2688
2689         * build-aux/useless-if-before-free: Close stdout carefully.
2690
2691 2008-02-10  Bruno Haible  <bruno@clisp.org>
2692
2693         New module 'git-merge-changelog'.
2694         * modules/git-merge-changelog: New file.
2695         * lib/git-merge-changelog.c: New file.
2696
2697 2008-02-10  Jim Meyering  <meyering@redhat.com>
2698
2699         useless-if-before-free: New option: --list (-l).
2700
2701         useless-if-before-free: Don't exit immediately upon open failure.
2702         * build-aux/useless-if-before-free: Exit 2 for errors.
2703         Upon failure to open a file, don't exit immediately.
2704         Rather, just warn and continue with any remaining files.
2705
2706 2008-02-10  Bruno Haible  <bruno@clisp.org>
2707
2708         New abstract list operation 'node_set_value'.
2709         * lib/gl_list.h (gl_list_node_set_value): New function.
2710         (struct gl_list_implementation): New field node_set_value.
2711         * lib/gl_list.c (gl_list_node_set_value): New function.
2712         * lib/gl_array_list.c (gl_array_node_set_value): New function.
2713         (gl_array_list_implementation): Update.
2714         * lib/gl_carray_list.c (gl_carray_node_set_value): New function.
2715         (gl_carray_list_implementation): Update.
2716         * lib/gl_anylinked_list2.h (gl_linked_node_set_value): New function.
2717         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
2718         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
2719         * lib/gl_anytree_list2.h (gl_tree_node_set_value): New function.
2720         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
2721         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
2722         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
2723         Update.
2724         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
2725         * lib/gl_sublist.c (gl_sublist_node_set_value): New function.
2726         (gl_sublist_list_implementation): Update.
2727
2728 2008-02-10  Bruno Haible  <bruno@clisp.org>
2729
2730         * lib/diffseq.h: Write "ELEMENT const" instead of "const ELEMENT".
2731         Needed when ELEMENT is #defined to 'some_type *'.
2732
2733 2008-02-10  Jim Meyering  <meyering@redhat.com>
2734
2735         New script and module: useless-if-before-free
2736         * MODULES.html.sh (maint+release support): Add useless-if-before-free.
2737         * build-aux/useless-if-before-free: New file.
2738         * modules/useless-if-before-free: New file.
2739
2740         * build-aux/gitlog-to-changelog: Use committer date, not author date.
2741
2742         xstrtol_error: Fix typo.
2743         * lib/xstrtol-error.c (xstrtol_error): The parameter was unused:
2744         s/exit_failure/exit_status/.
2745
2746 2008-02-09  Jim Meyering  <meyering@redhat.com>
2747
2748         New script and module: gitlog-to-changelog
2749         * MODULES.html.sh (maint+release support): Add gitlog-to-changelog.
2750         * modules/gitlog-to-changelog: New file.
2751         * build-aux/gitlog-to-changelog: New file.
2752
2753 2008-02-08  Jim Meyering  <meyering@redhat.com>
2754
2755         Avoid two "parameter unused" warnings.
2756         * lib/stat-time.h (get_stat_birthtime_ns, get_stat_birthtime):
2757         Mark "st" as used.
2758
2759         Use "git COMMAND", not "git-COMMAND".
2760         * build-aux/bootstrap (version_controlled_file): s/git-rm/git-rm/.
2761         * build-aux/announce-gen (get_tool_versions): Correct a diagnostic.
2762         * build-aux/git-version-gen: Use "git status", not "git-status".
2763
2764 2008-02-07  Bruno Haible  <bruno@clisp.org>
2765
2766         * lib/vasnprintf.c (VASNPRINTF): Don't use %n on native Woe32 systems.
2767         Avoids a crash on Windows Vista.
2768         Reported by Adam Strzelecki <ono@java.pl> via
2769         Simon Josefsson <simon@josefsson.org>.
2770
2771 2008-02-06  Bruno Haible  <bruno@clisp.org>
2772
2773         Fix *printf behaviour regarding the left-adjust flag on HP-UX 10.20.
2774         * m4/printf.m4 (gl_PRINTF_FLAG_LEFTADJUST): New macro.
2775         * lib/vasnprintf.c (VASNPRINTF): Handle NEED_PRINTF_FLAG_LEFTADJUST.
2776         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_LEFTADJUST): New macro.
2777         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
2778         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
2779         gl_PRINTF_FLAG_LEFTADJUST and test its result. Invoke
2780         gl_PREREQ_VASNPRINTF_FLAG_LEFTADJUST.
2781         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
2782         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
2783         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
2784         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
2785         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
2786         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
2787         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
2788         * tests/test-vasnprintf-posix.c (test_function): Add testcases for the
2789         left-adjust flag.
2790         * tests/test-snprintf-posix.h (test_function): Likewise.
2791         * tests/test-sprintf-posix.h (test_function): Likewise.
2792         * tests/test-vasprintf-posix.c (test_function): Likewise.
2793         * doc/posix-functions/fprintf.texi: Update.
2794         * doc/posix-functions/printf.texi: Update.
2795         * doc/posix-functions/snprintf.texi: Update.
2796         * doc/posix-functions/sprintf.texi: Update.
2797         * doc/posix-functions/vfprintf.texi: Update.
2798         * doc/posix-functions/vprintf.texi: Update.
2799         * doc/posix-functions/vsnprintf.texi: Update.
2800         * doc/posix-functions/vsprintf.texi: Update.
2801         Reported by Peter Fales <psfales@alcatel-lucent.com>.
2802
2803 2008-02-06  Bruno Haible  <bruno@clisp.org>
2804
2805         Fix bug introduced on 2008-01-26.
2806         * lib/isnan.c (FUNC): Set to rpl_isnand, not rpl_isnan.
2807
2808 2008-02-06  Bruno Haible  <bruno@clisp.org>
2809
2810         Fix bug introduced on 2007-06-10.
2811         * lib/vasnprintf.c (VASNPRINTF): Perform zero-padding also if
2812         !NEED_PRINTF_FLAG_ZERO.
2813
2814 2008-02-05  Peter O'Gorman <pogma@thewrittenword.com>
2815
2816         getloadavg: use libperfstat on AIX5
2817         * lib/getloadavg.c, m4/getloadavg.m4 [aix]: Use libperfstat
2818
2819 2008-02-03  Bruno Haible  <bruno@clisp.org>
2820
2821         * lib/diffseq.h: Add comments about required #includes.
2822         Reported by Michael Biggs <gnulib@doubleplum.net>.
2823
2824 2008-02-01  Bruno Haible  <bruno@clisp.org>
2825
2826         * users.txt: Add gnuit.
2827
2828 2008-01-31  Bruno Haible  <bruno@clisp.org>
2829
2830         * lib/md4.c (set_uint32): Mark as inline.
2831         * lib/md5.c (set_uint32): Likewise.
2832         * lib/sha1.c (set_uint32): Likewise.
2833         * m4/md4.m4 (gl_MD4): Require AC_C_INLINE.
2834         * m4/md5.m4 (gl_MD5): Likewise.
2835         * m4/sha1.m4 (gl_SHA1): Likewise.
2836
2837 2008-01-31  Jim Meyering  <meyering@redhat.com>
2838
2839         Use "sizeof VAR", rather than a literal "4".
2840         * lib/md5.c (md5_read_ctx): Use sizeof ctx->A, not 4.
2841         * lib/md4.c (md4_read_ctx): Likewise.
2842         * lib/sha1.c (sha1_read_ctx): Likewise.
2843
2844 2008-01-31  Simon Josefsson  <simon@josefsson.org>
2845
2846         * tests/test-sha1.c: New file, based on test-md5.c.
2847
2848         * modules/crypto/sha1-tests: New file.
2849
2850 2008-01-31  Simon Josefsson  <simon@josefsson.org>
2851
2852         * lib/sha1.h (SHA1_DIGEST_SIZE): Define.
2853
2854 2008-01-31  Jim Meyering  <meyering@redhat.com>
2855
2856         Prefer "sizeof v" over the equivalent "4".
2857         * lib/md4.c (set_uint32): Use "sizeof v" as memcpy length, not 4.
2858         * lib/md5.c (set_uint32): Likewise.
2859         * lib/sha1.c (set_uint32): Likewise.
2860
2861 2008-01-31  Simon Josefsson  <simon@josefsson.org>
2862
2863         * lib/sha1.c (set_uint32): Mark function as static.
2864
2865 2008-01-31  Simon Josefsson  <simon@josefsson.org>
2866
2867         md2: clarify comments to say that alignment is not required.
2868         * lib/md2.h: Remove warning about alignment in comment.
2869         * lib/md2.c (md2_read_ctx, md2_finish_ctx): Doc fix, alignment has
2870         never been required.
2871
2872 2008-01-31  Simon Josefsson  <simon@josefsson.org>
2873
2874         md4: adapt alignment constraint fix from sha1.
2875         * lib/md4.c (set_uint32): New function, from sha1.c
2876         (md4_read_ctx): Use it.
2877         (md4_finish_ctx): Doc fix.
2878         * lib/md4.h: Doc fix.
2879
2880 2008-01-31  Simon Josefsson  <simon@josefsson.org>
2881
2882         md5: adapt alignment constraint fix from sha1.
2883         * lib/md5.c (set_uint32): New function, from sha1.c
2884         (md5_read_ctx): Use it.
2885         (md5_finish_ctx): Doc fix.
2886         * lib/md5.h: Doc fix.
2887
2888 2008-01-30  Peter Palfrader  <weasel@debian.org>
2889
2890         sha1: remove the result buffer alignment constraint
2891         * lib/sha1.c (set_uint32): New function.
2892         (sha1_read_ctx): Rewrite to remove the result buffer alignment
2893         constraint.
2894         (sha1_finish_ctx): Remove comment warning about alignment constraint.
2895         * lib/sha1.h: Likewise.
2896
2897 2008-01-30  Andreas Schwab  <schwab@suse.de>
2898             Bruno Haible  <bruno@clisp.org>
2899
2900         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Include <float.h> and ensure a
2901         correct definition of LDBL_MIN_EXP.
2902
2903 2008-01-30  Karl Berry  <karl@gnu.org>
2904
2905         * config/srclist-update: try to preserve x bit on updates.
2906         * config/srclistvars.sh: update for karl.
2907
2908 2008-01-29  Jim Meyering  <meyering@redhat.com>
2909
2910         vasnprintf.c: Avoid warning about unused label
2911         * lib/vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Guard the
2912         "overflow" label definition and associated code with the
2913         same cpp condition that guards the sole use of that label.
2914
2915 2008-01-26  Bruno Haible  <bruno@clisp.org>
2916
2917         * m4/isnanl.m4 (gl_HAVE_ISNANL_NO_LIBM, gl_HAVE_ISNANL_IN_LIBM,
2918         gl_FUNC_ISNANL_WORKS): Test the GCC >= 4.0 built-in.
2919         * lib/isnanl.h (isnanl): Use the GCC >= 4.0 built-in.
2920         * lib/isnanl-nolibm.h (isnanl): Likewise.
2921         Reported by Paul Eggert <eggert@cs.ucla.edu>.
2922
2923 2008-01-26  Bruno Haible  <bruno@clisp.org>
2924
2925         * m4/isnand.m4 (gl_FUNC_ISNAND_NO_LIBM): Test the GCC >= 4.0 built-in.
2926         * lib/isnand.h (isnand): Use the GCC >= 4.0 built-in.
2927
2928 2008-01-26  Bruno Haible  <bruno@clisp.org>
2929
2930         * m4/isnanf.m4 (gl_HAVE_ISNANF_NO_LIBM, gl_ISNANF_WORKS): Test the
2931         GCC >= 4.0 built-in.
2932         * lib/isnanf.h (isnanf): Use the GCC >= 4.0 built-in.
2933
2934 2008-01-26  Bruno Haible  <bruno@clisp.org>
2935
2936         Rename isnan, applicable to 'double' only, to isnand.
2937         * modules/isnand-nolibm: Renamed from modules/isnan-nolibm.
2938         (Files): Add lib/isnand.h, lib/isnand.c. Remove lib/isnan.h.
2939         (configure.ac): Update.
2940         (Include): Replace "isnan.h" with "isnand.h".
2941         * m4/isnand.m4: Renamed from m4/isnan.m4.
2942         (gl_FUNC_ISNAND_NO_LIBM): Renamed from gl_FUNC_ISNAN_NO_LIBM. Set
2943         HAVE_ISNAND_IN_LIBC instead of HAVE_ISNAN_IN_LIBC. Build isnand.c
2944         instead of isnan.c.
2945         * lib/isnand.h: Renamed from lib/isnan.h. Test HAVE_ISNAND_IN_LIBC
2946         instead of HAVE_ISNAN_IN_LIBC.
2947         (isnand): Renamed from isnan.
2948         * lib/isnand.c: New file.
2949         * modules/isnand-nolibm-tests: Renamed from modules/isnan-nolibm-tests.
2950         (Files): Add tests/test-isnand.c. Remove tests/test-isnan.c.
2951         (Makefile.am): Update.
2952         * tests/test-isnand.c: Renamed from tests/test-isnan.c.
2953         Include isnand.h instead of isnan.h.
2954         (main): Test isnand instead of isnan.
2955         * modules/fprintf-posix (Depends-on): Add isnand-nolibm, remove
2956         isnan-nolibm.
2957         * modules/frexp (Depends-on): Likewise.
2958         * modules/frexp-tests (Depends-on): Likewise.
2959         * modules/frexp-nolibm (Depends-on): Likewise.
2960         * modules/frexp-nolibm-tests (Depends-on): Likewise.
2961         * modules/isfinite (Depends-on): Likewise.
2962         * modules/round-tests (Depends-on): Likewise.
2963         * modules/signbit (Depends-on): Likewise.
2964         * modules/signbit-tests (Depends-on): Likewise.
2965         * modules/snprintf-posix (Depends-on): Likewise.
2966         * modules/sprintf-posix (Depends-on): Likewise.
2967         * modules/trunc-tests (Depends-on): Likewise.
2968         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
2969         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
2970         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
2971         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
2972         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
2973         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
2974         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
2975         * modules/vasnprintf-posix (Depends-on): Likewise.
2976         * modules/vasprintf-posix (Depends-on): Likewise.
2977         * modules/vfprintf-posix (Depends-on): Likewise.
2978         * modules/vsnprintf-posix (Depends-on): Likewise.
2979         * modules/vsprintf-posix (Depends-on): Likewise.
2980         * lib/frexp.c: Include isnand.h instead of isnan.h.
2981         (ISNAN): Set to isnand instead of isnan.
2982         * lib/isfinite.c: Include isnand.h instead of isnan.h.
2983         (gl_isfinited): Use isnand instead of isnan.
2984         * lib/signbitd.c: Include isnand.h instead of isnan.h.
2985         (gl_signbitd): Use isnand instead of isnan.
2986         * lib/vasnprintf.c: Include isnand.h instead of isnan.h.
2987         (is_infinite_or_zero, VASNPRINTF): Use isnand instead of isnan.
2988         * tests/test-frexp.c: Include isnand.h instead of isnan.h.
2989         (main): Use isnand instead of isnan.
2990         * tests/test-round1.c: Include isnand.h.
2991         (main): Use isnand instead of isnan.
2992         * tests/test-round2.c: Include isnand.h instead of isnan.h.
2993         (ISNAN): Set to isnand instead of isnan.
2994         * tests/test-trunc1.c: Include isnand.h.
2995         (main): Use isnand instead of isnan.
2996         * tests/test-trunc2.c: Include isnand.h instead of isnan.h.
2997         (equal): Use isnand instead of isnan.
2998         * MODULES.html.sh (Mathematics <math.h>): Replace isnan-nolibm with
2999         isnand-nolibm.
3000         * NEWS: Mention the change.
3001
3002 2008-01-25  Paul Eggert  <eggert@cs.ucla.edu>
3003             Bruno Haible  <bruno@clisp.org>
3004
3005         * m4/signbit.m4 (gl_SIGNBIT): Require a macro definition. Test whether
3006         the GCC builtins for signbits are present and set
3007         REPLACE_SIGNBIT_USING_GCC if so.
3008         * lib/math.in.h (signbit): Define using GCC builtins if
3009         REPLACE_SIGNBIT_USING_GCC is set.
3010         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize
3011         REPLACE_SIGNBIT_USING_GCC.
3012         * modules/math (Makefile.am): Substitute REPLACE_SIGNBIT_USING_GCC.
3013
3014 2008-01-25  Jim Meyering  <meyering@redhat.com>
3015
3016         Prefer <config.h> over "config.h".  See autoconf doc for explanation.
3017         * lib/poll.c: Include <config.h>, not "config.h".
3018         * tests/test-getaddrinfo.c: Likewise.
3019
3020 2008-01-25  Simon Josefsson  <simon@josefsson.org>
3021
3022         * modules/sockets-tests: New file.
3023
3024 2008-01-24  Simon Josefsson  <simon@josefsson.org>
3025
3026         * modules/sockets: New module, can be used to call WSA_Startup and
3027         WSA_Cleanup when needed.
3028
3029         * lib/sockets.h, lib/sockets.c: New files.
3030
3031         * m4/sockets.m4: New file.
3032
3033         * tests/test-sockets.c: New file.
3034
3035 2008-01-19  Bruno Haible  <bruno@clisp.org>
3036
3037         * doc/posix-headers: Renamed from doc/headers.
3038         * doc/posix-functions: Renamed from doc/functions.
3039         * doc/gnulib.texi: Update.
3040
3041 2008-01-19  Bruno Haible  <bruno@clisp.org>
3042
3043         * doc/glibc-functions/strcasestr.texi: Include contents of
3044         doc/functions/strcasestr.texi, fixing the list of platforms.
3045         * doc/functions/strcasestr.texi: Remove file.
3046
3047 2008-01-19  Bruno Haible  <bruno@clisp.org>
3048
3049         * doc/glibc-functions/memmem.texi: Include contents of
3050         doc/functions/memmem.texi.
3051         * doc/functions/memmem.texi: Remove file.
3052
3053 2008-01-18  Bruno Haible  <bruno@clisp.org>
3054
3055         * doc/glibc-functions/*.texi: New files.
3056         * doc/gnulib.texi (Glibc Function Substitutes): Completely rewritten
3057         to use the new files.
3058
3059 2008-01-17  Bruno Haible  <bruno@clisp.org>
3060
3061         * tests/test-gethostname.c (main): Fix printf statement.
3062
3063 2008-01-17  Simon Josefsson  <simon@josefsson.org>
3064
3065         * modules/gethostname-tests: New file.
3066
3067         * tests/test-gethostname.c: New file.
3068
3069 2008-01-17  Simon Josefsson  <simon@josefsson.org>
3070
3071         * lib/gethostname.c: Include string.h unconditionally, strncpy is
3072         used by the UNAME case.  Reported by Bruno Haible
3073         <bruno@clisp.org>.
3074
3075 2008-01-17  Eric Blake  <ebb9@byu.net>
3076
3077         Convert c-strcasestr to be more efficient.
3078         * modules/c-strcasestr (Files): Use Two-Way, not KMP.
3079         (Depends-on): Add c-strcase, remove malloca, strnlen.
3080         * tests/test-c-strcasestr.c (main): Enhance test.
3081         * lib/c-strcasestr.c (c_strcasestr): Rewrite to new algorithm.
3082
3083 2007-01-16  Paolo Bonzini  <bonzini@gnu.org>
3084
3085         * build-aux/bootstrap (MSGID_BUGS_ADDRESS): New overridable variable.
3086         Use it in creating po/Makevars.
3087
3088 2008-01-15  Simon Josefsson  <simon@josefsson.org>
3089
3090         * lib/gc-libgcrypt.c (gc_init): Disable secure memory by default.
3091         Applications that requires it should initialize libgcrypt
3092         manually.
3093
3094 2008-01-16  Simon Josefsson  <simon@josefsson.org>
3095
3096         * lib/gethostname.c [!HAVE_UNAME]: Need string.h for strcpy.
3097
3098 2008-01-15  Paul Eggert  <eggert@cs.ucla.edu>
3099
3100         Fix problem with getdate on mingw32 reported by Simon Josefsson
3101         in <http://lists.gnu.org/archive/html/bug-gnulib/2008-01/msg00192.html>.
3102         * lib/getdate.y (get_date): Check "HAVE_DECL_TZNAME", not "defined
3103         tzname", when deciding whether to declare tzname.
3104         * lib/strftime.c (tzname): Likewise.
3105
3106 2008-01-15  Bruno Haible  <bruno@clisp.org>
3107
3108         Work around a MacOS X 10.5 bug in frexpl().
3109         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Also check denormalized numbers.
3110         * doc/functions/frexpl.texi: Document the bug.
3111         Reported by Elias Pipping <pipping@gentoo.org>.
3112
3113 2008-01-14  Eric Blake  <ebb9@byu.net>
3114
3115         Touch up previous patch.
3116         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR_SIMPLE): Fix typo.
3117         * doc/functions/strcasestr.texi (strcasestr): Document OpenBSD bug.
3118
3119         Convert strcasestr module to use Two-Way algorithm.
3120         * modules/strcasestr-simple: New module, based on the old
3121         strcasestr, but with Two-Way rather than KMP.
3122         * modules/strcasestr (Depends-on): Change to strcasestr-simple.
3123         * lib/string.in.h (rpl_strcasestr): Declare.
3124         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Check for linear
3125         performance.
3126         * lib/strcasestr.c (strcasestr): Simplify, and avoid malloc.
3127         * modules/string (Makefile.am): Support strcasestr.
3128         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Likewise.
3129         * modules/strcasestr-tests (Depends-on): Check for alarm.
3130         * tests/test-strcasestr.c: Augment test.
3131         * lib/str-two-way.h: Clean up stray macro.
3132         * NEWS: Document new module.
3133         * MODULES.html.sh (string handling): Likewise.
3134         * doc/functions/strcasestr.texi: New file.
3135         * doc/gnulib.texi (Function Substitutes): New node.  Move memmem
3136         here, since it is not a POSIX function.
3137
3138 2008-01-14  Colin Watson  <cjwatson@debian.org>
3139             Bruno Haible  <bruno@clisp.org>
3140
3141         * m4/strsignal.m4 (gl_FUNC_STRSIGNAL): Also check whether strsignal
3142         works fine; if not, set REPLACE_STRSIGNAL.
3143         (gl_PREREQ_STRSIGNAL): Require AC_DECL_SYS_SIGLIST.
3144         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
3145         REPLACE_STRSIGNAL.
3146         * lib/string.in.h (strsignal): Consider REPLACE_STRSIGNAL.
3147         * modules/string (Makefile.am): Substitute REPLACE_STRSIGNAL.
3148         * tests/test-strsignal.c (main): Check out-of-range signal numbers.
3149
3150 2008-01-14  Bruno Haible  <bruno@clisp.org>
3151
3152         * modules/strsignal (Include): Change to <string.h>.
3153
3154 2008-01-14  Colin Watson  <cjwatson@debian.org>
3155
3156         * modules/argp (Notice): Add a notice recommending to change
3157         XGETTEXT_OPTIONS.
3158         (configure.ac): Invoke AM_XGETTEXT_OPTION if it exists.
3159
3160 2008-01-13  Colin Watson  <cjwatson@debian.org>
3161
3162         * modules/strsignal-tests: New file.
3163         * tests/test-strsignal.c: New file.
3164
3165         * lib/strsignal.c: New file, from glibc with modifications.
3166         * lib/siglist.h: New file, from glibc with modifications.
3167         * lib/string.in.h (strsignal): New declaration.
3168         * m4/strsignal.m4: New file.
3169         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
3170         GNULIB_STRSIGNAL and HAVE_DECL_STRSIGNAL.
3171         * modules/strsignal: New file.
3172         * modules/string (Makefile.am): Substitute GNULIB_STRSIGNAL and
3173         HAVE_DECL_STRSIGNAL.
3174
3175 2008-01-13  Bruno Haible  <bruno@clisp.org>
3176
3177         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Check that the
3178         locale encoding is not ASCII. Needed for OpenBSD 4.0.
3179         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Likewise.
3180         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
3181
3182 2008-01-13  Bruno Haible  <bruno@clisp.org>
3183
3184         * lib/argp-fmtstream.h (__attribute__): Don't redefine if
3185         __STRICT_ANSI__ is set: it's not needed by any version of gcc.
3186         * lib/argp.h (__attribute__): Likewise.
3187         * lib/c-stack.c (__attribute__): Likewise.
3188         * lib/error.h (__attribute__): Likewise.
3189         * lib/fts.c (__attribute__): Likewise.
3190         * lib/openat.h (__attribute__): Likewise.
3191         * lib/stdio.in.h (__attribute__): Likewise.
3192         * lib/string.in.h (__attribute__): Likewise.
3193         * lib/utimens.c (__attribute__): Likewise.
3194         * lib/vasnprintf.h (__attribute__): Likewise.
3195         * lib/xalloc.h (__attribute__): Likewise.
3196         * lib/xprintf.h (__attribute__): Likewise.
3197         * lib/xstrtol.h (__attribute__): Likewise.
3198         * lib/xvasprintf.h (__attribute__): Likewise.
3199
3200 2008-01-12  Bruno Haible  <bruno@clisp.org>
3201
3202         * doc/gnulib.texi (Glibc Header File Substitutes): New chapter.
3203         * doc/glibc-headers/a.out.texi: New file.
3204         * doc/glibc-headers/aliases.texi: New file.
3205         * doc/glibc-headers/alloca.texi: New file.
3206         * doc/glibc-headers/ar.texi: New file.
3207         * doc/glibc-headers/argp.texi: New file.
3208         * doc/glibc-headers/argz.texi: New file.
3209         * doc/glibc-headers/byteswap.texi: New file.
3210         * doc/glibc-headers/crypt.texi: New file.
3211         * doc/glibc-headers/endian.texi: New file.
3212         * doc/glibc-headers/envz.texi: New file.
3213         * doc/glibc-headers/err.texi: New file.
3214         * doc/glibc-headers/error.texi: New file.
3215         * doc/glibc-headers/execinfo.texi: New file.
3216         * doc/glibc-headers/fpu_control.texi: New file.
3217         * doc/glibc-headers/fstab.texi: New file.
3218         * doc/glibc-headers/fts.texi: New file.
3219         * doc/glibc-headers/getopt.texi: New file.
3220         * doc/glibc-headers/ieee754.texi: New file.
3221         * doc/glibc-headers/ifaddrs.texi: New file.
3222         * doc/glibc-headers/libintl.texi: New file.
3223         * doc/glibc-headers/mcheck.texi: New file.
3224         * doc/glibc-headers/mntent.texi: New file.
3225         * doc/glibc-headers/obstack.texi: New file.
3226         * doc/glibc-headers/paths.texi: New file.
3227         * doc/glibc-headers/printf.texi: New file.
3228         * doc/glibc-headers/pty.texi: New file.
3229         * doc/glibc-headers/resolv.texi: New file.
3230         * doc/glibc-headers/shadow.texi: New file.
3231         * doc/glibc-headers/sysexits.texi: New file.
3232         * doc/glibc-headers/ttyent.texi: New file.
3233
3234 2008-01-12  Jim Meyering  <meyering@redhat.com>
3235
3236         announce-gen: emit Gnulib's git-based version string.
3237         * build-aux/announce-gen: Remove option: --gnulib-snapshot-time-stamp=S.
3238         New option --gnulib-version=V, where V is expected to be
3239         the output of running git describe in the gnulib directory.
3240         (get_tool_versions): Request feedback on xdelta.  I suspect it's
3241         not useful, and plan to stop publishing an xdelta file with each
3242         coreutils release.
3243
3244         * build-aux/announce-gen: Also check for lzma-compressed files.
3245
3246 2008-01-11  Bruno Haible  <bruno@clisp.org>
3247
3248         * tests/test-memmem.c (main): Increase maximum allowed time.
3249         * tests/test-strstr.c (main): Likewise.
3250
3251 2008-01-11  Bruno Haible  <bruno@clisp.org>
3252
3253         * doc/functions/memmem.texi: Add more precisions about platforms.
3254         * doc/functions/strstr.texi: Likewise.
3255
3256 2008-01-10  Eric Blake  <ebb9@byu.net>
3257
3258         * m4/strstr.m4: Delete cruft from copy-n-paste.
3259         Reported by Bruno Haible.
3260
3261 2008-01-10  Bruno Haible  <bruno@clisp.org>
3262
3263         Make c-strstr rely on strstr.
3264         * lib/c-strstr.c: Don't include str-kmp.h.
3265         (c_strstr): Define in terms of strstr.
3266         * modules/c-strstr (Files): Remove lib/str-kmp.h.
3267         (Depends-on): Remove stdbool, malloca, strnlen. Add strstr.
3268
3269 2008-01-10  Bruno Haible  <bruno@clisp.org>
3270
3271         * doc/gnulib.texi (String Functions in C Locale): New section.
3272         * doc/c-ctype.texi: New file.
3273         * doc/c-strcase.texi: New file.
3274         * doc/c-strcaseeq.texi: New file.
3275         * doc/c-strcasestr.texi: New file.
3276         * doc/c-strstr.texi: New file.
3277         * doc/c-strtod.texi: New file.
3278         * doc/c-strtold.texi: New file.
3279
3280 2008-01-10  Eric Blake  <ebb9@byu.net>
3281
3282         * lib/relocatable.h: Fix a comment.
3283
3284 2008-01-10  Eric Blake  <ebb9@byu.net>
3285
3286         Share two-way algorithm.
3287         * lib/str-two-way.h: New file, merged from...
3288         * lib/memmem.c: ...here...
3289         * lib/strstr.c: ...and here.
3290         * modules/memmem (Files): Use it.
3291         * modules/strstr (Files): Likewise.
3292
3293         Avoid quadratic strstr implementations.
3294         * lib/strstr.c: New file.
3295         * m4/strstr.m4: Likewise.
3296         * modules/strstr: Likewise.
3297         * modules/strstr-tests: Likewise.
3298         * tests/test-strstr.c: Likewise.
3299         * lib/string.in.h (rpl_strstr): Declare.
3300         (memmem) [GNULIB_POSIXCHECK]: Document speed issue.
3301         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Support strstr.
3302         * modules/string (Makefile.am): Likewise.
3303         * MODULES.html.sh (string handling): Mention new module.
3304         * doc/functions/strstr.texi (strstr): Document the bug.
3305
3306 2008-01-10  Bruno Haible  <bruno@clisp.org>
3307
3308         * lib/relocatable.h (relocate): State whether result is freshly
3309         allocated or not.
3310         * lib/relocatable.c (relocate): Return a freshly allocated string
3311         instead of a pointer to a privately held string.
3312         Reported by Sylvain Beucler <beuc@gnu.org>.
3313
3314 2008-01-10  Colin Watson  <cjwatson@debian.org>
3315
3316         * lib/canonicalize-lgpl.c [!_LIBC]: Fix typo in #if directive:
3317         s/S_ISNLK/S_ISLNK/.
3318
3319 2008-01-09  Bruno Haible  <bruno@clisp.org>
3320
3321         * doc/functions/memmem.texi: Use the same structure as snprintf.texi
3322         and other files.
3323         * m4/memmem.m4 (gl_FUNC_MEMMEM): Say "guessing no" instead of "no"
3324         if it's only a guess.
3325         * modules/memmem: Simplify by depending on memmem-simple.
3326
3327 2008-01-09  Bruno Haible  <bruno@clisp.org>
3328
3329         Work around OpenBSD 4.0 tdelete() bug.
3330         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Also check tdelete's return value.
3331         * lib/search.in.h: If REPLACE_TSEARCH is 1, define tsearch etc. as
3332         macros and don't redefine the enum values.
3333         * m4/search_h.m4 (gl_SEARCH_H_DEFAULTS): Initialize REPLACE_TSEARCH.
3334         * modules/search (Makefile.am): Also substitute REPLACE_TSEARCH.
3335         * doc/functions/tdelete.texi: Document the OpenBSD 4.0 bug.
3336
3337 2008-01-09  Bruno Haible  <bruno@clisp.org>
3338
3339         * tests/test-wcwidth.c: Include <string.h> and localcharset.h.
3340         (main): Don't perform the tests if setlocale did not install a UTF-8
3341         locale. Needed on OpenBSD 4.0.
3342         * modules/wcwidth-tests (Depends-on): Add localcharset.
3343
3344 2008-01-09  Paul Eggert  <eggert@cs.ucla.edu>
3345
3346         gl_FUNC_ALLOCA no longer defines HAVE_ALLOCA_H unconditionally.
3347         See <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00149.html>.
3348         * NEWS: announce this.
3349         * m4/alloca.m4 (gl_FUNC_ALLOCA): Don't define HAVE_ALLOCA_H.
3350
3351 2008-01-09  Simon Josefsson  <simon@josefsson.org>
3352         and Eric Blake  <ebb9@byu.net>
3353
3354         Add memmem-simple module.
3355         * m4/memmem.m4 (gl_FUNC_MEMMEM_SIMPLE): New macro.
3356         (gl_FUNC_MEMMEM): Separate performance from presence checks.
3357         * modules/memmem-simple: New file.
3358         * modules/memmem (Description): Tweak.
3359         * MODULES.html.sh (string handling): Mention new module.
3360         * doc/functions/memmem.texi (memmem): Distinguish which flaws are
3361         addressed by memmem-simple.
3362         * NEWS: Document the difference.
3363
3364 2008-01-09  Eric Blake  <ebb9@byu.net>
3365
3366         Give gcc some memmem optimization hints.
3367         * lib/string.in.h (memmem, memrchr, strchrnul, strnlen, strpbrk)
3368         (strcasestr): Declare as pure.
3369         * modules/memmem (Maintainer): Claim my implementation.
3370
3371 2008-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3372
3373         Support AIX 6.1 and higher.
3374         * build-aux/config.libpath: Likewise.
3375         * build-aux/config.rpath: Likewise.
3376
3377 2008-01-08  Jim Meyering  <meyering@redhat.com>
3378             Bruno Haible  <bruno@clisp.org>
3379
3380         * lib/printf-parse.c (PRINTF_PARSE): Handle a size specifier "q"
3381         on MacOS X and a size specifier "I64" on mingw. Needed for PRIdMAX.
3382         Reported by Peter Fales in
3383         <http://lists.gnu.org/archive/html/bug-coreutils/2007-12/msg00148.html>.
3384
3385 2008-01-08  Bruno Haible  <bruno@clisp.org>
3386
3387         * modules/unictype/category-of (Depends-on): Add
3388         unictype/category-none.
3389         * modules/unictype/category-and-tests (Depends-on): Add
3390         unictype/category-{L,N,Lu,Nd}.
3391         * modules/unictype/category-and-not-tests (Depends-on): Likewise.
3392         * modules/unictype/category-or-tests (Depends-on): Add
3393         unictype/category-{L,N}.
3394         * modules/unictype/category-name-tests (Depends-on): Add
3395         unictype/category-{Z,Nl}.
3396         Reported by Simon Josefsson.
3397
3398 2008-01-08  Bruno Haible  <bruno@clisp.org>
3399
3400         * lib/str-kmp.h (knuth_morris_pratt_unibyte): Document the calling
3401         convention better.
3402         * lib/mbsstr.c (knuth_morris_pratt_multibyte): Likewise.
3403         * lib/mbscasestr.c (knuth_morris_pratt_multibyte): Likewise.
3404         Reported by Peter Miller <millerp@canb.auug.org.au>.
3405
3406 2008-01-08  Eric Blake  <ebb9@byu.net>
3407
3408         Rewrite memmem to guarantee linear complexity without malloc.
3409         * lib/memmem.c (memmem): Use Two-Way rather than
3410         Knuth-Morris-Pratt, to allow O(1) space usage.
3411         (critical_factorization, two_way_short_needle)
3412         (two_way_long_needle): New functions.
3413         (knuth_morris_pratt): Delete.
3414         * modules/memmem (Depends-on): No longer need malloca or stdbool.
3415         Add stdint.
3416         * tests/test-memmem.c (main): Add tests for periodic needle and
3417         sublinear performance.
3418         * doc/functions/memmem.texi (memmem): Document other deficiencies
3419         in cygwin and older glibc.
3420
3421 2008-01-08  Bruno Haible  <bruno@clisp.org>
3422
3423         * modules/memmem-tests (Makefile.am): Remove TESTS_ENVIRONMENT
3424         augmentation.
3425
3426 2008-01-08  Mike Frysinger  <vapier@gentoo.org>
3427
3428         Add a configure time option: --disable-acl.
3429         * m4/acl.m4 (gl_FUNC_ACL): Wrap all ACL logic in a call to
3430         AC_ARG_ENABLE(acl).
3431
3432 2008-01-06  Simon Josefsson  <simon@josefsson.org>
3433
3434         * tests/test-localename.c: Don't include obsolete "setenv.h".
3435
3436         * modules/localename-tests (Depends-on): Need unsetenv.
3437
3438 2008-01-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3439
3440         * DEPENDENCIES: Require Texinfo version 4.6 or newer.
3441
3442 2008-01-06  Colin Watson  <cjwatson@debian.org>
3443
3444         * users.txt: Add man-db.
3445
3446 2008-01-07  Bruno Haible  <bruno@clisp.org>
3447
3448         * doc/gnulib-intro.texi (Library vs Reusable Code): Restore the
3449         previous section name.
3450
3451 2008-01-07  Bruno Haible  <bruno@clisp.org>
3452
3453         * lib/progname.c (set_program_name): Don't strip off a leading
3454         "lt-" prefix outside a .libs directory.
3455         Suggested by Paul Eggert.
3456
3457 2008-01-01  Sylvain Beucler  <beuc@gnu.org>
3458             Bruno Haible  <bruno@clisp.org>
3459
3460         Improve memory cleanup in 'relocatable' module.
3461         * lib/relocatable.h (compute_curr_prefix): Change return type to
3462         'char *'.
3463         * lib/relocatable.c (compute_curr_prefix): Change return type to
3464         'char *'. Free curr_installdir after use.
3465         (relocate): Free curr_prefix_better after use.
3466         * lib/progreloc.c (prepare_relocate): Free curr_prefix after use.
3467
3468 2008-01-01  Bruno Haible  <bruno@clisp.org>
3469
3470         * tests/test-wcwidth.c (main): Relax test of U+2060. Avoids a test
3471         failure on older glibc systems.
3472         Reported by Peter Fales <psfales@alcatel-lucent.com>.
3473
3474 2008-01-05  Eric Blake  <ebb9@byu.net>
3475
3476         Avoid quadratic system memmem.
3477         * m4/memmem.m4 (gl_FUNC_MEMMEM): Check for quadratic memmem.
3478         Reported by Ralf Wildenhues.
3479
3480         Fix memmem test for mingw.
3481         * modules/memmem-tests (configure.ac): Check for alarm.
3482         * tests/test-memmem.c (main): Avoid alarm on platforms that lack
3483         it.
3484         * doc/functions/memmem.texi: New file.
3485         * doc/gnulib.texi (Function Substitutes): Add memmem.
3486         Reported by Bruno Haible.
3487
3488 2008-01-04  Bruno Haible  <bruno@clisp.org>
3489
3490         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP):
3491         Require gl_HEADER_STRINGS_H_DEFAULTS, not
3492         gl_HEADER_STRING_H_DEFAULTS.
3493
3494 2008-01-04  Eric Blake  <ebb9@byu.net>
3495
3496         Shorten duration of memmem test.
3497         * tests/test-memmem.c (main): Use alarm to declare failure if test
3498         is taking too long.
3499         Reported by Ralf Wildenhues.
3500
3501 2007-12-21  Simon Josefsson  <simon@josefsson.org>
3502
3503         * modules/relocatable-prog-wrapper (Depends-on): Add intprops and
3504         string, needed by strerror.
3505
3506 2008-01-03  Colin Watson  <cjwatson@debian.org>
3507             Bruno Haible  <bruno@clisp.org>
3508
3509         * doc/gnulib-tool.texi (Localization): New section.
3510
3511 2008-01-02  Bruno Haible  <bruno@clisp.org>
3512
3513         * lib/memmem.c (knuth_morris_pratt, memmem): Change all 'char *'
3514         variables to 'unsigned char *' type.
3515         Reported by Paul Eggert.
3516
3517 2008-01-02  Jim Meyering  <jim@meyering.net>
3518
3519         * lib/version-etc.c (COPYRIGHT_YEAR): Increase for new year.
3520
3521 2007-12-31  Jim Meyering  <jim@meyering.net>
3522
3523         Avoid use of private FTS type name.
3524         * lib/fts.c (fts_sort): Use FTSENT rather than "struct _ftsent".
3525
3526 2007-12-30  Karl Berry  <karl@gnu.org>
3527
3528         * doc/gnulib.texi (Library vs. Reusable Code): remove period, to
3529         work around defect in Texinfo and/or the standalone Info browser.
3530
3531 2007-12-30  Bruno Haible  <bruno@clisp.org>
3532
3533         Unify 5 copies of the KMP code.
3534         * lib/str-kmp.h: New file.
3535         * lib/c-strcasestr.c: Include str-kmp.h.
3536         (knuth_morris_pratt): Remove function.
3537         (c_strcasestr): Update.
3538         * lib/c-strstr.c: Include str-kmp.h.
3539         (knuth_morris_pratt): Remove function.
3540         (c_strcasestr): Update.
3541         * lib/mbscasestr.c: Include str-kmp.h.
3542         (knuth_morris_pratt_unibyte): Remove function.
3543         * lib/mbsstr.c: Include str-kmp.h.
3544         (knuth_morris_pratt_unibyte): Remove function.
3545         * lib/strcasestr.c: Include str-kmp.h.
3546         (knuth_morris_pratt): Remove function.
3547         (strcasestr): Update.
3548         * modules/c-strcasestr (Files): Add lib/str-kmp.h.
3549         * modules/c-strstr (Files): Likewise.
3550         * modules/mbscasestr (Files): Likewise.
3551         * modules/mbsstr (Files): Likewise.
3552         * modules/strcasestr (Files): Likewise.
3553         Suggested by Paul Eggert.
3554
3555 2007-12-30  Bruno Haible  <bruno@clisp.org>
3556
3557         * lib/xmalloca.c (xmmalloca): Don't define if HAVE_ALLOCA is not
3558         defined.
3559
3560 2007-12-30  Bruno Haible  <bruno@clisp.org>
3561
3562         * lib/xmalloca.h: Include xalloc.h.
3563         (xnmalloca): New macro.
3564
3565 2007-12-30  Bruno Haible  <bruno@clisp.org>
3566
3567         * lib/malloca.h (nmalloca): New macro.
3568         * lib/c-strcasestr.c (knuth_morris_pratt): Use it.
3569         * lib/c-strstr.c (knuth_morris_pratt): Likewise.
3570         * lib/mbscasestr.c (knuth_morris_pratt_unibyte,
3571         knuth_morris_pratt_multibyte): Likewise.
3572         * lib/mbsstr.c (knuth_morris_pratt_unibyte,
3573         knuth_morris_pratt_multibyte): Likewise.
3574         * lib/memmem.c (knuth_morris_pratt): Likewise.
3575         * lib/strcasestr.c (knuth_morris_pratt): Likewise.
3576
3577 2007-12-25  Bruno Haible  <bruno@clisp.org>
3578
3579         Fixup after 2007-10-17 commit. Ensure that 'glob' stays under LGPLv2+.
3580         * lib/glob.c: Don't include openat.h.
3581         (link_exists2_p): Add back the code that deals with the
3582         !GLOB_ALTDIRFUNC case.
3583         (link_exists_p) [!_LIBC && !HAVE_FSTATAT]: Just call link_exists2_p and
3584         let it do the filename concatenation.
3585         * m4/glob.m4 (gl_PREREQ_GLOB): Add check for fstatat.
3586         * modules/glob (Depends-on): Remove openat.
3587
3588 2007-12-31  Bruno Haible  <bruno@clisp.org>
3589
3590         * modules/dirfd (License): Change to LGPLv2+.
3591         Approved by Jim Meyering.
3592
3593 2007-12-29  Paul Eggert  <eggert@cs.ucla.edu>
3594
3595         * lib/memmem.c (knuth_morris_pratt): Check for size_t overflow
3596         when multiplying M by sizeof (size_t).
3597
3598 2007-12-10  Martin Lambers  <marlam@marlam.de>
3599
3600         Override getpagesize on mingw.
3601         * lib/getpagesize.c: New file.
3602         * m4/getpagesize.m4 (gl_FUNC_GETPAGESIZE): Enable replacement on mingw.
3603         * modules/getpagesize (Files): Add lib/getpagesize.c.
3604         * lib/unistd.in.h (getpagesize): Declare if we are using a replacement.
3605         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
3606         REPLACE_GETPAGESIZE.
3607         * modules/unistd (Makefile.am): Substitute REPLACE_GETPAGESIZE.
3608
3609 2007-12-25  Bruno Haible  <bruno@clisp.org>
3610
3611         * modules/localcharset (Notice): New field.
3612         (configure.ac): Define LOCALCHARSET_TESTS_ENVIRONMENT.
3613         Suggested by Ben Pfaff <blp@cs.stanford.edu>.
3614
3615 2007-12-25  Paul Eggert  <eggert@cs.ucla.edu>
3616             Bruno Haible  <bruno@clisp.org>
3617
3618         Avoid using the syntax symbol() in formatted documentation.
3619         * MODULES.html.sh (func_module): When replacing symbol() with a
3620         hyperlink, remove the parentheses. Show an error if some remain.
3621         Recognize and render the '...' syntax.
3622         * doc/alloca-opt.texi: Remove parentheses from symbol reference.
3623         Rework. Add paragraph about GCC's inlining.
3624         * doc/alloca.texi: Likewise.
3625         * doc/error.texi: Remove parentheses from symbol reference.
3626         * doc/gnulib-intro.texi: Likewise.
3627         * doc/gnulib.texi (alloca, alloca-opt): New nodes.
3628         * modules/fnmatch (Description): Reword to say "the ... function".
3629         * modules/full-read (Description): Likewise.
3630         * modules/full-write (Description): Likewise.
3631         * modules/safe-read (Description): Likewise.
3632         * modules/safe-write (Description): Likewise.
3633         * modules/strchrnul (Description): Likewise.
3634         * modules/trim (Description): Likewise.
3635         * modules/error (Description): Remove parentheses from symbol
3636         references.
3637         * modules/verror (Description): Likewise.
3638         Reported by Karl Berry.
3639
3640 2007-12-25  Bruno Haible  <bruno@clisp.org>
3641
3642         Fixup after 2007-10-16 commit.
3643         * lib/glob.c (glob_in_dir): Don't use ISO C99 syntax.
3644
3645 2007-12-24  Bruno Haible  <bruno@clisp.org>
3646
3647         Make --enable-relocatable work with DESTDIR.
3648         * build-aux/install-reloc: Accept another argument 'destdir'. Use it
3649         to compute installdir from destprog.
3650         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): In INSTALL_PROGRAM_ENV,
3651         also set the RELOC_DESTDIR variable.
3652         Reported by Ð›ÐµÐ²Ð°ÑˆÐµÐ² Ð˜Ð²Ð°Ð½ <octagram@bluebottle.com>.
3653
3654 2007-12-24  Bruno Haible  <bruno@clisp.org>
3655
3656         Fix link error due to xalloc_die().
3657         * lib/progreloc.c: When NO_XMALLOC is defined, use areadlink instead
3658         of xreadlink.
3659         * lib/relocwrapper.c: Update comments.
3660         * build-aux/install-reloc: Remove xreadlink.c from file list.
3661         * modules/relocatable-prog-wrapper (Files): Remove xreadlink.h and
3662         xreadlink.c.
3663         Reported by Ð›ÐµÐ²Ð°ÑˆÐµÐ² Ð˜Ð²Ð°Ð½ <octagram@bluebottle.com>.
3664
3665 2007-12-24  Bruno Haible  <bruno@clisp.org>
3666
3667         Split setenv module into setenv and unsetenv. Get rid of setenv.h.
3668         * lib/setenv.h: Remove file.
3669         * lib/stdlib.in.h (setenv, unsetenv): New declarations, moved here from
3670         lib/setenv.h.
3671         * modules/setenv (Files): Remove lib/setenv.h, lib/unsetenv.c.
3672         (Depends-on): Add stdlib.
3673         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR. Don't invoke
3674         gl_FUNC_UNSETENV.
3675         (Include): Replace setenv.h with <stdlib.h>.
3676         * modules/unsetenv: New file.
3677         * lib/setenv.c: Include <stdlib.h> first, after alloca.h.
3678         * lib/unsetenv.c: Include <stdlib.h> first.
3679         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_SETENV_SEPARATE): Require
3680         gl_STDLIB_H_DEFAULTS. Conditionally set HAVE_SETENV to 0.
3681         (gl_FUNC_UNSETENV): Require gl_STDLIB_H_DEFAULTS. Conditionally set
3682         HAVE_UNSETENV to 0. Set VOID_UNSETENV as an AC_SUBSTed variable.
3683         * modules/stdlib (Makefile.am): Substitute also GNULIB_SETENV,
3684         HAVE_SETENV, GNULIB_UNSETENV, HAVE_UNSETENV, VOID_UNSETENV.
3685         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_SETENV,
3686         HAVE_SETENV, GNULIB_UNSETENV, HAVE_UNSETENV, VOID_UNSETENV.
3687         * doc/functions/unsetenv.texi: Update.
3688         * modules/xsetenv (Depends-on): Add unsetenv.
3689         * modules/getdate (Depends-on): Likewise.
3690         * lib/xsetenv.h: Include <stdlib.h> instead of setenv.h.
3691         * lib/xsetenv.c: Don't include setenv.h.
3692         * lib/getdate.y: Likewise.
3693         * lib/relocwrapper.c: Likewise.
3694         * modules/relocatable-prog-wrapper (Files): Remove lib/setenv.h.
3695         (Depends-on): Add stdlib.
3696         * NEWS: Mention the changes.
3697         Reported by Ð›ÐµÐ²Ð°ÑˆÐµÐ² Ð˜Ð²Ð°Ð½ <octagram@bluebottle.com>.
3698
3699 2007-12-23  Bruno Haible  <bruno@clisp.org>
3700
3701         * lib/memmem.c (memmem): Use lowercase variable names. Tab
3702         indentation.
3703
3704 2007-12-23  Bruno Haible  <bruno@clisp.org>
3705
3706         * lib/c-strcasestr.c: Add more comments.
3707         * lib/c-strstr.c: Likewise.
3708         * lib/mbscasestr.c: Likewise.
3709         * lib/mbsstr.c: Likewise.
3710         * lib/strcasestr.c: Likewise.
3711         * lib/memmem.c: Likewise.
3712
3713 2007-12-23  Bruno Haible  <bruno@clisp.org>
3714
3715         * tests/test-memmem.c: Include <string.h> first.
3716
3717 2007-12-22  Bruno Haible  <bruno@clisp.org>
3718
3719         * gnulib-tool (func_create_testdir): Change $auxdir while generating
3720         the contents of $testsbase.
3721         Reported by Ralf Wildenhues.
3722
3723 2007-12-22  Bruno Haible  <bruno@clisp.org>
3724
3725         * gnulib-tool (func_emit_tests_Makefile_am): Replace local_ldadd with
3726         two variables local_ldadd_before, local_ldadd_last.
3727
3728 2007-12-20  Eric Blake  <ebb9@byu.net>
3729
3730         Work around circular library issue when cross-compiling.
3731         * lib/progname.c (set_program_name): Use strncmp, not memcmp, so
3732         that progname.o does not need to pull in rpl_memcmp.
3733
3734 2007-12-19  Eric Blake  <ebb9@byu.net>
3735
3736         Fix memmem to avoid O(n^2) worst-case complexity.
3737         * lib/memmem.c (knuth_morris_pratt): New function.
3738         (memmem): Use it if first few naive iterations fail.
3739         * m4/memmem.m4 (gl_FUNC_MEMMEM): Detect cygwin bug.
3740         * modules/memcmp (License): Set to LGPLv2+, not LGPL.
3741         * modules/memchr (License): Likewise.
3742         * modules/memmem (Depends-on): Add memcmp, memchr, stdbool, and
3743         malloca.
3744         * tests/test-memmem.c: Rewrite, borrowing ideas from
3745         test-mbsstr1.c; the old version wouldn't even compile!
3746         * modules/memmem-tests: New file.
3747         * lib/string.in.h (rpl_memmem): Add declaration.
3748         * modules/string (Makefile.am): Substitute REPLACE_MEMMEM.
3749         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Default for
3750         REPLACE_MEMMEM.
3751
3752 2007-12-18  Paul Eggert  <eggert@cs.ucla.edu>
3753
3754         Fix problem with _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H on VMS.
3755         * lib/stdint.in.h (_GL_JUST_INCLUDE_SYSTEM_INTTYPES_H): Define
3756         before any system include files, and undef after them all.  This
3757         should fix a problem on VMS reported by John E. Malmberg in
3758         <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00118.html>.
3759
3760 2007-12-17  Eric Blake  <ebb9@byu.net>
3761
3762         Revert addition of verify, for BSD/OS.
3763         * lib/fseeko.c [!HAVE_FSEEKO]: Allow off_t > long, even though it
3764         can't handle large files, for the sake of obsolete platforms.
3765         * modules/fseeko (Depends-on): Remove verify.
3766         * doc/functions/fseeko.texi (fseeko): Document BSD/OS limitation.
3767         * doc/functions/ftello.texi (ftello): Likewise.
3768         * doc/functions/fgetpos.texi (fgetpos): Likewise.
3769         Reported by Larry Jones.
3770
3771 2007-12-17  Petr Salinger  <Petr.Salinger@seznam.cz>
3772
3773         getcwd.c: Use a more readable witness: HAVE_OPENAT_SUPPORT
3774         * lib/getcwd.c: Define and use HAVE_OPENAT_SUPPORT, in place of AT_FDCWD.
3775
3776 2007-12-17  Jim Meyering  <meyering@redhat.com>
3777
3778         Port to GNU/kFreeBSD - FreeBSD kernel + GNU libc,
3779         which has no openat syscall, yet <fcntl.h> does define AT_FDCWD.
3780         * lib/getcwd.c: Undef AT_FDCWD if there is no openat function.
3781         * modules/getcwd (Depends-on): Add openat.
3782         Reported by Petr Salinger.
3783
3784 2007-12-17  Bruno Haible  <bruno@clisp.org>
3785
3786         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Use GL_NOCRASH to
3787         avoid a segmentation fault of the configure test on x86_64 systems.
3788
3789 2007-12-15  Jim Meyering  <meyering@redhat.com>
3790
3791         * build-aux/gnupload (GPG): Don't hard-code absolute name of gpg binary.
3792
3793 2007-12-13  Eric Blake  <ebb9@byu.net>
3794
3795         Another fseek test.
3796         * tests/test-fseek.c (main): Also test ungetc handling.
3797         * tests/test-fseeko.c (main): Likewise.
3798         * modules/fseeko (Depends-on): Add verify.
3799         * lib/fseeko.c [!HAVE_FSEEKO]: Verify that off_t is not too
3800         large.
3801         Reported by Larry Jones.
3802
3803         Fix fseeko on mingw.
3804         * lib/fseeko.c (rpl_fseeko) [_IOERR]: Reset EOF flag on successful
3805         seek.
3806
3807         Beef up fseek tests.
3808         * tests/test-fseek.c (main): Also test eof handling.
3809         * tests/test-fseeko.c (main): Likewise.
3810         Reported by Larry Jones.
3811
3812 2007-12-13  Larry Jones  <lawrence.jones@siemens.com>  (tiny change)
3813
3814         Fix fseeko on BSD-based platforms.
3815         * lib/fseeko.c (rpl_fseeko) [__sferror]: Reset EOF flag on
3816         successful seek.
3817
3818 2007-12-12  Eric Blake  <ebb9@byu.net>
3819
3820         Allow circular dependency of separate libtests.a
3821         * gnulib-tool (func_emit_tests_Makefile_am): Add AM_LIBTOOLFLAGS
3822         when use_libtests.
3823
3824 2007-12-11  Eric Blake  <ebb9@byu.net>
3825
3826         Fix bug with -0.0L in previous patch.
3827         * lib/isnan.c (rpl_isnanl): Make robust to -0.0L and pad bits.
3828         * tests/test-isnan.c (main): Also test on zeroes.
3829         * tests/test-isnanf.c (main): Likewise.
3830         * tests/test-isnanl.h (main): Likewise.
3831
3832         Detect pseudo-denormals on x86 even when cross-compiling.
3833         * lib/isnan.c (rpl_isnanl) [!KNOWN_EXPBIT0_LOCATION
3834         && USE_LONG_DOUBLE && x86]: Add one more check to filter out
3835         invalid bit patterns that happen to satisfy ==.
3836
3837         Avoid link failures with separate libtests.a.
3838         * gnulib-tool (func_emit_tests_Makefile_am): Also list local_ldadd
3839         last, to satisfy circular dependencies.
3840
3841 2007-12-11  Eric Blake  <ebb9@byu.net>
3842         and Bruno Haible  <bruno@clisp.org>
3843
3844         Fix OpenBSD 4.0 <float.h> handling of long double.
3845         * m4/float_h.m4 (gl_FLOAT_H): Also claim OpenBSD is broken.
3846         * lib/float.in.h [__OpenBSD__]: Add fixes for OpenBSD.
3847         * doc/headers/float.texi (float.h): Document OpenBSD bug.
3848
3849 2007-12-11  Jim Meyering  <meyering@redhat.com>
3850
3851         * users.txt: Add libvirt.
3852
3853         Support versions of autoconf prior to 2.59c.
3854         * gnulib-tool (func_emit_initmacro_done): Define m4_foreach_w
3855         if it is not already defined.
3856
3857 2007-12-09  Bruno Haible  <bruno@clisp.org>
3858
3859         Let 'gnulib-tool --import' collect sources needed for the tests in
3860         tests/ rather than in lib/.
3861         * gnulib-tool (func_emit_tests_Makefile_am): Accept use_libtests
3862         argument. If true, add rules to generate libtests.a, and put libtests.a
3863         into $(LDADD). Consider source files in subdirectories and set
3864         uses_subdirs.
3865         (func_emit_initmacro_start, func_emit_initmacro_end,
3866         func_emit_initmacro_done): Pass all arguments explicitly.
3867         (func_import): Determine two module lists main_modules,
3868         testsrelated_modules. Determine use_libtests. Determine two variables
3869         sed_transform_main_lib_file, sed_transform_testsrelated_lib_file
3870         instead of just sed_transform_lib_file. Determine two variables
3871         main_files and testsrelated_files. Compute 'files' as the union of
3872         both. Adjust sed_rewrite_old_files, sed_rewrite_new_files,
3873         func_add_or_update. In the generated gnulib-comp.m4, collect the
3874         object files for tests/ in different variables than those for lib/.
3875         Substitute LIBTESTS_LIBDEPS.
3876         (func_create_testdir): Combine the uses_subdirs results from
3877         func_emit_lib_Makefile_am and from func_emit_tests_Makefile_am.
3878
3879 2007-12-09  Bruno Haible  <bruno@clisp.org>
3880
3881         * gnulib-tool (func_emit_tests_Makefile_am): Expand references to
3882         the build-aux directory.
3883
3884 2007-12-09  Bruno Haible  <bruno@clisp.org>
3885
3886         * gnulib-tool (func_emit_tests_Makefile_am): Remove redundant code
3887         introduced on 2006-09-09.
3888
3889 2007-12-07  Jim Meyering  <meyering@redhat.com>
3890
3891         Let these macros work also with autoconf-2.59.
3892         * m4/getline.m4 (gl_FUNC_GETLINE): Require only autoconf-2.59.  2.60
3893         is not needed, since gnulib now permits use of AC_CHECK_DECLS_ONCE.
3894         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
3895
3896 2007-12-06  Jim Meyering  <meyering@redhat.com>
3897
3898         Avoid a configure-time syntax error in gl_FUNC_ACL.
3899         * m4/acl.m4 (gl_FUNC_ACL): Be careful to check for the acl_trivial
3900         function in each branch, before testing the cache variable.
3901
3902 2007-12-04  Eric Blake  <ebb9@byu.net>
3903
3904         Make scripts executable.
3905         * build-aux/config.guess: Add execute permissions.
3906         * build-aux/config.sub: Likewise.
3907         * build-aux/gendocs.sh: Likewise.
3908
3909         Fix frexp on mingw.
3910         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Detect mingw bug when
3911         cross-compiling.
3912         * doc/functions/frexp.texi (frexp): Document the bug.
3913
3914         Make cygwin fseeko check more reliable.
3915         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET) [__CYGWIN__]: Use cygwin
3916         version numbers, rather than unrelated feature check.
3917         * doc/functions/fseeko.texi (fseeko): Tweak failure report.
3918         * doc/functions/ftello.texi (ftello): Likewise.
3919         Reported by Bruno Haible.
3920
3921         * m4/strerror.m4: Bump version number.
3922
3923 2007-12-03  Bruno Haible  <bruno@clisp.org>
3924
3925         * doc/functions/mprotect.texi: Mention the mingw problem.
3926
3927 2007-12-03  Eric Blake  <ebb9@byu.net>
3928
3929         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): Ensure
3930         REPLACE_STRERROR is initialized before this macro.
3931
3932 2007-12-03  Paul Eggert  <eggert@cs.ucla.edu>
3933
3934         Add support for Solaris 10 ACLs.  Also, ACLs are Gnulib, not Autoconf.
3935         * modules/acl (configure.ac): Rename AC_FUNC_ACL to gl_FUNC_ACL.
3936         * m4/acl.m4 (gl_FUNC_ACL): Renamed from AC_FUNC_ACL.  On Solaris,
3937         put -lsec in even for programs other than 'ls'.  This fixes a problem
3938         for gettext reported by Bruno Haible in
3939         <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00007.html>.
3940         * lib/acl.c (copy_acl, qset_acl) [USE_ACL && defined ACL_NO_TRIVIAL]:
3941         Add support for Solaris 10.  This isn't efficient, but should get the
3942         job done for now.
3943
3944 2007-12-03  James Youngman  <jay@gnu.org>
3945
3946         * doc/regexprops-generic.texi: change "an close-group" to "a
3947         close-group" and "illegal" to "not allowed".
3948
3949 2007-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3950
3951         * lib/unictype/pr_byname.c: Include unictype/pr_byname.h instead of
3952         pr_byname.h. Needed for the rare case when the maintainer has done
3953         "make maintainer-clean" in the source directory and then attempts a
3954         build outside the source directory.
3955         * lib/unictype/scripts.c: Include unictype/scripts_byname.h instead of
3956         scripts_byname.h.
3957
3958 2007-12-02  Martin Lambers <marlam@marlam.de>
3959             Bruno Haible  <bruno@clisp.org>
3960
3961         * lib/getpagesize.h: Remove file.
3962         * lib/unistd.in.h: Include declaration of getpagesize here.
3963         * m4/getpagesize.m4 (gl_FUNC_GETPAGESIZE): Renamed from gl_GETPAGESIZE.
3964         Invoke gl_UNISTD_H_DEFAULTS. Set HAVE_GETPAGESIZE, HAVE_OS_H,
3965         HAVE_SYS_PARAM_H.
3966         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_GETPAGESIZE,
3967         HAVE_GETPAGESIZE, HAVE_OS_H, HAVE_SYS_PARAM_H.
3968         * modules/getpagesize (Files): Remove lib/getpagesize.h.
3969         (Depends-on): Add unistd.
3970         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
3971         (Include): Use <unistd.h> instead of getpagesize.h.
3972         * modules/unistd (Makefile.am): Substitute also GNULIB_GETPAGESIZE,
3973         HAVE_GETPAGESIZE, HAVE_OS_H, HAVE_SYS_PARAM_H.
3974         * m4/pagealign_alloc.m4 (gl_PREREQ_PAGEALIGN_ALLOC): Remove
3975         gl_GETPAGESIZE invocation, already handled by module dependency.
3976         * lib/pagealign_alloc.c: Don't include getpagesize.h.
3977
3978 2007-12-02  Bruno Haible  <bruno@clisp.org>
3979
3980         * modules/strings-tests: New file.
3981         * tests/test-strings.c: New file.
3982
3983         Move declarations of str{,n}casecmp from <string.h> to <strings.h>.
3984         * lib/strings.in.h: New file.
3985         * lib/string.in.h (strcasecmp, strncasecmp): Remove declarations.
3986         * m4/strings_h.m4: New file.
3987         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Remove initialization
3988         of HAVE_STRCASECMP, HAVE_DECL_STRNCASECMP.
3989         * modules/strings: New file.
3990         * modules/string (Makefile.am): Update.
3991         * modules/strcase (Include): Mention <strings.h>, not <string.h>.
3992         Reported by Karl Berry.
3993
3994 2007-12-01  Eric Blake  <ebb9@byu.net>
3995
3996         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET) [__CYGWIN__]: Rewrite to
3997         accomodate fix in cygwin 1.5.25.
3998
3999 2007-12-01  Jim Meyering  <meyering@redhat.com>
4000
4001         Fix a bug that inhibited much of the utf8-optimization in regcomp.c.
4002         * lib/regcomp.c (optimize_utf8): Fix a typo, s/idx/ctx_type/,
4003         that would inhibit utf8-optimization of a regexp containing line-
4004         or buffer-anchors, e.g., `^', `$'.
4005
4006 2007-11-30  Bruno Haible  <bruno@clisp.org>
4007
4008         * lib/lock.h (gl_recursive_lock_init) [PTHREAD &&
4009         PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: Call
4010         glthread_recursive_lock_init.
4011         * lib/lock.c (glthread_recursive_lock_init)
4012         [PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: New function.
4013         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
4014
4015 2007-11-28  Paul Eggert  <eggert@cs.ucla.edu>
4016
4017         New function qset_acl, like set_acl but with syscall semantics.
4018         * lib/acl.h (qset_acl): New decl.
4019         * lib/acl.c (qset_acl): New function.
4020         (set_acl): Use new function.  Use more-consistent diagnostics.
4021
4022 2007-11-28  Jim Meyering  <meyering@redhat.com>
4023
4024         * modules/physmem (License): Change from GPL to LGPLv2+.
4025
4026 2007-11-26  Bruno Haible  <bruno@clisp.org>
4027
4028         * lib/vasnprintf.c (decode_long_double): Don't abort if the
4029         'long double' type has excess precision.
4030         Reported by Jim Meyering in
4031         <http://lists.gnu.org/archive/html/bug-gnulib/2007-11/msg00120.html>.
4032
4033 2007-11-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4034
4035         * doc/fdl.texi, doc/gpl-3.0.texi, doc/lgpl-3.0.texi:
4036         Sync from <http://gnu.org/licenses>.
4037         * modules/agpl-3.0, doc/agpl-3.0.texi: New module,
4038         with license text from same location.
4039         * doc/maintain.texi, doc/standards.texi:  Sync from
4040         <http://savannah.gnu.org/projects/gnustandards>.
4041
4042 2007-11-22  OndÅ™ej Vašík  <ovasik@redhat.com>
4043         and Jim Meyering  <meyering@redhat.com>
4044
4045         Adjust getdate' grammar to accept a slightly more regular language.
4046         E.g., accept "YYYYMMDD +N days" as well as "YYYYMMDD N days".
4047         Before, the former was rejected.
4048         * lib/getdate.y (digits_to_date_time): New function, factored
4049         out of ...
4050         (number): ...here.  Just call digits_to_date_time.
4051         (hybrid): New non-terminal to handle an <unsigned number,
4052         signed relative offset> sequence consistently.
4053
4054 2007-11-18  Jim Meyering  <meyering@redhat.com>
4055
4056         Pull my changes from coreutils:
4057         bootstrap: fix typo to enable use of $gnulib_tool_option_extras.
4058         * build-aux/bootstrap (gnulib_tool_options): Add a space before the
4059         use of $gnulib_tool_option_extras, so that it's separated from the
4060         preceding argument.
4061
4062         Fix bootstrap failure to handle files like lib/uniwidth/cjk.h.
4063         * build-aux/bootstrap (cp_mark_as_generated): Create any required
4064         parent destination directories before copying a file into place.
4065
4066 2007-11-18  Sergey Poznyakoff  <gray@gnu.org.ua>
4067
4068         bootstrap: work also with 4-argument variant of AC_INIT
4069         * build-aux/bootstrap (gnulib_extra_files): Adjust sed command.
4070
4071 2007-11-16  Paul Eggert  <eggert@cs.ucla.edu>
4072
4073         Port test-getaddrinfo to Solaris.
4074         Problem reported by Bruno Haible in
4075         <http://lists.gnu.org/archive/html/bug-gnulib/2007-03/msg00171.html>.
4076         * tests/test-getaddrinfo.c (simple): Add a comment asking for an
4077         explanation of setting 'hints'.
4078         Don't reject an implementation merely because it returns EAI_SERVICE.
4079         (EAI_SERVICE): Define to 0 if not defined.
4080
4081 2007-11-15  Paul Eggert  <eggert@cs.ucla.edu>
4082
4083         The license of gnu-make and posix-shell is now "GPLed build tool".
4084         * modules/gnu-make (License): Likewise.
4085         * modules/posix-shell (License): Likewise.
4086
4087         New module posix-shell, for determining a POSIX shell
4088         or perhaps something that is close enough to a POSIX shell.
4089         * m4/posix-shell.m4: New file.
4090         * modules/posix-shell: New file.
4091
4092         * MODULES.html.sh: Mention new module.
4093
4094         New module gnu-make, for determining whether we're using GNU Make.
4095         * m4/gnu-make.m4: New file.
4096         * modules/gnu-make: New file.
4097         * MODULES.html.sh: Mention new module.
4098
4099 2007-11-14  Jim Meyering  <meyering@redhat.com>
4100
4101         Define a sometimes-link-required function using ARGMATCH_DIE_DECL.
4102         * tests/test-argmatch.c (ARGMATCH_DIE_DECL): When defined,
4103         use this macro to create a function _definition_.
4104         Remove useless "#undef ARGMATCH_DIE".
4105
4106 2007-11-14  Bruno Haible  <bruno@clisp.org>
4107
4108         * lib/config.charset: Update for OpenBSD 4.1.
4109         Reported and helped by Ben Pfaff <blp@cs.stanford.edu>.
4110
4111 2007-11-12  Paul Eggert  <eggert@cs.ucla.edu>
4112
4113         Document 64-bit #if problems in stdint.texi.
4114         * doc/headers/stdint.texi (stdint.h): Mention problems with
4115         64-bit-#if, and how to work around them.
4116
4117         Don't insist on 'long long int' support in the preprocessor.  It
4118         breaks too many things.  For example, PRIdMAX still uses a 'long
4119         long int' format with the latest Sun compiler, even though
4120         HAVE_LONG_LONG_INT isn't defined due to that compiler's
4121         preprocessor problem.  This causes the latest coreutils to dump
4122         core on Solaris 10 sparc with the Sun C compiler.
4123         Instead, fix the 2007-10-16 problem in a different way, by evaluating
4124         the troublesome expressions at configure-time, not at #if-time.
4125         * m4/longlong.m4 (_AC_TYPE_LONG_LONG_SNIPPET): Don't test the
4126         preprocessor.
4127         * m4/inttypes.m4 (gl_INTTYPES_H): Move the #if checks into
4128         compile-time C checks, done at 'configure'-time.
4129         (gl_INTTYPES_CHECK_LONG_LONG_INT_CONDITION): New macro.
4130         * modules/inttypes (Makefile): Substitute the new symbols that
4131         gl_INTTYPES_H now generates.
4132         * lib/inttypes.in.h: Don't use constants wider than 'long' in #if.
4133
4134 2007-11-12  Bruno Haible  <bruno@clisp.org>
4135
4136         Tests for Unicode character classification functions.
4137
4138         * modules/unictype/bidicategory-byname-tests: New file.
4139         * modules/unictype/bidicategory-name-tests: New file.
4140         * modules/unictype/bidicategory-of-tests: New file.
4141         * modules/unictype/bidicategory-test-tests: New file.
4142         * modules/unictype/block-list-tests: New file.
4143         * modules/unictype/block-of-tests: New file.
4144         * modules/unictype/block-test-tests: New file.
4145         * modules/unictype/category-C-tests: New file.
4146         * modules/unictype/category-Cc-tests: New file.
4147         * modules/unictype/category-Cf-tests: New file.
4148         * modules/unictype/category-Cn-tests: New file.
4149         * modules/unictype/category-Co-tests: New file.
4150         * modules/unictype/category-Cs-tests: New file.
4151         * modules/unictype/category-L-tests: New file.
4152         * modules/unictype/category-Ll-tests: New file.
4153         * modules/unictype/category-Lm-tests: New file.
4154         * modules/unictype/category-Lo-tests: New file.
4155         * modules/unictype/category-Lt-tests: New file.
4156         * modules/unictype/category-Lu-tests: New file.
4157         * modules/unictype/category-M-tests: New file.
4158         * modules/unictype/category-Mc-tests: New file.
4159         * modules/unictype/category-Me-tests: New file.
4160         * modules/unictype/category-Mn-tests: New file.
4161         * modules/unictype/category-N-tests: New file.
4162         * modules/unictype/category-Nd-tests: New file.
4163         * modules/unictype/category-Nl-tests: New file.
4164         * modules/unictype/category-No-tests: New file.
4165         * modules/unictype/category-P-tests: New file.
4166         * modules/unictype/category-Pc-tests: New file.
4167         * modules/unictype/category-Pd-tests: New file.
4168         * modules/unictype/category-Pe-tests: New file.
4169         * modules/unictype/category-Pf-tests: New file.
4170         * modules/unictype/category-Pi-tests: New file.
4171         * modules/unictype/category-Po-tests: New file.
4172         * modules/unictype/category-Ps-tests: New file.
4173         * modules/unictype/category-S-tests: New file.
4174         * modules/unictype/category-Sc-tests: New file.
4175         * modules/unictype/category-Sk-tests: New file.
4176         * modules/unictype/category-Sm-tests: New file.
4177         * modules/unictype/category-So-tests: New file.
4178         * modules/unictype/category-Z-tests: New file.
4179         * modules/unictype/category-Zl-tests: New file.
4180         * modules/unictype/category-Zp-tests: New file.
4181         * modules/unictype/category-Zs-tests: New file.
4182         * modules/unictype/category-and-not-tests: New file.
4183         * modules/unictype/category-and-tests: New file.
4184         * modules/unictype/category-byname-tests: New file.
4185         * modules/unictype/category-name-tests: New file.
4186         * modules/unictype/category-none-tests: New file.
4187         * modules/unictype/category-of-tests: New file.
4188         * modules/unictype/category-or-tests: New file.
4189         * modules/unictype/category-test-withtable-tests: New file.
4190         * modules/unictype/combining-class-tests: New file.
4191         * modules/unictype/ctype-alnum-tests: New file.
4192         * modules/unictype/ctype-alpha-tests: New file.
4193         * modules/unictype/ctype-blank-tests: New file.
4194         * modules/unictype/ctype-cntrl-tests: New file.
4195         * modules/unictype/ctype-digit-tests: New file.
4196         * modules/unictype/ctype-graph-tests: New file.
4197         * modules/unictype/ctype-lower-tests: New file.
4198         * modules/unictype/ctype-print-tests: New file.
4199         * modules/unictype/ctype-punct-tests: New file.
4200         * modules/unictype/ctype-space-tests: New file.
4201         * modules/unictype/ctype-upper-tests: New file.
4202         * modules/unictype/ctype-xdigit-tests: New file.
4203         * modules/unictype/decimal-digit-tests: New file.
4204         * modules/unictype/digit-tests: New file.
4205         * modules/unictype/mirror-tests: New file.
4206         * modules/unictype/numeric-tests: New file.
4207         * modules/unictype/property-alphabetic-tests: New file.
4208         * modules/unictype/property-ascii-hex-digit-tests: New file.
4209         * modules/unictype/property-bidi-arabic-digit-tests: New file.
4210         * modules/unictype/property-bidi-arabic-right-to-left-tests: New file.
4211         * modules/unictype/property-bidi-block-separator-tests: New file.
4212         * modules/unictype/property-bidi-boundary-neutral-tests: New file.
4213         * modules/unictype/property-bidi-common-separator-tests: New file.
4214         * modules/unictype/property-bidi-control-tests: New file.
4215         * modules/unictype/property-bidi-embedding-or-override-tests: New file.
4216         * modules/unictype/property-bidi-eur-num-separator-tests: New file.
4217         * modules/unictype/property-bidi-eur-num-terminator-tests: New file.
4218         * modules/unictype/property-bidi-european-digit-tests: New file.
4219         * modules/unictype/property-bidi-hebrew-right-to-left-tests: New file.
4220         * modules/unictype/property-bidi-left-to-right-tests: New file.
4221         * modules/unictype/property-bidi-non-spacing-mark-tests: New file.
4222         * modules/unictype/property-bidi-other-neutral-tests: New file.
4223         * modules/unictype/property-bidi-pdf-tests: New file.
4224         * modules/unictype/property-bidi-segment-separator-tests: New file.
4225         * modules/unictype/property-bidi-whitespace-tests: New file.
4226         * modules/unictype/property-byname-tests: New file.
4227         * modules/unictype/property-combining-tests: New file.
4228         * modules/unictype/property-composite-tests: New file.
4229         * modules/unictype/property-currency-symbol-tests: New file.
4230         * modules/unictype/property-dash-tests: New file.
4231         * modules/unictype/property-decimal-digit-tests: New file.
4232         * modules/unictype/property-default-ignorable-code-point-tests: New file.
4233         * modules/unictype/property-deprecated-tests: New file.
4234         * modules/unictype/property-diacritic-tests: New file.
4235         * modules/unictype/property-extender-tests: New file.
4236         * modules/unictype/property-format-control-tests: New file.
4237         * modules/unictype/property-grapheme-base-tests: New file.
4238         * modules/unictype/property-grapheme-extend-tests: New file.
4239         * modules/unictype/property-grapheme-link-tests: New file.
4240         * modules/unictype/property-hex-digit-tests: New file.
4241         * modules/unictype/property-hyphen-tests: New file.
4242         * modules/unictype/property-id-continue-tests: New file.
4243         * modules/unictype/property-id-start-tests: New file.
4244         * modules/unictype/property-ideographic-tests: New file.
4245         * modules/unictype/property-ids-binary-operator-tests: New file.
4246         * modules/unictype/property-ids-trinary-operator-tests: New file.
4247         * modules/unictype/property-ignorable-control-tests: New file.
4248         * modules/unictype/property-iso-control-tests: New file.
4249         * modules/unictype/property-join-control-tests: New file.
4250         * modules/unictype/property-left-of-pair-tests: New file.
4251         * modules/unictype/property-line-separator-tests: New file.
4252         * modules/unictype/property-logical-order-exception-tests: New file.
4253         * modules/unictype/property-lowercase-tests: New file.
4254         * modules/unictype/property-math-tests: New file.
4255         * modules/unictype/property-non-break-tests: New file.
4256         * modules/unictype/property-not-a-character-tests: New file.
4257         * modules/unictype/property-numeric-tests: New file.
4258         * modules/unictype/property-other-alphabetic-tests: New file.
4259         * modules/unictype/property-other-default-ignorable-code-point-tests: New file.
4260         * modules/unictype/property-other-grapheme-extend-tests: New file.
4261         * modules/unictype/property-other-id-continue-tests: New file.
4262         * modules/unictype/property-other-id-start-tests: New file.
4263         * modules/unictype/property-other-lowercase-tests: New file.
4264         * modules/unictype/property-other-math-tests: New file.
4265         * modules/unictype/property-other-uppercase-tests: New file.
4266         * modules/unictype/property-paired-punctuation-tests: New file.
4267         * modules/unictype/property-paragraph-separator-tests: New file.
4268         * modules/unictype/property-pattern-syntax-tests: New file.
4269         * modules/unictype/property-pattern-white-space-tests: New file.
4270         * modules/unictype/property-private-use-tests: New file.
4271         * modules/unictype/property-punctuation-tests: New file.
4272         * modules/unictype/property-quotation-mark-tests: New file.
4273         * modules/unictype/property-radical-tests: New file.
4274         * modules/unictype/property-sentence-terminal-tests: New file.
4275         * modules/unictype/property-soft-dotted-tests: New file.
4276         * modules/unictype/property-space-tests: New file.
4277         * modules/unictype/property-terminal-punctuation-tests: New file.
4278         * modules/unictype/property-test-tests: New file.
4279         * modules/unictype/property-titlecase-tests: New file.
4280         * modules/unictype/property-unassigned-code-value-tests: New file.
4281         * modules/unictype/property-unified-ideograph-tests: New file.
4282         * modules/unictype/property-uppercase-tests: New file.
4283         * modules/unictype/property-variation-selector-tests: New file.
4284         * modules/unictype/property-white-space-tests: New file.
4285         * modules/unictype/property-xid-continue-tests: New file.
4286         * modules/unictype/property-xid-start-tests: New file.
4287         * modules/unictype/property-zero-width-tests: New file.
4288         * modules/unictype/scripts-tests: New file.
4289         * modules/unictype/syntax-c-ident-tests: New file.
4290         * modules/unictype/syntax-c-whitespace-tests: New file.
4291         * modules/unictype/syntax-java-ident-tests: New file.
4292         * modules/unictype/syntax-java-whitespace-tests: New file.
4293         * tests/unictype/test-bidi_byname.c: New file.
4294         * tests/unictype/test-bidi_name.c: New file.
4295         * tests/unictype/test-bidi_of.c: New file.
4296         * tests/unictype/test-bidi_test.c: New file.
4297         * tests/unictype/test-block_list.c: New file.
4298         * tests/unictype/test-block_of.c: New file.
4299         * tests/unictype/test-block_test.c: New file.
4300         * tests/unictype/test-categ_and.c: New file.
4301         * tests/unictype/test-categ_and_not.c: New file.
4302         * tests/unictype/test-categ_byname.c: New file.
4303         * tests/unictype/test-categ_name.c: New file.
4304         * tests/unictype/test-categ_none.c: New file.
4305         * tests/unictype/test-categ_of.c: New file.
4306         * tests/unictype/test-categ_or.c: New file.
4307         * tests/unictype/test-categ_test_withtable.c: New file.
4308         * tests/unictype/test-combining.c: New file.
4309         * tests/unictype/test-decdigit.c: New file.
4310         * tests/unictype/test-digit.c: New file.
4311         * tests/unictype/test-mirror.c: New file.
4312         * tests/unictype/test-numeric.c: New file.
4313         * tests/unictype/test-pr_byname.c: New file.
4314         * tests/unictype/test-pr_test.c: New file.
4315         * tests/unictype/test-predicate-part1.h: New file.
4316         * tests/unictype/test-predicate-part2.h: New file.
4317         * tests/unictype/test-scripts.c: New file.
4318         * tests/unictype/test-sy_c_ident.c: New file.
4319         * tests/unictype/test-sy_java_ident.c: New file.
4320
4321         * tests/unictype/test-categ_C.c: New file, generated by gen-ctype.c
4322         for Unicode 5.0.0.
4323         * tests/unictype/test-categ_Cc.c: Likewise.
4324         * tests/unictype/test-categ_Cf.c: Likewise.
4325         * tests/unictype/test-categ_Cn.c: Likewise.
4326         * tests/unictype/test-categ_Co.c: Likewise.
4327         * tests/unictype/test-categ_Cs.c: Likewise.
4328         * tests/unictype/test-categ_L.c: Likewise.
4329         * tests/unictype/test-categ_Ll.c: Likewise.
4330         * tests/unictype/test-categ_Lm.c: Likewise.
4331         * tests/unictype/test-categ_Lo.c: Likewise.
4332         * tests/unictype/test-categ_Lt.c: Likewise.
4333         * tests/unictype/test-categ_Lu.c: Likewise.
4334         * tests/unictype/test-categ_M.c: Likewise.
4335         * tests/unictype/test-categ_Mc.c: Likewise.
4336         * tests/unictype/test-categ_Me.c: Likewise.
4337         * tests/unictype/test-categ_Mn.c: Likewise.
4338         * tests/unictype/test-categ_N.c: Likewise.
4339         * tests/unictype/test-categ_Nd.c: Likewise.
4340         * tests/unictype/test-categ_Nl.c: Likewise.
4341         * tests/unictype/test-categ_No.c: Likewise.
4342         * tests/unictype/test-categ_P.c: Likewise.
4343         * tests/unictype/test-categ_Pc.c: Likewise.
4344         * tests/unictype/test-categ_Pd.c: Likewise.
4345         * tests/unictype/test-categ_Pe.c: Likewise.
4346         * tests/unictype/test-categ_Pf.c: Likewise.
4347         * tests/unictype/test-categ_Pi.c: Likewise.
4348         * tests/unictype/test-categ_Po.c: Likewise.
4349         * tests/unictype/test-categ_Ps.c: Likewise.
4350         * tests/unictype/test-categ_S.c: Likewise.
4351         * tests/unictype/test-categ_Sc.c: Likewise.
4352         * tests/unictype/test-categ_Sk.c: Likewise.
4353         * tests/unictype/test-categ_Sm.c: Likewise.
4354         * tests/unictype/test-categ_So.c: Likewise.
4355         * tests/unictype/test-categ_Z.c: Likewise.
4356         * tests/unictype/test-categ_Zl.c: Likewise.
4357         * tests/unictype/test-categ_Zp.c: Likewise.
4358         * tests/unictype/test-categ_Zs.c: Likewise.
4359         * tests/unictype/test-ctype_alnum.c: Likewise.
4360         * tests/unictype/test-ctype_alpha.c: Likewise.
4361         * tests/unictype/test-ctype_blank.c: Likewise.
4362         * tests/unictype/test-ctype_cntrl.c: Likewise.
4363         * tests/unictype/test-ctype_digit.c: Likewise.
4364         * tests/unictype/test-ctype_graph.c: Likewise.
4365         * tests/unictype/test-ctype_lower.c: Likewise.
4366         * tests/unictype/test-ctype_print.c: Likewise.
4367         * tests/unictype/test-ctype_punct.c: Likewise.
4368         * tests/unictype/test-ctype_space.c: Likewise.
4369         * tests/unictype/test-ctype_upper.c: Likewise.
4370         * tests/unictype/test-ctype_xdigit.c: Likewise.
4371         * tests/unictype/test-decdigit.h: Likewise.
4372         * tests/unictype/test-digit.h: Likewise.
4373         * tests/unictype/test-numeric.h: Likewise.
4374         * tests/unictype/test-pr_alphabetic.c: Likewise.
4375         * tests/unictype/test-pr_ascii_hex_digit.c: Likewise.
4376         * tests/unictype/test-pr_bidi_arabic_digit.c: Likewise.
4377         * tests/unictype/test-pr_bidi_arabic_right_to_left.c: Likewise.
4378         * tests/unictype/test-pr_bidi_block_separator.c: Likewise.
4379         * tests/unictype/test-pr_bidi_boundary_neutral.c: Likewise.
4380         * tests/unictype/test-pr_bidi_common_separator.c: Likewise.
4381         * tests/unictype/test-pr_bidi_control.c: Likewise.
4382         * tests/unictype/test-pr_bidi_embedding_or_override.c: Likewise.
4383         * tests/unictype/test-pr_bidi_eur_num_separator.c: Likewise.
4384         * tests/unictype/test-pr_bidi_eur_num_terminator.c: Likewise.
4385         * tests/unictype/test-pr_bidi_european_digit.c: Likewise.
4386         * tests/unictype/test-pr_bidi_hebrew_right_to_left.c: Likewise.
4387         * tests/unictype/test-pr_bidi_left_to_right.c: Likewise.
4388         * tests/unictype/test-pr_bidi_non_spacing_mark.c: Likewise.
4389         * tests/unictype/test-pr_bidi_other_neutral.c: Likewise.
4390         * tests/unictype/test-pr_bidi_pdf.c: Likewise.
4391         * tests/unictype/test-pr_bidi_segment_separator.c: Likewise.
4392         * tests/unictype/test-pr_bidi_whitespace.c: Likewise.
4393         * tests/unictype/test-pr_combining.c: Likewise.
4394         * tests/unictype/test-pr_composite.c: Likewise.
4395         * tests/unictype/test-pr_currency_symbol.c: Likewise.
4396         * tests/unictype/test-pr_dash.c: Likewise.
4397         * tests/unictype/test-pr_decimal_digit.c: Likewise.
4398         * tests/unictype/test-pr_default_ignorable_code_point.c: Likewise.
4399         * tests/unictype/test-pr_deprecated.c: Likewise.
4400         * tests/unictype/test-pr_diacritic.c: Likewise.
4401         * tests/unictype/test-pr_extender.c: Likewise.
4402         * tests/unictype/test-pr_format_control.c: Likewise.
4403         * tests/unictype/test-pr_grapheme_base.c: Likewise.
4404         * tests/unictype/test-pr_grapheme_extend.c: Likewise.
4405         * tests/unictype/test-pr_grapheme_link.c: Likewise.
4406         * tests/unictype/test-pr_hex_digit.c: Likewise.
4407         * tests/unictype/test-pr_hyphen.c: Likewise.
4408         * tests/unictype/test-pr_id_continue.c: Likewise.
4409         * tests/unictype/test-pr_id_start.c: Likewise.
4410         * tests/unictype/test-pr_ideographic.c: Likewise.
4411         * tests/unictype/test-pr_ids_binary_operator.c: Likewise.
4412         * tests/unictype/test-pr_ids_trinary_operator.c: Likewise.
4413         * tests/unictype/test-pr_ignorable_control.c: Likewise.
4414         * tests/unictype/test-pr_iso_control.c: Likewise.
4415         * tests/unictype/test-pr_join_control.c: Likewise.
4416         * tests/unictype/test-pr_left_of_pair.c: Likewise.
4417         * tests/unictype/test-pr_line_separator.c: Likewise.
4418         * tests/unictype/test-pr_logical_order_exception.c: Likewise.
4419         * tests/unictype/test-pr_lowercase.c: Likewise.
4420         * tests/unictype/test-pr_math.c: Likewise.
4421         * tests/unictype/test-pr_non_break.c: Likewise.
4422         * tests/unictype/test-pr_not_a_character.c: Likewise.
4423         * tests/unictype/test-pr_numeric.c: Likewise.
4424         * tests/unictype/test-pr_other_alphabetic.c: Likewise.
4425         * tests/unictype/test-pr_other_default_ignorable_code_point.c: Likewise.
4426         * tests/unictype/test-pr_other_grapheme_extend.c: Likewise.
4427         * tests/unictype/test-pr_other_id_continue.c: Likewise.
4428         * tests/unictype/test-pr_other_id_start.c: Likewise.
4429         * tests/unictype/test-pr_other_lowercase.c: Likewise.
4430         * tests/unictype/test-pr_other_math.c: Likewise.
4431         * tests/unictype/test-pr_other_uppercase.c: Likewise.
4432         * tests/unictype/test-pr_paired_punctuation.c: Likewise.
4433         * tests/unictype/test-pr_paragraph_separator.c: Likewise.
4434         * tests/unictype/test-pr_pattern_syntax.c: Likewise.
4435         * tests/unictype/test-pr_pattern_white_space.c: Likewise.
4436         * tests/unictype/test-pr_private_use.c: Likewise.
4437         * tests/unictype/test-pr_punctuation.c: Likewise.
4438         * tests/unictype/test-pr_quotation_mark.c: Likewise.
4439         * tests/unictype/test-pr_radical.c: Likewise.
4440         * tests/unictype/test-pr_sentence_terminal.c: Likewise.
4441         * tests/unictype/test-pr_soft_dotted.c: Likewise.
4442         * tests/unictype/test-pr_space.c: Likewise.
4443         * tests/unictype/test-pr_terminal_punctuation.c: Likewise.
4444         * tests/unictype/test-pr_titlecase.c: Likewise.
4445         * tests/unictype/test-pr_unassigned_code_value.c: Likewise.
4446         * tests/unictype/test-pr_unified_ideograph.c: Likewise.
4447         * tests/unictype/test-pr_uppercase.c: Likewise.
4448         * tests/unictype/test-pr_variation_selector.c: Likewise.
4449         * tests/unictype/test-pr_white_space.c: Likewise.
4450         * tests/unictype/test-pr_xid_continue.c: Likewise.
4451         * tests/unictype/test-pr_xid_start.c: Likewise.
4452         * tests/unictype/test-pr_zero_width.c: Likewise.
4453         * tests/unictype/test-sy_c_whitespace.c: Likewise.
4454         * tests/unictype/test-sy_java_whitespace.c: Likewise.
4455
4456 2007-11-12  Bruno Haible  <bruno@clisp.org>
4457
4458         Unicode character classification functions.
4459         * lib/unictype.h: New file.
4460         * modules/unictype/base: New file.
4461         * modules/unictype/category-L: New file.
4462         * modules/unictype/category-Lu: New file.
4463         * modules/unictype/category-Ll: New file.
4464         * modules/unictype/category-Lt: New file.
4465         * modules/unictype/category-Lm: New file.
4466         * modules/unictype/category-Lo: New file.
4467         * modules/unictype/category-M: New file.
4468         * modules/unictype/category-Mn: New file.
4469         * modules/unictype/category-Mc: New file.
4470         * modules/unictype/category-Me: New file.
4471         * modules/unictype/category-N: New file.
4472         * modules/unictype/category-Nd: New file.
4473         * modules/unictype/category-Nl: New file.
4474         * modules/unictype/category-No: New file.
4475         * modules/unictype/category-P: New file.
4476         * modules/unictype/category-Pc: New file.
4477         * modules/unictype/category-Pd: New file.
4478         * modules/unictype/category-Ps: New file.
4479         * modules/unictype/category-Pe: New file.
4480         * modules/unictype/category-Pi: New file.
4481         * modules/unictype/category-Pf: New file.
4482         * modules/unictype/category-Po: New file.
4483         * modules/unictype/category-S: New file.
4484         * modules/unictype/category-Sm: New file.
4485         * modules/unictype/category-Sc: New file.
4486         * modules/unictype/category-Sk: New file.
4487         * modules/unictype/category-So: New file.
4488         * modules/unictype/category-Z: New file.
4489         * modules/unictype/category-Zs: New file.
4490         * modules/unictype/category-Zl: New file.
4491         * modules/unictype/category-Zp: New file.
4492         * modules/unictype/category-C: New file.
4493         * modules/unictype/category-Cc: New file.
4494         * modules/unictype/category-Cf: New file.
4495         * modules/unictype/category-Cs: New file.
4496         * modules/unictype/category-Co: New file.
4497         * modules/unictype/category-Cn: New file.
4498         * modules/unictype/category-or: New file.
4499         * modules/unictype/category-of: New file.
4500         * modules/unictype/category-test: New file.
4501         * modules/unictype/category-test-withtable: New file.
4502         * modules/unictype/category-byname: New file.
4503         * modules/unictype/category-none: New file.
4504         * modules/unictype/category-and: New file.
4505         * modules/unictype/category-and-not: New file.
4506         * modules/unictype/category-name: New file.
4507         * modules/unictype/combining-class: New file.
4508         * modules/unictype/category-all: New file.
4509         * modules/unictype/bidicategory-all: New file.
4510         * modules/unictype/bidicategory-byname: New file.
4511         * modules/unictype/bidicategory-name: New file.
4512         * modules/unictype/bidicategory-of: New file.
4513         * modules/unictype/bidicategory-test: New file.
4514         * modules/unictype/decimal-digit: New file.
4515         * modules/unictype/digit: New file.
4516         * modules/unictype/numeric: New file.
4517         * modules/unictype/mirror: New file.
4518         * modules/unictype/property-white-space: New file.
4519         * modules/unictype/property-alphabetic: New file.
4520         * modules/unictype/property-other-alphabetic: New file.
4521         * modules/unictype/property-not-a-character: New file.
4522         * modules/unictype/property-default-ignorable-code-point: New file.
4523         * modules/unictype/property-other-default-ignorable-code-point: New
4524         file.
4525         * modules/unictype/property-deprecated: New file.
4526         * modules/unictype/property-logical-order-exception: New file.
4527         * modules/unictype/property-variation-selector: New file.
4528         * modules/unictype/property-private-use: New file.
4529         * modules/unictype/property-unassigned-code-value: New file.
4530         * modules/unictype/property-uppercase: New file.
4531         * modules/unictype/property-other-uppercase: New file.
4532         * modules/unictype/property-lowercase: New file.
4533         * modules/unictype/property-other-lowercase: New file.
4534         * modules/unictype/property-titlecase: New file.
4535         * modules/unictype/property-soft-dotted: New file.
4536         * modules/unictype/property-id-start: New file.
4537         * modules/unictype/property-other-id-start: New file.
4538         * modules/unictype/property-id-continue: New file.
4539         * modules/unictype/property-other-id-continue: New file.
4540         * modules/unictype/property-xid-start: New file.
4541         * modules/unictype/property-xid-continue: New file.
4542         * modules/unictype/property-pattern-white-space: New file.
4543         * modules/unictype/property-pattern-syntax: New file.
4544         * modules/unictype/property-join-control: New file.
4545         * modules/unictype/property-grapheme-base: New file.
4546         * modules/unictype/property-grapheme-extend: New file.
4547         * modules/unictype/property-other-grapheme-extend: New file.
4548         * modules/unictype/property-grapheme-link: New file.
4549         * modules/unictype/property-bidi-control: New file.
4550         * modules/unictype/property-bidi-left-to-right: New file.
4551         * modules/unictype/property-bidi-hebrew-right-to-left: New file.
4552         * modules/unictype/property-bidi-arabic-right-to-left: New file.
4553         * modules/unictype/property-bidi-european-digit: New file.
4554         * modules/unictype/property-bidi-eur-num-separator: New file.
4555         * modules/unictype/property-bidi-eur-num-terminator: New file.
4556         * modules/unictype/property-bidi-arabic-digit: New file.
4557         * modules/unictype/property-bidi-common-separator: New file.
4558         * modules/unictype/property-bidi-block-separator: New file.
4559         * modules/unictype/property-bidi-segment-separator: New file.
4560         * modules/unictype/property-bidi-whitespace: New file.
4561         * modules/unictype/property-bidi-non-spacing-mark: New file.
4562         * modules/unictype/property-bidi-boundary-neutral: New file.
4563         * modules/unictype/property-bidi-pdf: New file.
4564         * modules/unictype/property-bidi-embedding-or-override: New file.
4565         * modules/unictype/property-bidi-other-neutral: New file.
4566         * modules/unictype/property-hex-digit: New file.
4567         * modules/unictype/property-ascii-hex-digit: New file.
4568         * modules/unictype/property-ideographic: New file.
4569         * modules/unictype/property-unified-ideograph: New file.
4570         * modules/unictype/property-radical: New file.
4571         * modules/unictype/property-ids-binary-operator: New file.
4572         * modules/unictype/property-ids-trinary-operator: New file.
4573         * modules/unictype/property-zero-width: New file.
4574         * modules/unictype/property-space: New file.
4575         * modules/unictype/property-non-break: New file.
4576         * modules/unictype/property-iso-control: New file.
4577         * modules/unictype/property-format-control: New file.
4578         * modules/unictype/property-dash: New file.
4579         * modules/unictype/property-hyphen: New file.
4580         * modules/unictype/property-punctuation: New file.
4581         * modules/unictype/property-line-separator: New file.
4582         * modules/unictype/property-paragraph-separator: New file.
4583         * modules/unictype/property-quotation-mark: New file.
4584         * modules/unictype/property-sentence-terminal: New file.
4585         * modules/unictype/property-terminal-punctuation: New file.
4586         * modules/unictype/property-currency-symbol: New file.
4587         * modules/unictype/property-math: New file.
4588         * modules/unictype/property-other-math: New file.
4589         * modules/unictype/property-paired-punctuation: New file.
4590         * modules/unictype/property-left-of-pair: New file.
4591         * modules/unictype/property-combining: New file.
4592         * modules/unictype/property-composite: New file.
4593         * modules/unictype/property-decimal-digit: New file.
4594         * modules/unictype/property-numeric: New file.
4595         * modules/unictype/property-diacritic: New file.
4596         * modules/unictype/property-extender: New file.
4597         * modules/unictype/property-ignorable-control: New file.
4598         * modules/unictype/property-test: New file.
4599         * modules/unictype/property-byname: New file.
4600         * modules/unictype/property-all: New file.
4601         * modules/unictype/scripts: New file.
4602         * modules/unictype/scripts-all: New file.
4603         * modules/unictype/block-of: New file.
4604         * modules/unictype/block-test: New file.
4605         * modules/unictype/block-list: New file.
4606         * modules/unictype/block-all: New file.
4607         * modules/unictype/syntax-c-whitespace: New file.
4608         * modules/unictype/syntax-java-whitespace: New file.
4609         * modules/unictype/syntax-c-ident: New file.
4610         * modules/unictype/syntax-java-ident: New file.
4611         * modules/unictype/ctype-alnum: New file.
4612         * modules/unictype/ctype-alpha: New file.
4613         * modules/unictype/ctype-cntrl: New file.
4614         * modules/unictype/ctype-digit: New file.
4615         * modules/unictype/ctype-graph: New file.
4616         * modules/unictype/ctype-lower: New file.
4617         * modules/unictype/ctype-print: New file.
4618         * modules/unictype/ctype-punct: New file.
4619         * modules/unictype/ctype-space: New file.
4620         * modules/unictype/ctype-upper: New file.
4621         * modules/unictype/ctype-xdigit: New file.
4622         * modules/unictype/ctype-blank: New file.
4623         * lib/unictype/bidi_byname.c: New file.
4624         * lib/unictype/bidi_name.c: New file.
4625         * lib/unictype/bidi_of.c: New file.
4626         * lib/unictype/bidi_test.c: New file.
4627         * lib/unictype/bitmap.h: New file.
4628         * lib/unictype/block_test.c: New file.
4629         * lib/unictype/blocks.c: New file.
4630         * lib/unictype/categ_C.c: New file.
4631         * lib/unictype/categ_Cc.c: New file.
4632         * lib/unictype/categ_Cf.c: New file.
4633         * lib/unictype/categ_Cn.c: New file.
4634         * lib/unictype/categ_Co.c: New file.
4635         * lib/unictype/categ_Cs.c: New file.
4636         * lib/unictype/categ_L.c: New file.
4637         * lib/unictype/categ_Ll.c: New file.
4638         * lib/unictype/categ_Lm.c: New file.
4639         * lib/unictype/categ_Lo.c: New file.
4640         * lib/unictype/categ_Lt.c: New file.
4641         * lib/unictype/categ_Lu.c: New file.
4642         * lib/unictype/categ_M.c: New file.
4643         * lib/unictype/categ_Mc.c: New file.
4644         * lib/unictype/categ_Me.c: New file.
4645         * lib/unictype/categ_Mn.c: New file.
4646         * lib/unictype/categ_N.c: New file.
4647         * lib/unictype/categ_Nd.c: New file.
4648         * lib/unictype/categ_Nl.c: New file.
4649         * lib/unictype/categ_No.c: New file.
4650         * lib/unictype/categ_P.c: New file.
4651         * lib/unictype/categ_Pc.c: New file.
4652         * lib/unictype/categ_Pd.c: New file.
4653         * lib/unictype/categ_Pe.c: New file.
4654         * lib/unictype/categ_Pf.c: New file.
4655         * lib/unictype/categ_Pi.c: New file.
4656         * lib/unictype/categ_Po.c: New file.
4657         * lib/unictype/categ_Ps.c: New file.
4658         * lib/unictype/categ_S.c: New file.
4659         * lib/unictype/categ_Sc.c: New file.
4660         * lib/unictype/categ_Sk.c: New file.
4661         * lib/unictype/categ_Sm.c: New file.
4662         * lib/unictype/categ_So.c: New file.
4663         * lib/unictype/categ_Z.c: New file.
4664         * lib/unictype/categ_Zl.c: New file.
4665         * lib/unictype/categ_Zp.c: New file.
4666         * lib/unictype/categ_Zs.c: New file.
4667         * lib/unictype/categ_and.c: New file.
4668         * lib/unictype/categ_and_not.c: New file.
4669         * lib/unictype/categ_byname.c: New file.
4670         * lib/unictype/categ_name.c: New file.
4671         * lib/unictype/categ_none.c: New file.
4672         * lib/unictype/categ_of.c: New file.
4673         * lib/unictype/categ_or.c: New file.
4674         * lib/unictype/categ_test.c: New file.
4675         * lib/unictype/combining.c: New file.
4676         * lib/unictype/ctype_alnum.c: New file.
4677         * lib/unictype/ctype_alpha.c: New file.
4678         * lib/unictype/ctype_blank.c: New file.
4679         * lib/unictype/ctype_cntrl.c: New file.
4680         * lib/unictype/ctype_digit.c: New file.
4681         * lib/unictype/ctype_graph.c: New file.
4682         * lib/unictype/ctype_lower.c: New file.
4683         * lib/unictype/ctype_print.c: New file.
4684         * lib/unictype/ctype_punct.c: New file.
4685         * lib/unictype/ctype_space.c: New file.
4686         * lib/unictype/ctype_upper.c: New file.
4687         * lib/unictype/ctype_xdigit.c: New file.
4688         * lib/unictype/decdigit.c: New file.
4689         * lib/unictype/digit.c: New file.
4690         * lib/unictype/identsyntaxmap.h: New file.
4691         * lib/unictype/mirror.c: New file.
4692         * lib/unictype/numeric.c: New file.
4693         * lib/unictype/pr_alphabetic.c: New file.
4694         * lib/unictype/pr_ascii_hex_digit.c: New file.
4695         * lib/unictype/pr_bidi_arabic_digit.c: New file.
4696         * lib/unictype/pr_bidi_arabic_right_to_left.c: New file.
4697         * lib/unictype/pr_bidi_block_separator.c: New file.
4698         * lib/unictype/pr_bidi_boundary_neutral.c: New file.
4699         * lib/unictype/pr_bidi_common_separator.c: New file.
4700         * lib/unictype/pr_bidi_control.c: New file.
4701         * lib/unictype/pr_bidi_embedding_or_override.c: New file.
4702         * lib/unictype/pr_bidi_eur_num_separator.c: New file.
4703         * lib/unictype/pr_bidi_eur_num_terminator.c: New file.
4704         * lib/unictype/pr_bidi_european_digit.c: New file.
4705         * lib/unictype/pr_bidi_hebrew_right_to_left.c: New file.
4706         * lib/unictype/pr_bidi_left_to_right.c: New file.
4707         * lib/unictype/pr_bidi_non_spacing_mark.c: New file.
4708         * lib/unictype/pr_bidi_other_neutral.c: New file.
4709         * lib/unictype/pr_bidi_pdf.c: New file.
4710         * lib/unictype/pr_bidi_segment_separator.c: New file.
4711         * lib/unictype/pr_bidi_whitespace.c: New file.
4712         * lib/unictype/pr_byname.c: New file.
4713         * lib/unictype/pr_byname.gperf: New file.
4714         * lib/unictype/pr_combining.c: New file.
4715         * lib/unictype/pr_composite.c: New file.
4716         * lib/unictype/pr_currency_symbol.c: New file.
4717         * lib/unictype/pr_dash.c: New file.
4718         * lib/unictype/pr_decimal_digit.c: New file.
4719         * lib/unictype/pr_default_ignorable_code_point.c: New file.
4720         * lib/unictype/pr_deprecated.c: New file.
4721         * lib/unictype/pr_diacritic.c: New file.
4722         * lib/unictype/pr_extender.c: New file.
4723         * lib/unictype/pr_format_control.c: New file.
4724         * lib/unictype/pr_grapheme_base.c: New file.
4725         * lib/unictype/pr_grapheme_extend.c: New file.
4726         * lib/unictype/pr_grapheme_link.c: New file.
4727         * lib/unictype/pr_hex_digit.c: New file.
4728         * lib/unictype/pr_hyphen.c: New file.
4729         * lib/unictype/pr_id_continue.c: New file.
4730         * lib/unictype/pr_id_start.c: New file.
4731         * lib/unictype/pr_ideographic.c: New file.
4732         * lib/unictype/pr_ids_binary_operator.c: New file.
4733         * lib/unictype/pr_ids_trinary_operator.c: New file.
4734         * lib/unictype/pr_ignorable_control.c: New file.
4735         * lib/unictype/pr_iso_control.c: New file.
4736         * lib/unictype/pr_join_control.c: New file.
4737         * lib/unictype/pr_left_of_pair.c: New file.
4738         * lib/unictype/pr_line_separator.c: New file.
4739         * lib/unictype/pr_logical_order_exception.c: New file.
4740         * lib/unictype/pr_lowercase.c: New file.
4741         * lib/unictype/pr_math.c: New file.
4742         * lib/unictype/pr_non_break.c: New file.
4743         * lib/unictype/pr_not_a_character.c: New file.
4744         * lib/unictype/pr_numeric.c: New file.
4745         * lib/unictype/pr_other_alphabetic.c: New file.
4746         * lib/unictype/pr_other_default_ignorable_code_point.c: New file.
4747         * lib/unictype/pr_other_grapheme_extend.c: New file.
4748         * lib/unictype/pr_other_id_continue.c: New file.
4749         * lib/unictype/pr_other_id_start.c: New file.
4750         * lib/unictype/pr_other_lowercase.c: New file.
4751         * lib/unictype/pr_other_math.c: New file.
4752         * lib/unictype/pr_other_uppercase.c: New file.
4753         * lib/unictype/pr_paired_punctuation.c: New file.
4754         * lib/unictype/pr_paragraph_separator.c: New file.
4755         * lib/unictype/pr_pattern_syntax.c: New file.
4756         * lib/unictype/pr_pattern_white_space.c: New file.
4757         * lib/unictype/pr_private_use.c: New file.
4758         * lib/unictype/pr_punctuation.c: New file.
4759         * lib/unictype/pr_quotation_mark.c: New file.
4760         * lib/unictype/pr_radical.c: New file.
4761         * lib/unictype/pr_sentence_terminal.c: New file.
4762         * lib/unictype/pr_soft_dotted.c: New file.
4763         * lib/unictype/pr_space.c: New file.
4764         * lib/unictype/pr_terminal_punctuation.c: New file.
4765         * lib/unictype/pr_test.c: New file.
4766         * lib/unictype/pr_titlecase.c: New file.
4767         * lib/unictype/pr_unassigned_code_value.c: New file.
4768         * lib/unictype/pr_unified_ideograph.c: New file.
4769         * lib/unictype/pr_uppercase.c: New file.
4770         * lib/unictype/pr_variation_selector.c: New file.
4771         * lib/unictype/pr_white_space.c: New file.
4772         * lib/unictype/pr_xid_continue.c: New file.
4773         * lib/unictype/pr_xid_start.c: New file.
4774         * lib/unictype/pr_zero_width.c: New file.
4775         * lib/unictype/scripts.c: New file.
4776         * lib/unictype/sy_c_ident.c: New file.
4777         * lib/unictype/sy_c_whitespace.c: New file.
4778         * lib/unictype/sy_java_ident.c: New file.
4779         * lib/unictype/sy_java_whitespace.c: New file.
4780
4781         * lib/unictype/bidi_of.h: New file, generated by gen-ctype.c for
4782         Unicode 5.0.0.
4783         * lib/unictype/blocks.h: Likewise.
4784         * lib/unictype/categ_C.h: Likewise.
4785         * lib/unictype/categ_Cc.h: Likewise.
4786         * lib/unictype/categ_Cf.h: Likewise.
4787         * lib/unictype/categ_Cn.h: Likewise.
4788         * lib/unictype/categ_Co.h: Likewise.
4789         * lib/unictype/categ_Cs.h: Likewise.
4790         * lib/unictype/categ_L.h: Likewise.
4791         * lib/unictype/categ_Ll.h: Likewise.
4792         * lib/unictype/categ_Lm.h: Likewise.
4793         * lib/unictype/categ_Lo.h: Likewise.
4794         * lib/unictype/categ_Lt.h: Likewise.
4795         * lib/unictype/categ_Lu.h: Likewise.
4796         * lib/unictype/categ_M.h: Likewise.
4797         * lib/unictype/categ_Mc.h: Likewise.
4798         * lib/unictype/categ_Me.h: Likewise.
4799         * lib/unictype/categ_Mn.h: Likewise.
4800         * lib/unictype/categ_N.h: Likewise.
4801         * lib/unictype/categ_Nd.h: Likewise.
4802         * lib/unictype/categ_Nl.h: Likewise.
4803         * lib/unictype/categ_No.h: Likewise.
4804         * lib/unictype/categ_P.h: Likewise.
4805         * lib/unictype/categ_Pc.h: Likewise.
4806         * lib/unictype/categ_Pd.h: Likewise.
4807         * lib/unictype/categ_Pe.h: Likewise.
4808         * lib/unictype/categ_Pf.h: Likewise.
4809         * lib/unictype/categ_Pi.h: Likewise.
4810         * lib/unictype/categ_Po.h: Likewise.
4811         * lib/unictype/categ_Ps.h: Likewise.
4812         * lib/unictype/categ_S.h: Likewise.
4813         * lib/unictype/categ_Sc.h: Likewise.
4814         * lib/unictype/categ_Sk.h: Likewise.
4815         * lib/unictype/categ_Sm.h: Likewise.
4816         * lib/unictype/categ_So.h: Likewise.
4817         * lib/unictype/categ_Z.h: Likewise.
4818         * lib/unictype/categ_Zl.h: Likewise.
4819         * lib/unictype/categ_Zp.h: Likewise.
4820         * lib/unictype/categ_Zs.h: Likewise.
4821         * lib/unictype/categ_of.h: Likewise.
4822         * lib/unictype/combining.h: Likewise.
4823         * lib/unictype/ctype_alnum.h: Likewise.
4824         * lib/unictype/ctype_alpha.h: Likewise.
4825         * lib/unictype/ctype_blank.h: Likewise.
4826         * lib/unictype/ctype_cntrl.h: Likewise.
4827         * lib/unictype/ctype_digit.h: Likewise.
4828         * lib/unictype/ctype_graph.h: Likewise.
4829         * lib/unictype/ctype_lower.h: Likewise.
4830         * lib/unictype/ctype_print.h: Likewise.
4831         * lib/unictype/ctype_punct.h: Likewise.
4832         * lib/unictype/ctype_space.h: Likewise.
4833         * lib/unictype/ctype_upper.h: Likewise.
4834         * lib/unictype/ctype_xdigit.h: Likewise.
4835         * lib/unictype/decdigit.h: Likewise.
4836         * lib/unictype/digit.h: Likewise.
4837         * lib/unictype/mirror.h: Likewise.
4838         * lib/unictype/numeric.h: Likewise.
4839         * lib/unictype/pr_alphabetic.h: Likewise.
4840         * lib/unictype/pr_ascii_hex_digit.h: Likewise.
4841         * lib/unictype/pr_bidi_arabic_digit.h: Likewise.
4842         * lib/unictype/pr_bidi_arabic_right_to_left.h: Likewise.
4843         * lib/unictype/pr_bidi_block_separator.h: Likewise.
4844         * lib/unictype/pr_bidi_boundary_neutral.h: Likewise.
4845         * lib/unictype/pr_bidi_common_separator.h: Likewise.
4846         * lib/unictype/pr_bidi_control.h: Likewise.
4847         * lib/unictype/pr_bidi_embedding_or_override.h: Likewise.
4848         * lib/unictype/pr_bidi_eur_num_separator.h: Likewise.
4849         * lib/unictype/pr_bidi_eur_num_terminator.h: Likewise.
4850         * lib/unictype/pr_bidi_european_digit.h: Likewise.
4851         * lib/unictype/pr_bidi_hebrew_right_to_left.h: Likewise.
4852         * lib/unictype/pr_bidi_left_to_right.h: Likewise.
4853         * lib/unictype/pr_bidi_non_spacing_mark.h: Likewise.
4854         * lib/unictype/pr_bidi_other_neutral.h: Likewise.
4855         * lib/unictype/pr_bidi_pdf.h: Likewise.
4856         * lib/unictype/pr_bidi_segment_separator.h: Likewise.
4857         * lib/unictype/pr_bidi_whitespace.h: Likewise.
4858         * lib/unictype/pr_combining.h: Likewise.
4859         * lib/unictype/pr_composite.h: Likewise.
4860         * lib/unictype/pr_currency_symbol.h: Likewise.
4861         * lib/unictype/pr_dash.h: Likewise.
4862         * lib/unictype/pr_decimal_digit.h: Likewise.
4863         * lib/unictype/pr_default_ignorable_code_point.h: Likewise.
4864         * lib/unictype/pr_deprecated.h: Likewise.
4865         * lib/unictype/pr_diacritic.h: Likewise.
4866         * lib/unictype/pr_extender.h: Likewise.
4867         * lib/unictype/pr_format_control.h: Likewise.
4868         * lib/unictype/pr_grapheme_base.h: Likewise.
4869         * lib/unictype/pr_grapheme_extend.h: Likewise.
4870         * lib/unictype/pr_grapheme_link.h: Likewise.
4871         * lib/unictype/pr_hex_digit.h: Likewise.
4872         * lib/unictype/pr_hyphen.h: Likewise.
4873         * lib/unictype/pr_id_continue.h: Likewise.
4874         * lib/unictype/pr_id_start.h: Likewise.
4875         * lib/unictype/pr_ideographic.h: Likewise.
4876         * lib/unictype/pr_ids_binary_operator.h: Likewise.
4877         * lib/unictype/pr_ids_trinary_operator.h: Likewise.
4878         * lib/unictype/pr_ignorable_control.h: Likewise.
4879         * lib/unictype/pr_iso_control.h: Likewise.
4880         * lib/unictype/pr_join_control.h: Likewise.
4881         * lib/unictype/pr_left_of_pair.h: Likewise.
4882         * lib/unictype/pr_line_separator.h: Likewise.
4883         * lib/unictype/pr_logical_order_exception.h: Likewise.
4884         * lib/unictype/pr_lowercase.h: Likewise.
4885         * lib/unictype/pr_math.h: Likewise.
4886         * lib/unictype/pr_non_break.h: Likewise.
4887         * lib/unictype/pr_not_a_character.h: Likewise.
4888         * lib/unictype/pr_numeric.h: Likewise.
4889         * lib/unictype/pr_other_alphabetic.h: Likewise.
4890         * lib/unictype/pr_other_default_ignorable_code_point.h: Likewise.
4891         * lib/unictype/pr_other_grapheme_extend.h: Likewise.
4892         * lib/unictype/pr_other_id_continue.h: Likewise.
4893         * lib/unictype/pr_other_id_start.h: Likewise.
4894         * lib/unictype/pr_other_lowercase.h: Likewise.
4895         * lib/unictype/pr_other_math.h: Likewise.
4896         * lib/unictype/pr_other_uppercase.h: Likewise.
4897         * lib/unictype/pr_paired_punctuation.h: Likewise.
4898         * lib/unictype/pr_paragraph_separator.h: Likewise.
4899         * lib/unictype/pr_pattern_syntax.h: Likewise.
4900         * lib/unictype/pr_pattern_white_space.h: Likewise.
4901         * lib/unictype/pr_private_use.h: Likewise.
4902         * lib/unictype/pr_punctuation.h: Likewise.
4903         * lib/unictype/pr_quotation_mark.h: Likewise.
4904         * lib/unictype/pr_radical.h: Likewise.
4905         * lib/unictype/pr_sentence_terminal.h: Likewise.
4906         * lib/unictype/pr_soft_dotted.h: Likewise.
4907         * lib/unictype/pr_space.h: Likewise.
4908         * lib/unictype/pr_terminal_punctuation.h: Likewise.
4909         * lib/unictype/pr_titlecase.h: Likewise.
4910         * lib/unictype/pr_unassigned_code_value.h: Likewise.
4911         * lib/unictype/pr_unified_ideograph.h: Likewise.
4912         * lib/unictype/pr_uppercase.h: Likewise.
4913         * lib/unictype/pr_variation_selector.h: Likewise.
4914         * lib/unictype/pr_white_space.h: Likewise.
4915         * lib/unictype/pr_xid_continue.h: Likewise.
4916         * lib/unictype/pr_xid_start.h: Likewise.
4917         * lib/unictype/pr_zero_width.h: Likewise.
4918         * lib/unictype/scripts.h: Likewise.
4919         * lib/unictype/scripts_byname.gperf: Likewise.
4920         * lib/unictype/sy_c_ident.h: Likewise.
4921         * lib/unictype/sy_c_whitespace.h: Likewise.
4922         * lib/unictype/sy_java_ident.h: Likewise.
4923         * lib/unictype/sy_java_whitespace.h: Likewise.
4924
4925         * lib/unictype/Makefile: New file.
4926         * lib/unictype/gen-ctype.c: New file, based on gen-unicode-ctype.c in
4927         glibc.
4928         * lib/unictype/3level.h: New file, copied from glibc.
4929         * lib/unictype/3levelbit.h: New file.
4930
4931 2007-11-11  Bruno Haible  <bruno@clisp.org>
4932
4933         * modules/gperf: New file.
4934         * modules/iconv_open (Depends-on): Add it.
4935         (Makefile.am): Remove the GPERF definition.
4936
4937 2007-11-11  Bruno Haible  <bruno@clisp.org>
4938
4939         * m4/round.m4 (gl_FUNC_ROUND): Test against NetBSD 3.0 bug.
4940         * doc/functions/round.texi: Mention the NetBSD 3.0 bug.
4941
4942 2007-11-11  Bruno Haible  <bruno@clisp.org>
4943
4944         * tests/test-argmatch.c (ARGMATCH_DIE): Undefine.
4945         (usage): Remove function.
4946
4947 2007-11-11  Bruno Haible  <bruno@clisp.org>
4948
4949         * m4/roundf.m4 (gl_FUNC_ROUNDF): Use gl_FUNC_FLOORF_LIBS and
4950         gl_FUNC_CEILF_LIBS.
4951         * m4/round.m4 (gl_FUNC_ROUND): Use gl_FUNC_FLOOR_LIBS and
4952         gl_FUNC_CEIL_LIBS.
4953         * m4/roundl.m4 (gl_FUNC_ROUNDL): Use gl_FUNC_FLOORL_LIBS and
4954         gl_FUNC_CEILL_LIBS.
4955         * modules/roundf (Files): Add m4/floorf.m4, m4/ceilf.m4.
4956         * modules/round (Files): Add m4/floor.m4, m4/ceil.m4.
4957         * modules/roundl (Files): Add m4/floorl.m4, m4/ceill.m4.
4958
4959 2007-11-11  Bruno Haible  <bruno@clisp.org>
4960
4961         * m4/roundf.m4 (gl_FUNC_ROUNDF): Handle the case that floorf and
4962         roundf were declared but do not exist on functions.
4963         * m4/roundl.m4 (gl_FUNC_ROUNDL): Handle the case that floorl and
4964         roundl were declared but do not exist on functions.
4965         * lib/round.c (HAVE_FLOOR_AND_CEIL): Use HAVE_FLOORF_AND_CEILF and
4966         HAVE_FLOORL_AND_CEILL, respectively.
4967         Needed for Sun C on Solaris 10.
4968
4969 2007-11-11  Bruno Haible  <bruno@clisp.org>
4970
4971         * m4/roundf.m4 (gl_FUNC_ROUNDF): Set REPLACE_ROUNDF instead of
4972         HAVE_DECL_ROUNDF. Remove redundant AC_SUBST.
4973         * m4/round.m4 (gl_FUNC_ROUND): Set REPLACE_ROUND instead of
4974         HAVE_DECL_ROUND. Remove redundant AC_SUBST.
4975         * m4/roundl.m4 (gl_FUNC_ROUNDL): Set REPLACE_ROUNDL instead of
4976         HAVE_DECL_ROUNDL. Remove redundant AC_SUBST.
4977         * lib/math.in.h (roundf): Use REPLACE_ROUNDF instead of
4978         HAVE_DECL_ROUNDF.
4979         (round): Use REPLACE_ROUND instead of HAVE_DECL_ROUND.
4980         (roundl): Use REPLACE_ROUNDL instead of HAVE_DECL_ROUNDL.
4981         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_ROUND* instead
4982         of HAVE_DECL_ROUND*.
4983         * modules/math (Makefile.am): Update.
4984
4985 2007-11-10  Bruno Haible  <bruno@clisp.org>
4986
4987         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Use same check for
4988         ptrdiff_t as m4/intl.m4.
4989
4990 2007-11-10  Jim Meyering  <meyering@redhat.com>
4991
4992         Avoid link failure for the argmatch test.
4993         * tests/test-argmatch.c (usage): Define function to avoid a link
4994         failure: argmatch_die requires a usage function.
4995
4996 2007-11-09  Bruno Haible  <bruno@clisp.org>
4997
4998         * doc/functions/snprintf.texi: Mention BeOS deficiency.
4999         * doc/functions/vsnprintf.texi: Likewise.
5000         * lib/vasnprintf.c (VASNPRINTF): Ensure that we never call snprintf
5001         with a size argument < 2.
5002
5003 2007-11-09  Bruno Haible  <bruno@clisp.org>
5004
5005         * lib/vasnprintf.c (VASNPRINTF): Increase reallocation of snprintf
5006         buffer. Fixes an inefficiency introduced on 2007-11-03.
5007
5008 2007-11-09  Bruno Haible  <bruno@clisp.org>
5009
5010         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8) [BeOS]: Make this test return
5011         none instead of tr_TR. Fixes a failure of test-c-strcasecmp.c.
5012
5013 2007-11-08  Jim Meyering  <meyering@redhat.com>
5014
5015         Change cache variable name prefix "jm_" to "gl_" everywhere.
5016         * m4/d-type.m4, m4/jm-winsz1.m4, m4/jm-winsz2.m4, m4/link-follow.m4:
5017         * m4/putenv.m4, m4/strtoimax.m4, m4/strtoumax.m4, m4/unlink-busy.m4:
5018         * m4/uptime.m4: s/gl_/jm_/
5019
5020 2007-11-07  Bruno Haible  <bruno@clisp.org>
5021
5022         Update to GNU gettext 0.17.
5023         * m4/intl.m4: Update to GNU gettext 0.17.
5024         * m4/po.m4: Likewise.
5025         * modules/gettext (Files): Remove m4/ulonglong.m4.
5026         (configure.ac): Require gettext infrastructure from version 0.17.
5027
5028 2007-11-06  Bruno Haible  <bruno@clisp.org>
5029
5030         * lib/fbufmode.c (fbufmode) [QNX]: Use numerical values for flags; the
5031         symbolic values are not defined in a public header.
5032         * lib/freadable.c (freadable) [QNX]: Likewise.
5033         * lib/freadahead.c (freadahead) [QNX]: Likewise.
5034         * lib/freading.c (freading) [QNX]: Likewise.
5035         * lib/fseterr.c (fseterr) [QNX]: Likewise.
5036         * lib/fwritable.c (fwritable) [QNX]: Likewise.
5037         * lib/fwriting.c (fwriting) [QNX]: Likewise.
5038         * lib/fpurge.c (fpurge) [QNX]: Likewise. Add a return statement.
5039         Reported by Alain Magloire.
5040
5041         * m4/fpending.m4 (gl_FUNC_FPENDING): Add a variant for QNX.
5042
5043 2007-11-05  Bruno Haible  <bruno@clisp.org>
5044
5045         * lib/vasnprintf.c (VASNPRINTF): Expand the NEED_PRINTF_DIRECTIVE_A
5046         code when NEED_PRINTF_LONG_DOUBLE or NEED_PRINTF_DOUBLE is set.
5047         Needed on Cygwin, where !NEED_PRINTF_DIRECTIVE_A && NEED_PRINTF_DOUBLE.
5048         Reported by Eric Blake.
5049
5050 2007-10-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5051             Bruno Haible  <bruno@clisp.org>
5052
5053         * modules/malloc (configure.ac): Define GNULIB_MALLOC_GNU always.
5054         * modules/realloc (configure.ac): Define GNULIB_REALLOC_GNU always.
5055         * lib/realloc.c (SYSTEM_MALLOC_GLIBC_COMPATIBLE): New macro.
5056         (malloc): Undefine also before including <stdlib.h>.
5057         (rpl_realloc): Turn malloc(0) into malloc(1) if necessary.
5058         Needed on OSF/1 4.0.
5059
5060 2007-11-05  Jim Meyering  <meyering@redhat.com>
5061
5062         git-version-gen: sync from coreutils.
5063         * build-aux/git-version-gen: Add comments.
5064         Change the first '-' to '.' in the snapshot version string,
5065         e.g., 6.9-377-08144 -> 6.9.377-08144
5066         Remove first parameter.
5067         Don't declare a version "-dirty" merely because a time
5068         stamp has changed.
5069
5070 2007-11-04  Bruno Haible  <bruno@clisp.org>
5071
5072         * lib/lock.h: Protect all macro definitions containing an 'if'
5073         statement through a "do { ... } while (0)".
5074         * lib/tls.h: Likewise.
5075
5076 2007-11-04  Bruno Haible  <bruno@clisp.org>
5077
5078         * lib/vasnprintf.c (DCHAR_IS_TCHAR, DCHAR_CPY): Undefine at the end.
5079
5080 2007-11-04  Bruno Haible  <bruno@clisp.org>
5081
5082         * m4/printf.m4 (gl_PRINTF_ENOMEM): Use GL_NOCRASH.
5083         * modules/fprintf-posix (Depends-on): Add nocrash.
5084         * modules/snprintf-posix (Depends-on): Likewise.
5085         * modules/sprintf-posix (Depends-on): Likewise.
5086         * modules/vasnprintf-posix (Depends-on): Likewise.
5087         * modules/vasprintf-posix (Depends-on): Likewise.
5088         * modules/vfprintf-posix (Depends-on): Likewise.
5089         * modules/vsnprintf-posix (Depends-on): Likewise.
5090         * modules/vsprintf-posix (Depends-on): Likewise.
5091         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
5092         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
5093         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
5094         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
5095         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
5096         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
5097         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
5098
5099 2007-11-04  Bruno Haible  <bruno@clisp.org>
5100
5101         * modules/nocrash: New file.
5102         * m4/nocrash.m4: New file, taken from GNU clisp. Code taken from
5103         GNU libsigsegv, with permission of GNU libsigsegv's copyright holders.
5104
5105 2007-11-04  Bruno Haible  <bruno@clisp.org>
5106
5107         * tests/test-vasnprintf-posix.c (test_function): Add some tests of
5108         precision handling.
5109         * tests/test-vasprintf-posix.c (test_function): Likewise.
5110         * tests/test-snprintf-posix.h (test_function): Likewise.
5111         * tests/test-sprintf-posix.h (test_function): Likewise.
5112
5113         Fix *printf behaviour for large precisions on mingw and BeOS.
5114         * m4/printf.m4 (gl_PRINTF_PRECISION): New macro.
5115         * lib/vasnprintf.c (VASNPRINTF): Handle NEED_PRINTF_UNBOUNDED_PRECISION.
5116         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_PRECISION): New macro.
5117         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
5118         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
5119         gl_PRINTF_PRECISION and test its result. Invoke
5120         gl_PREREQ_VASNPRINTF_PRECISION.
5121         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
5122         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
5123         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
5124         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
5125         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
5126         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
5127         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
5128         * doc/functions/fprintf.texi: Update.
5129         * doc/functions/printf.texi: Update.
5130         * doc/functions/snprintf.texi: Update.
5131         * doc/functions/sprintf.texi: Update.
5132         * doc/functions/vfprintf.texi: Update.
5133         * doc/functions/vprintf.texi: Update.
5134         * doc/functions/vsnprintf.texi: Update.
5135         * doc/functions/vsprintf.texi: Update.
5136
5137 2007-11-04  Bruno Haible  <bruno@clisp.org>
5138
5139         * lib/vasnprintf.c (scale10_round_decimal_decoded): Fix shift loop.
5140
5141 2007-11-04  Bruno Haible  <bruno@clisp.org>
5142
5143         * modules/relocatable-prog (Files): Add m4/lib-ld.m4.
5144         Reported by Sylvain Beucler <beuc@gnu.org>.
5145
5146 2007-11-03  Bruno Haible  <bruno@clisp.org>
5147
5148         * tests/test-fprintf-posix2.sh: New file.
5149         * tests/test-fprintf-posix2.c: New file.
5150         * modules/fprintf-posix-tests (Files): Add them.
5151         (TESTS): Add test-fprintf-posix2.sh.
5152         (configure.ac): Check for getrlimit and setrlimit.
5153         (check_PROGRAMS): Add test-fprintf-posix2.
5154
5155         * tests/test-printf-posix2.sh: New file.
5156         * tests/test-printf-posix2.c: New file.
5157         * modules/printf-posix-tests (Files): Add them.
5158         (TESTS): Add test-printf-posix2.sh.
5159         (configure.ac): Check for getrlimit and setrlimit.
5160         (check_PROGRAMS): Add test-printf-posix2.
5161
5162         Fix *printf behaviour in out-of-memory situations on MacOS X and *BSD.
5163         * m4/printf.m4 (gl_PRINTF_ENOMEM): New macro.
5164         * lib/vasnprintf.c: Implement NEED_PRINTF_DOUBLE.
5165         (decode_double): New function, copied from decode_long_double.
5166         (scale10_round_decimal_decoded): New function, extracted from
5167         scale10_round_decimal_long_double.
5168         (scale10_round_decimal_long_double): Use it.
5169         (scale10_round_decimal_double): New function.
5170         (floorlog10): New function.
5171         (VASNPRINTF): Handle NEED_PRINTF_DOUBLE case.
5172         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_ENOMEM): New macro.
5173         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
5174         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
5175         gl_PRINTF_ENOMEM and test its result. Invoke
5176         gl_PREREQ_VASNPRINTF_ENOMEM.
5177         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
5178         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
5179         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
5180         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
5181         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
5182         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
5183         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
5184         * modules/fprintf-posix (Depends-on): Add frexp-nolibm.
5185         * modules/snprintf-posix (Depends-on): Likewise.
5186         * modules/sprintf-posix (Depends-on): Likewise.
5187         * modules/vasnprintf-posix (Depends-on): Likewise.
5188         * modules/vasprintf-posix (Depends-on): Likewise.
5189         * modules/vfprintf-posix (Depends-on): Likewise.
5190         * modules/vsnprintf-posix (Depends-on): Likewise.
5191         * modules/vsprintf-posix (Depends-on): Likewise.
5192         * doc/functions/fprintf.texi: Update.
5193         * doc/functions/printf.texi: Update.
5194         * doc/functions/snprintf.texi: Update.
5195         * doc/functions/sprintf.texi: Update.
5196         * doc/functions/vfprintf.texi: Update.
5197         * doc/functions/vprintf.texi: Update.
5198         * doc/functions/vsnprintf.texi: Update.
5199         * doc/functions/vsprintf.texi: Update.
5200
5201 2007-11-03  Bruno Haible  <bruno@clisp.org>
5202
5203         * modules/frexp-nolibm-tests: New file.
5204
5205         * modules/frexp-nolibm: New file.
5206         * m4/frexp.m4 (gl_FUNC_FREXP_NO_LIBM): New macro.
5207
5208 2007-11-03  Bruno Haible  <bruno@clisp.org>
5209
5210         * lib/vasnprintf.c (VASNPRINTF): Don't assume that snprintf's return
5211         value is C99 compliant.
5212         Needed for OSF/1 5.1.
5213
5214 2007-11-03  Bruno Haible  <bruno@clisp.org>
5215
5216         Fix out-of-memory handling of vasnprintf.
5217         * lib/printf-parse.c: Include <errno.h>.
5218         (PRINTF_PARSE): When failing, set errno to EINVAL or ENOMEM.
5219         * lib/vasnprintf.c (VASNPRINTF): When PRINTF_PARSE fails, assume errno
5220         is already set.
5221
5222 2007-11-02  Eric Blake  <ebb9@byu.net>
5223
5224         Fix tests on cygwin.
5225         * modules/xprintf-posix-tests (Makefile.am): Link against -lintl.
5226
5227 2007-11-01  Bruno Haible  <bruno@clisp.org>
5228
5229         * lib/stdlib.in.h (putenv): Remove the "not POSIX compliant everywhere"
5230         warning.
5231         * doc/functions/putenv.texi: Clarify that the 'putenv' module is not
5232         needed for POSIX compatibility.
5233
5234 2007-11-01  Paul Eggert  <eggert@cs.ucla.edu>
5235
5236         * m4/putenv.m4 (gl_FUNC_PUTENV): Also mention that we're checking
5237         for compatibility with GNU.
5238
5239 2007-11-01  Bruno Haible  <bruno@clisp.org>
5240
5241         * lib/putenv.c: Include <stdlib.h>. Remove rpl_putenv declaration.
5242         (putenv): Renamed from rpl_putenv. Change argument type from
5243         'const char *' to 'char *'.
5244         * m4/putenv.m4 (gl_FUNC_PUTENV): Require gl_STDLIB_H_DEFAULTS. Instead
5245         of defining putenv in config.h, just set REPLACE_PUTENV.
5246         * modules/putenv (Depends-on): Add stdlib.
5247         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
5248         (Include): Use <stdlib.h>.
5249         * lib/stdlib.in.h (putenv): New declaration.
5250         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_PUTENV and
5251         REPLACE_PUTENV.
5252         * modules/stdlib (Makefile.am): Substitute GNULIB_PUTENV and
5253         REPLACE_PUTENV.
5254         Needed for MacOS X 10.5.0.
5255         Reported by Peter O'Gorman <peter@pogma.com>.
5256
5257 2007-11-01  Jim Meyering  <meyering@redhat.com>
5258
5259         Treat an empty date string exactly like "0".
5260         * lib/getdate.y (get_date): Once any isspace or TZ= prefix is consumed,
5261         if the remaining date string (to be parsed) is empty, use "0".
5262         Reported by Mischa Molhoek and discussed in this thread:
5263         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/11726>.
5264
5265 2007-10-31  Bruno Haible  <bruno@clisp.org>
5266
5267         * m4/intmax_t.m4 (gl_AC_TYPE_INTMAX_T, gt_AC_TYPE_INTMAX_T): Use
5268         AC_TYPE_LONG_LONG_INT instead of gl_AC_TYPE_LONG_LONG.
5269         * m4/uintmax_t.m4 (gl_AC_TYPE_UINTMAX_T): Use
5270         AC_TYPE_UNSIGNED_LONG_LONG_INT instead of gl_AC_TYPE_UNSIGNED_LONG_LONG.
5271         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Remove macro.
5272         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG): Remove macro.
5273
5274 2007-10-31  Bruno Haible  <bruno@clisp.org>
5275
5276         * m4/longlong.m4 (_AC_TYPE_LONG_LONG_SNIPPET): New macro, extracted
5277         from AC_TYPE_LONG_LONG_INT and AC_TYPE_UNSIGNED_LONG_LONG_INT.
5278         (AC_TYPE_LONG_LONG_INT): Use it.
5279         (AC_TYPE_UNSIGNED_LONG_LONG_INT): Moved here from m4/ulonglong.m4. Use
5280         it as well.
5281         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Remove macro; moved
5282         to m4/longlong.m4.
5283         * modules/stdint (Files): Remove m4/ulonglong.m4.
5284         * modules/strtoull (Files): Use m4/longlong.m4 instead of
5285         m4/ulonglong.m4.
5286         * modules/strtoumax (Files): Likewise.
5287
5288 2007-10-30  Bruno Haible  <bruno@clisp.org>
5289
5290         * modules/xvasprintf-posix: New file.
5291         Suggested by Eric Blake.
5292
5293 2007-10-30  Bruno Haible  <bruno@clisp.org>
5294
5295         * modules/xprintf-posix-tests: New file.
5296         * tests/test-xprintf-posix.sh: New file.
5297         * tests/test-xprintf-posix.c: New file.
5298         * tests/test-xfprintf-posix.c: New file.
5299
5300         * modules/xprintf-posix: New file.
5301
5302 2007-10-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5303
5304         * modules/fbufmode-tests (MOSTLYCLEANFILES): Remove temp files.
5305         * modules/freadable-tests (MOSTLYCLEANFILES): Likewise.
5306         * modules/fwritable-tests (MOSTLYCLEANFILES): Likewise.
5307
5308 2007-10-29  Bruno Haible  <bruno@clisp.org>
5309
5310         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): Rename the cache variable to
5311         contain the special marker '_cv_'.
5312         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): Likewise.
5313         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): Likewise.
5314         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): Likewise.
5315         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): Likewise.
5316         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): Likewise.
5317         Reported by Ralf Wildenhues.
5318
5319 2007-10-29  Bruno Haible  <bruno@clisp.org>
5320
5321         * gnulib-tool (func_import): When --lgpl is not specified, set
5322         sed_transform_lib_file to convert LGPL and GPLv2+ copyright headers to
5323         GPLv3.
5324         Reported by Simon Josefsson.
5325
5326 2007-10-28  Bruno Haible  <bruno@clisp.org>
5327
5328         * lib/math.in.h: Test REPLACE_ISFINITE instead of HAVE_DECL_ISFINITE.
5329         * m4/isfinite.m4 (gl_ISFINITE): Initialize REPLACE_ISFINITE instead of
5330         HAVE_DECL_ISFINITE.
5331         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Update.
5332         * modules/math (Makefile.am): Substitute REPLACE_ISFINITE instead of
5333         HAVE_DECL_ISFINITE.
5334
5335 2007-10-28  Bruno Haible  <bruno@clisp.org>
5336
5337         * lib/stdint.in.h (_STDINT_MAX): Subtract 1 from an unused signed
5338         integer shift in the signed case. Fixes warnings with OSF/1 5.1 cc.
5339
5340 2007-10-28  Bruno Haible  <bruno@clisp.org>
5341
5342         Fix link errors with Sun C 5.0 on Solaris 10.
5343         * m4/floorf.m4 (gl_FUNC_FLOORF): Consider also the case that the
5344         function is declared but not present in the compiler's libm.
5345         * m4/floorl.m4 (gl_FUNC_FLOORL): Likewise.
5346         * m4/ceilf.m4 (gl_FUNC_CEILF): Likewise.
5347         * m4/ceill.m4 (gl_FUNC_CEILL: Likewise.
5348         * lib/math.in.h: Test REPLACE_CEILF instead of HAVE_DECL_CEILF.
5349         Test REPLACE_CEILL instead of HAVE_DECL_CEILL.
5350         Test REPLACE_FLOORF instead of HAVE_DECL_FLOORF.
5351         Test REPLACE_FLOORL instead of HAVE_DECL_FLOORL.
5352         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Update.
5353         * modules/math (Makefile.am): Substitute REPLACE_CEILF instead of
5354         HAVE_DECL_CEILF, REPLACE_CEILL instead of HAVE_DECL_CEILL,
5355         REPLACE_FLOORF instead of HAVE_DECL_FLOORF, REPLACE_FLOORL instead of
5356         HAVE_DECL_FLOORL.
5357
5358 2007-10-28  Bruno Haible  <bruno@clisp.org>
5359
5360         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): New macro, extracted from
5361         gl_FUNC_FLOORL. Cache the result.
5362         (gl_FUNC_FLOORL): Use it.
5363         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): New macro, extracted from
5364         gl_FUNC_CEILL. Cache the result.
5365         (gl_FUNC_CEILL): Use it.
5366
5367         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): New macro, extracted from
5368         gl_FUNC_FLOOR. Cache the result.
5369         (gl_FUNC_FLOOR): Use it.
5370         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): New macro, extracted from
5371         gl_FUNC_CEIL. Cache the result.
5372         (gl_FUNC_CEIL): Use it.
5373
5374         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): New macro, extracted from
5375         gl_FUNC_FLOORF. Cache the result.
5376         (gl_FUNC_FLOORF): Use it.
5377         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): New macro, extracted from
5378         gl_FUNC_CEILF. Cache the result.
5379         (gl_FUNC_CEILF): Use it.
5380
5381 2007-10-28  Bruno Haible  <bruno@clisp.org>
5382
5383         * gnulib-tool: Allow specifying the LGPL version number through
5384         --lgpl=2 or --lgpl=3.
5385         (func_usage): Document --lgpl with argument.
5386         Handle --lgpl=... arguments.
5387         (func_import): Recognize also gl_LGPL calls with an argument. When
5388         --lgpl=2 is used and the module's license is just LGPL, report an
5389         error. Set sed_transform_lib_file according to the lgpl variable. In
5390         the generated files, use --lgpl or gl_LGPL invocations with argument,
5391         if necessary.
5392         * doc/gnulib-intro.texi (Copyright): Explain how to get modules under
5393         an LGPv2+ license.
5394         * doc/gnulib-tool.texi (Modified imports): Update explanation of
5395         gl_LGPL macro.
5396
5397 2007-10-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5398             Bruno Haible  <bruno@clisp.org>
5399
5400         * lib/unistr.h (u8_uctomb_aux): Declare also if !HAVE_INLINE.
5401         (u16_uctomb_aux): Likewise.
5402         * lib/unistr/u8-uctomb-aux.c (u8_uctomb_aux): Define also if
5403         !HAVE_INLINE.
5404         * lib/unistr/u16-uctomb-aux.c (u16_uctomb_aux): Likewise
5405
5406 2007-10-28  Bruno Haible  <bruno@clisp.org>
5407
5408         * modules/error: Add a notice recommending to change XGETTEXT_OPTIONS.
5409         Invoke AM_GETTEXT_OPTION if it exists.
5410         * modules/vasprintf: Likewise.
5411         * modules/verror: Likewise.
5412         * modules/xprintf: Likewise.
5413         * modules/xvasprintf: Likewise.
5414
5415 2007-10-27  Ben Pfaff  <blp@gnu.org>
5416
5417         * lib/math.in.h: Define isfinite macro and prototypes for
5418         gl_isfinitef, gl_isfinited, gl_isfinitel if we are providing
5419         implementations.
5420         * m4/math_h.m4: New substitutions for isfinite module.
5421         * lib/isfinite.c: New file.
5422         * m4/isfinite.m4: New file.
5423         * modules/math: Replace isfinite-related @VARS@ in math.in.h.
5424         * modules/isfinite: New file.
5425         * modules/isfinite-tests: New file.
5426         * tests/tests-isfinite.c: New file.
5427         * doc/functions/isfinite.texi: Mention isfinite module.
5428         * MODULES.html.sh: Mention new module.
5429
5430 2007-10-27  Ben Pfaff  <blp@gnu.org>
5431
5432         Ralf Wildenhues reported that Tru64 4.0D declares the round
5433         functions but does not have definitions.
5434         * m4/check-math-lib.m4 (gl_CHECK_MATH_LIB): If the target function
5435         cannot be found in any library, set the output variable to
5436         "missing" instead of "".
5437         * m4/round.m4: Also use our substitute if we cannot find round in
5438         any library, even if it is declared.
5439         * m4/roundf.m4: Likewise for roundf.
5440         * m4/roundl.m4: Likewise for roundl.
5441         * lib/math.in.h: Undefine roundf, round, roundl before defining
5442         their replacements, to allow for hypothetical systems where these
5443         may be defined as macros but not available in libraries.
5444
5445 2007-10-27  Bruno Haible  <bruno@clisp.org>
5446
5447         * doc/gnulib.texi: Invoke @firstparagraphindent.
5448         * doc/gnulib-tool.texi (Simple update): Mention possible incompatible
5449         changes in gnulib.
5450         (Source changes): New section.
5451
5452 2007-10-26  Bruno Haible  <bruno@clisp.org>
5453
5454         * m4/gnulib-common.m4 (AC_C_RESTRICT): New overriding definition,
5455         borrowed from autoconf.
5456
5457 2007-10-26  Bruno Haible  <bruno@clisp.org>
5458
5459         * lib/strerror.c (rpl_strerror): Return "Unknown error ..." also if
5460         strerror returned the empty string. Needed on HP-UX 11.00.
5461
5462 2007-10-24  Micah Cowan  <micah@cowan.name>
5463
5464         Remove vestiges of cvs-gnulib-checkout process.  Now we use git.
5465         * build-aux/bootstrap: Remove support for now-unnecessary option,
5466         --cvs-user, and envvars CVS_USER, CVS_RSH.
5467
5468 2007-10-24  Jim Meyering  <meyering@redhat.com>
5469
5470         Avoid diagnostics from sha1sum when there is no cached checksum.
5471         * build-aux/bootstrap (update_po_files): Skip the sha1sum check
5472         if the po.s1 file hasn't been created yet.
5473
5474         * build-aux/bootstrap: Sync from coreutils:
5475         2007-10-24  Jim Meyering  <meyering@redhat.com>
5476         Get gnulib from the git repository, not from an obsolete cvs one.
5477         * build-aux/bootstrap: Suggestion from Micah Cowan.
5478         2007-10-04  Jim Meyering  <jim@meyering.net>
5479         * build-aux/bootstrap (slurp): Adapt to _.h -> .in.h name change.
5480         (update_po_files): Work also when there are no .po files in po/.
5481
5482 2007-10-24  Paul Eggert  <eggert@cs.ucla.edu>
5483
5484         * README: Append ".git" to git and cg examples.
5485         Problem reported by Benoit Sigoure.
5486
5487 2007-10-23  Micah Cowan  <micah@cowan.name>
5488
5489         * users.txt: Add wget.
5490
5491 2007-10-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5492
5493         Fix linking of some unistdio tests on FreeBSD.
5494         * modules/unistdio/u16-vsnprintf-tests
5495         (test_u16_vsprintf1_LDADD): Add @LIBINTL@.
5496         * modules/unistdio/u16-vsprintf-tests
5497         (test_u16_vsnprintf1_LDADD): Likewise.
5498         * modules/unistdio/u32-vsnprintf-tests
5499         (test_u32_vsnprintf1_LDADD): Likewise.
5500         * modules/unistdio/u32-vsprintf-tests
5501         (test_u32_vsprintf1_LDADD): Likewise.
5502         * modules/unistdio/u8-vsnprintf-tests
5503         (test_u8_vsnprintf1_LDADD): Likewise.
5504         * modules/unistdio/u8-vsprintf-tests
5505         (test_u8_vsprintf1_LDADD): Likewise.
5506         * modules/unistdio/ulc-vsnprintf-tests
5507         (test_ulc_vsnprintf1_LDADD): Likewise.
5508         * modules/unistdio/ulc-vsprintf-tests
5509         (test_ulc_vsprintf1_LDADD): Likewise.
5510
5511         Fix linking of some uniconv tests on FreeBSD.
5512         * modules/uniconv/u16-conv-from-enc-tests
5513         (test_u16_conv_from_enc_LDADD): Link $(LDADD) before @LIBICONV@.
5514         * modules/uniconv/u16-conv-to-enc-tests
5515         (test_u16_conv_to_enc_LDADD): Likewise.
5516         * modules/uniconv/u16-strconv-from-enc-tests
5517         (test_u16_strconv_from_enc_LDADD): Likewise.
5518         * modules/uniconv/u16-strconv-to-enc-tests
5519         (test_u16_strconv_to_enc_LDADD): Likewise.
5520         * modules/uniconv/u32-conv-from-enc-tests
5521         (test_u32_conv_from_enc_LDADD): Likewise.
5522         * modules/uniconv/u32-conv-to-enc-tests
5523         (test_u32_conv_to_enc_LDADD): Likewise.
5524         * modules/uniconv/u32-strconv-from-enc-tests
5525         (test_u32_strconv_from_enc_LDADD): Likewise.
5526         * modules/uniconv/u32-strconv-to-enc-tests
5527         (test_u32_strconv_to_enc_LDADD): Likewise.
5528         * modules/uniconv/u8-conv-from-enc-tests
5529         (test_u8_conv_from_enc_LDADD): Likewise.
5530         * modules/uniconv/u8-conv-to-enc-tests
5531         (test_u8_conv_to_enc_LDADD): Likewise.
5532         * modules/uniconv/u8-strconv-from-enc-tests
5533         (test_u8_strconv_from_enc_LDADD): Likewise.
5534         * modules/uniconv/u8-strconv-to-enc-tests
5535         (test_u8_strconv_to_enc_LDADD): Likewise.
5536
5537 2007-10-22  Bruno Haible  <bruno@clisp.org>
5538
5539         * lib/stdint.in.h: Add check that intmax_t and uintmax_t have the same
5540         size.
5541
5542 2007-10-22  Eric Blake  <ebb9@byu.net>
5543
5544         Tweak x*printf documentation.
5545         * lib/xprintf.c (xprintf, xvprintf, xfprintf, xvfprintf): Adjust
5546         variable name and comments.
5547         Suggested by Bruno Haible.
5548
5549 2007-10-22  Bruno Haible  <bruno@clisp.org>
5550
5551         * lib/acl.c (copy_acl): Fix file name in comment.
5552
5553 2007-10-22  Paul Eggert  <eggert@cs.ucla.edu>
5554
5555         Fix Tru64 problem with stdbool.h.
5556         * lib/stdbool.in.h (false, true):
5557         [! (defined __cplusplus || defined __BEOS__) && !defined __GNUC__]:
5558         Don't declare as an enum in this situation; it runs afoul of Tru64.
5559         Problem reported by Steven M. Schweda in
5560         <http://lists.gnu.org/archive/html/bug-autoconf/2007-10/msg00019.html>.
5561
5562 2007-10-22  Eric Blake  <ebb9@byu.net>
5563
5564         Also wrap vf?printf.
5565         * lib/xprintf.h (xvprintf, xvfprintf): New declarations.
5566         * lib/xprintf.c (xprintf, xfprintf): Work for C89.
5567         (xvprintf, xvfprintf): New functions.
5568
5569 2007-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5570
5571         * modules/fstrcmp-tests (test_fstrcmp_LDADD): New, add
5572         @LIBINTL@ for FreeBSD 6.2, $(LIBTHREAD) for AIX 4.3.3.
5573
5574         * lib/uniconv/u16-conv-to-enc.c (U_MBLEN): Define.
5575         * lib/uniconv/u32-conv-to-enc.c (U_MBLEN): Likewise.
5576
5577 2007-10-22  Paul Eggert  <eggert@cs.ucla.edu>
5578
5579         * lib/acl.c (copy_acl): Adjust to IRIX 6.5.  Problem reported
5580         by Bruno Haible.
5581
5582 2007-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5583
5584         * lib/getloadavg.c
5585         [defined (__osf__) && (defined (__alpha) || defined (__alpha__)]:
5586         Undef `sys' after including sys/table.h, for Tru64 4.0D.
5587
5588         * tests/test-i-ring.c: Work for C89.
5589
5590 2007-10-22  Bruno Haible  <bruno@clisp.org>
5591
5592         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Use -1ull, not
5593         -1u, in preprocessor expression, so that we don't test for the bug
5594         in HP-UX 11.00 cpp.  Testing for this bug caused problems; see
5595         <http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00329.html>.
5596
5597 2007-10-22  Eric Blake  <ebb9@byu.net>
5598
5599         * tests/test-yesno.sh: Silence stderr during test.
5600
5601 2007-10-22  Simon Josefsson  <simon@josefsson.org>
5602
5603         * modules/crypto/gc-camellia: New file.
5604
5605         * m4/gc-camellia.m4: New file.
5606
5607         * lib/gc-libgcrypt.c (gc_cipher_open): Support Camellia.
5608
5609         * lib/gc.h (enum Gc_cipher): Add GC_CAMELLIA128, GC_CAMELLIA256.
5610
5611 2007-10-22  Simon Josefsson  <simon@josefsson.org>
5612
5613         * build-aux/maint.mk (gzip_rsyncable): Don't fail if gzip sends
5614         --help to stdout.  Reported by sms@antinode.org (Steven
5615         M. Schweda).
5616
5617 2007-10-22  Simon Josefsson  <simon@josefsson.org>
5618
5619         * users.txt: Fix link to libksba.
5620
5621 2007-10-21  Ben Pfaff  <blp@gnu.org>
5622
5623         * modules/roundf-tests: Add dependency on floorf, ceilf to allow
5624         round.c roundf implementation that depends on floorf and ceilf to
5625         be tested unconditionally.
5626
5627 2007-10-21  Ben Pfaff  <blp@gnu.org>
5628
5629         * m4/check-libm-func.m4: Removed.
5630         * m4/check-math-lib.m4: New file.
5631         * m4/round.m4: Rewrite to use gl_CHECK_MATH_LIB.
5632         * m4/roundf.m4: Ditto, and fix lack of HAVE_DECL_ROUNDF
5633         definition and lack of AC_LIBOBJ([roundf]).
5634         * m4/roundl.m4: Ditto, and similarly for roundl.
5635         * modules/round: Reference new m4 file.
5636         * modules/roundf: Ditto.
5637         * modules/roundl: Ditto.
5638         * tests/test-round2.c (main): Use ROUND instead of round.
5639         Bug report from Bruno Haible.
5640
5641 2007-10-21  Bruno Haible  <bruno@clisp.org>
5642
5643         * lib/printf-parse.c: Don't assume <stdint.h> exists in IN_LIBASPRINTF
5644         context.
5645
5646 2007-10-21  Bruno Haible  <bruno@clisp.org>
5647
5648         * tests/test-wcwidth.c (main): Allow negative result for some control
5649         characters.
5650
5651         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Check also the width of U+200B.
5652         Needed on OSF/1 5.1.
5653
5654 2007-10-21  Bruno Haible  <bruno@clisp.org>
5655
5656         * tests/test-floorf1.c: Include isnanf.h.
5657         (main): Use isnanf() instead of isnan().
5658         * tests/test-ceilf1.c: Include isnanf.h.
5659         (main): Use isnanf() instead of isnan().
5660         * tests/test-truncf1.c: Include isnanf.h.
5661         (main): Use isnanf() instead of isnan().
5662         * tests/test-roundf1.c: Include isnanf.h.
5663         (main): Use isnanf() instead of isnan().
5664
5665 2007-10-21  Eric Blake  <ebb9@byu.net>
5666
5667         * users.txt: Update URL for m4.
5668
5669 2007-10-21  Bruno Haible  <bruno@clisp.org>
5670
5671         * users.txt: Add clisp. Update URLs to Simon Josefsson's projects.
5672
5673 2007-10-21  Bruno Haible  <bruno@clisp.org>
5674
5675         * gnulib-tool (func_create_megatestdir): Determine the cvsdate from
5676         Git's management files if the CVS files are not present.
5677
5678 2007-10-20  Bruno Haible  <bruno@clisp.org>
5679
5680         * lib/count-one-bits.h (COUNT_ONE_BITS): Use the builtin also for
5681         gcc-3.4.x.
5682
5683 2007-10-20  Ben Pfaff  <blp@gnu.org>
5684
5685         * lib/math.in.h: Declare round, roundf, roundl if we are providing
5686         implementations.
5687         * m4/math_h.m4: New substitutions for round, roundf, roundl modules.
5688         * lib/round.c: New file.
5689         * lib/roundf.c: New file.
5690         * lib/roundl.c: New file.
5691         * m4/round.m4: New file.
5692         * m4/roundf.m4: New file.
5693         * m4/roundl.m4: New file.
5694         * m4/check-libm-func-m4: New file.
5695         * modules/math: Replace round, roundf, roundl related @VARS@ in
5696         math.in.h.
5697         * modules/round: New file.
5698         * modules/round-tests: New file.
5699         * modules/roundf: New file.
5700         * modules/roundf-tests: New file.
5701         * modules/roundl: New file.
5702         * modules/roundl-tests: New file.
5703         * tests/test-round1.c: New file.
5704         * tests/test-round2.c: New file.
5705         * tests/test-roundf1.c: New file.
5706         * tests/test-roundf2.c: New file.
5707         * tests/test-roundl.c: New file.
5708         * doc/functions/round.texi: Mention round module.
5709         * doc/functions/roundf.texi: Mention roundf module.
5710         * doc/functions/roundl.texi: Mention roundl module.
5711         * MODULES.html.sh: Mention new modules.
5712         Thanks to Bruno Haible for suggestions.
5713
5714 2007-10-20  Jim Meyering  <meyering@redhat.com>
5715
5716         * lib/xprintf.c: Include <config.h> unconditionally.
5717
5718         Change xprintf's license to GPL.
5719         * modules/xprintf (License): s/LGPL/GPL/, since this module
5720         depends on modules (exit and exitfail) which are GPL.
5721         Suggestion from Bruno Haible.
5722
5723         xprintf fixes.
5724         * lib/xprintf.c (xprintf, xfprintf): Use va_end.
5725         Use a clearer diagnostic.
5726         Patch from Bruno Haible.
5727
5728 2007-10-20  Bruno Haible  <bruno@clisp.org>
5729
5730         * lib/vasnprintf.c (VASNPRINTF): Don't report overflow if the available
5731         length is INT_MAX and sizeof (DCHAR_T) > sizeof (TCHAR_T).
5732         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
5733
5734 2007-10-20  Bruno Haible  <bruno@clisp.org>
5735
5736         * tests/test-floorf2.c (correct_result_p): Don't rely on excess
5737         precision in the comparison result > x - 1 or similar.
5738         * tests/test-ceilf2.c (correct_result_p): Likewise.
5739         * tests/test-truncf2.c (correct_result_p): Likewise.
5740         * tests/test-trunc2.c (correct_result_p): Likewise.
5741         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
5742
5743 2007-10-20  Bruno Haible  <bruno@clisp.org>
5744
5745         * modules/ceil: New file.
5746         * m4/ceil.m4: New file.
5747         * doc/functions/ceil.texi: Mention the 'ceil' module.
5748
5749 2007-10-20  Bruno Haible  <bruno@clisp.org>
5750
5751         * modules/floor: New file.
5752         * m4/floor.m4: New file.
5753         * doc/functions/floor.texi: Mention the 'floor' module.
5754
5755 2007-10-20  Bruno Haible  <bruno@clisp.org>
5756
5757         * modules/ceilf-tests (Depends-on): Add fprintf-posix. Needed for use
5758         of %a.
5759         * modules/floorf-tests (Depends-on): Likewise.
5760         * modules/truncf-tests (Depends-on): Likewise.
5761         * modules/trunc-tests (Depends-on): Likewise.
5762         Reported by Ben Pfaff.
5763
5764 2007-10-19  Jim Meyering  <meyering@redhat.com>
5765
5766         * lib/xprintf.c (xprintf, xfprintf): Test err < 0, not just "err".
5767         Don't bother testing specific errno values.  Just test ferror.
5768
5769         New module: xprintf
5770         * modules/xprintf, lib/xprintf.c, lib/xprintf.h: New files.
5771
5772 2007-10-19  Bruno Haible  <bruno@clisp.org>
5773
5774         * modules/csharpexec (Makefile.am): Use @FOO@ syntax instead of $(FOO)
5775         syntax.
5776         * modules/javaexec (Makefile.am): Likewise.
5777         * modules/relocatable-prog (Makefile.am): Likewise.
5778         Suggested by Jim Meyering.
5779
5780 2007-10-18  Bruno Haible  <bruno@clisp.org>
5781
5782         * lib/vasnprintf.c (VASNPRINTF): Don't use %n on glibc >= 2.3 systems.
5783         Reported by Jim Meyering.
5784
5785 2007-10-18  Eric Blake  <ebb9@byu.net>
5786
5787         * modules/filenamecat-tests (Makefile.am): Link against -lintl.
5788
5789 2007-10-18  Bruno Haible  <bruno@clisp.org>
5790
5791         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_N, gl_SNPRINTF_DIRECTIVE_N): Put
5792         the format string into writable memory. Needed in Fortify conditions.
5793
5794 2007-10-18  Colin Watson <cjwatson@debian.org>  (tiny change)
5795             Bruno Haible  <bruno@clisp.org>
5796
5797         * lib/trim.c: Include config.h unconditionally. Include trim.h always.
5798         Include ctype.h always. Include stdlib.h, not mbuiter.h, for MB_CUR_MAX.
5799         * modules/trim (Depends-on): Add mbchar.
5800         (configure.ac): Add gl_FUNC_MBRTOWC.
5801         (Makefile.am): Augment lib_SOURCES.
5802
5803 2007-10-17  Paul Eggert  <eggert@cs.ucla.edu>
5804
5805         Modify glob.c to use fstatat and dirfd, to simplify it.
5806         Suggested by Eric Blake.
5807         * lib/glob.c (__fxstatat64) [!_LIBC]: New macro.
5808         Don't include <stdbool.h>; not used.
5809         (link_exists2_p, glob_in_dir) [!_LIBC]: No longer a special case.
5810         (link_exists_p): Simplify implementation, since we can now assume
5811         dirfd and fstatat.
5812         * modules/glob (Depends-on): Add dirfd, openat.  Remove stdbool.
5813
5814 2007-10-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5815
5816         * gnulib-tool (func_get_dependencies): Fix sed script to
5817         match only tests.
5818
5819 2007-10-17  Bruno Haible  <bruno@clisp.org>
5820
5821         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): On Cygwin, don't
5822         allow locale names without encoding suffix.
5823         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Likewise.
5824         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
5825
5826 2007-10-16  Bruno Haible  <bruno@clisp.org>
5827
5828         * lib/getcwd.c (__getcwd): Define with explicit rpl_ prefix.
5829         * lib/getgroups.c (getgroups): Likewise.
5830         * lib/gettimeofday.c (localtime, gmtime, tzset): Likewise.
5831
5832 2007-10-16  Bruno Haible  <bruno@clisp.org>
5833
5834         * modules/absolute-header (License): Change from LGPL to LGPLv2+.
5835         * modules/malloc-posix (License): Likewise.
5836         * modules/realloc-posix (License): Likewise.
5837         * modules/calloc-posix (License): Likewise.
5838         * modules/intprops (License): Change from GPL to LGPL, with
5839         Paul Eggert's approval.
5840
5841 2007-10-16  Paul Eggert  <eggert@cs.ucla.edu>
5842
5843         Merge glibc changes into lib/glob.c.
5844
5845         * lib/glob.c (glob_in_dir): Sync with glibc/posix/glob.c, dated
5846         2007-10-15 04:59:03 UTC.  Here are the changes:
5847
5848         2007-10-14  Ulrich Drepper  <drepper@redhat.com>
5849
5850         * lib/glob.c: Reimplement link_exists_p to use fstatat64.
5851
5852         * lib/glob.c: Add some branch prediction throughout.
5853
5854         2007-10-07  Ulrich Drepper  <drepper@redhat.com>
5855
5856         [BZ #5103]
5857         * lib/glob.c (glob): Recognize patterns starting \/.
5858
5859         2007-02-14  Jakub Jelinek  <jakub@redhat.com>
5860
5861         [BZ #3996]
5862         * lib/glob.c (attribute_hidden): Define if not defined.
5863         (glob): Unescape dirname, filename or username when needed and not
5864         GLOB_NOESCAPE.  Handle \/ correctly.  Handle GLOB_MARK if filename
5865         is NULL.  Handle unescaped [ in pattern without closing ].
5866         Don't pass GLOB_CHECK down to recursive glob for directories.
5867         (__glob_pattern_type): New function.
5868         (__glob_pattern_p): Implement using __glob_pattern_type.
5869         (glob_in_dir): Handle GLOB_NOCHECK patterns containing no meta
5870         characters and backslashes if not GLOB_NOESCAPE or unterminated [.
5871         Remove unreachable code.
5872
5873         2006-09-30  Ulrich Drepper  <drepper@redhat.com>
5874
5875         * lib/glob.c (glob_in_dir): Add some comments and asserts to
5876         explain why there are no leaks.
5877
5878         2006-09-25  Jakub Jelinek  <jakub@redhat.com>
5879
5880         [BZ #3253]
5881         * lib/glob.c (glob_in_dir): Don't alloca one struct globlink at a
5882         time, rather allocate increasingly bigger arrays of pointers, if
5883         possible with alloca, if too large with malloc.
5884
5885 2007-10-16  Paul Eggert  <eggert@cs.ucla.edu>
5886
5887         Check for 64-bit int errors in HP-UX 10.20 preprocessor.
5888         Problem reported by H.Merijn Brand in
5889         <http://lists.gnu.org/archive/html/bug-tar/2007-10/msg00018.html>.
5890         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Check preprocessor too.
5891         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
5892
5893 2007-10-15  Bruno Haible  <bruno@clisp.org>
5894
5895         * lib/fchdir.c (close, open, closedir, opendir, dup, dup2): Define
5896         with explicit rpl_ prefix.
5897         * lib/fopen.c (fopen): Likewise.
5898         * lib/freopen.c (freopen): Likewise.
5899         * lib/iconv.c (iconv): Likewise.
5900         * lib/iconv_close.c (iconv_close): Likewise.
5901
5902 2007-10-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5903
5904         * m4/iconv_open (gl_FUNC_ICONV_OPEN_UTF): Fix cache variable name.
5905
5906 2007-10-15  Bruno Haible  <bruno@clisp.org>
5907
5908         * m4/getaddrinfo.m4 (gl_GETADDRINFO, gl_PREREQ_GETADDRINFO): Use
5909         <stddef.h> instead of <stdlib.h> since we only need NULL.
5910         Reported by Ben Pfaff <blp@cs.stanford.edu>.
5911
5912 2007-10-15  Bruno Haible  <bruno@clisp.org>
5913
5914         * doc/gnulib-tool.texi (Initial import): Swap order of -I directives.
5915         Replace paragraph talking about LIBOBJS.
5916         Reported by Colin Watson <cjwatson@debian.org>.
5917
5918 2007-10-15  Bruno Haible  <bruno@clisp.org>
5919
5920         * m4/getaddrinfo.m4 (gl_GETADDRINFO, gl_PREREQ_GETADDRINFO): Include
5921         <stdlib.h> before using NULL.
5922
5923 2007-10-15  Simon Josefsson  <simon@josefsson.org>
5924
5925         * m4/getaddrinfo.m4: Use NULL rather than 0 for pointers.
5926         Reported by Albert Chin <china@thewrittenword.com>.
5927
5928 2007-10-14  Bruno Haible  <bruno@clisp.org>
5929
5930         * modules/iconv_open-utf-tests: New file.
5931         * tests/test-iconv-utf.c: New file.
5932
5933         Enhance iconv_open to support UTF-16BE, UTF-16LE, UTF-32BE, UTF-32LE.
5934         * modules/iconv_open-utf: New file.
5935         * lib/iconv.in.h (_ICONV_UTF8_UTF*, _ICONV_UTF*_UTF8): New macros.
5936         (iconv, iconv_close): New declarations.
5937         * lib/iconv_open.c: Include c-strcase.h. Don't require ICONV_FLAVOR to
5938         be defined.
5939         (iconv_open): Add special handling of conversion between UTF-8 and
5940         UTF-{16,32}{BE,LE}.
5941         * lib/iconv.c: New file, incorporating code from GNU libiconv 1.11.
5942         * lib/iconv_close.c: New file.
5943         * m4/iconv_open.m4 (gl_REPLACE_ICONV_OPEN): New macro, extracted from
5944         gl_FUNC_ICONV_OPEN.
5945         (gl_FUNC_ICONV_OPEN): Use it.
5946         (gl_FUNC_ICONV_OPEN_UTF): New macro.
5947         * m4/iconv_h.m4 (gl_ICONV_H_DEFAULTS): Initialize also REPLACE_ICONV
5948         and REPLACE_ICONV_UTF.
5949         * modules/iconv_open (Depends-on): Add c-strcase.
5950         (Makefile.am): Substitute also REPLACE_ICONV, REPLACE_ICONV_UTF,
5951         ICONV_CONST.
5952         * doc/functions/iconv_open.texi: Mention the iconv_open-utf module.
5953
5954 2007-10-13  Albert Chin  <china@thewrittenword.com>
5955             Bruno Haible  <bruno@clisp.org>
5956
5957         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Perform the test for getaddrinfo
5958         through a link check that includes <netdb.h>. Needed for OSF/1 5.1.
5959
5960 2007-10-13  Bruno Haible  <bruno@clisp.org>
5961
5962         * lib/argp-fmtstream.h (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is
5963         defined, use the ISO C99 inline semantics.
5964         * lib/argp.h (ARGP_EI): Likewise.
5965
5966 2007-10-13  Bruno Haible  <bruno@clisp.org>
5967
5968         Handle 'inline' change in gcc 4.3.0.
5969         * lib/argp-fmtstream.h (argp_fmtstream_putc, argp_fmtstream_puts,
5970         argp_fmtstream_write, argp_fmtstream_set_lmargin,
5971         argp_fmtstream_set_rmargin, argp_fmtstream_set_wmargin,
5972         argp_fmtstream_point): Disable 'extern' declaration if the function
5973         definition is going to be provided inline.
5974         (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is defined, use the GNU C inline
5975         semantics, not the ISO C99 inline semantics.
5976         * lib/argp.h (argp_usage, _option_is_short, _option_is_end): Disable
5977         'extern' declaration if the function definition is going to be provided
5978         inline.
5979         (ARGP_EI): Don't assume GNU C. If __GNUC_STDC_INLINE__ is defined, use
5980         the GNU C inline semantics, not the ISO C99 inline semantics. With
5981         GCC 4.2, avoid a warning.
5982
5983 2007-10-13  Bruno Haible  <bruno@clisp.org>
5984
5985         * lib/freading.h (freading): Enable the use of __freading for
5986         glibc >= 2.7.
5987         * lib/freading.c (freading): Likewise.
5988
5989 2007-10-12  Paul Eggert  <eggert@cs.ucla.edu>
5990
5991         * lib/argp-fmtstream.h (ARGP_FS_EI): Work around GCC 4.2.1 diagnostic
5992         "warning: C99 inline functions are not supported; using GNU89".
5993
5994 2007-10-12  Bruno Haible  <bruno@clisp.org>
5995
5996         * lib/ceil.c (FUNC): Avoid rounding errors for values near a power
5997         of 2.
5998         * tests/test-ceilf2.c: New file.
5999         * modules/ceilf-tests: (Files, Depends-on, Makefile.am): Add new test.
6000
6001         * tests/test-ceilf1.c: Renamed from tests/test-ceilf.c.
6002         * modules/ceilf-tests: Update.
6003
6004 2007-10-12  Bruno Haible  <bruno@clisp.org>
6005
6006         * lib/floor.c (FUNC): Avoid rounding errors for values near a power
6007         of 2.
6008         * tests/test-floorf2.c: New file.
6009         * modules/floorf-tests: (Files, Depends-on, Makefile.am): Add new test.
6010
6011         * tests/test-floorf1.c: Renamed from tests/test-floorf.c.
6012         * modules/floorf-tests: Update.
6013
6014 2007-10-12  Bruno Haible  <bruno@clisp.org>
6015
6016         * tests/test-trunc2.c: New file.
6017         * modules/trunc-tests: (Files, Depends-on, Makefile.am): Add new test.
6018
6019         * tests/test-trunc1.c: Renamed from tests/test-trunc.c.
6020         * modules/trunc-tests: Update.
6021
6022 2007-10-12  Bruno Haible  <bruno@clisp.org>
6023
6024         * lib/trunc.c (FUNC): Avoid rounding errors for values near a power
6025         of 2.
6026         * tests/test-truncf2.c: New file.
6027         * modules/truncf-tests: (Files, Depends-on, Makefile.am): Add new test.
6028
6029         * tests/test-truncf1.c: Renamed from tests/test-truncf.c.
6030         * modules/truncf-tests: Update.
6031
6032 2007-10-11  Eric Blake  <ebb9@byu.net>
6033
6034         Don't claim strerror is broken on Interix.
6035         * doc/functions/strerror.texi (strerror): Known broken systems are
6036         now Solaris 8, and not Interix.
6037         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): No longer filter out
6038         Interix on cross-compile.
6039         Reported by Martin Koeppe in
6040         http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00005.html.
6041
6042 2007-10-11  Bruno Haible  <bruno@clisp.org>
6043
6044         * modules/i-ring-tests: New file.
6045         * tests/test-i-ring.c: Renamed from lib/i-ring-test.c. Use ASSERT
6046         instead of assert.
6047
6048 2007-10-11  Bruno Haible  <bruno@clisp.org>
6049
6050         * modules/filenamecat-tests: New file.
6051         * tests/test-filenamecat.c: New file, extracted from lib/filenamecat.c.
6052         * lib/filenamecat.c: Remove test code.
6053
6054 2007-10-11  Paul Eggert  <eggert@cs.ucla.edu>
6055
6056         Simplify and modernize strerror substitute, partly to fix Solaris 8 bug.
6057
6058         * lib/strerror.c: Include <string.h> always, to test interface,
6059         and to remove the need for the dummy.
6060         Include intprops.h to compute width instead of doing it ourselves
6061         and missing a CHAR_BIT declaration, which broke tar 1.19 on Solaris 8.
6062         (strerror): Define it to return NULL if there's no system strerror.
6063         (rpl_strerror): Use INT_STRLEN_BOUND to compute bound.
6064         Omit !HAVE_STRERROR code.  We don't need to worry about supporting
6065         ancient pre-strerror Unix systems well any more.  Saying "unknown
6066         system error" is enough.
6067         * lib/string.in.h (strerror): Simplify the ifdef to reflect the
6068         simpler strerror.c implementation.
6069         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE, gl_PREREQ_STDERROR):
6070         Simplify the tests to reflect the simpler strerror implementation.
6071         * modules/strerror (Depends-on): Add intprops.
6072
6073 2007-10-09  Eric Blake  <ebb9@byu.net>
6074
6075         Silence test-fpending.
6076         * modules/fpending-tests (Files): Add wrapper script.
6077         * tests/test-fpending.sh: New file.
6078
6079 2007-10-09  Bruno Haible  <bruno@clisp.org>
6080
6081         * MODULES.html.sh (func_module): Don't create a hyperlink for
6082         function names like 'printf_frexp'.
6083         (Misc): Add crc, memxor.
6084         (Characteristics of floating types): New section.
6085         (Mathematics): Add ceilf, ceill, floorf, floorl, frexpl-nolibm,
6086         isnanf-nolibm, signbit, trunc, truncf, truncl.
6087         (Enhancements for ISO C 99 functions): New subsection Input/output.
6088         (Support for systems lacking POSIX:2001): Add arpa_inet, calloc-posix,
6089         fcntl, fopen, freopen, fseek, fseeko, ftell, ftello, iconv_open,
6090         locale, malloc-posix, netinet_in, open, realloc-posix, signal, sleep.
6091         (Compatibility checks for POSIX:2001 functions): Add clock-time.
6092         (Enhancements for POSIX:2001 functions): Add chdir-long.
6093         (File system functions): Add areadlink, chdir-safer, read-file.
6094         Remove cycle-check.
6095         (File system as inode set): New section.
6096         (Date and time): Add gethrxtime.
6097         (Multithreading): Add openmp.
6098         (Internationalization functions): Add localename.
6099         (Unicode string functions): Add unistr/u*-mbsnlen.
6100         (Support for maintaining and releasing projects): Add git-version-gen.
6101         (Lone files): Remove directories.
6102
6103 2007-10-08  Ben Pfaff  <blp@gnu.org>
6104
6105         * lib/xmalloca.h: Fix typo in comment.
6106
6107 2007-10-08  Paul Eggert  <eggert@cs.ucla.edu>
6108
6109         * lib/xnanosleep.c (xnanosleep): Don't assume GCC 4.3.0 behavior
6110         when avoiding problems with integer overflow.  Use a portable test
6111         instead.
6112
6113 2007-10-08  Simon Josefsson  <simon@josefsson.org>
6114
6115         * modules/dummy (License): Change to LGPLv2+.
6116         * modules/float (License): Likewise
6117         * modules/realloc (License): Likewise
6118         * modules/stdlib (License): Likewise
6119
6120 2007-10-07  Bruno Haible  <bruno@clisp.org>
6121
6122         * trunc.c (TWO_MANT_DIG): Change type to DOUBLE.
6123         * floor.c (TWO_MANT_DIG): Likewise.
6124         * ceil.c (TWO_MANT_DIG): Likewise.
6125         Reported by Ben Pfaff.
6126
6127 2007-10-07  Bruno Haible  <bruno@clisp.org>
6128
6129         Avoid gcc warnings "declaration of 'exp' shadows a global declaration".
6130         * lib/math.in.h (frexp, frexpl): Change parameter name to 'expptr'.
6131         * lib/frexp.c (FUNC): Likewise.
6132         * lib/printf-frexp.h (printf_frexp): Likewise.
6133         * lib/printf-frexpl.h (printf_frexpl): Likewise.
6134         * lib/printf-frexp.c (FUNC): Likewise.
6135         Suggested by Jim Meyering.
6136
6137 2007-10-07  Jim Meyering  <meyering@redhat.com>
6138
6139         Make xnanosleep's integer overflow test more robust.
6140         * lib/xnanosleep.c (xnanosleep): Declare a temporary to be "volatile",
6141         so that gcc-4.3.0 doesn't optimize away this test for overflow.
6142
6143 2007-10-07  Bruno Haible  <bruno@clisp.org>
6144
6145         * NEWS: Mention the license change.
6146
6147         * doc/gnulib-intro.texi (Copyright): Update the meaning of the license
6148         abbreviations in the modules files.
6149
6150         Change copyright notice from GPLv2+ to GPLv3+.
6151         * README: Change copyright notice.
6152         * MODULES.html.sh: Likewise.
6153         * build-aux/bootstrap.conf: Likewise.
6154         * build-aux/config.libpath: Likewise.
6155         * build-aux/csharpcomp.sh.in: Likewise.
6156         * build-aux/csharpexec.sh.in: Likewise.
6157         * build-aux/install-reloc: Likewise.
6158         * build-aux/javacomp.sh.in: Likewise.
6159         * build-aux/javaexec.sh.in: Likewise.
6160         * build-aux/ldd.sh.in: Likewise.
6161         * build-aux/reloc-ldflags: Likewise.
6162         * build-aux/relocatable.sh.in: Likewise.
6163         * build-aux/x-to-1.in: Likewise.
6164         * check-module: Likewise.
6165         * config/srclistvars.sh: Likewise.
6166         * gnulib-tool: Likewise.
6167         * lib/acl-internal.h: Likewise.
6168         * lib/acl.c: Likewise.
6169         * lib/acl.h: Likewise.
6170         * lib/acl_entries.c: Likewise.
6171         * lib/areadlink-with-size.c: Likewise.
6172         * lib/areadlink.c: Likewise.
6173         * lib/areadlink.h: Likewise.
6174         * lib/argmatch.c: Likewise.
6175         * lib/argmatch.h: Likewise.
6176         * lib/argp-ba.c: Likewise.
6177         * lib/argp-eexst.c: Likewise.
6178         * lib/argp-fmtstream.c: Likewise.
6179         * lib/argp-fmtstream.h: Likewise.
6180         * lib/argp-fs-xinl.c: Likewise.
6181         * lib/argp-help.c: Likewise.
6182         * lib/argp-namefrob.h: Likewise.
6183         * lib/argp-parse.c: Likewise.
6184         * lib/argp-pin.c: Likewise.
6185         * lib/argp-pv.c: Likewise.
6186         * lib/argp-pvh.c: Likewise.
6187         * lib/argp-xinl.c: Likewise.
6188         * lib/argp.h: Likewise.
6189         * lib/at-func.c: Likewise.
6190         * lib/atanl.c: Likewise.
6191         * lib/backupfile.c: Likewise.
6192         * lib/backupfile.h: Likewise.
6193         * lib/basename.c: Likewise.
6194         * lib/binary-io.h: Likewise.
6195         * lib/byteswap.in.h: Likewise.
6196         * lib/c-stack.c: Likewise.
6197         * lib/c-stack.h: Likewise.
6198         * lib/c-strcasestr.c: Likewise.
6199         * lib/c-strcasestr.h: Likewise.
6200         * lib/c-strstr.c: Likewise.
6201         * lib/c-strstr.h: Likewise.
6202         * lib/c-strtod.c: Likewise.
6203         * lib/calloc.c: Likewise.
6204         * lib/canon-host.c: Likewise.
6205         * lib/canon-host.h: Likewise.
6206         * lib/canonicalize-lgpl.c: Likewise.
6207         * lib/canonicalize.c: Likewise.
6208         * lib/canonicalize.h: Likewise.
6209         * lib/ceil.c: Likewise.
6210         * lib/ceilf.c: Likewise.
6211         * lib/ceill.c: Likewise.
6212         * lib/chdir-long.c: Likewise.
6213         * lib/chdir-long.h: Likewise.
6214         * lib/chdir-safer.c: Likewise.
6215         * lib/chdir-safer.h: Likewise.
6216         * lib/chown.c: Likewise.
6217         * lib/classpath.c: Likewise.
6218         * lib/classpath.h: Likewise.
6219         * lib/clean-temp.c: Likewise.
6220         * lib/clean-temp.h: Likewise.
6221         * lib/cloexec.c: Likewise.
6222         * lib/close-stream.c: Likewise.
6223         * lib/closein.c: Likewise.
6224         * lib/closein.h: Likewise.
6225         * lib/closeout.c: Likewise.
6226         * lib/closeout.h: Likewise.
6227         * lib/concat-filename.c: Likewise.
6228         * lib/copy-file.c: Likewise.
6229         * lib/copy-file.h: Likewise.
6230         * lib/count-one-bits.h: Likewise.
6231         * lib/crc.c: Likewise.
6232         * lib/crc.h: Likewise.
6233         * lib/creat-safer.c: Likewise.
6234         * lib/csharpcomp.c: Likewise.
6235         * lib/csharpcomp.h: Likewise.
6236         * lib/csharpexec.c: Likewise.
6237         * lib/csharpexec.h: Likewise.
6238         * lib/cycle-check.c: Likewise.
6239         * lib/cycle-check.h: Likewise.
6240         * lib/diacrit.c: Likewise.
6241         * lib/diacrit.h: Likewise.
6242         * lib/diffseq.h: Likewise.
6243         * lib/dirchownmod.c: Likewise.
6244         * lib/dirent.in.h: Likewise.
6245         * lib/dirfd.c: Likewise.
6246         * lib/dirfd.h: Likewise.
6247         * lib/dirname.c: Likewise.
6248         * lib/dirname.h: Likewise.
6249         * lib/dummy.c: Likewise.
6250         * lib/dup-safer.c: Likewise.
6251         * lib/dup2.c: Likewise.
6252         * lib/eealloc.h: Likewise.
6253         * lib/error.c: Likewise.
6254         * lib/error.h: Likewise.
6255         * lib/euidaccess.c: Likewise.
6256         * lib/exclude.c: Likewise.
6257         * lib/exclude.h: Likewise.
6258         * lib/execute.c: Likewise.
6259         * lib/execute.h: Likewise.
6260         * lib/exitfail.c: Likewise.
6261         * lib/exitfail.h: Likewise.
6262         * lib/expl.c: Likewise.
6263         * lib/fatal-signal.c: Likewise.
6264         * lib/fatal-signal.h: Likewise.
6265         * lib/fbufmode.c: Likewise.
6266         * lib/fbufmode.h: Likewise.
6267         * lib/fchdir.c: Likewise.
6268         * lib/fchmodat.c: Likewise.
6269         * lib/fchownat.c: Likewise.
6270         * lib/fcntl--.h: Likewise.
6271         * lib/fcntl-safer.h: Likewise.
6272         * lib/fcntl.in.h: Likewise.
6273         * lib/fd-safer.c: Likewise.
6274         * lib/fflush.c: Likewise.
6275         * lib/file-has-acl.c: Likewise.
6276         * lib/file-set.c: Likewise.
6277         * lib/file-type.c: Likewise.
6278         * lib/file-type.h: Likewise.
6279         * lib/fileblocks.c: Likewise.
6280         * lib/filemode.c: Likewise.
6281         * lib/filemode.h: Likewise.
6282         * lib/filename.h: Likewise.
6283         * lib/filenamecat.c: Likewise.
6284         * lib/filenamecat.h: Likewise.
6285         * lib/findprog.c: Likewise.
6286         * lib/findprog.h: Likewise.
6287         * lib/float.in.h: Likewise.
6288         * lib/floor.c: Likewise.
6289         * lib/floorf.c: Likewise.
6290         * lib/floorl.c: Likewise.
6291         * lib/fopen-safer.c: Likewise.
6292         * lib/fopen.c: Likewise.
6293         * lib/fpending.c: Likewise.
6294         * lib/fpending.h: Likewise.
6295         * lib/fprintf.c: Likewise.
6296         * lib/fprintftime.h: Likewise.
6297         * lib/fpucw.h: Likewise.
6298         * lib/fpurge.c: Likewise.
6299         * lib/fpurge.h: Likewise.
6300         * lib/freadable.c: Likewise.
6301         * lib/freadable.h: Likewise.
6302         * lib/freadahead.c: Likewise.
6303         * lib/freadahead.h: Likewise.
6304         * lib/freading.c: Likewise.
6305         * lib/freading.h: Likewise.
6306         * lib/free.c: Likewise.
6307         * lib/freopen.c: Likewise.
6308         * lib/frexp.c: Likewise.
6309         * lib/frexpl.c: Likewise.
6310         * lib/fseek.c: Likewise.
6311         * lib/fseterr.c: Likewise.
6312         * lib/fseterr.h: Likewise.
6313         * lib/fstatat.c: Likewise.
6314         * lib/fstrcmp.c: Likewise.
6315         * lib/fstrcmp.h: Likewise.
6316         * lib/fsusage.c: Likewise.
6317         * lib/fsusage.h: Likewise.
6318         * lib/ftell.c: Likewise.
6319         * lib/ftello.c: Likewise.
6320         * lib/fts-cycle.c: Likewise.
6321         * lib/fts.c: Likewise.
6322         * lib/fts_.h: Likewise.
6323         * lib/full-read.c: Likewise.
6324         * lib/full-read.h: Likewise.
6325         * lib/full-write.c: Likewise.
6326         * lib/full-write.h: Likewise.
6327         * lib/fwritable.c: Likewise.
6328         * lib/fwritable.h: Likewise.
6329         * lib/fwriteerror.c: Likewise.
6330         * lib/fwriteerror.h: Likewise.
6331         * lib/fwriting.c: Likewise.
6332         * lib/fwriting.h: Likewise.
6333         * lib/gcd.c: Likewise.
6334         * lib/gcd.h: Likewise.
6335         * lib/getcwd.c: Likewise.
6336         * lib/getdate.h: Likewise.
6337         * lib/getdate.y: Likewise.
6338         * lib/getdomainname.c: Likewise.
6339         * lib/getdomainname.h: Likewise.
6340         * lib/getgroups.c: Likewise.
6341         * lib/gethostname.c: Likewise.
6342         * lib/gethrxtime.c: Likewise.
6343         * lib/gethrxtime.h: Likewise.
6344         * lib/getloadavg.c: Likewise.
6345         * lib/getndelim2.c: Likewise.
6346         * lib/getndelim2.h: Likewise.
6347         * lib/getnline.c: Likewise.
6348         * lib/getnline.h: Likewise.
6349         * lib/getopt.c: Likewise.
6350         * lib/getopt.in.h: Likewise.
6351         * lib/getopt1.c: Likewise.
6352         * lib/getopt_int.h: Likewise.
6353         * lib/getpagesize.h: Likewise.
6354         * lib/getsubopt.c: Likewise.
6355         * lib/gettime.c: Likewise.
6356         * lib/getugroups.c: Likewise.
6357         * lib/getugroups.h: Likewise.
6358         * lib/getusershell.c: Likewise.
6359         * lib/gl_anyavltree_list1.h: Likewise.
6360         * lib/gl_anyavltree_list2.h: Likewise.
6361         * lib/gl_anyhash_list1.h: Likewise.
6362         * lib/gl_anyhash_list2.h: Likewise.
6363         * lib/gl_anylinked_list1.h: Likewise.
6364         * lib/gl_anylinked_list2.h: Likewise.
6365         * lib/gl_anyrbtree_list1.h: Likewise.
6366         * lib/gl_anyrbtree_list2.h: Likewise.
6367         * lib/gl_anytree_list1.h: Likewise.
6368         * lib/gl_anytree_list2.h: Likewise.
6369         * lib/gl_anytree_oset.h: Likewise.
6370         * lib/gl_anytreehash_list1.h: Likewise.
6371         * lib/gl_anytreehash_list2.h: Likewise.
6372         * lib/gl_array_list.c: Likewise.
6373         * lib/gl_array_list.h: Likewise.
6374         * lib/gl_array_oset.c: Likewise.
6375         * lib/gl_array_oset.h: Likewise.
6376         * lib/gl_avltree_list.c: Likewise.
6377         * lib/gl_avltree_list.h: Likewise.
6378         * lib/gl_avltree_oset.c: Likewise.
6379         * lib/gl_avltree_oset.h: Likewise.
6380         * lib/gl_avltreehash_list.c: Likewise.
6381         * lib/gl_avltreehash_list.h: Likewise.
6382         * lib/gl_carray_list.c: Likewise.
6383         * lib/gl_carray_list.h: Likewise.
6384         * lib/gl_linked_list.c: Likewise.
6385         * lib/gl_linked_list.h: Likewise.
6386         * lib/gl_linkedhash_list.c: Likewise.
6387         * lib/gl_linkedhash_list.h: Likewise.
6388         * lib/gl_list.c: Likewise.
6389         * lib/gl_list.h: Likewise.
6390         * lib/gl_oset.c: Likewise.
6391         * lib/gl_oset.h: Likewise.
6392         * lib/gl_rbtree_list.c: Likewise.
6393         * lib/gl_rbtree_list.h: Likewise.
6394         * lib/gl_rbtree_oset.c: Likewise.
6395         * lib/gl_rbtree_oset.h: Likewise.
6396         * lib/gl_rbtreehash_list.c: Likewise.
6397         * lib/gl_rbtreehash_list.h: Likewise.
6398         * lib/gl_sublist.c: Likewise.
6399         * lib/gl_sublist.h: Likewise.
6400         * lib/group-member.c: Likewise.
6401         * lib/group-member.h: Likewise.
6402         * lib/hard-locale.c: Likewise.
6403         * lib/hard-locale.h: Likewise.
6404         * lib/hash-pjw.c: Likewise.
6405         * lib/hash-pjw.h: Likewise.
6406         * lib/hash-triple.c: Likewise.
6407         * lib/hash.c: Likewise.
6408         * lib/hash.h: Likewise.
6409         * lib/human.c: Likewise.
6410         * lib/human.h: Likewise.
6411         * lib/i-ring.c: Likewise.
6412         * lib/i-ring.h: Likewise.
6413         * lib/idcache.c: Likewise.
6414         * lib/imaxabs.c: Likewise.
6415         * lib/imaxdiv.c: Likewise.
6416         * lib/inet_pton.c: Likewise.
6417         * lib/inet_pton.h: Likewise.
6418         * lib/intprops.h: Likewise.
6419         * lib/inttostr.c: Likewise.
6420         * lib/inttostr.h: Likewise.
6421         * lib/inttypes.in.h: Likewise.
6422         * lib/isapipe.c: Likewise.
6423         * lib/isdir.c: Likewise.
6424         * lib/isnan.c: Likewise.
6425         * lib/isnan.h: Likewise.
6426         * lib/isnanf.c: Likewise.
6427         * lib/isnanf.h: Likewise.
6428         * lib/isnanl-nolibm.h: Likewise.
6429         * lib/isnanl.c: Likewise.
6430         * lib/isnanl.h: Likewise.
6431         * lib/javacomp.c: Likewise.
6432         * lib/javacomp.h: Likewise.
6433         * lib/javaexec.c: Likewise.
6434         * lib/javaexec.h: Likewise.
6435         * lib/javaversion.c: Likewise.
6436         * lib/javaversion.h: Likewise.
6437         * lib/javaversion.java: Likewise.
6438         * lib/lbrkprop.h: Likewise.
6439         * lib/lchmod.h: Likewise.
6440         * lib/lchown.c: Likewise.
6441         * lib/ldexpl.c: Likewise.
6442         * lib/linebreak.c: Likewise.
6443         * lib/linebreak.h: Likewise.
6444         * lib/linebuffer.c: Likewise.
6445         * lib/linebuffer.h: Likewise.
6446         * lib/locale.in.h: Likewise.
6447         * lib/logl.c: Likewise.
6448         * lib/long-options.c: Likewise.
6449         * lib/long-options.h: Likewise.
6450         * lib/lstat.c: Likewise.
6451         * lib/lstat.h: Likewise.
6452         * lib/math.in.h: Likewise.
6453         * lib/mbchar.c: Likewise.
6454         * lib/mbchar.h: Likewise.
6455         * lib/mbfile.h: Likewise.
6456         * lib/mbiter.h: Likewise.
6457         * lib/mbscasecmp.c: Likewise.
6458         * lib/mbscasestr.c: Likewise.
6459         * lib/mbschr.c: Likewise.
6460         * lib/mbscspn.c: Likewise.
6461         * lib/mbslen.c: Likewise.
6462         * lib/mbsncasecmp.c: Likewise.
6463         * lib/mbsnlen.c: Likewise.
6464         * lib/mbspbrk.c: Likewise.
6465         * lib/mbspcasecmp.c: Likewise.
6466         * lib/mbsrchr.c: Likewise.
6467         * lib/mbssep.c: Likewise.
6468         * lib/mbsspn.c: Likewise.
6469         * lib/mbsstr.c: Likewise.
6470         * lib/mbstok_r.c: Likewise.
6471         * lib/mbswidth.c: Likewise.
6472         * lib/mbswidth.h: Likewise.
6473         * lib/mbuiter.h: Likewise.
6474         * lib/memcasecmp.c: Likewise.
6475         * lib/memcasecmp.h: Likewise.
6476         * lib/memchr.c: Likewise.
6477         * lib/memcmp.c: Likewise.
6478         * lib/memcoll.c: Likewise.
6479         * lib/memcoll.h: Likewise.
6480         * lib/memcpy.c: Likewise.
6481         * lib/memrchr.c: Likewise.
6482         * lib/mkancesdirs.c: Likewise.
6483         * lib/mkdir-p.c: Likewise.
6484         * lib/mkdir-p.h: Likewise.
6485         * lib/mkdir.c: Likewise.
6486         * lib/mkdirat.c: Likewise.
6487         * lib/mkdtemp.c: Likewise.
6488         * lib/mkstemp-safer.c: Likewise.
6489         * lib/mkstemp.c: Likewise.
6490         * lib/modechange.c: Likewise.
6491         * lib/modechange.h: Likewise.
6492         * lib/mountlist.c: Likewise.
6493         * lib/mountlist.h: Likewise.
6494         * lib/mpsort.c: Likewise.
6495         * lib/nanosleep.c: Likewise.
6496         * lib/obstack.c: Likewise.
6497         * lib/obstack.h: Likewise.
6498         * lib/open-safer.c: Likewise.
6499         * lib/open.c: Likewise.
6500         * lib/openat-die.c: Likewise.
6501         * lib/openat-priv.h: Likewise.
6502         * lib/openat-proc.c: Likewise.
6503         * lib/openat.c: Likewise.
6504         * lib/openat.h: Likewise.
6505         * lib/pagealign_alloc.c: Likewise.
6506         * lib/pagealign_alloc.h: Likewise.
6507         * lib/physmem.c: Likewise.
6508         * lib/physmem.h: Likewise.
6509         * lib/pipe-safer.c: Likewise.
6510         * lib/pipe.c: Likewise.
6511         * lib/pipe.h: Likewise.
6512         * lib/posixtm.c: Likewise.
6513         * lib/posixtm.h: Likewise.
6514         * lib/posixver.c: Likewise.
6515         * lib/printf-frexp.c: Likewise.
6516         * lib/printf-frexp.h: Likewise.
6517         * lib/printf-frexpl.c: Likewise.
6518         * lib/printf-frexpl.h: Likewise.
6519         * lib/printf.c: Likewise.
6520         * lib/progname.c: Likewise.
6521         * lib/progname.h: Likewise.
6522         * lib/progreloc.c: Likewise.
6523         * lib/putenv.c: Likewise.
6524         * lib/quote.c: Likewise.
6525         * lib/quote.h: Likewise.
6526         * lib/quotearg.c: Likewise.
6527         * lib/quotearg.h: Likewise.
6528         * lib/raise.c: Likewise.
6529         * lib/readline.c: Likewise.
6530         * lib/readline.h: Likewise.
6531         * lib/readlink.c: Likewise.
6532         * lib/readtokens.c: Likewise.
6533         * lib/readtokens.h: Likewise.
6534         * lib/readtokens0.c: Likewise.
6535         * lib/readtokens0.h: Likewise.
6536         * lib/readutmp.c: Likewise.
6537         * lib/readutmp.h: Likewise.
6538         * lib/realloc.c: Likewise.
6539         * lib/relocwrapper.c: Likewise.
6540         * lib/rename-dest-slash.c: Likewise.
6541         * lib/rename.c: Likewise.
6542         * lib/rmdir.c: Likewise.
6543         * lib/rpmatch.c: Likewise.
6544         * lib/safe-read.c: Likewise.
6545         * lib/safe-read.h: Likewise.
6546         * lib/safe-write.c: Likewise.
6547         * lib/safe-write.h: Likewise.
6548         * lib/same-inode.h: Likewise.
6549         * lib/same.c: Likewise.
6550         * lib/same.h: Likewise.
6551         * lib/save-cwd.c: Likewise.
6552         * lib/save-cwd.h: Likewise.
6553         * lib/savedir.c: Likewise.
6554         * lib/savedir.h: Likewise.
6555         * lib/savewd.c: Likewise.
6556         * lib/savewd.h: Likewise.
6557         * lib/search.in.h: Likewise.
6558         * lib/setenv.c: Likewise.
6559         * lib/setenv.h: Likewise.
6560         * lib/settime.c: Likewise.
6561         * lib/sh-quote.c: Likewise.
6562         * lib/sh-quote.h: Likewise.
6563         * lib/sig2str.c: Likewise.
6564         * lib/sig2str.h: Likewise.
6565         * lib/signal.in.h: Likewise.
6566         * lib/signbitd.c: Likewise.
6567         * lib/signbitf.c: Likewise.
6568         * lib/signbitl.c: Likewise.
6569         * lib/sigprocmask.c: Likewise.
6570         * lib/sincosl.c: Likewise.
6571         * lib/sleep.c: Likewise.
6572         * lib/sprintf.c: Likewise.
6573         * lib/sqrtl.c: Likewise.
6574         * lib/stat-time.h: Likewise.
6575         * lib/stdio--.h: Likewise.
6576         * lib/stdio-safer.h: Likewise.
6577         * lib/stdlib--.h: Likewise.
6578         * lib/stdlib-safer.h: Likewise.
6579         * lib/stdlib.in.h: Likewise.
6580         * lib/stpcpy.c: Likewise.
6581         * lib/stpncpy.c: Likewise.
6582         * lib/strchrnul.c: Likewise.
6583         * lib/strcspn.c: Likewise.
6584         * lib/strerror.c: Likewise.
6585         * lib/strftime.c: Likewise.
6586         * lib/strftime.h: Likewise.
6587         * lib/striconveh.c: Likewise.
6588         * lib/striconveh.h: Likewise.
6589         * lib/striconveha.c: Likewise.
6590         * lib/striconveha.h: Likewise.
6591         * lib/stripslash.c: Likewise.
6592         * lib/strnlen1.c: Likewise.
6593         * lib/strnlen1.h: Likewise.
6594         * lib/strtod.c: Likewise.
6595         * lib/strtoimax.c: Likewise.
6596         * lib/strtok_r.c: Likewise.
6597         * lib/strtol.c: Likewise.
6598         * lib/strtoll.c: Likewise.
6599         * lib/strtoul.c: Likewise.
6600         * lib/strtoull.c: Likewise.
6601         * lib/sysexits.in.h: Likewise.
6602         * lib/tempname.c: Likewise.
6603         * lib/tempname.h: Likewise.
6604         * lib/timespec.h: Likewise.
6605         * lib/tls.c: Likewise.
6606         * lib/tls.h: Likewise.
6607         * lib/tmpdir.c: Likewise.
6608         * lib/tmpdir.h: Likewise.
6609         * lib/tmpfile-safer.c: Likewise.
6610         * lib/tmpfile.c: Likewise.
6611         * lib/trigl.c: Likewise.
6612         * lib/trigl.h: Likewise.
6613         * lib/trim.c: Likewise.
6614         * lib/trim.h: Likewise.
6615         * lib/trunc.c: Likewise.
6616         * lib/truncf.c: Likewise.
6617         * lib/truncl.c: Likewise.
6618         * lib/tsearch.c: Likewise.
6619         * lib/unicodeio.c: Likewise.
6620         * lib/unicodeio.h: Likewise.
6621         * lib/unistd--.h: Likewise.
6622         * lib/unistd-safer.h: Likewise.
6623         * lib/unistdio/ulc-fprintf.c: Likewise.
6624         * lib/unistdio/ulc-vfprintf.c: Likewise.
6625         * lib/unlinkdir.c: Likewise.
6626         * lib/unlinkdir.h: Likewise.
6627         * lib/unlocked-io.h: Likewise.
6628         * lib/unsetenv.c: Likewise.
6629         * lib/userspec.c: Likewise.
6630         * lib/utime.c: Likewise.
6631         * lib/utimecmp.c: Likewise.
6632         * lib/utimecmp.h: Likewise.
6633         * lib/utimens.c: Likewise.
6634         * lib/verify.h: Likewise.
6635         * lib/verror.c: Likewise.
6636         * lib/verror.h: Likewise.
6637         * lib/version-etc-fsf.c: Likewise.
6638         * lib/version-etc.c: Likewise.
6639         * lib/version-etc.h: Likewise.
6640         * lib/vfprintf.c: Likewise.
6641         * lib/vprintf.c: Likewise.
6642         * lib/vsprintf.c: Likewise.
6643         * lib/w32spawn.h: Likewise.
6644         * lib/wait-process.c: Likewise.
6645         * lib/wait-process.h: Likewise.
6646         * lib/wcwidth.c: Likewise.
6647         * lib/write-any-file.c: Likewise.
6648         * lib/xalloc-die.c: Likewise.
6649         * lib/xalloc.h: Likewise.
6650         * lib/xasprintf.c: Likewise.
6651         * lib/xgetcwd.c: Likewise.
6652         * lib/xgetcwd.h: Likewise.
6653         * lib/xgetdomainname.c: Likewise.
6654         * lib/xgetdomainname.h: Likewise.
6655         * lib/xgethostname.c: Likewise.
6656         * lib/xmalloc.c: Likewise.
6657         * lib/xmalloca.c: Likewise.
6658         * lib/xmalloca.h: Likewise.
6659         * lib/xmemcoll.c: Likewise.
6660         * lib/xnanosleep.c: Likewise.
6661         * lib/xreadlink.c: Likewise.
6662         * lib/xreadlink.h: Likewise.
6663         * lib/xsetenv.c: Likewise.
6664         * lib/xsetenv.h: Likewise.
6665         * lib/xstriconv.c: Likewise.
6666         * lib/xstriconv.h: Likewise.
6667         * lib/xstrndup.c: Likewise.
6668         * lib/xstrndup.h: Likewise.
6669         * lib/xstrtod.c: Likewise.
6670         * lib/xstrtod.h: Likewise.
6671         * lib/xstrtol-error.c: Likewise.
6672         * lib/xstrtol.c: Likewise.
6673         * lib/xstrtol.h: Likewise.
6674         * lib/xtime.h: Likewise.
6675         * lib/xvasprintf.c: Likewise.
6676         * lib/xvasprintf.h: Likewise.
6677         * lib/yesno.c: Likewise.
6678         * lib/yesno.h: Likewise.
6679         * posix-modules: Likewise.
6680         * tests/test-alloca-opt.c: Likewise.
6681         * tests/test-arcfour.c: Likewise.
6682         * tests/test-arctwo.c: Likewise.
6683         * tests/test-argmatch.c: Likewise.
6684         * tests/test-argp-2.sh: Likewise.
6685         * tests/test-argp.c: Likewise.
6686         * tests/test-arpa_inet.c: Likewise.
6687         * tests/test-array_list.c: Likewise.
6688         * tests/test-array_oset.c: Likewise.
6689         * tests/test-atexit.c: Likewise.
6690         * tests/test-avltree_list.c: Likewise.
6691         * tests/test-avltree_oset.c: Likewise.
6692         * tests/test-avltreehash_list.c: Likewise.
6693         * tests/test-base64.c: Likewise.
6694         * tests/test-binary-io.c: Likewise.
6695         * tests/test-byteswap.c: Likewise.
6696         * tests/test-c-ctype.c: Likewise.
6697         * tests/test-c-strcasecmp.c: Likewise.
6698         * tests/test-c-strcasestr.c: Likewise.
6699         * tests/test-c-strncasecmp.c: Likewise.
6700         * tests/test-c-strstr.c: Likewise.
6701         * tests/test-canonicalize-lgpl.c: Likewise.
6702         * tests/test-canonicalize.c: Likewise.
6703         * tests/test-carray_list.c: Likewise.
6704         * tests/test-ceilf.c: Likewise.
6705         * tests/test-ceill.c: Likewise.
6706         * tests/test-count-one-bits.c: Likewise.
6707         * tests/test-crc.c: Likewise.
6708         * tests/test-dirname.c: Likewise.
6709         * tests/test-fbufmode.c: Likewise.
6710         * tests/test-fcntl.c: Likewise.
6711         * tests/test-fflush.c: Likewise.
6712         * tests/test-floorf.c: Likewise.
6713         * tests/test-floorl.c: Likewise.
6714         * tests/test-fopen.c: Likewise.
6715         * tests/test-fprintf-posix.c: Likewise.
6716         * tests/test-fprintf-posix.h: Likewise.
6717         * tests/test-fpurge.c: Likewise.
6718         * tests/test-freadable.c: Likewise.
6719         * tests/test-freadahead.c: Likewise.
6720         * tests/test-freading.c: Likewise.
6721         * tests/test-freopen.c: Likewise.
6722         * tests/test-frexp.c: Likewise.
6723         * tests/test-frexpl.c: Likewise.
6724         * tests/test-fseek.c: Likewise.
6725         * tests/test-fseeko.c: Likewise.
6726         * tests/test-fseterr.c: Likewise.
6727         * tests/test-fstrcmp.c: Likewise.
6728         * tests/test-ftell.c: Likewise.
6729         * tests/test-ftello.c: Likewise.
6730         * tests/test-fwritable.c: Likewise.
6731         * tests/test-fwriting.c: Likewise.
6732         * tests/test-getaddrinfo.c: Likewise.
6733         * tests/test-getpass.c: Likewise.
6734         * tests/test-gettimeofday.c: Likewise.
6735         * tests/test-hmac-md5.c: Likewise.
6736         * tests/test-hmac-sha1.c: Likewise.
6737         * tests/test-iconv.c: Likewise.
6738         * tests/test-iconvme.c: Likewise.
6739         * tests/test-inttypes.c: Likewise.
6740         * tests/test-isnan.c: Likewise.
6741         * tests/test-isnanf.c: Likewise.
6742         * tests/test-isnanl-nolibm.c: Likewise.
6743         * tests/test-isnanl.c: Likewise.
6744         * tests/test-isnanl.h: Likewise.
6745         * tests/test-ldexpl.c: Likewise.
6746         * tests/test-linked_list.c: Likewise.
6747         * tests/test-linkedhash_list.c: Likewise.
6748         * tests/test-locale.c: Likewise.
6749         * tests/test-localename.c: Likewise.
6750         * tests/test-lock.c: Likewise.
6751         * tests/test-lseek.c: Likewise.
6752         * tests/test-malloca.c: Likewise.
6753         * tests/test-math.c: Likewise.
6754         * tests/test-mbscasecmp.c: Likewise.
6755         * tests/test-mbscasestr1.c: Likewise.
6756         * tests/test-mbscasestr2.c: Likewise.
6757         * tests/test-mbscasestr3.c: Likewise.
6758         * tests/test-mbscasestr4.c: Likewise.
6759         * tests/test-mbschr.c: Likewise.
6760         * tests/test-mbscspn.c: Likewise.
6761         * tests/test-mbsncasecmp.c: Likewise.
6762         * tests/test-mbspbrk.c: Likewise.
6763         * tests/test-mbspcasecmp.c: Likewise.
6764         * tests/test-mbsrchr.c: Likewise.
6765         * tests/test-mbsspn.c: Likewise.
6766         * tests/test-mbsstr1.c: Likewise.
6767         * tests/test-mbsstr2.c: Likewise.
6768         * tests/test-mbsstr3.c: Likewise.
6769         * tests/test-md5.c: Likewise.
6770         * tests/test-memmem.c: Likewise.
6771         * tests/test-netinet_in.c: Likewise.
6772         * tests/test-open.c: Likewise.
6773         * tests/test-printf-frexp.c: Likewise.
6774         * tests/test-printf-frexpl.c: Likewise.
6775         * tests/test-printf-posix.c: Likewise.
6776         * tests/test-printf-posix.h: Likewise.
6777         * tests/test-rbtree_list.c: Likewise.
6778         * tests/test-rbtree_oset.c: Likewise.
6779         * tests/test-rbtreehash_list.c: Likewise.
6780         * tests/test-read-file.c: Likewise.
6781         * tests/test-rijndael.c: Likewise.
6782         * tests/test-search.c: Likewise.
6783         * tests/test-signbit.c: Likewise.
6784         * tests/test-sleep.c: Likewise.
6785         * tests/test-snprintf-posix.c: Likewise.
6786         * tests/test-snprintf-posix.h: Likewise.
6787         * tests/test-snprintf.c: Likewise.
6788         * tests/test-sprintf-posix.c: Likewise.
6789         * tests/test-sprintf-posix.h: Likewise.
6790         * tests/test-stat-time.c: Likewise.
6791         * tests/test-stdbool.c: Likewise.
6792         * tests/test-stdint.c: Likewise.
6793         * tests/test-stdio.c: Likewise.
6794         * tests/test-stdlib.c: Likewise.
6795         * tests/test-stpncpy.c: Likewise.
6796         * tests/test-strcasestr.c: Likewise.
6797         * tests/test-striconv.c: Likewise.
6798         * tests/test-striconveh.c: Likewise.
6799         * tests/test-striconveha.c: Likewise.
6800         * tests/test-string.c: Likewise.
6801         * tests/test-sys_select.c: Likewise.
6802         * tests/test-sys_socket.c: Likewise.
6803         * tests/test-sys_stat.c: Likewise.
6804         * tests/test-sys_time.c: Likewise.
6805         * tests/test-sysexits.c: Likewise.
6806         * tests/test-time.c: Likewise.
6807         * tests/test-tls.c: Likewise.
6808         * tests/test-trunc.c: Likewise.
6809         * tests/test-truncf.c: Likewise.
6810         * tests/test-truncl.c: Likewise.
6811         * tests/test-unistd.c: Likewise.
6812         * tests/test-vasnprintf-posix.c: Likewise.
6813         * tests/test-vasnprintf-posix2.c: Likewise.
6814         * tests/test-vasnprintf.c: Likewise.
6815         * tests/test-vasprintf-posix.c: Likewise.
6816         * tests/test-vasprintf.c: Likewise.
6817         * tests/test-verify.c: Likewise.
6818         * tests/test-vfprintf-posix.c: Likewise.
6819         * tests/test-vprintf-posix.c: Likewise.
6820         * tests/test-vsnprintf-posix.c: Likewise.
6821         * tests/test-vsnprintf.c: Likewise.
6822         * tests/test-vsprintf-posix.c: Likewise.
6823         * tests/test-wchar.c: Likewise.
6824         * tests/test-wctype.c: Likewise.
6825         * tests/test-wcwidth.c: Likewise.
6826         * tests/test-xstrtol.c: Likewise.
6827         * tests/test-xvasprintf.c: Likewise.
6828         * tests/uniconv/test-u16-conv-from-enc.c: Likewise.
6829         * tests/uniconv/test-u16-conv-to-enc.c: Likewise.
6830         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
6831         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
6832         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
6833         * tests/uniconv/test-u32-conv-to-enc.c: Likewise.
6834         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
6835         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
6836         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
6837         * tests/uniconv/test-u8-conv-to-enc.c: Likewise.
6838         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
6839         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
6840         * tests/uniname/test-uninames.c: Likewise.
6841         * tests/unistdio/test-u16-asnprintf1.c: Likewise.
6842         * tests/unistdio/test-u16-asnprintf1.h: Likewise.
6843         * tests/unistdio/test-u16-printf1.h: Likewise.
6844         * tests/unistdio/test-u16-vasnprintf1.c: Likewise.
6845         * tests/unistdio/test-u16-vasnprintf2.c: Likewise.
6846         * tests/unistdio/test-u16-vasnprintf3.c: Likewise.
6847         * tests/unistdio/test-u16-vasprintf1.c: Likewise.
6848         * tests/unistdio/test-u16-vsnprintf1.c: Likewise.
6849         * tests/unistdio/test-u16-vsprintf1.c: Likewise.
6850         * tests/unistdio/test-u32-asnprintf1.c: Likewise.
6851         * tests/unistdio/test-u32-asnprintf1.h: Likewise.
6852         * tests/unistdio/test-u32-printf1.h: Likewise.
6853         * tests/unistdio/test-u32-vasnprintf1.c: Likewise.
6854         * tests/unistdio/test-u32-vasnprintf2.c: Likewise.
6855         * tests/unistdio/test-u32-vasnprintf3.c: Likewise.
6856         * tests/unistdio/test-u32-vasprintf1.c: Likewise.
6857         * tests/unistdio/test-u32-vsnprintf1.c: Likewise.
6858         * tests/unistdio/test-u32-vsprintf1.c: Likewise.
6859         * tests/unistdio/test-u8-asnprintf1.c: Likewise.
6860         * tests/unistdio/test-u8-asnprintf1.h: Likewise.
6861         * tests/unistdio/test-u8-printf1.h: Likewise.
6862         * tests/unistdio/test-u8-vasnprintf1.c: Likewise.
6863         * tests/unistdio/test-u8-vasnprintf2.c: Likewise.
6864         * tests/unistdio/test-u8-vasnprintf3.c: Likewise.
6865         * tests/unistdio/test-u8-vasprintf1.c: Likewise.
6866         * tests/unistdio/test-u8-vsnprintf1.c: Likewise.
6867         * tests/unistdio/test-u8-vsprintf1.c: Likewise.
6868         * tests/unistdio/test-ulc-asnprintf1.c: Likewise.
6869         * tests/unistdio/test-ulc-asnprintf1.h: Likewise.
6870         * tests/unistdio/test-ulc-printf1.h: Likewise.
6871         * tests/unistdio/test-ulc-vasnprintf1.c: Likewise.
6872         * tests/unistdio/test-ulc-vasnprintf2.c: Likewise.
6873         * tests/unistdio/test-ulc-vasnprintf3.c: Likewise.
6874         * tests/unistdio/test-ulc-vasprintf1.c: Likewise.
6875         * tests/unistdio/test-ulc-vsnprintf1.c: Likewise.
6876         * tests/unistdio/test-ulc-vsprintf1.c: Likewise.
6877         * tests/uniwidth/test-u16-strwidth.c: Likewise.
6878         * tests/uniwidth/test-u16-width.c: Likewise.
6879         * tests/uniwidth/test-u32-strwidth.c: Likewise.
6880         * tests/uniwidth/test-u32-width.c: Likewise.
6881         * tests/uniwidth/test-u8-strwidth.c: Likewise.
6882         * tests/uniwidth/test-u8-width.c: Likewise.
6883         * tests/uniwidth/test-uc_width.c: Likewise.
6884         * config/srclist-update: Likewise.
6885         (fixlicense): Update to GPLv3+.
6886
6887         Change copyright notice from LGPLv2.1+ to LGPLv3+.
6888         * tests/test-tsearch.c: Change copyright notice.
6889
6890         Change copyright notice from LGPLv2.0+ to LGPLv3+.
6891         * lib/c-strcaseeq.h: Change copyright notice.
6892         * lib/streq.h: Likewise.
6893         * lib/uniconv.h: Likewise.
6894         * lib/uniconv/u-conv-from-enc.h: Likewise.
6895         * lib/uniconv/u-conv-to-enc.h: Likewise.
6896         * lib/uniconv/u-strconv-from-enc.h: Likewise.
6897         * lib/uniconv/u-strconv-to-enc.h: Likewise.
6898         * lib/uniconv/u16-conv-from-enc.c: Likewise.
6899         * lib/uniconv/u16-conv-to-enc.c: Likewise.
6900         * lib/uniconv/u16-strconv-from-enc.c: Likewise.
6901         * lib/uniconv/u16-strconv-from-locale.c: Likewise.
6902         * lib/uniconv/u16-strconv-to-enc.c: Likewise.
6903         * lib/uniconv/u16-strconv-to-locale.c: Likewise.
6904         * lib/uniconv/u32-conv-from-enc.c: Likewise.
6905         * lib/uniconv/u32-conv-to-enc.c: Likewise.
6906         * lib/uniconv/u32-strconv-from-enc.c: Likewise.
6907         * lib/uniconv/u32-strconv-from-locale.c: Likewise.
6908         * lib/uniconv/u32-strconv-to-enc.c: Likewise.
6909         * lib/uniconv/u32-strconv-to-locale.c: Likewise.
6910         * lib/uniconv/u8-conv-from-enc.c: Likewise.
6911         * lib/uniconv/u8-conv-to-enc.c: Likewise.
6912         * lib/uniconv/u8-strconv-from-enc.c: Likewise.
6913         * lib/uniconv/u8-strconv-from-locale.c: Likewise.
6914         * lib/uniconv/u8-strconv-to-enc.c: Likewise.
6915         * lib/uniconv/u8-strconv-to-locale.c: Likewise.
6916         * lib/uniname.h: Likewise.
6917         * lib/uniname/uniname.c: Likewise.
6918         * lib/unistdio.h: Likewise.
6919         * lib/unistdio/u-asnprintf.h: Likewise.
6920         * lib/unistdio/u-asprintf.h: Likewise.
6921         * lib/unistdio/u-printf-args.c: Likewise.
6922         * lib/unistdio/u-printf-args.h: Likewise.
6923         * lib/unistdio/u-printf-parse.h: Likewise.
6924         * lib/unistdio/u-snprintf.h: Likewise.
6925         * lib/unistdio/u-sprintf.h: Likewise.
6926         * lib/unistdio/u-vasprintf.h: Likewise.
6927         * lib/unistdio/u-vsnprintf.h: Likewise.
6928         * lib/unistdio/u-vsprintf.h: Likewise.
6929         * lib/unistdio/u16-asnprintf.c: Likewise.
6930         * lib/unistdio/u16-asprintf.c: Likewise.
6931         * lib/unistdio/u16-printf-parse.c: Likewise.
6932         * lib/unistdio/u16-snprintf.c: Likewise.
6933         * lib/unistdio/u16-sprintf.c: Likewise.
6934         * lib/unistdio/u16-u16-asnprintf.c: Likewise.
6935         * lib/unistdio/u16-u16-asprintf.c: Likewise.
6936         * lib/unistdio/u16-u16-snprintf.c: Likewise.
6937         * lib/unistdio/u16-u16-sprintf.c: Likewise.
6938         * lib/unistdio/u16-u16-vasnprintf.c: Likewise.
6939         * lib/unistdio/u16-u16-vasprintf.c: Likewise.
6940         * lib/unistdio/u16-u16-vsnprintf.c: Likewise.
6941         * lib/unistdio/u16-u16-vsprintf.c: Likewise.
6942         * lib/unistdio/u16-vasnprintf.c: Likewise.
6943         * lib/unistdio/u16-vasprintf.c: Likewise.
6944         * lib/unistdio/u16-vsnprintf.c: Likewise.
6945         * lib/unistdio/u16-vsprintf.c: Likewise.
6946         * lib/unistdio/u32-asnprintf.c: Likewise.
6947         * lib/unistdio/u32-asprintf.c: Likewise.
6948         * lib/unistdio/u32-printf-parse.c: Likewise.
6949         * lib/unistdio/u32-snprintf.c: Likewise.
6950         * lib/unistdio/u32-sprintf.c: Likewise.
6951         * lib/unistdio/u32-u32-asnprintf.c: Likewise.
6952         * lib/unistdio/u32-u32-asprintf.c: Likewise.
6953         * lib/unistdio/u32-u32-snprintf.c: Likewise.
6954         * lib/unistdio/u32-u32-sprintf.c: Likewise.
6955         * lib/unistdio/u32-u32-vasnprintf.c: Likewise.
6956         * lib/unistdio/u32-u32-vasprintf.c: Likewise.
6957         * lib/unistdio/u32-u32-vsnprintf.c: Likewise.
6958         * lib/unistdio/u32-u32-vsprintf.c: Likewise.
6959         * lib/unistdio/u32-vasnprintf.c: Likewise.
6960         * lib/unistdio/u32-vasprintf.c: Likewise.
6961         * lib/unistdio/u32-vsnprintf.c: Likewise.
6962         * lib/unistdio/u32-vsprintf.c: Likewise.
6963         * lib/unistdio/u8-asnprintf.c: Likewise.
6964         * lib/unistdio/u8-asprintf.c: Likewise.
6965         * lib/unistdio/u8-printf-parse.c: Likewise.
6966         * lib/unistdio/u8-snprintf.c: Likewise.
6967         * lib/unistdio/u8-sprintf.c: Likewise.
6968         * lib/unistdio/u8-u8-asnprintf.c: Likewise.
6969         * lib/unistdio/u8-u8-asprintf.c: Likewise.
6970         * lib/unistdio/u8-u8-snprintf.c: Likewise.
6971         * lib/unistdio/u8-u8-sprintf.c: Likewise.
6972         * lib/unistdio/u8-u8-vasnprintf.c: Likewise.
6973         * lib/unistdio/u8-u8-vasprintf.c: Likewise.
6974         * lib/unistdio/u8-u8-vsnprintf.c: Likewise.
6975         * lib/unistdio/u8-u8-vsprintf.c: Likewise.
6976         * lib/unistdio/u8-vasnprintf.c: Likewise.
6977         * lib/unistdio/u8-vasprintf.c: Likewise.
6978         * lib/unistdio/u8-vsnprintf.c: Likewise.
6979         * lib/unistdio/u8-vsprintf.c: Likewise.
6980         * lib/unistdio/ulc-asnprintf.c: Likewise.
6981         * lib/unistdio/ulc-asprintf.c: Likewise.
6982         * lib/unistdio/ulc-printf-parse.c: Likewise.
6983         * lib/unistdio/ulc-snprintf.c: Likewise.
6984         * lib/unistdio/ulc-sprintf.c: Likewise.
6985         * lib/unistdio/ulc-vasnprintf.c: Likewise.
6986         * lib/unistdio/ulc-vasprintf.c: Likewise.
6987         * lib/unistdio/ulc-vsnprintf.c: Likewise.
6988         * lib/unistdio/ulc-vsprintf.c: Likewise.
6989         * lib/unistr.h: Likewise.
6990         * lib/unistr/u-cpy-alloc.h: Likewise.
6991         * lib/unistr/u-cpy.h: Likewise.
6992         * lib/unistr/u-endswith.h: Likewise.
6993         * lib/unistr/u-move.h: Likewise.
6994         * lib/unistr/u-set.h: Likewise.
6995         * lib/unistr/u-startswith.h: Likewise.
6996         * lib/unistr/u-stpcpy.h: Likewise.
6997         * lib/unistr/u-stpncpy.h: Likewise.
6998         * lib/unistr/u-strcat.h: Likewise.
6999         * lib/unistr/u-strcpy.h: Likewise.
7000         * lib/unistr/u-strcspn.h: Likewise.
7001         * lib/unistr/u-strdup.h: Likewise.
7002         * lib/unistr/u-strlen.h: Likewise.
7003         * lib/unistr/u-strncat.h: Likewise.
7004         * lib/unistr/u-strncpy.h: Likewise.
7005         * lib/unistr/u-strnlen.h: Likewise.
7006         * lib/unistr/u-strpbrk.h: Likewise.
7007         * lib/unistr/u-strspn.h: Likewise.
7008         * lib/unistr/u-strstr.h: Likewise.
7009         * lib/unistr/u-strtok.h: Likewise.
7010         * lib/unistr/u16-check.c: Likewise.
7011         * lib/unistr/u16-chr.c: Likewise.
7012         * lib/unistr/u16-cmp.c: Likewise.
7013         * lib/unistr/u16-cpy-alloc.c: Likewise.
7014         * lib/unistr/u16-cpy.c: Likewise.
7015         * lib/unistr/u16-endswith.c: Likewise.
7016         * lib/unistr/u16-mblen.c: Likewise.
7017         * lib/unistr/u16-mbsnlen.c: Likewise.
7018         * lib/unistr/u16-mbtouc-aux.c: Likewise.
7019         * lib/unistr/u16-mbtouc-unsafe-aux.c: Likewise.
7020         * lib/unistr/u16-mbtouc-unsafe.c: Likewise.
7021         * lib/unistr/u16-mbtouc.c: Likewise.
7022         * lib/unistr/u16-mbtoucr.c: Likewise.
7023         * lib/unistr/u16-move.c: Likewise.
7024         * lib/unistr/u16-next.c: Likewise.
7025         * lib/unistr/u16-prev.c: Likewise.
7026         * lib/unistr/u16-set.c: Likewise.
7027         * lib/unistr/u16-startswith.c: Likewise.
7028         * lib/unistr/u16-stpcpy.c: Likewise.
7029         * lib/unistr/u16-stpncpy.c: Likewise.
7030         * lib/unistr/u16-strcat.c: Likewise.
7031         * lib/unistr/u16-strchr.c: Likewise.
7032         * lib/unistr/u16-strcmp.c: Likewise.
7033         * lib/unistr/u16-strcpy.c: Likewise.
7034         * lib/unistr/u16-strcspn.c: Likewise.
7035         * lib/unistr/u16-strdup.c: Likewise.
7036         * lib/unistr/u16-strlen.c: Likewise.
7037         * lib/unistr/u16-strmblen.c: Likewise.
7038         * lib/unistr/u16-strmbtouc.c: Likewise.
7039         * lib/unistr/u16-strncat.c: Likewise.
7040         * lib/unistr/u16-strncmp.c: Likewise.
7041         * lib/unistr/u16-strncpy.c: Likewise.
7042         * lib/unistr/u16-strnlen.c: Likewise.
7043         * lib/unistr/u16-strpbrk.c: Likewise.
7044         * lib/unistr/u16-strrchr.c: Likewise.
7045         * lib/unistr/u16-strspn.c: Likewise.
7046         * lib/unistr/u16-strstr.c: Likewise.
7047         * lib/unistr/u16-strtok.c: Likewise.
7048         * lib/unistr/u16-to-u32.c: Likewise.
7049         * lib/unistr/u16-to-u8.c: Likewise.
7050         * lib/unistr/u16-uctomb-aux.c: Likewise.
7051         * lib/unistr/u16-uctomb.c: Likewise.
7052         * lib/unistr/u32-check.c: Likewise.
7053         * lib/unistr/u32-chr.c: Likewise.
7054         * lib/unistr/u32-cmp.c: Likewise.
7055         * lib/unistr/u32-cpy-alloc.c: Likewise.
7056         * lib/unistr/u32-cpy.c: Likewise.
7057         * lib/unistr/u32-endswith.c: Likewise.
7058         * lib/unistr/u32-mblen.c: Likewise.
7059         * lib/unistr/u32-mbsnlen.c: Likewise.
7060         * lib/unistr/u32-mbtouc-unsafe.c: Likewise.
7061         * lib/unistr/u32-mbtouc.c: Likewise.
7062         * lib/unistr/u32-mbtoucr.c: Likewise.
7063         * lib/unistr/u32-move.c: Likewise.
7064         * lib/unistr/u32-next.c: Likewise.
7065         * lib/unistr/u32-prev.c: Likewise.
7066         * lib/unistr/u32-set.c: Likewise.
7067         * lib/unistr/u32-startswith.c: Likewise.
7068         * lib/unistr/u32-stpcpy.c: Likewise.
7069         * lib/unistr/u32-stpncpy.c: Likewise.
7070         * lib/unistr/u32-strcat.c: Likewise.
7071         * lib/unistr/u32-strchr.c: Likewise.
7072         * lib/unistr/u32-strcmp.c: Likewise.
7073         * lib/unistr/u32-strcpy.c: Likewise.
7074         * lib/unistr/u32-strcspn.c: Likewise.
7075         * lib/unistr/u32-strdup.c: Likewise.
7076         * lib/unistr/u32-strlen.c: Likewise.
7077         * lib/unistr/u32-strmblen.c: Likewise.
7078         * lib/unistr/u32-strmbtouc.c: Likewise.
7079         * lib/unistr/u32-strncat.c: Likewise.
7080         * lib/unistr/u32-strncmp.c: Likewise.
7081         * lib/unistr/u32-strncpy.c: Likewise.
7082         * lib/unistr/u32-strnlen.c: Likewise.
7083         * lib/unistr/u32-strpbrk.c: Likewise.
7084         * lib/unistr/u32-strrchr.c: Likewise.
7085         * lib/unistr/u32-strspn.c: Likewise.
7086         * lib/unistr/u32-strstr.c: Likewise.
7087         * lib/unistr/u32-strtok.c: Likewise.
7088         * lib/unistr/u32-to-u16.c: Likewise.
7089         * lib/unistr/u32-to-u8.c: Likewise.
7090         * lib/unistr/u32-uctomb.c: Likewise.
7091         * lib/unistr/u8-check.c: Likewise.
7092         * lib/unistr/u8-chr.c: Likewise.
7093         * lib/unistr/u8-cmp.c: Likewise.
7094         * lib/unistr/u8-cpy-alloc.c: Likewise.
7095         * lib/unistr/u8-cpy.c: Likewise.
7096         * lib/unistr/u8-endswith.c: Likewise.
7097         * lib/unistr/u8-mblen.c: Likewise.
7098         * lib/unistr/u8-mbsnlen.c: Likewise.
7099         * lib/unistr/u8-mbtouc-aux.c: Likewise.
7100         * lib/unistr/u8-mbtouc-unsafe-aux.c: Likewise.
7101         * lib/unistr/u8-mbtouc-unsafe.c: Likewise.
7102         * lib/unistr/u8-mbtouc.c: Likewise.
7103         * lib/unistr/u8-mbtoucr.c: Likewise.
7104         * lib/unistr/u8-move.c: Likewise.
7105         * lib/unistr/u8-next.c: Likewise.
7106         * lib/unistr/u8-prev.c: Likewise.
7107         * lib/unistr/u8-set.c: Likewise.
7108         * lib/unistr/u8-startswith.c: Likewise.
7109         * lib/unistr/u8-stpcpy.c: Likewise.
7110         * lib/unistr/u8-stpncpy.c: Likewise.
7111         * lib/unistr/u8-strcat.c: Likewise.
7112         * lib/unistr/u8-strchr.c: Likewise.
7113         * lib/unistr/u8-strcmp.c: Likewise.
7114         * lib/unistr/u8-strcpy.c: Likewise.
7115         * lib/unistr/u8-strcspn.c: Likewise.
7116         * lib/unistr/u8-strdup.c: Likewise.
7117         * lib/unistr/u8-strlen.c: Likewise.
7118         * lib/unistr/u8-strmblen.c: Likewise.
7119         * lib/unistr/u8-strmbtouc.c: Likewise.
7120         * lib/unistr/u8-strncat.c: Likewise.
7121         * lib/unistr/u8-strncmp.c: Likewise.
7122         * lib/unistr/u8-strncpy.c: Likewise.
7123         * lib/unistr/u8-strnlen.c: Likewise.
7124         * lib/unistr/u8-strpbrk.c: Likewise.
7125         * lib/unistr/u8-strrchr.c: Likewise.
7126         * lib/unistr/u8-strspn.c: Likewise.
7127         * lib/unistr/u8-strstr.c: Likewise.
7128         * lib/unistr/u8-strtok.c: Likewise.
7129         * lib/unistr/u8-to-u16.c: Likewise.
7130         * lib/unistr/u8-to-u32.c: Likewise.
7131         * lib/unistr/u8-uctomb-aux.c: Likewise.
7132         * lib/unistr/u8-uctomb.c: Likewise.
7133         * lib/unitypes.h: Likewise.
7134         * lib/uniwidth.h: Likewise.
7135         * lib/uniwidth/cjk.h: Likewise.
7136         * lib/uniwidth/u16-strwidth.c: Likewise.
7137         * lib/uniwidth/u16-width.c: Likewise.
7138         * lib/uniwidth/u32-strwidth.c: Likewise.
7139         * lib/uniwidth/u32-width.c: Likewise.
7140         * lib/uniwidth/u8-strwidth.c: Likewise.
7141         * lib/uniwidth/u8-width.c: Likewise.
7142         * lib/uniwidth/width.c: Likewise.
7143
7144 2007-10-07  Bruno Haible  <bruno@clisp.org>
7145
7146         * lib/inttypes.in.h: Change copyright notice from LGPL to GPL.
7147         The file is still under LGPL (see modules/inttypes).
7148
7149 2007-10-06  Bruno Haible  <bruno@clisp.org>
7150
7151         * modules/trunc (Dependencies): Add 'extensions'.
7152         * m4/trunc.m4 (gl_FUNC_TRUNC): Require gl_USE_SYSTEM_EXTENSIONS.
7153         Reported by Ben Pfaff <blp@gnu.org>.
7154
7155 2007-10-06  Bruno Haible  <bruno@clisp.org>
7156
7157         * modules/freopen-tests: New file.
7158         * tests/test-freopen.c: New file.
7159
7160         * modules/fopen-tests: New file.
7161         * tests/test-fopen.c: New file.
7162
7163         * modules/fopen: New file.
7164         * lib/fopen.c: New file.
7165         * m4/fopen.m4: New file.
7166         * modules/freopen: New file.
7167         * lib/freopen.c: New file.
7168         * m4/freopen.m4: New file.
7169         * lib/stdio.in.h (fopen, freopen): New declarations.
7170         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize also GNULIB_FOPEN,
7171         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
7172         * modules/stdio (Makefile.am): Substitute also GNULIB_FOPEN,
7173         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
7174         * doc/functions/fopen.texi: Mention the 'fopen' module.
7175         * doc/functions/freopen.texi: Mention the 'freopen' module.
7176
7177 2007-10-06  Bruno Haible  <bruno@clisp.org>
7178
7179         * modules/open-tests: New file.
7180         * tests/test-open.c: New file.
7181
7182         * modules/open: New file.
7183         * lib/open.c: New file.
7184         * m4/open.m4: New file.
7185         * lib/fchdir.c (open): If the gnulib module 'open' is used, do what
7186         lib/open.c does.
7187         * lib/fcntl.in.h (open): Declare also if replaced by the 'open' module.
7188         * m4/fcntl_h.m4 (gl_FCNTL_MODULE_INDICATOR, gl_FCNTL_H_DEFAULTS): New
7189         macros.
7190         (gl_FCNTL_H): Require gl_FCNTL_H_DEFAULTS.
7191         * modules/fcntl (Makefile.am): Also substitute GNULIB_OPEN and
7192         REPLACE_OPEN.
7193         * doc/functions/open.texi: Mention the 'open' module.
7194
7195 2007-10-04  Bruno Haible  <bruno@clisp.org>
7196
7197         * modules/ceill-tests: New file.
7198         * tests/test-ceill.c: New file.
7199
7200         * modules/ceill: New file.
7201         * lib/ceill.c: Replace entire file.
7202         * m4/ceill.m4: New file.
7203         * lib/math.in.h (ceill): Replace declaration.
7204         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILL.
7205         * modules/math (Makefile.am): Substitute also GNULIB_CEILL.
7206         * doc/functions/ceill.texi: Mention the 'ceill' module.
7207         * modules/mathl (Files): Remove lib/ceill.c.
7208         (Depends-on): Add ceill.
7209
7210 2007-10-04  Bruno Haible  <bruno@clisp.org>
7211
7212         * modules/ceilf-tests: New file.
7213         * tests/test-ceilf.c: New file.
7214
7215         * modules/ceilf: New file.
7216         * lib/ceil.c: New file.
7217         * lib/ceilf.c: New file.
7218         * m4/ceilf.m4: New file.
7219         * lib/math.in.h (ceilf): New declaration.
7220         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILF and
7221         HAVE_DECL_CEILF.
7222         * modules/math (Makefile.am): Substitute also GNULIB_CEILF and
7223         HAVE_DECL_CEILF.
7224         * doc/functions/ceilf.texi: Mention the 'ceilf' module.
7225
7226 2007-10-04  Bruno Haible  <bruno@clisp.org>
7227
7228         * modules/floorl-tests: New file.
7229         * tests/test-floorl.c: New file.
7230
7231         * modules/floorl: New file.
7232         * lib/floorl.c: Replace entire file.
7233         * m4/floorl.m4: New file.
7234         * lib/math.in.h (floorl): Replace declaration.
7235         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORL.
7236         * modules/math (Makefile.am): Substitute also GNULIB_FLOORL.
7237         * doc/functions/floorl.texi: Mention the 'floorl' module.
7238         * modules/mathl (Files): Remove lib/floorl.c.
7239         (Depends-on): Add floorl.
7240
7241 2007-10-04  Bruno Haible  <bruno@clisp.org>
7242
7243         * modules/floorf-tests: New file.
7244         * tests/test-floorf.c: New file.
7245
7246         * modules/floorf: New file.
7247         * lib/floor.c: New file.
7248         * lib/floorf.c: New file.
7249         * m4/floorf.m4: New file.
7250         * lib/math.in.h (floorf): New declaration.
7251         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORF and
7252         HAVE_DECL_FLOORF.
7253         * modules/math (Makefile.am): Substitute also GNULIB_FLOORF and
7254         HAVE_DECL_FLOORF.
7255         * doc/functions/floorf.texi: Mention the 'floorf' module.
7256
7257 2007-10-04  Benoit Sigoure  <tsuna@lrde.epita.fr>
7258             Bruno Haible  <bruno@clisp.org>
7259
7260         Advertise for the Git server instead of the CVS server.
7261         * doc/gnulib-intro.texi (Steady Development): Mention the Git
7262         repository instead of the CVS one.
7263         * doc/gnulib-tool.texi (VCS Issues): Renamed from "CVS Issues". Talk
7264         about all VCS systems generically.
7265         * doc/gnulib.texi (Introduction): Capitalize `Git'.
7266
7267 2007-10-04  Bruno Haible  <bruno@clisp.org>
7268
7269         * doc/gnulib.texi (Function Substitutes): Explain what an absent module
7270         means.
7271         Reported by Benoît Sigoure <tsuna@lrde.epita.fr>.
7272
7273 2007-10-04  Bruno Haible  <bruno@clisp.org>
7274
7275         * modules/truncl-tests: New file.
7276         * tests/test-truncl.c: New file.
7277
7278         * modules/truncl: New file.
7279         * lib/truncl.c: New file.
7280         * m4/truncl.m4: New file.
7281         * lib/math.in.h (truncl): New declaration.
7282         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCL and
7283         HAVE_DECL_TRUNCL.
7284         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCL and
7285         HAVE_DECL_TRUNCL.
7286         * doc/functions/truncl.texi: Mention the 'truncl' module.
7287
7288 2007-10-04  Bruno Haible  <bruno@clisp.org>
7289
7290         * modules/truncf-tests: New file.
7291         * tests/test-truncf.c: New file.
7292
7293         * modules/truncf: New file.
7294         * lib/trunc.c: Make paramerizable through USE_* macros.
7295         * lib/truncf.c: New file.
7296         * m4/truncf.m4: New file.
7297         * lib/math.in.h (truncf): New declaration.
7298         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCF and
7299         HAVE_DECL_TRUNCF.
7300         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCF and
7301         HAVE_DECL_TRUNCF.
7302         * doc/functions/truncf.texi: Mention the 'truncf' module.
7303
7304 2007-10-03  Bruno Haible  <bruno@clisp.org>
7305
7306         * gnulib-tool (func_get_automake_snippet): Synthesize an EXTRA_DIST
7307         augmentation also for tests modules.
7308         * modules/argp-tests (Makefile.am): Remove EXTRA_DIST augmentation.
7309         * modules/atexit-tests (Makefile.am): Likewise.
7310         * modules/binary-io-tests (Makefile.am): Likewise.
7311         * modules/c-strcase-tests (Makefile.am): Likewise.
7312         * modules/canonicalize-lgpl-tests (Makefile.am): Likewise.
7313         * modules/canonicalize-tests (Makefile.am): Likewise.
7314         * modules/closein-tests (Makefile.am): Likewise.
7315         * modules/fprintf-posix-tests (Makefile.am): Likewise.
7316         * modules/freadahead-tests (Makefile.am): Likewise.
7317         * modules/fseek-tests (Makefile.am): Likewise.
7318         * modules/fseeko-tests (Makefile.am): Likewise.
7319         * modules/ftell-tests (Makefile.am): Likewise.
7320         * modules/ftello-tests (Makefile.am): Likewise.
7321         * modules/isnanl-nolibm-tests (Makefile.am): Likewise.
7322         * modules/isnanl-tests (Makefile.am): Likewise.
7323         * modules/lseek-tests (Makefile.am): Likewise.
7324         * modules/mbscasecmp-tests (Makefile.am): Likewise.
7325         * modules/mbscasestr-tests (Makefile.am): Likewise.
7326         * modules/mbschr-tests (Makefile.am): Likewise.
7327         * modules/mbscspn-tests (Makefile.am): Likewise.
7328         * modules/mbsncasecmp-tests (Makefile.am): Likewise.
7329         * modules/mbspbrk-tests (Makefile.am): Likewise.
7330         * modules/mbspcasecmp-tests (Makefile.am): Likewise.
7331         * modules/mbsrchr-tests (Makefile.am): Likewise.
7332         * modules/mbsspn-tests (Makefile.am): Likewise.
7333         * modules/mbsstr-tests (Makefile.am): Likewise.
7334         * modules/printf-posix-tests (Makefile.am): Likewise.
7335         * modules/snprintf-posix-tests (Makefile.am): Likewise.
7336         * modules/sprintf-posix-tests (Makefile.am): Likewise.
7337         * modules/tsearch-tests (Makefile.am): Likewise.
7338         * modules/uniname/uniname-tests (Makefile.am): Likewise.
7339         * modules/unistdio/u16-vasnprintf-tests (Makefile.am): Likewise.
7340         * modules/unistdio/u32-vasnprintf-tests (Makefile.am): Likewise.
7341         * modules/unistdio/u8-vasnprintf-tests (Makefile.am): Likewise.
7342         * modules/unistdio/ulc-vasnprintf-tests (Makefile.am): Likewise.
7343         * modules/vasnprintf-posix-tests (Makefile.am): Likewise.
7344         * modules/vfprintf-posix-tests (Makefile.am): Likewise.
7345         * modules/vprintf-posix-tests (Makefile.am): Likewise.
7346         * modules/vsnprintf-posix-tests (Makefile.am): Likewise.
7347         * modules/vsprintf-posix-tests (Makefile.am): Likewise.
7348         * modules/xstrtoimax-tests (Makefile.am): Likewise.
7349         * modules/xstrtol-tests (Makefile.am): Likewise.
7350         * modules/xstrtoumax-tests (Makefile.am): Likewise.
7351         * modules/yesno-tests (Makefile.am): Likewise.
7352
7353 2007-10-03  Bruno Haible  <bruno@clisp.org>
7354
7355         * modules/trunc-tests: New file.
7356         * tests/test-trunc.c: New file.
7357
7358         * modules/trunc: New file.
7359         * lib/trunc.c: New file.
7360         * m4/trunc.m4: New file.
7361         * lib/math.in.h (trunc): New declaration.
7362         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNC and
7363         HAVE_DECL_TRUNC.
7364         * modules/math (Makefile.am): Substitute also GNULIB_TRUNC and
7365         HAVE_DECL_TRUNC.
7366         * doc/functions/trunc.texi: Mention the 'trunc' module.
7367
7368 2007-10-03  Bruno Haible  <bruno@clisp.org>
7369
7370         * tests/test-fpending.c: New file, mostly copied
7371         from coreutils/lib/t-fpending.c.
7372         * modules/fpending-tests: New file.
7373
7374 2007-10-03  Bruno Haible  <bruno@clisp.org>
7375
7376         Port the stdio extensions to QNX (untested).
7377         * lib/fseterr.c (fseterr): Add support for QNX.
7378         * lib/fbufmode.c (fbufmode): Likewise.
7379         * lib/freadable.c (freadable): Likewise.
7380         * lib/fwritable.c (fwritable): Likewise.
7381         * lib/freading.c (freading): Likewise.
7382         * lib/fwriting.c (fwriting): Likewise.
7383         * lib/freadahead.c (freadahed): Likewise.
7384         * lib/fpurge.c (fpurge): Likewise.
7385         * lib/fseeko.c (rpl_fseeko): Likewise.
7386
7387 2007-10-03  Bruno Haible  <bruno@clisp.org>
7388             Jim Meyering  <jim@meyering.net>
7389             Eric Blake  <ebb9@byu.net>
7390
7391         * doc/relocatable.texi: Use @command instead of @program.
7392
7393 2007-10-02  Jim Meyering  <jim@meyering.net>
7394
7395         Perform one more "_.h" -> ".in.h" substitution.
7396         * modules/unistd (Makefile.am) [unistd.h]: Use unistd.h.in
7397         instead of unistd_.h here, too.
7398
7399 2007-10-01  Bruno Haible  <bruno@clisp.org>
7400
7401         * gnulib-tool (func_emit_initmacro_done): Special case for alloca.c.
7402         Needed for the alloca-opt module.
7403
7404 2007-09-30  Bruno Haible  <bruno@clisp.org>
7405
7406         * lib/alloca.in.h: Renamed from lib/alloca_.h.
7407         * modules/alloca-opt (Files, Makefile.am): Use alloca.in.h instead of
7408         alloca_.h.
7409         * lib/argz.in.h: Renamed from lib/argz_.h.
7410         * modules/argz (Files, Makefile.am): Use argz.in.h instead of argz_.h.
7411         * lib/byteswap.in.h: Renamed from lib/byteswap_.h.
7412         * modules/byteswap (Files, Makefile.am): Use byteswap.in.h instead of
7413         byteswap_.h.
7414         * lib/dirent.in.h: Renamed from lib/dirent_.h.
7415         * modules/fchdir (Files, Makefile.am): Use dirent.in.h instead of
7416         dirent_.h.
7417         * lib/fcntl.in.h: Renamed from lib/fcntl_.h.
7418         * modules/fcntl (Files, Makefile.am): Use fcntl.in.h instead of
7419         fcntl_.h.
7420         * lib/float.in.h: Renamed from lib/float_.h.
7421         * modules/float (Files, Makefile.am): Use float.in.h instead of
7422         float_.h.
7423         * lib/fnmatch.in.h: Renamed from lib/fnmatch_.h.
7424         * modules/fnmatch (Files, Makefile.am): Use fnmatch.in.h instead of
7425         fnmatch_.h.
7426         * lib/getopt.in.h: Renamed from lib/getopt_.h.
7427         * modules/getopt (Files, Makefile.am): Use getopt.in.h instead of
7428         getopt_.h.
7429         * lib/glob.in.h: Renamed from lib/glob_.h.
7430         * modules/glob (Files, Makefile.am): Use glob.in.h instead of glob_.h.
7431         * lib/iconv.in.h: Renamed from lib/iconv_.h.
7432         * modules/iconv_open (Files, Makefile.am): Use iconv.in.h instead of
7433         iconv_.h.
7434         * lib/inttypes.in.h: Renamed from lib/inttypes_.h.
7435         * modules/inttypes (Files, Makefile.am): Use inttypes.in.h instead of
7436         inttypes_.h.
7437         * lib/locale.in.h: Renamed from lib/locale_.h.
7438         * modules/locale (Files, Makefile.am): Use locale.in.h instead of
7439         locale_.h.
7440         * lib/math.in.h: Renamed from lib/math_.h.
7441         * modules/math (Files, Makefile.am): Use math.in.h instead of math_.h.
7442         * lib/netinet_in.in.h: Renamed from lib/netinet_in_.h.
7443         * modules/netinet_in (Files, Makefile.am): Use netinet_in.in.h instead
7444         of netinet_in_.h. Add dependency.
7445         * lib/poll.in.h: Renamed from lib/poll_.h.
7446         * modules/poll (Files, Makefile.am): Use poll.in.h instead of poll_.h.
7447         * lib/search.in.h: Renamed from lib/search_.h.
7448         * modules/search (Files, Makefile.am): Use search.in.h instead of
7449         search_.h.
7450         * lib/signal.in.h: Renamed from lib/signal_.h.
7451         * modules/signal (Files, Makefile.am): Use signal.in.h instead of
7452         _signal.h.
7453         * lib/stdbool.in.h: Renamed from lib/stdbool_.h.
7454         * modules/stdbool (Files, Makefile.am): Use stdbool.in.h instead of
7455         stdbool_.h.
7456         * lib/stdint.in.h: Renamed from lib/stdint_.h.
7457         * modules/stdint (Files, Makefile.am): Use stdint.in.h instead of
7458         stdint_.h.
7459         * lib/stdio.in.h: Renamed from lib/stdio_.h.
7460         * modules/stdio (Files, Makefile.am): Use stdio.in.h instead of
7461         stdio_.h.
7462         * lib/stdlib.in.h: Renamed from lib/stdlib_.h.
7463         * modules/stdlib (Files, Makefile.am): Use stdlib.in.h instead of
7464         stdlib_.h.
7465         * lib/string.in.h: Renamed from lib/string_.h.
7466         * modules/string (Files, Makefile.am): Use string.in.h instead of
7467         string_.h.
7468         * doc/gnulib-tool.texi (Initial import): Update.
7469         * lib/sys_select.in.h: Renamed from lib/sys_select_.h.
7470         * modules/sys_select (Files, Makefile.am): Use sys_select.in.h instead
7471         of sys_select_.h. Add dependency.
7472         * lib/sys_socket.in.h: Renamed from lib/sys_socket_.h.
7473         * modules/sys_socket (Files, Makefile.am): Use sys_socket.in.h instead
7474         of sys_socket_.h.
7475         * lib/sys_stat.in.h: Renamed from lib/sys_stat_.h.
7476         * modules/sys_stat (Files, Makefile.am): Use sys_stat.in.h instead of
7477         sys_stat_.h.
7478         * lib/sys_time.in.h: Renamed from lib/sys_time_.h.
7479         * modules/sys_time (Files, Makefile.am): Use sys_time.in.h instead of
7480         sys_time_.h.
7481         * lib/sysexits.in.h: Renamed from lib/sysexits_.h.
7482         * modules/sysexits (Files, Makefile.am): Use sysexits.in.h instead of
7483         sysexits_.h.
7484         * lib/time.in.h: Renamed from lib/time_.h.
7485         * modules/time (Files, Makefile.am): Use time.in.h instead of time_.h.
7486         * lib/unistd.in.h: Renamed from lib/unistd_.h.
7487         * modules/unistd (Files, Makefile.am): Use unistd.in.h instead of
7488         unistd_.h.
7489         * lib/wchar.in.h: Renamed from lib/wchar_.h.
7490         * modules/wchar (Files, Makefile.am): Use wchar.in.h instead of
7491         wchar_.h.
7492         * lib/wctype.in.h: Renamed from lib/wctype_.h.
7493         * modules/wctype (Files, Makefile.am): Use wctype.in.h instead of
7494         wctype_.h.
7495         * build-aux/bootstrap (slurp): Update.
7496         * lib/.cppi-disable: Update.
7497
7498 2007-09-30  Bruno Haible  <bruno@clisp.org>
7499
7500         * tests/test-getaddrinfo.c (AF_UNSPEC): Provide a fallback definition.
7501         Needed on BeOS.
7502
7503 2007-09-30  Bruno Haible  <bruno@clisp.org>
7504
7505         * modules/dirname-tests (check_PROGRAMS): Renamed from noinst_PROGRAMS.
7506
7507 2007-09-29  Bruno Haible  <bruno@clisp.org>
7508
7509         * lib/stdio_.h (getdelim, getline): Add identifiers. Doc tweak.
7510
7511 2007-09-29  Bruno Haible  <bruno@clisp.org>
7512
7513         * lib/xreadlink.c (xreadlink): Simplify to a wrapper around areadlink.
7514         * modules/xreadlink (Depends-on): Add areadlink, remove readlink etc.
7515         * build-aux/install-reloc: Compile also areadlink.c.
7516         * modules/relocatable-prog-wrapper (Files): Add lib/areadlink.[hc].
7517
7518 2007-09-29  Bruno Haible  <bruno@clisp.org>
7519
7520         * gnulib-tool (func_emit_initmacro_done): Indentation.
7521
7522 2007-09-29  Bruno Haible  <bruno@clisp.org>
7523
7524         * README: Add CVS checkout update instructions.
7525         Info from Bob Proulx <bob@proulx.com>.
7526
7527 2007-09-28  Eric Blake  <ebb9@byu.net>
7528
7529         Provide move-if-change.
7530         * build-aux/move-if-change: New file, based on best practice
7531         rather than any canonical upstream location.
7532
7533 2007-09-28  Jim Meyering  <jim@meyering.net>
7534
7535         Fix canonicalize loop-detection corner case.
7536         Do not attempt to stat the symlink values stored via seen_triple.
7537         Without this, coreutils' tests/misc/readlink-fp-loop test would fail
7538         on linux-2.6.18, (but not 2.6.22).
7539         * lib/canonicalize.c (seen_triple): Use triple_compare_ino_str, not
7540         triple_compare.  The former compares dev,ino,filename, while the latter
7541         would actually stat dirname(filename) when dev and ino were equal.
7542         * lib/hash-triple.c: Install <string.h>.
7543         (STREQ): Define.
7544         (triple_compare_ino_str): New function.
7545         * lib/hash-triple.h (triple_compare_ino_str): Declare it.
7546
7547 2007-09-28  Eric Blake  <ebb9@byu.net>
7548
7549         Enforce that AC_REPLACE_FUNCS files exist.
7550         * gnulib-tool (func_emit_initmacro_done): Make AC_LIBSOURCES
7551         override check for typos.
7552
7553         Fix test-closein on Solaris 10.
7554         * tests/test-closein.c (main): Don't assume stdin can be inherited
7555         closed on all systems.
7556         * tests/test-closein.sh: Likewise.
7557         Reported by Piotr Tarnowski.
7558
7559 2007-09-28  Jim Meyering  <jim@meyering.net>
7560
7561         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Fix typo in comment.
7562
7563 2007-09-27  Jim Meyering  <jim@meyering.net>
7564
7565         canonicalize: Avoid a false-positive cycle failure.
7566         * modules/canonicalize (Depends-on): Add file-set and hash-triple.
7567         Sort.  Remove cycle-check.
7568         * lib/canonicalize.c: Include file-set.h and hash-triple.h,
7569         not cycle-check.h.
7570         (seen_triple): New function.
7571         (canonicalize_filename_mode): Use it instead of cycle-check.
7572         * tests/test-canonicalize.c: Add a test for this bug.
7573         * tests/test-canonicalize.sh: Set up and run the test.
7574
7575         New module, file-set, from coreutils.
7576         * modules/file-set: Define it.
7577         * lib/file-set.c, lib/file-set.h: Implement.
7578
7579         New module, hash-triple, from coreutils.
7580         * modules/hash-triple: Define it.
7581         * lib/hash-triple.c, lib/hash-triple.h: Implement.
7582
7583 2007-09-25  Eric Blake  <ebb9@byu.net>
7584
7585         Fix strerror on Interix.
7586         * lib/string_.h (strerror): Declare replacement.
7587         * doc/functions/strerror.texi (strerror): Document the Interix
7588         shortcoming.
7589         * modules/string (Makefile.am): Support new hooks.
7590         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Add new hooks.
7591         * m4/strerror.m4 (gl_FUNC_STRERROR): Defer to
7592         gl_FUNC_STRERROR_SEPARATE.
7593         (gl_FUNC_STRERROR_SEPARATE): Check for Interix bug.
7594         * lib/strerror.c (rpl_strerror): Provide replacement.
7595         * modules/strerror (Depends-on): Add string.
7596         (configure.ac): Detect use of module.
7597         * tests/test-strerror.c: New file.
7598         * modules/strerror-tests: New test module.
7599         * modules/argp (Depends-on): Add strerror.
7600         * modules/error (Depends-on): Likewise.
7601         Reported by Martin Koeppe.
7602
7603 2007-09-24  Bruno Haible  <bruno@clisp.org>
7604
7605         * README: Update git instructions.
7606
7607 2007-09-24  Eric Blake  <ebb9@byu.net>
7608
7609         Revert fpending breakage from 2007-09-08.
7610         * m4/fpending.m4 (gl_FUNC_FPENDING): Don't require existence of
7611         __fpending.c.
7612
7613 2007-09-24  Jim Meyering  <jim@meyering.net>
7614
7615         filenamecat.c: Add a test.
7616         * lib/filenamecat.c (main) [TEST_FILE_NAME_CONCAT]: Add a test
7617         showing how the function works when DIR is the empty string.
7618
7619 2007-09-21  Simon Josefsson  <simon@josefsson.org>
7620
7621         * tests/test-canonicalize.sh: Turn on executable bit.
7622
7623 2007-09-19  Eric Blake  <ebb9@byu.net>
7624
7625         * README: Update CVS instructions.
7626
7627 2007-09-18  Bruno Haible  <bruno@clisp.org>
7628
7629         * modules/areadlink: New file.
7630         * lib/areadlink.h (areadlink): New declaration.
7631         * lib/areadlink.c: New file, based on lib/xreadlink.c.
7632
7633 2007-09-17  Jim Meyering  <jim@meyering.net>
7634
7635         * lib/savewd.c (ESTALE) [!defined]: Define.
7636         Reported to be required on Interix by Martin Koeppe.
7637
7638 2007-09-17  Bruno Haible  <bruno@clisp.org>
7639
7640         * gnulib-tool (func_version): Use $version.
7641
7642 2007-09-16  Bruno Haible  <bruno@clisp.org>
7643
7644         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE, gl_PRINTF_INFINITE,
7645         gl_PRINTF_INFINITE_LONG_DOUBLE): Increase buf's size from 100 to 10000.
7646         Needed on glibc-2.6.1 with -fstack-protector -D_FORTIFY_SOURCE=2.
7647         Reported by Greg Schafer <gschafer@zip.com.au>.
7648
7649 2007-09-15  Bruno Haible  <bruno@clisp.org>
7650
7651         * gnulib-tool (sed): Try a little harder to make bash understand the
7652         alias.
7653         Reported by Bruce Korb <bruce.korb@gmail.com>.
7654
7655 2007-09-13  Eric Blake  <ebb9@byu.net>
7656
7657         * ChangeLog: Remove conflict markers.
7658
7659 2007-09-13  Simon Josefsson  <simon@josefsson.org>
7660
7661         * lib/gc-gnulib.c (gc_hash_open): Catch NULL calloc return value.
7662         Reported by Bruno Haible <bruno@clisp.org>.
7663
7664 2007-09-12  Bruno Haible  <bruno@clisp.org>
7665
7666         * m4/lock.m4: Don't provide an AC_USE_SYSTEM_EXTENSIONS definition.
7667         (gl_LOCK_EARLY_BODY): Use AC_GNU_SOURCE when AC_USE_SYSTEM_EXTENSIONS
7668         is not defined.
7669
7670 2007-09-12  Eric Blake  <ebb9@byu.net>
7671
7672         Track CVS Autoconf on AC_USE_SYSTEM_EXTENSIONS.
7673         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Update to CVS
7674         Autoconf definition.
7675         * modules/euidaccess (Depends-on): Add extensions, for
7676         AC_USE_SYSTEM_EXTENSIONS with autoconf <= 2.59.
7677         * modules/fnmatch (Depends-on): Likewise.
7678         * modules/getaddrinfo (Depends-on): Likewise.
7679         * modules/getdelim (Depends-on): Likewise.
7680         * modules/getline (Depends-on): Likewise.
7681         * modules/getsubopt (Depends-on): Likewise.
7682         * modules/gettext (Depends-on): Likewise.
7683         * modules/group-member (Depends-on): Likewise.
7684         * modules/mbchar (Depends-on): Likewise.
7685         * modules/memmem (Depends-on): Likewise.
7686         * modules/mempcpy (Depends-on): Likewise.
7687         * modules/memrchr (Depends-on): Likewise.
7688         * modules/pagealign_alloc (Depends-on): Likewise.
7689         * modules/readutmp (Depends-on): Likewise.
7690         * modules/stpcpy (Depends-on): Likewise.
7691         * modules/stpncpy (Depends-on): Likewise.
7692         * modules/strchrnul (Depends-on): Likewise.
7693         * modules/strndup (Depends-on): Likewise.
7694         * modules/strsep (Depends-on): Likewise.
7695         * modules/strverscmp (Depends-on): Likewise.
7696         * modules/vasprintf (Depends-on): Likewise.
7697         * modules/wcwidth (Depends-on): Likewise.
7698         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): AC_GNU_SOURCE will be
7699         obsolete in Autoconf 2.62; use AC_USE_SYSTEM_EXTENSIONS instead.
7700         * m4/fnmatch.m4 (gl_FUNC_FNMATCH_GNU): Likewise.
7701         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDR_INFO): Likewise.
7702         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
7703         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
7704         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Likewise.
7705         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
7706         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER): Likewise.
7707         * m4/mbchar.m4 (gl_MBCHAR): Likewise.
7708         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
7709         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
7710         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
7711         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Likewise.
7712         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC): Likewise.
7713         * m4/readutmp.m4 (gl_READUTMP): Likewise.
7714         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
7715         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
7716         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
7717         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
7718         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
7719         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
7720         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
7721         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP): Likewise.
7722         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): Likewise.
7723         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
7724         * m4/lock.m4 (gl_LOCK_EARLY_BODY): Likewise, but provide fallback,
7725         so that lock.m4 can be used in gettext without extensions module.
7726
7727 2007-09-11  Bruno Haible  <bruno@clisp.org>
7728
7729         * m4/isc-posix.m4: Remove file.
7730         Suggested by Eric Blake.
7731
7732 2007-09-11  Eric Blake  <ebb9@byu.net>
7733
7734         * ChangeLog: Restore lines accidentally truncated 2007-04-06.
7735
7736 2007-09-10  Bruno Haible  <bruno@clisp.org>
7737
7738         * posix-modules: Fix typo in error message.
7739         Reported by Matt <mkraai@beckman.com>.
7740
7741 2007-09-09  Bruno Haible  <bruno@clisp.org>
7742
7743         * doc/functions/getdelim.texi: Update list of platforms lacking the
7744         function.
7745         * doc/functions/getline.texi: Likewise.
7746
7747 2007-09-09  Jim Meyering  <jim@meyering.net>
7748
7749         * lib/hash.c (hash_initialize): Detect calloc failure.
7750         Reported by Bruno Haible.
7751
7752 2007-09-09  Bruno Haible  <bruno@clisp.org>
7753
7754         * lib/canonicalize-lgpl.c (__realpath): Set errno to ENOMEM when
7755         malloc or realloc fails.
7756
7757 2007-09-09  Bruno Haible  <bruno@clisp.org>
7758
7759         * modules/getcwd (Depends-on): Add malloc-posix.
7760         * modules/glob (Depends-on): Likewise.
7761         * modules/putenv (Depends-on): Likewise.
7762         * modules/strdup (Depends-on): Likewise.
7763         * modules/getdelim (Depends-on): Add realloc-posix.
7764         * modules/read-file (Depends-on): Likewise.
7765
7766 2007-09-09  Bruno Haible  <bruno@clisp.org>
7767
7768         * m4/malloc.m4 (gl_CHECK_MALLOC_POSIX): New macro.
7769         (gl_FUNC_MALLOC_POSIX): Require it.
7770         * m4/realloc.m4 (gl_FUNC_REALLOC_POSIX): Likewise.
7771         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): Likewise.
7772         * modules/realloc (Files): Add m4/malloc.m4.
7773         * modules/calloc (Files): Likewise.
7774
7775 2007-09-09  Bruno Haible  <bruno@clisp.org>
7776
7777         * modules/malloc-posix: New file.
7778         * modules/malloc (Depends-on): Add malloc-posix.
7779         * lib/malloc.c: Include errno.h.
7780         (rpl_malloc): Merge the requirements of a glibc-compatible malloc
7781         and a POSIX-compatible malloc into a single function. Set ENOMEM
7782         when returning NULL.
7783         * m4/malloc.m4: New file.
7784         * doc/functions/malloc.texi: Mention the malloc-posix module.
7785         * lib/stdlib_.h (malloc): New declaration.
7786         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
7787         GNULIB_MALLOC_POSIX and HAVE_MALLOC_POSIX.
7788         * modules/stdlib (stdlib.h): Substitute also GNULIB_MALLOC_POSIX
7789         and HAVE_MALLOC_POSIX.
7790
7791 2007-09-09  Bruno Haible  <bruno@clisp.org>
7792
7793         * modules/realloc-posix: New file.
7794         * modules/realloc (Depends-on): Add realloc-posix.
7795         * lib/realloc.c: Include errno.h.
7796         (rpl_realloc): Merge the requirements of a glibc-compatible realloc
7797         and a POSIX-compatible realloc into a single function. Set ENOMEM
7798         when returning NULL.
7799         * m4/realloc.m4: New file.
7800         * doc/functions/realloc.texi: Mention the realloc-posix module.
7801         * lib/stdlib_.h (realloc): New declaration.
7802         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
7803         GNULIB_REALLOC_POSIX and HAVE_REALLOC_POSIX.
7804         * modules/stdlib (stdlib.h): Substitute also GNULIB_REALLOC_POSIX
7805         and HAVE_REALLOC_POSIX.
7806
7807 2007-09-09  Bruno Haible  <bruno@clisp.org>
7808
7809         * modules/calloc-posix: New file.
7810         * modules/calloc (Depends-on): Add calloc-posix.
7811         * lib/calloc.c: Include errno.h.
7812         (rpl_calloc): Merge the requirements of a glibc-compatible calloc
7813         and a POSIX-compatible calloc into a single function. Set ENOMEM
7814         when returning NULL.
7815         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): New macro.
7816         * doc/functions/calloc.texi: Mention the calloc-posix module.
7817         * lib/stdlib_.h (calloc): New declaration.
7818         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
7819         GNULIB_CALLOC_POSIX and HAVE_CALLOC_POSIX.
7820         * modules/stdlib (stdlib.h): Substitute also GNULIB_CALLOC_POSIX
7821         and HAVE_CALLOC_POSIX.
7822
7823 2007-09-09  Bruno Haible  <bruno@clisp.org>
7824
7825         Allow for modules to show an arbitrary notice.
7826         * modules/TEMPLATE-EXTENDED: Add 'Notice' field.
7827         * gnulib-tool: New option --extract-notice.
7828         (func_usage): Document it.
7829         (sed_extract_prog): Update.
7830         (func_get_notice): New function.
7831         (func_modules_notice): New function.
7832         (func_import, func_create_testdir): Invoke it.
7833         Suggested by Jim Meyering.
7834
7835 2007-09-09  Bruno Haible  <bruno@clisp.org>
7836
7837         * gnulib-tool: New options --verbose, --quiet.
7838         (func_usage): Document them.
7839         (verbose): New variable.
7840         (func_execute_command): New function.
7841         (func_import): Don't show the module list and the file list if
7842         $verbose < 0.
7843         (func_create_testdir): Likewise. Use func_execute_command.
7844         (func_create_megatestdir): Use func_execute_command.
7845
7846 2007-09-08  Bruno Haible  <bruno@clisp.org>
7847
7848         * gnulib-tool (func_import): Prefer rsync over wget when available,
7849         for fetching the PO files.
7850
7851 2007-09-08  Bruno Haible  <bruno@clisp.org>
7852
7853         * posix-modules: New file. Portions copied from gnulib-tool.
7854         * doc/gnulib.texi (POSIX Substitutes Library): New chapter.
7855
7856 2007-09-08  Jim Meyering  <jim@meyering.net>
7857
7858         Rename __fpending.c -> fpending.c and __fpending.h -> fpending.h
7859         * lib/fpending.h: Rename from __fpending.h.
7860         * lib/fpending.c: Rename from __fpending.c.
7861         Include "fpending.h", not "__fpending.h".
7862         * lib/__fpending.h, lib/__fpending.c: Remove files.
7863         * modules/fpending (Files): Reflect new file names.
7864         * lib/close-stream.c: Include "fpending.h", not "__fpending.h".
7865
7866 2007-09-08  Bruno Haible  <bruno@clisp.org>
7867
7868         * m4/inttypes-h.m4: Remove stub file.
7869
7870 2007-09-07  Simon Josefsson  <simon@josefsson.org>
7871
7872         * doc/headers/stdint.texi: Discuss #include_next issue.
7873
7874 2007-09-06  Paul Eggert  <eggert@cs.ucla.edu>
7875
7876         * build-aux/bootstrap: Remove obsolete comment about wget --help.
7877
7878 2007-09-06  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
7879
7880         * m4/time_h.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Fix misspelling
7881         in variable name.
7882
7883 2007-09-03  Jim Meyering  <jim@meyering.net>
7884
7885         New module: git-version-gen.
7886         * modules/git-version-gen: New file.
7887
7888         Import changes from coreutils for bootstrap script.
7889
7890         * build-aux/bootstrap (WGET_COMMAND): Remove code to set this variable.
7891
7892         bootstrap: uses rsync to download the .po files
7893         * build-aux/bootstrap (po_download_command_format): New global.
7894         (download_po_files): Use rsync.
7895         (update_po_files): Don't remove .po files after download,
7896         so future rsync runs can take advantage of the copies.
7897
7898         * build-aux/bootstrap (gnulib_tool): Make sha1sum check quietly.
7899
7900         Solve the unnecessary-.po-file-regeneration problem once and for all.
7901         * build-aux/bootstrap (download_po_files): New function, renamed from
7902         get_translations.  Now, downloads, but doesn't update LINGUAS.
7903         (update_po_files): New function.
7904
7905         bootstrap: Ignore more.
7906         * build-aux/bootstrap (symlink_to_dir): Add a directory name like
7907         uniwidth to e.g., lib/.gitignore.
7908         (slurp): Handle the sys_stat_.h -> sys mapping, too.
7909
7910         * build-aux/bootstrap: New setting: vc_ignore.
7911         (insert_sorted_if_absent): Create $file if absent.
7912         Adapt to new, possibly empty, list: $vc_ignore.
7913
7914         bootstrap: generate more ignorable names
7915         * build-aux/bootstrap (slurp): When generating ignorable names,
7916         also map .sin to .sed, .gperf to .c, and .y to .c.
7917
7918 2007-09-03  Jim Meyering  <jim@meyering.net>
7919
7920         * build-aux/git-version-gen: New file, from coreutils.  For details, see
7921         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commitdiff;h=bfe49f506
7922
7923 2007-09-02  Bruno Haible  <bruno@clisp.org>
7924
7925         Fix mis-recognition of 'mcs' on QNX 6.
7926         * m4/csharpcomp.m4 (gt_CSHARPCOMP): Test whether the "mcs --version"
7927         output contains the string "Mono".
7928         * lib/csharpcomp.c (compile_csharp_using_mono): Likewise.
7929         Reported by <kraai@ftbfs.org> at <https://savannah.gnu.org/bugs/?18337>.
7930
7931 2007-09-01  Bruno Haible  <bruno@clisp.org>
7932
7933         Fix collision between uniwidth/* and linebreak modules.
7934         * lib/linebreak.h (locale_charset, uc_width, u8_width, u16_width,
7935         u32_width): Remove declarations.
7936         * lib/linebreak.c: Include uniwidth.h, uniwidth/cjk.h, streq.h.
7937         (u32_mbtouc_unsafe, streq9, streq8, streq7, streq6, streq5, streq4,
7938         streq3, streq2, streq1, streq0): Remove functions.
7939         (STREQ): Remove macro.
7940         (is_cjk_encoding): Remove function.
7941         (nonspacing_table_data, nonspacing_table_ind): Remove constants.
7942         (uc_width, u8_width, u16_width, u32_width): Remove functions.
7943         * modules/linebreak (Depends-on): Add streq, uniwidth/width.
7944         * NEWS: Document the change.
7945
7946 2007-09-01  Bruno Haible  <bruno@clisp.org>
7947
7948         * lib/streq.h: Add double-inclusion guard.
7949
7950 2007-09-01  Karl Berry  <karl@gnu.org>
7951
7952         * MODULES.html.sh: Rename mreadlink_with_size to areadlink_with_size.
7953
7954 2007-08-28  Jim Meyering  <jim@meyering.net>
7955
7956         Rename mreadlink_with_size to areadlink_with_size.
7957         * NEWS: Document the change.
7958         * lib/mreadlink-with-size.c (mreadlink_with_size): Rename this to...
7959         * lib/areadlink-with-size.c (areadlink_with_size): ...this.
7960         * lib/mreadlink.h: Rename this to...
7961         * lib/areadlink.h: ...this.
7962         * modules/mreadlink-with-size: Rename this to...
7963         * modules/areadlink-with-size: ...this.
7964         * lib/canonicalize.c: Reflect the renaming.
7965         * modules/canonicalize: Likewise.
7966
7967 2007-08-26  Bruno Haible  <bruno@clisp.org>
7968
7969         * gnulib-tool (func_import): When deciding which files to remove,
7970         consider also dangling symbolic links.
7971         Reported by Eric Blake.
7972
7973 2007-08-26  Bruno Haible  <bruno@clisp.org>
7974
7975         * gnulib-tool (func_ln_if_changed): Use "test -h", not "test -L".
7976
7977 2007-08-23  Simon Josefsson  <simon@josefsson.org>
7978
7979         * lib/readline.c: Don't include getline.h, the prototype is now
7980         found in stdio.h.
7981
7982 2007-08-23  Jim Meyering  <jim@meyering.net>
7983
7984         Getdelim touchup.
7985         * lib/getdelim.c (getdelim): Don't bother to save/restore errno
7986         around the funlockfile call, since funlockfile never sets errno.
7987         Don't set errno upon failed realloc.
7988
7989 2007-08-22  Eric Blake  <ebb9@byu.net>
7990
7991         Getline touchups.
7992         * lib/getdelim.c (getdelim): Revert regression that required *n to
7993         be 0 when *lineptr is NULL.  Preserve errno across funlockfile.
7994         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Check for declaration of
7995         getdelim, rather than whether implementation is missing.
7996         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise for getline.
7997         * lib/stdio_.h (getline): Also declare if replacement is
7998         required.
7999         * doc/functions/getdelim.texi: New file.
8000         * doc/functions/getline.texi: Likewise.
8001         * doc/gnulib.texi (Function Substitutes): Add new files.
8002         Reported by Bruno Haible.
8003
8004 2007-08-22  Ludovic Courtès  <ludo@gnu.org>
8005
8006         * users.txt: Add Guile.
8007
8008 2007-08-22  Eric Blake  <ebb9@byu.net>
8009
8010         * tests/test-getdelim.c (main): Use remove, not unlink.
8011         * tests/test-getline.c (main): Likewise.
8012
8013         Move getline and getdelim into stdio.h, per POSIX 200x.
8014         * modules/getline (Files): Remove getline.h.
8015         (Depends-on): Add stdio.
8016         (configure.ac): Add module indicator.
8017         * modules/getdelim (Files): Remove getdelim.h.
8018         (Depends-on): Add stdio.
8019         (configure.ac): Add module indicator.
8020         * modules/stdio (Makefile.am): Work with new indicators.
8021         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Add new defaults.
8022         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Work with stdio needs.
8023         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
8024         * lib/getdelim.h: Delete.
8025         * lib/getline.h: Delete.
8026         * lib/stdio_.h (getdelim, getline): Declare.
8027         * modules/getdelim-tests: New module.
8028         * modules/getline-tests: Likewise.
8029         * tests/test-getdelim.c: New file.
8030         * tests/test-getline.c: Likewise.
8031         * NEWS: Document the change.
8032         * lib/getline.c: Update choice of header.
8033         * lib/csharpcomp.c: Likewise.
8034         * lib/getpass.c: Likewise.
8035         * lib/javacomp.c: Likewise.
8036         * lib/javaversion.c: Likewise.
8037         * lib/yesno.c: Likewise.
8038         * lib/getdelim.c: Likewise.
8039         (getdelim): Set errno on failure, and avoid memory leak.
8040
8041 2007-08-19  Bruno Haible  <bruno@clisp.org>
8042
8043         * modules/closein (Depends-on): Add freadahead.
8044         * lib/closein.c: Include freadahead.h.
8045         (close_stdin): Skip the fseeko and fflush calls if freadahead(stdin)
8046         is zero.
8047
8048 2007-08-19  Bruno Haible  <bruno@clisp.org>
8049
8050         * modules/freadahead-tests: New file.
8051         * tests/test-freadahead.sh: New file.
8052         * tests/test-freadahead.c: New file.
8053
8054         * modules/freadahead: New file.
8055         * lib/freadahead.h: New file.
8056         * lib/freadahead.c: New file.
8057         * MODULES.html.sh (File stream based Input/Output): Add freadahead,
8058         fbufmode, fpurge, freadable, fwritable.
8059
8060 2007-08-19  Eric Blake  <ebb9@byu.net>
8061
8062         Test yesno in combination with closein.
8063         * lib/yesno.c (yesno): Document use of stdin.
8064         * modules/yesno-tests (Files): New module.
8065         * tests/test-yesno.c (main): New file.
8066         * tests/test-yesno.sh: Likewise.
8067
8068 2007-08-19  Bruno Haible  <bruno@clisp.org>
8069
8070         * lib/fbufmode.c (fbufmode): Add tentative support for Solaris/AMD64.
8071         * lib/fseeko.c (rpl_fseeko): Likewise.
8072         * lib/fseterr.c (fseterr): Likewise.
8073
8074 2007-08-19  Bruno Haible  <bruno@clisp.org>
8075
8076         * tests/test-lseek.c (main): Disable a test for BeOS.
8077         * doc/functions/lseek.texi: Document the BeOS bug.
8078
8079 2007-08-19  Bruno Haible  <bruno@clisp.org>
8080             Eric Blake  <ebb9@byu.net>
8081
8082         * lib/lseek.c: Include <sys/stat.h>.
8083         (rpl_lseek): Add workaround code also for Unix platforms.
8084         Needed for BeOS.
8085         * m4/lseek.m4 (gl_FUNC_LSEEK): When cross-compiling, fail on BeOS.
8086         * doc/functions/lseek.texi: Document BeOS definiency.
8087
8088 2007-08-18  Bruno Haible  <bruno@clisp.org>
8089
8090         * modules/fstrcmp-tests: New file.
8091         * tests/test-fstrcmp.c: New file.
8092
8093 2007-08-18  Bruno Haible  <bruno@clisp.org>
8094
8095         * modules/fstrcmp: New file, from GNU gettext with modifications.
8096         * lib/fstrcmp.h: New file, from GNU gettext.
8097         * lib/fstrcmp.c: New file, from GNU gettext.
8098         * MODULES.html.sh (String handling): Add fstrcmp.
8099
8100 2007-08-18  Bruno Haible  <bruno@clisp.org>
8101
8102         * lib/diffseq.h (struct context): Change type of 'heuristic' field to
8103         'bool'.
8104         (diag, compareseq): Remove const from the ctxt argument.
8105         (USE_HEURISTIC): Undefine at the end.
8106
8107 2007-08-18  Jim Meyering  <jim@meyering.net>
8108
8109         New file: lib/idcache.h
8110         * NEWS: Mention the addition.
8111         * modules/idcache (Files): Add lib/idcache.h
8112         * lib/idcache.c: Include "idcache.h".
8113         Don't include <sys/types.h>.
8114         Add a FIXME comment.
8115         Move file-scoped "static" declarations to the top.
8116         * lib/idcache.h: New file.  Include <sys/types.h> here, instead.
8117
8118 2007-08-17  Bruno Haible  <bruno@clisp.org>
8119         and Paul Eggert  <eggert@cs.ucla.edu>
8120
8121         * MODULES.html.sh: Add diffseq.
8122         * modules/diffseq: New file.
8123         * lib/diffseq.h: New file, from GNU gettext with a few minor changes,
8124         extracted from GNU gettext's fstrcmp.c and GNU diff's analyze.c.
8125
8126 2007-08-15  Paul Eggert  <eggert@cs.ucla.edu>
8127
8128         Import changes from coreutils for bootstrap script.
8129
8130         2007-07-21  Paul Eggert  <eggert@cs.ucla.edu>
8131
8132         * build-aux/bootstrap (slurp): Work even in environments where
8133         "ls" defaults to "ls -A".  Put in a FIXME, though, since the
8134         current code does not slurp files whose names start with ".", and
8135         this looks like it might be a troublesome area.
8136
8137         2007-07-11  Jim Meyering  <jim@meyering.net>
8138
8139         If there's a GPL vN copyright comment, require that N == 3.
8140
8141         2007-07-08  Jim Meyering  <jim@meyering.net>
8142
8143         Run the coreutils-specific code only if tests/Makefile.am.in exists.
8144         * build-aux/bootstrap (mam_template): Move definition out of loop.
8145
8146         Create symlinks for gl/{lib,m4}/*, just as for gnulib/{lib,m4}/*.
8147
8148         * build-aux/bootstrap (symlink_to_dir): Rename function from
8149         symlink_to_gnulib.  Add a directory parameter.  Update all
8150         callers.
8151         (cp_mark_as_generated): Also check for -- and link to -- files in
8152         gl/.
8153
8154         2007-07-08  Jim Meyering  <jim@meyering.net>
8155
8156         Adapt to deeper hierarchy in gnulib.
8157         * build-aux/bootstrap (symlink_to_dir): If the destination
8158         directory doesn't exist, create it. This is required at least for
8159         "lib/uniwidth/cjk.h".
8160
8161         2007-05-15  Jim Meyering  <jim@meyering.net>
8162
8163         * build-aux/bootstrap: Now that generated Makefile.am files
8164         are no longer under version control, they must be created at
8165         bootstrap time.
8166
8167 2007-08-14  Ben Pfaff  <blp@gnu.org>
8168
8169         * lib/count-one-bits.h: Add comments.  From Bruno Haible.
8170
8171 2007-08-14  Paul Eggert  <eggert@cs.ucla.edu>
8172
8173         * lib/count-one-bits.h: Don't include <limits.h>; no longer needed
8174         given the changes below.
8175         (COUNT_ONE_BITS): Use 'verify' rather than 'verify_true'.  Work
8176         even on hosts that have padding bits beyond the supported 64.
8177
8178 2007-08-10  Paul Eggert  <eggert@cs.ucla.edu>
8179
8180         * NEWS: In xstrtol, remove STRTOL_FATAL_ERROR and add xstrtol_fatal.
8181         * lib/xstrtol.h: Don't include exitfail.h; that's now internal to
8182         xstrtol.c.  Include getopt.h, since xstrtol_fatal's signature
8183         depends on it.
8184         (xstrtol_error): Remove.
8185         (xstrtol_fatal): New decl, replacing the functionality of xstrtol_error
8186         but with a different signature.
8187         (ATTRIBUTE_NORETURN, __attribute__): New macros.
8188         * lib/xstrtol-error.c: Include exitfail.h.
8189         (xstrtol_fatal): New function, with a different signature from the
8190         old xstrtol_error, so that the caller need not worry about passing
8191         in an exit status, or about storage management of the option argument.
8192         (xstrtol_error): Now a static function.  Redo signature to
8193         implement xstrtol_fatal.  Output the correct number of hyphens in
8194         front of the option so that the caller need not worry about
8195         storage management.
8196         (N_): New macro.
8197         (_): Remove; not used now.
8198         * modules/xstrtol: Depend on getopt.
8199         * tests/test-xstrtol.c (main): Use new xstrtol_error function instead
8200         of old STRTOL_FATAL_ERROR macro.
8201         * tests/test-xstrtol.sh (t-xstrtol.xo): Adjust to match new behavior
8202         of test program.
8203         * tests/test-xstrtoimax.sh (t-xstrtoimax.xo): Likewise.
8204         * tests/test-xstrtoumax.sh (t-xstrtoumax.xo): Likewise.
8205
8206 2007-08-08  Eric Blake  <ebb9@byu.net>
8207
8208         * lib/xstrtol-error.c: Add missing include.
8209
8210         Move xstrtol messages into gnulib domain, when --pobase is used.
8211         * lib/xstrtol.h (_STRTOL_ERROR): Move messages out of macro...
8212         * lib/xstrtol-error.c (xstrtol_error): ...into new file.
8213         * modules/xstrtol (Files): Distribute new file.
8214         * m4/xstrtol.m4 (gl_XSTRTOL): Build new file.
8215         * lib/xstrtol.c (TESTING_XSTRTO): Move tests...
8216         * tests/test-xstrtol.c: ...into new file.
8217         * tests/test-xstrtoul.c: Also test xstrtoul.
8218         * tests/test-xstrtoimax.c: Also test xstrtoimax.
8219         * tests/test-xstrtoumax.c: Also test xstrtoumax.
8220         * tests/test-xstrtol.sh: Drive the tests.
8221         * tests/test-xstrtoimax.sh: Likewise.
8222         * tests/test-xstrtoumax.sh: Likewise.
8223         * modules/xstrtol-tests: New module.
8224         * modules/xstrtoimax-tests: Likewise.
8225         * modules/xstrtoumax-tests: Likewise.
8226
8227 2007-08-08  Jim Meyering  <jim@meyering.net>
8228
8229         New function: mfile_name_concat.
8230         * lib/filenamecat.c (mfile_name_concat): New function, just like
8231         file_name_concat, but return NULL upon failure rather than exiting
8232         with a diagnostic.
8233         * lib/filenamecat.h: Declare it.
8234
8235 2007-08-07  Bruno Haible  <bruno@clisp.org>
8236
8237         * m4/inttypes.m4 (gl_INTTYPES_H): Use GL_TRIGGER_STDC_LIMIT_MACROS
8238         instead of __STDC_LIMIT_MACROS_TRIGGER. This avoids a redefinition
8239         warning from gcc.
8240         Reported by Eric Blake.
8241
8242 2007-08-07  Simon Josefsson  <simon@josefsson.org>
8243
8244         * modules/crypto/arctwo (License): Use the synonymous term "LGPLv2+".
8245         * modules/crypto/arcfour (License): Likewise.
8246         * modules/crypto/des-tests (License): Likewise.
8247         * modules/crypto/gc-arctwo-tests (License): Likewise.
8248         * modules/crypto/gc-des-tests (License): Likewise.
8249         * modules/crypto/gc-hmac-md5-tests (License): Likewise.
8250         * modules/crypto/gc-hmac-sha1-tests (License): Likewise.
8251         * modules/crypto/gc-md2-tests (License): Likewise.
8252         * modules/crypto/gc-md4-tests (License): Likewise.
8253         * modules/crypto/gc-md5-tests (License): Likewise.
8254         * modules/crypto/gc-pbkdf2-sha1-tests (License): Likewise.
8255         * modules/crypto/gc-rijndael-tests (License): Likewise.
8256         * modules/crypto/gc-sha1-tests (License): Likewise.
8257         * modules/crypto/gc-tests (License): Likewise.
8258         * modules/crypto/hmac-md5 (License): Likewise.
8259         * modules/crypto/hmac-sha1 (License): Likewise.
8260         * modules/crypto/md2-tests (License): Likewise.
8261         * modules/crypto/md4-tests (License): Likewise.
8262         * modules/crypto/md5 (License): Likewise.
8263         * modules/crypto/rijndael (License): Likewise.
8264         * modules/crypto/sha1 (License): Likewise.
8265         * modules/memxor (License): Likewise.
8266
8267 2007-08-06  Paul Eggert  <eggert@cs.ucla.edu>
8268         and Bruno Haible  <bruno@clisp.org>
8269
8270         * NEWS: Describe interface changes to human, xstrtol.
8271         * lib/human.h: Include <xstrtol.h>.
8272         (human_options): Return enum strtol_error, not int.  Remove
8273         bool arg; take int * instead.
8274         * lib/human.c: Don't include "gettext.h".
8275         (_): Remove; no longer used.
8276         Don't include <xstrtol.h>, since human.h does it.
8277         (human_options): Adjust to abovementioned interface changes.
8278         Do not report error to stderr; that's now the caller's
8279         responsibility.
8280         * lib/xstrtol.c (main) [defined TESTING_XSTRTO]: Adjust to
8281         interface change.
8282         * lib/xstrtol.h (_STRTOL_ERROR): Take Option, Arg rather than
8283         Str, Argument_type_string.  All uses changed.  Put " argument"
8284         in diagnostics to make them clearer.  Change wording of suffix
8285         message for clarity.
8286         (STRTOL_FATAL_ERROR): Take Option, Arg rather than Str,
8287         Argument_type_string.
8288         (STRTOL_FATAL_WARN): Remove; no longer used.
8289         * modules/human (Depends-on): Remove gettext-h.
8290
8291 2007-08-06  Simon Josefsson  <simon@josefsson.org>
8292
8293         * build-aux/maint.mk, build-aux/GNUmakefile: Relicense to GPLv3+.
8294
8295 2007-07-31  Bruno Haible  <bruno@clisp.org>
8296
8297         * m4/stdint.m4 (gl_STDINT_H): Test whether WCHAR_MIN and WCHAR_MAX
8298         are defined by <stdint.h> (as opposed to <wchar.h>, as on Dragonfly).
8299         Reported by Joerg Sonnenberger <joerg@britannica.bec.de>.
8300
8301 2007-07-31  Bruno Haible  <bruno@clisp.org>
8302
8303         * lib/fflush.c (rpl_fflush): On BSD systems, use the __SNPT flag.
8304         Suggested by Joerg Sonnenberger <joerg@britannica.bec.de>.
8305
8306 2007-07-30  Bruno Haible  <bruno@clisp.org>
8307
8308         * modules/base64 (License): Use the synonymous term "LGPLv2+".
8309         * modules/c-ctype (License): Likewise.
8310         * modules/c-strcase (License): Likewise.
8311         * modules/check-version (License): Likewise.
8312         * modules/iconv (License): Likewise.
8313         * modules/iconv_open (License): Likewise.
8314         * modules/read-file (License): Likewise.
8315         * modules/striconv (License): Likewise.
8316         * modules/strverscmp (License): Likewise.
8317         * modules/vasprintf (License): Likewise.
8318         * modules/crypto/des (License): Likewise.
8319         * modules/crypto/gc (License): Likewise.
8320         * modules/crypto/gc-arcfour (License): Likewise.
8321         * modules/crypto/gc-arctwo (License): Likewise.
8322         * modules/crypto/gc-des (License): Likewise.
8323         * modules/crypto/gc-hmac-md5 (License): Likewise.
8324         * modules/crypto/gc-hmac-sha1 (License): Likewise.
8325         * modules/crypto/gc-md2 (License): Likewise.
8326         * modules/crypto/gc-md4 (License): Likewise.
8327         * modules/crypto/gc-md5 (License): Likewise.
8328         * modules/crypto/gc-pbkdf2-sha1 (License): Likewise.
8329         * modules/crypto/gc-random (License): Likewise.
8330         * modules/crypto/gc-rijndael (License): Likewise.
8331         * modules/crypto/gc-sha1 (License): Likewise.
8332         * modules/crypto/md2 (License): Likewise.
8333         * modules/crypto/md4 (License): Likewise.
8334
8335 2007-07-30  Jim Meyering  <jim@meyering.net>
8336
8337         * lib/fts.c (fts_read): Upon failure to chdir into a subdirectory,
8338         set fts_info to FTS_DNR, not to FTS_ERR, so that the caller knows
8339         it has valid stat data.  This bug would cause du not to count the
8340         sizes of inaccessible directories.
8341         Patch by Bryan Mason <bmason@redhat.com>, via Jose Maria Plans
8342         in <http://bugzilla.redhat.com/250077>.
8343
8344 2007-07-25  Peter O'Gorman  <peter@pogma.com>
8345             Bruno Haible  <bruno@clisp.org>
8346
8347         * m4/include_next.m4 (gl_INCLUDE_NEXT): Test whether #include_next
8348         really works. Needed because AIX 4.3 "xlc -E" doesn't understand
8349         #include_next, gives a diagnostic about it, but reports no error in
8350         the exit code.
8351         Reported by Gary V. Vaughan <gary@thewrittenword.com>.
8352
8353 2007-07-24  Ben Pfaff  <blp@gnu.org>
8354
8355         Improve name: "count-one-bits" is better than "popcount".
8356         * MODULES.html.sh: Update name.
8357         * lib/popcount.h: Renamed lib/count-one-bits.h.
8358         (popcount): Renamed count_one_bits.
8359         (popcountl): Renamed count_one_bits_l.
8360         (popcountll): Renamed count_one_bits_ll.
8361         * m4/popcount.m4: Renamed m4/count-one-bits.m4.
8362         * modules/popcount: Renamed module/count-one-bits.
8363         * modules/popcount-tests: Renamed module/count-one-bits-tests.
8364         * tests/test-popcount.c: Renamed tests/test-count-one-bits.c.
8365
8366 2007-07-23  Ben Pfaff  <blp@gnu.org>
8367
8368         * lib/popcount.h (popcount32): Reduce size of constants, to allow
8369         better code generation, and add U to large constants to avoid
8370         warnings, in non-GCC case.
8371         Suggested by Bruno Haible.
8372
8373 2007-07-23  Ben Pfaff  <blp@gnu.org>
8374
8375         * lib/popcount.h: Use verify_true instead of if...abort.
8376         * modules/popcount: Depend on verify module.
8377         Suggested by Jim Meyering.
8378
8379 2007-07-23  Bruno Haible  <bruno@clisp.org>
8380
8381         * gnulib-tool (func_import): Create a .cvsignore file also when the
8382         directory is not yet in CVS but the toplevel directory is. When
8383         creating a .cvsignore file, add ".deps" and ".dirstamp" to it.
8384         Reported by Karl Berry.
8385
8386 2007-07-22  Ben Pfaff  <blp@gnu.org>
8387
8388         * lib/popcount.h: Use faster, branchless algorithm for non-GCC
8389         case.
8390         Suggested by Eric Blake.
8391
8392 2007-07-22  Ben Pfaff  <blp@gnu.org>
8393
8394         New module: popcount.
8395         * MODULES.html.sh: Add popcount.
8396         * modules/popcount: New file.
8397         * modules/popcount-tests: New file.
8398         * tests/test-popcount.c: New file.
8399         * lib/popcount.h: New file.
8400         * m4/popcount.m4: New file.
8401
8402 2007-07-22  Paul Eggert  <eggert@cs.ucla.edu>
8403
8404         * build-aux/announce-gen: Update to GPLv3.
8405
8406         * build-aux/config.guess: Update from config.
8407
8408 2007-07-21  Bruno Haible  <bruno@clisp.org>
8409
8410         * lib/error.c (_) [ENABLE_NLS]: Define to gettext.
8411         * lib/verror.c (_) [ENABLE_NLS]: Likewise.
8412
8413 2007-07-20  Jim Meyering  <jim@meyering.net>
8414
8415         * check-module: Diagnose a self-dependency.
8416
8417 2007-07-19  Bruno Haible  <bruno@clisp.org>
8418
8419         * gnulib-tool (func_import): Don't abort if pobase or po_domain is
8420         empty.
8421         Reported by Eric Blake.
8422
8423 2007-07-18  Bruno Haible  <bruno@clisp.org>
8424
8425         * gnulib-tool: New options --po-base, --po-domain.
8426         (func_usage): Document them.
8427         (pobase, po_domain): New variables.
8428         (func_emit_lib_Makefile_am): Augment AM_CPPFLAGS, defining
8429         DEFAULT_TEXT_DOMAIN.
8430         (func_emit_po_Makevars, func_emit_po_POTFILES_in): New functions.
8431         (func_import): Consider pobase and po_domain. Create a po/ directory.
8432         (func_create_testdir): Set pobase and po_domain to empty.
8433         * build-aux/po/Makefile.in.in: New file, from GNU gettext 0.16.1.
8434         * build-aux/po/remove-potcdate.sin: New file, from GNU gettext 0.16.1.
8435
8436 2007-07-18  Bruno Haible  <bruno@clisp.org>
8437
8438         * gnulib-tool (func_get_automake_snippet): Synthesize also an
8439         EXTRA_DIST augmentation for files in build-aux/.
8440
8441 2007-07-16  Bruno Haible  <bruno@clisp.org>
8442
8443         * modules/lseek (License): Use the synonymous term "LGPLv2+".
8444         * modules/getdelim (License): Likewise.
8445
8446 2007-07-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
8447
8448         * modules/arpa_inet (License): Use the synonymous term LGPLv2+.
8449         * modules/d-type (License): Likewise.
8450         * modules/extensions (License): Likewise.
8451         * modules/fnmatch (License): Likewise.
8452         * modules/fseeko (License): Likewise.
8453         * modules/getaddrinfo (License): Likewise.
8454         * modules/getline (License): Likewise.
8455         * modules/getlogin_r (License): Likewise.
8456         * modules/getpass (License): Likewise.
8457         * modules/gettimeofday (License): Likewise.
8458         * modules/glob (License): Likewise.
8459         * modules/inet_ntop (License): Likewise.
8460         * modules/malloc (License): Likewise.
8461         * modules/malloca (License): Likewise.
8462         * modules/memmem (License): Likewise.
8463         * modules/mempcpy (License): Likewise.
8464         * modules/memset (License): Likewise.
8465         * modules/minmax (License): Likewise.
8466         * modules/mktime (License): Likewise.
8467         * modules/netinet_in (License): Likewise.
8468         * modules/pathmax (License): Likewise.
8469         * modules/poll (License): Likewise.
8470         * modules/regex (License): Likewise.
8471         * modules/snprintf (License): Likewise.
8472         * modules/stdbool (License): Likewise.
8473         * modules/stdint (License): Likewise.
8474         * modules/stdio (License): Likewise.
8475         * modules/strcase (License): Likewise.
8476         * modules/strcasestr (License): Likewise.
8477         * modules/strdup (License): Likewise.
8478         * modules/string (License): Likewise.
8479         * modules/strndup (License): Likewise.
8480         * modules/strnlen (License): Likewise.
8481         * modules/strpbrk (License): Likewise.
8482         * modules/strptime (License): Likewise.
8483         * modules/strsep (License): Likewise.
8484         * modules/sys_select (License): Likewise.
8485         * modules/sys_socket (License): Likewise.
8486         * modules/sys_stat (License): Likewise.
8487         * modules/sys_time (License): Likewise.
8488         * modules/time (License): Likewise.
8489         * modules/time_r (License): Likewise.
8490         * modules/timegm (License): Likewise.
8491         * modules/unistd (License): Likewise.
8492         * modules/vsnprintf (License): Likewise.
8493         * modules/wctype (License): Likewise.
8494
8495 2007-07-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8496
8497         * modules/argz (License): LGPLv2+.
8498
8499 2007-07-15  Karl Berry  <karl@gnu.org>
8500
8501         * doc/gnulib.texi: revise node structure per new fdl.texi.
8502
8503 2007-07-14  Bruno Haible  <bruno@clisp.org>
8504
8505         * lib/uniname/gen-uninames.lisp (main): Emit a "do not edit" line to
8506         the output file.
8507         * lib/uniname/uninames.h: Regenerated.
8508
8509 2007-07-14  Karl Berry  <karl@gnu.org>
8510
8511         * doc/*gpl*.texi, doc/fdl.texi: new versions, consistently
8512         omitting sectioning and index commands.
8513
8514 2007-07-13  Bruno Haible  <bruno@clisp.org>
8515
8516         New gnulib-tool option --more-symlinks.
8517         * gnulib-tool (func_usage): Document --more-symlinks.
8518         (do_copyrights): New variable.
8519         Recognize option --more-symlinks.
8520         (func_import): Don't add a copyright notice transform to
8521         sed_transform_lib_file if do_copyrights is empty.
8522
8523 2007-07-13  Bruno Haible  <bruno@clisp.org>
8524
8525         * lib/vasnprintf.c (decimal_point_char): Define also if
8526         (NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_INFINITE_DOUBLE)
8527         && !NEED_PRINTF_DIRECTIVE_A.
8528         Reported by Clemens Koller <clemens.koller@anagramm.de> via
8529         Gary V. Vaughan <gary@gnu.org>.
8530
8531 2007-07-13  Paul Eggert  <eggert@cs.ucla.edu>
8532
8533         * lib/inttypes_.h: Undo previous change, since it was fixed
8534         in a different way in the 2007-07-02 fix to m4/inttypes.m4.
8535
8536 2007-07-13  Bruno Haible  <bruno@clisp.org>
8537
8538         * lib/stdint_.h: Fix typo: _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H was
8539         misspelled as _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H.
8540
8541 2007-07-13  Jim Meyering  <jim@meyering.net>
8542
8543         df: Don't fail for Tru64's "file-on-file mount".
8544         * m4/fsusage.m4 (gl_FSUSAGE): Reject Tru64's buggy statvfs,
8545         so we fall through and use statfs instead.  Details here:
8546         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/10878>
8547         Reported by Albert Chin.
8548
8549 2007-07-13  Bruno Haible  <bruno@clisp.org>
8550
8551         * modules/alloca-opt (License): Use the synonymous term "LGPLv2+".
8552         * modules/configmake (License): Likewise.
8553         * modules/gettext (License): Likewise.
8554         * modules/gettext-h (License): Likewise.
8555         * modules/include_next (License): Likewise.
8556         * modules/link-warning (License): Likewise.
8557         * modules/localcharset (License): Likewise.
8558         * modules/localename (License): Likewise.
8559         * modules/lock (License): Likewise.
8560         * modules/relocatable-lib-lgpl (License): Likewise.
8561         * modules/size_max (License): Likewise.
8562         * modules/vasnprintf (License): Likewise.
8563         * modules/wchar (License): Likewise.
8564         * modules/xsize (License): Likewise.
8565
8566 2007-07-13  Bruno Haible  <bruno@clisp.org>
8567
8568         * gnulib-tool (func_import): Treat LGPLv2 as synonymous to LGPL.
8569         (func_create_testdir): Handle copying terms "GPLv2+" and "LGPLv2+".
8570
8571 2007-07-12  Bruno Haible  <bruno@clisp.org>
8572
8573         * doc/gnulib-intro.texi (Copyright): Clarify the license abbreviations
8574         in the modules files.
8575
8576 2007-07-11  Karl Berry  <karl@gnu.org>
8577
8578         * MODULES.html.sh (func_module): use
8579          sed -e '\|^'"${includefile}"'$|d'
8580          instead of /.../d, to avoid errors on $includefile's containing /.
8581
8582 2007-07-10  Sergey Poznyakoff  <gray@gnu.org.ua>
8583
8584         * gnulib-tool (func_import): Avoid duplication of --avoid
8585         statements
8586         (func_dest_tmpfilename,func_create_testdir): Translate `-' in file
8587         names to `_' in variable names.
8588
8589 2007-07-10  Eric Blake  <ebb9@byu.net>
8590
8591         * lib/version-etc.c (version_etc_va): Default to GPLv3+.
8592         * NEWS: Document this change.
8593
8594 2007-07-08  Bruno Haible  <bruno@clisp.org>
8595
8596         Update to Unicode 5.0.
8597         * lib/uniwidth/width.c (nonspacing_table_data): Add U+00AD,
8598         U+0350..U+035F, U+05A2, U+05BA, U+05C5, U+05C7, U+0600..U+0603,
8599         U+0610..U+0615, U+0656..U+065E, U+07EB..U+07F3, U+0A01, U+0AE2..U+0AE3,
8600         U+0CBC. Remove U+0CBF, U+0CC6. Add U+0CE2..U+0CE3, U+135F,
8601         U+17B4..U+17B5, U+17DD. Remove U+180E. Add U+1920..U+1922,
8602         U+1927..U+192B, U+1932, U+1939..U+193B, U+1A17..U+1A18, U+1B00..U+1B03,
8603         U+1B34, U+1B36..U+1B3A, U+1B3C, U+1B42, U+1B6B..U+1B73, U+1DC0..U+1DCA,
8604         U+1DFE..U+1DFF, U+20EB..U+20EF, U+A802, U+A806, U+A80B, U+A825..U+A826,
8605         U+10A01..U+10A03, U+10A05..U+10A06, U+10A0C..U+10A0F, U+10A38..U+10A3A,
8606         U+10A3F, U+1D242..U+1D244.
8607         (nonspacing_table_ind): Update.
8608         (uc_width): Assign width 0 to U+E0100..U+E01EF. Assign width 1 to
8609         U+4DC0..U+4DFF. Assign width 2 to U+2329..U+232A, U+FE10..U+FE1F.
8610
8611 2007-07-08  Bruno Haible  <bruno@clisp.org>
8612
8613         Update to Unicode 5.0.
8614         * lib/uniname/gen-uninames.lisp (main): Add the range 0x12xxx to the
8615         code transform. Extend the name index field of unicode_name_to_code and
8616         unicode_code_to_name from 16 to 24 bits.
8617         * lib/uniname/uniname.c (unicode_character_name,
8618         unicode_name_character): Add the range 0x12xxx to the code transform.
8619         * lib/uniname/uninames.h: Regenerated.
8620         * tests/uniname/UnicodeDataNames.txt: Update to Unicode 5.0.
8621
8622 2007-07-07  Bruno Haible  <bruno@clisp.org>
8623
8624         * modules/wcwidth-tests: New file.
8625         * tests/test-wcwidth.c: New file.
8626
8627         Work around MacOS X wcwidth() bug.
8628         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Test against MacOS X 10.3 bug.
8629         * lib/wcwidth.c: Include localcharset.h, streq.h, uniwidth.h.
8630         (rpl_wcwidth): Special-case the UTF-8 locales. Fall back to the
8631         original wcwidth in non-UTF-8 locales.
8632         * modules/wcwidth (Depends-on): Add localcharset, streq,
8633         uniwidth/width.
8634         * doc/functions/wcwidth.texi: Update.
8635
8636 2007-07-07  Bruno Haible  <bruno@clisp.org>
8637
8638         * lib/wchar_.h: Include the GL_LINK_WARNING macro.
8639         (wcwidth): New declaration.
8640         * m4/wchar.m4 (gl_WCHAR_MODULE_INDICATOR, gl_WCHAR_H_DEFAULTS): New
8641         macros.
8642         (gl_WCHAR_H): Require gl_WCHAR_H_DEFAULTS. Don't set WCHAR_H to empty
8643         here. Prepare for creating <wchar.h> unconditionally.
8644         * modules/wchar (Depends-on): Add link-warning.
8645         (Makefile.am): Substitute also GNULIB_WCWIDTH, HAVE_DECL_WCWIDTH,
8646         REPLACE_WCWIDTH, and GL_LINK_WARNING.
8647         * lib/wcwidth.h: Remove file.
8648         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gl_WCHAR_H_DEFAULTS. Set
8649         HAVE_DECL_WCWIDTH, REPLACE_WCWIDTH, WCHAR_H.
8650         * modules/wcwidth (Files): Remove lib/wcwidth.h.
8651         (configure.ac): Invoke gl_WCHAR_MODULE_INDICATOR.
8652         (Include): Replace wcwidth.h with <wchar.h>.
8653         * lib/wcwidth.c: Include <wchar.h> instead of wcwidth.h.
8654         * lib/mbchar.h: Don't include wcwidth.h.
8655         * lib/mbswidth.c: Likewise.
8656         * NEWS: Mention the change.
8657
8658 2007-07-07  Bruno Haible  <bruno@clisp.org>
8659
8660         * lib/wcwidth.c: New file, extracted from lib/wcwidth.h.
8661         * lib/wcwidth.h: Don't include wctype.h. Replace inline function
8662         definition with an external declaration.
8663         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Use wcwidth.c when wcwidth is not
8664         defined as a function. Remove AC_C_INLINE requirement.
8665         * modules/wcwidth (Files): Add lib/wcwidth.c.
8666         (Makefile.am): Remove redundant statement.
8667
8668 2007-07-07  Bruno Haible  <bruno@clisp.org>
8669
8670         * MODULES.html.sh (Unicode string functions): Add the new modules.
8671
8672         * tests/uniwidth/test-u32-strwidth.c: New file.
8673         * modules/uniwidth/u32-strwidth-tests: New file.
8674
8675         * lib/uniwidth/u32-strwidth.c: New file.
8676         * modules/uniwidth/u32-strwidth: New file.
8677
8678         * tests/uniwidth/test-u16-strwidth.c: New file.
8679         * modules/uniwidth/u16-strwidth-tests: New file.
8680
8681         * lib/uniwidth/u16-strwidth.c: New file.
8682         * modules/uniwidth/u16-strwidth: New file.
8683
8684         * tests/uniwidth/test-u8-strwidth.c: New file.
8685         * modules/uniwidth/u8-strwidth-tests: New file.
8686
8687         * lib/uniwidth/u8-strwidth.c: New file.
8688         * modules/uniwidth/u8-strwidth: New file.
8689
8690         * tests/uniwidth/test-u32-width.c: New file.
8691         * modules/uniwidth/u32-width-tests: New file.
8692
8693         * lib/uniwidth/u32-width.c: New file.
8694         * modules/uniwidth/u32-width: New file.
8695
8696         * tests/uniwidth/test-u16-width.c: New file.
8697         * modules/uniwidth/u16-width-tests: New file.
8698
8699         * lib/uniwidth/u16-width.c: New file.
8700         * modules/uniwidth/u16-width: New file.
8701
8702         * tests/uniwidth/test-u8-width.c: New file.
8703         * modules/uniwidth/u8-width-tests: New file.
8704
8705         * lib/uniwidth/u8-width.c: New file.
8706         * modules/uniwidth/u8-width: New file.
8707
8708         * tests/uniwidth/test-uc_width.c: New file.
8709         * modules/uniwidth/width-tests: New file.
8710
8711         * lib/uniwidth/width.c: New file, from GNU libiconv.
8712         * lib/uniwidth/cjk.h: New file, from GNU libiconv.
8713         * modules/uniwidth/width: New file.
8714
8715         * lib/uniwidth.h: New file, from GNU libiconv.
8716         * modules/uniwidth/base: New file.
8717
8718 2007-07-07  Bruno Haible  <bruno@clisp.org>
8719
8720         * lib/uniname.h: New file, from GNU gettext.
8721         * lib/uniname/gen-uninames.lisp: New file, from GNU gettext.
8722         * lib/uniname/uninames.h: New file, from GNU gettext.
8723         * lib/uniname/uniname.c: New file, from GNU gettext.
8724         * tests/uniname/test-uninames.sh: New file.
8725         * tests/uniname/test-uninames.c: New file, from GNU gettext.
8726         * tests/uniname/UnicodeDataNames.txt: New file, from GNU gettext.
8727         * modules/uniname/base: New file.
8728         * modules/uniname/uniname: New file.
8729         * modules/uniname/uniname-tests: New file.
8730         * MODULES.html.sh (Unicode string functions): Add the new modules.
8731
8732 2007-07-06  Bruno Haible  <bruno@clisp.org>
8733
8734         * doc/Makefile (TEXI2HTML): Specify a --reference-limit.
8735
8736 2007-07-06  Bruno Haible  <bruno@clisp.org>
8737
8738         * lib/sys_time_.h: Use a recursion-safe inclusion guard rather than
8739         a split double-inclusion guard. Needed for cygwin, where <sys/time.h>
8740         includes <cygwin/sys_time.h> which includes <sys/select.h> which
8741         include <sys/time.h>.
8742         Reported by Eric Blake.
8743
8744 2007-07-06  Eric Blake  <ebb9@byu.net>
8745
8746         Fix testing canonicalize on cygwin.
8747         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
8748         Revert patch from 2007-06-19.
8749         * tests/test-canonicalize-lgpl.c (main): Instead, skip test when
8750         canonicalize module is also in use.
8751         * tests/test-canonicalize.c: New file.
8752         * tests/test-canonicalize.sh: Likewise.
8753         * modules/canonicalize-tests: Likewise.
8754
8755 2007-07-06  Jim Meyering  <jim@meyering.net>
8756
8757         * lib/getugroups.c (getugroups): Detect getgrent failure.
8758         Adjust comment to reflect reality: this function may return -1.
8759
8760 2007-07-05  Sergey Poznyakoff  <gray@gnu.org.ua>
8761
8762         * build-aux/bootstrap (TP_URL,get_translations): Update to use
8763         the new TP address.
8764         (usage): Fix typo
8765         (gnulib_mk): New variable.
8766
8767 2007-07-05  Jim Meyering  <jim@meyering.net>
8768
8769         Don't let endgrent clobber errno, no matter how improbable.
8770         * lib/getugroups.c (getugroups): Save and restore errno around
8771         endgrent call.
8772
8773         Close the group DB even when failing with 2^31 or more members.
8774         * lib/getugroups.c (getugroups): Don't return without calling endgrent.
8775
8776 2007-07-04  Jim Meyering  <jim@meyering.net>
8777
8778         * lib/getugroups.h: New file.
8779         * lib/getugroups.c: Include "getugroups.h".
8780         Remove uses of "register" keyword.
8781         Move local variable, "cp", down into scope where used.
8782         Give "username" parameter the "const" attribute.
8783         * modules/getugroups (Files): Add lib/getugroups.h
8784
8785 2007-07-04  Karl Berry  <karl@gnu.org>
8786
8787         * MODULES.html.sh (func_all_modules): Complete rename of
8788         gpl/lgpl to gpl-2.0 and lgpl-2.1, and add gpl-3.0.
8789
8790 2007-07-02  Bruno Haible  <bruno@clisp.org>
8791
8792         * m4/inttypes.m4 (gl_INTTYPES_H): Define __STDC_LIMIT_MACROS in C++
8793         mode, when inttypes.h comes from gnulib.
8794         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
8795
8796 2007-07-02  Simon Josefsson  <simon@josefsson.org>
8797
8798         * NEWS: Mention lgpl module name change.
8799
8800         * modules/lgpl-2.1: Renamed from lgpl.
8801
8802         * NEWS: Mention gpl module name change.
8803
8804         * modules/gpl-3.0: New file, based on gpl-2.0.
8805
8806         * modules/gpl-2.0: Renamed from gpl.
8807
8808         * modules/gpl: Fix filename, doc/gpl.texi is now found at
8809         doc/gpl-2.0.texi.
8810
8811 2007-07-02  Paul Eggert  <eggert@cs.ucla.edu>
8812
8813         * lib/inttypes_.h [defined __cplusplus&&!defined __STDC_LIMIT_MACROS]:
8814         #define __STDC_LIMIT_MACROS temporarily while including
8815         <stdint.h>, so that __STDC_LIMIT_MACROS is defined.
8816         Problem reported by Joel E. Denny in
8817         <http://lists.gnu.org/archive/html/bug-gnulib/2007-07/msg00008.html>.
8818
8819 2007-07-01  Bruno Haible  <bruno@clisp.org>
8820
8821         * lib/unistdio.h: New file.
8822         * lib/unistdio/u-asnprintf.h: New file.
8823         * lib/unistdio/u-asprintf.h: New file.
8824         * lib/unistdio/u-printf-args.c: New file.
8825         * lib/unistdio/u-printf-args.h: New file.
8826         * lib/unistdio/u-printf-parse.h: New file.
8827         * lib/unistdio/u-snprintf.h: New file.
8828         * lib/unistdio/u-sprintf.h: New file.
8829         * lib/unistdio/u-vasprintf.h: New file.
8830         * lib/unistdio/u-vsnprintf.h: New file.
8831         * lib/unistdio/u-vsprintf.h: New file.
8832         * lib/unistdio/ulc-asnprintf.c: New file.
8833         * lib/unistdio/ulc-asprintf.c: New file.
8834         * lib/unistdio/ulc-fprintf.c: New file, based on lib/fprintf.c.
8835         * lib/unistdio/ulc-printf-parse.c: New file.
8836         * lib/unistdio/ulc-snprintf.c: New file.
8837         * lib/unistdio/ulc-sprintf.c: New file.
8838         * lib/unistdio/ulc-vasnprintf.c: New file.
8839         * lib/unistdio/ulc-vasprintf.c: New file.
8840         * lib/unistdio/ulc-vfprintf.c: New file, based on lib/vfprintf.c.
8841         * lib/unistdio/ulc-vsnprintf.c: New file.
8842         * lib/unistdio/ulc-vsprintf.c: New file.
8843         * lib/unistdio/u8-asnprintf.c: New file.
8844         * lib/unistdio/u8-asprintf.c: New file.
8845         * lib/unistdio/u8-printf-parse.c: New file.
8846         * lib/unistdio/u8-snprintf.c: New file.
8847         * lib/unistdio/u8-sprintf.c: New file.
8848         * lib/unistdio/u8-vasnprintf.c: New file.
8849         * lib/unistdio/u8-vasprintf.c: New file.
8850         * lib/unistdio/u8-vsnprintf.c: New file.
8851         * lib/unistdio/u8-vsprintf.c: New file.
8852         * lib/unistdio/u8-u8-asnprintf.c: New file.
8853         * lib/unistdio/u8-u8-asprintf.c: New file.
8854         * lib/unistdio/u8-u8-snprintf.c: New file.
8855         * lib/unistdio/u8-u8-sprintf.c: New file.
8856         * lib/unistdio/u8-u8-vasnprintf.c: New file.
8857         * lib/unistdio/u8-u8-vasprintf.c: New file.
8858         * lib/unistdio/u8-u8-vsnprintf.c: New file.
8859         * lib/unistdio/u8-u8-vsprintf.c: New file.
8860         * lib/unistdio/u16-asnprintf.c: New file.
8861         * lib/unistdio/u16-asprintf.c: New file.
8862         * lib/unistdio/u16-printf-parse.c: New file.
8863         * lib/unistdio/u16-snprintf.c: New file.
8864         * lib/unistdio/u16-sprintf.c: New file.
8865         * lib/unistdio/u16-vasnprintf.c: New file.
8866         * lib/unistdio/u16-vasprintf.c: New file.
8867         * lib/unistdio/u16-vsnprintf.c: New file.
8868         * lib/unistdio/u16-vsprintf.c: New file.
8869         * lib/unistdio/u16-u16-asnprintf.c: New file.
8870         * lib/unistdio/u16-u16-asprintf.c: New file.
8871         * lib/unistdio/u16-u16-snprintf.c: New file.
8872         * lib/unistdio/u16-u16-sprintf.c: New file.
8873         * lib/unistdio/u16-u16-vasnprintf.c: New file.
8874         * lib/unistdio/u16-u16-vasprintf.c: New file.
8875         * lib/unistdio/u16-u16-vsnprintf.c: New file.
8876         * lib/unistdio/u16-u16-vsprintf.c: New file.
8877         * lib/unistdio/u32-asnprintf.c: New file.
8878         * lib/unistdio/u32-asprintf.c: New file.
8879         * lib/unistdio/u32-printf-parse.c: New file.
8880         * lib/unistdio/u32-snprintf.c: New file.
8881         * lib/unistdio/u32-sprintf.c: New file.
8882         * lib/unistdio/u32-vasnprintf.c: New file.
8883         * lib/unistdio/u32-vasprintf.c: New file.
8884         * lib/unistdio/u32-vsnprintf.c: New file.
8885         * lib/unistdio/u32-vsprintf.c: New file.
8886         * lib/unistdio/u32-u32-asnprintf.c: New file.
8887         * lib/unistdio/u32-u32-asprintf.c: New file.
8888         * lib/unistdio/u32-u32-snprintf.c: New file.
8889         * lib/unistdio/u32-u32-sprintf.c: New file.
8890         * lib/unistdio/u32-u32-vasnprintf.c: New file.
8891         * lib/unistdio/u32-u32-vasprintf.c: New file.
8892         * lib/unistdio/u32-u32-vsnprintf.c: New file.
8893         * lib/unistdio/u32-u32-vsprintf.c: New file.
8894         * tests/unistdio/test-ulc-asnprintf1.c: New file.
8895         * tests/unistdio/test-ulc-asnprintf1.h: New file.
8896         * tests/unistdio/test-ulc-printf1.h: New file.
8897         * tests/unistdio/test-ulc-vasnprintf1.c: New file.
8898         * tests/unistdio/test-ulc-vasnprintf2.c: New file.
8899         * tests/unistdio/test-ulc-vasnprintf2.sh: New file.
8900         * tests/unistdio/test-ulc-vasnprintf3.c: New file.
8901         * tests/unistdio/test-ulc-vasnprintf3.sh: New file.
8902         * tests/unistdio/test-ulc-vasprintf1.c: New file.
8903         * tests/unistdio/test-ulc-vsnprintf1.c: New file.
8904         * tests/unistdio/test-ulc-vsprintf1.c: New file.
8905         * tests/unistdio/test-u8-asnprintf1.c: New file.
8906         * tests/unistdio/test-u8-asnprintf1.h: New file.
8907         * tests/unistdio/test-u8-printf1.h: New file.
8908         * tests/unistdio/test-u8-vasnprintf1.c: New file.
8909         * tests/unistdio/test-u8-vasnprintf2.c: New file.
8910         * tests/unistdio/test-u8-vasnprintf2.sh: New file.
8911         * tests/unistdio/test-u8-vasnprintf3.c: New file.
8912         * tests/unistdio/test-u8-vasnprintf3.sh: New file.
8913         * tests/unistdio/test-u8-vasprintf1.c: New file.
8914         * tests/unistdio/test-u8-vsnprintf1.c: New file.
8915         * tests/unistdio/test-u8-vsprintf1.c: New file.
8916         * tests/unistdio/test-u16-asnprintf1.c: New file.
8917         * tests/unistdio/test-u16-asnprintf1.h: New file.
8918         * tests/unistdio/test-u16-printf1.h: New file.
8919         * tests/unistdio/test-u16-vasnprintf1.c: New file.
8920         * tests/unistdio/test-u16-vasnprintf2.c: New file.
8921         * tests/unistdio/test-u16-vasnprintf2.sh: New file.
8922         * tests/unistdio/test-u16-vasnprintf3.c: New file.
8923         * tests/unistdio/test-u16-vasnprintf3.sh: New file.
8924         * tests/unistdio/test-u16-vasprintf1.c: New file.
8925         * tests/unistdio/test-u16-vsnprintf1.c: New file.
8926         * tests/unistdio/test-u16-vsprintf1.c: New file.
8927         * tests/unistdio/test-u32-asnprintf1.c: New file.
8928         * tests/unistdio/test-u32-asnprintf1.h: New file.
8929         * tests/unistdio/test-u32-printf1.h: New file.
8930         * tests/unistdio/test-u32-vasnprintf1.c: New file.
8931         * tests/unistdio/test-u32-vasnprintf2.c: New file.
8932         * tests/unistdio/test-u32-vasnprintf2.sh: New file.
8933         * tests/unistdio/test-u32-vasnprintf3.c: New file.
8934         * tests/unistdio/test-u32-vasnprintf3.sh: New file.
8935         * tests/unistdio/test-u32-vasprintf1.c: New file.
8936         * tests/unistdio/test-u32-vsnprintf1.c: New file.
8937         * tests/unistdio/test-u32-vsprintf1.c: New file.
8938         * modules/unistdio/base: New file.
8939         * modules/unistdio/u-printf-args: New file.
8940         * modules/unistdio/ulc-asnprintf: New file.
8941         * modules/unistdio/ulc-asprintf: New file.
8942         * modules/unistdio/ulc-fprintf: New file.
8943         * modules/unistdio/ulc-printf-parse: New file.
8944         * modules/unistdio/ulc-snprintf: New file.
8945         * modules/unistdio/ulc-sprintf: New file.
8946         * modules/unistdio/ulc-vasnprintf: New file.
8947         * modules/unistdio/ulc-vasprintf: New file.
8948         * modules/unistdio/ulc-vfprintf: New file.
8949         * modules/unistdio/ulc-vsnprintf: New file.
8950         * modules/unistdio/ulc-vsprintf: New file.
8951         * modules/unistdio/u8-asnprintf: New file.
8952         * modules/unistdio/u8-asprintf: New file.
8953         * modules/unistdio/u8-printf-parse: New file.
8954         * modules/unistdio/u8-snprintf: New file.
8955         * modules/unistdio/u8-sprintf: New file.
8956         * modules/unistdio/u8-vasnprintf: New file.
8957         * modules/unistdio/u8-vasprintf: New file.
8958         * modules/unistdio/u8-vsnprintf: New file.
8959         * modules/unistdio/u8-vsprintf: New file.
8960         * modules/unistdio/u8-u8-asnprintf: New file.
8961         * modules/unistdio/u8-u8-asprintf: New file.
8962         * modules/unistdio/u8-u8-snprintf: New file.
8963         * modules/unistdio/u8-u8-sprintf: New file.
8964         * modules/unistdio/u8-u8-vasnprintf: New file.
8965         * modules/unistdio/u8-u8-vasprintf: New file.
8966         * modules/unistdio/u8-u8-vsnprintf: New file.
8967         * modules/unistdio/u8-u8-vsprintf: New file.
8968         * modules/unistdio/u16-asnprintf: New file.
8969         * modules/unistdio/u16-asprintf: New file.
8970         * modules/unistdio/u16-printf-parse: New file.
8971         * modules/unistdio/u16-snprintf: New file.
8972         * modules/unistdio/u16-sprintf: New file.
8973         * modules/unistdio/u16-vasnprintf: New file.
8974         * modules/unistdio/u16-vasprintf: New file.
8975         * modules/unistdio/u16-vsnprintf: New file.
8976         * modules/unistdio/u16-vsprintf: New file.
8977         * modules/unistdio/u16-u16-asnprintf: New file.
8978         * modules/unistdio/u16-u16-asprintf: New file.
8979         * modules/unistdio/u16-u16-snprintf: New file.
8980         * modules/unistdio/u16-u16-sprintf: New file.
8981         * modules/unistdio/u16-u16-vasnprintf: New file.
8982         * modules/unistdio/u16-u16-vasprintf: New file.
8983         * modules/unistdio/u16-u16-vsnprintf: New file.
8984         * modules/unistdio/u16-u16-vsprintf: New file.
8985         * modules/unistdio/u32-asnprintf: New file.
8986         * modules/unistdio/u32-asprintf: New file.
8987         * modules/unistdio/u32-printf-parse: New file.
8988         * modules/unistdio/u32-snprintf: New file.
8989         * modules/unistdio/u32-sprintf: New file.
8990         * modules/unistdio/u32-vasnprintf: New file.
8991         * modules/unistdio/u32-vasprintf: New file.
8992         * modules/unistdio/u32-vsnprintf: New file.
8993         * modules/unistdio/u32-vsprintf: New file.
8994         * modules/unistdio/u32-u32-asnprintf: New file.
8995         * modules/unistdio/u32-u32-asprintf: New file.
8996         * modules/unistdio/u32-u32-snprintf: New file.
8997         * modules/unistdio/u32-u32-sprintf: New file.
8998         * modules/unistdio/u32-u32-vasnprintf: New file.
8999         * modules/unistdio/u32-u32-vasprintf: New file.
9000         * modules/unistdio/u32-u32-vsnprintf: New file.
9001         * modules/unistdio/u32-u32-vsprintf: New file.
9002         * modules/unistdio/ulc-asnprintf-tests: New file.
9003         * modules/unistdio/ulc-vasnprintf-tests: New file.
9004         * modules/unistdio/ulc-vasprintf-tests: New file.
9005         * modules/unistdio/ulc-vsnprintf-tests: New file.
9006         * modules/unistdio/ulc-vsprintf-tests: New file.
9007         * modules/unistdio/u8-asnprintf-tests: New file.
9008         * modules/unistdio/u8-vasnprintf-tests: New file.
9009         * modules/unistdio/u8-vasprintf-tests: New file.
9010         * modules/unistdio/u8-vsnprintf-tests: New file.
9011         * modules/unistdio/u8-vsprintf-tests: New file.
9012         * modules/unistdio/u16-asnprintf-tests: New file.
9013         * modules/unistdio/u16-vasnprintf-tests: New file.
9014         * modules/unistdio/u16-vasprintf-tests: New file.
9015         * modules/unistdio/u16-vsnprintf-tests: New file.
9016         * modules/unistdio/u16-vsprintf-tests: New file.
9017         * modules/unistdio/u32-asnprintf-tests: New file.
9018         * modules/unistdio/u32-vasnprintf-tests: New file.
9019         * modules/unistdio/u32-vasprintf-tests: New file.
9020         * modules/unistdio/u32-vsnprintf-tests: New file.
9021         * modules/unistdio/u32-vsprintf-tests: New file.
9022         * MODULES.html.sh (Unicode string functions): Add the new modules.
9023
9024 2007-07-01  Bruno Haible  <bruno@clisp.org>
9025
9026         * lib/sprintf.c (sprintf): Limit the available length estimation,
9027         to avoid address wraparound.
9028         * lib/vsprintf.c (vsprintf): Likewise.
9029         * modules/sprintf-posix (Dependencies): Add stdint.
9030         * modules/vsprintf-posix (Dependencies): Likewise.
9031
9032 2007-07-01  Bruno Haible  <bruno@clisp.org>
9033
9034         * gnulib-tool (self_abspathname): Determine PATH_SEPARATOR and handle
9035         Windows PATH as well. Conservative double-quoting. Comments.
9036
9037 2007-07-01  Bruno Haible  <bruno@clisp.org>
9038             Eric Blake  <ebb9@byu.net>
9039             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9040
9041         * gnulib-tool (self_abspathname): Fix algorithm to cope with
9042         empty components in $PATH, denoting '.'.
9043
9044 2007-07-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9045
9046         * gnulib-tool: Fix indentation.
9047         (func_create_megatestdir): Likewise.
9048         Report by Bruno Haible.
9049
9050 2007-06-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9051
9052         Sync from Automake.
9053         * build-aux/gnupload: Fix shell portability issues with for loops.
9054         Report by Karl Berry.
9055
9056 2007-06-29  Simon Josefsson  <simon@josefsson.org>
9057
9058         * build-aux/maint.mk (POURL): Use translationproject.org.
9059
9060 2007-06-27  Simon Josefsson  <simon@josefsson.org>
9061             Bruno Haible  <bruno@clisp.org>
9062
9063         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Require gl_HEADER_SYS_SOCKET
9064         before using HAVE_WS2TCPIP_H. Check for gai_strerror through an
9065         explicit link test, rather than AC_REPLACE_FUNCS - for mingw.
9066         (gl_PREREQ_GETADDRINFO): Require gl_HEADER_SYS_SOCKET before using
9067         HAVE_SYS_SOCKET_H and HAVE_WS2TCPIP_H.
9068
9069 2007-06-27  Bruno Haible  <bruno@clisp.org>
9070
9071         * build-aux/config.rpath: Upgrade to libtool-1.5.24.
9072         * build-aux/config.libpath: Upgrade to libtool-1.5.24.
9073
9074 2007-06-26  Karl Berry  <karl@gnu.org>
9075
9076         * MODULES.html.sh: remove xreadlink-with-size.
9077
9078 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
9079
9080         * lib/time_.h: Port to Solaris 8 with Sun Studio 11, using a
9081         method that I hope also handles the double-include problem noted
9082         by Bruno Haible in
9083         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00186.html>.
9084
9085 2007-06-23  Bruno Haible  <bruno@clisp.org>
9086
9087         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
9088         Don't let the 'mostlyclean' target fail if the last subdirectory could
9089         not be removed.
9090         Reported by Karl Berry.
9091
9092 2007-06-23  Bruno Haible  <bruno@clisp.org>
9093
9094         * gnulib-tool (echo): Add a speedier workaround for ksh.
9095         * tests/test-echo.sh: Likewise.
9096
9097 2007-06-23  Bruno Haible  <bruno@clisp.org>
9098
9099         * gnulib-tool (echo): Add workarounds also for bash versions < 2.04.
9100         * tests/test-echo.sh: Likewise.
9101
9102 2007-06-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9103
9104         * gnulib-tool (IFS): Initialize early, so we don't set it to
9105         empty later.
9106         (self_abspathname): Rewrite algorithm to set it, reindent.
9107         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am)
9108         (func_create_megatestdir): Merge some sed scripts.
9109
9110 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
9111
9112         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Check some typos
9113         exposed by Sun Studio 11 cc on Solaris 8.
9114
9115 2007-06-22  Bruno Haible  <bruno@clisp.org>
9116
9117         * gnulib-tool (echo): Ensure the echo primitive does not interpret
9118         backslashes.
9119         * tests/test-echo.sh: New file.
9120
9121 2007-06-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9122
9123         * gnulib-tool (func_add_or_update, func_create_testdir): Do not
9124         simplify `sed_replace_build_aux' scripts, they are portable but
9125         echoing them with `echo' is not.
9126         Report and analysis by Fernando Ferreira <fernando.prog@netcabo.pt>.
9127
9128 2007-06-21  Karl Berry  <karl@gnu.org>
9129
9130         * config/srclist.txt: guess we can't handle the licenses via
9131         srclist at the moment.
9132
9133 2007-06-21  Paul Eggert  <eggert@cs.ucla.edu>
9134
9135         * MODULES.html.sh: Add include_next.
9136         * modules/include_next: New file.
9137
9138 2007-06-20  Paul Eggert  <eggert@cs.ucla.edu>
9139
9140         * m4/include_next.m4 (gl_INCLUDE_NEXT): Define and AC_SUBST
9141         INCLUDE_NEXT.
9142         (gl_CHECK_NEXT_HEADERS): New macro.
9143         * m4/fcntl_h.m4 (gl_FCNTL_H): use gl_CHECK_NEXT_HEADERS instead of
9144         the obsolescent gl_ABSOLUTE_HEADER.
9145         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Likewise.
9146         * m4/float_h.m4 (gl_FLOAT_H): Likewise.
9147         * m4/iconv_h.m4 (gl_ICONV_H): Likewise.
9148         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
9149         * m4/locale_h.m4 (gl_LOCALE_H): Likewise.
9150         * m4/math_h.m4 (gl_MATH_H): Likewise.
9151         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Likewise.
9152         * m4/search_h.m4 (gl_SEARCH_H): Likewise.
9153         * m4/signal_h.m4 (gl_SIGNAL_H): Likewise.
9154         * m4/stdint.m4 (gl_STDINT_H): Likewise.
9155         * m4/stdio_h.m4 (gl_STDIO_H): Likewise.
9156         * m4/stdlib_h.m4 (gl_STDLIB_H): Likewise.
9157         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Likewise.
9158         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
9159         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
9160         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Likewise.
9161         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Likewise.
9162         * m4/sysexits.m4 (gl_SYSEXITS): Likewise.
9163         * m4/time_h.m4 (gl_HEADER_TIME_H_BODY): Likewise.
9164         * m4/unistd_h.m4 (gl_UNISTD_H): Likewise.
9165         * m4/wchar.m4 (gl_WCHAR_H): Likewise.
9166         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
9167         * m4/inttypes.m4 (gl_INTTYPES_H): Define
9168         _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H to avoid the problem of unclean
9169         builds, since ABSOLUTE_INTTYPES_H is no longer being defined.
9170         * m4/stdint.m4 (gl_STDINT_H): Likewise, for
9171         _GL_JUST_INCLUDE_SYSTEM_STDINT_H.
9172         * lib/fcntl_.h: Use @INCLUDE_NEXT@ @NEXT_foo_H@
9173         rather than @HAVE_INCLUDE_NEXT@ and @ABSOLUTE_foo_H@.
9174         * lib/float_.h: Likewise.
9175         * lib/inttypes_.h: Likewise.
9176         * lib/math_.h: Likewise.
9177         * lib/search_.h: Likewise.
9178         * lib/signal_.h: Likewise.
9179         * lib/stdint_.h: Likewise.
9180         * lib/stdio_.h: Likewise.
9181         * lib/stdlib_.h: Likewise.
9182         * lib/string_.h: Likewise.
9183         * lib/sys_stat_.h: Likewise.
9184         * lib/sys_time_.h: Likewise.
9185         * lib/time_.h: Likewise.
9186         * lib/unistd_.h: Likewise.
9187         * lib/wchar_.h: Likewise.
9188         * lib/wctype_.h: Likewise.
9189         * lib/dirent_.h: Likewise.
9190         * lib/iconv_.h: Likewise.
9191         * lib/locale_.h: Likewise.
9192         * lib/netinet_in_.h: Likewise.
9193         * lib/sys_select_.h: Likewise.
9194         * lib/sys_socket_.h: Likewise.
9195         * lib/sysexits_.h: Likewise.
9196         * modules/fcntl (Depends-on): Depend on include_next, not
9197         absolute_header.
9198         (Makefile): Substitute INCLUDE_NEXT and NEXT_foo_H, not
9199         HAVE_INCLUDE_NEXT and ABSOLUTE_foo_H.
9200         * modules/fchdir: Likewise.
9201         * modules/float: Likewise.
9202         * modules/iconv_open: Likewise.
9203         * modules/inttypes: Likewise.
9204         * modules/locale: Likewise.
9205         * modules/math: Likewise.
9206         * modules/netinet_in: Likewise.
9207         * modules/search: Likewise.
9208         * modules/signal: Likewise.
9209         * modules/stdint: Likewise.
9210         * modules/stdio: Likewise.
9211         * modules/stdlib: Likewise.
9212         * modules/string: Likewise.
9213         * modules/sys_select: Likewise.
9214         * modules/sys_socket: Likewise.
9215         * modules/sys_stat: Likewise.
9216         * modules/sys_time: Likewise.
9217         * modules/sysexits: Likewise.
9218         * modules/time: Likewise.
9219         * modules/unistd: Likewise.
9220         * modules/wchar: Likewise.
9221         * modules/wctype: Likewise.
9222         * modules/sys_stat: Change maintainer to "all".
9223         * modules/unistd: Likewise.
9224
9225 2007-06-20  Karl Berry  <karl@gnu.org>
9226
9227         * config/srclist.txt: track www changes in license files.
9228
9229 2007-06-20  Sergey Poznyakoff  <gray@gnu.org.ua>
9230
9231         * build-aux/bootstrap: Remove stray dot.
9232         Make sure build_aux settings are honored when linking
9233         gnulib_extra_files.
9234
9235 2007-06-19  Eric Blake  <ebb9@byu.net>
9236
9237         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
9238         Allow compilation on cygwin.
9239
9240 2007-06-19  Jim Meyering  <jim@meyering.net>
9241
9242         xreadlink-with-size: Remove module.  No longer used.
9243         Ex-callers now use xreadlink or mreadlink-with-size.
9244         * modules/xreadlink-with-size: Remove module.
9245         * lib/xreadlink-with-size.c: Remove file.
9246         * lib/xreadlink.h (xreadlink_with_size): Remove prototype.
9247         (xreadlink): Remove inaccurate comment.  The one in xreadlink.c,
9248         just before the function definition *is* accurate.
9249
9250         Eliminate one way canonicalize_filename_mode could exit.
9251         * lib/canonicalize.c (canonicalize_filename_mode):
9252         Use mreadlink_with_size, not xreadlink_with_size.
9253
9254 2007-06-18  Paul Eggert  <eggert@cs.ucla.edu>
9255
9256         Detect porting problems to FreeBSD/arm, which has time_t wider than
9257         long int.  Original problem reported for GNU diff by Xin Li in
9258         <http://lists.gnu.org/archive/html/bug-gnu-utils/2007-06/msg00091.html>.
9259         * modules/getdate (Depends-on): Add intprops, verify.
9260         * lib/getdate.y: Include intprops.h, verify.h.  Verify that time_t
9261         is an integer type no wider than long int.
9262
9263 2007-06-18  Jim Meyering  <jim@meyering.net>
9264
9265         New module: mreadlink-with-size.
9266         * MODULES.html.sh: Add mreadlink-with-size.
9267         * modules/mreadlink-with-size: New module
9268         * modules/canonicalize (Depends-on): Depend on mreadlink-with-size,
9269         not xreadlink-with-size.
9270         * lib/mreadlink-with-size.c, lib/mreadlink.h: New files.
9271
9272 2007-06-16  Bruno Haible  <bruno@clisp.org>
9273
9274         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Catch the MacOS X 10.4 bug.
9275         * doc/functions/frexpl.texi: Document the MacOS X 10.4 bug.
9276         Reported by Gary V. Vaughan <gary@gnu.org>.
9277
9278 2007-06-15  Paul Eggert  <eggert@cs.ucla.edu>
9279
9280         Revamp lchown so that it lives in unistd.h where it belongs.
9281         * lib/lchown.h: Remove.
9282         * lib/dirchownmod.c: Don't include lib/lchown.h.
9283         * lib/fchownat.c: Likewise.
9284         * lib/openat.c: Likewise.
9285         * lib/lchown.c (REPLACE_CHOWN): Define to 0 if the system chown
9286         does not follow symlinks.
9287         (EOPNOTSUPP): Define if not defined.
9288         * lib/unistd_.h (chown): Do not replace if REPLADE_CHOWN
9289         is defined to 0.
9290         (lchown): New decl.
9291         * m4/lchown.m4 (gl_FUNC_LCHOWN): Require gl_UNISTD_H_DEFAULTS.
9292         Do not check for lchown decl.
9293         Set REPLACE_LCHOWN.
9294         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Set GNULIB_LCHOWN,
9295         REPLACE_LCHOWN.
9296         * modules/chown: Make it clear it follows symlinks.
9297         * modules/lchown: Make it clear it doesn't follow symlinks.
9298         (Files): Remove lib/lchown.h
9299         (Depends-on): Add unistd.
9300         (configure.ac): Add gl_UNISTD_MODULE_INDICATOR([lchown]).
9301         (Include): Include <unistd.h>, not "lchown.h".
9302         * modules/unistd (unistd.h): Substitude GNULIB_LCHOWN and
9303         REPLACE_LCHOWN.
9304
9305 2007-06-15  Jim Meyering  <jim@meyering.net>
9306
9307         Change license (GPL to LGPL) of fsusage and dependents.
9308         * modules/fsusage (License): Change to LGPL.
9309         * modules/full-read (License): Likewise.
9310         * modules/full-write (License): Likewise.
9311         * modules/safe-read (License): Likewise.
9312         * modules/safe-write (License): Likewise.
9313
9314 2007-06-14  Ben Pfaff  <blp@gnu.org>
9315
9316         Missing part of allocsa -> malloca transition.
9317         * modules/relocatable-prog-wrapper: gl_ALLOCSA should be
9318         gl_MALLOCA.
9319
9320 2007-06-12  Bruno Haible  <bruno@clisp.org>
9321
9322         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Guess no when cross-compiling
9323         to ia64, x86_64, i386.
9324         Reported by Eric Blake.
9325
9326 2007-06-12  Bruno Haible  <bruno@clisp.org>
9327
9328         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Guess no also when
9329         cross-compiling to x86_64.
9330
9331 2007-06-12  Paul Eggert  <eggert@cs.ucla.edu>
9332
9333         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Fix POSIX sed portability
9334         glitch reported by Ralf Wildenhues in
9335         <http://lists.gnu.org/archive/html/bug-gnulib/2007-06/msg00114.html>.
9336
9337         * m4/regex.m4 (gl_REGEX): Catch a bug with [[:alnum:]_-] reported by
9338         Vin Shelton.
9339
9340 2007-06-11  Bruno Haible  <bruno@clisp.org>
9341
9342         * lib/printf-args.c (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Fix NULL
9343         replacement string.
9344         Reported by Eric Blake.
9345
9346 2007-06-10  Bruno Haible  <bruno@clisp.org>
9347
9348         Prepare vasnprintf code for use with Unicode strings.
9349         * lib/printf-args.h (PRINTF_FETCHARGS): New macro.
9350         (arg_type) [ENABLE_UNISTDIO]: Define TYPE_U8_STRING, TYPE_U16_STRING,
9351         TYPE_U32_STRING.
9352         (argument) [ENABLE_UNISTDIO]: Add a_u8_string, a_u16_string,
9353         a_u32_string variants.
9354         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
9355         * lib/printf-args.c: Don't include config.h and the specification
9356         header if PRINTF_FETCHARGS is already defined.
9357         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
9358         (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Add code for TYPE_U8_STRING,
9359         TYPE_U16_STRING, TYPE_U32_STRING.
9360         * lib/printf-parse.h [ENABLE_UNISTDIO] (u8_directive, u8_directives,
9361         u16_directive, u16_directives, u32_directive, u32_directives): New
9362         types.
9363         (ulc_printf_parse, u8_printf_parse, u16_printf_parse, u32_printf_parse):
9364         New declarations.
9365         * lib/printf-parse.c: Don't include config.h and the specification
9366         header if PRINTF_PARSE is already defined. Eliminate the set of
9367         parameters for WIDE_CHAR_VERSION; the user of this file must provide
9368         them now. Include c-ctype.h.
9369         (PRINTF_PARSE) [ENABLE_UNISTDIO]: Add code implementing the 'U'
9370         directive and CHAR_T_ONLY_ASCII.
9371         * lib/vasnprintf.c: Don't include config.h and the specification header
9372         if VASNPRINTF is already defined.
9373         (DCHAR_IS_TCHAR, DCHAR_CPY): New macros.
9374         (VASNPRINTF): Use PRINTF_FETCHARGS instead of printf_fetchargs. Use
9375         DCHAR_CPY. Handle the case that DCHAR_T and FCHAR_T are not the same
9376         type. Handle the case that TCHAR_T and FCHAR_T are not of the same
9377         size. Handle the case that DCHAR_T and TCHAR_T are not the same type,
9378         add a conversion from TCHAR_T[] to DCHAR_T[], and rework the padding
9379         code accordingly.
9380         (VASNPRINTF) [ENABLE_UNISTDIO]: Implement the 'U' directive. Enable
9381         pad_ourselves also in this case, with the 'c' and 's' directives, and
9382         with a different notion of "width".
9383         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): New macros.
9384
9385 2007-06-10  Bruno Haible  <bruno@clisp.org>
9386
9387         * modules/unistr/u32-mbsnlen: New file.
9388         * lib/unistr/u32-mbsnlen.c: New file.
9389
9390         * modules/unistr/u16-mbsnlen: New file.
9391         * lib/unistr/u16-mbsnlen.c: New file.
9392
9393         * modules/unistr/u8-mbsnlen: New file.
9394         * lib/unistr/u8-mbsnlen.c: New file.
9395
9396         * lib/unistr.h (u8_mbsnlen, u16_mbsnlen, u32_mbsnlen): New
9397         declarations.
9398
9399 2007-06-10  Bruno Haible  <bruno@clisp.org>
9400
9401         * lib/string_.h (mbsnlen): New declaration.
9402         * lib/mbsnlen.c: New file.
9403         * m4/mbsnlen.m4: New file.
9404         * modules/mbsnlen: New file.
9405         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Set GNULIB_MBSNLEN.
9406         * modules/string (string.h): Substitute GNULIB_MBSNLEN.
9407         * MODULES.html.sh (Internationalization functions): Add mbsnlen.
9408
9409 2007-06-10  Bruno Haible  <bruno@clisp.org>
9410
9411         * lib/mbslen.c: Include <stdlib.h>, needed for MB_CUR_MAX.
9412
9413 2007-06-10  Bruno Haible  <bruno@clisp.org>
9414
9415         * lib/mbiter.h: Include <stddef.h>, needed for ptrdiff_t.
9416         * lib/mbuiter.h: Likewise.
9417
9418 2007-06-10  Bruno Haible  <bruno@clisp.org>
9419
9420         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Check for _snprintf
9421         declaration.
9422
9423 2007-06-10  Karl Berry  <karl@gnu.org>
9424
9425         * config/srclist.txt: remove gettext entries, Bruno prefers
9426         to update individually.
9427
9428 2007-06-10  Bruno Haible  <bruno@clisp.org>
9429
9430         * lib/vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Remove variable
9431         'maxlen'. Ensure only length + width bytes are allocated, not
9432         length + 1 + width.
9433
9434 2007-06-09  Bruno Haible  <bruno@clisp.org>
9435
9436         * lib/vasnprintf.c (FCHAR_T, DCHAR_T, TCHAR_T): New macros.
9437         (CHAR_T): Remove macro.
9438         (VASNPRINTF): Update.
9439
9440 2007-06-09  Bruno Haible  <bruno@clisp.org>
9441
9442         * MODULES.html.sh (Unicode string functions): Add the new modules.
9443
9444         * modules/uniconv/u32-conv-to-enc: New file.
9445         * lib/uniconv/u32-conv-to-enc.c: New file.
9446         * modules/uniconv/u32-conv-to-enc-tests: New file.
9447         * tests/uniconv/test-u32-conv-to-enc.c: New file.
9448
9449         * modules/uniconv/u16-conv-to-enc: New file.
9450         * lib/uniconv/u16-conv-to-enc.c: New file.
9451         * lib/uniconv/u-conv-to-enc.h: New file.
9452         * modules/uniconv/u16-conv-to-enc-tests: New file.
9453         * tests/uniconv/test-u16-conv-to-enc.c: New file.
9454
9455         * modules/uniconv/u8-conv-to-enc: New file.
9456         * lib/uniconv/u8-conv-to-enc.c: New file.
9457         * modules/uniconv/u8-conv-to-enc-tests: New file.
9458         * tests/uniconv/test-u8-conv-to-enc.c: New file.
9459
9460         * lib/uniconv.h (u8_conv_to_encoding, u16_conv_to_encoding,
9461         u32_conv_to_encoding): New declarations.
9462
9463 2007-06-09  Bruno Haible  <bruno@clisp.org>
9464
9465         * tests/uniconv/test-u32-strconv-to-enc.c (main): Remove unused code.
9466
9467 2007-06-09  Bruno Haible  <bruno@clisp.org>
9468
9469         Rename 'allocsa' -> 'malloca', 'freesa' -> 'freea'.
9470         * modules/malloca: Renamed from modules/allocsa, updated.
9471         * lib/malloca.h: Renamed from lib/allocsa.h, updated.
9472         * lib/malloca.c: Renamed from lib/allocsa.c, updated.
9473         * lib/malloca.valgrind: Renamed from lib/allocsa.valgrind, updated.
9474         * m4/malloca.m4: Renamed from m4/allocsa.m4, updated.
9475         * modules/malloca-tests: Renamed from modules/allocsa-tests, updated.
9476         * tests/test-malloca.c: Renamed from tests/test-allocsa.c, updated.
9477         * modules/xmalloca: Renamed from modules/xallocsa, updated.
9478         * lib/xmalloca.h: Renamed from lib/xallocsa.h, updated.
9479         * lib/xmalloca.c: Renamed from lib/xallocsa.c, updated.
9480         * modules/c-strcasestr (Depends-on): Update.
9481         * lib/c-strcasestr.c: Update.
9482         * modules/c-strstr (Depends-on): Update.
9483         * lib/c-strstr.c: Update.
9484         * modules/canonicalize-lgpl (Depends-on): Update.
9485         * lib/canonicalize-lgpl.c: Update.
9486         * modules/clean-temp (Depends-on): Update.
9487         * lib/clean-temp.c: Update.
9488         * modules/csharpcomp (Depends-on): Update.
9489         * lib/csharpcomp.c: Update.
9490         * modules/csharpexec (Depends-on): Update.
9491         * lib/csharpexec.c: Update.
9492         * modules/javacomp (Depends-on): Update.
9493         * lib/javacomp.c: Update.
9494         * modules/javaexec (Depends-on): Update.
9495         * lib/javaexec.c: Update.
9496         * modules/mbscasestr (Depends-on): Update.
9497         * lib/mbscasestr.c: Update.
9498         * modules/mbsstr (Depends-on): Update.
9499         * lib/mbsstr.c: Update.
9500         * modules/setenv (Depends-on): Update.
9501         * lib/setenv.c: Update.
9502         * modules/strcasestr (Depends-on): Update.
9503         * lib/strcasestr.c: Update.
9504         * modules/striconveha (Depends-on): Update.
9505         * lib/striconveha.c: Update.
9506         * modules/relocatable-prog-wrapper (Files): Update.
9507         * lib/relocwrapper.c: Update.
9508         * build-aux/install-reloc: Update.
9509         * MODULES.html.sh (Memory management functions <stdlib.h>): Update.
9510
9511 2007-06-08  Bruno Haible  <bruno@clisp.org>
9512
9513         Port to uClibc.
9514         * lib/fbufmode.c (fbufmode): Add special code for uClibc.
9515         * lib/fpurge.c (fpurge): Likewise.
9516         * lib/freading.c (freading): Likewise.
9517         * lib/fseeko.c (rpl_fseeko): Likewise.
9518         * lib/fseterr.c (fseterr): Likewise.
9519         * lib/fwriting.c (fwriting): Likewise.
9520         * tests/test-fflush.c (main): Avoid a failure on uClibc.
9521
9522 2007-06-08  Bruno Haible  <bruno@clisp.org>
9523
9524         * m4/intlmacosx.m4: New file, extracted from gettext.m4.
9525         * m4/gettext.m4 (gt_INTL_MACOSX): Remove macro, moved to intlmacosx.m4.
9526         * modules/gettext (Files): Add m4/intlmacosx.m4.
9527
9528 2007-06-07  Bruno Haible  <bruno@clisp.org>
9529
9530         * modules/localename-tests: New file.
9531         * tests/test-localename.c: New file.
9532
9533         New module 'localename'.
9534         * lib/localename.h: New file.
9535         * lib/localename.c: New file, from GNU gettext.
9536         * m4/localename.m4: New file.
9537         * modules/localename: New file.
9538
9539 2007-06-07  Bruno Haible  <bruno@clisp.org>
9540
9541         Work around the lack of <wchar.h> on some builds of uClibc.
9542         * doc/headers/wchar.texi: Update.
9543         * lib/wchar_.h: Include <wchar.h> only if it exists.
9544         * m4/wchar.m4 (gl_WCHAR_H): Check for <wchar.h>. Set HAVE_WCHAR_H.
9545         * m4/stdint.m4 (gl_STDINT_H): Check for <wchar.h>.
9546         (gl_STDINT_TYPE_PROPERTIES): Don't try to include <wchar.h> if it
9547         doesn't exist.
9548         * modules/wchar (wchar.h): Substitute HAVE_WCHAR_H.
9549         * modules/mbfile (Depends-on): Add wchar.
9550         * modules/mbiter (Depends-on): Likewise.
9551         * modules/mbuiter (Depends-on): Likewise.
9552         Reported by Simon Josefsson.
9553
9554 2007-06-06  Paul Eggert  <eggert@cs.ucla.edu>
9555
9556         Work around problem reported by Steven M. Schweda in
9557         <http://lists.gnu.org/archive/html/bug-tar/2007-06/msg00002.html>:
9558         Tru64 5.1B with the Compaq compiler environment installed declares
9559         an 'isblank' function but does not define it in the C library.
9560         * lib/fnmatch.c (isblank): Check for HAVE_ISBLANK, too.
9561         * lib/regex_internal.h (isblank): Likewise.
9562         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for isblank existence.
9563         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
9564
9565 2007-06-05  Bruno Haible  <bruno@clisp.org>
9566
9567         Fix *printf so that it recognizes non-IEEE numbers on i386, x86_64,
9568         ia64.
9569         * modules/printf-safe: New file.
9570         * modules/fprintf-posix (Depends-on): Add printf-safe.
9571         * modules/printf-posix (Depends-on): Likewise.
9572         * modules/snprintf-posix (Depends-on): Likewise.
9573         * modules/sprintf-posix (Depends-on): Likewise.
9574         * modules/vasnprintf-posix (Depends-on): Likewise.
9575         * modules/vasprintf-posix (Depends-on): Likewise.
9576         * modules/vfprintf-posix (Depends-on): Likewise.
9577         * modules/vprintf-posix (Depends-on): Likewise.
9578         * modules/vsnprintf-posix (Depends-on): Likewise.
9579         * modules/vsprintf-posix (Depends-on): Likewise.
9580         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Require
9581         AC_C_BIGENDIAN. Define CHECK_PRINTF_SAFE if printf-safe is used. Test
9582         non-IEEE numbers on i386, x86_64, ia64. When cross-compiling, guess
9583         "no" on i386, x86_64, ia64.
9584         * tests/test-snprintf-posix.h (LDBL80_WORDS): New macro.
9585         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
9586         on i386, x86_64, ia64.
9587         * tests/test-sprintf-posix.h (LDBL80_WORDS): New macro.
9588         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
9589         on i386, x86_64, ia64.
9590         * tests/test-vasnprintf-posix.c: Include float.h.
9591         (LDBL80_WORDS): New macro.
9592         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
9593         on i386, x86_64, ia64.
9594         * tests/test-vasprintf-posix.c: Include float.h.
9595         (LDBL80_WORDS): New macro.
9596         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
9597         on i386, x86_64, ia64.
9598         * tests/test-snprintf-posix.c: Include float.h.
9599         * tests/test-sprintf-posix.c: Likewise.
9600         * tests/test-vsnprintf-posix.c: Likewise.
9601         * tests/test-vsprintf-posix.c: Likewise.
9602
9603 2007-06-05  Bruno Haible  <bruno@clisp.org>
9604
9605         Fix isnanl so that it recognizes non-IEEE numbers on i386, x86_64, ia64.
9606         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Require AC_C_BIGENDIAN. Test
9607         non-IEEE numbers on i386, x86_64, ia64.
9608         (gl_LONG_DOUBLE_EXPONENT_LOCATION): Require AC_C_BIGENDIAN.
9609         * lib/isnan.c (FUNC): Add special code for i386, x86_64, ia64.
9610         * tests/test-isnanl.h: Include float.h.
9611         (main): Check also non-IEEE numbers on i386, x86_64, ia64.
9612
9613 2007-06-05  Bruno Haible  <bruno@clisp.org>
9614
9615         * lib/vasnprintf.c (VASNPRINTF): Do the extra handling of NaN and Inf
9616         also the %a / %A. Handle the %a / %A code before this extra handling.
9617
9618 2007-06-05  Bruno Haible  <bruno@clisp.org>
9619
9620         * lib/vasnprintf.c [NEED_PRINTF_LONG_DOUBLE ||
9621         NEED_PRINTF_INFINITE_LONG_DOUBLE]: Include fpucw.h.
9622
9623 2007-06-05  Bruno Haible  <bruno@clisp.org>
9624
9625         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): Fix
9626         typo in variable name.
9627
9628 2007-06-05  Eric Blake  <ebb9@byu.net>
9629
9630         * m4/lseek.m4 (gl_FUNC_LSEEK): Work when cross-compiling.
9631         Reported by Simon Josefsson.
9632
9633 2007-06-04  Bruno Haible  <bruno@clisp.org>
9634
9635         Avoid test failures on some PowerPC platforms.
9636         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP):
9637         Define differently for PowerPC.
9638         * tests/test-frexpl.c (MIN_NORMAL_EXP): Likewise.
9639         Reported by Gary V. Vaughan <gary@gnu.org>.
9640
9641 2007-06-02  Bruno Haible  <bruno@clisp.org>
9642
9643         Fix test-stdint failure on FreeBSD/ia64.
9644         * m4/stdint.m4 (gl_STDINT_H): Check the values of PTRDIFF_MIN,
9645         PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN,
9646         WCHAR_MAX, WINT_MIN, WINT_MAX entirely, not only for plausibility.
9647         * doc/headers/stdint.texi: Update.
9648
9649 2007-06-01  Bruno Haible  <bruno@clisp.org>
9650
9651         * tests/test-binary-io.c (main): Pass a third argument to open().
9652         Reported by Gary V. Vaughan <gary@gnu.org>.
9653
9654 2007-06-01  Bruno Haible  <bruno@clisp.org>
9655
9656         * doc/functions/frexpl.texi: Update for mingw.
9657
9658 2007-06-01  Bruno Haible  <bruno@clisp.org>
9659
9660         * tests/test-lseek.c (main): Disable test of errno for invalid third
9661         argument.
9662         * doc/functions/lseek.texi: Update.
9663         Reported by Gary V. Vaughan <gary@gnu.org>.
9664
9665 2007-05-28  Bruno Haible  <bruno@clisp.org>
9666
9667         * m4/intl.m4 (AM_INTL_SUBDIR): Substitute variables WOE32, WINDRES.
9668
9669 2007-05-31  Eric Blake  <ebb9@byu.net>
9670
9671         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Guess no on mingw when
9672         cross compiling.
9673
9674 2007-05-30  Eric Blake  <ebb9@byu.net>
9675         and Bruno Haible  <bruno@clisp.org>
9676
9677         Work around mingw test failures exposed by m4-1.4.9b.
9678         * m4/stdint.m4 (gl_STDINT_H): Detect mingw bug.
9679         * tests/test-unistd.c: Disable uid_t and git_t tests for the
9680         moment.
9681
9682 2007-05-30  Bruno Haible  <bruno@clisp.org>
9683
9684         * tests/test-lseek.c: Explicitly close file descriptors 0 and 1 before
9685         assuming that they are closed. Needed on HP-UX 11.
9686
9687 2007-05-29  Bruno Haible  <bruno@clisp.org>
9688
9689         Fix a problem with #include_next.
9690         * lib/dirent_.h: Split the double-inclusion guard.
9691         * lib/fcntl_.h: Likewise.
9692         * lib/float_.h: Likewise.
9693         * lib/iconv_.h: Likewise.
9694         * lib/inttypes_.h: Likewise.
9695         * lib/locale_.h: Likewise.
9696         * lib/math_.h: Likewise.
9697         * lib/netinet_in_.h: Likewise.
9698         * lib/search_.h: Likewise.
9699         * lib/signal_.h: Likewise.
9700         * lib/stdint_.h: Likewise.
9701         * lib/stdio_.h: Likewise.
9702         * lib/stdlib_.h: Likewise.
9703         * lib/string_.h: Likewise.
9704         * lib/sys_select_.h: Likewise.
9705         * lib/sys_socket_.h: Likewise.
9706         * lib/sys_stat_.h: Likewise.
9707         * lib/sys_time_.h: Likewise.
9708         * lib/sysexits_.h: Likewise.
9709         * lib/time_.h: Likewise.
9710         * lib/unistd_.h: Likewise.
9711         * lib/wchar_.h: Likewise.
9712         * lib/wctype_.h: Likewise.
9713
9714 2007-05-29  Bruno Haible  <bruno@clisp.org>
9715
9716         * tests/test-unistd.c: Disable the tests for useconds_t and intptr_t
9717         for the moment.
9718
9719 2007-05-29  Bruno Haible  <bruno@clisp.org>
9720
9721         * m4/isnan.m4 (gl_DOUBLE_EXPONENT_LOCATION): Silence the AC_C_BIGENDIAN
9722         invocation.
9723         Reported by Eric Blake.
9724
9725 2007-05-29  Bruno Haible  <bruno@clisp.org>
9726
9727         * m4/isnanf.m4 (gl_FLOAT_EXPONENT_LOCATION): Fix typo in cross-
9728         compiling case.
9729
9730 2007-05-29  Eric Blake  <ebb9@byu.net>
9731             Bruno Haible  <bruno@clisp.org>
9732
9733         * m4/isnanf.m4 (gl_FUNC_ISNANF_NO_LIBM): Avoid syntax error on
9734         cross compiles.
9735
9736 2007-05-28  Eric Blake  <ebb9@byu.net>
9737
9738         * modules/closein-tests (test_closein_LDADD): Support test on
9739         cygwin with libtool.
9740
9741 2007-05-28  Bruno Haible  <bruno@clisp.org>
9742
9743         * tests/uniconv/test-u16-conv-from-enc.c: Remove #ifdef HAVE_CONFIG_H.
9744         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
9745         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
9746         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
9747         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
9748         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
9749         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
9750         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
9751         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
9752
9753 2007-05-28  Eric Blake  <ebb9@byu.net>
9754
9755         Unconditionally include <config.h> in unit tests.
9756         * tests/test-alloca-opt.c: Remove #ifdef HAVE_CONFIG_H.
9757         * tests/test-allocsa.c, tests/test-arcfour.c,
9758         tests/test-arctwo.c, tests/test-argmatch.c, tests/test-argp.c,
9759         tests/test-array_list.c, tests/test-array_oset.c,
9760         tests/test-atexit.c, test-avltree_list.c, test-avltree_oset.c,
9761         test-avltreehash_list.c, test-base64.c, test-binary-io.c,
9762         test-c-ctype.c, test-c-strcasecmp.c, test-c-strcasestr.c,
9763         test-c-strncasecmp.c, test-c-strstr.c, test-canonicalize-lgpl.c,
9764         test-carray_list.c, test-crc.c, test-des.c, test-dirname.c,
9765         test-fflush.c, test-fprintf-posix.c, test-gc-arcfour.c,
9766         test-gc-arctwo.c, test-gc-des.c, test-gc-hmac-md5.c,
9767         test-gc-hmac-sha1.c, test-gc-md2.c, test-gc-md4.c, test-gc-md5.c,
9768         test-gc-pbkdf2-sha1.c, test-gc-rijndael.c, test-gc-sha1.c,
9769         test-gc.c, test-getpass.c, test-hmac-md5.c, test-hmac-sha1.c,
9770         test-iconv.c, test-linked_list.c, test-linkedhash_list.c,
9771         test-lock.c, test-mbscasecmp.c, test-mbscasestr1.c,
9772         test-mbscasestr2.c, test-mbscasestr3.c, test-mbscasestr4.c,
9773         test-mbschr.c, test-mbscspn.c, test-mbsncasecmp.c, test-mbspbrk.c,
9774         test-mbspcasecmp.c, test-mbsrchr.c, test-mbsspn.c, test-mbsstr1.c,
9775         test-mbsstr2.c, test-mbsstr3.c, test-md2.c, test-md4.c,
9776         test-md5.c, test-memmem.c, test-printf-posix.c,
9777         test-rbtree_list.c, test-rbtree_oset.c, test-rbtreehash_list.c,
9778         test-read-file.c, test-rijndael.c, test-snprintf-posix.c,
9779         test-snprintf.c, test-sprintf-posix.c, test-stdint.c,
9780         test-strcasestr.c, test-striconv.c, test-striconveh.c,
9781         test-striconveha.c, test-tls.c, test-vasnprintf-posix.c,
9782         test-vasnprintf-posix2.c, test-vasnprintf.c,
9783         test-vasprintf-posix.c, test-vasprintf.c, test-verify.c,
9784         test-vfprintf-posix.c, test-vprintf-posix.c,
9785         test-vsnprintf-posix.c, test-vsnprintf.c, test-vsprintf-posix.c,
9786         test-xvasprintf.c: Likewise.
9787
9788 2007-05-28  Bruno Haible  <bruno@clisp.org>
9789
9790         * gnulib-tool (func_import): Remember the --with-tests command-line
9791         option through the macro gl_WITH_TESTS in the gnulib-cache.m4.
9792         Reported by Eric Blake.
9793
9794 2007-05-28  Bruno Haible  <bruno@clisp.org>
9795
9796         * modules/ftell-tests: New file.
9797         * tests/test-ftell.c: New file, based on tests/test-ftello.c.
9798         * tests/test-ftell.sh: New file, based on tests/test-ftello.sh.
9799
9800         * lib/ftell.c: New file.
9801         * modules/ftell: New file.
9802         * m4/ftell.m4: New file.
9803         * doc/functions/ftell.texi: Update.
9804         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELL,
9805         REPLACE_FTELL.
9806         * lib/stdio_.h (rpl_ftell): New declaration.
9807         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELL,
9808         REPLACE_FTELL.
9809
9810 2007-05-28  Eric Blake  <ebb9@byu.net>
9811
9812         * lib/allocsa.h (safe_alloca): Avoid compiler warning.
9813
9814 2007-05-28  Bruno Haible  <bruno@clisp.org>
9815
9816         * modules/fseek-tests: New file.
9817         * tests/test-fseek.c: New file, based on tests/test-fseeko.c.
9818         * tests/test-fseek.sh: New file, based on tests/test-fseeko.sh.
9819
9820         * lib/fseek.c: New file.
9821         * modules/fseek: New file.
9822         * m4/fseek.m4: New file.
9823         * doc/functions/fseek.texi: Update.
9824         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEK,
9825         REPLACE_FSEEK.
9826         * lib/stdio_.h (rpl_fseek): New declaration.
9827         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEK,
9828         REPLACE_FSEEK.
9829
9830 2007-05-28  Bruno Haible  <bruno@clisp.org>
9831
9832         * lib/stdio_.h (fflush): More comments.
9833
9834 2007-05-28  Bruno Haible  <bruno@clisp.org>
9835
9836         * m4/lseek.m4 (gl_FUNC_LSEEK): When not cross-compiling, perform a real
9837         runtime test.
9838
9839 2007-05-28  Eric Blake  <ebb9@byu.net>
9840
9841         Improve lseek module.
9842         * lib/lseek.c (rpl_lseek): Detect EBADF on mingw.
9843         * lib/unistd_.h (lseek): Scale back link warning message.
9844         * tests/test-lseek.c: Beef up test.
9845         * tests/test-lseek.sh: Exercise more facets of lseek.
9846         Reported by Bruno Haible.
9847
9848 2007-05-28  Bruno Haible  <bruno@clisp.org>
9849
9850         * tests/test-unistd.c: Test all the types that <unistd.h> is expected
9851         to define.
9852
9853 2007-05-27  Bruno Haible  <bruno@clisp.org>
9854
9855         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-31 patch.
9856
9857 2007-05-27  Bruno Haible  <bruno@clisp.org>
9858
9859         * modules/openmp: New file.
9860         * m4/openmp.m4: New file, taken from autoconf's CVS with changes by
9861         Noah Misch.
9862
9863 2007-05-26  Bruno Haible  <bruno@clisp.org>
9864
9865         * modules/chdir-long (Depends-on): Add fchdir.
9866         * modules/chdir-safer (Depends-on): Likewise.
9867         * modules/fts (Depends-on): Likewise.
9868         * modules/fts-lgpl (Depends-on): Likewise.
9869         * modules/openat (Depends-on): Likewise.
9870         * modules/savewd (Depends-on): Likewise.
9871
9872 2007-05-24  Eric Blake  <ebb9@byu.net>
9873
9874         Fix lseek on mingw.
9875         * modules/lseek: New module.
9876         * m4/lseek.m4: New file.
9877         * lib/lseek.c: New file.
9878         * modules/lseek-tests: New file.
9879         * tests/test-lseek.c: New file.
9880         * tests/test-lseek.sh: New file.
9881         * MODULES.html.sh: Document lseek module.
9882         * modules/fflush (Depends-on): Add lseek, fseeko.
9883         * modules/fseeko (Depends-on): Likewise.
9884         * modules/ftello (Depends-on): Likewise.
9885         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Replace fseek[o] if lseek is
9886         broken.
9887         * m4/ftello.m4 (gl_FUNC_FTELLO): Replace ftell[o] if lseek is
9888         broken.
9889         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Trigger fseeko module.
9890         * lib/fseeko.c (rpl_fseeko): Quit early on non-seekable files.
9891         * lib/ftello.c (rpl_ftello): Likewise.
9892         * tests/test-fseeko.c (main): Test this.
9893         * tests/test-fseeko.sh: Likewise.
9894         * tests/test-ftello.c (main): Likewise.
9895         * tests/test-ftello.sh: Likewise.
9896         * lib/stdio_.h (fseek, ftell): Simplify, since missing fseeko now
9897         implies replacing fseek.
9898         * modules/stdio (Makefile.am): No longer need HAVE_FSEEKO,
9899         HAVE_FTELLO.
9900         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add lseek info.
9901         * modules/unistd (Makefile.am): Likewise.
9902         * lib/unistd_.h (lseek): Declare a replacement.
9903         * doc/functions/lseek.texi (lseek): Document this fix.
9904         * doc/functions/fseek.texi (fseek): Likewise.
9905         * doc/functions/ftell.texi (ftell): Likewise.
9906
9907 2007-05-24  Bruno Haible  <bruno@clisp.org>
9908
9909         * tests/test-vasnprintf-posix.c (test_function): Allow up to 50 bytes
9910         in the printed representation of a NaN.
9911         * tests/test-vasprintf-posix.c (test_function): Likewise.
9912         * tests/test-snprintf-posix.h (test_function): Likewise.
9913         * tests/test-sprintf-posix.h (test_function): Likewise.
9914         Reported by Eric Blake.
9915
9916 2007-05-23  Eric Blake  <ebb9@byu.net>
9917
9918         Fix fseeko/ftello on cygwin 1.5.24.
9919         * doc/functions/fseeko.texi (fseeko): Document the fix.
9920         * doc/functions/ftello.texi (ftello): Document the fix.
9921         * doc/functions/stdin.texi (stdin): Document the cygwin bug.
9922         * doc/functions/stdout.text (stdout): New file.
9923         * doc/functions/stderr.text (stderr): New file.
9924         * doc/gnulib.texi (Function Substitutes): Use new files.
9925         * tests/test-fseeko.c (main): Check for broken fseeko on cygwin
9926         prior to 1.7.0.
9927         * tests/test-ftello.c (main): Likewise for ftello.
9928         * tests/test-fseeko.sh: New file.
9929         * tests/test-ftello.sh: New file.
9930         * modules/fseeko-tests (Makefile.am): Ensure test-fseeko is run
9931         with seekable stdin.
9932         * modules/ftello-tests (Makefile.am): Likewise for test-ftello.
9933         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Detect the cygwin bug.
9934         (gl_REPLACE_FSEEKO): New macro.
9935         * m4/ftello.m4 (gl_FUNC_FTELLO, gl_REPLACE_FTELLO): Likewise.
9936         * modules/fseeko (Files): Distribute fseeko.c.
9937         * modules/ftello (Files): Distribute ftello.c.
9938         * lib/fseeko.c (rpl_fseeko) [__CYGWIN__]: Convert stdin to 64-bit
9939         mode.
9940         * lib/ftello.c (rpl_ftello): New file.
9941         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Allow replacement of
9942         fseeko, ftello.
9943         (gl_STDIN_LARGE_OFFSET): New macro.
9944         * modules/stdio (Makefile.am): Perform the replacement.
9945         * lib/stdio_.h (rpl_fseeko, rpl_ftello): Define when needed.
9946
9947 2007-05-23  Bruno Haible  <bruno@clisp.org>
9948
9949         * lib/stdio_.h (fseeko, ftello): Provide a link warning only if
9950         GNULIB_POSIXCHECK is defined.
9951
9952 2007-05-21  Bruno Haible  <bruno@clisp.org>
9953
9954         * m4/printf.m4 (gl_PRINTF_INFINITE, gl_PRINTF_INFINITE_LONG_DOUBLE):
9955         Check also the output for NaN arguments. When cross-compiling, guess
9956         no on IRIX.
9957         * lib/vasnprintf.c: Update comments.
9958         * tests/test-vasnprintf-posix.c (strisnan): New function.
9959         (test_function): Use it.
9960         * tests/test-vasprintf-posix.c (strisnan): New function.
9961         (test_function): Use it.
9962         * tests/test-snprintf-posix.h (strisnan): New function.
9963         (test_function): Use it.
9964         * tests/test-sprintf-posix.h (strisnan): New function.
9965         (test_function): Use it.
9966         Reported by Eric Blake.
9967
9968 2007-05-20  Bruno Haible  <bruno@clisp.org>
9969
9970         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Add test for large finite
9971         numbers that fails on BeOS.
9972         * doc/functions/frexpl.texi: Update.
9973
9974 2007-05-20  Jim Meyering  <jim@meyering.net>
9975
9976         * NEWS: Mention the incompatible change (s/futimens/gl_futimens/)
9977         forced upon us by glibc-2.6.
9978
9979 2007-05-20  Bruno Haible  <bruno@clisp.org>
9980
9981         Fix *printf result for NaN, Inf on AIX, Solaris, OSF/1.
9982         * m4/printf.m4 (gl_PRINTF_INFINITE): Update cross-compiling guesses.
9983         (gl_PRINTF_INFINITE_LONG_DOUBLE): New macro.
9984         * lib/vasnprintf.c: Use NEED_PRINTF_INFINITE_DOUBLE instead of
9985         NEED_PRINTF_INFINITE.
9986         (is_infinitel): New function.
9987         (VASNPRINTF): Handle NEED_PRINTF_INFINITE_LONG_DOUBLE case.
9988         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE): Renamed from
9989         gl_PREREQ_VASNPRINTF_INFINITE.
9990         (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): New macro.
9991         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
9992         gl_PRINTF_INFINITE_LONG_DOUBLE and test its result. Invoke
9993         gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE and
9994         gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE instead of
9995         gl_PREREQ_VASNPRINTF_INFINITE.
9996         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
9997         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
9998         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
9999         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
10000         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
10001         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
10002         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
10003         * doc/functions/fprintf.texi: Update.
10004         * doc/functions/printf.texi: Update.
10005         * doc/functions/snprintf.texi: Update.
10006         * doc/functions/sprintf.texi: Update.
10007         * doc/functions/vfprintf.texi: Update.
10008         * doc/functions/vprintf.texi: Update.
10009         * doc/functions/vsnprintf.texi: Update.
10010         * doc/functions/vsprintf.texi: Update.
10011
10012 2007-05-20  Bruno Haible  <bruno@clisp.org>
10013
10014         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): Set REPLACE_FREXPL if frexpl
10015         was not found in libc.
10016         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Likewise.
10017
10018 2007-05-20  Bruno Haible  <bruno@clisp.org>
10019
10020         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
10021         printed as "-nan" instead of "nan".
10022         * tests/test-vasprintf-posix.c (test_function): Likewise.
10023         * tests/test-snprintf-posix.h (test_function): Likewise.
10024         * tests/test-sprintf-posix.h (test_function): Likewise.
10025         Needed for HP-UX 11.
10026
10027 2007-05-20  Jim Meyering  <jim@meyering.net>
10028
10029         Fix buggy test for the fchownat-deref bug.
10030         * m4/openat.m4 (gl_FUNC_FCHOWNAT_DEREF_BUG): Create the dangling
10031         symlink required for the run-test.  Without it, this test would
10032         always declare that fchownat doesn't work, and client code would
10033         unnecessarily use the replacement function with fixed libc.
10034         (gl_FUNC_FCHOWNAT): Eliminate a variable that wasn't initialized.
10035         Reported by Greg Schafer.
10036
10037 2007-05-19  Bruno Haible  <bruno@clisp.org>
10038
10039         * m4/isnanf.m4 (gl_ISNANF_WORKS): New macro.
10040         (gl_FUNC_ISNANF_NO_LIBM): Invoke it.
10041         * lib/isnan.c (FUNC): Use run-time expressions for SGI compiler.
10042         Needed for IRIX 6.5 and Solaris 2.5.1.
10043
10044 2007-05-19  Bruno Haible  <bruno@clisp.org>
10045
10046         * tests/test-vasnprintf-posix.c (have_minus_zero): New function.
10047         (test_function): Skip tests involving -0.0 on platforms where
10048         -0.0 = 0.0.
10049         * tests/test-vasprintf-posix.c (have_minus_zero): New function.
10050         (test_function): Skip tests involving -0.0 on platforms where
10051         -0.0 = 0.0.
10052         * tests/test-snprintf-posix.h (have_minus_zero): New function.
10053         (test_function): Skip tests involving -0.0 on platforms where
10054         -0.0 = 0.0.
10055         * tests/test-sprintf-posix.h (have_minus_zero): New function.
10056         (test_function): Skip tests involving -0.0 on platforms where
10057         -0.0 = 0.0.
10058         * tests/test-fprintf-posix.h (test_function): Remove all -0.0 related
10059         tests.
10060         * tests/test-printf-posix.h (test_function): Likewise.
10061         * tests/test-printf-posix.output: Remove all -0.0 related results.
10062         Needed for IRIX 6.5.
10063
10064 2007-05-19  Bruno Haible  <bruno@clisp.org>
10065
10066         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
10067         printed as "nan0x7fffffff" instead of "nan".
10068         * tests/test-vasprintf-posix.c (test_function): Likewise.
10069         * tests/test-snprintf-posix.h (test_function): Likewise.
10070         * tests/test-sprintf-posix.h (test_function): Likewise.
10071         * tests/test-fprintf-posix.h (NaN): Remove macro.
10072         (test_function): Remove all NaN related tests.
10073         * tests/test-printf-posix.h (NaN): Remove macro.
10074         (test_function): Remove all NaN related tests.
10075         * tests/test-printf-posix.output: Remove all NaN related results.
10076         Needed for IRIX 6.5.
10077
10078 2007-05-19  Bruno Haible  <bruno@clisp.org>
10079
10080         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Fix C89 syntax error in test code.
10081         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Likewise.
10082
10083 2007-05-19  Bruno Haible  <bruno@clisp.org>
10084
10085         * lib/float_.h: New file.
10086         * m4/float_h.m4: New file.
10087         * modules/float: New file.
10088         * modules/isnanl (Dependencies): Add float.
10089         * modules/isnanl-nolibm (Dependencies): Likewise.
10090         * modules/mathl (Dependencies): Likewise.
10091         * modules/printf-frexpl (Dependencies): Likewise.
10092         * modules/signbit (Dependencies): Likewise.
10093         * modules/vasnprintf (Dependencies): Likewise.
10094         * doc/headers/float.texi: Update.
10095
10096 2007-05-19  Jim Meyering  <jim@meyering.net>
10097
10098         * lib/utimens.c (gl_futimens): Rename from futimens,
10099         now that glibc-2.6 declares futimens.
10100         * lib/utimens.h: Likewise.
10101
10102 2007-05-19  Bruno Haible  <bruno@clisp.org>
10103
10104         Avoid test failures on mingw.
10105         * tests/test-fprintf-posix.sh: Convert CR/LF to LF in output.
10106         * tests/test-printf-posix.sh: Likewise.
10107         * tests/test-vfprintf-posix.sh: Likewise.
10108         * tests/test-vprintf-posix.sh: Likewise.
10109
10110 2007-05-19  Bruno Haible  <bruno@clisp.org>
10111
10112         Fix *printf result for NaN, Inf, -0.0 on mingw.
10113         * m4/printf.m4 (gl_PRINTF_INFINITE): New macro.
10114         * lib/vasnprintf.c: Include math.h and isnan.h.
10115         (is_infinite_or_zero): New function.
10116         (VASNPRINTF): Fix also the handling of infinite or zero 'double'
10117         values in the %f, %F, %e, %E, %g, %G directives.
10118         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE): New macro.
10119         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
10120         gl_PRINTF_INFINITE and test its result. Invoke
10121         gl_PREREQ_VASNPRINTF_INFINITE.
10122         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
10123         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
10124         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
10125         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
10126         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
10127         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
10128         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
10129         * doc/functions/fprintf.texi: Update.
10130         * doc/functions/printf.texi: Update.
10131         * doc/functions/snprintf.texi: Update.
10132         * doc/functions/sprintf.texi: Update.
10133         * doc/functions/vfprintf.texi: Update.
10134         * doc/functions/vprintf.texi: Update.
10135         * doc/functions/vsnprintf.texi: Update.
10136         * doc/functions/vsprintf.texi: Update.
10137
10138 2007-05-19  Bruno Haible  <bruno@clisp.org>
10139
10140         * lib/vasnprintf.c (convert_to_decimal): Add an extra_zeroes argument.
10141         (scale10_round_decimal_long_double): Inline scale10_round_long_double.
10142         Instead of multiplying with 10^k, set extra_zeroes to k.
10143         (scale10_round_long_double): Remove function.
10144
10145 2007-05-18  Bruno Haible  <bruno@clisp.org>
10146
10147         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Fix logic bug
10148         introduced on 2007-05-06.
10149
10150 2007-05-18  Bruno Haible  <bruno@clisp.org>
10151
10152         * tests/test-vasnprintf-posix.c (test_function): Also test the %e and
10153         %g directives.
10154         * tests/test-vasprintf-posix.c (test_function): Likewise.
10155         * tests/test-snprintf-posix.h (test_function): Likewise.
10156         * tests/test-sprintf-posix.h (test_function): Likewise.
10157
10158 2007-05-18  Bruno Haible  <bruno@clisp.org>
10159
10160         * tests/test-vasnprintf-posix.c (SIZEOF): New macro.
10161         (strmatch): New function.
10162         (test_function): Test the %f directive on numbers of various exponents.
10163         * tests/test-vasprintf-posix.c (SIZEOF): New macro.
10164         (strmatch): New function.
10165         (test_function): Test the %f directive on numbers of various exponents.
10166         * tests/test-snprintf-posix.h (strmatch): New function.
10167         (test_function): Test the %f directive on numbers of various exponents.
10168         * tests/test-sprintf-posix.h (strmatch): New function.
10169         (test_function): Test the %f directive on numbers of various exponents.
10170         * tests/test-snprintf-posix.c (SIZEOF): New macro.
10171         * tests/test-sprintf-posix.c (SIZEOF): New macro.
10172         * tests/test-vsnprintf-posix.c (SIZEOF): New macro.
10173         * tests/test-vsprintf-posix.c (SIZEOF): New macro.
10174
10175 2007-05-18  Bruno Haible  <bruno@clisp.org>
10176
10177         Add support for 'long double' number output.
10178         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE): New macro.
10179         * lib/vasnprintf.c: Include math.h and float+.h.
10180         (mp_limb_t): New type.
10181         (GMP_LIMB_BITS): New macro.
10182         (mp_twolimb_t): New type.
10183         (GMP_TWOLIMB_BITS): New macro.
10184         (mpn_t): New type.
10185         (multiply, divide, convert_to_decimal, decode_long_double,
10186         scale10_round_long_double, scale10_round_decimal_long_double,
10187         floorlog10l): New functions.
10188         (VASNPRINTF) [NEED_PRINTF_LONG_DOUBLE]: Implement 'long double' support
10189         for the %f, %F, %e, %E, %g, %G directives.
10190         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_LONG_DOUBLE): New macro.
10191         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
10192         gl_PRINTF_LONG_DOUBLE and test its result. Invoke
10193         gl_PREREQ_VASNPRINTF_LONG_DOUBLE.
10194         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
10195         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
10196         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
10197         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
10198         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
10199         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
10200         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
10201         * modules/fprintf-posix (Depends-on): Add frexpl-nolibm.
10202         * modules/snprintf-posix (Depends-on): Likewise.
10203         * modules/sprintf-posix (Depends-on): Likewise.
10204         * modules/vasnprintf-posix (Depends-on): Likewise.
10205         * modules/vasprintf-posix (Depends-on): Likewise.
10206         * modules/vfprintf-posix (Depends-on): Likewise.
10207         * modules/vsnprintf-posix (Depends-on): Likewise.
10208         * modules/vsprintf-posix (Depends-on): Likewise.
10209         * modules/vasnprintf (Files): Add lib/float+.h.
10210         * doc/functions/fprintf.texi: Update.
10211         * doc/functions/printf.texi: Update.
10212         * doc/functions/snprintf.texi: Update.
10213         * doc/functions/sprintf.texi: Update.
10214         * doc/functions/vfprintf.texi: Update.
10215         * doc/functions/vprintf.texi: Update.
10216         * doc/functions/vsnprintf.texi: Update.
10217         * doc/functions/vsprintf.texi: Update.
10218
10219 2007-05-18  Bruno Haible  <bruno@clisp.org>
10220
10221         * lib/vasnprintf.c (USE_SNPRINTF): Define to 0 on BeOS.
10222
10223 2007-05-18  Bruno Haible  <bruno@clisp.org>
10224
10225         * lib/vasnprintf.c (VASNPRINTF) [WIN32]: Use %I64d instead of %lld
10226         for printing 64-bit integers. Needed for mingw.
10227
10228 2007-05-18  Bruno Haible  <bruno@clisp.org>
10229
10230         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
10231         gl_FUNC_FREXPL_WORKS.
10232         * modules/printf-frexpl (Files): Add m4/frexpl.m4.
10233
10234 2007-05-18  Bruno Haible  <bruno@clisp.org>
10235
10236         * modules/frexpl-nolibm-tests: New file.
10237
10238         * modules/frexpl-nolibm: New file.
10239         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): New macro.
10240
10241 2007-05-17  Paul Eggert  <eggert@cs.ucla.edu>
10242
10243         * lib/dirent_.h: Prefer #include_next <foo.h> to #include
10244         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
10245         GCC 4.2, which otherwise issues a lot of warnings.
10246         * lib/iconv_.h, lib/locale_.h, lib/netinet_in_.h, lib/sys_select_.h:
10247         * lib/sys_socket_.h, lib/sys_stat_.h, lib/sysexits_.h, lib/unistd_.h:
10248         Likewise.
10249         * modules/fchdir (dirent.h): Substitute @HAVE_INCLUDE_NEXT@.
10250         * modules/iconv_open (iconv.h): Likewise.
10251         * modules/locale (locale.h): Likewise.
10252         * modules/netinet_in (netinet/in.h): Likewise.
10253         * modules/sys_select (sys_select.h): Likewise.
10254         * modules/sys_socket (sys/socket.h): Likewise.
10255         * modules/sys_stat (sys/stat.h): Likewise.
10256         * modules/sysexits (sysexits.h): Likewise.
10257         * modules/unistd (unistd.h): Likewise.
10258
10259 2007-05-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10260
10261         * modules/closein-tests (Makefile.am): Distribute
10262         `test-closein.sh'.
10263
10264 2007-05-17  Bruno Haible  <bruno@clisp.org>
10265
10266         * tests/test-printf-posix.output: Renamed from
10267         tests/test-fprintf-posix.out.
10268         * modules/fprintf-posix-tests: Update.
10269         * modules/printf-posix-tests: Update.
10270         * modules/vfprintf-posix-tests: Update.
10271         * modules/vprintf-posix-tests: Update.
10272         * tests/test-fprintf-posix.sh: Update.
10273         * tests/test-printf-posix.sh: Update.
10274         * tests/test-vfprintf-posix.sh: Update.
10275         * tests/test-vprintf-posix.sh: Update.
10276         Reported by Ralf Wildenhues.
10277
10278 2007-05-16  Paul Eggert  <eggert@cs.ucla.edu>
10279
10280         * lib/fcntl_.h: Prefer #include_next <foo.h> to #include
10281         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
10282         GCC 4.2, which otherwise issues a lot of warnings.
10283         * lib/inttypes_.h, lib/math_.h, lib/search_.h, lib/signal_.h:
10284         * lib/stdint_.h, lib/stdio_.h, lib/stdlib_.h, lib/string_.h:
10285         * lib/sys_time_.h, lib/time_.h, lib/wchar_.h, lib/wctype_.h: Likewise.
10286         * lib/stdlib_.h: Don't bother with #pragma GCC system_header, as
10287         it should no longer be needed.
10288         * lib/string_.h: Likewise.
10289         * modules/absolute-header (HAVE_INCLUDE_NEXT): New 'make' define.
10290         * modules/fcntl (fcntl.h): Substitute @HAVE_INCLUDE_NEXT@.
10291         * modules/inttypes (inttypes.h): Likewise.
10292         * modules/math (math.h): Likewise.
10293         * modules/search (search.h): Likewise.
10294         * modules/signal (signal.h): Likewise.
10295         * modules/stdint (stdint.h): Likewise.
10296         * modules/stdio (stdio.h): Likewise.
10297         * modules/stdlib (stdlib.h): Likewise.
10298         * modules/string (string.h): Likewise.
10299         * modules/sys_time (sys/time.h): Likewise.
10300         * modules/time (time.h): Likewise.
10301         * modules/wchar (wchar.h): Likewise.
10302         * modules/wctype (wtype.h): Likewise.
10303
10304 2007-05-16  Thien-Thi Nguyen  <ttn@gnuvola.org>  (tiny change)
10305
10306         * doc/gnulib-tool.texi (CVS Issues): Fix typo.
10307
10308 2007-05-13  Bruno Haible  <bruno@clisp.org>
10309
10310         * stpcpy.m4 (gl_FUNC_STPCPY): Require AC_C_RESTRICT.
10311         * stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
10312         * strsep.m4 (gl_FUNC_STRSEP): Likewise.
10313         * strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
10314         (gl_PREREQ_STRTOK_R): Don't require it here.
10315
10316 2007-05-13  Bruno Haible  <bruno@clisp.org>
10317
10318         * lib/stdlib_.h (mkdtemp, mkstemp): Comment out argument name. Needed
10319         when used in C++ mode.
10320
10321 2007-05-12  Bruno Haible  <bruno@clisp.org>
10322
10323         * lib/linebuffer.h: Tweak doc.
10324         * lib/linebuffer.c: Likewise.
10325
10326 2007-05-12  James Youngman  <jay@gnu.org>
10327
10328         * lib/linebuffer.c (readlinebuffer_delim): New function,
10329         like readlinebuffer, but use a caller-specified delimiter.
10330         (readlinebuffer): Just call readlinebuffer_delim with '\n'
10331         as the delimiter.
10332         * lib/linebuffer.h (readlinebuffer_delim): Declare it.
10333
10334 2007-05-12  Sergey Poznyakoff  <gray@gnu.org.ua>
10335
10336         * m4/openat.m4 (gl_FUNC_OPENAT): Do not require openat-die.
10337         * modules/openat (Files): Remove openat-die.c.
10338         (Depends-on): Add openat-die.
10339         * modules/openat-die: New module.
10340
10341 2007-05-06  Bruno Haible  <bruno@clisp.org>
10342
10343         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING, gl_VSNPRINTF_ZEROSIZE_C99):
10344         Update with info about Cygwin.
10345         * doc/functions/fprintf.texi: Update.
10346         * doc/functions/printf.texi: Update.
10347         * doc/functions/snprintf.texi: Update.
10348         * doc/functions/sprintf.texi: Update.
10349         * doc/functions/vfprintf.texi: Update.
10350         * doc/functions/vprintf.texi: Update.
10351         * doc/functions/vsnprintf.texi: Update.
10352         * doc/functions/vsprintf.texi: Update.
10353         Reported by Eric Blake.
10354
10355 2007-05-06  Bruno Haible  <bruno@clisp.org>
10356
10357         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Perform the
10358         padding ourselves for the floating-point directives.
10359         * m4/printf.m4 (gl_PRINTF_FLAG_ZERO): New macro.
10360         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_ZERO): New macro.
10361         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
10362         gl_PRINTF_FLAG_ZERO and test its result. Invoke
10363         gl_PREREQ_VASNPRINTF_FLAG_ZERO.
10364         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
10365         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
10366         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
10367         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
10368         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
10369         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
10370         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
10371         * tests/test-snprintf-posix.h (test_function): Also check the width
10372         and some flags in the %f directive.
10373         * tests/test-sprintf-posix.h (test_function): Likewise.
10374         * tests/test-vasnprintf-posix.c (test_function): Likewise.
10375         * tests/test-vasprintf-posix.c (test_function): Likewise.
10376         * doc/functions/fprintf.texi: Update.
10377         * doc/functions/printf.texi: Update.
10378         * doc/functions/snprintf.texi: Update.
10379         * doc/functions/sprintf.texi: Update.
10380         * doc/functions/vfprintf.texi: Update.
10381         * doc/functions/vprintf.texi: Update.
10382         * doc/functions/vsnprintf.texi: Update.
10383         * doc/functions/vsprintf.texi: Update.
10384
10385 2007-05-06  Bruno Haible  <bruno@clisp.org>
10386
10387         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_GROUPING]: Don't
10388         pass the ' flag character to sprintf or snprintf.
10389         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING): New macro.
10390         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_GROUPING): New macro.
10391         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
10392         gl_PRINTF_FLAG_GROUPING and test its result. Invoke
10393         gl_PREREQ_VASNPRINTF_FLAG_GROUPING.
10394         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
10395         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
10396         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
10397         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
10398         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
10399         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
10400         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
10401         * tests/test-snprintf-posix.h (test_function): Also check the grouping
10402         flag.
10403         * tests/test-sprintf-posix.h (test_function): Likewise.
10404         * tests/test-vasnprintf-posix.c (test_function): Likewise.
10405         * tests/test-vasprintf-posix.c (test_function): Likewise.
10406         * doc/functions/fprintf.texi: Update.
10407         * doc/functions/printf.texi: Update.
10408         * doc/functions/snprintf.texi: Update.
10409         * doc/functions/sprintf.texi: Update.
10410         * doc/functions/vfprintf.texi: Update.
10411         * doc/functions/vprintf.texi: Update.
10412         * doc/functions/vsnprintf.texi: Update.
10413         * doc/functions/vsprintf.texi: Update.
10414
10415 2007-05-01  Bruno Haible  <bruno@clisp.org>
10416
10417         * tests/test-argp-2.sh (func_compare): Drop .exe suffix.
10418
10419 2007-05-03  Paul Eggert  <eggert@cs.ucla.edu>
10420
10421         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Use better
10422         comment for D_INO_IN_DIRENT.  Problem reported by James Youngman.
10423
10424 2007-05-02  Paul Eggert  <eggert@cs.ucla.edu>
10425
10426         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Test whether
10427         readdir returns garbage in d_ino.  Problem reported by Kaz Sasayama in
10428         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00021.html>.
10429
10430 2007-05-02  Sergey Poznyakoff  <gray@gnu.org.ua>
10431
10432         * lib/argp-help.c (struct hol_entry): New member `ord'.
10433         (HOL_ENTRY_PTRCMP): Use ord for comparison
10434         (hol_sort): Initialize ord.
10435
10436 2007-05-01  Bruno Haible  <bruno@clisp.org>
10437
10438         * doc/functions/_Exit_C99.texi: Renamed from doc/functions/_Exit.texi.
10439         Reported by Eric Blake.
10440         * doc/gnulib.texi (Function Substitutes): Update.
10441
10442 2007-05-01  Bruno Haible  <bruno@clisp.org>
10443
10444         * doc/functions.texi: Remove file, now redundant through
10445         doc/functions/*.texi.
10446
10447 2007-05-01  Bruno Haible  <bruno@clisp.org>
10448
10449         * modules/argp (Depends-on): Add sleep.
10450
10451 2007-05-01  Bruno Haible  <bruno@clisp.org>
10452
10453         * modules/sleep-tests: New file.
10454         * tests/test-sleep.c: New file.
10455
10456         * modules/sleep: New file.
10457         * lib/sleep.c: New file.
10458         * m4/sleep.m4: New file.
10459         * lib/unistd_.h (sleep): New declaration.
10460         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_SLEEP,
10461         HAVE_SLEEP.
10462         * modules/unistd (Makefile.am): Substitute GNULIB_SLEEP, HAVE_SLEEP.
10463         * doc/functions/sleep.texi: Document the sleep module.
10464
10465 2007-05-01  Bruno Haible  <bruno@clisp.org>
10466
10467         * lib/sigprocmask.h: Remove file.
10468         * lib/signal_.h: Incorporate the previous contents of sigprocmask.h.
10469         * lib/sigprocmask.c: Include <signal.h> instead of sigprocmask.h.
10470         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Substitute GNULIB_SIGPROCMASK,
10471         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T.
10472         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Require
10473         gl_SIGNAL_H_DEFAULTS. Set HAVE_POSIX_SIGNALBLOCKING as a shell variable.
10474         (gl_PREREQ_SIGPROCMASK): Require gl_SIGNAL_H_DEFAULTS. Set
10475         HAVE_SIGSET_T as a shell variable.
10476         * modules/signal (Makefile.am): Substitute GNULIB_SIGPROCMASK,
10477         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T into signal.h.
10478         * modules/sigprocmask (Files): Remove lib/sigprocmask.h.
10479         (Depends-on): Add signal. Remove verify.
10480         (configure.ac): Invoke gl_SIGNAL_MODULE_INDICATOR.
10481         (Include): Mention <signal.h> instead of sigprocmask.h.
10482         * NEWS: Mention the change.
10483         * lib/fatal-signal.c: Don't include sigprocmask.h.
10484
10485 2007-05-01  Bruno Haible  <bruno@clisp.org>
10486
10487         * modules/signal: New file.
10488         * lib/signal_.h: New file.
10489         * m4/signal_h.m4: New file.
10490
10491 2007-05-01  Bruno Haible  <bruno@clisp.org>
10492
10493         * lib/wctype_.h: Test HAVE_ISWCNTRL at configure time.
10494         * m4/wctype.m4 (gl_WCTYPE_H): Substitute HAVE_ISWCNTRL.
10495         * modules/wctype (Makefile.am): Substitute HAVE_ISWCNTRL instead of
10496         HAVE_WCTYPE_CTMP_BUG into wctype.h.
10497
10498 2007-05-01  Bruno Haible  <bruno@clisp.org>
10499
10500         * lib/sys_stat_.h: Test HAVE_LSTAT, HAVE_DECL_MKDIR, HAVE_IO_H at
10501         configure time.
10502         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Substitute HAVE_LSTAT,
10503         HAVE_DECL_MKDIR, HAVE_IO_H via AC_SUBST.
10504         * modules/sys_stat (Makefile.am): Substitute their values into
10505         sys/stat.h.
10506
10507 2007-05-01  Bruno Haible  <bruno@clisp.org>
10508
10509         * lib/glob_.h: Test HAVE_SYS_CDEFS_H at configure time.
10510         * m4/glob.m4 (gl_PREREQ_GLOB): Substitute HAVE_SYS_CDEFS_H via AC_SUBST.
10511         * modules/glob (Makefile.am): Put HAVE_SYS_CDEFS_H value into glob.h.
10512
10513 2007-05-01  Bruno Haible  <bruno@clisp.org>
10514
10515         * doc/header/assert.texi: Undo last change: don't mention the gnulib
10516         'assert' module here.
10517
10518 2007-05-01  Bruno Haible  <bruno@clisp.org>
10519
10520         * doc/functions/*.texi: New files.
10521         * doc/functions/google-ranking.txt: New file.
10522         * doc/gnulib.texi (Function Substitutes): New chapter.
10523         (ctime, inet_ntoa): Remove sections.
10524         * doc/ctime.texi: Remove file.
10525         * doc/inet_ntoa.texi: Remove file.
10526         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Update
10527         dependencies.
10528         (%.info): New rule, specifying a --reference-limit.
10529
10530 2007-05-01  Bruno Haible  <bruno@clisp.org>
10531
10532         * MODULES.html.sh (posix_functions): Remove 'exec', 'toc'.
10533
10534 2007-05-01  Bruno Haible  <bruno@clisp.org>
10535
10536         * modules/mkdir (Depends-on): Add sys_stat, because sys_stat provides
10537         the portability of 'mkdir' to mingw systems.
10538
10539 2007-05-01  Bruno Haible  <bruno@clisp.org>
10540
10541         * doc/headers/google-ranking.txt: New file.
10542
10543 2007-04-30  Eric Blake  <ebb9@byu.net>
10544
10545         Prefer fseeko to fseek.
10546         * modules/getpass (Depends-on): Add fseeko.
10547         * lib/getpass.c (getpass): Use fseeko, not fseek.
10548
10549 2007-04-30  Sergey Poznyakoff  <gray@gnu.org.ua>
10550
10551         * lib/argp-help.c (hol_entry_cmp): Option sorting algorithm
10552         assumes the sorting is stable, while most qsort implementations
10553         are not.  Use argument addresses to ensure they never compare as
10554         equal.
10555
10556         * tests/test-argp-2.sh (usage-indent test): Fix output
10557         (func_compare): Restore diff options
10558         * tests/test-argp.c: Restore #include "progname.h"
10559
10560 2007-04-29  Bruno Haible  <bruno@clisp.org>
10561
10562         * m4/printf.m4 (gl_VSNPRINTF_ZEROSIZE_C99): New macro.
10563         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
10564         gl_VSNPRINTF_ZEROSIZE_C99. Test gl_cv_func_vsnprintf_zerosize_c99.
10565         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
10566         * modules/snprintf-posix-tests (Files): Add tests/test-snprintf.c.
10567         (configure.ac): Define CHECK_SNPRINTF_POSIX.
10568         (TESTS, check_PROGRAMS): Add test-snprintf.
10569         * modules/vsnprintf-posix-tests (Files): Add tests/test-vsnprintf.c.
10570         (configure.ac): Define CHECK_VSNPRINTF_POSIX.
10571         (TESTS, check_PROGRAMS): Add test-vsnprintf.
10572         * tests/test-snprintf.c (main) [!CHECK_SNPRINTF_POSIX]: Disable
10573         assertions that fail on HP-UX, OSF/1, or IRIX.
10574         * tests/test-vsnprintf.c (main) [!CHECK_VSNPRINTF_POSIX]: Likewise.
10575
10576 2007-04-29  Bruno Haible  <bruno@clisp.org>
10577
10578         * MODULES.html.sh (posix_functions): Remove 'contents'.
10579
10580 2007-04-29  Karl Berry  <karl@gnu.org>
10581
10582         * config/srclist.txt (gendocs_template_min): new entry.
10583
10584 2007-04-29  Bruno Haible  <bruno@clisp.org>
10585
10586         Work around fpurge bug on BSD systems.
10587         * modules/fpurge (Makefile.am): Compile fpurge.c unconditionally.
10588         * m4/fpurge.m4 (gl_FUNC_FPURGE): Don't invoke AC_LIBOBJ.
10589         * lib/fpurge.h (fpurge): Don't handle __fpurge wrapper here. Define
10590         fpurge to rpl_fpurge if the system already has this function.
10591         * lib/fpurge.c (fpurge): Handle also the __fpurge wrapper case and
10592         the case where the system already has this function. Correct invariants
10593         on BSD systems.
10594         * lib/fseeko.c (rpl_fseeko): Update recognition of preceding fflush on
10595         BSD systems.
10596
10597 2007-04-29  Sergey Poznyakoff  <gray@gnu.org.ua>
10598
10599         * lib/argp-help.c (hol_cluster_cmp): Reverse comparison.  Change
10600         proposed by Sven Verdoolaege.
10601
10602         * tests/test-argp.c: Fix option ordering.  Test deeply clustered
10603         options.
10604         * tests/test-argp-2.sh (func_compare): Use diff instead of cmp.
10605         (usage and help tests): Update
10606
10607 2007-04-29  Bruno Haible  <bruno@clisp.org>
10608
10609         * tests/test-fflush.c (main): Use a file of size 17, not 10.
10610         Print more information in case of failure. Disable a test on BeOS.
10611
10612 2007-04-29  Bruno Haible  <bruno@clisp.org>
10613
10614         * tests/**/test-*.[hc] (ASSERT): Use fprintf to show the line number.
10615         This helps debugging on systems on which no gdb is available.
10616
10617 2007-04-29  Bruno Haible  <bruno@clisp.org>
10618
10619         * lib/freading.h: Improve comments.
10620         * lib/fwriting.h: Likewise.
10621         * tests/test-freading.c (main): Don't check freading immediately after
10622         repositioning. Needed for glibc.
10623
10624 2007-04-29  Bruno Haible  <bruno@clisp.org>
10625
10626         * lib/freading.c (freading): Trivial simplification.
10627
10628 2007-04-28  Bruno Haible  <bruno@clisp.org>
10629
10630         * tests/test-fwriting.c (main): Also test the interaction between
10631         fflush and fwriting.
10632         * modules/fwriting-tests (Depends-on): Add fflush.
10633
10634         * tests/test-freading.c (main): Also test the interaction between
10635         fflush and freading.
10636         * modules/freading-tests (Depends-on): Add fflush.
10637
10638 2007-04-28  Bruno Haible  <bruno@clisp.org>
10639
10640         * lib/stdio_.h (fseek, ftell): Provide link warnings suggesting to use
10641         fseeko and ftello.
10642         Suggested by Eric Blake.
10643
10644 2007-04-28  Jim Meyering  <jim@meyering.net>
10645
10646         Avoid false-negative in gl_STDINT_H's C99 conformance test.
10647         * m4/stdint.m4 (gl_STDINT_H): When checking whether stdint.h conforms
10648         to C99, include all of gl_STDINT_INCLUDES, not just <stddef.h>.
10649
10650 2007-04-27  Eric Blake  <ebb9@byu.net>
10651
10652         * doc/headers/assert.texi (assert.h): Document assert module use.
10653
10654 2007-04-27  Bruno Haible  <bruno@clisp.org>
10655
10656         * doc/headers/*.texi: New files.
10657         * doc/gnulib.texi (Header File Substitutes): New chapter.
10658         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Specify
10659         dependencies.
10660         (standards.info ,standards.html, standards.dvi): Update dependencies.
10661         (mostlyclean, clean): New targets.
10662
10663 2007-04-27  Bruno Haible  <bruno@clisp.org>
10664
10665         * lib/sysexits_.h: Renamed from lib/sysexit_.h.
10666         * modules/sysexits (Files, Makefile.am): Update.
10667
10668         * lib/sys_socket_.h: Renamed from lib/socket_.h.
10669         * modules/sys_socket (Files, Makefile.am): Update.
10670
10671         * lib/sys_stat_.h: Renamed from lib/stat_.h.
10672         * modules/sys_stat (Files, Makefile.am): Update.
10673
10674 2007-04-27  Eric Blake  <ebb9@byu.net>
10675
10676         * lib/freading.h: Improve comments.
10677         * lib/fwriting.h: Likewise.
10678         * lib/fflush.c: Likewise.
10679
10680         Fix closein for mingw.
10681         * modules/closein-tests: Add tests for closein.
10682         * tests/test-closein.c: New file.
10683         * tests/test-closein.sh: Likewise.
10684         * lib/unistd_.h [!SEEK_CUR]: Mingw also needs stdlib.h for _exit.
10685         * lib/closein.c (close_stdin): Don't fflush non-seekable streams.
10686
10687 2007-04-27  Bruno Haible  <bruno@clisp.org>
10688
10689         * lib/inttypes_.h [_DECC]: Don't use #include_next if the compiler
10690         version is < 6.
10691         * lib/math_.h [__DECC]: Likewise.
10692         * lib/stdio_.h [__DECC]: Likewise.
10693         * lib/stdlib_.h [__DECC]: Likewise.
10694         * lib/string_.h [__DECC]: Likewise.
10695         * lib/time_.h [__DECC]: Likewise.
10696         * lib/wchar_.h [__DECC]: Likewise.
10697         * lib/wctype_.h [__DECC]: Likewise.
10698
10699 2007-04-27  Bruno Haible  <bruno@clisp.org>
10700
10701         * tests/test-fbufmode.c (main): Relax test, to avoid failure on mingw.
10702
10703 2007-04-27  Bruno Haible  <bruno@clisp.org>
10704
10705         * lib/fflush.c: Add comments.
10706         * modules/fpurge-tests (Depends-on): Add fflush.
10707         * modules/freadable-tests (Depends-on): Likewise.
10708         * modules/fwritable-tests (Depends-on): Likewise.
10709
10710 2007-04-27  Charles Wilson  <libtool@cwilson.fastmail.fm>
10711
10712         * m4/argz.m4 (gl_FUNC_ARGZ): Use !HAVE_WORKING_ARGZ instead of
10713         SYSTEM_ARGZ_IS_BROKEN.  Also, minor stylistic improvements.
10714         Report by Bruno Haible <bruno@clisp.org>.
10715
10716 2007-04-26  Eric Blake  <ebb9@byu.net>
10717
10718         Fix fflush on mingw.
10719         * modules/fflush (Depends-on): Add freading.
10720         * lib/fflush.c (rpl_fflush): Use freading to avoid losing buffered
10721         but unread data.
10722
10723 2007-04-26  Eric Blake  <ebb9@byu.net>
10724         and Bruno Haible  <bruno@clisp.org>
10725
10726         Implement freading and fwriting.
10727         * lib/freading.c: New file.
10728         * lib/freading.h: Likewise.
10729         * m4/freading.m4: Likewise.
10730         * modules/freading: Likewise.
10731         * modules/freading-tests: Likewise.
10732         * tests/test-freading.c: Likewise.
10733         * lib/fwriting.c: New file.
10734         * lib/fwriting.h: Likewise.
10735         * m4/fwriting.m4: Likewise.
10736         * modules/fwriting: Likewise.
10737         * modules/fwriting-tests: Likewise.
10738         * tests/test-fwriting.c: Likewise.
10739         * MODULES.html.sh (File stream based Input/Output): Mention them.
10740
10741 2007-04-26  Bruno Haible  <bruno@clisp.org>
10742
10743         * lib/stdio_.h (fseeko, ftello): Check that off_t has the same size as
10744         'long' when we assume it.
10745         Suggested by Eric Blake.
10746
10747 2007-04-26  Bruno Haible  <bruno@clisp.org>
10748
10749         Ensure fseeko, ftello are declared on glibc systems.
10750         * modules/fflush (configure.ac-early): Require AC_FUNC_FSEEKO.
10751         * modules/fseeko (configure.ac-early): Likewise.
10752         * modules/ftello (configure.ac-early): Likewise.
10753         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Don't define HAVE_FSEEKO, rely on
10754         AC_FUNC_FSEEKO for this.
10755         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Inline gl_CHECK_FSEEKO.
10756         (gl_CHECK_FSEEKO): Remove macro.
10757
10758 2007-04-26  Bruno Haible  <bruno@clisp.org>
10759
10760         * tests/test-fflush.c (main): Also check the ftell result after
10761         fflush and fseek/fseeko.
10762         * lib/fflush.c (rpl_fflush): For BSD implementations, update the
10763         file descriptor position cache in the stream.
10764         * lib/fseeko.c (rpl_fseeko): Likewise.
10765
10766 2007-04-26  Bruno Haible  <bruno@clisp.org>
10767
10768         * modules/fflush-tests (Depends-on): Add fseeko.
10769
10770 2007-04-25  Charles Wilson  <libtool@cwilson.fastmail.fm>
10771             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10772
10773         * lib/argz_.h: ensure error_t definition is obtained in same
10774         mechanism system argz.h would have.
10775         * m4/argz.m4 (gl_FUNC_ARGZ): add new test to check if $host's
10776         argz facilities are known bad.  Err on the side of caution if
10777         cross-compiling.
10778
10779 2007-04-25  Eric Blake  <ebb9@byu.net>
10780
10781         * lib/fpurge.c (includes): Use stdlib.h for free.
10782         * tests/test-fflush.c (main): Also test fflush-fseeko.
10783
10784 2007-04-25  Bruno Haible  <bruno@clisp.org>
10785
10786         Make fflush+fseek POSIX-compliant on FreeBSD and MacOS X.
10787         * lib/fseeko.c: New file.
10788         * lib/stdio_.h: Include <sys/types.h> when off_t is needed.
10789         (fseeko, fseek): Define to replacements if REPLACE_FFLUSH.
10790         * m4/fseeko.m4 (gl_CHECK_FSEEKO): New macro, extracted from
10791         gl_FUNC_FSEEKO.
10792         (gl_FUNC_FSEEKO): Invoke it.
10793         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Arrange to compile fseeko.c. Invoke
10794         gl_CHECK_FSEEKO. Define HAVE_FSEEKO.
10795         * modules/fflush (Files): Add lib/fseeko.c, m4/fseeko.m4.
10796
10797 2007-04-25  Bruno Haible  <bruno@clisp.org>
10798
10799         * modules/fflush (Depends-on): Add ftello.
10800
10801 2007-04-25  Bruno Haible  <bruno@clisp.org>
10802
10803         * modules/ftello-tests: New file.
10804         * tests/test-ftello.c: New file.
10805
10806         * modules/ftello: New file.
10807         * m4/ftello.m4: New file.
10808         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELLO,
10809         HAVE_FTELLO.
10810         * lib/stdio_.h (ftello): New declaration.
10811         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELLO,
10812         HAVE_FTELLO.
10813
10814 2007-04-25  Bruno Haible  <bruno@clisp.org>
10815
10816         * modules/fseeko-tests: New file.
10817         * tests/test-fseeko.c: New file.
10818
10819         * modules/fseeko: New file.
10820         * m4/fseeko.m4: New file.
10821         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEKO,
10822         HAVE_FSEEKO.
10823         * lib/stdio_.h (fseeko): New declaration.
10824         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEKO,
10825         HAVE_FSEEKO.
10826
10827 2007-04-25  Bruno Haible  <bruno@clisp.org>
10828
10829         * lib/stdio_.h (fflush): Add support for GNULIB_POSIXCHECK.
10830
10831 2007-04-25  Bruno Haible  <bruno@clisp.org>
10832
10833         * lib/unistd_.h: Include <stdio.h> if needed to get the SEEK_* macros.
10834         * tests/test-stdio.c: Check that the various SEEK_* macros are defined.
10835         * tests/test-unistd.c: Likewise.
10836         * tests/test-fcntl.c: Likewise.
10837
10838 2007-04-23  Eric Blake  <ebb9@byu.net>
10839
10840         * lib/fflush.c: Fix missing include.
10841         Reported by Bruno Haible.
10842
10843 2007-04-23  Bruno Haible  <bruno@clisp.org>
10844
10845         * lib/fpurge.c (fpurge) [glibc, BSD]: Free a malloc()ed ungetc buffer.
10846         Reported by Eric Blake.
10847
10848 2007-04-23  Bruno Haible  <bruno@clisp.org>
10849
10850         * lib/fbufmode.c (fbufmode): Port to Solaris/SPARC64.
10851
10852 2007-04-23  Bruno Haible  <bruno@clisp.org>
10853
10854         * lib/fseterr.c (fseterr): Don't hardcode the value of _IOERR.
10855
10856 2007-04-23  Bruno Haible  <bruno@clisp.org>
10857
10858         * tests/test-fbufmode.c (main): Be prepared to a failure of setvbuf.
10859         Needed on HP-UX 11.
10860
10861 2007-04-16  Eric Blake  <ebb9@byu.net>
10862
10863         Make fflush rely on fpurge.
10864         * lib/fflush.c (rpl_fflush): Rely on fpurge module, rather than
10865         open coding all variants.
10866         * modules/fflush (Depends-on): Add fpurge and unistd.
10867         * modules/fflush-tests (Depends-on): Unistd is no longer extra.
10868         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Simplify.
10869
10870         Fix --with-tests compilation on cygwin.
10871         * modules/argmatch-tests (Makefile.am): List gnulib library first
10872         in LDADD.
10873         * modules/argp-tests (Makefile.am): Likewise.
10874         * modules/array-list-tests (Makefile.am): Likewise.
10875         * modules/array-oset-tests (Makefile.am): Likewise.
10876         * modules/avltree-list-tests (Makefile.am): Likewise.
10877         * modules/avltree-oset-tests (Makefile.am): Likewise.
10878         * modules/avltreehash-list-tests (Makefile.am): Likewise.
10879         * modules/carray-list-tests (Makefile.am): Likewise.
10880         * modules/dirname-tests (Makefile.am): Likewise.
10881         * modules/frexp-tests (Makefile.am): Likewise.
10882         * modules/isnanl-tests (Makefile.am): Likewise.
10883         * modules/linked-list-tests (Makefile.am): Likewise.
10884         * modules/linkedhash-list-tests (Makefile.am): Likewise.
10885         * modules/lock-tests (Makefile.am): Likewise.
10886         * modules/rbtree-list-tests (Makefile.am): Likewise.
10887         * modules/rbtree-oset-tests (Makefile.am): Likewise.
10888         * modules/rbtreehash-list-tests (Makefile.am): Likewise.
10889         * modules/tls-tests (Makefile.am): Likewise.
10890         * modules/tsearch-tests (Makefile.am): Likewise.
10891         * modules/xvasprintf-tests (Makefile.am): Likewise.
10892
10893         Fix fpurge for cygwin.
10894         * lib/fpurge.c (fpurge): Fix order of operation flub, and return a
10895         value.
10896         * modules/fpurge-tests (Depends-on): Clean up trash.
10897
10898 2007-04-16  Simon Josefsson  <simon@josefsson.org>
10899
10900         * lib/gc-libgcrypt.c (gc_hash_open): Shut up compiler warnings.
10901
10902         * m4/autobuild.m4: Re-indent.
10903
10904 2007-04-13  Bruno Haible  <bruno@clisp.org>
10905
10906         * modules/fpurge-tests: New file.
10907         * tests/test-fpurge.c: New file.
10908
10909         * modules/fpurge: New file.
10910         * lib/fpurge.h: New file.
10911         * lib/fpurge.c: New file.
10912         * m4/fpurge.m4: New file.
10913
10914 2007-04-13  Bruno Haible  <bruno@clisp.org>
10915
10916         * modules/fbufmode-tests: New file.
10917         * tests/test-fbufmode.c: New file.
10918
10919         * modules/fbufmode: New file.
10920         * lib/fbufmode.h: New file.
10921         * lib/fbufmode.c: New file.
10922         * m4/fbufmode.m4: New file.
10923
10924 2007-04-13  Bruno Haible  <bruno@clisp.org>
10925
10926         * modules/fwritable-tests: New file.
10927         * tests/test-fwritable.c: New file.
10928
10929         * modules/fwritable: New file.
10930         * lib/fwritable.h: New file.
10931         * lib/fwritable.c: New file.
10932         * m4/fwritable.m4: New file.
10933
10934 2007-04-13  Bruno Haible  <bruno@clisp.org>
10935
10936         * modules/freadable-tests: New file.
10937         * tests/test-freadable.c: New file.
10938
10939         * modules/freadable: New file.
10940         * lib/freadable.h: New file.
10941         * lib/freadable.c: New file.
10942         * m4/freadable.m4: New file.
10943
10944 2007-04-13  Bruno Haible  <bruno@clisp.org>
10945
10946         * modules/fflush-tests (Makefile.am): Remove EXTRA_DIST. Augment
10947         MOSTLYCLEANFILES.
10948
10949 2007-04-13  Paul Eggert  <eggert@cs.ucla.edu>
10950
10951         * build-aux/bootstrap (gnulib_tool_option_extras): New var, used by
10952         gzip bootstrap.conf to avoid dragging in i18n machinery.
10953         (gnulib_tool_option): Use it.
10954
10955 2007-04-13  Bruno Haible  <bruno@clisp.org>
10956
10957         * tests/test-vasnprintf-posix.c (test_function): Add tests for %f and
10958         %F directives.
10959         * tests/test-vasprintf-posix.c (test_function): Likewise.
10960         * tests/test-snprintf-posix.h (test_function): Likewise.
10961         * tests/test-sprintf-posix.h (test_function): Likewise.
10962         * tests/test-fprintf-posix.h (test_function): Likewise.
10963         * tests/test-printf-posix.h (test_function): Likewise.
10964         * tests/test-fprintf-posix.out: Likewise.
10965
10966 2007-04-13  Bruno Haible  <bruno@clisp.org>
10967
10968         * modules/lock-tests (configure.ac): For LIBSCHED, try also -lposix4.
10969         * modules/tls-tests (configure.ac): Likewise.
10970         Reported by Arto C. Nirkko <anirkko@insel.ch>.
10971
10972 2007-04-13  Bruno Haible  <bruno@clisp.org>
10973
10974         * lib/tls.c (glthread_tls_get): Fix return type.
10975         Patch by Arto C. Nirkko <anirkko@insel.ch>.
10976
10977 2007-04-12  Eric Blake  <ebb9@byu.net>
10978
10979         * modules/gettime (Depends-on): Remove gettime.
10980         Reported by Dmitry V. Levin.
10981
10982 2007-04-12  Bruno Haible  <bruno@clisp.org>
10983
10984         * modules/fflush (Include): Mention <stdio.h>.
10985         * modules/strtoimax (Include): Mention <inttypes.h>.
10986         * modules/strtoumax (Include): Likewise.
10987
10988 2007-04-12  Eric Blake  <ebb9@byu.net>
10989
10990         * .cvsignore: New file.
10991         * .gitignore: Likewise.
10992
10993 2007-04-12  Bruno Haible  <bruno@clisp.org>
10994
10995         * modules/iconv-tests (test_iconv_LDADD): Mention -liconv after LDADD,
10996         not before, since $(LDADD) often contains libgnu.a.
10997         * modules/striconv-tests (test_striconv_LDADD): Likewise.
10998         * modules/striconveh-tests (test_striconveh_LDADD): Likewise.
10999         * modules/striconveha-tests (test_striconveha_LDADD): Likewise.
11000         Needed on Cygwin.
11001
11002 2007-04-12  Eric Blake  <ebb9@byu.net>
11003
11004         Work around glibc's failure to flush stdin on fclose.
11005         * lib/closein.c (close_stdin): Flush stdin before closing.
11006
11007         Work around glibc's failure to reset seekable stdin on exit.
11008         * modules/closein: New module.
11009         * lib/closein.c: New file.
11010         * lib/closein.h: Likewise.
11011         * m4/closein.m4: Likewise.
11012         * MODULES.html.sh (File stream based Input/Output): Document it.
11013
11014 2007-04-12  Simon Josefsson  <simon@josefsson.org>
11015
11016         * gnulib-tool: Rename generated 'autobuild' script to
11017         'do-autobuild' in --create-megatestdir output.
11018
11019         * doc/gnulib.texi (Build robot for gnulib): Fix.
11020
11021 2007-04-12  Simon Josefsson  <simon@josefsson.org>
11022
11023         * modules/sysexits (Depends-on): Add absolute-header.
11024
11025 2007-04-12  Eric Blake  <ebb9@byu.net>
11026
11027         No need to preserve errno on success.
11028         * lib/fflush.c (rpl_fflush): Simplify errno tracking.
11029         Reported by Bruno Haible.
11030
11031 2007-04-12  Simon Josefsson  <simon@josefsson.org>
11032
11033         * MODULES.html.sh (Support for maintaining and releasing
11034         projects): Add autobuild.  Suggested by Eric Blake <ebb9@byu.net>.
11035
11036 2007-04-12  Simon Josefsson  <simon@josefsson.org>
11037
11038         * gnulib-tool (func_modules_add_dummy): Respect --avoid=dummy.
11039
11040 2007-04-12  Simon Josefsson  <simon@josefsson.org>
11041
11042         * modules/autobuild: New module.
11043
11044         * m4/autobuild.m4: New file.
11045
11046 2007-04-11  Bruno Haible  <bruno@clisp.org>
11047
11048         * lib/vasnprintf.c (VASNPRINTF): Implement the %F directive using the
11049         %f directive, if NEED_PRINTF_DIRECTIVE_F is defined.
11050         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_F): New macro.
11051         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_F): New macro.
11052         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
11053         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
11054         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
11055         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
11056         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
11057         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
11058         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Invoke
11059         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
11060         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
11061         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Invoke
11062         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
11063         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
11064         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Invoke
11065         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
11066         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
11067         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Invoke
11068         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
11069         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
11070         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Invoke
11071         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
11072         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
11073         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Invoke
11074         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
11075         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
11076         Reported by Eric Blake.
11077
11078 2007-04-11  Bruno Haible  <bruno@clisp.org>
11079
11080         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Fix test. It always failed.
11081
11082 2007-04-10  Bruno Haible  <bruno@clisp.org>
11083
11084         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct result
11085         for NaN and Infinity. Needed on FreeBSD 6.1.
11086         * tests/test-vasnprintf-posix.c (test_function): Undo last change
11087         regarding results for "%010a" of Infinity and NaN.
11088         * tests/test-vasprintf-posix.c (test_function): Likewise.
11089         * tests/test-snprintf-posix.h (test_function): Likewise.
11090         * tests/test-sprintf-posix.h (test_function): Likewise.
11091         * tests/test-fprintf-posix.h (test_function): Likewise.
11092         * tests/test-printf-posix.h (test_function): Likewise.
11093         * tests/test-fprintf-posix.out: Likewise.
11094
11095 2007-04-10  Bruno Haible  <bruno@clisp.org>
11096
11097         * modules/locale-tests: New file.
11098         * tests/test-locale.c: New file.
11099
11100         * modules/locale: New file.
11101         * lib/locale_.h: New file.
11102         * m4/locale_h.m4: New file.
11103
11104 2007-04-10  Paul Eggert  <eggert@cs.ucla.edu>
11105             Bruno Haible  <bruno@clisp.org>
11106
11107         * m4/signbit.m4 (gl_SIGNBIT): When the sign bit position could not
11108         be determined, test for availability of the copysignf, copysign,
11109         copysignl functions.
11110         * lib/signbitf.c (gl_signbitf): Use copysignf if available in libc.
11111         * lib/signbitd.c (gl_signbitd): Use copysign if available in libc.
11112         * lib/signbitl.c (gl_signbitl): Use copysignl if available in libc.
11113
11114 2007-04-09  Eric Blake  <ebb9@byu.net>
11115
11116         * lib/stdio_.h [REPLACE_FFLUSH]: Declare rpl_fflush.
11117         * modules/stdio (Makefile.am): Support fflush.
11118         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
11119         * modules/fflush: New file.
11120         * lib/fflush.c: Likewise.
11121         * m4/fflush.m4: Likewise.
11122         * modules/fflush-tests: New test.
11123         * tests/test-fflush.c: Likewise.
11124         * MODULES.html.sh (Input/output <stdio.h>): Document new module.
11125
11126 2007-04-06  Bruno Haible  <bruno@clisp.org>
11127
11128         * lib/vasnprintf.c: Include <math.h>. Don't include float+.h.
11129         (VASNPRINTF): Use signbit for faster determination whether to print a
11130         minus sign.
11131         * modules/vasnprintf (Files): Remove lib/float+.h.
11132         * modules/fprintf-posix (Depends-on): Add signbit.
11133         * modules/snprintf-posix (Depends-on): Likewise.
11134         * modules/sprintf-posix (Depends-on): Likewise.
11135         * modules/vasnprintf-posix (Depends-on): Likewise.
11136         * modules/vasprintf-posix (Depends-on): Likewise.
11137         * modules/vfprintf-posix (Depends-on): Likewise.
11138         * modules/vsnprintf-posix (Depends-on): Likewise.
11139         * modules/vsprintf-posix (Depends-on): Likewise.
11140
11141 2007-04-06  Bruno Haible  <bruno@clisp.org>
11142
11143         * tests/test-frexp.c (main): Test also the sign bit of zero results.
11144         * tests/test-frexpl.c (main): Likewise.
11145         * tests/test-ldexpl.c (main): Likewise.
11146         * modules/frexp-tests (Depends-on): Add signbit.
11147         * modules/frexpl-tests (Depdends-on): Likewise.
11148         * modules/ldexpl-tests (Depdends-on): Likewise.
11149
11150 2007-04-06  Bruno Haible  <bruno@clisp.org>
11151
11152         * modules/signbit-tests: New file.
11153         * tests/test-signbit.c: New file.
11154
11155         * modules/signbit: New file.
11156         * lib/signbitf.c: New file.
11157         * lib/signbitd.c: New file.
11158         * lib/signbitl.c: New file.
11159         * m4/signbit.m4: New file.
11160         * lib/math_.h (gl_signbitf, gl_signbitd, gl_signbitl): New declarations.
11161         (signbit): New macro.
11162         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_SIGNBIT and
11163         REPLACE_SIGNBIT.
11164         * modules/math (Makefile.am) Substibute also GNULIB_SIGNBIT and
11165         REPLACE_FREXPL into math.h.
11166
11167 2007-04-06  Bruno Haible  <bruno@clisp.org>
11168
11169         * modules/isnanf-nolibm-tests: New file.
11170         * tests/test-isnanf.c: New file.
11171
11172         * modules/isnanf-nolibm: New file.
11173         * lib/isnanf.h: New file.
11174         * lib/isnanf.c: New file.
11175         * lib/isnan.c: Consider the USE_FLOAT macro.
11176         * m4/isnanf.m4: New file.
11177
11178 2007-04-06  Bruno Haible  <bruno@clisp.org>
11179
11180         * modules/gettext-h (configure.ac): AC_SUBST LIBINTL and LTLIBINTL.
11181         (Link): New section.
11182
11183         * modules/canonicalize-lgpl-tests (Makefile.am): Undo last change.
11184
11185 2007-04-06  Bruno Haible  <bruno@clisp.org>
11186
11187         Assume the 'long double' type.
11188         * m4/longdouble.m4: Remove file.
11189         * config/srclist.txt: Don't mention longdouble.m4.
11190         * lib/allocsa.h: Assume HAVE_LONG_DOUBLE to be true.
11191         * lib/float+.h: Likewise.
11192         * lib/frexp.c: Likewise.
11193         * lib/printf-args.h: Likewise.
11194         * lib/printf-args.c: Likewise.
11195         * lib/printf-frexp.c: Likewise.
11196         * lib/printf-parse.c: Likewise.
11197         * lib/vasnprintf.c: Likewise.
11198         * m4/allocsa.m4: Remove gt_TYPE_LONGDOUBLE invocation.
11199         * m4/intl.m4: Likewise.
11200         * m4/isnanl.m4: Likewise.
11201         * m4/printf.m4: Likewise.
11202         * m4/printf-frexpl.m4: Likewise.
11203         * m4/vasnprintf.m4: Likewise.
11204         * modules/allocsa (Files): Remove m4/longdouble.m4.
11205         * modules/gettext (Files): Likewise.
11206         * modules/relocatable-prog-wrapper (Files): Likewise.
11207         * modules/vasnprintf (Files): Likewise.
11208         * modules/isnanl (Files): Likewise.
11209         (Include): Simplify.
11210         * modules/isnanl-nolibm (Files): Remove m4/longdouble.m4.
11211         (Include): Simplify.
11212         * modules/printf-frexpl (Files): Remove m4/longdouble.m4.
11213         (Include): Simplify.
11214         * modules/snprintf-posix-tests (Files): Remove m4/longdouble.m4.
11215         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
11216         * modules/sprintf-posix-tests (Files): Remove m4/longdouble.m4.
11217         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
11218         * modules/vasnprintf-posix-tests (Files): Remove m4/longdouble.m4.
11219         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
11220         * modules/vasprintf-posix-tests (Files): Remove m4/longdouble.m4.
11221         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
11222         * modules/vsnprintf-posix-tests (Files): Remove m4/longdouble.m4.
11223         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
11224         * modules/vsprintf-posix-tests (Files): Remove m4/longdouble.m4.
11225         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
11226         * tests/test-isnanl-nolibm.c: Assume HAVE_LONG_DOUBLE to be true.
11227         * tests/test-isnanl.c: Likewise.
11228         * tests/test-snprintf-posix.h: Likewise.
11229         * tests/test-sprintf-posix.h: Likewise.
11230         * tests/test-vasnprintf-posix.c: Likewise.
11231         * tests/test-vasnprintf-posix2.c: Likewise.
11232         * tests/test-vasprintf-posix.c: Likewise.
11233
11234 2007-04-06  Bruno Haible  <bruno@clisp.org>
11235
11236         Fix problem with Compaq (ex-DEC) Desktop C compiler on Tru64.
11237         * lib/math_.h [__DECC]: Include the overridden include file through
11238         #include_next, outside the double-inclusion guard.
11239         * lib/stdio_.h [__DECC]: Likewise.
11240         * lib/stdlib_.h [__DECC]: Likewise.
11241         * lib/string_.h [__DECC]: Likewise.
11242         * lib/time_.h [__DECC]: Likewise.
11243         * lib/wchar_.h [__DECC]: Likewise.
11244         * lib/wctype_.h [__DECC]: Likewise.
11245         * lib/inttypes_.h [__DECC]: Likewise.
11246         Reported by Albert Chin <china@thewrittenword.com> in
11247         <http://lists.gnu.org/archive/html/bug-gnulib/2007-04/msg00088.html>.
11248
11249 2007-04-04  Eric Blake  <ebb9@byu.net>
11250
11251         * m4/stdint.m4 (gl_STDINT_H): Detect WINT_MAX bug in cygwin
11252         1.5.x.
11253
11254 2007-04-04  Bruno Haible  <bruno@clisp.org>
11255
11256         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct
11257         rounding. Don't assume that FreeBSD 6 and NetBSD 4 pass this test.
11258
11259 2007-04-04  Bruno Haible  <bruno@clisp.org>
11260
11261         * tests/test-vasnprintf-posix.c (test_function): Allow two possible
11262         results for "%010a" of Infinity and NaN.
11263         * tests/test-vasprintf-posix.c (test_function): Likewise.
11264         * tests/test-snprintf-posix.h (test_function): Likewise.
11265         * tests/test-sprintf-posix.h (test_function): Likewise.
11266         * tests/test-fprintf-posix.h (test_function): Remove these tests.
11267         * tests/test-printf-posix.h (test_function): Likewise.
11268         * tests/test-fprintf-posix.out: Update.
11269         Needed for FreeBSD 6.1.
11270
11271 2007-04-04  Bruno Haible  <bruno@clisp.org>
11272
11273         * DEPENDENCIES: Remove mentions of tar and gzip, since they are not
11274         directly used by the gnulib modules nor by gnulib-tool.
11275
11276 2007-04-04  Paul Eggert  <eggert@cs.ucla.edu>
11277
11278         * DEPENDENCIES: Give overall description of version dependency
11279         desirability.  Use more-typical names for apps.
11280         Add shell, coreutils, diffutils, grep, tar, gzip.
11281
11282 2007-04-04  Simon Josefsson  <simon@josefsson.org>
11283
11284         * MODULES.html.sh: Rename crypto modules.  Remove iconvme.
11285
11286 2007-04-04  Karl Berry  <karl@gnu.org>
11287
11288         * MODULES.html.sh (func_module): missing '.
11289
11290 2007-04-03  Bruno Haible  <bruno@clisp.org>
11291
11292         * modules/argmatch-tests (Makefile.am): New variable
11293         test_argmatch_LDADD.
11294         * modules/argp-tests (Makefile.am): New variable test_argp_LDADD.
11295         * modules/array-list-tests (Makefile.am): New variable
11296         test_array_list_LDADD.
11297         * modules/array-oset-tests (Makefile.am): New variable
11298         test_array_oset_LDADD.
11299         * modules/avltree-list-tests (Makefile.am): New variable
11300         test_avltree_list_LDADD.
11301         * modules/avltree-oset-tests (Makefile.am): New variable
11302         test_avltree_oset_LDADD.
11303         * modules/avltreehash-list-tests (Makefile.am): New variable
11304         test_avltreehash_list_LDADD.
11305         * modules/canonicalize-lgpl-tests (Makefile.am): New variable
11306         test_canonicalize_lgpl_LDADD.
11307         * modules/carray-list-tests (Makefile.am): New variable
11308         test_carray_list_LDADD.
11309         * modules/dirname-tests (Makefile.am): New variable
11310         test_dirname_LDADD.
11311         * modules/linked-list-tests (Makefile.am): New variable
11312         test_linked_list_LDADD.
11313         * modules/linkedhash-list-tests (Makefile.am): New variable
11314         test_linkedhash_list_LDADD.
11315         * modules/rbtree-list-tests (Makefile.am): New variable
11316         test_rbtree_list_LDADD.
11317         * modules/rbtree-oset-tests (Makefile.am): New variable
11318         test_rbtree_oset_LDADD.
11319         * modules/rbtreehash-list-tests (Makefile.am): New variable
11320         test_rbtreehash_list_LDADD.
11321         * modules/xvasprintf-tests (Makefile.am): New variable
11322         test_xvasprintf_LDADD.
11323         Reported by Eric Blake.
11324
11325 2007-04-03  Eric Blake  <ebb9@byu.net>
11326
11327         * DEPENDENCIES: Weaken m4 requirements.
11328
11329 2007-04-03  Bruno Haible  <bruno@clisp.org>
11330
11331         * modules/frexp-tests (configure.ac): Remove AC_SUBST.
11332         * modules/isnanl-tests (configure.ac): Likewise.
11333
11334 2007-04-03  Ben Pfaff  <blp@gnu.org>
11335
11336         * modules/iconv_open: Add $(srcdir)/ to source directory
11337         references in Makefile fragments that call gperf, to fix VPATH
11338         builds.
11339
11340 2007-04-03  Bruno Haible  <bruno@clisp.org>
11341
11342         * modules/ldexpl (Depends-on): Add isnanl, remove isnanl-nolibm.
11343         * lib/ldexpl.c: Undo last change.
11344
11345 2007-04-03  Bruno Haible  <bruno@clisp.org>
11346
11347         * modules/printf-frexpl (Depends-on): Undo last change.
11348         (Files): Add m4/ldexpl.m4.
11349
11350 2007-04-03  Bruno Haible  <bruno@clisp.org>
11351
11352         * m4/isnanl.m4 (gl_FUNC_ISNANL): Substitute ISNANL_LIBM.
11353         * modules/isnanl (Link): New section.
11354
11355         * m4/frexp.m4 (gl_FUNC_FREXP): Substitute FREXP_LIBM.
11356         * modules/frexp (Link): New section.
11357
11358         * m4/frexpl.m4 (gl_FUNC_FREXPL): Substitute FREXPL_LIBM.
11359         * modules/frexpl (Link): New section.
11360
11361         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Substitute LDEXPL_LIBM.
11362         * modules/ldexpl (Link): New section.
11363
11364 2007-04-03  Bruno Haible  <bruno@clisp.org>
11365
11366         * modules/TEMPLATE-EXTENDED: New file.
11367         * gnulib-tool (func_all_modules, func_verify_module): Exclude it.
11368
11369 2007-04-03  Bruno Haible  <bruno@clisp.org>
11370
11371         * DEPENDENCIES: New file.
11372         Suggested by Simon Josefsson.
11373
11374 2007-04-03  Bruno Haible  <bruno@clisp.org>
11375
11376         * doc/gnulib.texi: Escape @.
11377
11378 2007-04-03  James Youngman  <jay@gnu.org>
11379         and Paul Eggert  <eggert@cs.ucla.edu>
11380
11381         * lib/stat-time.h (get_stat_birthtime): Check for zero-valued
11382         birthtime on all systems that have birthtime, not just those which
11383         use st_birthtimensec rather than st_birthtim.  Putting zero in
11384         st_birthtim.tv_sec is how (for example) FreeBSD/x86 6.1 indicates
11385         that the birth time is not available for files on an NFS mount.
11386
11387 2007-04-03  Simon Josefsson  <simon@josefsson.org>
11388
11389         * modules/memxor: Move back from crypto/, suggested by Bruno.
11390         * modules/crypto/hmac-sha1: Fix memxor dependency.
11391
11392         * modules/crypto/gc: Moved from ../.
11393
11394 2007-04-02  Eric Blake  <ebb9@byu.net>
11395
11396         * lib/ldexpl.c (includes): Avoid libm.
11397
11398         * modules/printf-frexpl (Depends-on): Depend on ldexpl.
11399
11400 2007-04-02  Bruno Haible  <bruno@clisp.org>
11401
11402         * lib/sysexit_.h (EX_OK): Disable the EX_OK definition from <unistd.h>
11403         on IRIX.
11404
11405 2007-04-02  Bruno Haible  <bruno@clisp.org>
11406
11407         * m4/intdiv0.m4 (gt_INTDIV0): Avoid performing the test for real on
11408         x86 or x86_64 platforms running MacOS X.
11409         Reported by Ryan Schmidt <@ryandesign.com>.
11410
11411 2007-04-02  Bruno Haible  <bruno@clisp.org>
11412
11413         * m4/intdiv0.m4 (gt_INTDIV0): When cross-compiling, treat x86_64 like
11414         i386.
11415
11416 2007-04-01  Simon Josefsson  <simon@josefsson.org>
11417
11418         * modules/crypto/arcfour: Moved from ../.
11419         * modules/crypto/arcfour-tests: Moved from ../.
11420         * modules/crypto/arctwo: Moved from ../.
11421         * modules/crypto/arctwo-tests: Moved from ../.
11422         * modules/crypto/des: Moved from ../.
11423         * modules/crypto/des-tests: Moved from ../.
11424         * modules/crypto/gc-arcfour: Moved from ../.
11425         * modules/crypto/gc-arcfour-tests: Moved from ../.
11426         * modules/crypto/gc-arctwo: Moved from ../.
11427         * modules/crypto/gc-arctwo-tests: Moved from ../.
11428         * modules/crypto/gc-des: Moved from ../.
11429         * modules/crypto/gc-des-tests: Moved from ../.
11430         * modules/crypto/gc-hmac-md5: Moved from ../.
11431         * modules/crypto/gc-hmac-md5-tests: Moved from ../.
11432         * modules/crypto/gc-hmac-sha1: Moved from ../.
11433         * modules/crypto/gc-hmac-sha1-tests: Moved from ../.
11434         * modules/crypto/gc-md2: Moved from ../.
11435         * modules/crypto/gc-md2-tests: Moved from ../.
11436         * modules/crypto/gc-md4: Moved from ../.
11437         * modules/crypto/gc-md4-tests: Moved from ../.
11438         * modules/crypto/gc-md5: Moved from ../.
11439         * modules/crypto/gc-md5-tests: Moved from ../.
11440         * modules/crypto/gc-pbkdf2-sha1: Moved from ../.
11441         * modules/crypto/gc-pbkdf2-sha1-tests: Moved from ../.
11442         * modules/crypto/gc-random: Moved from ../.
11443         * modules/crypto/gc-rijndael: Moved from ../.
11444         * modules/crypto/gc-rijndael-tests: Moved from ../.
11445         * modules/crypto/gc-sha1: Moved from ../.
11446         * modules/crypto/gc-sha1-tests: Moved from ../.
11447         * modules/crypto/gc-tests: Moved from ../.
11448         * modules/crypto/hmac-md5: Moved from ../.
11449         * modules/crypto/hmac-md5-tests: Moved from ../.
11450         * modules/crypto/hmac-sha1: Moved from ../.
11451         * modules/crypto/hmac-sha1-tests: Moved from ../.
11452         * modules/crypto/md2: Moved from ../.
11453         * modules/crypto/md2-tests: Moved from ../.
11454         * modules/crypto/md4: Moved from ../.
11455         * modules/crypto/md4-tests: Moved from ../.
11456         * modules/crypto/md5: Moved from ../.
11457         * modules/crypto/md5-tests: Moved from ../.
11458         * modules/crypto/memxor: Moved from ../.
11459         * modules/crypto/rijndael: Moved from ../.
11460         * modules/crypto/rijndael-tests: Moved from ../.
11461         * modules/crypto/sha1: Moved from ../.
11462
11463 2007-03-30  James Youngman  <jay@gnu.org>
11464
11465         * tests/test-stat-time.c (prepare_test): use chmod() rather than
11466         rename() to change the ctime of a file (because ctime is unaffected
11467         by rename on jfs2 on AIX 5.1).
11468         (main): Start by doing cleanup, in case a previous run failed leaving
11469         test files behind.
11470
11471 2007-03-31  Bruno Haible  <bruno@clisp.org>
11472
11473         Support old proprietary implementations of iconv.
11474         * modules/iconv_open: New file.
11475         * lib/iconv_.h: New file.
11476         * m4/iconv_h.m4: New file.
11477         * lib/iconv_open.c: New file.
11478         * lib/iconv_open-aix.gperf: New file.
11479         * lib/iconv_open-hpux.gperf: New file.
11480         * lib/iconv_open-irix.gperf: New file.
11481         * lib/iconv_open-osf.gperf: New file.
11482         * m4/iconv_open.m4: New file.
11483         * modules/linebreak (Depends-on): Add iconv_open.
11484         * modules/striconv (Depends-on): Likewise.
11485         * modules/striconveh (Depends-on): Likewise.
11486         * modules/unicodeio (Depends-on): Likewise.
11487         * lib/striconveh.h (mem_cd_iconveh, str_cd_iconveh): Allow cd to be
11488         (iconv_t)(-1).
11489         * lib/striconveh.c (mem_cd_iconveh_internal): Use an indirect
11490         conversion if cd is (iconv_t)(-1).
11491         (mem_iconveh, str_iconveh): Don't fail just because a direct conversion
11492         is not possible.
11493
11494 2007-03-31  Bruno Haible  <bruno@clisp.org>
11495
11496         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
11497         work on Solaris either. Protect also second use of "autodetect_jp".
11498
11499 2007-03-31  Bruno Haible  <bruno@clisp.org>
11500
11501         * m4/frexpl.m4 (gl_FUNC_FREXPL): Set HAVE_DECL_FREXPL to 0 when
11502         the function is not present.
11503
11504 2007-03-31  Bruno Haible  <bruno@clisp.org>
11505
11506         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Set HAVE_DECL_LDEXPL to 0 when
11507         the function is not present.
11508
11509 2007-03-31  Bruno Haible  <bruno@clisp.org>
11510
11511         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-29 patch. Test also against
11512         a bug in HP-UX iconv_open().
11513
11514 2007-03-31  Bruno Haible  <bruno@clisp.org>
11515
11516         * MODULES.html.sh (func_module): Don't show gnulib-common.m4.
11517         (Mathematics <math.h>): New section, add fpieee.
11518         (Input/output <stdio.h>): Add fseterr.
11519         (Mathematics <math.h>): New section, add printf-frexp.
11520         (Container data structures): Add sublist.
11521         (Core language properties): Add fpucw, inline.
11522         (Functions for greatest-width integer types <inttypes.h>): Add
11523         imaxabs, imaxdiv, inttypes.
11524         (Mathematics <math.h>): Add frexp, frexpl, isnan-nolibm, isnanl,
11525         isnanl-nolibm, ldexp.
11526         (Mathematics <math.h>): New section, add printf-frexpl.
11527         (Support for systems lacking POSIX:2001): Add fprintf-posix,
11528         printf-posix, snprintf-posix, sprintf-posix, string, search, socklen,
11529         sys_select, sys_socket, vasnprintf-posix, vasprintf-posix,
11530         vfprintf-posix, vprintf-posix, vsnprintf-posix, vsprintf-posix.
11531         (Unicode string functions): Add unistr/u*-mbtoucr.
11532         (Java): Add javacomp-script, javaexec-script.
11533         (C#): Add csharpcomp-script, csharpexec-script.
11534         (Support for building libraries and executables): Add havelib,
11535         relocatable-*.
11536         (Support for maintaining and releasing projects): Renamed from
11537         'Support for maintaining and release projects'. Add announce-gen.
11538
11539 2007-03-31  Bruno Haible  <bruno@clisp.org>
11540
11541         * README: Talk primarily about git.
11542         (git and CVS): Renamed from CVS.
11543         * doc/gnulib.texi (Introduction, Build robot for gnulib): Mention that
11544         gnulib is available through git.
11545         * doc/gnulib-tool.texi (CVS Issues): Mention git and svn as well.
11546
11547 2007-03-30  Bruno Haible  <bruno@clisp.org>
11548
11549         * lib/alloca_.h: Change prefix of double-inclusion guard macro to _GL_.
11550         * lib/poll_.h: Likewise.
11551         * lib/stat_.h: Likewise.
11552         * lib/sys_time_.h: Likewise.
11553         * lib/sysexit_.h: Likewise.
11554         * lib/glob_.h: Prefix double-inclusion guard macro with _GL_.
11555         * lib/stdbool_.h: Likewise.
11556         * lib/byteswap_.h: Add double-inclusion guard.
11557
11558 2007-03-30  Sergey Poznyakoff  <gray@mirddin.farlep.net>
11559
11560         * lib/sysexit_.h: Prefix double-inclusion guard macro with _GNULIB.
11561
11562 2007-03-30  Karl Berry  <karl@gnu.org>
11563
11564         * config/srclist-update: double space after USA in the license
11565         substitution, since that's how it's usually (?) written.
11566
11567 2007-03-30  Paul Eggert  <eggert@cs.ucla.edu>
11568
11569         * lib/write-any-file.c (can_write_any_file): Fix else-else bug
11570         reported by Bruno Haible.
11571
11572 2007-03-29  Bruno Haible  <bruno@clisp.org>
11573
11574         * m4/iconv.m4 (AM_ICONV_LINK): Require AC_CANONICAL_HOST. Test against
11575         a bug in AIX iconv().
11576
11577 2007-03-29  Bruno Haible  <bruno@clisp.org>
11578
11579         * modules/ldexpl-tests: New file.
11580         * tests/test-ldexpl.c: New file.
11581
11582 2007-03-29  Bruno Haible  <bruno@clisp.org>
11583
11584         * lib/ldexpl.c: Include fpucw.h.
11585         (ldexpl): Use BEGIN/END_LONG_DOUBLE_ROUNDING. Skip the last unneeded
11586         multiplication.
11587         * modules/ldexpl (Depends-on): Add fpucw.
11588
11589 2007-03-29  Bruno Haible  <bruno@clisp.org>
11590
11591         * modules/ldexpl: New file.
11592         * m4/ldexpl.m4: New file.
11593         * lib/math_.h (ldexpl): Define to a replacement if REPLACE_LDEXPL is
11594         set.
11595         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize also GNULIB_LDEXPL,
11596         REPLACE_LDEXPL.
11597         * modules/math (Makefile.am): Substitute also GNULIB_LDEXPL,
11598         REPLACE_LDEXPL.
11599         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
11600         gl_FUNC_LDEXPL_WORKS.
11601         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Remove test for ldexpl.
11602         * modules/mathl (Files): Remove lib/ldexpl.c.
11603         (Depends-on): Add ldexpl.
11604
11605 2007-03-29  Bruno Haible  <bruno@clisp.org>
11606
11607         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Declare frexpl.
11608
11609 2007-03-29  Bruno Haible  <bruno@clisp.org>
11610
11611         * tests/test-striconveh.c (main): Don't assume that a direct conversion
11612         between ISO-8859-1 and ISO-8859-2 is possible. Needed for OSF/1, IRIX
11613         and possibly also HP-UX.
11614         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
11615         work on AIX, IRIX, HP-UX, OSF/1.
11616         * tests/uniconv/test-u16-conv-from-enc.c (main): Likewise.
11617         * tests/uniconv/test-u16-strconv-from-enc.c (main): Likewise.
11618         * tests/uniconv/test-u32-conv-from-enc.c (main): Likewise.
11619         * tests/uniconv/test-u32-strconv-from-enc.c (main): Likewise.
11620         * tests/uniconv/test-u8-conv-from-enc.c (main): Likewise.
11621         * tests/uniconv/test-u8-strconv-from-enc.c (main): Likewise.
11622
11623 2007-03-29  Bruno Haible  <bruno@clisp.org>
11624
11625         * tests/test-stat-time.c: Include <fcntl.h>, not <sys/fcntl.h>.
11626
11627 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
11628
11629         * lib/acl-internal.h (acl_get_fd, acl_set_fd): undef before defining,
11630         to work around a problem on OSF/1 5.1 reported by Bruno Haible.
11631
11632 2007-03-29  Eric Blake  <ebb9@byu.net>
11633
11634         * lib/acl-internal.h: Remove redundant include.
11635         (ACL_NOT_WELL_SUPPORTED): Also filter on EBUSY, returned by
11636         Cygwin when a file is locked.
11637
11638 2007-03-29  Bruno Haible  <bruno@clisp.org>
11639
11640         * lib/vasprintf.c [IN_LIBASPRINTF]: Include different specification
11641         file.
11642         * lib/asprintf.c [IN_LIBASPRINTF]: Likewise.
11643
11644 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
11645
11646         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Don't bother to
11647         try to remove a parent directory if the child couldn't be removed
11648         (except for the first rmdir, which could fail because the child
11649         doesn't exist).  Problem reported by Jeff Blaine in
11650         <http://lists.gnu.org/archive/html/bug-tar/2007-03/msg00014.html>.
11651
11652 2007-03-28  Bruno Haible  <bruno@clisp.org>
11653
11654         * lib/striconveh.c (utf8conv_carefully): New function.
11655         (mem_cd_iconveh_internal): Invoke it.
11656
11657 2007-03-28  Bruno Haible  <bruno@clisp.org>
11658
11659         * lib/striconveh.c (mem_cd_iconveh_internal): Use u8_mbtoucr instead
11660         of u8_mbtouc in order to distinguish invalid and incomplete UTF-8
11661         input.
11662         * modules/striconveh (Depends-on): Add unistr/u8-mbtoucr. Replace
11663         utf8-ucs4 with unistr/u8-mbtouc. Replace ucs4-utf8 with
11664         unistr/u8-uctomb.
11665
11666 2007-03-28  Bruno Haible  <bruno@clisp.org>
11667
11668         * modules/unistr/u8-mbtoucr: New file.
11669         * lib/unistr/u8-mbtoucr.c: New file.
11670         * modules/unistr/u16-mbtoucr: New file.
11671         * lib/unistr/u16-mbtoucr.c: New file.
11672         * modules/unistr/u16-mbtoucr: New file.
11673         * lib/unistr/u16-mbtoucr.c: New file.
11674         * lib/unistr.h (u8_mbtoucr, u16_mbtoucr, u32_mbtoucr): New declarations.
11675
11676 2007-03-27  Simon Josefsson  <simon@josefsson.org>
11677             Bruno Haible  <bruno@clisp.org>
11678
11679         * m4/vasprintf.m4: Convert AC_SUBST into shell variable for
11680         REPLACE_VASPRINTF.  Set HAVE_VASPRINTF.  Add
11681         AC_REQUIRE([gl_STDIO_H_DEFAULTS]).
11682
11683         * m4/stdio_h.m4: Add stubs for vasprintf too.
11684
11685         * modules/stdio: Support vasprintf in sed command.
11686
11687         * modules/vasprintf: Depend on stdio for prototypes.  Remove
11688         vasprintf.h.  Add stdio module indicator.
11689
11690         * lib/stdio_.h: Declare asprintf and vasprintf, based on
11691         vasprintf.h.
11692
11693         * lib/vasprintf.h: File removed.
11694
11695         * lib/asprintf.c: Use stdio.h instead of vasprintf.h.
11696         * lib/vasprintf.c: Ditto.
11697         * lib/xvasprintf.c: Ditto.
11698         * tests/test-vasprintf-posix.c: Ditto.
11699         * tests/test-vasprintf.c: Ditto.
11700
11701 2007-03-27  Bruno Haible  <bruno@clisp.org>
11702
11703         Make vasnprintf multithread-safe.
11704         * lib/vasnprintf.c (decimal_point_char): New function.
11705         (VASNPRINTF): Use it.
11706         Suggested by Simon Josefsson.
11707
11708 2007-03-27  Eric Blake  <ebb9@byu.net>
11709
11710         Support sub-second birthtime on cygwin.
11711         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Also check for st_birthtim.
11712         * lib/stat-time.h (STAT_TIMESPEC): Adjust comments.
11713         (get_stat_birthtime): Also work with st_birthtim.
11714
11715 2007-03-27  Paul Eggert  <eggert@cs.ucla.edu>
11716
11717         * lib/stat-time.h (USE_BIRTHTIME): Remove.
11718         (get_stat_atime_ns, get_stat_ctime_ns, get_stat_mtime_ns):
11719         (get_stat_birthtime_ns): Do not try to use "spare" fields.
11720         (get_stat_birthtime_ns): Simplify compile-time tests.
11721         (get_stat_birthtime): Change the API to look like
11722         get_stat_mtime etc., except return a negative tv_nsec on error.
11723         * m4/stat-time.m4 (gl_STAT_TIME, gl_STAT_BIRTHTIME):
11724         Don't check for "spare" fields.
11725         (gl_STAT_BIRTHTIME): Don't check for struct stat.st_birthtimespec.tv_sec
11726         or for struct stat.st_birthtime, as these tests aren't used.
11727         * tests/test-stat-time.c (test_birthtime): Adjust to new API.
11728
11729 2007-03-27  Bruno Haible  <bruno@clisp.org>
11730
11731         * lib/stat-time.h: Include <sys/stat.h>.
11732
11733 2007-03-27  James Youngman  <jay@gnu.org>
11734
11735         * lib/stat-time.h (get_stat_birthtime): New function for
11736           retrieving st_birthtime as provided by UFS2 (hence *BSD).
11737         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Probe for st_birthtime
11738           and its variants.
11739         * modules/stat-time (configure.ac): call gl_STAT_BIRTHTIME.
11740         * modules/stat-time-test: New file.
11741         * tests/test-stat-time.c: New test, devised by Bruno Haible.
11742
11743 2007-03-26  Bruno Haible  <bruno@clisp.org>
11744
11745         Better support of signalling NaNs.
11746         * lib/atanl.c: Include isnanl.h.
11747         (atanl): Perform test for NaN at the beginning of the function and
11748         through a call to isnanl.
11749         * lib/cosl.c: Include isnanl.h.
11750         (cosl): Perform test for NaN at the beginning of the function and
11751         through a call to isnanl.
11752         * lib/ldexpl.c: Include isnanl.h.
11753         (ldexpl): Perform test for NaN through a call to isnanl.
11754         * lib/logl.c: Include isnanl.h.
11755         (logl): Perform test for NaN at the beginning of the function and
11756         through a call to isnanl.
11757         * lib/sinl.c: Include isnanl.h.
11758         (sinl): Perform test for NaN at the beginning of the function and
11759         through a call to isnanl.
11760         * lib/sqrtl.c: Include isnanl.h.
11761         (sqrtl): Perform test for NaN at the beginning of the function and
11762         through a call to isnanl.
11763         * lib/tanl.c: Include isnanl.h.
11764         (tanl): Perform test for NaN at the beginning of the function and
11765         through a call to isnanl.
11766         * lib/trigl.c (ieee754_rem_pio2l): Remove test for NaN.
11767         * modules/mathl (Depends-on): Add isnanl.
11768
11769 2007-03-26  Eric Blake  <ebb9@byu.net>
11770
11771         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Fix
11772         regression in logic sense of previous patch.
11773
11774 2007-03-26  Bruno Haible  <bruno@clisp.org>
11775
11776         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Don't use
11777         unportable shell command "if ! ...".
11778         Reported by Ralf Wildenhues.
11779
11780 2007-03-25  Bruno Haible  <bruno@clisp.org>
11781
11782         * lib/sysexit_,h: If HAVE_SYSEXITS_H is defined, include the original
11783         <sysexits.h> file, and only add EX_CONFIG.
11784         * m4/sysexits.m4 (gl_SYSEXITS): If <sysexits.h> exists, check its
11785         absolute file name and whether it is sufficient. Substitute also
11786         HAVE_SYSEXITS_H and ABSOLUTE_SYSEXITS_H.
11787         * modules/sysexits (Makefile.am): Substitute HAVE_SYSEXITS_H and
11788         ABSOLUTE_SYSEXITS_H into sysexits.h.
11789
11790 2007-03-25  Bruno Haible  <bruno@clisp.org>
11791
11792         * lib/getaddrinfo.c (getaddrinfo): Don't access hints->ai_flags when
11793         hints is NULL.
11794
11795 2007-03-25  Bruno Haible  <bruno@clisp.org>
11796
11797         * lib/uniconv/u8-conv-from-enc.c (u8_conv_from_encoding): Add a cast.
11798         * lib/uniconv/u8-strconv-to-enc.c (u8_strconv_to_encoding): Likewise.
11799
11800 2007-03-25  Bruno Haible  <bruno@clisp.org>
11801
11802         * lib/vasnprintf.c: Include langinfo.h.
11803         (VASNPRINTF): Prefer nl_langinfo over localeconv, since it's more
11804         multithread-safe.
11805         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): New macro.
11806         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke it.
11807         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
11808         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
11809         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
11810         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
11811         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
11812         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX: Likewise.
11813         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
11814         Reported by Simon Josefsson.
11815
11816 2007-03-25  Bruno Haible  <bruno@clisp.org>
11817
11818         * lib/printf-parse.c [!IN_LIBINTL]: Include <stdint.h>, for intmax_t.
11819         (PRINTF_PARSE): Make the support for size specifier 'j' unconditional.
11820         * modules/vasnprintf (Depends-on): Add stdint.
11821
11822 2007-03-25  Bruno Haible  <bruno@clisp.org>
11823
11824         * modules/fpieee: New file.
11825         * m4/fpieee.m4: New file.
11826         * modules/isnan-nolibm (Depends-on): Add fpieee.
11827         * modules/isnanl-nolibm (Depends-on): Add fpieee.
11828         * modules/isnanl (Depends-on): Add fpieee.
11829
11830 2007-03-25  Bruno Haible  <bruno@clisp.org>
11831
11832         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Test also finite numbers.
11833
11834 2007-03-25  Bruno Haible  <bruno@clisp.org>
11835
11836         Avoid test failures on IRIX 6.5.
11837         * tests/test-frexpl.c (MIN_NORMAL_EXP): New macro.
11838         (main): Use it.
11839         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP): New
11840         macros.
11841         (main): Use them.
11842
11843 2007-03-25  Bruno Haible  <bruno@clisp.org>
11844
11845         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): New macro.
11846         (gl_FUNC_FREXPL): Invoke it. Set REPLACE_FREXPL to 1 if it frexpl
11847         exists but doesn't work.
11848         * lib/math_.h (frexpl): Define as a replacement macro if REPLACE_FREXPL
11849         is set. Don't provide a prototype if REPLACE_FREXPL is not set.
11850         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_FREXPL.
11851         * modules/math (Makefile.am) Substibute also REPLACE_FREXPL into math.h.
11852
11853 2007-03-25  Bruno Haible  <bruno@clisp.org>
11854
11855         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Add check whether frexp(inf)
11856         returns inf. Needed on IRIX 6.5.
11857
11858 2007-03-25  Bruno Haible  <bruno@clisp.org>
11859
11860         * tests/test-frexpl.c: Include isnanl-nolibm.h.
11861         (main): Use isnanl instead of x != x idiom.
11862         * modules/frexpl-tests (Depends-on): Add isnanl-nolibm.
11863
11864         * tests/test-frexp.c: Include isnan.h.
11865         (main): Use isnan instead of x != x idiom.
11866         * modules/frexp-tests (Depends-on): Add isnan-nolibm.
11867
11868 2007-03-25  Bruno Haible  <bruno@clisp.org>
11869
11870         * tests/test-frexp.c (NaN): New function/macro.
11871         (main): Use it instead of 0.0 / 0.0.
11872         * tests/test-isnan.c (NaN): New function/macro.
11873         (main): Use it instead of 0.0 / 0.0.
11874         * tests/test-vasnprintf-posix.c (NaN): New function/macro.
11875         (test_function): Use it instead of 0.0 / 0.0.
11876         * tests/test-vasprintf-posix.c (NaN): New function/macro.
11877         (test_function): Use it instead of 0.0 / 0.0.
11878         * tests/test-snprintf-posix.h (NaN): New function/macro.
11879         (test_function): Use it instead of 0.0 / 0.0.
11880         * tests/test-sprintf-posix.h (NaN): New function/macro.
11881         (test_function): Use it instead of 0.0 / 0.0.
11882         * tests/test-fprintf-posix.h (NaN): New function/macro.
11883         (test_function): Use it instead of 0.0 / 0.0.
11884         * tests/test-printf-posix.h (NaN): New function/macro.
11885         (test_function): Use it instead of 0.0 / 0.0.
11886
11887         * lib/isnan.c (FUNC): Work around a DEC C compiler bug.
11888
11889 2007-03-25  Bruno Haible  <bruno@clisp.org>
11890
11891         * lib/glob_.h: Include <sys/stat.h>. Avoids warnings on AIX 5.1.
11892
11893 2007-03-25  Bruno Haible  <bruno@clisp.org>
11894
11895         * lib/regexec.c (merge_state_with_log): Make static.
11896
11897 2007-03-25  Bruno Haible  <bruno@clisp.org>
11898
11899         * lib/trigl.c (kernel_rem_pio2): Make static.
11900
11901 2007-03-25  Bruno Haible  <bruno@clisp.org>
11902
11903         * lib/sincosl.c (sincosl_table): Make static.
11904
11905 2007-03-25  Bruno Haible  <bruno@clisp.org>
11906
11907         * lib/argp.h (__restrict): Define to empty, rather than to 'restrict',
11908         if the compiler does not support C99.
11909
11910 2007-03-25  Bruno Haible  <bruno@clisp.org>
11911
11912         * modules/time (Makefile.am): Ensure all rule action lines start with a
11913         tab.
11914
11915 2007-03-24  Bruno Haible  <bruno@clisp.org>
11916
11917         * modules/tsearch-tests: New file.
11918         * tests/test-tsearch.sh: New file.
11919         * tests/test-tsearch.c: New file, mostly copied from glibc.
11920
11921         * modules/search-tests: New file.
11922         * tests/test-search.c: New file.
11923
11924         * modules/search: New file.
11925         * lib/search_.h: New file, incorporating lib/tsearch.h.
11926         * m4/search_h.m4: New file.
11927         * lib/tsearch.h: Remove file.
11928         * lib/tsearch.c: Include search.h instead of tsearch.h.
11929         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Require gl_SEARCH_H_DEFAULTS. Set
11930         HAVE_TSEARCH.
11931         * modules/tsearch (Files): Remove lib/tsearch.h.
11932         (Depends-on): Add search.
11933         (configure.ac): Invoke gl_SEARCH_MODULE_INDICATOR.
11934         (Include): Change tsearch.h into search.h.
11935
11936 2007-03-24  Bruno Haible  <bruno@clisp.org>
11937
11938         * modules/fpucw: New file.
11939         * lib/fpucw.h: New file.
11940         * lib/frexp.c: Include fpucw.h.
11941         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
11942         (FUNC): Use them.
11943         * lib/printf-frexp.c: Include fpucw.h.
11944         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
11945         (FUNC): Use them.
11946         * lib/vasnprintf.c: Include fpucw.h.
11947         (VASNPRINTF): Invoke BEGIN/END_LONG_DOUBLE_ROUNDING around the
11948         'long double' calculations.
11949         * tests/test-frexpl.c: Include fpucw.h.
11950         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
11951         * tests/test-printf-frexpl.c: Include fpucw.h.
11952         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
11953         * modules/frexpl (Depends-on): Add fpucw.
11954         * modules/printf-frexpl (Depends-on): Likewise.
11955         * modules/fprintf-posix (Depends-on): Likewise.
11956         * modules/snprintf-posix (Depends-on): Likewise.
11957         * modules/sprintf-posix (Depends-on): Likewise.
11958         * modules/vasnprintf-posix (Depends-on): Likewise.
11959         * modules/vasprintf-posix (Depends-on): Likewise.
11960         * modules/vfprintf-posix (Depends-on): Likewise.
11961         * modules/vsnprintf-posix (Depends-on): Likewise.
11962         * modules/vsprintf-posix (Depends-on): Likewise.
11963         * modules/frexpl-tests (Depends-on): Likewise.
11964         * modules/printf-frexpl-tests (Depends-on): Likewise.
11965
11966 2007-03-24  Bruno Haible  <bruno@clisp.org>
11967
11968         * lib/float+.h: New file.
11969         * lib/isnan.c: Include float+.h.
11970         (SIZE): New macro.
11971         (FUNC): Compare only SIZE bytes of the value.
11972         * lib/vasnprintf.c: Include float+.h.
11973         (VASNPRINTF): When comparing agains +0.0L or +0.0, compare only
11974         SIZEOF_LDBL or SIZEOF_DBL bytes.
11975         * modules/isnan-nolibm (Files): Add lib/float+.h.
11976         * modules/isnanl-nolibm (Files): Add lib/float+.h.
11977         * modules/isnanl (Files): Add lib/float+.h.
11978         * modules/vasnprintf (Files): Add lib/float+.h.
11979
11980 2007-03-24  Bruno Haible  <bruno@clisp.org>
11981
11982         * lib/vasnprintf.c [!HAVE_LONG_DOUBLE]: Include printf-frexp.h. Don't
11983         include isnanl-nolibm.h.
11984
11985 2007-03-24  Bruno Haible  <bruno@clisp.org>
11986
11987         * tests/test-read-file.c (main): Don't produce spurious output for
11988         expected situations. Make the test fail if it encountered unexpected
11989         results.
11990
11991 2007-03-24  Bruno Haible  <bruno@clisp.org>
11992
11993         * m4/locale-fr.m4 (gt_LOCALE_FR): Remove the special-casing of NetBSD,
11994         since its fr_FR.ISO8859-1 locale wouldn't pass the tests.
11995
11996 2007-03-24  Bruno Haible  <bruno@clisp.org>
11997
11998         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Fix last change.
11999
12000 2007-03-24  Bruno Haible  <bruno@clisp.org>
12001
12002         * modules/unistr/base (Depends-on): Remove utf8-ucs4-unsafe,
12003         utf16-ucs4-unsafe, utf8-ucs4, utf16-ucs4, ucs4-utf8, ucs4-utf16.
12004
12005         * modules/unistr/u8-mbtouc: Add source files from module utf8-ucs4.
12006         * modules/utf8-ucs4: Turn into a symbolic link to module
12007         unistr/u8-mbtouc.
12008
12009         * modules/unistr/u8-mbtouc-unsafe: Add source files from module
12010         utf8-ucs4-unsafe.
12011         * modules/utf8-ucs4-unsafe: Turn into a symbolic link to module
12012         unistr/u8-mbtouc-unsafe.
12013
12014         * modules/unistr/u16-mbtouc: Add source files from module utf16-ucs4.
12015         * modules/utf16-ucs4: Turn into a symbolic link to module
12016         unistr/u16-mbtouc.
12017
12018         * modules/unistr/u16-mbtouc-unsafe: Add source files from module
12019         utf16-ucs4-unsafe.
12020         * modules/utf16-ucs4-unsafe: Turn into a symbolic link to module
12021         unistr/u16-mbtouc-unsafe.
12022
12023         * modules/unistr/u8-uctomb: Add source files from module utf4-utf8.
12024         * modules/ucs4-utf8: Turn into a symbolic link to module
12025         unistr/u8-ubtomb.
12026
12027         * modules/unistr/u16-uctomb: Add source files from module utf4-utf16.
12028         * modules/ucs4-utf16: Turn into a symbolic link to module
12029         unistr/u16-ubtomb.
12030
12031 2007-03-24  Bruno Haible  <bruno@clisp.org>
12032
12033         * lib/unistr/u8-mbtouc-aux.c: Renamed from lib/unistr/utf8-ucs4.c.
12034         Enable the function only if HAVE_INLINE.
12035         * lib/unistr/u8-mbtouc-unsafe-aux.c: Renamed from
12036         lib/unistr/utf8-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
12037         * lib/unistr/u16-mbtouc-aux.c: Renamed from lib/unistr/utf16-ucs4.c.
12038         Enable the function only if HAVE_INLINE.
12039         * lib/unistr/u16-mbtouc-unsafe-aux.c: Renamed from
12040         lib/unistr/utf16-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
12041         * lib/unistr/u8-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf8.c.
12042         Enable the function only if HAVE_INLINE.
12043         * lib/unistr/u16-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf16.c.
12044         Enable the function only if HAVE_INLINE.
12045         * modules/utf8-ucs4: Update.
12046         * modules/utf8-ucs4-unsafe: Update.
12047         * modules/utf16-ucs4: Update.
12048         * modules/utf16-ucs4-unsafe: Update.
12049         * modules/ucs4-utf8: Update.
12050         * modules/ucs4-utf16: Update.
12051
12052 2007-03-24  Bruno Haible  <bruno@clisp.org>
12053
12054         * lib/utf8-ucs4.h: Remove file.
12055         * lib/utf8-ucs4-unsafe.h: Remove file.
12056         * lib/utf16-ucs4.h: Remove file.
12057         * lib/utf16-ucs4-unsafe.h: Remove file.
12058         * lib/ucs4-utf8.h: Remove file.
12059         * lib/ucs4-utf16.h: Remove file.
12060         * lib/unistr.h: Include their previous contents.
12061         * m4/utf-ucs4.m4: Remove file.
12062         * m4/ucs4-utf.m4: Remove file.
12063         * modules/utf8-ucs4 (Files): Remove lib/utf8-ucs4.h.
12064         (Depends-on): Add unistr/base.
12065         (configure.ac): Remove gl_UTF_UCS4.
12066         (Makefile.am): Update.
12067         (Include): Change to unistr.h.
12068         * modules/utf8-ucs4-unsafe (Files): Remove lib/utf8-ucs4-unsafe.h.
12069         (Depends-on): Add unistr/base.
12070         (configure.ac): Remove gl_UTF_UCS4.
12071         (Makefile.am): Update.
12072         (Include): Change to unistr.h.
12073         * modules/utf16-ucs4 (Files): Remove lib/utf16-ucs4.h.
12074         (Depends-on): Add unistr/base.
12075         (configure.ac): Remove gl_UTF_UCS4.
12076         (Makefile.am): Update.
12077         (Include): Change to unistr.h.
12078         * modules/utf16-ucs4-unsafe (Files): Remove lib/utf16-ucs4-unsafe.h.
12079         (Depends-on): Add unistr/base.
12080         (configure.ac): Remove gl_UTF_UCS4.
12081         (Makefile.am): Update.
12082         (Include): Change to unistr.h.
12083         * modules/ucs4-utf8 (Files): Remove lib/ucs4-utf8.h.
12084         (Depends-on): Add unistr/base.
12085         (configure.ac): Remove gl_UCS4_UTF.
12086         (Makefile.am): Update.
12087         (Include): Change to unistr.h.
12088         * modules/ucs4-utf16 (Files): Remove lib/ucs4-utf16.h.
12089         (Depends-on): Add unistr/base.
12090         (configure.ac): Remove gl_UCS4_UTF.
12091         (Makefile.am): Update.
12092         (Include): Change to unistr.h.
12093         * lib/unistr/utf8-ucs4.c: Include unistr.h instead of utf8-ucs4.h.
12094         * lib/unistr/utf8-ucs4-unsafe.c: Include unistr.h instead of
12095         utf8-ucs4-unsafe.h.
12096         * lib/unistr/utf16-ucs4.c: Include unistr.h instead of utf16-ucs4.h.
12097         * lib/unistr/utf16-ucs4-unsafe.c: Include unistr.h instead of
12098         utf16-ucs4-unsafe.h.
12099         * lib/unistr/ucs4-utf8.c: Include unistr.h instead of ucs4-utf8.h.
12100         * lib/unistr/ucs4-utf16.c: Include unistr.h instead of ucs4-utf16.h.
12101         * lib/unistr/u8-chr.c: Don't include ucs4-utf8.h.
12102         * lib/unistr/u8-strchr.c: Likewise.
12103         * lib/unistr/u8-strrchr.c: Likewise.
12104         * lib/unistr/u16-chr.c: Don't include ucs4-utf16.h.
12105         * lib/unistr/u16-strchr.c: Likewise.
12106         * lib/unistr/u16-strrchr.c: Likewise.
12107         * lib/striconveh.c: Update.
12108         * lib/linebreak.c: Update.
12109
12110 2007-03-24  Bruno Haible  <bruno@clisp.org>
12111
12112         * lib/argp-help.c (fill_in_uparams, canon_doc_option): Cast the
12113         arguments of isspace, isalpha, isalnum, isdigit to 'unsigned char'.
12114
12115 2007-03-22  Bruno Haible  <bruno@clisp.org>
12116
12117         * lib/strptime.c (__strptime_internal): Use ANSI C syntax.
12118
12119 2007-03-23  Paul Eggert  <eggert@cs.ucla.edu>
12120
12121         * MODULES.html.sh (File system functions): New module write-any-file.
12122         * modules/write-any-file, lib/write-any-file.c, lib/write-any-file.h:
12123         * m4/write-any-file.m4: New files.
12124
12125 2007-03-23  Eric Blake  <ebb9@byu.net>
12126
12127         * gnulib-tool: Rearrange space-tab sequences, since some editors
12128         like to eat them.
12129
12130 2007-03-23  Eric Blake  <ebb9@byu.net>
12131
12132         * lib/version-etc.c (version_etc_va): Update license wording to
12133         be more concise.  Recommended by Richard Stallman.
12134
12135 2007-03-22  Bruno Haible  <bruno@clisp.org>
12136
12137         * lib/poll.c (MSG_PEEK): New fallback definition.
12138
12139 2007-03-22  Bruno Haible  <bruno@clisp.org>
12140
12141         * modules/sys_socket-tests (configure.ac): Check for shutdown function.
12142         * tests/test-sys_socket.c (a): Test only if shutdown() exists.
12143         (main): Update.
12144         Fixes a compilation error on BeOS.
12145
12146 2007-03-22  Bruno Haible  <bruno@clisp.org>
12147
12148         * modules/frexpl-tests: New file.
12149         * tests/test-frexpl.c: New file.
12150
12151         * modules/frexpl: New file.
12152         * m4/frexpl.m4: New file.
12153         * modules/math (Makefile.am): Also substitute GNULIB_FREXPL into math.h.
12154         * lib/math_.h (frexpl): Test GNULIB_FREXPL instead of GNULIB_MATHL.
12155         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FREXPL.
12156         * modules/mathl (Files): Remove lib/frexpl.c, lib/frexp.c.
12157         (Depends-on): Add frexpl. Remove isnanl-nolibm.
12158         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Don't test for frexpl.
12159
12160 2007-03-22  Bruno Haible  <bruno@clisp.org>
12161
12162         * lib/frexpl.c: Share code with lib/frexp.c.
12163         * modules/mathl (Files): Add lib/frexp.c.
12164         (Depends-on): Add isnanl-nolibm.
12165
12166 2007-03-22  Bruno Haible  <bruno@clisp.org>
12167
12168         * modules/printf-frexp (Files): Add m4/frexp.m4.
12169         * m4/printf-frexp.m4 (gl_FUNC_PRINTF_FREXP): Define HAVE_FREXP_IN_LIBC
12170         only if the found frexp function actually works.
12171
12172 2007-03-22  Bruno Haible  <bruno@clisp.org>
12173
12174         * lib/frexp.c: Remove older implementation that uses divisions.
12175
12176 2007-03-21  Bruno Haible  <bruno@clisp.org>
12177
12178         * modules/frexp-tests: New file.
12179         * tests/test-frexp.c: New file.
12180
12181         * modules/frexp: New file.
12182         * lib/frexp.c: New file.
12183         * m4/frexp.m4: New file.
12184         * lib/math_.h (frexp): New declaration.
12185         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Also initialize GNULIB_FREXP and
12186         REPLACE_FREXP.
12187         * modules/math (math.h): Also substitute GNULIB_FREXP, REPLACE_FREXP.
12188
12189 2007-03-21  Bruno Haible  <bruno@clisp.org>
12190
12191         * modules/isnanl-tests: New file.
12192         * tests/test-isnanl.c: New file.
12193
12194         * modules/isnanl: New file.
12195         * lib/isnanl.h: New file.
12196         * m4/isnanl.m4 (gl_FUNC_ISNANL): New macro.
12197         (gl_FUNC_ISNANL_NO_LIBM): Invoke gl_HAVE_ISNANL_NO_LIBM,
12198         gl_FUNC_ISNANL_WORKS.
12199         (gl_HAVE_ISNANL_NO_LIBM, gl_HAVE_ISNANL_IN_LIBM, gl_FUNC_ISNANL_WORKS):
12200         New macros.
12201
12202 2007-03-21  Bruno Haible  <bruno@clisp.org>
12203
12204         * modules/isnanl-nolibm (Files): Add lib/isnanl-nolibm.h, remove
12205         lib/isnanl.h.
12206         (Include): Update.
12207         * lib/isnanl-nolibm.h: Renamed from lib/isnanl.h.
12208         * lib/vasnprintf.c: Update.
12209         * modules/isnanl-nolibm-tests (Files): Add tests/test-isnanl-nolibm.c,
12210         tests/test-isnanl.h, remove tests/test-isnanl.c.
12211         (Makefile.am): Update.
12212         * tests/test-isnanl-nolibm.c: New file.
12213         * tests/test-isnanl.h: New file.
12214         * tests/test-isnanl.c: Remove file.
12215
12216 2007-03-21  Jim Meyering  <jim@meyering.net>
12217
12218         When trying to open ".", treat ESTALE like EACCES.
12219         * lib/savewd.c (savewd_save): Resort to forking not just upon
12220         failure with EACCES, but also when errno is ESTALE.
12221
12222 2007-03-20  Bruno Haible  <bruno@clisp.org>
12223
12224         * lib/string_.h (strndup): Enable declaration also if HAVE_STRNDUP.
12225         Needed on AIX 5.1. Reported by Matthew Woehlke.
12226
12227 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
12228
12229         Suggestions by Bruno Haible:
12230         * lib/acl-internal.h: Include "gettext.h" rather than rolling
12231         our own.
12232         (ACL_NOT_WELL_SUPPORTED): Parenthesize arg when used.
12233         * modules/acl (Depends-on): Add gettext.
12234
12235 2007-03-19  Bruno Haible  <bruno@clisp.org>
12236
12237         * modules/iconvme: Remove file.
12238         * lib/iconvme.h: Remove file.
12239         * lib/iconvme.c: Remove file.
12240         * m4/iconvme.m4: Remove file.
12241
12242 2007-03-19  Bruno Haible  <bruno@clisp.org>
12243
12244         * doc/relocatable-maint.texi: Break long shell script line.
12245         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
12246
12247 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
12248
12249         Add limited support for Solaris 10 ZFS-style ACLs: just enough to
12250         handle file_has_acl.
12251         * lib/acl-internal.h, lib/acl_entries.c, lib/file-has-acl.c: New files.
12252         * lib/acl.c: Move header inclusions and related macro defns into
12253         lib/acl-internal.h.
12254         (S_ISLNK): Remove defn, since that's now done for us.
12255         (file_has_acl): Move to lib/file-has-acl.c.
12256         Call acl_trivial if available.  This is the crucial part of the fix.
12257         (acl_entries): Move to lib/acl_entries.c.  Now extern, since it's
12258         shared within the library.  Rewrite a bit, partly to make it compatible
12259         with the GNU coding style.
12260         * m4/acl.m4 (AC_FUNC_ACL): Add AC_LIBOBJ([file-has-acl]).
12261         Remove unnecessary double-quotes.
12262         Don't test for acl_to_text; the build will catch that.
12263         Replace acl_entries if it doesn't exist and it is needed.
12264         Check for -lsec and acl_trivial (as used on Solaris 10).
12265         * modules/acl (Files): Add lib/acl-internal.h, lib/acl_entries.c,
12266         lib/file-has-acl.c.
12267         (Depends-on): Add sys_stat, for S_ISLNK.
12268
12269 2007-03-19  Ben Pfaff  <blp@gnu.org>
12270
12271         * doc/gnulib.texi: Fix typos.
12272         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
12273
12274 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
12275
12276         * lib/getcwd.c (__getcwd): Remove redundant comparison of buf to NULL.
12277         If size is zero here, buf must be zero.
12278
12279 2007-03-19  Simon Josefsson  <simon@josefsson.org>
12280
12281         * des.c: Remove weak_keys_chksum.  Reported by Bruno Haible
12282         <bruno@clisp.org>.
12283
12284 2007-03-18  Bruno Haible  <bruno@clisp.org>
12285
12286         * lib/vasnprintf.c (VASNPRINTF): Undo first part of last patch.
12287         Suggested by Eric Blake.
12288
12289 2007-03-18  Ben Pfaff  <blp@gnu.org>
12290
12291         * doc/relocatable.texi: Recommend using as prefix a directory
12292         that does not exist and will never be created.  Based on
12293         discussion with Bruno Haible, Ralf Wildenhues, Matthew Woehlke,
12294         and others.
12295
12296 2007-03-17  Bruno Haible  <bruno@clisp.org>
12297
12298         * lib/fchownat.c: Include lchown.h.
12299
12300 2007-03-17  Bruno Haible  <bruno@clisp.org>
12301
12302         Fix endless loop when the given allocated size was > INT_MAX.
12303         * lib/vasnprintf.c (EOVERFLOW): New fallback definition.
12304         (VASNPRINTF): Fail with EOVERFLOW when the given allocated size is
12305         larger than INT_MAX, or when it grow to a value larger than INT_MAX.
12306         * lib/vsprintf.c (vsprintf): Don't pass a size > INT_MAX to vasnprintf.
12307         * lib/sprintf.c (sprintf): Likewise.
12308
12309 2007-03-17  Bruno Haible  <bruno@clisp.org>
12310
12311         * tests/test-argp-2.sh (func_compare): Output a context diff.
12312
12313 2007-03-17  Bruno Haible  <bruno@clisp.org>
12314
12315         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Check also the
12316         locale's decimal-point character.
12317
12318 2007-03-17  Bruno Haible  <bruno@clisp.org>
12319
12320         * lib/vasnprintf.c (VASNPRINTF): Clear out the memory used for arg_mem
12321         before comparing it. Needed because on some platforms (e.g. x86) a
12322         'long double' occupies less bytes than sizeof (long double).
12323
12324 2007-03-17  Bruno Haible  <bruno@clisp.org>
12325
12326         * tests/test-crc.c (main): Make printf statements 64-bit clean.
12327         * tests/test-gc-pbkdf2-sha1.c (main): Likewise.
12328         * tests/test-getaddrinfo.c (simple): Likewise.
12329         * tests/test-read-file.c (main): Likewise.
12330
12331 2007-03-17  Bruno Haible  <bruno@clisp.org>
12332
12333         * tests/test-dirname.c (main): Make printf statements 64-bit clean.
12334
12335 2007-03-17  Bruno Haible  <bruno@clisp.org>
12336
12337         * tests/test-xvasprintf.c (test_xvasprintf, test_xasprintf): Remove
12338         unused variable.
12339
12340 2007-03-17  Bruno Haible  <bruno@clisp.org>
12341
12342         * tests/test-c-strcasecmp.c: Include c-strcase.h.
12343         * tests/test-c-strncasecmp.c: Likewise.
12344
12345 2007-03-17  Bruno Haible  <bruno@clisp.org>
12346
12347         * modules/stdlib (Depends-on): Add unistd.
12348         * lib/stdlib_.h: Include <unistd.h> if mkstemp is desired.
12349         Needed for MacOS X 10.3.
12350
12351 2007-03-17  Bruno Haible  <bruno@clisp.org>
12352
12353         * lib/unistr/u-strdup.h: Include <stdlib.h>.
12354
12355 2007-03-17  Bruno Haible  <bruno@clisp.org>
12356
12357         * lib/unistr/u-cpy-alloc.h: Include <stdlib.h>.
12358
12359 2007-03-17  Bruno Haible  <bruno@clisp.org>
12360
12361         * gnulib-tool (func_import): Update .cvsignore and .gitignore files
12362         to reflect files copied from gnulib (with or without modifications).
12363         Suggested by Jim Meyering.
12364
12365 2007-03-17  Eric Blake  <ebb9@byu.net>
12366
12367         * NEWS: Document stdlib change from 2007-02-18.
12368
12369 2007-03-17  Jim Meyering  <jim@meyering.net>
12370
12371         Detect use of AC_CONFIG_AUX_DIR also when its argument is quoted.
12372         * build-aux/bootstrap: Put ""s around use of $build_aux, in case
12373         someone uses a name containing shell meta-characters.
12374         Reported by Alfred M. Szmidt.
12375
12376         * build-aux/bootstrap: Don't use \> in grep regexp.  For HP-UX.
12377
12378 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
12379
12380         * build-aux/bootstrap (with_gettext): New variable.  Run autopoint
12381         and copy gettext configuration files only if configure.ac contains
12382         a use of AM_GNU_GETTEXT_VERSION.
12383
12384 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
12385
12386         * build-aux/bootstrap (gnulib_name): New variable.
12387         (gnulib_tool_options): Use it.
12388
12389 2007-03-13  Simon Josefsson  <simon@josefsson.org>
12390
12391         * tests/test-des.c: Use new namespace.
12392
12393 2007-03-15  Bruno Haible  <bruno@clisp.org>
12394
12395         * lib/dummy.c (gl_dummy_symbol): Renamed from 'dummy'.
12396         Reported by James Youngman <jay@gnu.org>.
12397
12398 2007-03-15  Bruno Haible  <bruno@clisp.org>
12399
12400         * lib/glob.c (glob): Add 'restrict' so that prototype matches the
12401         declared prototype. Needed with cc on OSF/1 5.1.
12402
12403 2007-03-15  Bruno Haible  <bruno@clisp.org>
12404
12405         * lib/gl_list.h (gl_listelement_dispose_fn): New type.
12406         (gl_list_create_empty, gl_list_create): Add dispose_fn argument.
12407         (struct gl_list_implementation): Add dispose_fn argument to the
12408         'create_empty', 'create' methods.
12409         (struct gl_list_impl_base): Add field 'dispose_fn'.
12410         * lib/gl_list.c (gl_list_create_empty, gl_list_create): Add dispose_fn
12411         argument.
12412         * lib/gl_array_list.c (gl_array_create_empty, gl_array_create): Add
12413         dispose_fn argument.
12414         (gl_array_remove_node, gl_array_remove_at, gl_array_list_free): Call
12415         dispose_fn on the dropped values.
12416         * lib/gl_carray_list.c (gl_carray_create_empty, gl_carray_create): Add
12417         dispose_fn argument.
12418         (gl_carray_remove_at, gl_carray_list_free): Call dispose_fn on the
12419         dropped values.
12420         * lib/gl_anyavltree_list2.h (gl_tree_create): Add dispose_fn argument.
12421         (gl_tree_remove_node): Call dispose_fn on the dropped value.
12422         * lib/gl_anyrbtree_list2.h (gl_tree_create): Add dispose_fn argument.
12423         (gl_tree_remove_node): Call dispose_fn on the dropped value.
12424         * lib/gl_anytree_list2.h (gl_tree_create_empty): Add dispose_fn
12425         argument.
12426         (gl_tree_list_free): Call dispose_fn on the dropped values.
12427         * lib/gl_anytreehash_list2.h (gl_tree_list_free): Call dispose_fn on
12428         the dropped values.
12429         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
12430         Add dispose_fn argument.
12431         (gl_linked_remove_node, gl_linked_remove_at, gl_linked_list_free):
12432         Call dispose_fn on the dropped values.
12433         * lib/gl_sublist.c (gl_sublist_create_empty, gl_sublist_create_fill):
12434         Add dispose_fn argument.
12435         (gl_sublist_create): Initialize the 'dispose_fn' field.
12436         * lib/clean-temp.c (create_temp_dir, register_fd): Update.
12437         * tests/test-array_list.c (main): Update.
12438         * tests/test-carray_list.c (main): Update.
12439         * tests/test-avltree_list.c (main): Update.
12440         * tests/test-rbtree_list.c (main): Update.
12441         * tests/test-avltreehash_list.c (main): Update.
12442         * tests/test-rbtreehash_list.c (main): Update.
12443         * tests/test-linked_list.c (main): Update.
12444         * tests/test-linkedhash_list.c (main): Update.
12445         * tests/test-array_oset.c (main): Update.
12446
12447 2007-03-15  Bruno Haible  <bruno@clisp.org>
12448
12449         * lib/gl_oset.h (gl_setelement_dispose_fn): New type.
12450         (gl_oset_create_empty): Add dispose_fn argument.
12451         (struct gl_oset_implementation): Add dispose_fn argument to
12452         'create_empty' method.
12453         (struct gl_oset_impl_base): Add dispose_fn field.
12454         * lib/gl_oset.c (gl_oset_create_empty): Add dispose_fn argument.
12455         * lib/gl_array_oset.c (gl_array_create_empty): Add dispose_fn argument.
12456         (gl_array_remove_at, gl_array_free): Call dispose_fn on the dropped
12457         values.
12458         * lib/gl_anytree_oset.h (gl_tree_create_empty): Add dispose_fn argument.
12459         (gl_tree_oset_free): Call dispose_fn on the dropped values.
12460         * lib/gl_avltree_oset.c (gl_tree_remove_node): Call dispose_fn on the
12461         dropped value.
12462         * lib/gl_rbtree_oset.c (gl_tree_remove_node): Call dispose_fn on the
12463         dropped value.
12464         * tests/test-array_oset.c (main): Update.
12465         * tests/test-avltree_oset.c (main): Update.
12466         * tests/test-rbtree_oset.c (main): Update.
12467         * lib/gl_anytreehash_list1.h (add_to_bucket): Update.
12468
12469 2007-03-13  Bruno Haible  <bruno@clisp.org>
12470
12471         * tests/test-stdbool.c (i): Update after last patch.
12472
12473 2007-03-12  Bruno Haible  <bruno@clisp.org>
12474
12475         * lib/quotearg.c: Include <wctype.h> early, before the definition of
12476         the iswprint macro. Needed on Solaris 2.5.1.
12477
12478 2007-03-12  Bruno Haible  <bruno@clisp.org>
12479
12480         * tests/test-printf-frexp.c (main): Declare x as volatile.
12481
12482 2007-03-12  Simon Josefsson  <simon@josefsson.org>
12483
12484         * doc/gnulib.texi (Build robot for gnulib): New section.
12485
12486 2007-03-12  Jim Meyering  <jim@meyering.net>
12487
12488         * build-aux/bootstrap: New file.
12489         * build-aux/bootstrap.conf: New file, from coreutils.
12490
12491 2007-03-11  Bruno Haible  <bruno@clisp.org>
12492
12493         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Require AC_C_INLINE.
12494
12495 2007-03-12  Simon Josefsson  <simon@josefsson.org>
12496
12497         * lib/des.h, lib/des.c, lib/gc-gnulib.c: Use gl_ namespace, to
12498         avoid collisions with 'des_setkey'.  Reported by Bruno Haible
12499         <bruno@clisp.org>.  Also change 'tripledes_' to '3des_'.
12500
12501 2007-03-11  Bruno Haible  <bruno@clisp.org>
12502
12503         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): If the test program fails to
12504         compile, set LOCALE_TR_UTF8 to 'none' instead of empty.
12505
12506 2007-03-11  Bruno Haible  <bruno@clisp.org>
12507
12508         * lib/stdint_.h (INT64_MIN, INTMAX_MIN): Avoid using the ~INT..._MAX
12509         formula. Needed for SunPRO C 5.0.
12510
12511 2007-03-11  Bruno Haible  <bruno@clisp.org>
12512
12513         * modules/long-options (Depends-on): Add getopt.
12514
12515 2007-03-11  Bruno Haible  <bruno@clisp.org>
12516
12517         * modules/modechange (Depends-on): Add stdbool.
12518
12519 2007-03-11  Bruno Haible  <bruno@clisp.org>
12520
12521         * modules/i-ring (Depends-on): Add stdbool.
12522
12523 2007-03-11  Bruno Haible  <bruno@clisp.org>
12524
12525         * modules/gc-des (Depends-on): Add stdbool.
12526
12527 2007-03-11  Bruno Haible  <bruno@clisp.org>
12528
12529         * m4/mktime.m4 (gl_PREREQ_MKTIME): Require AC_C_INLINE.
12530
12531 2007-03-11  Bruno Haible  <bruno@clisp.org>
12532
12533         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Require AC_C_RESTRICT.
12534
12535 2007-03-11  Bruno Haible  <bruno@clisp.org>
12536
12537         * lib/unistr/u32-mbtouc-unsafe.c (u32_mbtouc_unsafe): Fix syntax error.
12538
12539 2007-03-11  Bruno Haible  <bruno@clisp.org>
12540
12541         * lib/vasnprintf.c (sprintf): Undefine.
12542
12543 2007-03-11  Bruno Haible  <bruno@clisp.org>
12544
12545         * lib/isnan.c (rpl_isnan, rpl_isnanl): Work around bug regarding
12546         initializers in SunPRO C and Compaq C compilers.
12547
12548 2007-03-11  Bruno Haible  <bruno@clisp.org>
12549
12550         * lib/gl_array_oset.c (gl_array_iterator_next): Make pointer
12551         decrementing code ANSI C compliant.
12552
12553 2007-03-11  Bruno Haible  <bruno@clisp.org>
12554
12555         * lib/dummy.c [__sun]: Define a dummy variable, not just a typedef.
12556         Needed for Solaris 2.5.1 ranlib and SunPRO C 5.0.
12557
12558 2007-03-11  Bruno Haible  <bruno@clisp.org>
12559
12560         * tests/test-stdbool.c (s, d, e, xlcbug): Disable checks that gnulib's
12561         <stdbool.h> substitute doesn't pass.
12562
12563 2007-03-11  Bruno Haible  <bruno@clisp.org>
12564
12565         * lib/vasnprintf.c (snprintf): Undefine. Avoids an endless recursion.
12566
12567 2007-03-11  Bruno Haible  <bruno@clisp.org>
12568
12569         * gnulib-tool (func_create_megatestdir): Create also an autobuild
12570         script, for submission to autobuild.josefsson.org.
12571
12572 2007-03-10  Bruno Haible  <bruno@clisp.org>
12573
12574         * modules/canonicalize-lgpl-tests: New file.
12575         * tests/test-canonicalize-lgpl.sh: New file.
12576         * tests/test-canonicalize-lgpl.c: New file.
12577
12578         * modules/c-strcase-tests: New file.
12579         * tests/test-c-strcase.sh: New file.
12580         * tests/test-c-strcasecmp.c: New file.
12581         * tests/test-c-strncasecmp.c: New file.
12582
12583         * modules/atexit-tests: New file.
12584         * tests/test-atexit.sh: New file.
12585         * tests/test-atexit.c: New file.
12586
12587 2007-03-10  Bruno Haible  <bruno@clisp.org>
12588
12589         * tests/test-binary-io.sh: Use temporary filenames that are not so
12590         likely to clash with those of other tests (in a parallel make).
12591         * tests/test-binary-io.c: Likewise.
12592
12593 2007-03-10  Bruno Haible  <bruno@clisp.org>
12594
12595         * lib/fseterr.c (fseterr): Port to Solaris/SPARC64. Deactivate the
12596         fallback; use #error instead.
12597         Suggested by Simon Josefsson.
12598
12599 2007-03-10  Bruno Haible  <bruno@clisp.org>
12600
12601         * gnulib-tool (func_create_testdir): Treat MOSTLYCLEANFILES like
12602         CLEANFILES. Put spaces in each line of $cleaned_files, not only the
12603         first and the last.
12604
12605 2007-03-10  Bruno Haible  <bruno@clisp.org>
12606
12607         * lib/stdint_.h (uint_least64_t): Fix typo in last patch.
12608
12609 2007-03-10  Bruno Haible  <bruno@clisp.org>
12610
12611         * modules/snprintf-posix-tests (EXTRA_DIST): New variable. Needed for
12612         "make distcheck".
12613         * modules/sprintf-posix-tests (EXTRA_DIST): Likewise.
12614         * modules/vsnprintf-posix-tests (EXTRA_DIST): Likewise.
12615         * modules/vsprintf-posix-tests (EXTRA_DIST): Likewise.
12616
12617 2007-03-10  Bruno Haible  <bruno@clisp.org>
12618
12619         * modules/allocsa-tests (test_allocsa_SOURCES): Remove redundant
12620         variable.
12621         * modules/dirname-tests (test_dirname_SOURCES): Remove redundant
12622         variable.
12623
12624 2007-03-09  Eric Blake  <ebb9@byu.net>
12625         and Matthew Woehlke  <mw_triad@users.sourceforge.net>  (tiny change)
12626
12627         * lib/stdint_.h (int64_t, uint64_t): Don't undefine if 64-bit
12628         types are not being provided by gnulib.
12629         (GL_INT64_T, GL_UINT64_T): New witnesses of whether gnulib 64-bit
12630         types are supported.
12631
12632 2007-03-10  Bruno Haible  <bruno@clisp.org>
12633
12634         * lib/stdio_.h (__attribute__): New macro.
12635         (fprintf, vfprintf, printf, vprintf, snprintf, vsnprintf, sprintf,
12636         vsprintf): Specify __attribute__ __format__ for GCC.
12637         Suggested by Eric Blake.
12638
12639 2007-03-09  Bruno Haible  <bruno@clisp.org>
12640
12641         * modules/printf-posix-tests: New file.
12642         * tests/test-printf-posix.sh: New file.
12643         * tests/test-printf-posix.c: New file.
12644
12645         * modules/printf-posix: New file.
12646         * lib/printf.c: New file.
12647         * m4/printf-posix-rpl.m4: New file.
12648         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_PRINTF_POSIX,
12649         REPLACE_PRINTF.
12650         * lib/stdio_.h (printf): New declaration.
12651         (format, __format__, ____printf____, ____scanf____, ____strftime____,
12652         ____strfmon____): New macros.
12653         * modules/stdio (Makefile.am): Substitute also GNULIB_PRINTF_POSIX,
12654         REPLACE_PRINTF.
12655
12656 2007-03-09  Bruno Haible  <bruno@clisp.org>
12657
12658         * tests/test-vasnprintf-posix2.sh: New file.
12659         * tests/test-vasnprintf-posix2.c: New file.
12660         * modules/vasnprintf-posix-tests (Files): Add them and m4/locale-fr.m4.
12661         (configure.ac): Invoke gt_LOCALE_FR and gt_LOCALE_FR_UTF8.
12662         (Makefile.am): Activate test-vasnprintf-posix2.sh.
12663
12664         * lib/vasnprintf.c (VASNPRINTF): For the 'a' and 'A' directives, use
12665         a locale dependent decimal point, rather than always '.'.
12666
12667 2007-03-09  Eric Blake  <ebb9@byu.net>
12668
12669         * lib/stdlib_.h (EXIT_FAILURE): GNU code expects this to be 1, in
12670         spite of platforms like Tandem/NSK that define it to -1.
12671
12672 2007-03-08  Bruno Haible  <bruno@clisp.org>
12673
12674         * modules/vprintf-posix-tests: New file.
12675         * tests/test-vprintf-posix.sh: New file.
12676         * tests/test-vprintf-posix.c: New file.
12677         * tests/test-printf-posix.h: New file.
12678
12679         * modules/vprintf-posix: New file.
12680         * lib/vprintf.c: New file.
12681         * m4/vprintf-posix.m4: New file.
12682         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VPRINTF_POSIX,
12683         REPLACE_VPRINTF.
12684         * lib/stdio_.h (vprintf): New declaration.
12685         * modules/stdio (Makefile.am): Substitute also GNULIB_VPRINTF_POSIX,
12686         REPLACE_VPRINTF.
12687
12688 2007-03-08  Bruno Haible  <bruno@clisp.org>
12689
12690         * modules/fprintf-posix-tests: New file.
12691         * tests/test-fprintf-posix.sh: New file.
12692         * tests/test-fprintf-posix.c: New file.
12693
12694         * modules/fprintf-posix: New file.
12695         * lib/fprintf.c: New file.
12696         * m4/fprintf-posix.m4: New file.
12697         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FPRINTF_POSIX,
12698         REPLACE_FPRINTF.
12699         * lib/stdio_.h (fprintf): New declaration.
12700         * modules/stdio (Makefile.am): Substitute also GNULIB_FPRINTF_POSIX,
12701         REPLACE_FPRINTF.
12702
12703 2007-03-08  Bruno Haible  <bruno@clisp.org>
12704
12705         * modules/vfprintf-posix-tests: New file.
12706         * tests/test-vfprintf-posix.sh: New file.
12707         * tests/test-vfprintf-posix.c: New file.
12708         * tests/test-fprintf-posix.h: New file.
12709         * tests/test-fprintf-posix.out: New file.
12710
12711         * modules/vfprintf-posix: New file.
12712         * lib/vfprintf.c: New file.
12713         * m4/vfprintf-posix.m4: New file.
12714         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VFPRINTF_POSIX,
12715         REPLACE_VFPRINTF.
12716         * lib/stdio_.h (vfprintf): New declaration.
12717         * modules/stdio (Makefile.am): Substitute also GNULIB_VFPRINTF_POSIX,
12718         REPLACE_VFPRINTF.
12719
12720 2007-03-08  Bruno Haible  <bruno@clisp.org>
12721
12722         * lib/stdio_.h: Treat __need___FILE like __need_FILE.
12723
12724 2007-03-08  Bruno Haible  <bruno@clisp.org>
12725
12726         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Use 'case' statements
12727         instead of 'expr' invocations.
12728         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
12729         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
12730         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
12731         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
12732         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
12733         Suggested by Paul Eggert.
12734
12735 2007-03-08  Bruno Haible  <bruno@clisp.org>
12736
12737         * modules/fseterr-tests: New file.
12738         * tests/test-fseterr.c: New file.
12739
12740         * modules/fseterr: New file.
12741         * lib/fseterr.h: New file.
12742         * lib/fseterr.c: New file.
12743
12744 2007-03-08  Bruno Haible  <bruno@clisp.org>
12745
12746         * lib/fnmatch_.h: Convert tabs in the middle of lines to spaces.
12747         * lib/getopt_.h: Likewise.
12748         * lib/mbswidth.h: Likewise.
12749         * lib/setenv.h: Likewise.
12750         * lib/vasnprintf.h: Likewise.
12751         * lib/vasprintf.h: Likewise.
12752         * lib/verror.h: Likewise.
12753         * lib/xsetenv.h: Likewise.
12754         * lib/xvasprintf.h: Likewise.
12755
12756 2007-03-08  Jim Meyering  <jim@meyering.net>
12757
12758         * users.txt: Add parted.
12759
12760         * ChangeLog: Restore 1500 lines mistakenly removed from the end.
12761
12762 2007-03-07  Bruno Haible  <bruno@clisp.org>
12763
12764         * m4/printf.m4: Make the shell script snippets copy&pastable.
12765
12766 2007-03-02  Bruno Haible  <bruno@clisp.org>
12767
12768         * lib/netinet_in_.h: New file.
12769         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Test whether netinet/in.h
12770         is self-contained. Set ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H.
12771         * modules/netinet_in (Files): Add lib/netinet_in_.h.
12772         (Depends-on): Add absolute-header.
12773         (Makefile.am): Substitute ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H
12774         into netinet/in.h.
12775
12776 2007-03-03  Bruno Haible  <bruno@clisp.org>
12777
12778         * lib/sys_select_.h: New file.
12779         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SELECT): Test whether sys/select.h
12780         is self-contained. Set ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H.
12781         * modules/sys_select (Files): Add lib/sys_select_.h.
12782         (Depends-on): Add absolute-header.
12783         (Makefile.am): Substitute ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H
12784         into sys/select.h.
12785
12786 2007-03-02  Bruno Haible  <bruno@clisp.org>
12787
12788         * lib/socket_.h: If sys/socket.h exists, include that and <sys/types.h>
12789         before it. Turn HAVE_WINSOCK2_H and HAVE_WS2TCPIP_H into configute-time
12790         values.
12791         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Test also whether
12792         <sys/socket.h> is self-contained. Set ABSOLUTE_SYS_SOCKET_H,
12793         HAVE_SYS_SOCKET_H, HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H.
12794         * modules/sys_socket (Depends-on): Add absolute-header.
12795         (Makefile.am): Substitute ABSOLUTE_SYS_SOCKET_H, HAVE_SYS_SOCKET_H,
12796         HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H into sys/socket.h.
12797         (Include): Remove requirement of inclusion of <sys/types.h>.
12798
12799 2007-03-02  Bruno Haible  <bruno@clisp.org>
12800
12801         * lib/byteswap_.h (bswap_32): Fix formula.
12802
12803 2007-03-06  Bruno Haible  <bruno@clisp.org>
12804
12805         * modules/sprintf-posix-tests: New file.
12806         * tests/test-sprintf-posix.c: New file.
12807
12808         * modules/sprintf-posix: New file.
12809         * lib/sprintf.c: New file.
12810         * m4/sprintf-posix.m4: New file.
12811         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_SPRINTF_POSIX,
12812         REPLACE_SPRINTF.
12813         * lib/stdio_.h (sprintf): New declaration.
12814         * modules/stdio (Makefile.am): Substitute also GNULIB_SPRINTF_POSIX,
12815         REPLACE_SPRINTF.
12816
12817 2007-03-06  Bruno Haible  <bruno@clisp.org>
12818
12819         * modules/vsprintf-posix-tests: New file.
12820         * tests/test-vsprintf-posix.c: New file.
12821         * tests/test-sprintf-posix.h: New file.
12822
12823         * modules/vsprintf-posix: New file.
12824         * lib/vsprintf.c: New file.
12825         * m4/vsprintf-posix.m4: New file.
12826         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VSPRINTF_POSIX,
12827         REPLACE_VSPRINTF.
12828         * lib/stdio_.h (vsprintf): New declaration.
12829         * modules/stdio (Makefile.am): Substitute also GNULIB_VSPRINTF_POSIX,
12830         REPLACE_VSPRINTF.
12831
12832 2007-03-06  Bruno Haible  <bruno@clisp.org>
12833
12834         * modules/vsnprintf (Depend-on): Remove minmax.
12835
12836 2007-03-06  Bruno Haible  <bruno@clisp.org>
12837
12838         * modules/snprintf-posix-tests: New file.
12839         * tests/test-snprintf-posix.c: New file.
12840
12841         * modules/snprintf-posix: New file.
12842         * m4/snprintf-posix.m4: New file.
12843         * m4/snprintf.m4 (gl_REPLACE_SNPRINTF): New macro, extracted from
12844         gl_FUNC_SNPRINTF.
12845         (gl_FUNC_SNPRINTF): Invoke it.
12846         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_SNPRINTF.
12847         * lib/stdio_.h (snprintf): Define as a replacement if REPLACE_SNPRINTF
12848         is set.
12849         * modules/stdio (Makefile.am): Substitute also REPLACE_SNPRINTF.
12850
12851 2007-03-06  Bruno Haible  <bruno@clisp.org>
12852
12853         * modules/vsnprintf-posix-tests: New file.
12854         * tests/test-vsnprintf-posix.c: New file.
12855         * tests/test-snprintf-posix.h: New file.
12856
12857         * modules/vsnprintf-posix: New file.
12858         * m4/vsnprintf-posix.m4: New file.
12859         * m4/vsnprintf.m4 (gl_REPLACE_VSNPRINTF): New macro, extracted from
12860         gl_FUNC_VSNPRINTF.
12861         (gl_FUNC_VSNPRINTF): Invoke it.
12862         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_VSNPRINTF.
12863         * lib/stdio_.h (vsnprintf): Define as a replacement if
12864         REPLACE_VSNPRINTF is set.
12865         * modules/stdio (Makefile.am): Substitute also REPLACE_VSNPRINTF.
12866
12867 2007-03-06  Bruno Haible  <bruno@clisp.org>
12868
12869         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Test for vasnprintf here.
12870         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): ... not here.
12871
12872 2007-03-06  Bruno Haible  <bruno@clisp.org>
12873
12874         * lib/math_.h (acosl): Declare also if HAVE_DECL_ACOSL is set.
12875         (asinl): Declare also if HAVE_DECL_ASINL is set.
12876         (atanl): Declare also if HAVE_DECL_ATANL is set.
12877         (ceill): Declare also if HAVE_DECL_CEILL is set.
12878         (cosl): Declare also if HAVE_DECL_COSL is set.
12879         (expl): Declare also if HAVE_DECL_EXPL is set.
12880         (floorl): Declare also if HAVE_DECL_FLOORL is set.
12881         (frexpl): Declare also if HAVE_DECL_FREXPL is set.
12882         (ldexpl): Declare also if HAVE_DECL_LDEXPL is set.
12883         (logl): Declare also if HAVE_DECL_LOGL is set.
12884         (sinl): Declare also if HAVE_DECL_SINL is set.
12885         (sqrtl): Declare also if HAVE_DECL_SQRTL is set.
12886         (tanl): Declare also if HAVE_DECL_TANL is set.
12887         * modules/math (Makefile.am): Substitute the values of HAVE_DECL_*.
12888         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Set HAVE_DECL_* to 1.
12889         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Fix tests for the
12890         declaration of frexpl, ldexpl.
12891         * modules/printf-frexpl (Depends-on): Add math.
12892         * lib/printf-frexp.c (frexpl, ldexpl): Undo last change.
12893
12894 2007-03-05  Bruno Haible  <bruno@clisp.org>
12895
12896         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Also test whether
12897         frexpl and ldexpl are declared.
12898         * lib/printf-frexp.c (frexpl, ldexpl): Provide fallback declarations.
12899
12900 2007-03-05  Bruno Haible  <bruno@clisp.org>
12901
12902         * gnulib-tool (func_get_automake_snippet): Don't synthesize an
12903         EXTRA_lib_SOURCES augmentation for the relocatable-prog-wrapper module.
12904
12905 2007-03-05  Bruno Haible  <bruno@clisp.org>
12906
12907         * lib/stdio_.h: Include <stddef.h>.
12908
12909 2007-03-05  Bruno Haible  <bruno@clisp.org>
12910
12911         * m4/printf.m4 (gl_SNPRINTF_DIRECTIVE_N): New macro.
12912
12913 2007-03-05  Bruno Haible  <bruno@clisp.org>
12914
12915         * m4/printf.m4: Update with info about OpenBSD 3.9, HP-UX 10.20,
12916         NetBSD 4, from Ralf Wildenhues.
12917
12918 2007-03-04  Bruno Haible  <bruno@clisp.org>
12919
12920         * lib/vasprintf.h: Update #if logic for the case when the functions
12921         exist but are overridden.
12922
12923 2007-03-04  Bruno Haible  <bruno@clisp.org>
12924
12925         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Exclude two buggy
12926         implementations: glibc-2.4 and MacOS X 10.3.
12927         * tests/test-vasnprintf-posix.c (test_function): Test also the case
12928         that exhibits the bugs in glibc-2.4 and MacOS X 10.3.
12929         * tests/test-vasprintf-posix.c (test_function): Likewise.
12930
12931 2007-03-04  Bruno Haible  <bruno@clisp.org>
12932
12933         * modules/vasprintf-posix-tests: New file.
12934         * tests/test-vasprintf-posix.c: New file.
12935
12936         * modules/vasprintf-posix: New file.
12937         * lib/vasprintf.h (asprintf, vasprintf): Rename if REPLACE_VASPRINTF is
12938         defined.
12939         * m4/vasprintf-posix.m4: New file.
12940         * m4/vasprintf.m4 (gl_REPLACE_VASPRINTF): New macro, extracted from
12941         gl_FUNC_VASPRINTF.
12942         (gl_FUNC_VASPRINTF): Invoke it.
12943         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Define REPLACE_VASNPRINTF
12944         here.
12945         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Not here.
12946
12947 2007-03-04  Bruno Haible  <bruno@clisp.org>
12948
12949         * lib/sys_time_.h: Rename GETTIMEOFDAY_REPLACEMENT to
12950         REPLACE_GETTIMEOFDAY.
12951         * modules/sys_time (Makefile.am): Likewise.
12952         * m4/sys_time_h.m4: Likewise.
12953         * m4/gettimeofday.m4: Likewise.
12954
12955 2007-03-04  Bruno Haible  <bruno@clisp.org>
12956
12957         * modules/vasnprintf-posix-tests: New file.
12958         * tests/test-vasnprintf-posix.c: New file.
12959
12960         * modules/vasnprintf-posix: New file.
12961         * lib/vasnprintf.c: Include isnan.h, isnanl.h, printf-frexp.h,
12962         printf-frexpl.h.
12963         (VASNPRINTF): Handle the 'a' and 'A' directives here, if needed.
12964         * lib/vasnprintf.h (asnprintf, vasnprintf): Rename if
12965         REPLACE_VASNPRINTF is defined.
12966         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): New macro, extracted from
12967         gl_FUNC_VASNPRINTF.
12968         (gl_FUNC_VASNPRINTF): Invoke it.
12969         * m4/vasnprintf-posix.m4: New file.
12970         * m4/printf.m4: New file.
12971
12972 2007-03-04  Bruno Haible  <bruno@clisp.org>
12973
12974         Compile progreloc.c only if --enable-relocatable is specified.
12975         * m4/relocatable.m4 (gl_RELOCATABLE): Arrange to compile progreloc.c
12976         if --enable-relocatable was specified.
12977         * modules/relocatable-prog (Makefile.am): Remove progreloc.c from
12978         lib_SOURCES.
12979
12980 2007-03-04  Jim Meyering  <jim@meyering.net>
12981
12982         * lib/acl.c (ACL_NOT_WELL_SUPPORTED): New macro.
12983         Use it consistently, rather than enumerating errno constants.
12984
12985 2007-03-04  Bruno Haible  <bruno@clisp.org>
12986
12987         * modules/xvasprintf-tests: New file.
12988         * tests/test-xvasprintf.c: New file.
12989
12990         * modules/vasprintf-tests: New file.
12991         * tests/test-vasprintf.c: New file.
12992
12993         * modules/vasnprintf-tests: New file.
12994         * tests/test-vasnprintf.c: New file.
12995
12996         * modules/vsnprintf-tests: New file.
12997         * tests/test-vsnprintf.c: New file.
12998
12999         * modules/snprintf-tests: New file.
13000         * tests/test-snprintf.c: New file.
13001
13002 2007-03-04  Bruno Haible  <bruno@clisp.org>
13003
13004         Compile relocatable.c only if --enable-relocatable is specified.
13005         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY_BODY): Renamed from
13006         gl_RELOCATABLE_LIBRARY.
13007         (gl_RELOCATABLE_LIBRARY, gl_RELOCATABLE_LIBRARY_SEPARATE): New macros.
13008         * m4/relocatable.m4 (gl_RELOCATABLE): Invoke gl_RELOCATABLE_LIBRARY.
13009         (gl_RELOCATABLE_BODY): Require gl_RELOCATABLE_LIBRARY_BODY instead of
13010         gl_RELOCATABLE_LIBRARY.
13011         * modules/relocatable-lib (configure.ac): Invoke gl_RELOCATABLE_LIBRARY.
13012         (Makefile.am): Remove lib_SOURCES.
13013         * modules/relocatable-lib-lgpl (configure.ac): Invoke
13014         gl_RELOCATABLE_LIBRARY.
13015         (Makefile.am): Remove lib_SOURCES.
13016         * modules/relocatable-prog (Makefile.am): Don't compile relocatable.c
13017         always.
13018         * modules/relocatable-prog-wrapper (configure.ac): Invoke
13019         gl_RELOCATABLE_LIBRARY_SEPARATE instead of gl_RELOCATABLE_LIBRARY.
13020
13021 2007-03-04  Bruno Haible  <bruno@clisp.org>
13022
13023         * modules/argmatch-tests: New file.
13024         * tests/test-argmatch.c: New file.
13025
13026         * tests/test-allocsa.c (main): Halve the number of loop runs.
13027
13028         * modules/alloca-opt-tests: New file.
13029         * tests/test-alloca-opt.c: New file.
13030
13031 2007-03-04  Jim Meyering  <jim@meyering.net>
13032
13033         Work around difference between Linux ACLs and Solaris 10 ZFS.
13034         * lib/acl.c (set_acl): Revert to using chmod_or_fchmod also
13035         for EINVAL.
13036
13037 2007-03-03  Bruno Haible  <bruno@clisp.org>
13038
13039         * modules/relocatable-prog (Depends-on): Add back progreloc's
13040         dependencies: canonicalize-lgpl, xalloc, xreadlink, stdbool, unistd.
13041
13042 2007-03-03  Bruno Haible  <bruno@clisp.org>
13043
13044         * modules/relocatable-lib-lgpl: Renamed from modules/relocatable-lib.
13045         * modules/relocatable-lib: New file.
13046
13047 2007-03-03  Bruno Haible  <bruno@clisp.org>
13048
13049         * modules/relocatable-prog: Renamed from modules/relocatable.
13050         * doc/relocatable-maint.texi: Talk about module 'relocatable-prog'.
13051
13052 2007-03-03  Bruno Haible  <bruno@clisp.org>
13053
13054         * modules/relocatable-script (Files): Add doc/relocatable.texi,
13055         m4/relocatable-lib.m4.
13056         (Depends-on): Remove 'relocatable'.
13057         (configure.ac): Add gl_RELOCATABLE_NOP.
13058
13059 2007-03-03  Bruno Haible  <bruno@clisp.org>
13060
13061         * modules/relocatable-prog-wrapper: New file.
13062         * modules/relocatable (Depends-on): Add it. Remove all other
13063         dependencies except progname.
13064         (Files): Remove build-aux/install-reloc, lib/relocwrapper.c.
13065
13066         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): New macro.
13067         (gl_FUNC_STRERROR): Nop.
13068         * lib/strerror.c: Compile the file only if !HAVE_STRERROR.
13069
13070         * m4/setenv.m4 (gl_FUNC_SETENV_SEPARATE): New macro.
13071         * lib/setenv.c: Compile the file only if _LIBC || !HAVE_SETENV.
13072
13073         * m4/readlink.m4 (gl_FUNC_READLINK_SEPARATE): New macro.
13074         (gl_FUNC_READLINK): Update.
13075
13076         * m4/canonicalize-lgpl.m4 (gl_CANONICALIZE_LGPL_SEPARATE): New macro.
13077
13078 2007-03-03  Bruno Haible  <bruno@clisp.org>
13079
13080         * lib/xreadlink.c: Include <unistd.h> unconditionally.
13081         * modules/xreadlink (Depends-on): Add unistd.
13082         * modules/xreadlink-with-size (Depends-on): Likewise.
13083
13084 2007-03-03  Bruno Haible  <bruno@clisp.org>
13085
13086         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_UNSETENV): New macros,
13087         extracted from gt_FUNC_SETENV.
13088         (gt_FUNC_SETENV): Remove macro.
13089         * modules/setenv (configure.ac): Add gl_FUNC_SETENV, gl_FUNC_UNSETENV,
13090         remove gt_FUNC_SETENV.
13091
13092 2007-03-03  Bruno Haible  <bruno@clisp.org>
13093
13094         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY): Define
13095         ENABLE_RELOCATABLE here.
13096         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): Don't define it here.
13097
13098 2007-03-03  Bruno Haible  <bruno@clisp.org>
13099
13100         * modules/rbtreehash-list-tests (Depends-on): Add progname.
13101         * tests/test-rbtreehash_list.c: Include progname.h.
13102         (main): Call set_program_name.
13103
13104         * modules/rbtree-oset-tests (Depends-on): Add progname.
13105         * tests/test-rbtree_oset.c: Include progname.h.
13106         (main): Call set_program_name.
13107
13108         * modules/rbtree-list-tests (Depends-on): Add progname.
13109         * tests/test-rbtree_list.c: Include progname.h.
13110         (main): Call set_program_name.
13111
13112         * modules/linked-list-tests (Depends-on): Add progname.
13113         * tests/test-linked_list.c: Include progname.h.
13114         (main): Call set_program_name.
13115
13116 2007-03-03  Bruno Haible  <bruno@clisp.org>
13117
13118         * lib/glob-libc.h (_Restrict_): New macro, copied from lib/regex.h.
13119         All uses of __restrict changed to _Restrict_.
13120         * lib/glob_.h (__restrict): Remove macro.
13121
13122 2007-03-02  Bruno Haible  <bruno@clisp.org>
13123
13124         * modules/gettext (configure.ac): Require gettext infrastructure
13125         from version 0.16.1.
13126
13127 2007-03-02  Bruno Haible  <bruno@clisp.org>
13128
13129         * modules/linkedhash-list-tests (Depends-on): Add progname.
13130         * tests/test-linkedhash_list.c: Include progname.h.
13131         (main): Call set_program_name.
13132
13133         * modules/carray-list-tests (Depends-on): Add progname.
13134         * tests/test-carray_list.c: Include progname.h.
13135         (main): Call set_program_name.
13136
13137         * modules/avltreehash-list-tests (Depends-on): Add progname.
13138         * tests/test-avltreehash_list.c: Include progname.h.
13139         (main): Call set_program_name.
13140
13141         * modules/avltree-oset-tests (Depends-on): Add progname.
13142         * tests/test-avltree_oset.c: Include progname.h.
13143         (main): Call set_program_name.
13144
13145         * modules/avltree-list-tests (Depends-on): Add progname.
13146         * tests/test-avltree_list.c: Include progname.h.
13147         (main): Call set_program_name.
13148
13149         * modules/array-oset-tests (Depends-on): Add progname.
13150         * tests/test-array_oset.c: Include progname.h.
13151         (main): Call set_program_name.
13152
13153         * modules/array-list-tests (Depends-on): Add progname.
13154         * tests/test-array_list.c: Include progname.h.
13155         (main): Call set_program_name.
13156
13157         * modules/argp-tests (Depends-on): Add progname.
13158         * tests/test-argp.c: Include argp.h first. Include progname.h.
13159         (main): Call set_program_name.
13160
13161 2007-03-02  Paul Eggert  <eggert@cs.ucla.edu>
13162
13163         * doc/gnulib-tool.texi (Initial import): Reword description of
13164         _FILE_OFFSET_BITS and _GNU_SOURCE, since they sometimes have a
13165         limited effect even if defined after the first system include.
13166
13167 2007-03-01  Bruno Haible  <bruno@clisp.org>
13168
13169         * build-aux/config.libpath: Update to libtool-1.5.22.
13170         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
13171
13172 2007-03-01  Bruno Haible  <bruno@clisp.org>
13173
13174         * doc/relocatable-maint.texi: Recommend to set foo_CPPFLAGS, not
13175         foo_CFLAGS.
13176         Reported by Ralf Wildenhues.
13177
13178 2007-03-01  Bruno Haible  <bruno@clisp.org>
13179
13180         * build-aux/install-reloc: Remove object files left over by some
13181         compilers.
13182         Reported by Ralf Wildenhues.
13183
13184 2007-03-01  Bruno Haible  <bruno@clisp.org>
13185
13186         * build-aux/install-reloc: Break long lines.
13187
13188 2007-03-01  Bruno Haible  <bruno@clisp.org>
13189
13190         * doc/relocatable.texi: Document that it may not work on OpenBSD.
13191         Reported by Ralf Wildenhues.
13192
13193 2007-03-01  Bruno Haible  <bruno@clisp.org>
13194
13195         * doc/gnulib-tool.texi (Initial import): Remove paragraph about
13196         include ordering constraints.
13197
13198 2007-03-01  Paul Eggert  <eggert@cs.ucla.edu>
13199
13200         Followup to the 2007-02-12 patch, using suggestions from Bruno Haible in
13201         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00136.html>.
13202         * doc/gnulib-tool.texi (Initial import): Mention _FILE_OFFSET_BITS
13203         as another example.
13204         * lib/time_.h: Fix misspelling.
13205         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
13206         Require gl_HEADER_TIME_H_DEFAULTS.
13207         * m4/strptime.m4 (gl_FUNC_STRPTIME): Likewise.
13208         * m4/time_r.m4 (gl_TIME_R): Likewise.
13209         * m4/timegm.m4 (gl_FUNC_TIMEGM): Likewise.
13210
13211 2007-03-01  Bruno Haible  <bruno@clisp.org>
13212
13213         * m4/utimecmp.m4 (gl_UTIMECMP): Don't require gl_TIMESPEC.
13214         * m4/utimens.m4 (gl_UTIMENS): Likewise.
13215
13216 2007-03-01  Jim Meyering  <jim@meyering.net>
13217
13218         * modules/xreadlink (Maintainer): Add my name.
13219         * modules/xreadlink-with-size (Depends-on): Alphabetize.
13220
13221 2007-02-26  Ben Pfaff  <blp@cs.stanford.edu>
13222             Bruno Haible  <bruno@clisp.org>
13223
13224         * build-aux/install-reloc: Compile also c-ctype.c.
13225         * build-aux/relocatable.sh.in: New file.
13226         * doc/relocatable.texi: New file.
13227         * doc/relocatable-maint.texi: New file.
13228         * doc/gnulib.texi: Include relocatable-maint.texi.
13229         * lib/progreloc.c: Include unistd.h unconditionally.
13230         * lib/relocwrapper.c: Include unistd.h unconditionally.
13231         Include c-ctype.h.
13232         (add_dotbin): Use c_tolower.
13233         * m4/relocatable-lib.m4: New file, extracted from m4/relocatable.m4.
13234         (gl_RELOCATABLE_LIBRARY): Renamed from AC_RELOCATABLE_LIBRARY.
13235         (gl_RELOCATABLE_NOP): Renamed from AC_RELOCATABLE_NOP.
13236         * m4/relocatable.m4 (AC_RELOCATABLE_LIBRARY, AC_RELOCATABLE_NOP): Move
13237         to m4/relocatable-lib.m4.
13238         (gl_RELOCATABLE): Renamed from AC_RELOCATABLE. Set also
13239         RELOCATABLE_CONFIG_H_DIR, RELOCATABLE_SRC_DIR, RELOCATABLE_BUILD_DIR.
13240         (gl_RELOCATABLE_BODY): Renamed from AC_RELOCATABLE_BODY. Don't
13241         require obsolete macro AC_EXEEXT. Don't check for unistd.h. Don't set
13242         SET_RELOCATABLE. Instead set RELOCATABLE_LDFLAGS, INSTALL_PROGRAM_ENV.
13243         * modules/relocatable: New file.
13244         * modules/relocatable-lib: New file.
13245         * modules/relocatable-script: New file.
13246
13247 2007-02-28  Bruno Haible  <bruno@clisp.org>
13248
13249         Import --enable-relocatable infrastructure.
13250         * build-aux/config.libpath: New file, from GNU gettext.
13251         * build-aux/install-reloc: New file, from GNU gettext.
13252         * build-aux/reloc-ldflags: New file, from GNU gettext.
13253         * lib/relocatable.h: New file, from GNU gettext.
13254         * lib/relocatable.c: New file, from GNU gettext.
13255         * lib/relocwrapper.c: New file, from GNU gettext.
13256         * m4/relocatable.m4: New file, from GNU gettext.
13257
13258 2007-02-28  Bruno Haible  <bruno@clisp.org>
13259
13260         * MODULES.html.sh (File system functions): Add xreadlink-with-size.
13261
13262         * modules/xreadlink: New file, from GNU gettext with modifications.
13263         * lib/xreadlink.c: New file, from GNU gettext.
13264         * lib/xreadlink.h: Add comments.
13265         (xreadlink): New declaration.
13266
13267         * modules/xreadlink-with-size: Renamed from modules/xreadlink.
13268         (Files): Remove m4/xreadlink.m4. Replace lib/xreadlink.c with
13269         lib/xreadlink-with-size.c.
13270         (configure.ac): Remove gl_XREADLINK invocation.
13271         (Makefile.am): Augment lib_SOURCES.
13272         * m4/xreadlink.m4: Remove file.
13273         * lib/xreadlink-with-size.c: Renamed from lib/xreadlink.c.
13274         (xreadlink_with_size): Renamed from xreadink.
13275         * lib/xreadlink.h (xreadlink_with_size): Renamed from xreadink.
13276         * modules/canonicalize (Depends-on): Replace xreadlink with
13277         xreadlink-with-size.
13278         * lib/canonicalize.c (canonicalize_filename_mode): Update.
13279
13280 2007-02-25  Jim Meyering  <jim@meyering.net>
13281
13282         * build-aux/announce-gen: When complaining about excess arguments,
13283         list them.
13284
13285 2007-02-25  Paul Eggert  <eggert@cs.ucla.edu>
13286
13287         * README: Document signed integer overflow situation more
13288         accurately.
13289
13290 2007-02-25  Bruno Haible  <bruno@clisp.org>
13291
13292         * lib/vasnprintf.c (VASNPRINTF): Fix estimate of size needed for a
13293         'a' or 'A' conversion.
13294
13295 2007-02-25  Bruno Haible  <bruno@clisp.org>
13296
13297         * modules/filename: Renamed from modules/pathname.
13298         (Files): Replace lib/pathname.h with lib/filename.h. Replace
13299         lib/concatpath.c with lib/concat-filename.c.
13300         (Makefile.am): Update.
13301         (Include): Replace pathname.h with filename.h.
13302         * lib/filename.h: Renamed from lib/pathname.h.
13303         (concatenated_filename): Renamed from concatenated_pathname.
13304         * lib/concat-filename.c: Renamed from lib/concatpath.c.
13305         (concatenated_filename): Renamed from concatenated_pathname.
13306         * lib/findprog.c: Include filename.h instead of pathname.h.
13307         (find_in_path): Update.
13308         * lib/javacomp.c: Include filename.h instead of pathname.h.
13309         (is_envjavac_gcj43_usable, is_envjavac_oldgcj_14_14_usable,
13310         is_envjavac_oldgcj_14_13_usable, is_envjavac_nongcj_usable,
13311         is_gcj_present, is_gcj43_usable, is_oldgcj_14_14_usable,
13312         is_oldgcj_14_13_usable, is_javac_usable): Update.
13313         * lib/javaexec.c: Include filename.h instead of pathname.h.
13314         (execute_java_class): Update.
13315         * modules/findprog: Update.
13316         * modules/javacomp: Update.
13317         * modules/javaexec: Update.
13318         * MODULES.html.sh (File system functions): Add 'filename', remove
13319         'pathname'.
13320
13321 2007-02-25  Bruno Haible  <bruno@clisp.org>
13322
13323         * modules/printf-frexpl-tests: New file.
13324         * tests/test-printf-frexpl.c: New file.
13325
13326         * modules/printf-frexpl: New file.
13327         * lib/printf-frexpl.h: New file.
13328         * lib/printf-frexpl.c: New file.
13329         * m4/printf-frexpl.m4: New file.
13330
13331 2007-02-25  Bruno Haible  <bruno@clisp.org>
13332
13333         * modules/printf-frexp-tests: New file.
13334         * tests/test-printf-frexp.c: New file.
13335
13336         * modules/printf-frexp: New file.
13337         * lib/printf-frexp.h: New file.
13338         * lib/printf-frexp.c: New file.
13339         * m4/printf-frexp.m4: New file.
13340
13341 2007-02-25  Bruno Haible  <bruno@clisp.org>
13342
13343         Assume automake >= 1.10 for the tests.
13344         * modules/arcfour-tests (TESTS): Remove $(EXEEXT) suffix.
13345         * modules/arctwo-tests: Likewise.
13346         * modules/argp-tests: Likewise.
13347         * modules/avltree-list-tests: Likewise.
13348         * modules/avltree-oset-tests: Likewise.
13349         * modules/avltreehash-list-tests: Likewise.
13350         * modules/carray-list-tests: Likewise.
13351         * modules/crc-tests: Likewise.
13352         * modules/des-tests: Likewise.
13353         * modules/gc-arcfour-tests: Likewise.
13354         * modules/gc-arctwo-tests: Likewise.
13355         * modules/gc-des-tests: Likewise.
13356         * modules/gc-hmac-md5-tests: Likewise.
13357         * modules/gc-hmac-sha1-tests: Likewise.
13358         * modules/gc-md2-tests: Likewise.
13359         * modules/gc-md4-tests: Likewise.
13360         * modules/gc-md5-tests: Likewise.
13361         * modules/gc-pbkdf2-sha1-tests: Likewise.
13362         * modules/gc-rijndael-tests: Likewise.
13363         * modules/gc-sha1-tests: Likewise.
13364         * modules/gc-tests: Likewise.
13365         * modules/getaddrinfo-tests: Likewise.
13366         * modules/hmac-md5-tests: Likewise.
13367         * modules/hmac-sha1-tests: Likewise.
13368         * modules/linked-list-tests: Likewise.
13369         * modules/linkedhash-list-tests: Likewise.
13370         * modules/lock-tests: Likewise.
13371         * modules/md2-tests: Likewise.
13372         * modules/md4-tests: Likewise.
13373         * modules/md5-tests: Likewise.
13374         * modules/rbtree-list-tests: Likewise.
13375         * modules/rbtree-oset-tests: Likewise.
13376         * modules/rbtreehash-list-tests: Likewise.
13377         * modules/read-file-tests: Likewise.
13378         * modules/rijndael-tests: Likewise.
13379         * modules/stdint-tests: Likewise.
13380         * modules/tls-tests: Likewise.
13381
13382 2007-02-24  Bruno Haible  <bruno@clisp.org>
13383
13384         * lib/isnanl.h (isnanl): Define through isnan if isnan is a macro.
13385         * m4/isnan.m4 (gl_FUNC_ISNAN_NO_LIBM): Don't check for isnan as a
13386         function; instead check whether isnan with a double argument links.
13387         * m4/isnanl.m4 (gl_FUNC_ISNANL_NO_LIBM): Don't check for isnanl as a
13388         function; instead check whether isnan with a 'long double' argument
13389         links.
13390         Reported by Eric Blake <ebb9@byu.net>.
13391
13392 2007-02-24  Bruno Haible  <bruno@clisp.org>
13393
13394         * lib/isnan.c: Support the 'long double' case if USE_LONG_DOUBLE is
13395         defined.
13396         * lib/isnanl.c: Remove all code. Just include isnan.c.
13397         * modules/isnanl-nolibm (Files): Add lib/isnan.c.
13398
13399 2007-02-25  Jim Meyering  <jim@meyering.net>
13400
13401         Avoid conflicting types for 'unsetenv' on FreeBSD.
13402         * lib/putenv.c (_unsetenv): Rename from "unsetenv", to avoid
13403         conflicting with FreeBSD's (5.0 and 6.1) function declaration
13404         in stdlib.h.
13405
13406 2007-02-24  Bruno Haible  <bruno@clisp.org>
13407
13408         * modules/isnanl-nolibm-tests: New file.
13409         * tests/test-isnanl.c: New file.
13410
13411         * modules/isnanl-nolibm: New file.
13412         * lib/isnanl.h: New file.
13413         * lib/isnanl.c: New file.
13414         * m4/isnanl.m4: New file.
13415
13416 2007-02-24  Bruno Haible  <bruno@clisp.org>
13417
13418         * modules/isnan-nolibm-tests: New file.
13419         * tests/test-isnan.c: New file.
13420
13421         * modules/isnan-nolibm: New file.
13422         * lib/isnan.h: New file.
13423         * lib/isnan.c: New file.
13424         * m4/isnan.m4: New file.
13425
13426 2007-02-24  Bruno Haible  <bruno@clisp.org>
13427
13428         * lib/frexpl.c (frexpl): Correct return values for x = 1.0L. Don't
13429         assume that an exponent fits in 20 bits.
13430
13431 2007-02-24  Jim Meyering  <jim@meyering.net>
13432
13433         * m4/regex.m4: Update the description of the configure-time option,
13434         --without-included-regex, to state accurately what the defaults are,
13435         and perhaps to give people an idea why using this option is risky.
13436
13437 2007-02-24  Paul Eggert  <eggert@cs.ucla.edu>
13438
13439         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check for a nanosleep that
13440         loops on small arguments.  This attempts to avoid the problem
13441         Bruno Haible reported for AIX 4.3.2 in
13442         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00309.html>.
13443
13444 2007-02-23  Bruno Haible  <bruno@clisp.org>
13445
13446         * m4/perl.m4 (gl_PERL): Require version 5.005, not 5.003.
13447         Needed for help2man.
13448
13449 2007-02-23  Karl Berry  <karl@gnu.org>
13450
13451         * doc/gnulib-tool.texi (CVS Issues): mention that when foo_.h
13452         exists, foo.h should be cvs-ignored, not committed.
13453
13454 2007-02-23  Eric Blake  <ebb9@byu.net>
13455
13456         * lib/getdate.h (includes):  Include <time.h>, not "timespec.h".
13457         * lib/stat-time.h (includes): Likewise.
13458         * lib/utimecmp.c (includes): Likewise.
13459         * lib/utimens.h (includes): Likewise.
13460         * lib/getdate.y (includes): Also include "timespec.h" for use
13461         internal to the module.
13462         * modules/utimens (Depends-on): Revert yesterday's patch.
13463         * modules/nanosleep (Depends-on): Add missing dependency.
13464
13465 2007-02-22  Bruno Haible  <bruno@clisp.org>
13466
13467         * lib/glob.c: Don't include getlogin_r.h.
13468
13469 2007-02-22  Jim Meyering  <jim@meyering.net>
13470
13471         * modules/utimens (Depends-on): Add timespec, required for
13472         utimens.h's inclusion of timespec.h.
13473
13474 2007-02-21  Paul Eggert  <eggert@cs.ucla.edu>
13475
13476         * lib/getcwd.c (__getcwd): Undo previous change; it mishandled
13477         long unreadable paths in GNU/Linux.  Problem reported by Andreas
13478         Schwab in
13479         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00261.html>.
13480         I'll try to think of a better way to fix the Solaris problem.
13481
13482         * lib/getcwd.c (__getcwd): Don't assume getcwd (NULL, 0) works
13483         like glibc; on Solaris 10, it fails with errno == EINVAL.
13484         POSIX says the behavior is unspecified if the first argument is NULL,
13485         so play it safe and never pass NULL to the system getcwd.
13486
13487 2007-02-21  Jim Meyering  <jim@meyering.net>
13488
13489         * lib/gettimeofday.c (rpl_gettimeofday): Remove declaration
13490         of gettimeofday.  It would conflict with the one now always
13491         provided via sys_time_.h.  Reported by Matthew Woehlke, as
13492         an IRIX 6.5 build failure.
13493
13494 2007-02-20  Paul Eggert  <eggert@cs.ucla.edu>
13495
13496         Minor fixups to port to Solaris 10 with Sun C 5.8.
13497         * lib/getcwd.c [!_LIBC]: Include dirfd.h, since we use dirfd.
13498         * modules/getcwd (Depends-on): Add dirfd.
13499         * lib/putenv.c (putenv): #undef it.
13500         (rpl_putenv): New decl.
13501         (malloc, free): Include <stdlib.h> rather than prototyping separately.
13502
13503 2007-02-20  Bruno Haible  <bruno@clisp.org>
13504
13505         * modules/stdio-tests: New file.
13506         * tests/test-stdio.c: New file.
13507
13508         * modules/vsnprintf (Files): Remove lib/vsnprintf.h.
13509         (Depends-on): Add stdio.
13510         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
13511         (Include): Use <stdio.h> instead of vsnprintf.h.
13512         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
13513         HAVE_DECL_VSNPRINTF.
13514         * lib/vsnprintf.c: Include <stdio.h> instead of vsnprintf.h.
13515
13516         * modules/snprintf (Files): Remove lib/snprintf.h.
13517         (Depends-on): Add stdio.
13518         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
13519         (Include): Use <stdio.h> instead of snprintf.h.
13520         * m4/snprintf.m4 (gl_FUNC_SNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
13521         HAVE_DECL_SNPRINTF.
13522         * lib/snprintf.c: Include <stdio.h> instead of snprintf.h.
13523         * lib/getaddrinfo.c: Likewise.
13524
13525         * modules/stdio: New file.
13526         * lib/stdio_.h: New file, incorporating snprintf.h and vsnprintf.h.
13527         * lib/snprintf.h: Remove file.
13528         * lib/vsnprintf.h: Remove file.
13529         * lib/.cppi-disable: Remove snprintf.h.
13530         * m4/stdio_h.m4: New file.
13531         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdio.
13532
13533 2007-02-20  Jim Meyering  <jim@meyering.net>
13534
13535         * lib/ftruncate.c [HAVE_CHSIZE]: Document that this code is
13536         used by e.g., mingw.  From Bruno Haible.
13537
13538 2007-02-19  Bruno Haible  <bruno@clisp.org>
13539
13540         * lib/string_.h: Use "#pragma GCC system_header" to suppress some gcc
13541         warnings.
13542         Reported by Ben Pfaff <blp@cs.stanford.edu>.
13543
13544 2007-02-19  Bruno Haible  <bruno@clisp.org>
13545
13546         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Don't request a complaint mail
13547         from mingw users.
13548
13549 2007-02-19  Bruno Haible  <bruno@clisp.org>
13550
13551         * lib/stdlib_.h: Use "#pragma GCC system_header" to suppress some gcc
13552         warnings.
13553         Reported by Joel E. Denny <jdenny@ces.clemson.edu> via Paul Eggert.
13554
13555 2007-02-19  Jim Meyering  <jim@meyering.net>
13556
13557         Don't use FD after a successful "fdopendir (fd)".
13558         * lib/getcwd.c (__getcwd) [AT_FDCWD]: fdopendir (fd) usually closes fd.
13559         Reset it by calling dirfd on the just-obtained DIR*.
13560
13561         * m4/ftruncate.m4: Adjust comment to give this module a 3-year reprieve.
13562         Prompted by a report from Bruno Haible that mingw lacks ftruncate.
13563
13564 2007-02-18  Bruno Haible  <bruno@clisp.org>
13565
13566         * lib/readlink.c: Include <unistd.h>.
13567         * m4/readlink.m4 (gl_FUNC_READLINK): Require gl_UNISTD_H_DEFAULTS. Set
13568         HAVE_READLINK.
13569         * modules/readlink (Depends-on): Add unistd.
13570         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
13571         (Include): Add <unistd.h>.
13572
13573         * lib/getlogin_r.h: Remove file.
13574         * lib/getlogin_r.c: Include <unistd.h> instead of getlogin_r.h.
13575         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE): Remove macro.
13576         (gl_GETLOGIN_R): Inline it here. Require gl_UNISTD_H_DEFAULTS. Set
13577         HAVE_DECL_GETLOGIN_R.
13578         * modules/getlogin_r (Files): Remove lib/getlogin_r.h.
13579         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
13580         (Include): Use <unistd.h> instead of getlogin_r.h.
13581
13582         * lib/getcwd.h: Remove file.
13583         * lib/getcwd.c: Include <unistd.h> instead of getcwd.h.
13584         * lib/xgetcwd.c: Likewise.
13585         * m4/getcwd.m4 (gl_FUNC_GETCWD): Require gl_UNISTD_H_DEFAULTS. Set
13586         REPLACE_GETCWD. Don't define __GETCWD_PREFIX.
13587         * modules/getcwd (Files): Remove lib/getcwd.h.
13588         (Depends-on): Add unistd.
13589         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
13590         (Include): Use <unistd.h> instad of getcwd.h.
13591
13592         * lib/ftruncate.c: Include <unistd.h> first.
13593         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Require gl_UNISTD_H_DEFAULTS.
13594         Set HAVE_FTRUNCATE.
13595         * modules/ftruncate (Depends-on): Add unistd.
13596         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
13597
13598         * lib/fchdir.c: Include <unistd.h> first.
13599         * lib/dirent_.h: Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT.
13600         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_UNISTD_H_DEFAULTS instead
13601         of gl_HEADER_UNISTD_DEFAULTS. Set REPLACE_FCHDIR. Don't set UNISTD_H.
13602         * modules/fchdir (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
13603         (Makefile.am): Substitute also REPLACE_FCHDIR into dirent.h.
13604
13605         * lib/dup2.c: Include <unistd.h> first.
13606         * m4/dup2.m4 (gl_FUNC_DUP2): Require gl_UNISTD_H_DEFAULTS. Set
13607         HAVE_DUP2.
13608         * modules/dup2 (Depends-on): Add unistd.
13609         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
13610
13611         * lib/chown.c: Include <unistd.h> first. Undefine chown later.
13612         * m4/chown.m4 (gl_FUNC_CHOWN): Require gl_UNISTD_H_DEFAULTS. Set
13613         REPLACE_CHOWN. Don't define chown as a macro here.
13614         * modules/chown (Depends-on): Add unistd.
13615         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
13616
13617         * lib/unistd_.h: Test HAVE_UNISTD_H determined at configure time.
13618         Add definition for GL_LINK_WARNING.
13619         (chown, dup2): New declarations.
13620         (fchdir): Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT. Provide optional
13621         link warning.
13622         (ftruncate): New declaration.
13623         (getcwd): New declaration, taken from old getcwd.h.
13624         (getlogin_r): New declaration, taken from old getlogin_r.h.
13625         (readlink): New declaration.
13626         * m4/unistd_h.m4 (gl_UNISTD_H): Renamed from gl_HEADER_UNISTD. Don't
13627         set UNISTD_H. Inline gl_PREREQ_UNISTD. Set HAVE_UNISTD_H.
13628         (gl_PREREQ_UNISTD): Remove macro.
13629         (gl_UNISTD_MODULE_INDICATOR): New macro.
13630         (gl_UNISTD_H_DEFAULTS): Renamed from gl_HEADER_UNISTD_DEFAULTS. Set
13631         many new variables. Don't set UNISTD_H.
13632         * modules/unistd (Description): Change.
13633         (Depends-on): Add link-warning.
13634         (configure.ac): Update.
13635         (Makefile.am): Create unistd.h always. Substitute many new variables
13636         into it.
13637
13638 2007-02-18  Bruno Haible  <bruno@clisp.org>
13639
13640         * lib/stdlib_.h (getsubopt): New declaration, copied from getsubopt.h.
13641         * modules/stdlib (stdlib.h): Also substitute GNULIB_GETSUBOPT and
13642         HAVE_GETSUBOPT.
13643         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Also initialize
13644         GNULIB_GETSUBOPT and HAVE_GETSUBOPT.
13645         * lib/getsubopt.h: Remove file.
13646         * modules/getsubopt (Files): Remove lib/getsubopt.h.
13647         (Depends-on): Add stdlib.
13648         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
13649         (Includes): Use <stdlib.h> instead of getsubopt.h.
13650         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Require gl_STDLIB_H_DEFAULTS.
13651         Set HAVE_GETSUBOPT.
13652         * lib/getsubopt.c: Don't include getsubopt.h.
13653
13654 2007-02-18  Bruno Haible  <bruno@clisp.org>
13655
13656         * modules/fchdir (Depends-on): Add dup2.
13657
13658 2007-02-18  Bruno Haible  <bruno@clisp.org>
13659
13660         * lib/stdlib_.h: Handle glibc's special invocation convention
13661         specially.
13662
13663 2007-02-18  Bruno Haible  <bruno@clisp.org>
13664
13665         * modules/stdlib-tests: New file.
13666         * tests/test-stdlib.c: New file.
13667
13668         * modules/mkstemp (Files): Remove lib/mkstemp.h.
13669         (Depends-on): Add stdlib.
13670         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
13671         (Includes): Use <stdlib.h> instead of mkstemp.h.
13672         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require gl_STDLIB_H_DEFAULTS. Set
13673         REPLACE_MKSTEMP. Remove definition of __MKSTEMP_PREFIX.
13674         * lib/mkstemp.c: Don't include mkstemp.h.
13675         * lib/mkstemp-safer.c: Include <stdlib.h> instead of mkstemp.h.
13676         * lib/stdlib--.h: Don't include mkstemp.h.
13677
13678         * modules/mkdtemp (Files): Remove lib/mkdtemp.h.
13679         (Depends-on): Add stdlib.
13680         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
13681         (Includes): Use <stdlib.h> instead of mkdtemp.h.
13682         * m4/mkdtemp.m4 (gt_FUNC_MKDTEMP): Require gl_STDLIB_H_DEFAULTS. Set
13683         HAVE_MKDTEMP.
13684         * lib/mkdtemp.c: Don't include mkdtemp.h.
13685         * lib/clean-temp.c: Don't include mkdtemp.h.
13686
13687         * modules/exit (Files): Remove lib/exit.h.
13688         (Depends-on): Add stdlib.
13689         (Makefile.am): Remove lib_SOURCES.
13690         (Include): Use <stdlib.h> instead of exit.h.
13691         * lib/argmatch.c: Don't include exit.h.
13692         * lib/execute.c: Likewise.
13693         * lib/pagealign_alloc.c: Likewise.
13694         * lib/pipe.c: Likewise.
13695         * lib/wait-process.c: Likewise.
13696         * lib/copy-file.c: Include <stdlib.h> instead of exit.h.
13697         * lib/exitfail.c: Likewise.
13698         * lib/savewd.c: Likewise.
13699         * lib/xsetenv.c: Likewise.
13700
13701         * modules/stdlib: New file.
13702         * lib/stdlib_.h: New file, incorporating exit.h, mkdtemp.h, mkstemp.h
13703         and extra comments about mkstemp().
13704         * lib/exit.h: Remove file.
13705         * lib/mkdtemp.h: Remove file.
13706         * lib/mkstemp.h: Remove file.
13707         * m4/stdlib_h.m4: New file.
13708         * MODULES.html.sh (Support for systems lacking ANSI C 89): Add stdlib.
13709
13710 2007-02-18  Bruno Haible  <bruno@clisp.org>
13711
13712         * modules/math-tests: New file.
13713         * tests/test-math.c: New file.
13714
13715         * modules/math: New file.
13716         * modules/mathl (Files): Remove lib/mathl.h.
13717         (Depends-on): Add math.
13718         (Makefile.am): Don't mention mathl.h.
13719         (Include): Use <math.h> instead of mathl.h.
13720         * lib/math_.h: New file.
13721         * lib/mathl.h: Remove file.
13722         * lib/acosl.c: Include <config.h> and <math.h> first. Don't include
13723         mathl.h.
13724         * lib/asinl.c: Likewise.
13725         * lib/atanl.c: Likewise.
13726         * lib/ceill.c: Likewise.
13727         * lib/cosl.c: Likewise.
13728         * lib/expl.c: Likewise.
13729         * lib/floorl.c: Likewise.
13730         * lib/frexpl.c: Likewise.
13731         * lib/ldexpl.c: Likewise.
13732         * lib/logl.c: Likewise.
13733         * lib/sincosl.c: Likewise.
13734         * lib/sinl.c: Likewise.
13735         * lib/sqrtl.c: Likewise.
13736         * lib/tanl.c: Likewise.
13737         * lib/trigl.c: Likewise.
13738         * m4/math_h.m4: New file.
13739         * MODULES.html.sh (Mathematics): Add math.
13740
13741 2007-02-17  Bruno Haible  <bruno@clisp.org>
13742
13743         * modules/wctype-tests: New file.
13744         * tests/test-wctype.c: New file.
13745
13746         * modules/wchar-tests: New file.
13747         * tests/test-wchar.c: New file.
13748
13749         * modules/unistd-tests: New file.
13750         * tests/test-unistd.c: New file.
13751
13752         * modules/time-tests: New file.
13753         * tests/test-time.c: New file.
13754
13755         * modules/sysexits-tests: New file.
13756         * tests/test-sysexits.c: New file.
13757
13758         * modules/sys_time-tests: New file.
13759         * tests/test-sys_time.c: New file.
13760
13761         * modules/sys_stat-tests: New file.
13762         * tests/test-sys_stat.c: New file.
13763
13764         * modules/sys_socket-tests: New file.
13765         * tests/test-sys_socket.c: New file.
13766
13767         * modules/sys_select-tests: New file.
13768         * tests/test-sys_select.c: New file.
13769
13770         * modules/string-tests: New file.
13771         * tests/test-string.c: New file.
13772
13773         * modules/stdbool-tests: New file.
13774         * tests/test-stdbool.c: New file.
13775
13776         * modules/netinet_in-tests: New file.
13777         * tests/test-netinet_in.c: New file.
13778
13779         * modules/inttypes-tests: New file.
13780         * tests/test-inttypes.c: New file.
13781
13782         * modules/fcntl-tests: New file.
13783         * tests/test-fcntl.c: New file.
13784
13785         * modules/byteswap-tests: New file.
13786         * tests/test-byteswap.c: New file.
13787
13788         * modules/arpa_inet-tests: New file.
13789         * tests/test-arpa_inet.c: New file.
13790
13791 2007-02-17  Bruno Haible  <bruno@clisp.org>
13792
13793         * lib/inttypes_.h: Add definition for GL_LINK_WARNING.
13794         (imaxabs, imaxdiv, strtoimax, strtoumax): Don't declare the function
13795         if the corresponding module is not enabled. Emit link warnings if
13796         the function is used nevertheless.
13797         * m4/inttypes.m4 (gl_INTTYPES_H): Never use the existing <inttypes.h>.
13798         Don't AC_SUBST HAVE_DECL_IMAXABS, HAVE_DECL_IMAXDIV,
13799         HAVE_DECL_STRTOIMAX, HAVE_DECL_STRTOUMAX.
13800         (gl_INTTYPES_MODULE_INDICATOR, gl_INTTYPES_H_DEFAULTS): New macros.
13801         * modules/inttypes (Depends-on): Add link-warning.
13802         (Makefile.am): Copy the contents of build-aux/link-warning.h into
13803         inttypes.h. Substitute also GNULIB_IMAXABS, GNULIB_IMAXDIV,
13804         GNULIB_STRTOIMAX, GNULIB_STRTOUMAX.
13805         * modules/imaxabs (configure.ac): Invoke gl_INTTYPES_MODULE_INDICATOR.
13806         * modules/imaxdiv (configure.ac): Likewise.
13807         * modules/strtoimax (configure.ac): Likewise.
13808         * modules/strtoumax (configure.ac): Likewise.
13809
13810 2007-02-17  Bruno Haible  <bruno@clisp.org>
13811
13812         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Include the contents of
13813         gl_STRING_MODULE_INDICATOR_DEFAULTS.
13814         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Remove macro.
13815         (gl_HEADER_STRING_H_BODY, gl_STRING_MODULE_INDICATOR): Update.
13816
13817 2007-02-17  Bruno Haible  <bruno@clisp.org>
13818
13819         * modules/link-warning: New file.
13820         * build-aux/link-warning.h: New file, extracted from lib/string_.h.
13821         * lib/string_.h (GL_LINK_WARNING): Remove definition.
13822         * modules/string (Depends-on): Add link-warning.
13823         (Makefile.am): Copy the contents of build-aux/link-warning.h into
13824         string.h.
13825         * MODULES.html.sh (Support for building libraries and executables): Add
13826         link-warning.
13827
13828 2007-02-17  Bruno Haible  <bruno@clisp.org>
13829
13830         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strcasecmp,
13831         strncasecmp, strchr, strchrnul, strdup, strndup, strnlen, strcspn,
13832         strpbrk, strspn, strrchr, strsep, strstr, strcasestr, strtok_r): Break
13833         long lines.
13834
13835 2007-02-17  Ben Pfaff  <blp@cs.stanford.edu>
13836             Bruno Haible  <bruno@clisp.org>
13837
13838         * modules/tmpfile: New file.
13839         * lib/tmpfile.c: New file.
13840         * m4/tmpfile.m4: New file.
13841         * MODULES.html.sh (func_all_modules): New section "Input/output".
13842
13843 2007-02-15  Bruno Haible  <bruno@clisp.org>
13844
13845         * lib/clean-temp.c [WIN32 && !CYGWIN]: Include <windows.h>.
13846         (supports_delete_on_close): New function.
13847         (open_temp, fopen_temp): Use _O_TEMPORARY when supported.
13848
13849 2007-02-14  Bruno Haible  <bruno@clisp.org>
13850
13851         * modules/mbspcasecmp-tests: New file.
13852         * tests/test-mbspcasecmp.sh: New file.
13853         * tests/test-mbspcasecmp.c: New file.
13854
13855         New module mbspcasecmp.
13856         * modules/mbspcasecmp: New file.
13857         * lib/mbspcasecmp.c: New file.
13858         * lib/string_.h (strncasecmp): Change warning message.
13859         (mbspcasecmp): New declaration.
13860         * m4/mbspcasecmp.m4: New file.
13861         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
13862         GNULIB_MBSPCASECMP.
13863         * modules/string (string.h): Also substitute GNULIB_MBSPCASECMP.
13864         * MODULES.html.sh (Internationalization functions): Add mbspcasecmp.
13865
13866 2007-02-14  Bruno Haible  <bruno@clisp.org>
13867
13868         * modules/mbsncasecmp-tests: New file.
13869         * tests/test-mbsncasecmp.sh: New file.
13870         * tests/test-mbsncasecmp.c: New file.
13871
13872         New module mbsncasecmp.
13873         * modules/mbsncasecmp: New file.
13874         * lib/mbsncasecmp.c: New file.
13875         * lib/string_.h (mbsncasecmp): New declaration.
13876         * m4/mbsncasecmp.m4: New file.
13877         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
13878         GNULIB_MBSNCASECMP.
13879         * modules/string (string.h): Also substitute GNULIB_MBSNCASECMP.
13880         * MODULES.html.sh (Internationalization functions): Add mbsncasecmp.
13881
13882 2007-02-14  Paul Eggert  <eggert@cs.ucla.edu>
13883
13884         * lib/exclude.c (FNM_EXTMATCH): Define if system does not.
13885         Verify that it doesn't overlap with our flags.
13886         (fnmatch_no_wildcards): Don't use strcasecmp or strncasecmp, which
13887         do not have the desired effect in multibyte locales; instead, use
13888         mbscasecmp.
13889         * modules/exclude (Depends-on): Depend on mbscasecmp, not strcase.
13890         Add dependency on xalloc.  Depend on fnmatch, not fnmatch-gnu, since
13891         we don't require GNU fnmatch ourselves (if our users require it, they
13892         should do so explicitly).
13893
13894         Fix regex code so it doesn't rely on strcasecmp.
13895         * lib/regex_internal.h: Include <langinfo.h> only if _LIBC is defined.
13896         Otherwise, include gnulib's langinfo.h.
13897         * lib/regcomp.c (init_dfa): Don't use strcasecmp, as it can have
13898         undesirable behavior in non-C locales.  Instead, rely on localecharset.
13899         * m4/regex.m4 (gl_PREREQ_REGEX): Don't require AM_LANGINFO_CODESET.
13900         * modules/regex (FILES): Remove m4/codeset.m4.
13901         (Depends-on): Add localcharset.  Remove strcase.
13902
13903 2007-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13904
13905         * m4/unlinkdir.m4 (gl_UNLINKDIR): Fix m4 quoting bug.
13906         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Likewise.
13907
13908 2007-02-13  Bruno Haible  <bruno@clisp.org>
13909
13910         * m4/intdiv0.m4 (gt_INTDIV0): Assume ANSI C. Fix underquoting bug.
13911         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
13912
13913 2007-02-12  Bruno Haible  <bruno@clisp.org>
13914
13915         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
13916         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): If
13917         GNULIB_POSIXCHECK and the gnulib module not enabled, provoke a link-
13918         time warning rather than a link error.
13919
13920 2007-02-12  Bruno Haible  <bruno@clisp.org>
13921
13922         * m4/locale-fr.m4 (gt_LOCALE_FR): Fix m4 quoting bug.
13923         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
13924         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
13925
13926 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
13927
13928         * lib/string_.h (strncasecmp): Fix typo: this macro takes 3
13929         args, not 2.
13930
13931 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
13932
13933         New module 'time', so that apps can include <time.h> as per
13934         POSIX and GNU instead of separate include files like time_r.h
13935         and timegm.h.  This implementation tries out a simpler approach
13936         for replacing decls in standard include files (as compared to
13937         the string module), somewhat as an experiment.
13938
13939         * config/srclist.txt: Comment out mktime.c for now.
13940         * doc/gnulib-tool.texi (Initial import): Don't use time_r as an example
13941         since it doesn't apply any more.  Use generic wording instead.
13942         * MODULES.html.sh (Support for systems lacking POSIX:2001): New module
13943         'time'.
13944         * lib/time_.h, m4/time_h.m4, modules/time: New files.
13945         * lib/strptime.h, lib/time_r.h, lib/timegm.h: Remove.
13946         * lib/mktime.c: Include config.h depending on _LIBC, not HAVE_CONFIG_H.
13947         Don't include <sys/types.h>; no longer needed since we assume C89.
13948         * lib/mktime.c: Don't include "time_r.h"; no longer needed.
13949         * lib/strftime.c: Likewise.
13950         * lib/time_r.c: Likewise.
13951         * lib/nanosleep.c (nanosleep): #undef after include files, not before.
13952         * lib/nanosleep.c: Include <time.h> first, to check interface.
13953         * lib/strptime.c: Likewise.
13954         * lib/time_r.c: Likewise.
13955         * lib/timegm.c: Likewise.
13956         * lib/strptime.c: Don't include strptime.h or time_r.h; no longer
13957         needed.
13958         * lib/timegm.c: Don't include timegm.h; no longer needed.
13959         * lib/timespec.h: Don't include <sys/time.h> before <time.h>;
13960         time.h now handles any problems in that area.
13961         (struct timespec, nanosleep): Remove; time.h now arranges for these.
13962         * lib/xnanosleep.c: Don't include timespec.h; no longer needed now
13963         that time.h defines struct timespec.
13964         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check that nanosleep is declared.
13965         Set REPLACE_NANOSLEEP.  Don't AC_DEFINE nanosleep; the time module now
13966         handles that.
13967         * m4/strptime.m4 (gl_FUNC_STPRTIME): Set REPLACE_STRPTIME.
13968         * m4/time_r.m4 (gl_TIME_R): Don't define HAVE_TIME_R_POSIX; no longer
13969         needed.  Set REPLACE_LOCALTIME.
13970         * m4/timegm.m4 (gl_FUNC_TIMEGM): Set REPLACE_TIMEGM.
13971         * m4/timespec.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Move to time_h.m4.
13972         (gl_TIMESPEC): Don't check for sys/time.h or struct timespec or
13973         nanosleep; time_h.m4 now does that.  Don't require
13974         gl_USE_SYSTEM_EXTENSIONS; no longer needed directly, and the time
13975         module handles this now.
13976         * modules/getdate (Depends-on): Remove timespec.  Add time.
13977         * modules/nanosleep (Depends-on): Likewise.
13978         * modules/stat-time (Depends-on): Likewise.
13979         * modules/nanosleep (Include): Include time.h, not timespec.h.
13980         * modules/strptime (Files): Remove lib/strptime.h.
13981         (Depends-on): Add extensions, time.
13982         (Include): Include time.h, not strptime.h.
13983         * modules/time_r (Files): Remove lib/time_r.h.
13984         (Depends-on): Add time.
13985         (Include): Include time.h, not time_r.h.
13986         * modules/timegm: Likewise.
13987         * modules/timespec (Description): Now does timespec-related decls
13988         of our own, instead of struct timespec itself.
13989         (Depends-on): Add time; remove extensions.
13990         (Maintainer): Add self.
13991         * modules/utimecmp (Depends-on): Add time; remove timespec.
13992         * modules/utimens (Depends-on): Likewise.
13993         * modules/xnanosleep (Depends-on): Likewise.
13994
13995 2007-02-11  Bruno Haible  <bruno@clisp.org>
13996
13997         * lib/c-strstr.c: Include allocsa.h.
13998         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
13999         * lib/c-strcasestr.c: Include allocsa.h.
14000         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
14001         * lib/strcasestr.c: Include allocsa.h.
14002         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
14003         * lib/mbsstr.c: Include allocsa.h.
14004         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
14005         allocsa/freesa instead of malloc/free.
14006         * lib/mbscasestr.c: Include allocsa.h.
14007         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
14008         allocsa/freesa instead of malloc/free.
14009         * modules/c-strstr (Depends-on): Add allocsa.
14010         * modules/c-strcasestr (Depends-on): Likewise.
14011         * modules/strcasestr (Depends-on): Likewise.
14012         * modules/mbsstr (Depends-on): Likewise.
14013         * modules/mbscasestr (Depends-on): Likewise.
14014
14015 2007-02-11  Bruno Haible  <bruno@clisp.org>
14016
14017         * lib/mbsspn.c (mbsspn): Fix bug. Remove unnecessary strlen call.
14018
14019         * modules/mbsspn-tests: New file.
14020         * tests/test-mbsspn.sh: New file.
14021         * tests/test-mbsspn.c: New file.
14022
14023 2007-02-11  Bruno Haible  <bruno@clisp.org>
14024
14025         * lib/mbspbrk.c (mbspbrk): Remove unneeded cast.
14026
14027         * modules/mbspbrk-tests: New file.
14028         * tests/test-mbspbrk.sh: New file.
14029         * tests/test-mbspbrk.c: New file.
14030
14031 2007-02-11  Bruno Haible  <bruno@clisp.org>
14032
14033         * lib/mbscspn.c (mbscspn): Remove unnecessary strlen call and
14034         unneeded cast.
14035
14036         * modules/mbscspn-tests: New file.
14037         * tests/test-mbscspn.sh: New file.
14038         * tests/test-mbscspn.c: New file.
14039
14040 2007-02-11  Bruno Haible  <bruno@clisp.org>
14041
14042         * modules/mbscasecmp-tests: New file.
14043         * tests/test-mbscasecmp.sh: New file.
14044         * tests/test-mbscasecmp.c: New file.
14045
14046 2007-02-11  Bruno Haible  <bruno@clisp.org>
14047
14048         Ensure O(n) worst-case complexity of mbscasestr.
14049         * lib/mbscasestr.c: Include stdbool.h.
14050         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
14051         functions.
14052         (mbscasestr): Add some bookkeeping. Invoke knuth_morris_pratt_* when
14053         the bookkeeping indicates that it's worth it.
14054         * modules/mbscasestr (Depends-on): Add stdbool, mbslen, strnlen.
14055
14056         * modules/mbscasestr-tests: New file.
14057         * tests/test-mbscasestr1.c: New file.
14058         * tests/test-mbscasestr2.sh: New file.
14059         * tests/test-mbscasestr2.c: New file.
14060         * tests/test-mbscasestr3.sh: New file.
14061         * tests/test-mbscasestr3.c: New file.
14062         * tests/test-mbscasestr4.sh: New file.
14063         * tests/test-mbscasestr4.c: New file.
14064         * m4/locale-tr.m4: New file.
14065
14066 2007-02-11  Bruno Haible  <bruno@clisp.org>
14067
14068         Ensure O(n) worst-case complexity of mbsstr.
14069         * lib/mbsstr.c: Include stdbool.h.
14070         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
14071         functions.
14072         (mbsstr): Add some bookkeeping. Invoke knuth_morris_pratt_* when the
14073         bookkeeping indicates that it's worth it.
14074         * modules/mbsstr (Depends-on): Add stdbool, mbslen, strnlen.
14075
14076         * modules/mbsstr-tests: New file.
14077         * tests/test-mbsstr1.c: New file.
14078         * tests/test-mbsstr2.sh: New file.
14079         * tests/test-mbsstr2.c: New file.
14080         * tests/test-mbsstr3.sh: New file.
14081         * tests/test-mbsstr3.c: New file.
14082         * m4/locale-fr.m4: New file.
14083
14084 2007-02-11  Bruno Haible  <bruno@clisp.org>
14085
14086         * lib/mbsrchr.c (mbsrchr): Fix bug.
14087
14088         * modules/mbsrchr-tests: New file.
14089         * tests/test-mbsrchr.sh: New file.
14090         * tests/test-mbsrchr.c: New file.
14091
14092 2007-02-11  Bruno Haible  <bruno@clisp.org>
14093
14094         * lib/mbschr.c (mbschr): Fix bug.
14095
14096         * modules/mbschr-tests: New file.
14097         * tests/test-mbschr.sh: New file.
14098         * tests/test-mbschr.c: New file.
14099         * m4/locale-zh.m4: New file.
14100
14101 2007-02-11  Bruno Haible  <bruno@clisp.org>
14102
14103         Support for copying multibyte string iterators.
14104         * lib/mbiter.h: Include <string.h>.
14105         (mbiter_multi_copy): New function.
14106         (mbi_copy): New macro.
14107         * lib/mbuiter.h: Include <string.h>.
14108         (mbuiter_multi_copy): New function.
14109         (mbui_copy): New macro.
14110
14111 2007-02-11  Bruno Haible  <bruno@clisp.org>
14112
14113         New module mbslen.
14114         * modules/mbslen: New file.
14115         * lib/mbslen.c: New file.
14116         * lib/string_.h (mbslen): New declaration.
14117         * m4/mbslen.m4: New file.
14118         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
14119         GNULIB_MBSLEN.
14120         * modules/string (string.h): Also substitute GNULIB_MBSLEN.
14121         * MODULES.html.sh (Internationalization functions): Add mbslen.
14122
14123 2007-02-11  Bruno Haible  <bruno@clisp.org>
14124
14125         Ensure O(n) worst-case complexity of strcasestr substitute.
14126         * lib/strcasestr.c: Include stdbool.h.
14127         (knuth_morris_pratt): New function.
14128         (strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when the
14129         bookkeeping indicates that it's worth it.
14130         * modules/strcasestr (Depends-on): Add stdbool, strnlen.
14131
14132         * modules/strcasestr-tests: New file.
14133         * tests/test-strcasestr.c: New file.
14134
14135 2007-02-11  Bruno Haible  <bruno@clisp.org>
14136
14137         Ensure O(n) worst-case complexity of c_strcasestr.
14138         * lib/c-strcasestr.c: Include stdbool.h, string.h.
14139         (knuth_morris_pratt): New function.
14140         (c_strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when
14141         the bookkeeping indicates that it's worth it.
14142         * modules/c-strcasestr (Depends-on): Add stdbool, strnlen.
14143
14144         * modules/c-strcasestr-tests: New file.
14145         * tests/test-c-strcasestr.c: New file.
14146
14147 2007-02-11  Bruno Haible  <bruno@clisp.org>
14148
14149         Ensure O(n) worst-case complexity of c_strstr.
14150         * lib/c-strstr.c: Include stdbool.h, string.h.
14151         (knuth_morris_pratt): New function.
14152         (c_strstr): Add some bookkeeping. Invoke knuth_morris_pratt when the
14153         bookkeeping indicates that it's worth it.
14154         * modules/c-strstr (Depends-on): Add stdbool, strnlen.
14155
14156         * lib/c-strstr.c: Complete rewrite for maintainability.
14157
14158         * modules/c-strstr-tests: New file.
14159         * tests/test-c-strstr.c: New file.
14160
14161 2007-02-11  Bruno Haible  <bruno@clisp.org>
14162
14163         * m4/javacomp.m4 (gt_JAVACOMP): Work around a 'tr' bug in coreutils
14164         5.2.1 and earlier, whereby \055 was treated just like the range
14165         delimiter '-'.
14166         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
14167
14168 2007-02-08  Bruno Haible  <bruno@clisp.org>
14169
14170         * modules/regex (Depends-on): Add stdbool.
14171         Reported by Dalibor Topic <robilad@kaffe.org>.
14172
14173 2007-02-05  Paul Eggert  <eggert@cs.ucla.edu>
14174
14175         * m4/regex.m4 (gl_REGEX): Check for glibc bug #3957.
14176         Prefer returning from main to exiting from it.
14177         Remove unnecessary parens after sizeof.
14178
14179 2007-02-05  Bruno Haible  <bruno@clisp.org>
14180
14181         New module mbssep.
14182         * modules/mbssep: New file.
14183         * lib/mbssep.c: New file.
14184         * lib/string_.h (strsep): Add a conditional link warning.
14185         (mbssep): New declaration.
14186         * m4/mbssep.m4: New file.
14187         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
14188         GNULIB_MBSSEP.
14189         * modules/string (string.h): Also substitute GNULIB_MBSSEP.
14190         * MODULES.html.sh (Internationalization functions): Add mbssep.
14191
14192 2007-02-05  Bruno Haible  <bruno@clisp.org>
14193
14194         * lib/strsep.c (strsep): Fix actions in case of no delimiters.
14195         Optimize search in case of 1 delimiter.
14196
14197 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
14198
14199         * lib/acl.h: Include sys/types.h before sys/acl.h.
14200
14201 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
14202
14203         Merge upstream fix for glibc bugzilla #3957:
14204
14205         2007-02-05  Jakub Jelinek  <jakub@redhat.com>
14206
14207         * lib/regcomp.c (parse_bracket_exp): Set '\n' bit rather than '\0'
14208         bit for RE_HAT_LISTS_NOT_NEWLINE.
14209         (build_charclass_op): Remove bogus comment.
14210
14211 2007-02-05  Simon Josefsson  <simon@josefsson.org>
14212
14213         * lib/gc.h, lib/gc-libgcrypt.c: Support SHA-256/384/512.
14214
14215 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
14216
14217         * lib/getsubopt.c [!_LIBC]: Include config.h and getsubopt.h.
14218         * lib/memmem.c [!defined _LIBC]: Include config.h.
14219
14220 2007-02-04  Bruno Haible  <bruno@clisp.org>
14221
14222         * lib/string_.h (GL_LINK_WARNING2): Put the word "warning:" into the
14223         warning message.
14224
14225 2007-02-04  Bruno Haible  <bruno@clisp.org>
14226
14227         New module mbstok_r.
14228         * modules/mbstok_r: New file.
14229         * lib/mbstok_r.c: New file.
14230         * lib/string_.h (strtok_r): Change argument names to match the
14231         comments. Add a conditional link warning.
14232         (mbstok_r): New declaration.
14233         * m4/mbstok_r.m4: New file.
14234         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
14235         GNULIB_MBSTOK_R.
14236         * modules/string (string.h): Also substitute GNULIB_MBSTOK_R.
14237         * MODULES.html.sh (Internationalization functions): Add mbstok_r.
14238
14239 2007-02-04  Bruno Haible  <bruno@clisp.org>
14240
14241         New module mbsspn.
14242         * modules/mbsspn: New file.
14243         * lib/mbsspn.c: New file.
14244         * lib/string_.h (strspn): Add a conditional link warning.
14245         (mbsspn): New declaration.
14246         * m4/mbsspn.m4: New file.
14247         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
14248         GNULIB_MBSSPN.
14249         * modules/string (string.h): Also substitute GNULIB_MBSSPN.
14250         * MODULES.html.sh (Internationalization functions): Add mbsspn.
14251
14252 2007-02-04  Bruno Haible  <bruno@clisp.org>
14253
14254         New module mbspbrk.
14255         * modules/mbspbrk: New file.
14256         * lib/mbspbrk.c: New file.
14257         * lib/string_.h (strpbrk): Add a conditional link warning.
14258         (mbspbrk): New declaration.
14259         * m4/mbspbrk.m4: New file.
14260         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
14261         GNULIB_MBSPBRK.
14262         * modules/string (string.h): Also substitute GNULIB_MBSPBRK.
14263         * MODULES.html.sh (Internationalization functions): Add mbspbrk.
14264
14265 2007-02-04  Bruno Haible  <bruno@clisp.org>
14266
14267         New module mbscspn.
14268         * modules/mbscspn: New file.
14269         * lib/mbscspn.c: New file.
14270         * lib/string_.h (strcspn): Add a conditional link warning.
14271         (mbscspn): New declaration.
14272         * m4/mbscspn.m4: New file.
14273         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
14274         GNULIB_MBSCSPN.
14275         * modules/string (string.h): Also substitute GNULIB_MBSCSPN.
14276         * MODULES.html.sh (Internationalization functions): Add mbscspn.
14277
14278 2007-02-04  Bruno Haible  <bruno@clisp.org>
14279
14280         New module mbscasestr, reduced goal of strcasestr.
14281         * modules/mbscasestr: New file.
14282         * lib/mbscasestr.c: New file, copied from lib/strcasestr.c.
14283         (mbscasestr): Renamed from strcasestr.
14284         * lib/strcasestr.c: Don't include mbuiter.h.
14285         (strcasestr): Remove support for multibyte locales.
14286         * lib/string_.h (strcasestr): Don`t rename. Declare only if missing.
14287         Change the conditional link warning.
14288         (mbscasestr): New declaration.
14289         * m4/mbscasestr.m4: New file.
14290         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Enable the replacement only if
14291         the system does not have strcasestr. Set HAVE_STRCASESTR instead of
14292         REPLACE_STRCASESTR.
14293         (gl_PREREQ_STRCASESTR): Don't require gl_FUNC_MBRTOWC.
14294         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
14295         HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
14296         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSCASESTR.
14297         * modules/string (string.h): Also substitute GNULIB_MBSCASESTR.
14298         Substitute HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
14299         * modules/strcasestr (Files): Remove m4/mbrtowc.m4.
14300         (Depends-on): Remove mbuiter.
14301         * MODULES.html.sh (Internationalization functions): Add mbscasestr.
14302
14303 2007-02-04  Bruno Haible  <bruno@clisp.org>
14304
14305         Simplify handling of strncasecmp.
14306         * lib/string_.h (strncasecmp): Remove test for GNULIB_STRCASE. Change
14307         the conditional link warning.
14308         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
14309         HAVE_STRCASECMP, not REPLACE_STRCASECMP.
14310         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Don't initialize GNULIB_STRCASE.
14311         * modules/strcase (configure.ac): Don't invoke
14312         gl_STRING_MODULE_INDICATOR.
14313         * modules/string (string.h): Don't substitute GNULIB_STRCASE.
14314
14315 2007-02-04  Bruno Haible  <bruno@clisp.org>
14316
14317         New module mbscasecmp, reduced goal of strcasecmp.
14318         * modules/mbscasecmp: New file.
14319         * lib/mbscasecmp.c: New file, copied from lib/strcasecmp.c.
14320         (mbscasecmp): Renamed from strcasecmp.
14321         * lib/strcasecmp.c: Don't include mbuiter.h.
14322         (strcasecmp): Remove support for multibyte locales.
14323         * lib/string_.h (strcasecmp): Don`t rename. Declare only if missing.
14324         Change the conditional link warning.
14325         (mbscasecmp): New declaration.
14326         * m4/mbscasecmp.m4: New file.
14327         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Enable the replacement only if
14328         the system lacks strcasecmp. Set HAVE_STRCASECMP instead of
14329         REPLACE_STRCASECMP.
14330         (gl_PREREQ_STRCASECMP): Don't require gl_FUNC_MBRTOWC.
14331         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
14332         GNULIB_MBSCASECMP.
14333         * modules/string (string.h): Also substitute GNULIB_MBSCASECMP.
14334         Substitute HAVE_STRCASECMP instead of REPLACE_STRCASECMP.
14335         * modules/strcase (Files): Remove m4/mbrtowc.m4.
14336         (Depends-on): Remove mbuiter.
14337         * MODULES.html.sh (Internationalization functions): Add mbscasecmp.
14338
14339 2007-02-04  Bruno Haible  <bruno@clisp.org>
14340
14341         New module mbsstr. Remove module strstr.
14342         * modules/mbsstr: New file.
14343         * modules/strstr: Remove file.
14344         * lib/mbsstr.c: Renamed from lib/strstr.c.
14345         (mbsstr): Renamed from strstr.
14346         * lib/string_.h (strstr): Remove declaration. Change the conditional
14347         link warning.
14348         (mbsstr): New declaration.
14349         * m4/mbsstr.m4: New file.
14350         * m4/strstr.m4: Remove file.
14351         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Don't initialize
14352         REPLACE_STRSTR.
14353         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSSTR.
14354         Don't initialize GNULIB_STRSTR.
14355         * modules/string (string.h): Also substitute GNULIB_MBSSTR. Don't
14356         substitute GNULIB_STRSTR and REPLACE_STRSTR.
14357         * MODULES.html.sh (Internationalization functions): Add mbsstr.
14358         (Support for systems lacking ANSI C 89): Remove strstr.
14359
14360 2007-02-04  Bruno Haible  <bruno@clisp.org>
14361
14362         New module mbsrchr.
14363         * modules/mbsrchr: New file.
14364         * lib/mbsrchr.c: New file.
14365         * lib/string_.h (strrchr): Add a conditional link warning.
14366         (mbsrchr): New declaration.
14367         * m4/mbsrchr.m4: New file.
14368         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
14369         GNULIB_MBSRCHR.
14370         * modules/string (string.h): Also substitute GNULIB_MBSRCHR.
14371         * MODULES.html.sh (Internationalization functions): Add mbsrchr.
14372
14373 2007-02-04  Bruno Haible  <bruno@clisp.org>
14374
14375         New module mbschr.
14376         * modules/mbschr: New file.
14377         * lib/mbschr.c: New file.
14378         * lib/string_.h (strchr): Add a conditional link warning.
14379         (mbschr): New declaration.
14380         * m4/mbschr.m4: New file.
14381         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
14382         GNULIB_MBSCHR.
14383         * modules/string (string.h): Also substitute GNULIB_MBSCHR.
14384         * MODULES.html.sh (Internationalization functions): Add mbschr.
14385
14386 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
14387
14388         * lib/stdbool_.h: Mention that bool bit-fields aren't supported.
14389
14390         * modules/stdarg (configure.ac-early): Require AC_PROG_CC_STDC.
14391
14392 2007-02-04  Bruno Haible  <bruno@clisp.org>
14393
14394         New module description section 'configure.ac-early'.
14395         * gnulib-tool (sed_extract_prog): Recognize configure.ac-early.
14396         (func_get_autoconf_early_snippet): New function.
14397         (func_import, func_create_testdir): Use it. Remove special cases for
14398         modules 'extensions' and 'lock'.
14399         * modules/extensions (configure.ac-early): Require
14400         gl_USE_SYSTEM_EXTENSIONS.
14401         * modules/lock (configure.ac-early): Require gl_LOCK_EARLY.
14402
14403 2007-02-04  Bruno Haible  <bruno@clisp.org>
14404
14405         Make use of gcj-4.3's -fsource and -ftarget option.
14406         * m4/javacomp.m4 (gt_JAVACOMP): Test whether gcj is in version >= 4.3,
14407         and if so try the options -fsource and -ftarget.
14408         * lib/javacomp.c (compile_using_gcj): Add fsource_option,
14409         source_version, ftarget_option, target_version arguments.
14410         (is_envjavac_gcj43, is_envjavac_gcj43_usable): New functions.
14411         (is_envjavac_oldgcj_14_14_usable): Renamed from
14412         is_envjavac_gcj_14_14_usable.
14413         (is_envjavac_oldgcj_14_13_usable): Renamed from
14414         is_envjavac_gcj_14_13_usable.
14415         (is_gcj_present): Update.
14416         (is_gcj_43, is_gcj43_usable): New functions.
14417         (is_oldgcj_14_14_usable): Renamed from is_gcj_14_14_usable. Update.
14418         (is_oldgcj_14_13_usable): Renamed from is_gcj_14_13_usable. Update.
14419         (compile_java_class): Test whether gcj is in version >= 4.3, and if so
14420         try the options -fsource and -ftarget.
14421
14422 2007-02-03  Paul Eggert  <eggert@cs.ucla.edu>
14423
14424         * lib/xalloc.h (x2nrealloc): Fix an unlikely bug in the overflow
14425         checking code.  Set N = ceil (1.5 * N) rather than to a slightly
14426         larger value.
14427
14428 2007-02-03  Jim Meyering  <jim@meyering.net>
14429
14430         Give tools a better chance to allocate space for very large buffers.
14431         * lib/xalloc.h (x2nrealloc): Use 3/2, not 2, as buffer size factor.
14432
14433         Make pwd and readlink work also when run with an unreadable parent dir
14434         on systems with openat support.
14435         * lib/getcwd.c (__getcwd) [HAVE_PARTLY_WORKING_GETCWD]: Use the system
14436         provided getcwd function, even when we have openat support.
14437         Reported by Dmitry V. Levin in <http://bugzilla.redhat.com/227168>.
14438
14439 2007-02-02  Bruno Haible  <bruno@clisp.org>
14440
14441         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
14442         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): Provoke a link
14443         error only if GNULIB_POSIXCHECK is defined. Needed to avoid artificial
14444         portability problems if one of these functions is only used on specific
14445         platforms.
14446         Reported by Paul Eggert.
14447
14448 2007-02-02  Paul Eggert  <eggert@cs.ucla.edu>
14449
14450         Avoid mempcpy in the regex code, as the string.h mempcpy stuff
14451         is causing more trouble than it's curing.
14452         * lib/regex_internal.h (__mempcpy): Remove.
14453         * lib/regcomp.c (regerror): Rewrite to avoid the need for mempcpy
14454         (and make the code a tad smaller to boot).
14455         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for mempcpy.
14456
14457 2007-02-02  Jim Meyering  <jim@meyering.net>
14458
14459         * modules/arpa_inet: Put AC_PROG_MKDIR_P in the configure.ac:
14460         section, not in the Makefile.am: one.
14461
14462 2007-02-02  Eric Blake  <ebb9@byu.net>
14463
14464         * lib/strchrnul.c: Always include config.h first.
14465
14466         * modules/mountlist (Depends-on): Revert 2007-01-31 change,
14467         gnulib strstr is not necessary here.
14468
14469 2007-02-02  Simon Josefsson  <simon@josefsson.org>
14470
14471         * m4/socklen.m4: Fix typo.
14472
14473 2007-02-02  Eric Blake  <ebb9@byu.net>
14474
14475         * modules/arpa_inet (Makefile.am): Use MKDIR_P to avoid races.
14476         * modules/netinet_in (Makefile.am): Likewise.
14477
14478 2007-02-01  Bruno Haible  <bruno@clisp.org>
14479
14480         * lib/string_.h (GL_LINK_WARNING): New macro.
14481         (strcasecmp, strstr, strcasestr): If provided by the system,
14482         conditionally define as a macro that leads to a warning instead of to
14483         an error.
14484         (strncasecmp): Conditionally define as a macro that leads to a warning.
14485
14486 2007-02-01  Karl Berry  <karl@gnu.org>
14487
14488         * config/srclist.txt (strtok_r.c): lose sync, no more strtok_r.h.
14489
14490 2007-02-01  Bruno Haible  <bruno@clisp.org>
14491
14492         * MODULES.html.sh (Unicode string functions): Update after 2007-01-27
14493         renamings.
14494
14495 2007-02-01  Eric Blake  <ebb9@byu.net>
14496
14497         * modules/regex (Depends-on): Revert dependence on mempcpy.
14498         * lib/regex_internal.h [! _LIBC && !__mempcpy]: Undo string
14499         module's definition of mempcpy.
14500         Reported by Paul Eggert.
14501
14502 2007-02-01  Paul Eggert  <eggert@cs.ucla.edu>
14503
14504         * lib/string_.h: If the gnulib module XYZ is not present, undefine
14505         the symbol XYZ before redefining it.  This fixes a problem with
14506         programs that don't use XYZ, when compiled on systems that define
14507         XYZ to something else.
14508
14509 2007-01-31  Paul Eggert  <eggert@cs.ucla.edu>
14510
14511         * lib/mkdir-p.c (make_dir_parents): Close a race condition that
14512         occurs when "mkdir -m foo" creates a setgid directory that is (1)
14513         writeable to group or other and (2) is intended to have a special
14514         mode bit that is set or cleared.  In such a case, the directory
14515         should be neither group- nor other-writeable until the special
14516         mode bits are right.
14517
14518 2007-01-31  Eric Blake  <ebb9@byu.net>
14519
14520         * modules/mountlist (Depends-on): Add strstr.
14521
14522         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): Correct m4 usage
14523         bug.
14524         * modules/string (Makefile.am): Remove redundant replacement.
14525         * modules/regex (Depends-on): Add mempcpy.
14526
14527 2007-01-31  Bruno Haible  <bruno@clisp.org>
14528
14529         New module description field 'Link'.
14530         * gnulib-tool (func_usage): Document --extract-link-directive.
14531         (sed_extract_prog): Recognize 'Link' directive.
14532         (func_get_link_directive): New function.
14533         (func_import): Show summary of link directives.
14534         Handle --extract-link-directive option.
14535         * modules/acl (Link): New section.
14536         * modules/clock-time (Link): New section.
14537         * modules/euidaccess (Link): New section.
14538         * modules/gettext (Link): New section.
14539         * modules/iconv (Link): New section.
14540         * modules/lock (Link): New section.
14541         * modules/nanosleep (Link): New section.
14542         * modules/readline (Link): New section.
14543
14544 2007-01-27  Bruno Haible  <bruno@clisp.org>
14545
14546         Enforce the use of gnulib modules for unportable <string.h> functions.
14547         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): New macro.
14548         (gl_STRING_MODULE_INDICATOR_DEFAULTS): New macro.
14549         (gl_HEADER_STRING_H_BODY): Require it.
14550         * lib/string_.h: If the gnulib module XYZ is not present, redefine
14551         the symbol XYZ to one that gives a link error.
14552         * modules/string (Makefile.am): Also substitute the GNULIB_* variables.
14553         * modules/memmem (configure.ac): Invoke gl_STRING_MODULE_INDICATOR.
14554         * modules/mempcpy (configure.ac): Likewise.
14555         * modules/memrchr (configure.ac): Likewise.
14556         * modules/stpcpy (configure.ac): Likewise.
14557         * modules/stpncpy (configure.ac): Likewise.
14558         * modules/strcase (configure.ac): Likewise.
14559         * modules/strcasestr (configure.ac): Likewise.
14560         * modules/strchrnul (configure.ac): Likewise.
14561         * modules/strdup (configure.ac): Likewise.
14562         * modules/strndup (configure.ac): Likewise.
14563         * modules/strnlen (configure.ac): Likewise.
14564         * modules/strpbrk (configure.ac): Likewise.
14565         * modules/strsep (configure.ac): Likewise.
14566         * modules/strstr (configure.ac): Likewise.
14567         * modules/strtok_r (configure.ac): Likewise.
14568
14569 2007-01-31  Jean-Louis Martineau  <martineau@zmanda.com>  (tiny change)
14570
14571         * lib/gai_strerror.c (values): Add EAI_OVERFLOW.
14572
14573 2007-01-30  Jim Meyering  <jim@meyering.net>
14574
14575         * lib/mpsort.c (mpsort): Remove spurious "return" in void function.
14576
14577 2007-01-29  Bruno Haible  <bruno@clisp.org>
14578
14579         * lib/allocsa.h: Use '#if HAVE_*' instead of '#ifdef HAVE_*'.
14580         * lib/execute.c: Likewise.
14581         * lib/pipe.c: Likewise.
14582         * lib/printf-args.h: Likewise.
14583         * lib/printf-args.c: Likewise.
14584         * lib/printf-parse.c: Likewise.
14585         * lib/vasnprintf.c: Likewise.
14586
14587 2007-01-29  Eric Blake  <ebb9@byu.net>
14588
14589         * lib/memrchr.c: Assume <string.h> unconditionally, to pull in
14590         declaration.
14591
14592 2007-01-29  Paul Eggert  <eggert@cs.ucla.edu>
14593
14594         * lib/strptime.h (strptime): Use 'restrict' for args where
14595         POSIX requires this.
14596         * lib/strptime.c (strptime): Likewise.
14597         Change license notice from LGPL to GPL, since gnulib-tool will
14598         change this as needed.
14599         Include <config.h> if _LIBC is not defined, not if HAVE_CONFIG_H is
14600         defined.
14601         Include "strptime.h" first, to check interface.
14602         Do not #undef _LIBC and _NL_CURRENT.
14603         Do not include <stdlib.h>; no longer needed.
14604         Include "time_r.h" and declare ptime_locale_status
14605         only if _LIBC is not defined.
14606         (__P): Remove unused macro.
14607         (match_string): Bring back glibc version, but use it only if _LIBC
14608         is defined.
14609         (__strptime_internal): Compile tm_gmtoff code if _LIBC is defined, too.
14610         Remove unnecessary assertion and abort() call.
14611         Use #ifdef _NL_CURRENT rather than #if 0, for benefit of glibc.
14612         * m4/strptime.m4: Fix serial number comment.
14613         (gl_FUNC_STRPTIME): Require AC_C_RESTRICT, gl_TM_GMTOFF.
14614         * modules/strptime (Files): Add m4/tm_gmtoff.m4.
14615         (Depends-on): Add time_r.
14616
14617 2007-01-29  Bruno Haible  <bruno@clisp.org>
14618
14619         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
14620         strptime.
14621         * modules/strptime (Depends-on): Add stdbool.
14622         * lib/strptime.h: Include <time.h> always. Add comments.
14623
14624 2007-01-29  Yoann Vandoorselaere  <yoann@prelude-ids.org>
14625
14626         * modules/strptime: New file.
14627         * lib/strptime.h: New file.
14628         * lib/strptime.c: New file.
14629         * m4/strptime.m4: New file.
14630
14631 2007-01-28  Paul Eggert  <eggert@cs.ucla.edu>
14632
14633         * MODULES.html.sh: New module mpsort.
14634         * lib/mpsort.c, lib/mpsort.h, m4/mpsort.m4, modules/mpsort: New files.
14635
14636         * lib/regex.h (_Restrict_): Renamed from __restrict, to avoid
14637         a circularity problem with HP-UX ia64 reported by Bob Proulx in
14638         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00394.html>.
14639         All uses changed.
14640         (_Restrict_arr_): Renamed from __restrict_arr, for similar reasons.
14641         All uses changed.
14642         * lib/regcomp.c, lib/regexec.c: Change all uses from __restrict
14643         to _Restrict_.
14644         * lib/regexec.c (regexec): Declare pmatch with _Restrict_arr_, so that
14645         the parameter matches the prototype.
14646
14647 2007-01-28  Jim Meyering  <jim@meyering.net>
14648
14649         * modules/sys_time (Makefile.am) [MOSTLYCLEANFILES]: Do use
14650         sys/time.h here, reverting that part of the previous patch:
14651         <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/8959>.
14652
14653 2007-01-28  Bruno Haible  <bruno@clisp.org>
14654
14655         * modules/sys_time (Makefile.am): Build sys/time.h only when it's the
14656         value of $(SYS_TIME_H).
14657         [MOSTLYCLEANFILES]: Now that sys/time.h is created only when needed,
14658         remove it conditionally, too. [added by Jim Meyering]
14659         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Set SYS_TIME_H.
14660         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
14661         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Set SYS_TIME_H when setting
14662         GETTIMEOFDAY_REPLACEMENT to 1.
14663
14664 2007-01-28  Bruno Haible  <bruno@clisp.org>
14665
14666         * m4/unistd_h.m4 (gl_HEADER_UNISTD_DEFAULTS): New macro.
14667         (gl_HEADER_UNISTD): Require it. Don't set UNISTD_H to empty here.
14668         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_HEADER_UNISTD_DEFAULTS.
14669         Set UNISTD_H instead of UNISTD_H2.
14670         * modules/fchdir (BUILT_SOURCES): Drop $(UNISTD_H2).
14671
14672 2007-01-28  Bruno Haible  <bruno@clisp.org>
14673
14674         * modules/mbchar (Makefile.am): Add mbchar.c to lib_SOURCES.
14675         * m4/mbchar.m4 (gl_MBCHAR): Remove AC_LIBOBJ invocation.
14676
14677 2007-01-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14678
14679         * gnulib-tool (func_emit_lib_Makefile_am, func_add_or_update)
14680         (func_create_testdir): Ensure C locale for `grep' and `tr'
14681         character ranges.
14682         (func_create_megatestdir): Avoid one `grep'.  Fix bug in
14683         ACLOCAL_AMFLAGS parsing state machine.
14684
14685 2007-01-27  Bruno Haible  <bruno@clisp.org>
14686
14687         * modules/unistr/base: Update.
14688
14689 2007-01-27  Bruno Haible  <bruno@clisp.org>
14690
14691         Rename u32-mbtouc -> u32-mbtouc-unsafe, u32-mbtouc-safe -> u32-mbtouc,
14692         u32_mbtouc -> u32_mbtouc_unsafe, u32_mbtouc_safe -> u32_mbtouc.
14693         * modules/unistr/u32-mbtouc-unsafe: Renamed from
14694         modules/unistr/u32-mbtouc.
14695         * lib/unistr/u32-mbtouc-unsafe.c: Renamed from lib/unistr/u32-mbtouc.c.
14696         * lib/unistr.h: Update.
14697         * lib/linebreak.c: Update.
14698         * modules/unistr/u32-mbtouc: Renamed from
14699         modules/unistr/u32-mbtouc-safe.
14700         * lib/unistr/u32-mbtouc.c: Renamed from lib/unistr/u32-mbtouc-safe.c.
14701         * lib/unistr.h: Update.
14702         * lib/unistr/u32-to-u8.c: Update.
14703         * lib/unistr/u32-to-u16.c: Update.
14704
14705 2007-01-27  Bruno Haible  <bruno@clisp.org>
14706
14707         Rename utf16-ucs4 -> utf16-ucs4-unsafe, utf16-ucs4-safe -> utf16-ucs4,
14708         u16_mbtouc -> u16_mbtouc_unsafe, u16_mbtouc_safe -> u16_mbtouc.
14709         * modules/utf16-ucs4-unsafe: Renamed from modules/utf16-ucs4.
14710         * lib/utf16-ucs4-unsafe.h: Renamed from lib/utf16-ucs4.h.
14711         * lib/unistr/utf16-ucs4-unsafe.c: Renamed from lib/unistr/utf16-ucs4.c.
14712         * modules/unistr/u16-mbtouc-unsafe: Renamed from
14713         modules/unistr/u16-mbtouc.
14714         * lib/unistr/u16-mbtouc-unsafe.c: Renamed from lib/unistr/u16-mbtouc.c.
14715         * lib/unistr.h: Update.
14716         * lib/linebreak.c: Update.
14717         * modules/linebreak: Update.
14718         * modules/utf16-ucs4: Renamed from modules/utf16-ucs4-safe.
14719         * lib/utf16-ucs4.h: Renamed from lib/utf16-ucs4-safe.h.
14720         * lib/unistr/utf16-ucs4.c: Renamed from lib/unistr/utf16-ucs4-safe.c.
14721         * modules/unistr/u16-mbtouc: Renamed from
14722         modules/unistr/u16-mbtouc-safe.
14723         * lib/unistr/u16-mbtouc.c: Renamed from lib/unistr/u16-mbtouc-safe.c.
14724         * lib/unistr.h: Update.
14725         * lib/unistr/u16-to-u8.c: Update.
14726         * modules/unistr/u16-to-u8: Update.
14727         * lib/unistr/u16-to-u32.c: Update.
14728         * modules/unistr/u16-to-u32: Update.
14729
14730 2007-01-27  Bruno Haible  <bruno@clisp.org>
14731
14732         Rename utf8-ucs4 -> utf8-ucs4-unsafe, utf8-ucs4-safe -> utf8-ucs4,
14733         u8_mbtouc -> u8_mbtouc_unsafe, u8_mbtouc_safe -> u8_mbtouc.
14734         * modules/utf8-ucs4-unsafe: Renamed from modules/utf8-ucs4.
14735         * lib/utf8-ucs4-unsafe.h: Renamed from lib/utf8-ucs4.h.
14736         * lib/unistr/utf8-ucs4-unsafe.c: Renamed from lib/unistr/utf8-ucs4.c.
14737         * modules/unistr/u8-mbtouc-unsafe: Renamed from
14738         modules/unistr/u8-mbtouc.
14739         * lib/unistr/u8-mbtouc-unsafe.c: Renamed from lib/unistr/u8-mbtouc.c.
14740         * lib/unistr.h: Update.
14741         * lib/striconveh.c: Update.
14742         * modules/striconveh: Update.
14743         * lib/linebreak.c: Update.
14744         * modules/linebreak: Update.
14745         * modules/utf8-ucs4: Renamed from modules/utf8-ucs4-safe.
14746         * lib/utf8-ucs4.h: Renamed from lib/utf8-ucs4-safe.h.
14747         * lib/unistr/utf8-ucs4.c: Renamed from lib/unistr/utf8-ucs4-safe.c.
14748         * modules/unistr/u8-mbtouc: Renamed from modules/unistr/u8-mbtouc-safe.
14749         * lib/unistr/u8-mbtouc.c: Renamed from lib/unistr/u8-mbtouc-safe.c.
14750         * lib/unistr.h: Update.
14751         * lib/striconveh.c: Update.
14752         * modules/striconveh: Update.
14753         * lib/unistr/u8-to-u16.c: Update.
14754         * modules/unistr/u8-to-u16: Update.
14755         * lib/unistr/u8-to-u32.c: Update.
14756         * modules/unistr/u8-to-u32: Update.
14757
14758 2007-01-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14759
14760         Sync from Libtool.
14761         * lib/argz.c: Do not include strings.h nor memory.h, include
14762         string.h unconditionally.  Patch by Simon Josefsson.
14763
14764 2007-01-27  Bruno Haible  <bruno@clisp.org>
14765
14766         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): New macro, extracted
14767         from gl_HEADER_STRING_H_BODY.
14768         (gl_HEADER_STRING_H_BODY): Require it.
14769         * m4/memmem.m4 (gl_FUNC_MEMMEM): Require gl_HEADER_STRING_H_DEFAULTS.
14770         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
14771         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
14772         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
14773         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
14774         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP): Likewise.
14775         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
14776         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
14777         * m4/strdup.m4 (gl_FUNC_STRDUP): Likewise.
14778         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
14779         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
14780         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Likewise.
14781         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
14782         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
14783         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
14784
14785 2007-01-27  Bruno Haible  <bruno@clisp.org>
14786
14787         * gnulib-tool (func_emit_lib_Makefile_am): If $for_test is true, turn
14788         check_PROGRAMS into noinst_PROGRAMS.
14789         (func_emit_tests_Makefile_am): Likewise. Also don't initialize
14790         check_PROGRAMS in this case.
14791         (func_import): Set for_test to false.
14792         (func_create_testdir): Set for_test to true.
14793
14794 2007-01-27  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
14795             Bruno Haible  <bruno@clisp.org>
14796
14797         * modules/strcasestr (Files): Remove lib/strcasestr.h.
14798         (Depends-on): Add string.
14799         (Includes): Use <string.h> instead of strcasestr.h.
14800         * modules/string (Makefile.am): Also substitute the value of
14801         REPLACE_STRCASESTR.
14802         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Don't define strcasestr here;
14803         assume strcasestr is declared in <string.h> not <strings.h>. Also
14804         set REPLACE_STRCASESTR.
14805         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Provide a default value for
14806         REPLACE_STRCASESTR.
14807         * lib/strcasestr.h: Remove file.
14808         * lib/strcasestr.c: Include <string.h> instead of strcasestr.h.
14809         * lib/string_.h (strcasestr): New declaration.
14810
14811 2007-01-27  Bruno Haible  <bruno@clisp.org>
14812
14813         * lib/string_.h: Use 'extern'.
14814
14815 2007-01-27  Jim Meyering  <jim@meyering.net>
14816
14817         * lib/regex_internal.c (re_string_reconstruct): Remove declaration
14818         of set-but-not-used local, "q".
14819
14820         * lib/mempcpy.c: Include <config.h> before <string.h>.
14821         This fixes a compilation error on HP-UX, due to the system's
14822         "restrict"-using mempcpy prototype.
14823
14824 2007-01-26  Bruno Haible  <bruno@clisp.org>
14825
14826         Small optimization.
14827         * lib/javacomp.c: Include c-strstr.h.
14828          (is_envjavac_gcj): Use c_strstr instead of strstr.
14829         * modules/javacomp (Depends-on): Add c-strstr, remove strstr.
14830
14831 2007-01-26  Bruno Haible  <bruno@clisp.org>
14832
14833         * MODULES.html.sh (Unicode string functions): Add the new modules.
14834
14835         * modules/uniconv/u32-strconv-to-locale: New file.
14836         * lib/uniconv/u32-strconv-to-locale.c: New file.
14837
14838         * modules/uniconv/u16-strconv-to-locale: New file.
14839         * lib/uniconv/u16-strconv-to-locale.c: New file.
14840
14841         * modules/uniconv/u8-strconv-to-locale: New file.
14842         * lib/uniconv/u8-strconv-to-locale.c: New file.
14843
14844         * modules/uniconv/u32-strconv-from-locale: New file.
14845         * lib/uniconv/u32-strconv-from-locale.c: New file.
14846
14847         * modules/uniconv/u16-strconv-from-locale: New file.
14848         * lib/uniconv/u16-strconv-from-locale.c: New file.
14849
14850         * modules/uniconv/u8-strconv-from-locale: New file.
14851         * lib/uniconv/u8-strconv-from-locale.c: New file.
14852
14853         * modules/uniconv/u32-strconv-to-enc: New file.
14854         * lib/uniconv/u32-strconv-to-enc.c: New file.
14855         * modules/uniconv/u32-strconv-to-enc-tests: New file.
14856         * tests/uniconv/test-u32-strconv-to-enc.c: New file.
14857
14858         * modules/uniconv/u16-strconv-to-enc: New file.
14859         * lib/uniconv/u16-strconv-to-enc.c: New file.
14860         * lib/uniconv/u-strconv-to-enc.h: New file.
14861         * modules/uniconv/u16-strconv-to-enc-tests: New file.
14862         * tests/uniconv/test-u16-strconv-to-enc.c: New file.
14863
14864         * modules/uniconv/u8-strconv-to-enc: New file.
14865         * lib/uniconv/u8-strconv-to-enc.c: New file.
14866         * modules/uniconv/u8-strconv-to-enc-tests: New file.
14867         * tests/uniconv/test-u8-strconv-to-enc.c: New file.
14868
14869         * modules/uniconv/u32-strconv-from-enc: New file.
14870         * lib/uniconv/u32-strconv-from-enc.c: New file.
14871         * modules/uniconv/u32-strconv-from-enc-tests: New file.
14872         * tests/uniconv/test-u32-strconv-from-enc.c: New file.
14873
14874         * modules/uniconv/u16-strconv-from-enc: New file.
14875         * lib/uniconv/u16-strconv-from-enc.c: New file.
14876         * modules/uniconv/u16-strconv-from-enc-tests: New file.
14877         * tests/uniconv/test-u16-strconv-from-enc.c: New file.
14878
14879         * modules/uniconv/u8-strconv-from-enc: New file.
14880         * lib/uniconv/u8-strconv-from-enc.c: New file.
14881         * lib/uniconv/u-strconv-from-enc.h: New file.
14882         * modules/uniconv/u8-strconv-from-enc-tests: New file.
14883         * tests/uniconv/test-u8-strconv-from-enc.c: New file.
14884
14885         * modules/uniconv/u32-conv-from-enc: New file.
14886         * lib/uniconv/u32-conv-from-enc.c: New file.
14887         * modules/uniconv/u32-conv-from-enc-tests: New file.
14888         * tests/uniconv/test-u32-conv-from-enc.c: New file.
14889
14890         * modules/uniconv/u16-conv-from-enc: New file.
14891         * lib/uniconv/u16-conv-from-enc.c: New file.
14892         * lib/uniconv/u-conv-from-enc.h: New file.
14893         * modules/uniconv/u16-conv-from-enc-tests: New file.
14894         * tests/uniconv/test-u16-conv-from-enc.c: New file.
14895
14896         * modules/uniconv/u8-conv-from-enc: New file.
14897         * lib/uniconv/u8-conv-from-enc.c: New file.
14898         * modules/uniconv/u8-conv-from-enc-tests: New file.
14899         * tests/uniconv/test-u8-conv-from-enc.c: New file.
14900
14901         * modules/uniconv/base: New file.
14902         * lib/uniconv.h: New file.
14903
14904 2007-01-26  Paul Eggert  <eggert@cs.ucla.edu>
14905
14906         * doc/gnulib-tool.texi (Initial import): Update to match current
14907         behavior with strdup module.
14908         * lib/.cppi-disable: Remove strcase.h, strdup.h, strndup.h, strnlen.h.
14909         * lib/memmem.h: Remove; all uses removed.  This is now done
14910         by <string.h>.
14911         * lib/mempcpy.h: Likewise.
14912         * lib/memrchr.h: Likewise.
14913         * lib/stpcpy.h: Likewise.
14914         * lib/stpncpy.h: Likewise.
14915         * lib/strcase.h: Likewise.
14916         * lib/strchrnul.h: Likewise.
14917         * lib/strdup.h: Likewise.
14918         * lib/strndup.h: Likewise.
14919         * lib/strnlen.h: Likewise.
14920         * lib/strpbrk.h: Likewise.
14921         * lib/strsep.h: Likewise.
14922         * lib/strstr.h: Likewise.
14923         * lib/strtok_r.h: Likewise.
14924         * lib/string_.h: New file.
14925         * lib/argp-namefrob.h: Don't include no-longer-existent include files.
14926         Rely on <string.h> instead.
14927         * lib/canon-host.c: Likewise.
14928         * lib/chdir-long.c: Likewise.
14929         * lib/concatpath.c: Likewise.
14930         * lib/exclude.c: Likewise.
14931         * lib/fchdir.c: Likewise.
14932         * lib/getaddrinfo.c: Likewise.
14933         * lib/getcwd.c: Likewise.
14934         * lib/getsubopt.c: Likewise.
14935         * lib/glob.c: Likewise.
14936         * lib/hard-locale.c: Likewise.
14937         * lib/iconvme.c: Likewise.
14938         * lib/javacomp.c: Likewise.
14939         * lib/mempcpy.c: Likewise.
14940         * lib/memrchr.c: Likewise.
14941         * lib/regex_internal.h: Likewise.
14942         * lib/stpncpy.c: Likewise.
14943         * lib/strcasecmp.c: Likewise.
14944         * lib/strchrnul.c: Likewise.
14945         * lib/strdup.c: Likewise.
14946         * lib/striconv.c: Likewise.
14947         * lib/striconveh.c: Likewise.
14948         * lib/striconveha.c: Likewise.
14949         * lib/strncasecmp.c: Likewise.
14950         * lib/strndup.c: Likewise.
14951         * lib/strnlen.c: Likewise.
14952         * lib/strsep.c: Likewise.
14953         * lib/strstr.c: Likewise.
14954         * lib/strtok_r.c: Likewise.
14955         * lib/userspec.c: Likewise.
14956         * lib/w32spawn.h: Likewise.
14957         * lib/xstrndup.c: Likewise.
14958         * lib/mountlist.c (strstr): Remove decl.
14959         * m4/string_h.m4: New file.
14960         * m4/memmem.m4 (gl_FUNC_MEMMEM): Set HAVE_DECL_MEMMEM if necessary.
14961         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Set HAVE_MEMPCPY if necessary.
14962         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Set HAVE_MEMRCHR
14963         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Set HAVE_STPCPY if necessary.
14964         * m4/stpncpy.m4 (gl_PREREQ_STPNCPY): Set HAVE_STPNCPY if necessary.
14965         * m4/strcase.m4 (gl_FUNC_STRCASECMP):
14966         Set REPLACE_STRCASECMP if necessary.
14967         (gl_FUNC_STRNCASECMP): Set HAVE_DECL_STRNCASECMP if necessary.
14968         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Set HAVE_STRCHRNUL if necessary.
14969         * m4/strdup.m4 (gl_FUNC_STRDUP): Set HAVE_DECL_STRDUP if necessary.
14970         * m4/strndup.m4 (gl_FUNC_STRNDUP): Set HAVE_DECL_STRNLEN and
14971         HAVE_DECL_STRDUP if necessary.
14972         (gl_PREREQ_STRNLEN): Don't bother to check for strnlen decl,
14973         since gl_FUNC_STRNDUP does that now.
14974         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Set HAVE_DECL_STRNLEN if necessary.
14975         Check for decl here...
14976         (gl_PREREQ_STRNLEN): ... not here.
14977         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Set HAVE_STRPBRK if necessary.
14978         * m4/strsep.m4 (gl_FUNC_STRSEP): Set HAVE_STRSEP if necessary.
14979         * m4/strstr.m4 (gl_FUNC_STRSTR): Set REPLACE_STRSTR if necessary.
14980         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Set HAVE_DECL_STRTOK_R if
14981         necessary.
14982         * modules/string: New file.
14983         * modules/memmem (Files): Remove special-purpose include file.
14984         (Depends-on): Add string.
14985         (Include): Include <string.h>, not the removed file.
14986         * modules/mempcpy: Likewise.
14987         * modules/memrchr: Likewise.
14988         * modules/stpcpy: Likewise.
14989         * modules/stpncpy: Likewise.
14990         * modules/strcase: Likewise.
14991         * modules/strchrnul: Likewise.
14992         * modules/strdup: Likewise.
14993         * modules/strndup: Likewise.
14994         * modules/strnlen: Likewise.
14995         * modules/strpbrk: Likewise.
14996         * modules/strsep: Likewise.
14997         * modules/strstr: Likewise.
14998         * modules/strtok_r: Likewise.
14999         * tests/test-dirname.c: Don't include "strdup.h", since
15000         <string.h> now suffices.
15001         * tests/test-memmem.c: Don't include "memmem.h", since
15002         <string.h> now suffices.
15003
15004 2007-01-25  Bruno Haible  <bruno@clisp.org>
15005
15006         * lib/striconveh.c (mem_cd_iconveh_internal): Ignore *lengthp if
15007         *resultp is 0.
15008
15009         * lib/unistr/u16-to-u8.c (u16_to_u8): Fix u8_uctomb invocation.
15010         * lib/unistr/u32-to-u8.c (u32_to_u8): Likewise.
15011         * lib/unistr/u8-to-u16.c (u8_to_u16): Fix u16_uctomb invocation.
15012         * lib/unistr/u32-to-u16.c (u32_to_u16): Likewise.
15013
15014         * modules/unistr/u8-to-u16 (Depends-on): Add missing modules.
15015         * modules/unistr/u8-to-u32 (Depends-on): Add missing modules.
15016         * modules/unistr/u16-to-u8 (Depends-on): Add missing modules.
15017         * modules/unistr/u16-to-u32 (Depends-on): Add missing modules.
15018         * modules/unistr/u32-to-u8 (Depends-on): Add missing modules.
15019         * modules/unistr/u32-to-u16 (Depends-on): Add missing modules.
15020
15021 2007-01-24  Bruno Haible  <bruno@clisp.org>
15022
15023         Don't AC_REQUIRE autoconf macros that invoke AC_LIBOBJ. See
15024         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00279.html>.
15025         * m4/argp.m4 (gl_ARGP): Invoke, don't require, gl_GETOPT_SUBSTITUTE.
15026         * m4/fts.m4 (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): Invoke, don't require,
15027         gl_FUNC_FTS_CORE.
15028         (gl_FUNC_FTS_CORE): Invoke, don't require, gl_FUNC_OPENAT.
15029         * m4/lstat.m4 (gl_FUNC_LSTAT): Invoke, don't require,
15030         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
15031         * m4/memcmp.m4 (gl_FUNC_MEMCMP): Invoke, don't require, AC_FUNC_MEMCMP.
15032         * m4/mktime.m4 (gl_FUNC_MKTIME): Invoke, don't require, AC_FUNC_MKTIME.
15033         * m4/openat.m4 (gl_FUNC_OPENAT): Invoke, don't require,
15034         gl_FUNC_FCHOWNAT.
15035         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Invoke, don't require,
15036         gl_FUNC_STRFTIME.
15037         * m4/strtod.m4 (gl_FUNC_STRTOD): Invoke, don't require, AC_FUNC_STRTOD.
15038         Reported by Ralf Wildenhues.
15039
15040 2007-01-24  Bruno Haible  <bruno@clisp.org>
15041
15042         Drop AC_REQUIRE calls that are redundant with the module dependencies.
15043         * m4/canon-host.m4 (gl_PREREQ_CANON_HOST): Don't require
15044         gl_GETADDRINFO.
15045         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Don't require AM_STDBOOL_H,
15046         gl_FUNC_MEMPCPY, gl_FUNC_OPENAT, gl_FUNC_MEMRCHR.
15047         * m4/openat.m4 (gl_PREREQ_OPENAT): Don't require gl_SAVE_CWD.
15048
15049 2007-01-24  Paul Eggert  <eggert@cs.ucla.edu>
15050
15051         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Add test for glibc bug 361.
15052         Don't use 'exit'; just return from 'main'.
15053         (_AC_LIBOBJ_FNMATCH): Check for headers and functions just once.
15054
15055         * lib/fnmatch_.h: Readjust white space and comments to match
15056         glibc, to avoid spurious diffs.
15057
15058 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
15059
15060         * lib/fnmatch_loop.c (internal_fnmatch) [!_LIBC]: #if-out the
15061         2004-12-01 change by Jakub Jelinek, since this code won't compile
15062         if !LIBC.  Problem reported by Bob Proulx.
15063
15064 2007-01-23  Bruno Haible  <bruno@clisp.org>
15065
15066         * lib/striconveh.c: Include c-strcaseeq.h.
15067         (mem_iconveh, str_iconveh): Use STRCASEEQ instead of c_strcasecmp.
15068         * modules/striconveh (Depends-on): Add c-strcaseeq.
15069
15070 2007-01-23  Bruno Haible  <bruno@clisp.org>
15071
15072         * MODULES.html.sh (String handling): Add streq, c-strcaseeq.
15073
15074         * modules/c-strcaseeq: New file.
15075         * lib/c-strcaseeq.h: New file.
15076
15077         * modules/streq: New file.
15078         * lib/streq.h: New file.
15079
15080 2007-01-23  Bruno Haible  <bruno@clisp.org>
15081
15082         * modules/striconveha-tests: New file.
15083         * tests/test-striconveha.c: New file.
15084
15085         * lib/striconveha.h: Include <stdbool.h>.
15086         (mem_iconveha, str_iconveha): Add 'transliterate' argument.
15087         * lib/striconveha.c: Include allocsa.h, strdup.h, c-strcase.h.
15088         (mem_iconveha_notranslit): Renamed from mem_iconveha.
15089         (mem_iconveha): New function.
15090         (str_iconveha_notranslit): Renamed from str_iconveha.
15091         (str_iconveha): New function.
15092         * modules/striconveha (Depends-on): Add stdbool, allocsa, strdup,
15093         c-strcase.
15094
15095 2007-01-23  Bruno Haible  <bruno@clisp.org>
15096
15097         * lib/striconveha.c (mem_iconveha): Fix endless recursion. Try all
15098         encodings without forgiving before trying any encoding with handler.
15099         (str_iconveha): Try all encodings without forgiving before trying any
15100         encoding with handler.
15101
15102 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
15103
15104         Import the following changes from libc.
15105
15106         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
15107
15108         * lib/fnmatch_loop.c: Adjust for changed secondary hash function.
15109
15110         2004-12-01  Jakub Jelinek  <jakub@redhat.com>
15111
15112         * lib/fnmatch_loop.c (internal_fnmatch): Clear is_seqval after
15113         normal_bracket label.
15114
15115         2004-09-01  Jakub Jelinek  <jakub@redhat.com>
15116
15117         [BZ #361]
15118         * lib/fnmatch_loop.c (FCT): For backslash between brackets, branch
15119         to normal_bracket after fetching the next character.
15120
15121 2007-01-22  Bruno Haible  <bruno@clisp.org>
15122
15123         * lib/striconveh.h (mem_cd_iconveh, mem_iconveh): Add 'offsets'
15124         argument.
15125         * lib/striconveh.c (iconv_carefully_1): New function.
15126         (mem_cd_iconveh_internal, mem_cd_iconveh, mem_iconveh): Add 'offsets'
15127         argument.
15128         (str_cd_iconveh): Update.
15129         * lib/striconveha.h (mem_iconveha): Add 'offsets' argument.
15130         * lib/striconveha.c (mem_iconveha): Add 'offsets' argument.
15131         * tests/test-striconveh.c (MAGIC): New macro.
15132         (new_offsets): New function.
15133         (main): Test call with and without offsets.
15134
15135 2007-01-22  Bruno Haible  <bruno@clisp.org>
15136
15137         * modules/sys_stat (Makefile.am): Use @MKDIR_P@ instead of $(MKDIR_P).
15138         * modules/sys_select (Makefile.am): Likewise.
15139         * modules/sys_socket (Makefile.am): Likewise.
15140         * modules/sys_time (Makefile.am): Likewise.
15141
15142 2007-01-22  Paul Eggert  <eggert@cs.ucla.edu>
15143
15144         * modules/gettimeofday (License): Change from GPL to LGPL, since
15145         gettimeofday is a library function.
15146
15147 2007-01-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
15148
15149         * lib/poll.c (rpl_poll): Don't check against FD_SETSIZE under Win32.
15150
15151 2007-01-21  Bruno Haible  <bruno@clisp.org>
15152
15153         * m4/gnulib-common.m4 (AC_PROG_MKDIR_P): New macro.
15154
15155 2007-01-21  Bruno Haible  <bruno@clisp.org>
15156
15157         * modules/striconveha: New file.
15158         * lib/striconveha.h: New file.
15159         * lib/striconveha.c: New file.
15160         * MODULES.html.sh (Internationalization functions): Add striconveha.
15161         * lib/striconv.c (str_iconv): Optimize the case of an empty input
15162         string.
15163         * lib/striconveh.c (mem_iconveh, str_iconveh): Likewise.
15164
15165 2007-01-21  Bruno Haible  <bruno@clisp.org>
15166
15167         * lib/striconv.c (str_iconv): Guarantee errno is set when strdup fails.
15168         * lib/striconveh.c (str_iconveh): Likewise.
15169
15170 2007-01-21  Bruno Haible  <bruno@clisp.org>
15171
15172         * lib/striconveh.h (mem_iconveh): New declaration.
15173         * lib/striconveh.c (mem_iconveh): New function.
15174         * tests/test-striconveh.c (main): Add tests for mem_iconveh.
15175
15176 2007-01-21  Bruno Haible  <bruno@clisp.org>
15177
15178         * lib/xstriconv.h (xmem_cd_iconv): Change specification.
15179
15180         * lib/striconveh.h (mem_cd_iconveh): Change specification.
15181         * lib/striconveh.c (mem_cd_iconveh): Don't free the user-supplied
15182         original result buffer.
15183         (str_cd_iconveh): Update.
15184         * tests/test-striconveh.c (main): Update.
15185
15186         * lib/striconv.h (mem_cd_iconv): Change specification.
15187         * lib/striconv.c (mem_cd_iconv): Don't free the user-supplied original
15188         result buffer.
15189         (str_cd_iconv): Update.
15190         * tests/test-striconv.c (main): Update.
15191
15192 2007-01-21  Bruno Haible  <bruno@clisp.org>
15193
15194         * gnulib-tool: Fix test whether sed is GNU sed supporting --posix.
15195
15196 2007-01-20  Jim Meyering  <jim@meyering.net>
15197
15198         * lib/userspec.c (parse_with_separator): If a user or group string
15199         starts with "+", skip the corresponding name-to-ID look-up, since
15200         such a look-up must fail: user and group names may not include "+".
15201
15202 2007-01-19  Paul Eggert  <eggert@cs.ucla.edu>
15203
15204         * lib/poll.c: Include sys/time.h and time.h unconditionally,
15205         since we now assume the sys_time module.
15206         * m4/poll.m4 (gl_PREREQ_POLL): Don't require AC_HEADER_TIME or
15207         check for sys/time.h; no longer needed.
15208         * modules/poll (Depends-on): Depend on sys_time.
15209
15210 2007-01-18  Bruno Haible  <bruno@clisp.org>
15211
15212         * m4/mktime.m4 (AC_FUNC_MKTIME): Remove test for <sys/time.h>.
15213         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
15214
15215         * m4/tempname.m4 (gl_PREREQ_TEMPNAME): Remove tests for sys/time.h and
15216         gettimeofday.
15217
15218         * tests/test-gettimeofday.c: Include <time.h>.
15219         (dummy): Remove variable.
15220
15221         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Renamed from
15222         gl_HEADER_SYS_TIME_H.
15223         (gl_HEADER_SYS_TIME_H): New macro.
15224
15225         * lib/sys_time_.h: Test GETTIMEOFDAY_REPLACEMENT instead of
15226         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
15227         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY,
15228         gl_FUNC_GETTIMEOFDAY_CLOBBER): Set GETTIMEOFDAY_REPLACEMENT instead of
15229         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
15230         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H): Initialize
15231         GETTIMEOFDAY_REPLACEMENT instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE
15232         and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
15233         * modules/sys_time (sys/time.h): Substitute GETTIMEOFDAY_REPLACEMENT
15234         instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and
15235         GETTIMEOFDAY_CLOBBERS_LOCALTIME.
15236
15237         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Undo the
15238         last change; it caused a compilation error when cross-compiling to
15239         Cygwin.
15240
15241 2007-01-18  Jim Meyering  <jim@meyering.net>
15242
15243         Use "$(MKDIR_P) sys", not race-prone "test -d sys || mkdir sys".
15244         * modules/sys_stat (Makefile.am): Use "$(MKDIR_P) sys", rather
15245         than the race-prone "test -d sys || mkdir sys".
15246         (configure.ac): Use AC_PROG_MKDIR_P.
15247         * modules/sys_select: Likewise.
15248         * modules/sys_socket: Likewise.
15249         * modules/sys_time: Likewise.
15250
15251 2007-01-18  Eric Blake  <ebb9@byu.net>
15252
15253         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Also
15254         replace gettimeofday.
15255         * lib/gettimeofday.c (rpl_gettimeofday): Declare with replacement
15256         name, to avoid infinite recursion.
15257
15258 2007-01-17  Paul Eggert  <eggert@cs.ucla.edu>
15259
15260         * MODULES.html.sh (Support for systems lacking POSIX:2001): New
15261         module sys_time.
15262         * lib/gethrxtime.c: Include <sys/time.h>, since we can no longer
15263         assume timespec.h defines struct timeval.
15264         * lib/settime.c: Likewise.
15265         * lib/utimens.c: Likewise.
15266         * lib/gettime.c (gettime): Remove test against HAVE_GETTIMEOFDAY,
15267         since we now assume the gettimeofday module.
15268         * lib/tempname.c (__gen_tempname): Likewise.
15269         * lib/gettimeofday.h: Remove.
15270         * lib/gettimeofday.c: Include <sys/time.h> instead of "gettimeofday.h".
15271         Don't include <sys/types.h> and <stdlib.h>; shouldn't be needed.
15272         Include <time.h>, for 'time()'.
15273         (localtime_buffer_addr): Also use this workaround if
15274         TZSET_CLOBBERS_LOCALTIME.  Set to a dummy static variable by default,
15275         to simplify the uses.  All uses changed.
15276         (localtime, gmtime, tzset, gettimeofday): Reformat slightly so
15277         that #undef is inside {}, and 'const' follows type name consistently.
15278         (tzset): Define replacement only if TZSET_CLOBBERS_LOCALTIME.
15279         (gettimeofday): Do not use the maximum possible value for
15280         tv->tv_usec, since that might break usages other than ls.c.
15281         Instead, we'll leave ls.c alone.  This undoes today's patch
15282         by Bruno.  Add a compile-time warning for 1s-clock resolution;
15283         we've never observed the problem but might as well keep the
15284         canary.
15285         * lib/nanosleep.c: Include timespec.h first, for interface check.
15286         * lib/nanosleep.c: Include <sys/time.h> unconditionally, since we
15287         now assume the sys_time module.
15288         * lib/tempname.c: Likewise.
15289         * lib/timespec.h: Likewise.
15290         * lib/nanosleep.c: Don't worry about TIME_WITH_SYS_TIME; no longer
15291         needed.
15292         * lib/strftime.c: Likewise.
15293         * lib/timespec.h: Likewise.
15294         * lib/posixtm.c: Include posixtm.h first, for interface check.
15295         Don't worry about TM_IN_SYS_TIME; that's wayyy obsolete.
15296         * lib/posixtm.h: Include stdbool.h and time.h, for proper interface.
15297         * lib/strftime.c: Don't include <sys/types.h>; shouldn't be needed.
15298         * lib/sys_time_.h: New file.
15299         * lib/timespec.h (struct timespec): Use long int, not long.
15300         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
15301         (gl_FUNC_GETTIMEOFDAY_CLOBBER, gl_PREREQ_GETTIMEOFDAY):
15302         Remove obsolescent call to AC_HEADER_TIME.
15303         * m4/mktime.m4 (AC_FUNC_MKTIME): Likewise.
15304         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
15305         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
15306         * m4/timespec.m4 (gl_TIMESPEC, gl_CHECK_TYPE_STRUCT_TIMESPEC):
15307         Likewise.
15308         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Likewise.
15309         * m4/utimbuf.m4 (gl_CHECK_TYPE_STRUCT_UTIMBUF): Likewise.
15310         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): Move sys/time.h tests
15311         into the sys_time module.  Check for gettimeofday just once.
15312         Prefix our variables with gl_, not with ac_ or jm_.  Tighten test
15313         for gettimeofday signature to just check the signature.  Merely
15314         compile it, since linking doesn't test signature.  Improve test for
15315         whether gettimeofday.o is actually needed.
15316         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Renamed from
15317         AC_FUNC_GETTIMEOFDAY_CLOBBER.  All uses changed.  Use
15318         AC_RUN_IFELSE rather than AC_TRY_RUN.  If clobbering, set
15319         and define GETTIMEOFDAY_CLOBBERS_LOCALTIME.
15320         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Don't define
15321         GETTIMEOFDAY_CLOBBERS_LOCALTIME; that's gl_FUNC_GETTIMEOFDAY_CLOBBER's
15322         job.  Don't define tzset; that's gl_FUNC_TZSET_CLOBBER's job.
15323         * m4/mktime.m4 (AC_FUNC_MKTIME): Just include <time.h> rather
15324         than worrying about sys/time.h.
15325         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
15326         Don't bother worrying about TIME_WITH_SYS_TIME.
15327         * m4/stat-time.m4 (gl_STAT_TIME): Likewise.
15328         * m4/posixtm.m4 (gl_POSIXTM): Remove obsolescent call to AC_STRUCT_TM.
15329         * m4/sys_time_h.m4: New file.
15330         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Require gl_HEADER_SYS_TIME_H.
15331         Don't include sys/time.h.  Return from main rather than exiting.
15332         Define TZSET_CLOBBERS_LOCALTIME, for consistency with other names;
15333         all uses changed.
15334         * modules/gethrxtime (Depends-on): Add sys_time.
15335         * modules/gettime (Depends-on): Likewise.
15336         * modules/gettimeofday (Depends-on): Likewise.
15337         * modules/nanosleep (Depends-on): Likewise.
15338         * modules/settime (Depends-on): Likewise.
15339         * modules/tempname (Depends-on): Likewise.
15340         * modules/utimens (Depends-on): Likewise.
15341         * modules/gettimeofday (Files): Remove lib/gettimeofday.h.
15342         (Include:) Change back to <sys/time.h>.
15343         (Maintainer:) Add self.
15344         * modules/sys_time: New file.
15345         * modules/tempname (Depends-on): Add gettimeofday.
15346         * tests/test-gettimeofday.c: Include <sys/time.h>
15347         rather than gettimeofday.h.
15348
15349 2007-01-17  Bruno Haible  <bruno@clisp.org>
15350
15351         * gnulib-tool (func_get_license): Revert last patch. Instead, let
15352         the license default to GPL.
15353         (func_create_testdir): Don't complain if a module is LGPL and its
15354         tests module depends on GPLed modules.
15355
15356 2007-01-17  Bruno Haible  <bruno@clisp.org>
15357
15358         * lib/gettimeofday.c (gettimeofday): Add code for the case
15359         HAVE_GETTIMEOFDAY && !GETTIMEOFDAY_CLOBBERS_LOCALTIME. Use the
15360         maximum possible value for tv->tv_usec, rather than the minimum one.
15361
15362 2005-10-08  Martin Lambers  <marlam@marlam.de>
15363 2005-10-08  Paul Eggert  <eggert@cs.ucla.edu>
15364 2007-01-16  Bruno Haible  <bruno@clisp.org>
15365
15366         * modules/gettimeofday (Files): Add lib/gettimeofday.h.
15367         (configure.ac): Remove AC_FUNC_GETTIMEOFDAY_CLOBBER. Add
15368         gl_FUNC_GETTIMEOFDAY.
15369         (Include): Add gettimeofday.h.
15370         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): New macro.
15371         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't invoke gl_PREREQ_GETTIMEOFDAY.
15372         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Define
15373         GETTIMEOFDAY_CLOBBERS_LOCALTIME. Invoke gl_PREREQ_GETTIMEOFDAY here.
15374         (gl_PREREQ_GETTIMEOFDAY): Check for <sys/timeb.h> and _ftime.
15375         * lib/gettimeofday.h: New file.
15376         * lib/gettimeofday.c: Include <sys/timeb.h>.
15377         (localtime_buffer_addr, rpl_localtime, rpl_gmtime, rpl_tzset): Define
15378         only if GETTIMEOFDAY_CLOBBERS_LOCALTIME.
15379         (rpl_gettimeofday) [!HAVE_GETTIMEOFDAY]: Use _ftime() when available;
15380         fall back on time().
15381
15382         * tests/test-gettimeofday.c: New file.
15383         * modules/gettimeofday-tests: New file.
15384
15385 2007-01-16  Eric Blake  <ebb9@byu.net>
15386
15387         * modules/fnmatch (Depends-on): Depend on wchar.
15388         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Assume <wchar.h>.
15389         * m4/fnmatch.m4: Likewise.
15390         * modules/mbchar (Makefile.am): Assume <wchar.h>.
15391         * m4/mbchar.m4: Likewise.
15392         * modules/mbswidth (Depends-on): Depend on wchar.
15393         * lib/mbswidth.c: Assume <wchar.h>.
15394         * m4/mbswidth.m4: Likewise.
15395         * modules/quotearg (Depends-on): Depend on wchar.
15396         * lib/quotearg.c: Assume <wchar.h>.
15397         * m4/quotearg.m4: Likewise.
15398         * modules/regex (Depends-on): Depend on wchar.
15399         * lib/regex_internal.h: Assume <wchar.h>.
15400         * m4/regex.m4: Likewise.
15401         * modules/stdint (Depends-on): Depend on wchar.
15402         * lib/stdint_.h [!defined WCHAR_MIN]: Assume <wchar.h>.
15403         * m4/stdint.m4: Likewise.
15404         * tests/test-stdint.c [HAVE_WINT_T]: Likewise.
15405         * modules/strftime (Depends-on): Depend on wchar.
15406         * lib/strftime.c (DO_MULTIBYTE): Assume <wchar.h>.
15407         * modules/strtol (Depends-on): Depend on wchar.
15408         * lib/strtol.c: Assume <wchar.h>.
15409         * modules/wcwidth (Depends-on): Depend on wchar.
15410         * lib/wcwidth.h: Assume <wchar.h>.
15411         * m4/wcwidth.m4: Likewise.
15412
15413 2007-01-16  Bruno Haible  <bruno@clisp.org>
15414
15415         * modules/csharpexec-script: New, created from...
15416         * modules/csharpexec: ... this.
15417
15418 2007-01-16  Paolo Bonzini  <bonzini@gnu.org>
15419
15420         * modules/javaexec-script: New, created from...
15421         * modules/javaexec: ... this.
15422
15423 2007-01-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
15424
15425         * modules/poll (Dependencies): Add sys_select.
15426
15427 2007-01-15  Jim Meyering  <jim@meyering.net>
15428
15429         * m4/readutmp.m4 (gl_READUTMP): Work around AIX 4.3 struct-
15430         redefinition bug when using both <utmp.h> and <utmpx.h> headers.
15431         * lib/readutmp.h: Likewise.  Reported by Daniel Richard G. in
15432         <http://article.gmane.org/gmane.comp.gnu.core-utils.bugs/9415>.
15433
15434 2007-01-15  Bruno Haible  <bruno@clisp.org>
15435
15436         * modules/striconveh: New file.
15437         * lib/striconveh.h: New file.
15438         * lib/striconveh.c: New file.
15439         * MODULES.html.sh (Internationalization functions): Add striconveh.
15440
15441         * modules/striconveh-tests: New file.
15442         * tests/test-striconveh.c: New file.
15443
15444 2007-01-15  Bruno Haible  <bruno@clisp.org>
15445
15446         * lib/striconv.c (str_cd_iconv): Use the first algorithm if iconv is
15447         not from GNU libiconv or GNU libc.
15448
15449 2007-01-15  Bruno Haible  <bruno@clisp.org>
15450
15451         * doc/gnulib-intro.texi (Copyright): Explain the different license
15452         terms for module descriptions, autoconf macros, tests, documentation.
15453
15454 2007-01-14  Bruno Haible  <bruno@clisp.org>
15455
15456         * modules/striconv-tests: New file.
15457         * tests/test-striconv.c: New file.
15458
15459 2007-01-14  Bruno Haible  <bruno@clisp.org>
15460
15461         * modules/iconv-tests: New file.
15462         * tests/test-iconv.c: New file.
15463
15464 2007-01-14  Bruno Haible  <bruno@clisp.org>
15465
15466         * gnulib-tool (func_get_license): For test modules, use the license of
15467         the main module.
15468
15469 2007-01-14  Bruno Haible  <bruno@clisp.org>
15470
15471         * modules/iconv (Include): Clarify that <iconv.h> can only be included
15472         if iconv is found to exist.
15473
15474 2007-01-14  Bruno Haible  <bruno@clisp.org>
15475
15476         * modules/c-ctype-tests: New file.
15477         * tests/test-c-ctype.c: New file.
15478
15479 2007-01-14  Bruno Haible  <bruno@clisp.org>
15480
15481         * modules/binary-io-tests: New file.
15482         * tests/test-binary-io.sh: New file.
15483         * tests/test-binary-io.c: New file.
15484
15485 2007-01-14  Bruno Haible  <bruno@clisp.org>
15486
15487         * modules/array-oset-tests: New file.
15488         * tests/test-array_oset.c: New file.
15489
15490 2007-01-14  Bruno Haible  <bruno@clisp.org>
15491
15492         * modules/array-list-tests: New file.
15493         * tests/test-array_list.c: New file.
15494
15495 2007-01-14  Bruno Haible  <bruno@clisp.org>
15496
15497         * gnulib-tool (func_create_testdir): Don't unnecessarily run configure
15498         and make.
15499         Reported by Simon Josefsson in
15500         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00139.html>
15501
15502 2007-01-14  Bruno Haible  <bruno@clisp.org>
15503
15504         * modules/allocsa-tests: New file.
15505         * tests/test-allocsa.c: New file.
15506
15507 2007-01-14  Bruno Haible  <bruno@clisp.org>
15508
15509         * modules/fchdir (Depends-on): Add absolute-header.
15510         * modules/unistd (Depends-on): Likewise.
15511
15512 2006-12-30  Bruno Haible  <bruno@clisp.org>
15513
15514         * modules/fchdir: New file.
15515         * modules/unistd (Files): Add lib/unistd_.h.
15516         (Makefile.am): Generate unistd.h from unistd_.h.
15517         * lib/fchdir.c: New file.
15518         * lib/dirent_.h: New file.
15519         * lib/unistd_.h: New file.
15520         * lib/fcntl_.h (open) [FCHDIR_REPLACEMENT]: New replacement.
15521         * m4/fchdir.m4: New file.
15522         * m4/unistd_h.m4 (gl_PREREQ_UNISTD): New macro.
15523         (gl_HEADER_UNISTD): Invoke it.
15524         * lib/dup-safer.c (dup_safer) [FCHDIR_REPLACEMENT]: Use the dup
15525         function.
15526         * lib/backupfile.c (opendir, closedir): Undefine.
15527         * lib/chown.c (open, close): Undefine.
15528         * lib/clean-temp.c (open, close): Undefine.
15529         * lib/copy-file.c (open, close): Undefine.
15530         * lib/execute.c (open, close): Undefine.
15531         * lib/fsusage.c (open, close): Undefine.
15532         * lib/gc-gnulib.c (open, close): Undefine.
15533         * lib/getcwd.c (opendir, closedir): Undefine.
15534         * lib/glob.c (opendir, closedir): Undefine.
15535         * lib/javacomp.c (open, close): Undefine.
15536         * lib/mountlist.c (open, close, opendir, closedir): Undefine.
15537         * lib/openat-proc.c (open, close): Undefine.
15538         * lib/pagealign_alloc.c (open, close): Undefine.
15539         * lib/pipe.c (open, close): Undefine.
15540         * lib/progreloc.c (open, close): Undefine.
15541         * lib/savedir.c (opendir, closedir): Undefine.
15542         * lib/utime.c (open, close): Undefine.
15543         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add fchdir.
15544
15545 2007-01-10  Bruno Haible  <bruno@clisp.org>
15546
15547         * lib/striconv.c (mem_cd_iconv): Align the temporary buffer.
15548
15549 2007-01-12  Eric Blake  <ebb9@byu.net>
15550
15551         Provide a robust <wchar.h>.  Further simplifications are now
15552         possible in other modules, but not included here.
15553         * modules/wchar: New module.
15554         * m4/wchar.m4: New file.
15555         * lib/wchar_.h: Likewise.
15556         * modules/mbchar (Depends-on): Depend on wchar, as the first use
15557         of the new module.
15558         * MODULES.html.sh (Extended multibyte and wide character utilities):
15559         New section.
15560
15561 2007-01-12  Paul Eggert  <eggert@cs.ucla.edu>
15562
15563         * lib/xreadlink.c (SYMLINK_MAX) [!defined SYMLINK_MAX]: Define
15564         to a reasonable default for memory allocation.
15565         (xreadlink): Don't allocate a huge buffer, to work around a buggy
15566         file system that reports garbage st_size values for symlinks.
15567         Problem reported by Liyang Hu.
15568
15569 2007-01-11  Simon Josefsson  <simon@josefsson.org>
15570
15571         * gnulib-tool (func_all_modules): Exclude all .* files (e.g.,
15572         Emacs .#* auto-save files).
15573
15574 2007-01-11  Bruno Haible  <bruno@clisp.org>
15575
15576         * gnulib-tool (func_all_modules): Exclude all files inside the CVS
15577         directory.
15578
15579 2007-01-10  Paul Eggert  <eggert@cs.ucla.edu>
15580
15581         Use @...@ consistently in lib/wctype_.h.
15582         * lib/wctype_.h [HAVE_WINT_T]: Go back to using @...@, but rely
15583         on it being set to 1 or 0.
15584         * m4/wctype.m4 (gl_WCTYPE_H): Set HAVE_WINT_T to 1 or 0, and
15585         go back to AC_SUBSTing it.
15586         * modules/wctype (Makefile.am): Undo previous change.
15587
15588 2007-01-10  Eric Blake  <ebb9@byu.net>
15589
15590         * lib/wctype_.h [HAVE_WINT_T]: Rely on AC_DEFINE.
15591         * m4/wctype.m4 (gl_WCTYPE_H): No need to AC_SUBST(HAVE_WINT_T).
15592         * modules/wctype (Makefile.am): Likewise.
15593         Reported by Chris McGuire.
15594
15595 2007-01-10  Jim Meyering  <jim@meyering.net>
15596
15597         fts.c: a small readability/maintainability improvement
15598         * lib/fts.c (fts_read): Make this code slightly more readable and
15599         maintainable by hoisting the "sp->fts_cur = p" assignments to
15600         immediately follow the statements that set P.  Derived from
15601         the patch by Miloslav Trmac in http://bugzilla.redhat.com/222089.
15602
15603 2007-01-10  Eric Blake  <ebb9@byu.net>
15604
15605         * lib/wctype_.h [HAVE_WINT_T]: Include <stddef.h> before
15606         <wchar.h>, to work around BSDI bug in BSD/OS 4.0.1.
15607         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
15608         * m4/wint_t.m4 (gt_TYPE_WINT_T): Likewise.
15609         Reported by Chris McGuire.
15610
15611 2007-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15612
15613         * gnulib-tool (func_all_modules): Use POSIX conforming escaping
15614         in sed script.
15615
15616 2007-01-09  Bruno Haible  <bruno@clisp.org>
15617
15618         * MODULES.html.sh: Accept options --cvs-urls, --git-urls.
15619         (repo_url_prefix, repo_url_suffix, repo_url_suffix_repl): New
15620         variables.
15621         (func_module): Use them.
15622
15623 2007-01-09  Bruno Haible  <bruno@clisp.org>
15624
15625         * modules/unistr/base: New file.
15626         * lib/unistr.h: New file.
15627
15628         * modules/unistr/u8-to-u16: New file.
15629         * lib/unistr/u8-to-u16.c: New file.
15630
15631         * modules/unistr/u8-to-u32: New file.
15632         * lib/unistr/u8-to-u32.c: New file.
15633
15634         * modules/unistr/u16-to-u8: New file.
15635         * lib/unistr/u16-to-u8.c: New file.
15636
15637         * modules/unistr/u16-to-u32: New file.
15638         * lib/unistr/u16-to-u32.c: New file.
15639
15640         * modules/unistr/u32-to-u8: New file.
15641         * lib/unistr/u32-to-u8.c: New file.
15642
15643         * modules/unistr/u32-to-u16: New file.
15644         * lib/unistr/u32-to-u16.c: New file.
15645
15646         * modules/unistr/u8-check: New file.
15647         * modules/unistr/u16-check: New file.
15648         * modules/unistr/u32-check: New file.
15649         * lib/unistr/u8-check.c: New file.
15650         * lib/unistr/u16-check.c: New file.
15651         * lib/unistr/u32-check.c: New file.
15652
15653         * modules/unistr/u8-chr: New file.
15654         * modules/unistr/u16-chr: New file.
15655         * modules/unistr/u32-chr: New file.
15656         * lib/unistr/u8-chr.c: New file.
15657         * lib/unistr/u16-chr.c: New file.
15658         * lib/unistr/u32-chr.c: New file.
15659
15660         * modules/unistr/u8-cmp: New file.
15661         * modules/unistr/u16-cmp: New file.
15662         * modules/unistr/u32-cmp: New file.
15663         * lib/unistr/u8-cmp.c: New file.
15664         * lib/unistr/u16-cmp.c: New file.
15665         * lib/unistr/u32-cmp.c: New file.
15666
15667         * modules/unistr/u8-cpy: New file.
15668         * modules/unistr/u16-cpy: New file.
15669         * modules/unistr/u32-cpy: New file.
15670         * lib/unistr/u8-cpy.c: New file.
15671         * lib/unistr/u16-cpy.c: New file.
15672         * lib/unistr/u32-cpy.c: New file.
15673         * lib/unistr/u-cpy.h: New file.
15674
15675         * modules/unistr/u8-cpy-alloc: New file.
15676         * modules/unistr/u16-cpy-alloc: New file.
15677         * modules/unistr/u32-cpy-alloc: New file.
15678         * lib/unistr/u8-cpy-alloc.c: New file.
15679         * lib/unistr/u16-cpy-alloc.c: New file.
15680         * lib/unistr/u32-cpy-alloc.c: New file.
15681         * lib/unistr/u-cpy-alloc.h: New file.
15682
15683         * modules/unistr/u8-endswith: New file.
15684         * modules/unistr/u16-endswith: New file.
15685         * modules/unistr/u32-endswith: New file.
15686         * lib/unistr/u8-endswith.c: New file.
15687         * lib/unistr/u16-endswith.c: New file.
15688         * lib/unistr/u32-endswith.c: New file.
15689         * lib/unistr/u-endswith.h: New file.
15690
15691         * modules/unistr/u8-mblen: New file.
15692         * modules/unistr/u16-mblen: New file.
15693         * modules/unistr/u32-mblen: New file.
15694         * lib/unistr/u8-mblen.c: New file.
15695         * lib/unistr/u16-mblen.c: New file.
15696         * lib/unistr/u32-mblen.c: New file.
15697
15698         * modules/unistr/u8-mbtouc: New file.
15699         * modules/unistr/u16-mbtouc: New file.
15700         * modules/unistr/u32-mbtouc: New file.
15701         * lib/unistr/u8-mbtouc.c: New file.
15702         * lib/unistr/u16-mbtouc.c: New file.
15703         * lib/unistr/u32-mbtouc.c: New file.
15704
15705         * modules/unistr/u8-mbtouc-safe: New file.
15706         * modules/unistr/u16-mbtouc-safe: New file.
15707         * modules/unistr/u32-mbtouc-safe: New file.
15708         * lib/unistr/u8-mbtouc-safe.c: New file.
15709         * lib/unistr/u16-mbtouc-safe.c: New file.
15710         * lib/unistr/u32-mbtouc-safe.c: New file.
15711
15712         * modules/unistr/u8-move: New file.
15713         * modules/unistr/u16-move: New file.
15714         * modules/unistr/u32-move: New file.
15715         * lib/unistr/u8-move.c: New file.
15716         * lib/unistr/u16-move.c: New file.
15717         * lib/unistr/u32-move.c: New file.
15718         * lib/unistr/u-move.h: New file.
15719
15720         * modules/unistr/u8-next: New file.
15721         * modules/unistr/u16-next: New file.
15722         * modules/unistr/u32-next: New file.
15723         * lib/unistr/u8-next.c: New file.
15724         * lib/unistr/u16-next.c: New file.
15725         * lib/unistr/u32-next.c: New file.
15726
15727         * modules/unistr/u8-prev: New file.
15728         * modules/unistr/u16-prev: New file.
15729         * modules/unistr/u32-prev: New file.
15730         * lib/unistr/u8-prev.c: New file.
15731         * lib/unistr/u16-prev.c: New file.
15732         * lib/unistr/u32-prev.c: New file.
15733
15734         * modules/unistr/u8-set: New file.
15735         * modules/unistr/u16-set: New file.
15736         * modules/unistr/u32-set: New file.
15737         * lib/unistr/u8-set.c: New file.
15738         * lib/unistr/u16-set.c: New file.
15739         * lib/unistr/u32-set.c: New file.
15740         * lib/unistr/u-set.h: New file.
15741
15742         * modules/unistr/u8-startswith: New file.
15743         * modules/unistr/u16-startswith: New file.
15744         * modules/unistr/u32-startswith: New file.
15745         * lib/unistr/u8-startswith.c: New file.
15746         * lib/unistr/u16-startswith.c: New file.
15747         * lib/unistr/u32-startswith.c: New file.
15748         * lib/unistr/u-startswith.h: New file.
15749
15750         * modules/unistr/u8-stpcpy: New file.
15751         * modules/unistr/u16-stpcpy: New file.
15752         * modules/unistr/u32-stpcpy: New file.
15753         * lib/unistr/u8-stpcpy.c: New file.
15754         * lib/unistr/u16-stpcpy.c: New file.
15755         * lib/unistr/u32-stpcpy.c: New file.
15756         * lib/unistr/u-stpcpy.h: New file.
15757
15758         * modules/unistr/u8-stpncpy: New file.
15759         * modules/unistr/u16-stpncpy: New file.
15760         * modules/unistr/u32-stpncpy: New file.
15761         * lib/unistr/u8-stpncpy.c: New file.
15762         * lib/unistr/u16-stpncpy.c: New file.
15763         * lib/unistr/u32-stpncpy.c: New file.
15764         * lib/unistr/u-stpncpy.h: New file.
15765
15766         * modules/unistr/u8-strcat: New file.
15767         * modules/unistr/u16-strcat: New file.
15768         * modules/unistr/u32-strcat: New file.
15769         * lib/unistr/u8-strcat.c: New file.
15770         * lib/unistr/u16-strcat.c: New file.
15771         * lib/unistr/u32-strcat.c: New file.
15772         * lib/unistr/u-strcat.h: New file.
15773
15774         * modules/unistr/u8-strchr: New file.
15775         * modules/unistr/u16-strchr: New file.
15776         * modules/unistr/u32-strchr: New file.
15777         * lib/unistr/u8-strchr.c: New file.
15778         * lib/unistr/u16-strchr.c: New file.
15779         * lib/unistr/u32-strchr.c: New file.
15780
15781         * modules/unistr/u8-strcmp: New file.
15782         * modules/unistr/u16-strcmp: New file.
15783         * modules/unistr/u32-strcmp: New file.
15784         * lib/unistr/u8-strcmp.c: New file.
15785         * lib/unistr/u16-strcmp.c: New file.
15786         * lib/unistr/u32-strcmp.c: New file.
15787
15788         * modules/unistr/u8-strcpy: New file.
15789         * modules/unistr/u16-strcpy: New file.
15790         * modules/unistr/u32-strcpy: New file.
15791         * lib/unistr/u8-strcpy.c: New file.
15792         * lib/unistr/u16-strcpy.c: New file.
15793         * lib/unistr/u32-strcpy.c: New file.
15794         * lib/unistr/u-strcpy.h: New file.
15795
15796         * modules/unistr/u8-strcspn: New file.
15797         * modules/unistr/u16-strcspn: New file.
15798         * modules/unistr/u32-strcspn: New file.
15799         * lib/unistr/u8-strcspn.c: New file.
15800         * lib/unistr/u16-strcspn.c: New file.
15801         * lib/unistr/u32-strcspn.c: New file.
15802         * lib/unistr/u-strcspn.h: New file.
15803
15804         * modules/unistr/u8-strdup: New file.
15805         * modules/unistr/u16-strdup: New file.
15806         * modules/unistr/u32-strdup: New file.
15807         * lib/unistr/u8-strdup.c: New file.
15808         * lib/unistr/u16-strdup.c: New file.
15809         * lib/unistr/u32-strdup.c: New file.
15810         * lib/unistr/u-strdup.h: New file.
15811
15812         * modules/unistr/u8-strlen: New file.
15813         * modules/unistr/u16-strlen: New file.
15814         * modules/unistr/u32-strlen: New file.
15815         * lib/unistr/u8-strlen.c: New file.
15816         * lib/unistr/u16-strlen.c: New file.
15817         * lib/unistr/u32-strlen.c: New file.
15818         * lib/unistr/u-strlen.h: New file.
15819
15820         * modules/unistr/u8-strmblen: New file.
15821         * modules/unistr/u16-strmblen: New file.
15822         * modules/unistr/u32-strmblen: New file.
15823         * lib/unistr/u8-strmblen.c: New file.
15824         * lib/unistr/u16-strmblen.c: New file.
15825         * lib/unistr/u32-strmblen.c: New file.
15826
15827         * modules/unistr/u8-strmbtouc: New file.
15828         * modules/unistr/u16-strmbtouc: New file.
15829         * modules/unistr/u32-strmbtouc: New file.
15830         * lib/unistr/u8-strmbtouc.c: New file.
15831         * lib/unistr/u16-strmbtouc.c: New file.
15832         * lib/unistr/u32-strmbtouc.c: New file.
15833
15834         * modules/unistr/u8-strncat: New file.
15835         * modules/unistr/u16-strncat: New file.
15836         * modules/unistr/u32-strncat: New file.
15837         * lib/unistr/u8-strncat.c: New file.
15838         * lib/unistr/u16-strncat.c: New file.
15839         * lib/unistr/u32-strncat.c: New file.
15840         * lib/unistr/u-strncat.h: New file.
15841
15842         * modules/unistr/u8-strncmp: New file.
15843         * modules/unistr/u16-strncmp: New file.
15844         * modules/unistr/u32-strncmp: New file.
15845         * lib/unistr/u8-strncmp.c: New file.
15846         * lib/unistr/u16-strncmp.c: New file.
15847         * lib/unistr/u32-strncmp.c: New file.
15848
15849         * modules/unistr/u8-strncpy: New file.
15850         * modules/unistr/u16-strncpy: New file.
15851         * modules/unistr/u32-strncpy: New file.
15852         * lib/unistr/u8-strncpy.c: New file.
15853         * lib/unistr/u16-strncpy.c: New file.
15854         * lib/unistr/u32-strncpy.c: New file.
15855         * lib/unistr/u-strncpy.h: New file.
15856
15857         * modules/unistr/u8-strnlen: New file.
15858         * modules/unistr/u16-strnlen: New file.
15859         * modules/unistr/u32-strnlen: New file.
15860         * lib/unistr/u8-strnlen.c: New file.
15861         * lib/unistr/u16-strnlen.c: New file.
15862         * lib/unistr/u32-strnlen.c: New file.
15863         * lib/unistr/u-strnlen.h: New file.
15864
15865         * modules/unistr/u8-strpbrk: New file.
15866         * modules/unistr/u16-strpbrk: New file.
15867         * modules/unistr/u32-strpbrk: New file.
15868         * lib/unistr/u8-strpbrk.c: New file.
15869         * lib/unistr/u16-strpbrk.c: New file.
15870         * lib/unistr/u32-strpbrk.c: New file.
15871         * lib/unistr/u-strpbrk.h: New file.
15872
15873         * modules/unistr/u8-strrchr: New file.
15874         * modules/unistr/u16-strrchr: New file.
15875         * modules/unistr/u32-strrchr: New file.
15876         * lib/unistr/u8-strrchr.c: New file.
15877         * lib/unistr/u16-strrchr.c: New file.
15878         * lib/unistr/u32-strrchr.c: New file.
15879
15880         * modules/unistr/u8-strspn: New file.
15881         * modules/unistr/u16-strspn: New file.
15882         * modules/unistr/u32-strspn: New file.
15883         * lib/unistr/u8-strspn.c: New file.
15884         * lib/unistr/u16-strspn.c: New file.
15885         * lib/unistr/u32-strspn.c: New file.
15886         * lib/unistr/u-strspn.h: New file.
15887
15888         * modules/unistr/u8-strstr: New file.
15889         * modules/unistr/u16-strstr: New file.
15890         * modules/unistr/u32-strstr: New file.
15891         * lib/unistr/u8-strstr.c: New file.
15892         * lib/unistr/u16-strstr.c: New file.
15893         * lib/unistr/u32-strstr.c: New file.
15894         * lib/unistr/u-strstr.h: New file.
15895
15896         * modules/unistr/u8-strtok: New file.
15897         * modules/unistr/u16-strtok: New file.
15898         * modules/unistr/u32-strtok: New file.
15899         * lib/unistr/u8-strtok.c: New file.
15900         * lib/unistr/u16-strtok.c: New file.
15901         * lib/unistr/u32-strtok.c: New file.
15902         * lib/unistr/u-strtok.h: New file.
15903
15904         * modules/unistr/u8-uctomb: New file.
15905         * modules/unistr/u16-uctomb: New file.
15906         * modules/unistr/u32-uctomb: New file.
15907         * lib/unistr/u8-uctomb.c: New file.
15908         * lib/unistr/u16-uctomb.c: New file.
15909         * lib/unistr/u32-uctomb.c: New file.
15910
15911         * MODULES.html.sh (Unicode string functions): Add the new modules.
15912
15913 2007-01-08  Bruno Haible  <bruno@clisp.org>
15914
15915         * gnulib-tool (func_all_modules): Use find, not ls, to traverse the
15916         modules directory. Filter out CVS, ChangeLog, COPYING, README also from
15917         subdirectories.
15918
15919 2007-01-08  Karl Berry  <karl@gnu.org>
15920
15921         * doc/error.texi: mention that main() fns must set program_name
15922         when progname is used.
15923
15924 2007-01-08  Paul Eggert  <eggert@cs.ucla.edu>
15925
15926         * m4/wctype.m4 (gl_WCTYPE_H): Compute ABSOLUTE_WCTYPE_H even if
15927         WCTYPE_H is empty, for the benefit of builds from non-distclean
15928         directories.  Problem reported by Eric Blake in
15929         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00157.html>.
15930
15931 2007-01-08  Bruno Haible  <bruno@clisp.org>
15932
15933         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Remove
15934         PROVIDE_CANONICALIZE_FILENAME_MODE macro definition.
15935         * lib/canonicalize.h: Test GNULIB_CANONICALIZE instead of
15936         PROVIDE_CANONICALIZE_FILENAME_MODE.
15937         * modules/canonicalize (configure.ac): Use gl_MODULE_INDICATOR.
15938
15939 2007-01-08  Bruno Haible  <bruno@clisp.org>
15940
15941         * m4/fts.m4 (gl_FUNC_FTS_LGPL): Remove _LGPL_PACKAGE macro definition.
15942         * lib/fts_.h (_LGPL_PACKAGE): Remove macro.
15943         Use !GNULIB_FTS instead of _LGPL_PACKAGE.
15944         * lib/fts.c: Likewise.
15945         * modules/fts (configure.ac): Use gl_MODULE_INDICATOR.
15946
15947 2006-12-25  Bruno Haible  <bruno@clisp.org>
15948
15949         * modules/utf8-ucs4-safe: New file.
15950         * lib/utf8-ucs4-safe.h: New file.
15951         * lib/unistr/utf8-ucs4-safe.c: New file.
15952
15953         * modules/utf16-ucs4-safe: New file.
15954         * lib/utf16-ucs4-safe.h: New file.
15955         * lib/unistr/utf16-ucs4-safe.c: New file.
15956
15957         * MODULES.html.sh (Unicode string functions): Add the new modules.
15958
15959 2007-01-08  Bruno Haible  <bruno@clisp.org>
15960
15961         * modules/utf8-ucs4 (Files, lib_SOURCES): Add unistr/utf8-ucs4.c.
15962         (Depends-on): Add unitypes.
15963         * lib/utf8-ucs4.h: Add double-inclusion guard. Include unitypes.h.
15964         (u8_mbtouc_aux): Move out to separate file.
15965         (u8_mbtouc): Use ucs4_t, uint8_t types.
15966         * lib/unistr/utf8-ucs4.c: New file.
15967
15968         * modules/utf16-ucs4 (Files, lib_SOURCES): Add unistr/utf16-ucs4.c.
15969         (Depends-on): Add unitypes.
15970         * lib/utf16-ucs4.h: Add double-inclusion guard. Include unitypes.h.
15971         (u16_mbtouc_aux): Move out to separate file.
15972         (u16_mbtouc): Use ucs4_t, uint16_t types.
15973         * lib/unistr/utf16-ucs4.c: New file.
15974
15975         * modules/ucs4-utf8 (Files, lib_SOURCES): Add unistr/ucs4-utf8.c.
15976         (Depends-on): Add unitypes.
15977         * lib/ucs4-utf8.h: Add double-inclusion guard. Include unitypes.h.
15978         (u8_uctomb_aux): Move out to separate file.
15979         (u8_uctomb): Use ucs4_t, uint8_t types.
15980         * lib/unistr/ucs4-utf8.c: New file.
15981
15982         * modules/ucs4-utf16 (Files, lib_SOURCES): Add unistr/ucs4-utf16.c.
15983         (Depends-on): Add unitypes.
15984         * lib/ucs4-utf16.h: Add double-inclusion guard. Include unitypes.h.
15985         (u16_uctomb_aux): Move out to separate file.
15986         (u16_uctomb): Use ucs4_t, uint16_t types.
15987         * lib/unistr/ucs4-utf16.c: New file.
15988
15989 2006-12-25  Bruno Haible  <bruno@clisp.org>
15990
15991         * modules/unitypes: New file.
15992         * lib/unitypes.h: New file.
15993         * MODULES.html.sh (func_all_modules): New section "Unicode string
15994         functions". Move ucs4-utf8, ucs4-utf16, utf8-ucs4, utf16-ucs4 to
15995         this section. Add unitypes.
15996
15997 2007-01-08  Bruno Haible  <bruno@clisp.org>
15998
15999         Avoid variable names that conflict with those from libtool.
16000         * m4/lib-link.m4 (AC_LIB_RPATH, AC_LIB_LINKFLAGS_BODY,
16001         AC_LIB_LINKFLAGS_FROM_LIBS): Rename libext to acl_libext,
16002         shlibext to acl_shlibext, libname_spec to acl_libname_spec,
16003         library_names_spec to acl_library_names_spec, hardcode_* to
16004         acl_hardcode_*.
16005         Reported by Ralf Wildenhues.
16006
16007 2007-01-08  Bruno Haible  <bruno@clisp.org>
16008
16009         * m4/gc-arcfour.m4 (gl_GC_ARCFOUR): Remove GC_USE_ARCFOUR macro
16010         definition.
16011         * m4/gc-arctwo.m4 (gl_GC_ARCTWO): Remove GC_USE_ARCTWO macro
16012         definition.
16013         * m4/gc-des.m4 (gl_GC_DES): Remove GC_USE_DES macro definition.
16014         * m4/gc-hmac-md5.m4 (gl_GC_HMAC_MD5): Remove GC_USE_HMAC_MD5 macro
16015         definition.
16016         * m4/gc-hmac-sha1.m4 (gl_GC_HMAC_SHA1): Remove GC_USE_HMAC_SHA1 macro
16017         definition.
16018         * m4/gc-md2.m4 (gl_GC_MD2): Remove GC_USE_MD2 macro definition.
16019         * m4/gc-md4.m4 (gl_GC_MD4): Remove GC_USE_MD4 macro definition.
16020         * m4/gc-md5.m4 (gl_GC_MD5): Remove GC_USE_MD5 macro definition.
16021         * m4/gc-random.m4 (gl_GC_RANDOM): Remove GC_USE_RANDOM macro
16022         definition.
16023         * m4/gc-rijndael.m4 (gl_GC_RIJNDAEL): Remove GC_USE_RIJNDAEL macro
16024         definition.
16025         * m4/gc-sha1.m4 (gl_GC_SHA1): Remove GC_USE_SHA1 macro definition.
16026         * lib/gc-gnulib.c: Use GNULIB_GC_<algorithm> instead of
16027         GC_USE_<algorithm>.
16028         * lib/gc-libgcrypt.c: Likewise.
16029         * modules/gc-arcfour (configure.ac): Use gl_MODULE_INDICATOR.
16030         * modules/gc-arctwo (configure.ac): Likewise.
16031         * modules/gc-des (configure.ac): Likewise.
16032         * modules/gc-hmac-md5 (configure.ac): Likewise.
16033         * modules/gc-hmac-sha1 (configure.ac): Likewise.
16034         * modules/gc-md2 (configure.ac): Likewise.
16035         * modules/gc-md4 (configure.ac): Likewise.
16036         * modules/gc-md5 (configure.ac): Likewise.
16037         * modules/gc-random (configure.ac): Likewise.
16038         * modules/gc-rijndael (configure.ac): Likewise.
16039         * modules/gc-sha1 (configure.ac): Likewise.
16040
16041 2007-01-08  Bruno Haible  <bruno@clisp.org>
16042
16043         * m4/close-stream.m4 (gl_CLOSE_STREAM): Remove GNULIB_CLOSE_STREAM
16044         macro definition.
16045         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Remove GNULIB_FCNTL_SAFER macro
16046         definition.
16047         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Remove GNULIB_FOPEN_SAFER macro
16048         definition.
16049         * modules/close-stream (configure.ac): Invoke gl_MODULE_INDICATOR.
16050         * modules/fcntl-safer (configure.ac): Likewise.
16051         * modules/fopen-safer (configure.ac): Likewise.
16052         * modules/fwriteerror (configure.ac): Likewise. Remove explicit
16053         GNULIB_FWRITEERROR macro definition.
16054
16055 2007-01-08  Bruno Haible  <bruno@clisp.org>
16056
16057         * m4/gnulib-common.m4: New file.
16058         * gnulib-tool (func_get_autoconf_snippet): Undo last change.
16059         (func_get_filelist): Add m4/gnulib-common.m4.
16060
16061 2007-01-08  Bruno Haible  <bruno@clisp.org>
16062
16063         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Simplify the sorting
16064         command.
16065
16066 2007-01-08  Jim Meyering  <jim@meyering.net>
16067
16068         Use a more robust test for a "can't happen" condition.
16069         * lib/fts.c (fts_read): Revert the change of 2006-11-22, since it
16070         narrowed the st_size value.  Presuming the "can't happen" condition
16071         is true, that narrowing could conceivably convert an invalid st_size
16072         value into a valid one.  Instead, use a change based on Matthew
16073         Woehlke's original patch.
16074
16075         Slight readability improvement: use an assert-like macro
16076         in place of literal "abort ()" uses.
16077         * lib/fts.c (fts_assert): Define.
16078         (fts_set_stat_required, cwd_advance_fd, fts_read, fd_ring_check):
16079         Use this macro instead of a bare 'abort'.
16080
16081 2007-01-05  Paul Eggert  <eggert@cs.ucla.edu>
16082
16083         Don't worry about using IRIX 5.3's wctype.h broken definitions;
16084         simply work around them.
16085         * lib/wctype_.h: Remove test for HAVE_WCTYPE_CTMP_BUG.
16086         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph, iswlower):
16087         (iswprint, iswpunct, iswspace, iswupper, iswxdigit): Undef before
16088         declaring.
16089         Don't bother to define as macros, since the standard doesn't require it.
16090         * m4/wctype.m4 (WCTYPE_H, ABSOLUTE_WCTYPE_H): Simplify, since we no
16091         longer worry about IRIX 5.3.
16092         (HAVE_WCTYPE_CTMP_BUG): Remove.
16093
16094 2007-01-04  Paul Eggert  <eggert@cs.ucla.edu>
16095
16096         * lib/wctype_.h (_ctmp_) [HAVE_WCTYPE_CTMP_BUG]: Now of type wchar_t,
16097         not wint_t.  Also, include <ctype.h>, to fix another IRIX bug.
16098         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
16099         Problems reported by Georg Schwarz for IRIX 5.3.
16100
16101         * gnulib-tool (autoconf_minversion): Take the maximum version number
16102         found, not the minimum.  Problem reported by James Youngman.
16103
16104 2007-01-03  Karl Berry  <karl@gnu.org>
16105
16106         * doc/error.texi: new file, explaining interaction with progname.
16107         * doc/gnulib.texi: include it.  Update copyright.
16108
16109 2007-01-03  Simon Josefsson  <simon@josefsson.org>
16110
16111         * gnulib-tool (func_create_testdir): Run AC_CANONICAL_BUILD and
16112         AC_CANONICAL_HOST, to improve autobuild outputs.
16113
16114 2007-01-03  Paolo Bonzini  <bonzini@gnu.org>
16115             Yoann Vandoorselaere <yoann.v@prelude-ids.com>
16116
16117         * lib/poll.c (poll): Use recv on Mac OS X to distinguish connected
16118         sockets, server sockets, and other file descriptors.  Count errors
16119         to compute the return value.  Reorder the code a bit to be easier
16120         to follow.  Don't set event bits that were not requested (except
16121         POLLERR and POLLHUP).
16122
16123 2007-01-01  Bruno Haible  <bruno@clisp.org>
16124
16125         * modules/lchmod (Include): Require lchmod.h, not lchown.h.
16126
16127 2007-01-03  Jim Meyering  <jim@meyering.net>
16128
16129         * modules/fts-lgpl (Depends-on): Add i-ring.  Reported by Bruno Haible.
16130
16131 2007-01-02  Bruno Haible  <bruno@clisp.org>
16132
16133         * modules/settime (Include): Require timespec.h.
16134         * modules/nanosleep (Include): Likewise.
16135
16136 2007-01-01  Bruno Haible  <bruno@clisp.org>
16137
16138         * gnulib-tool (func_emit_copyright_notice): Bump year.
16139         (func_get_autoconf_snippet): Emit a GNULIB_<modulename> macro.
16140
16141 2007-01-01  Bruno Haible  <bruno@clisp.org>
16142
16143         Improve support for OpenBSD.
16144         * build-aux/config.rpath (libname_spec): Export.
16145         (library_names_spec): New variable. Export.
16146         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Extract libname_spec and
16147         library_names_spec from the config.rpath output. Locate shared library
16148         through the name pattern in library_names_spec.
16149
16150 2007-01-01  Eric Blake  <ebb9@byu.net>
16151
16152         * lib/version-etc.c (COPYRIGHT_YEAR): Bump for new year.
16153
16154 2006-12-30  Paul Eggert  <eggert@cs.ucla.edu>
16155
16156         * gnulib-tool (SORT): Remove, since we no longer assume GNU sort.
16157         Rewrite so as not to assume GNU sort or "tail -1".  Also, don't
16158         assume the C locale, and avoid an "eval" that could cause trouble.
16159         Problem with SORT reported by Bob Proulx.
16160
16161         * lib/getpagesize.h (getpagesize) [defined __amigaos4__]:
16162         Define.  Trivial patch from Henning Nielsen Lund, originally
16163         sent to bug-grep@gnu.org today.
16164
16165 2006-12-29  Paul Eggert  <eggert@cs.ucla.edu>
16166
16167         * lib/acl.h: Include sys/types.h and sys/stat.h, for mode_t and
16168         struct stat.  Problem reported by Henning Nielsen Lund.
16169         * lib/acl.c: Include acl.h first, to check interface.  Don't
16170         bother to include sys/types.h and sys/stat.h again.
16171
16172 2006-12-28  Paul Eggert  <eggert@cs.ucla.edu>
16173
16174         Import the following change from libc; problem reported by
16175         Sven Verdoolaege.
16176
16177         2005-10-13  Ulrich Drepper  <drepper@redhat.com>
16178
16179         [BZ #1373]
16180         * lib/argp.h: Remove __NTH for __argp_usage inline function.
16181
16182 2006-12-28  Jim Meyering  <jim@meyering.net>
16183
16184         * build-aux/announce-gen: Do not assume that the package
16185         builds any of tar.gz, tar.bz2, and .xdelta files.
16186         Suggestion from Simon Josefsson.
16187
16188 2006-12-28  Simon Josefsson  <simon@josefsson.org>
16189
16190         * modules/announce-gen: New file.
16191
16192 2006-12-27  Paul Eggert  <eggert@cs.ucla.edu>
16193
16194         * lib/mbchar.h: Just include <wctype.h>; the wctype module
16195         handles its gotchas now.
16196         * lib/mbswidth.c: Likewise.
16197         * lib/wcwidth.h: Likewise.
16198         * m4/mbchar.m4 (gl_MBCHAR): Don't bother checking for wctype.h
16199         and iswcntrl; the wctype module does this stuff now.
16200         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
16201         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
16202         * modules/mbchar (Depends-on): Add wctype.
16203         * modules/mbswidth (Depends-on): Likewise.
16204         * modules/wcwidth (Depends-on): Likewise.
16205
16206 2006-12-27  Eric Blake  <ebb9@byu.net>
16207
16208         * lib/fnmatch.c: Reinstate inclusion of <wchar.h>, since this
16209         module uses more than what <wctype.h> is required to provide.
16210
16211 2006-12-26  Eric Blake  <ebb9@byu.net>
16212
16213         * gnulib-tool (sed_extract_prog): Avoid space-tab.
16214
16215 2006-12-26  Eric Blake  <ebb9@byu.net>
16216
16217         * modules/absolute-header: New module.
16218         * modules/fcntl (Depends-on): Depend on it.
16219         * modules/inttypes (Depends-on): Likewise.
16220         * modules/stdint (Depends-on): Likewise.
16221         * modules/sys_stat (Depends-on): Likewise.
16222         * modules/wctype (Depends-on): Likewise.
16223         * MODULES.html.sh (Support for building libraries and
16224         executables): Document it.
16225
16226 2006-12-25  Paul Eggert  <eggert@cs.ucla.edu>
16227
16228         * gnulib-tool (SED): Remove, undoing previous change.
16229         The problem was that it broke coreutils on Solaris, because
16230         "sed --posix" leaked into a makefile.
16231         (sed): New alias, if 'alias' and GNU sed.
16232
16233 2006-12-24  Jim Meyering  <jim@meyering.net>
16234
16235         Work around an fchownat bug in glibc-2.4:
16236         http://lists.ubuntu.com/archives/ubuntu-users/2006-September/093218.html
16237         This bug would cause "chown -RP ... DIR" to follow symlinks in DIR,
16238         in spite of the -P option.
16239         * m4/openat.m4 (gl_FUNC_FCHOWNAT, gl_FUNC_FCHOWNAT_DEREF_BUG):
16240         New macros.
16241         (gl_PREREQ_OPENAT): Require gl_FUNC_FCHOWNAT.
16242         * modules/openat (Files): Add lib/fchownat.c.
16243         * lib/openat.c (fchownat): Don't define here.  Move to...
16244         * lib/fchownat.c: ...this new file.
16245
16246 2006-12-23  Paul Eggert  <eggert@cs.ucla.edu>
16247
16248         Fix bug reported by Bruno Haible in
16249         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00228.html>
16250         where quotearg.c didn't compile on Mac OS X 10.2 because it
16251         lacks <wchar.h> and wint_t.
16252         * lib/wctype_.h (__wctype_wint_t): New type.
16253         Include <stdio.h>, <time.h>, <wchar.h> only if HAVE_WINT_T.
16254         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph):
16255         (iswlower, iswprint, iswpunct, iswspace, iswupper, ixwxdigit):
16256         Arg is now of type __wctype_wint_t, not wint_t.
16257         * m4/wctype.m4 (gl_WCTYPE_H): Require gt_TYPE_WINT_T, and
16258         substitute HAVE_WINT_T.
16259         * modules/wctype (Files): Add m4/wint_t.m4.
16260         (wctype.h): Substitute HAVE_WINT_T.
16261
16262 2006-12-23  Bruno Haible  <bruno@clisp.org>
16263
16264         * lib/safe-read.h [C++]: Wrap declarations in extern "C".
16265
16266 2006-12-23  Bruno Haible  <bruno@clisp.org>
16267
16268         * lib/canonicalize-lgpl.c (__realpath): Test HAVE_READLINK instead of
16269         S_ISLNK.
16270         Needed because gnulib's sys/stat.h replacement defines S_ISLNK on
16271         mingw.
16272
16273 2006-12-22  Bruno Haible  <bruno@clisp.org>
16274
16275         * lib/copy-file.c: Include acl.h.
16276         (copy_file_preserving) [USE_ACL]: Use copy_acl instead of chmod.
16277         Close the file descriptors only after being done with copy_acl.
16278         * modules/copy-file (Depends-on): Add acl.
16279
16280 2006-12-22  Bruno Haible  <bruno@clisp.org>
16281
16282         * gnulib-tool (SED): New variable.
16283         Use $SED instead of sed everywhere.
16284
16285 2006-12-22  Bruno Haible  <bruno@clisp.org>
16286
16287         * modules/no-c++: New file.
16288         * m4/no-c++.m4: New file.
16289         * MODULES.html.sh (Support for building libraries and executables):
16290         Add no-c++.
16291
16292 2006-12-22  Paul Eggert  <eggert@cs.ucla.edu>
16293
16294         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
16295         Include <limits.h>, and use its INT_MAX to rewrite the
16296         j loop so that it does not overflow 'int'.  Problem reported by
16297         Ralf Wildenhues in
16298         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00084.html>.
16299         Play it safe by shifting left by 1 rather than multiplying by 2,
16300         as GCC is less likely to optimize this away when the value
16301         is signed (when it assumes overflow leads to undefined behavior).
16302         Also, don't assume time_t uses two's complement.
16303
16304 2006-12-21  Paul Eggert  <eggert@cs.ucla.edu>
16305
16306         * MODULES.html.sh: New module wctype.
16307         * lib/wctype_.h, m4/wctype.m4, modules/wctype: New files.
16308         * lib/fnmatch.c: Don't bother to include <wchar.h> before
16309         <wctype.h>, since the new wctype module should fix this.
16310         * lib/quotearg.c: Include <wctype.h> unconditionally, since
16311         the wctype module should arrange for it.
16312         * lib/regex_internal.h: Likewise.
16313         * m4/quotearg.m4 (gl_QUOTEARG): Don't check for wctype.h or iswprint,
16314         since the wctype module should handle this now.
16315         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for wctype.h.
16316         * modules/fnmatch (Depends-on): Add wctype.
16317         * modules/quotearg (Depends-on): Likewise.
16318         * modules/regex (Depends-on): Likewise.
16319
16320 2006-12-19  Bruno Haible  <bruno@clisp.org>
16321
16322         * lib/strdup.h [C++]: Wrap definitions in extern "C".
16323         Suggested by Lorenzo Bettini <bettini@dsi.unifi.it>.
16324
16325 2006-12-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16326
16327         * modules/savewd (Depends-on): Fix dependency on fcntl.
16328
16329 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
16330
16331         * m4/stdint.m4 (gl_STDINT_H): Set STDINT_H to empty if stdint.h
16332         conforms to C99, rather than relying on the user's environment
16333         setting of STDINT_H.
16334
16335 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
16336         and Eric Blake  <ebb9@byu.net>
16337
16338         * lib/dirname.h (DOUBLE_SLASH_IS_DISTINCT_ROOT): Default to 0, not 1.
16339         This is more consistent with the other defines here.
16340         * m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT):
16341         Port to z/OS.  Problem reported by Paul Gilmartin.
16342         Change local vars to use gl_ prefix rather than ac_.
16343         Don't define DOUBLE_SLASH_IS_DISTINCT_ROOT to 0, for consistency
16344         with other defines.
16345         * modules/double-slash-root: New module.
16346         * modules/dirname (Files): Remove m4/double-slash-root.m4.
16347         (Depends-on): Add double-slash-root.
16348         * MODULES.html.sh (File system functions): Mention new module.
16349
16350 2006-12-14  Paul Eggert  <eggert@cs.ucla.edu>
16351
16352         * lib/yesno.c [!ENABLE_NLS]: Don't include getline.h.
16353         (yesno) [!ENABLE_NLS]: Don't invoke getline or rpmatch.
16354         This is for the benefit of gzip, which doesn't do i18n.
16355
16356 2006-12-12  Jim Meyering  <jim@meyering.net>
16357
16358         * m4/acl.m4 (gl_ACL_GET_FILE): Fix logic error.
16359         Reported by Andreas Schwab <schwab@suse.de>.
16360
16361 2006-12-12  Bruno Haible  <bruno@clisp.org>
16362
16363         Merge these changes.
16364         2006-09-05  Bruno Haible  <bruno@clisp.org>
16365         * lib/iconvme.c (iconv_string): No need to save and restore errno when
16366         iconv_alloc succeeded.
16367         (iconv_alloc): Don't assume that malloc() or realloc(), when failing,
16368         sets errno to ENOMEM. (malloc on GNU/kFreeBSD doesn't.) No need to
16369         test for " && dest " at the end - dest is always != NULL there. Call
16370         iconv with 4xNULL arguments initially, to reset the state. Call iconv
16371         with 2xNULL arguments, also to flush the state storage. Handle the
16372         IRIX iconv behaviour. Realloc the final result, to throw away unused
16373         memory.
16374
16375 2006-12-11  Paul Eggert  <eggert@cs.ucla.edu>
16376
16377         * m4/openat.m4 (gl_FUNC_OPENAT): Don't compile mkdirat
16378         and fchmodat unconditionally, since glibc 2.4 has them.
16379         Problem reported by Arkadiusz Miskiewicz.
16380
16381 2006-12-10  Bruno Haible  <bruno@clisp.org>
16382
16383         * gnulib-tool (func_import): Show the include files only for those
16384         modules that are copied and specified.
16385         Reported by Karl Berry.
16386
16387 2006-12-08  Jim Meyering  <jim@meyering.net>
16388
16389         * build-aux/announce-gen ($VERSION): Don't use of $Revision...$.
16390         Instead, use Emacs' time-stamp write hook.  Note that the time is UTC.
16391
16392         * build-aux/announce-gen: Add two new options, both optional:
16393         --bootstrap-tools=TOOL_LIST
16394               a comma-separated list of tools, e.g.,
16395               autoconf,automake,bison,gnulib
16396         --gnulib-snapshot-date=DATE
16397               if gnulib is in the bootstrap tool list,
16398               then report this as the snapshot date.
16399               If not specified, use the current date/time.
16400               If you specify a date here, be sure it's UTC.
16401
16402 2006-12-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16403
16404         * tests/test-argp-2.sh: Fix test to match actual output.
16405         (func_compare): Fix sed script to be portable.
16406
16407 2006-12-05  Paul Eggert  <eggert@cs.ucla.edu>
16408
16409         * lib/utimens.c (futimens) [HAVE_BUGGY_NFS_TIME_STAMPS]: Add a
16410         workaround for this case.  It is not autoconfigured now; offhand
16411         it's hard to see how to autoconfigure it.
16412
16413 2006-12-03  Paul Eggert  <eggert@cs.ucla.edu>
16414
16415         * lib/mkdir-p.c (make_dir_parents): Fix race condition when making
16416         a directory that is about to be chowned.  Such a directory's
16417         initial file permissions should permit the owner only and this
16418         should not be changed until after the chown, since the group and
16419         other bits would be incorrect if they granted permission before
16420         the chown.
16421
16422         Fix porting problem for iswctype reported by Georg Schwarz in:
16423         http://lists.gnu.org/archive/html/bug-coreutils/2006-12/msg00017.html
16424         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Require HAVE_ISWCTYPE, too.
16425         * lib/regex_internal.h (RE_ENABLE_I18N): Likewise.
16426         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for iswctype, too.
16427         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
16428
16429 2006-12-03  Jim Meyering  <jim@meyering.net>
16430
16431         * lib/fts.c (fts_load): Don't set sp->fts_dev here, since
16432         p->fts_statp may not yet be defined.
16433         (fts_read): Instead, set it in the caller, once p->fts_statp is
16434         sure to be defined, and corresponds to a top-level directory.
16435         This bug made du -x fail.  Here's the coreutils test case:
16436         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commit;h=ba45154d8e9f
16437         Reported by Mike Frysinger.
16438
16439 2006-12-01  Jim Meyering  <jim@meyering.net>
16440
16441         * modules/savewd (Depends-on): Add fcntl_h to avoid self-test
16442         build failure due to missing definition of HAVE_WORKING_O_NOFOLLOW.
16443         Reported by Simon Josefsson.
16444
16445 2006-11-30  Jim Meyering  <jim@meyering.net>
16446
16447         * m4/warning.m4: Use the all-permissive copyright notice
16448         recommended by RMS (rather than LGPL).
16449         * m4/vararrays.m4: Likewise.
16450         * m4/flexmember.m4: Likewise.
16451
16452 2006-11-29  Bruno Haible  <bruno@clisp.org>
16453
16454         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
16455         noinst_LIBRARIES. Augment noinst_LIBRARIES and noinst_LTLIBRARIES
16456         using +=.
16457         Reported by Simon Josefsson <simon@josefsson.org>.
16458
16459 2006-11-28  James Youngman <jay@gnu.org>
16460
16461         * README: Advise users that they might find the bug-gnulib@gnu.org
16462         and autotools-announce@gnu.org mailing lists useful.
16463
16464 2006-11-28  Bruno Haible  <bruno@clisp.org>
16465
16466         * m4/ptrdiff_max.m4: Remove file.
16467
16468 2006-11-21  Bruno Haible  <bruno@clisp.org>
16469
16470         * m4/eoverflow.m4 (gl_EOVERFLOW): Use AC_COMPUTE_INT instead of
16471         _AC_COMPUTE_INT.
16472         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
16473         * m4/ptrdiff_max.m4 (gl_PTRDIFF_MAX): Use AC_COMPUTE_INT instead of
16474         _AC_COMPUTE_INT.
16475         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
16476         * m4/size_max.m4 (gl_SIZE_MAX): Use AC_COMPUTE_INT instead of
16477         _AC_COMPUTE_INT.
16478         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
16479
16480 2006-11-28  Jim Meyering  <jim@meyering.net>
16481
16482         * lib/regcomp.c (parse_branch): Rename local, exp->expr, to avoid
16483         warning from "gcc -Wshadow" about shadowing the builtin.
16484
16485 2006-11-27  Bruno Haible  <bruno@clisp.org>
16486
16487         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): Use AC_COMPUTE_INT instead of
16488         _AC_COMPUTE_INT.
16489         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
16490
16491 2006-11-27  Bruno Haible  <bruno@clisp.org>
16492             Paul Eggert  <eggert@cs.ucla.edu>
16493
16494         * lib/regex.h (__restrict_arr): Redo logic of #if, for clarity.
16495
16496 2006-11-26  Bruno Haible  <bruno@clisp.org>
16497
16498         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
16499         noinst_LTLIBRARIES.
16500
16501 2006-11-27  Paul Eggert  <eggert@cs.ucla.edu>
16502             Bruno Haible  <bruno@clisp.org>
16503
16504         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to 0
16505         if compiling with "gcc -ansi".
16506
16507 2006-11-26  Paul Eggert  <eggert@cs.ucla.edu>
16508
16509         Fix some incompatibilities with gcc -ansi -pedantic.
16510         * lib/regex.h (__restrict_arr): Don't use the [restrict] syntax
16511         if compiling pedantically with GCC, unless it's C99 or later.
16512         Don't trust sys/cdefs.h's definition of __restrict_arr, either, as
16513         it mishandles gcc -ansi -pedantic as well.
16514         * lib/regex_internal.h (re_token_t): Don't use enum bitfields
16515         if gcc -pedantic.
16516         * lib/regexec.c (check_node_accept_bytes): Don't use auto
16517         initializers for struct if -pedantic, unless it's C99 or later.
16518
16519 2006-11-25  Nix  <nix@esperi.org.uk>  (tiny change)
16520
16521         * m4/fcntl_h.m4 (gl_FCNTL_H): Test the atime, not the mtime.
16522         Don't close an fd more than once. Identical atimes indicate
16523         success, not failure.
16524
16525 2006-11-22  Robinson Mittmann <bob@hoplon.com>  (tiny change)
16526
16527         * lib/sincosl.c (kernel_sinl): Fix typo in threshold.
16528
16529 2006-11-23  Jim Meyering  <jim@meyering.net>
16530
16531         * build-aux/announce-gen: New file.  From coreutils.
16532
16533 2006-11-22  Jim Meyering  <jim@meyering.net>
16534
16535         Work around a compile-time error from the HP-UX 11.00 /bin/cc.
16536         * lib/fts.c (enum Fts_stat): Give this previously-anon enum a name.
16537         (fts_read): Use a temporary to narrow the overused st_size member
16538         before using it in a switch statement.  Reported by Matthew Woehlke.
16539
16540         * m4/clock_time.m4 (gl_CLOCK_TIME): Quote AC_SUBST argument.
16541         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Likewise.
16542
16543 2006-11-20  Bruno Haible  <bruno@clisp.org>
16544
16545         * gettext.m4 (AM_GNU_GETTEXT): Revert 2005-07-28 patch: Use
16546         changequote instead of pairs of brackets.
16547         Reported by Andreas Schwab <schwab@suse.de>.
16548
16549 2006-11-21  Jim Meyering  <jim@meyering.net>
16550
16551         * lib/fts.c (fts_safe_changedir): Move a declaration "up",
16552         so as to remain compatible with older compilers.
16553         Patch from Michael Deutschmann.
16554
16555 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
16556
16557         * MODULES.html.sh (File system functions): Add openat.
16558
16559         * lib/openat.h (rpl_fstatat): New macro, if
16560         [HAVE_OPENAT && ! LSTAT_FOLLOWS_SLASHED_SYMLINK.
16561         (fstatat): Define to rpl_fstatat under the same conditions,
16562         unless COMPILING_FSTATAT.
16563         * m4/openat.m4 (gl_FUNC_OPENAT): Compile fstatat.c too, if fstatat
16564         seems to have the bug.
16565         * lib/fstatat.c: New file.
16566         * modules/openat (Files): Add it.
16567
16568 2006-11-20  Bruno Haible  <bruno@clisp.org>
16569
16570         * Makefile: New file.
16571
16572 2006-11-20  Jim Meyering  <jim@meyering.net>
16573
16574         The beginnings of syntax-related checks for gnulib.
16575         * lib/Makefile: New file.
16576         * lib/t-idcache: New script.  Ensure that the two halves of
16577         idcache.c stay in sync.
16578
16579         * lib/idcache.c: Adjust comments in user- and group- portions to
16580         be more accurate, and to be consistent with one another.
16581
16582 2006-11-20  Jim Meyering  <jim@meyering.net>
16583
16584         * lib/idcache.c: Restore most of the 2006-11-06 patch, so as to
16585         continue using the flexible array member (thus, this module performs
16586         half as many malloc calls), with the addition that...
16587         (getgroup, getuser): Consistently record a non-match via an empty
16588         "name" string, and map an empty string match to a NULL return value.
16589         * modules/idcache (Depends-on): Re-add flexmember.
16590
16591         * lib/idcache.c (getuser): Remove all uses of the register keyword.
16592         (getuidbyname, getgroup, getgidbyname): Likewise.
16593
16594         Use cleaner syntax: NULL rather than 0.
16595         * lib/idcache.c (getuidbyname, getgidbyname): Return NULL, not 0.
16596
16597 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
16598
16599         * lib/idcache.c: Undo most recent patch, dated 2006-11-06.
16600         It mishandled the case where the group was missing.
16601         Problem reported by Greg Schafer.
16602         * modules/idcache: Likewise.
16603
16604 2006-11-18  Jim Meyering  <jim@meyering.net>
16605
16606         * check-module (%exempt_header): Add exception for some
16607         conditionally-included headers.
16608
16609         * modules/i-ring (Depends-on): Add verify.
16610         (License): Change to LGPL.
16611
16612 2006-11-16  Paul Eggert  <eggert@cs.ucla.edu>
16613
16614         * modules/getaddinfo (Depends-on): Remove inttostr; add snprintf.
16615         * lib/getaddrinfo.c: Include snprintf.h rather than intprops.h
16616         and inttostr.h.  Use snprintf rather than uinttostr, so that
16617         LGPLed code doesn't depend on GPLed.
16618
16619 2006-11-17  Paul Eggert  <eggert@cs.ucla.edu>
16620
16621         * modules/inline (License): Change from GPL to LGPL.
16622
16623 2006-11-17  Jim Meyering  <jim@meyering.net>
16624
16625         * modules/d-type (License): Switch to LGPL.
16626
16627 2006-11-15  Bruno Haible  <bruno@clisp.org>
16628
16629         * m4/alloca.m4 (gl_FUNC_ALLOCA): Fix the AC_CACHE_CHECK message.
16630
16631 2006-11-15  Eric Blake  <ebb9@byu.net>
16632
16633         * m4/allocsa.m4 (gl_ALLOCSA): Don't invoke macro already picked up by
16634         the module dependency.
16635
16636 2006-11-15  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
16637             Bruno Haible  <bruno@clisp.org>
16638
16639         * gnulib-tool (func_create_testdir): Add license consistency check.
16640
16641 2006-11-15  Eric Blake  <ebb9@byu.net>
16642
16643         * m4/alloca.m4 (gl_FUNC_ALLOCA): Use AC_CACHE_CHECK to avoid a
16644         random "(cached)" in configure output.
16645
16646 2006-11-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16647
16648         * m4/inttypes.m4 (gl_INTTYPES_H): Use AC_CACHE_CHECK so that the
16649         test for conforming inttypes.h is both announced and cached.
16650
16651         * MODULES.html.sh (seen_modules, seen_files): New variables.
16652         (func_module): Rewrite to use a few less gnulib-tool and sed
16653         invocations.  Avoid a couple of quadratic algorithms for ...
16654         (missed_modules, missed_files): ... these, with ...
16655         (func_append, func_tmpdir): ... these new functions, from
16656         gnulib-tool.  Analogously, install traps for cleanup.
16657
16658         * tests/test-gc.c (main): Remove unused variables.
16659         * tests/test-read-file.c: Include stdlib.h, for 'free'.
16660
16661 2006-11-14  Paul Eggert  <eggert@cs.ucla.edu>
16662
16663         * modules/inttostr (License): Change to LGPL.
16664
16665 2006-11-14  Eric Blake  <ebb9@byu.net>
16666
16667         * modules/tempname (License): Change to LGPL.
16668
16669 2006-11-14  Eric Blake  <ebb9@byu.net>
16670
16671         * doc/functions.texi (Function Portability): *printf functions on
16672         Cygwin now understand all POSIX size specifiers.
16673
16674 2006-11-14  Bruno Haible  <bruno@clisp.org>
16675
16676         * modules/c-ctype (License): Change to LGPL.
16677
16678 2006-11-12  Bruno Haible  <bruno@clisp.org>
16679
16680         * m4/lib-link.m4 (AC_LIB_LINKFLAGS, AC_LIB_HAVE_LINKFLAGS,
16681         AC_LIB_LINKFLAGS_BODY): Also set a LIB${NAME}_PREFIX variable. Needed
16682         for GNOME libraries, for which the include files are installed in
16683         subdirectories of $prefix/include.
16684
16685 2006-11-12  Bruno Haible  <bruno@clisp.org>
16686
16687         * m4/lib-link.m4: Require at least autoconf-2.54.
16688         (AC_LIB_LINKFLAGS_BODY) [autoconf < 2.61]: Turn dots into the library
16689         name to underscores for the --with option.
16690
16691 2006-11-13  Bruno Haible  <bruno@clisp.org>
16692
16693         * gnulib-tool (func_create_testdir): Set gl_source_base correctly in
16694         the tests directory.
16695         Reported by Ralf Wildenhues.
16696
16697 2006-11-13  Bruno Haible  <bruno@clisp.org>
16698
16699         * gnulib-tool (func_emit_initmacro_start): Also override AC_LIBSOURCES.
16700         (func_emit_initmacro_end): Undo the override here.
16701         (func_emit_initmacro_done): Emit a definition for gl_LIBSOURCES.
16702         Works around the famous automake error in coreutils.
16703
16704 2006-11-13  Eric Blake  <ebb9@byu.net>
16705
16706         * lib/gl_anytree_oset.h (gl_tree_search_atleast): Return the
16707         element, not its node.
16708
16709 2006-11-12  Bruno Haible  <bruno@clisp.org>
16710
16711         * gnulib-tool (func_emit_lib_Makefile_am): Replace occurrences of
16712         '$(top_srcdir)/build-aux/', taking into account the real auxdir.
16713
16714 2006-11-12  Bruno Haible  <bruno@clisp.org>
16715
16716         * gnulib-tool: New option --local-symlink.
16717         (func_usage): Document it.
16718         (lsymbolic): New variable.
16719         (func_import, func_create_testdir): If --symlink was not specified,
16720         test whether --local-symlink was specified and the file comes from
16721         the local_gnulib_dir.
16722
16723 2006-11-12  Bruno Haible  <bruno@clisp.org>
16724
16725         * gnulib-tool (func_ln): New function.
16726         (func_ln_if_changed, func_create_testdir): Use it instead of "ln -s".
16727
16728 2006-11-12  Bruno Haible  <bruno@clisp.org>
16729
16730         Finish support for source files in subdirectories.
16731         * gnulib-tool (func_emit_lib_Makefile_am): If some of the source files
16732         are in subdirectories, set uses_subdirs and add 'subdir-objects' to
16733         AUTOMAKE_OPTIONS.
16734         (func_import, func_create_testdir): Invoke AM_PROG_CC_C_O in this case.
16735
16736 2006-11-12  Bruno Haible  <bruno@clisp.org>
16737
16738         * gnulib-tool (func_get_automake_snippet): Synthesize also an
16739         EXTRA_lib_SOURCES augmentation.
16740         (func_emit_lib_Makefile_am): Initialize EXTRA_lib..._SOURCES to empty.
16741
16742 2006-11-12  Jim Meyering  <jim@meyering.net>
16743
16744         Make fts (in FTS_CWDFD mode) more efficient by caching a few open
16745         file descriptors.  This also averts a failure on systems with
16746         native openat support when a traversed directory lacks "x" access.
16747         * lib/fts_.h: Include "i-ring.h"
16748         (struct FTS) [fts_fd_ring]: New member.
16749         * lib/fts.c (RESTORE_INITIAL_CWD): Also call fd_ring_clear.
16750         (FCHDIR): Add parentheses.
16751         (fd_ring_check, fd_ring_print) [!FTS_DEBUG]: Define away.
16752         (cwd_advance_fd): Add a 3rd parameter.  Adjust all callers.
16753         When descending, rather than simply closing the previous
16754         fts_cwd_fd value, push that file descriptor onto the ring.
16755         (same_fd, fd_ring_print, fd_ring_check) [FTS_DEBUG]: New functions.
16756         (fts_open): Initialize the new fd_ring member.
16757         (fts_close): Clear the ring.
16758         (fts_safe_changedir): When possible, use our new fd_ring to skip
16759         the diropen and fstat and dev/ino comparison that would normally
16760         accompany a virtual `chdir ("..")'.
16761
16762         * modules/fts (Depends-on): Add i-ring.
16763         * modules/i-ring: New module.
16764         * lib/i-ring.c, lib/i-ring.h, lib/i-ring-test.c: New files.
16765         * m4/i-ring.m4: New file.
16766
16767 2006-11-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16768
16769         * gnulib-tool (func_create_testdir): Fix replacement of
16770         `build-aux' in configure.ac.  Run autotools in gltests
16771         subdirectory.
16772         (func_create_testdir, func_create_megatestdir, test): There is
16773         no need for '--force' in most autotool invocations in a new
16774         tree.  Actually fail the whole test if any of the tools, or the
16775         configure or make stages fail.
16776
16777         Sync from Automake.
16778         * build-aux/gnupload: Revert last change.  Add pointer to upload
16779         instructions of the GNU Maintenance Instructions.
16780         Suggestion by Karl Berry.
16781
16782 2006-11-10  Jim Meyering  <jim@meyering.net>
16783
16784         * lib/fts.c [FTS_DEBUG]: Don't try to print a pointer via %s.
16785
16786 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
16787
16788         * lib/gettext.h (dgettext, dcgettext, ngettext) [! ENABLE_NLS]:
16789         (dngettext, dcngettext, bindtextdomain) [! ENABLE_NLS]:
16790         (bind_textdomain_codeset) [! ENABLE_NLS]:
16791         Evaluate all the arguments.  That way, callers get compatible behavior
16792         if the arguments have side effects.  Also, it avoids some GCC
16793         diagnostics in some cases; Joel E. Denny reported problems when Bison
16794         was configured with --enable-gcc-warnigs.
16795
16796 2006-11-10  Jim Meyering  <jim@meyering.net>
16797
16798         * m4/inline.m4 (gl_INLINE): Check with the compiler, not cpp, so that
16799         relevant options in CFLAGS (like -O, -fno-inline) are taken into
16800         account.
16801
16802 2006-11-10  Jim Meyering  <jim@meyering.net>
16803
16804         * modules/inline: New file/module.
16805         * modules/xalloc (Files): Remove m4/inline.m4.
16806         (Depends-on): Add inline, instead.
16807         * modules/oset: Likewise.
16808         * modules/list: Likewise.
16809
16810 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
16811
16812         * lib/stdint_.h (uintmax_t): Fix typo: int64_t -> uint64_t.
16813         Problem reported by Matthew Woehlke.
16814
16815 2006-11-09  Bruno Haible  <bruno@clisp.org>
16816
16817         * lib/tempname.c (gen_tempname): Remove variant that invokes
16818         __gen_tempname.
16819         * m4/tempname.m4 (gl_FUNC_GEN_TEMPNAME): Don't test for
16820         __gen_tempname.
16821
16822 2006-11-08  Bruno Haible  <bruno@clisp.org>
16823
16824         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Set ac_cv_type_long_long_int
16825         to 'yes' instead of 'cross-compiling'.
16826
16827 2006-11-08  Paul Eggert  <eggert@cs.ucla.edu>
16828
16829         * lib/quotearg.h (quotearg_free): New decl.
16830         * lib/quotearg.c (quotearg_free): New function.
16831         (slot0, nslots, slotvec0, slotvec):
16832         Now file-scope so that quotearg_free can get at them.
16833
16834 2006-11-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16835
16836         Sync from Automake.
16837         * build-aux/gnupload: Add missing 'gnu' to example URL.
16838         Report by Karl Berry.
16839
16840 2006-11-08  Bruno Haible  <bruno@clisp.org>
16841
16842         * m4/inline.m4 (gl_INLINE): Also test __NO_INLINE__.
16843         Suggested by Paul Eggert.
16844
16845 2006-11-08  Jim Meyering  <jim@meyering.net>
16846
16847         * lib/fts.c [!_LGPL_PACKAGE]: Don't include fcntl--.h twice.
16848         It's already included if !_LIBC.
16849         (fts_safe_changedir): Add a comment.
16850
16851 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
16852
16853         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Detect bug in
16854         Tandem NonStop Kernel (OSS) cc -O circa 2004, reported by
16855         Matthew Woehlke.
16856
16857         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Move
16858         definitions up, to avoid colliding with change below.
16859         (static_inline) [HAVE_INLINE]: New macro.
16860         (xnmalloc, xnrealloc, x2nrealloc, xcharalloc):
16861         Provide extern decls when !HAVE_INLINE.  Do not define unless
16862         static_inline is defined, either by us or by xmalloc.c.  Use
16863         static_inline rather than static inline.
16864         (XCALLOC): Optimize sizeof(T) = 1 case.
16865         * lib/xmalloc.c (static_inline) [!HAVE_INLINE]: New macro.
16866
16867 2006-11-07  Bruno Haible  <bruno@clisp.org>
16868
16869         * lib/xalloc.h (XNMALLOC): Restore optimization of sizeof(T) = 1 case.
16870         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require gl_INLINE instead of
16871         AC_C_INLINE.
16872         * modules/xalloc (Files): Add m4/inline.m4.
16873
16874 2006-11-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16875
16876         * README: Fix typo.
16877         * doc/gnulib.texi (Miscellaneous Notes): Likewise, rename...
16878         (Miscellanous Notes): ...from this.
16879
16880 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
16881
16882         * m4/flexmember.m4 (AC_C_FLEXIBLE_ARRAY_MEMBER):
16883         Mention that offsetof should be used instead of sizeof.
16884         From Bruno Haible.
16885
16886 2006-11-07  Bruno Haible  <bruno@clisp.org>
16887
16888         * lib/w32spawn.h (prepare_spawn): Use XNMALLOC instead of xmalloc.
16889
16890 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
16891
16892         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
16893         * lib/gl_anyavltree_list2.h (create_subtree_with_contents):
16894         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
16895         (gl_tree_add_before, gl_tree_add_after):
16896         Use XMALLOC instead of xmalloc, and XCALLOC instead of xzalloc.
16897         * lib/gl_anyhash_list2.h (hash_resize): Likewise.
16898         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
16899         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before):
16900         (gl_linked_add_after, gl_linked_add_at): Likewise.
16901         * lib/gl_anyrbtree_list2.h (create_subtree_with_contents):
16902         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
16903         (gl_tree_add_before, gl_tree_add_after): Likewise.
16904         * lib/gl_anytree_list2.h (gl_tree_create_empty): Likewise.
16905         * lib/gl_anytree_oset.h (gl_tree_create_empty): Likewise.
16906         * lib/gl_anytreehash_list1.h (add_to_bucket): Likewise.
16907
16908 2006-11-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16909
16910         * lib/gl_oset.h: Use C comment style, not C++ comment style.
16911
16912 2006-11-06  Bruno Haible  <bruno@clisp.org>
16913
16914         * m4/inline.m4: New file.
16915         * m4/gl_list.m4 (gl_LIST): Require gl_INLINE.
16916         * modules/list (Files): Add m4/inline.m4.
16917         * modules/oset (Files): Likewise.
16918
16919 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
16920
16921         * lib/idcache.c: Include <stddef.h>, for offsetof.
16922         (struct userid.name): Change from char * to a flexible array member.
16923         All uses changed.
16924         * modules/idcache (Depends-on): Add flexmember.
16925
16926         * MODULES.html.sh (Core language properties): New module flexmember.
16927         * modules/flexmember, m4/flexmember.m4: New files.
16928
16929         * lib/xalloc.h (xnmalloc, xnrealloc, x2nrealloc): Now static
16930         inline functions that are identical with the old xnmalloc_inline,
16931         xnrealloc_inline, x2nrealloc_inline of lib/xmalloc.c.  This is so
16932         that we can avoid some unnecessary integer multiplications and
16933         divisions in the common case where the element size is known at
16934         compile time.
16935         (XNMALLOC) [HAVE_INLINE]: Remove special case, which is no longer
16936         needed.
16937         (xnboundedmalloc): Remove.
16938         (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Use lower-case letters for
16939         arguments, for consistency with rest of this header.
16940         (xcharalloc): Rewrite using XNMALLOC.
16941         * lib/xmalloc.c (xnmalloc_inline, xnmalloc, xnrealloc_inline):
16942         (xnrealloc, x2nrealloc_inline, x2nrealloc): Remove.  The *_inline
16943         versions have been moved to lib/xalloc.h and renamed to be the
16944         non-*_inline versions.
16945         (xmalloc, xrealloc): Implement without reference to the xnmalloc
16946         and xnrealloc functions, since those functions are now inline and
16947         now call us.
16948         (x2realloc): Invoke x2realloc, not x2realloc_inline, to accommodate
16949         renaming described above.
16950         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Remove AC_C_INLINE since
16951         xmalloc.c no longer uses inline directly.  gl_PREREQ_XALLOC now
16952         captures the dependency in AC_C_INLINE.
16953
16954         New module canonicalize-lgpl, proposed by Charles Wilson in
16955         <http://lists.gnu.org/archive/html/bug-gnulib/2006-11/msg00020.html>
16956         with a few small changes afterwards.
16957         * MODULES.html.sh (File system functions): New module
16958         canonicalize-lgpl.
16959         * lib/canonicalize.h: Add comments for canonicalize_filename_mode
16960         and canonicalize_file_name.
16961         * lib/canonicalize-lgpl.c, m4/canonicalize-lgpl.m4:
16962         * modules/canonicalize-lgpl: New files.
16963
16964 2006-11-05  Bruno Haible  <bruno@clisp.org>
16965
16966         * gnulib-tool (func_import, func_create_testdir): Create directories
16967         also for files in subdirectories of lib/.
16968
16969 2006-11-05  Bruno Haible  <bruno@clisp.org>
16970
16971         * lib/gl_array_list.c (gl_array_iterator_next): Make pointer decrement
16972         ANSI C compliant.
16973
16974 2006-11-03  Bruno Haible  <bruno@clisp.org>
16975
16976         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
16977         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require AC_C_INLINE.
16978         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): New macros.
16979         (xnboundedmalloc): New inline function.
16980         * lib/classpath.c (new_classpath): Use XNMALLOC instead of xmalloc.
16981         * lib/clean-temp.c (create_temp_dir): Use XNMALLOC, XMALLOC instead of
16982         xmalloc.
16983         * lib/concatpath.c (concatenated_pathname): Use XNMALLOC instead of
16984         xmalloc.
16985         * lib/fatal-signal.c (at_fatal_signal): Use XNMALLOC instead of xmalloc.
16986         * lib/findprog.c (find_in_path): Use XNMALLOC instead of xmalloc.
16987         * lib/gl_array_list.c (gl_array_create_empty): Use XMALLOC instead of
16988         xmalloc.
16989         (gl_array_create): Use XNMALLOC, XMALLOC instead of xmalloc.
16990         * lib/gl_array_oset.c (gl_array_create_empty): Use XNMALLOC instead of
16991         xmalloc.
16992         * lib/gl_avltree_oset.c (gl_tree_add_first, gl_tree_add_before,
16993         gl_tree_add_after): Use XMALLOC instead of xmalloc.
16994         * lib/gl_carray_list.c (gl_carray_create_empty): Use XMALLOC instead of
16995         xmalloc.
16996         (gl_carray_create): Use XNMALLOC, XMALLOC instead of xmalloc.
16997         * lib/gl_rbtree_oset.c (gl_tree_add_first, gl_tree_add_before,
16998         gl_tree_add_after): Use XMALLOC instead of xmalloc.
16999         * lib/gl_sublist.c (gl_sublist_create): Use XMALLOC instead of xmalloc.
17000         * lib/pagealign_alloc.c (new_memnode): Use XMALLOC instead of xmalloc.
17001         * lib/sh-quote.c (shell_quote_argv): Use XNMALLOC instead of xmalloc.
17002         * lib/xvasprintf.c (xstrcat): Use XNMALLOC instead of xmalloc.
17003
17004 2006-11-03  Bruno Haible  <bruno@clisp.org>
17005
17006         * lib/c-ctype.h [C++]: Define functions without name mangling.
17007         * lib/fwriteerror.h [C++]: Likewise.
17008         * lib/gcd.h [C++]: Likewise.
17009         * lib/linebreak.h [C++]: Likewise.
17010
17011 2006-11-03  Paul Eggert  <eggert@cs.ucla.edu>
17012
17013         * lib/canonicalize.h: (canonicalize_mode_t, CAN_EXISTING):
17014         (CAN_ALL_BUT_LAST, CAN_MISSING, canonicalize_filename_mode):
17015         Define only if PROVIDE_CANONICALIZE_FILENAME_MODE is defined.
17016         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
17017         Check for functions and headers just once.
17018         Check for declaration of canonicalize_file_name.
17019         Define PROVIDE_CANONICALIZE_FILENAME_MODE.
17020
17021 2006-11-02  Charles Wilson  <cygwin@cwilson.fastmail.fm>
17022
17023         * gnulib-tool (func_import): Fix typo in actioncmd.
17024
17025 2006-11-02  Bruno Haible  <bruno@clisp.org>
17026
17027         * gnulib-tool (func_get_automake_snippet): Interpret a backslash-
17028         newline sequence in the Makefile.am snippet as a space, like "make"
17029         does.
17030         Reported by Roger Persson <perrog@gmail.com>.
17031
17032 2006-11-01  Bruno Haible  <bruno@clisp.org>
17033
17034         * m4/strcase.m4 (gl_FUNC_STRNCASECMP): Check whether strncasecmp is
17035         already declared in <string.h>.
17036         * lib/strcase.h (strncasecmp): Don't declare it if yes.
17037
17038 2006-11-01  Bruno Haible  <bruno@clisp.org>
17039
17040         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Don't define strcasecmp here.
17041         * lib/strcase.h: Include <string.h>.
17042         (strcasecmp): Define to rpl_strcasecmp here.
17043
17044 2006-11-01  Bruno Haible  <bruno@clisp.org>
17045
17046         * lib/printf-parse.c (PRINTF_PARSE): Cast malloc/realloc results.
17047
17048 2006-11-01  Eric Blake  <ebb9@byu.net>
17049
17050         * lib/mkstemp-safer.c (mkstemp_safer): Allow C++ compilation.
17051
17052         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Allow C++ configuration.
17053
17054 2006-10-29  Bruno Haible  <bruno@clisp.org>
17055
17056         Make it compile in C++ mode.
17057         * lib/full-write.c (full_rw): Add a cast.
17058
17059 2006-11-01  Bruno Haible  <bruno@clisp.org>
17060
17061         * gnulib-tool (func_get_automake_snippet): Change sed_combine_lines to
17062         be POSIX compliant.
17063         Reported by Roger Persson <perrog@gmail.com>.
17064
17065 2006-11-01  Eric Blake  <ebb9@byu.net>
17066
17067         * lib/getopt_.h: Fix comments.
17068
17069 2006-10-31  Eric Blake  <ebb9@byu.net>
17070
17071         * modules/tmpdir (Depends-on): Add sys_stat.
17072         * modules/mkdtemp (Depends-on): Add tempname, drop unistd.
17073         * lib/mkdtemp.c (gen_tempname): Remove; tempname covers this.
17074         * lib/tmpdir.c (S_ISDIR): Simplify, thanks to sys_stat.
17075         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Simplify, thanks to
17076         tempname.
17077
17078 2006-10-31  Paul Eggert  <eggert@cs.ucla.edu>
17079
17080         Avoid some C++ diagnostics reported by Bruno Haible.
17081         * lib/quotearg.c (clone_quoting_options): Use xmemdup rather than
17082         xmalloc.
17083         (quotearg_alloc): Use xcharalloc rather than xmalloc.
17084         (struct slotvec): Move to top level.
17085         (quotearg_n_options): Rewrite to avoid xmalloc.
17086         * lib/xalloc.h (xcharalloc): New function.
17087         * (xrealloc, xnrealloc, x2realloc, x2nrealloc, xmemdup):
17088         [defined __cplusplus]: Add function template that provides result
17089         type propagation.  This part of the change is from Bruno Haible.
17090
17091 2006-10-29  Bruno Haible  <bruno@clisp.org>
17092
17093         Make it compile in C++ mode.
17094         * lib/striconv.c (mem_cd_iconv): Cast malloc/realloc result.
17095         * lib/strnlen1.c (strnlen1): Cast memchr result.
17096         * lib/mbchar.h (mb_copy): Rename arguments to 'new_mbc', 'old_mbc'.
17097         * lib/clean-temp.c (string_equals, string_hash): Add casts.
17098         (create_temp_dir): Rename local variable 'template'.
17099         (compile_csharp_using_sscli): Add cast.
17100         * lib/fatal-signal.c (at_fatal_signal): Cast xmalloc result.
17101         * lib/findprog.c (find_in_path): Likewise.
17102         * lib/linebreak.c (mbs_width_linebreaks): Cast malloc result.
17103         * lib/wait-process.c (register_slave_subprocess): Likewise.
17104
17105 2006-10-22  Bruno Haible  <bruno@clisp.org>
17106
17107         * modules/tsearch: New file.
17108         * lib/tsearch.h: New file.
17109         * lib/tsearch.c: New file, from glibc-2.5 with small modifications.
17110         * m4/tsearch.m4: New file.
17111         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add tsearch.
17112
17113 2006-10-29  Eric Blake  <ebb9@byu.net>
17114
17115         * lib/arcfour.c: Assume config.h.
17116         * lib/arctwo.c: Likewise.
17117         * lib/base64.c: Likewise.
17118         * lib/check-version.c: Likewise.
17119         * lib/crc.c: Likewise.
17120         * lib/des.c: Likewise.
17121         * lib/gc-gnulib.c: Likewise.
17122         * lib/gc-libgcrypt.c: Likewise.
17123         * lib/gc-pbkdf2-sha1.c: Likewise.
17124         * lib/getaddrinfo.c: Likewise.
17125         * lib/getdelim.c: Likewise.
17126         * lib/getline.c: Likewise.
17127         * lib/hmac-md5.c: Likewise.
17128         * lib/hmac-sha1.c: Likewise.
17129         * lib/iconvme.c: Likewise.
17130         * lib/md2.c: Likewise.
17131         * lib/md4.c: Likewise.
17132         * lib/memxor.c: Likewise.
17133         * lib/read-file.c: Likewise.
17134         * lib/readline.c: Likewise.
17135         * lib/rijndael-alg-fst.c: Likewise.
17136         * lib/rijndael-api-fst.c: Likewise.
17137         * lib/xgetdomainname.c: Likewise.
17138
17139 2006-10-28  Eric Blake  <ebb9@byu.net>
17140
17141         * lib/xstrndup.c: Assume config.h.
17142
17143 2006-10-27  Paul Eggert  <eggert@cs.ucla.edu>
17144
17145         Move stat.h-substitute stuff from lib/stat-macros.h to lib/stat_.h.
17146         stat-macros.h is now for our own macros, whereas stat_h is for
17147         macros in the <sys/stat.h> name space.
17148         * lib/stat-macros.h: Remove copyright notice, as this file is now tiny.
17149         (STAT_MACROS_H): Remove.
17150         (S_IFMT, S_ISBLK, S_ISCHR, S_ISDIR, S_ISFIFO, S_ISLNK, S_ISNAM):
17151         (S_ISMPB, S_ISMPC, S_ISNWK, S_ISREG, S_ISSOCK, S_ISDOOR, S_ISPORT):
17152         (S_TYPEISMQ, S_TYPEISTMO, S_TYPEISSEM, S_TYPEISSHM, S_ISCTG, S_ISOFD):
17153         (S_ISOFL, S_ISWHT, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IRGRP):
17154         (S_IROTH, S_IWUSR, S_IWGRP, S_IWOTH, S_IXUSR, S_IXGRP, S_IXOTH):
17155         (S_IRWXU, S_IRWXG, S_IRWXO, S_IXUGO, S_IRWXUGO):
17156         Move these macros to ...
17157         * lib/stat_.h: here.  Don't include stat-macros.h.
17158         * lib/canonicalize.c: Don't include stat-macros.h.
17159         * lib/chown.c: Likewise.
17160         * lib/euidaccess.c: Likewise.
17161         * lib/file-type.c: Likewise.
17162         * lib/filemode.c: Likewise.
17163         * lib/glob.c: Likewise.
17164         * lib/isapipe.c: Likewise.
17165         * lib/lchown.c: Likewise.
17166         * lib/lstat.c: Likewise.
17167         * lib/mkdir-p.c: Likewise.
17168         * lib/rmdir.c: Likewise.
17169         * m4/lchown.m4 (gl_FUNC_LCHOWN): Don't require gl_STAT_MACROS.
17170         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Don't check for io.h
17171         unless mkdir isn't declared, to speed up 'configure'.
17172         Always create sys/stat.h, since it's unlikely any real sys/stat.h
17173         would define all the S_* symbols.
17174         * modules/canonicalize (Depends-on):
17175         Depend on sys_stat, not stat-macros.
17176         * modules/chown: Likewise.
17177         * modules/euidaccess: Likewise.
17178         * modules/filemode: Likewise.
17179         * modules/file-type: Likewise.
17180         * modules/glob: Likewise.
17181         * modules/isapipe: Likewise.
17182         * modules/lchown: Likewise.
17183         * modules/lstat: Likewise.
17184         * modules/mkancesdirs: Likewise.
17185         * modules/rmdir: Likewise.
17186         * modules/mkdir-p (Depends-on): Also depend on sys_stat.
17187         * modules/modechange: Likewise.
17188         * modules/stat-macros (Files): Remove m4/stat-macros.m4.
17189         (configure.ac): Remove gl_STAT_MACROS.
17190         * modules/sys_stat (Depends-on): Remove stat-macros.
17191
17192 2006-10-27  Bruno Haible  <bruno@clisp.org>
17193
17194         * m4/signed.m4: Remove file.
17195         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS_: Remove bh_C_SIGNED
17196         invocation.
17197         * modules/vasnprintf (Files): Remove m4/signed.m4.
17198
17199 2006-10-27  Bruno Haible  <bruno@clisp.org>
17200
17201         Update to GNU gettext 0.16.
17202         * modules/gettext (Files): Add m4/intl.m4, m4/intldir.m4. Remove
17203         m4/inttypes-h.m4, m4/signed.m4.
17204         * m4/gettext.m4: Update to GNU gettext 0.16.
17205         * m4/intl.m4: New file, from GNU gettext.
17206         * m4/intldir.m4: New file, from GNU gettext.
17207         * config/srclist.txt: Update
17208
17209 2006-10-27  Eric Blake  <ebb9@byu.net>
17210
17211         * MODULES.html.sh: Document tempname.
17212         * modules/mkstemp (Depends-on): Add tempname, and drop transitive
17213         dependencies.
17214         (Files): Move lib/tempname.c...
17215         * modules/tempname: ...to this new module.
17216         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Remove tempname checks.
17217         (gl_PREREQ_TEMPNAME): Move...
17218         * m4/tempname.m4: ...to this new file.
17219         * lib/mkstemp.c (includes) [!_LIBC]: Use tempname.h.
17220         * modules/sys_stat (Depends-on): Add stat-macros.
17221         * lib/stat_.h (includes): Pick up stat macros.
17222         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Replace <sys/stat.h>
17223         if stat macros are broken.
17224         * lib/tempname.c (includes): No need to include "stat-macros.h".
17225         (__gen_tempname) [!_LIBC]: Expose as gen_tempname.
17226         (direxists, __path_search) [!_LIBC]: Don't compile these in
17227         gnulib; the tmpdir module covers that.
17228         * lib/tempname.h: New file.
17229
17230 2006-10-26  Paul Eggert  <eggert@cs.ucla.edu>
17231
17232         * COPYING: Explain how gnulib-tool converts licence headers.
17233         Almost all wording by Eric Blake.
17234
17235 2006-10-25  Paul Eggert  <eggert@cs.ucla.edu>
17236
17237         * lib/mbchar.h (is_basic_table): Make read-only.
17238         * lib/mbchar.c (is_basic_table): Likewise.
17239         Reported by John Darrington.
17240
17241 2006-10-25  Bruno Haible  <bruno@clisp.org>
17242
17243         * lib/progname.h (set_program_name): Undefine before defining.
17244
17245 2006-10-25  Bruno Haible  <bruno@clisp.org>
17246
17247         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to
17248         false for non-gcc C++ compilers.
17249         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
17250
17251 2006-10-24  Bruno Haible  <bruno@clisp.org>
17252
17253         * lib/striconv.c (mem_cd_iconv, str_cd_iconv): Treat all non-GNU
17254         iconv implementations like Irix iconv.
17255
17256 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
17257
17258         * modules/vararrays: New file.
17259         * m4/vararrays.m4: New file, taken from diffutils.
17260         * MODULES.html.sh: New module vararrays.
17261
17262 2006-10-24  Karl Berry  <karl@gnu.org>
17263
17264         * doc/gnulib-intro.texi: --- instead of --; non-naive naive.
17265         Don't call GNU Unix.
17266
17267 2006-10-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17268
17269         * users.txt: Add Libtool.
17270
17271         Sync from Libtool:
17272
17273         2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
17274
17275         * lib/argz.c: Remove check for HAVE_CONFIG_H, to conform
17276         to gnulib's policy of including config.h unconditionally.
17277
17278 2006-10-24  Bruno Haible  <bruno@clisp.org>
17279
17280         * modules/wcwidth (Files): Add m4/wint_t.m4.
17281         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gt_TYPE_WINT_T.
17282         * lib/wcwidth.h (iswprint): Use 'int' if 'wint_t' is not defined.
17283
17284 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
17285
17286         * lib/getdate.y (yyerror): Make the arguments pointer-to-const,
17287         to pacify GCC with some -W flags enabled.  Problem reported by
17288         Bruno Haible.
17289
17290 2006-10-24  Jim Meyering  <jim@meyering.net>
17291
17292         * MODULES.html.sh: Remove uinttostr.  It's not a module.
17293         Reported by Karl Berry.
17294
17295 2006-10-23  Bruno Haible  <bruno@clisp.org>
17296
17297         * lib/fts.c (fts_build): Move variable declaration, for C89 compliance.
17298
17299 2006-10-24  Bruno Haible  <bruno@clisp.org>
17300
17301         * lib/gl_list.h: Use C comment style, not C++ comment style.
17302
17303 2006-10-23  Eric Blake  <ebb9@byu.net>
17304
17305         * lib/getaddrinfo.c (includes): Add missing include.
17306
17307 2006-10-23  Bruno Haible  <bruno@clisp.org>
17308             Paul Eggert  <eggert@cs.ucla.edu>
17309
17310         Ability to rename obstack_free.
17311         * lib/obstack.h (__obstack_free): New macro. Declare instead of
17312         obstack_free.
17313         (obstack_free): Invoke the __obstack_free macro.
17314         * lib/obstack.c (obstack_free): Use __obstack_free macro.
17315
17316 2006-10-23  Bruno Haible  <bruno@clisp.org>
17317             Paul Eggert  <eggert@cs.ucla.edu>
17318
17319         * lib/argp.h (argp_parse, __argp_parse): Comment out the identifiers
17320         __argc, __argv from the declaration. (They are defined as macros on
17321         mingw.)
17322
17323 2006-10-22  Bruno Haible  <bruno@clisp.org>
17324
17325         * doc/gnulib-intro.texi: New file.
17326         * doc/gnulib.texi: Include it.
17327
17328 2006-10-21  Bruno Haible  <bruno@clisp.org>
17329
17330         * doc/gnulib.texi: Split the chapter "Gnulib" into 3 chapters
17331         "Introduction", "Miscellanous Notes", "Particular Modules".
17332
17333 2006-10-21  Bruno Haible  <bruno@clisp.org>
17334
17335         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
17336         Change mostlyclean-local rule to avoid sh syntax error from bash
17337         versions 2.00..2.05 when $(MOSTLYCLEANDIRS) is empty.
17338
17339 2006-10-23  Jim Meyering  <jim@meyering.net>
17340
17341         * lib/getaddrinfo.c (getnameinfo): Use new lightweight uinttostr,
17342         in place of snprintf.
17343
17344         * modules/inttostr (Files): Add lib/uinttostr.c.
17345         * lib/uinttostr.c (inttostr): New file/function.
17346         * lib/inttostr.h (uinttostr): Declare.
17347         * m4/inttostr.m4: Add AC_LIBOBJ([uinttostr]).
17348         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
17349         Add uinttostr.
17350         * modules/getaddrinfo (Depends-on): Remove snprintf.  Add inttostr.
17351
17352 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
17353
17354         * lib/canonicalize.c (ELOOP): Define if not already defined.
17355         Problem reported by Bruno Haible in
17356         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00282.html>.
17357
17358 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
17359
17360         * lib/stdint_.h [defined _AIX]: Don't include <sys/types.h>.
17361         Problem reported by Perry Smith and Ville Laurikari.
17362
17363         * lib/getndelim2.c (SSIZE_MAX): Use same defn that getdelim.c
17364         uses.
17365
17366 2006-10-19  Bruno Haible  <bruno@clisp.org>
17367
17368         * lib/getndelim2.c (SSIZE_MAX): Provide fallback definition. Needed
17369         for mingw.
17370
17371 2006-10-19  Bruno Haible  <bruno@clisp.org>
17372
17373         * lib/openat-priv.h (EOPNOTSUPP): Provide fallback definition.
17374         Needed for mingw.
17375
17376 2006-10-19  Bruno Haible  <bruno@clisp.org>
17377
17378         * m4/size_max.m4 (gl_SIZE_MAX): Cache the result.
17379
17380 2006-10-19  Bruno Haible  <bruno@clisp.org>
17381
17382         * m4/allocsa.m4 (gl_ALLOCSA): Invoke gl_FUNC_ALLOCA, don't AC_REQUIRE
17383         it.
17384
17385 2006-10-19  Bruno Haible  <bruno@clisp.org>
17386
17387         * m4/alloca.m4 (gl_FUNC_ALLOCA): Cache the result of the AC_EGREP_CPP
17388         invocation.
17389
17390 2006-10-19  Bruno Haible  <bruno@clisp.org>
17391
17392         * gnulib-tool (func_create_testdir): Don't include ftruncate and
17393         mountlist by default.
17394
17395 2006-10-16  Bruno Haible  <bruno@clisp.org>
17396
17397         * lib/c-strstr.c: Include c-strstr.h.
17398
17399 2006-10-18  Charles Wilson  <cygwin@cwilson.fastmail.fm>
17400
17401         * gnulib-tool: Don't clobber $sourcebase when $local_gnulib_dir ends
17402         in a slash.
17403
17404 2006-10-18  Bruno Haible  <bruno@clisp.org>
17405
17406         * lib/lock.h [C++]: Wrap definitions in extern "C".
17407
17408 2006-10-18  Bruno Haible  <bruno@clisp.org>
17409
17410         * gnulib-tool (func_emit_initmacro_end): Remove duplicates from the
17411         gl_LIBOBJS list.
17412
17413 2006-10-18  Bruno Haible  <bruno@clisp.org>
17414
17415         * lib/findprog.c (find_in_path): Avoid "gcc -Wwrite-strings" warning.
17416
17417 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>
17418
17419         * lib/xstrtol.h: Include gettext.h.
17420         (_STRTOL_ERROR): Wrap English-language formats inside gettext.
17421         Problem reported by Eric Blake.
17422         * modules/xstrtol (Depends-on): Add gettext-h.
17423
17424 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>  (tiny change)
17425
17426         * lib/strftime.c (advance): New macro.
17427         (add): Use it to avoid adding 0 to a FILE *.  FILE can be an
17428         incomplete type, so you can't add 0 to it.  Problem and patch
17429         reported by Eelco Dolstra for dietlibc.
17430
17431 2006-10-18  Jim Meyering  <jim@meyering.net>
17432
17433         * lib/readutmp.c (desirable_utmp_entry): Use "bool" as the
17434         type for a local, and rename it: s/up/user_proc/.
17435
17436 2006-10-18  Sergey Poznyakoff  <gray@gnu.org.ua>
17437
17438         * lib/readutmp.c (desirable_utmp_entry): Implement new flag:
17439         READ_UTMP_USER_PROCESS.
17440         * lib/readutmp.h (READ_UTMP_USER_PROCESS): New flag
17441
17442 2006-10-17  Paul Eggert  <eggert@cs.ucla.edu>
17443
17444         * lib/localcharset.c: Do not check HAVE_SETLOCALE.
17445         * m4/localcharset.m4 (gl_LOCALCHARSET): Don't check for setlocale.
17446
17447 2006-10-17  Eric Blake  <ebb9@byu.net>
17448
17449         * lib/sigprocmask.c (sigprocmask): Fix typo.
17450
17451         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Fix typo.
17452
17453         * modules/clean-temp (Makefile.am): Don't add to make output...
17454         (configure.ac): ...instead define SIGNAL_SAFE_LIST inside
17455         config.h.
17456
17457 2006-10-17  Bruno Haible  <bruno@clisp.org>
17458
17459         * lib/gettext.h (gettext, ngettext, pgettext, npgettext): Define
17460         differently if DEFAULT_TEXT_DOMAIN is set.
17461
17462 2006-10-16  Bruno Haible  <bruno@clisp.org>
17463
17464         * lib/clean-temp.c: Include fwriteerror.h.
17465
17466 2006-10-16  Bruno Haible  <bruno@clisp.org>
17467
17468         * getndelim2.m4 (gl_GETNDELIM2): Remove 2003-10-23 hack.
17469
17470 2006-10-16  Bruno Haible  <bruno@clisp.org>
17471
17472         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Also test for sigset_t.
17473         * lib/sigprocmask.h: Include <sys/types.h>.
17474         (sigset_t): Use the system's definition if present.
17475
17476 2006-10-17  Eric Blake  <ebb9@byu.net>
17477
17478         * lib/xvasprintf.c (includes): Assume config.h.
17479         * lib/xasprintf.c (includes): Likewise.
17480
17481 2006-10-16  Paul Eggert  <eggert@cs.ucla.edu>
17482
17483         * lib/fsusage.c (PROPAGATE_ALL_ONES): Don't assume uintmax_t is
17484         at least as wide as intmax_t.
17485
17486 2006-10-16  Alexandre Duret-Lutz  <adl@gnu.org>
17487
17488         (Imported from Automake.)
17489         * build-aux/gnupload: Update to version 1.1 of directive file.
17490
17491 2006-10-16  Eric Blake  <ebb9@byu.net>
17492
17493         * modules/configmake (Makefile.am): Add pkglibexecdir support, to
17494         match Automake 1.10a.
17495
17496 2006-10-14  Bruno Haible  <bruno@clisp.org>
17497
17498         * modules/sigprocmask: New file.
17499         * lib/sigprocmask.h: New file.
17500         * lib/sigprocmask.c: New file.
17501         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Renamed from
17502         gt_SIGNALBLOCKING. When not defining HAVE_POSIX_SIGNALBLOCKING,
17503         request sigprocmask.o.
17504         (gl_PREREQ_SIGPROCMASK): New macro.
17505         * modules/fatal-signal (Files): Remove m4/signalblocking.m4.
17506         (Depends-on): Add sigprocmask.
17507         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Don't require
17508         gt_SIGNALBLOCKING. Test for 'raise' only once.
17509         * lib/fatal-signal.c: Include sigprocmask.h.
17510         (fatal_signal_set, init_fatal_signal_set, block_fatal_signals,
17511         unblock_fatal_signals): Define always.
17512         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
17513         sigprocmask.
17514
17515 2006-10-14  Paul Eggert  <eggert@cs.ucla.edu>
17516
17517         Sync from Automake.
17518         * build-aux/install-sh (posix_mkdir): Reject FreeBSD 6.1 mkdir -p -m,
17519         which incorrectly sets the mode of an existing destination
17520         directory.  In some cases the unpatched install-sh could do the
17521         equivalent of "chmod 777 /" or "chmod 0 /" on a buggy FreeBSD
17522         system.  We hope this is rare in practice, but it's clearly worth
17523         fixing.  Problem reported by Alex Unleashed in
17524         <http://lists.gnu.org/archive/html/bug-autoconf/2006-10/msg00012.html>.
17525         Also, don't bother to check for -m bugs unless we're using -m;
17526         suggested by Stepan Kasal.
17527
17528 2006-10-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17529
17530         Sync from Automake.
17531         * build-aux/depcomp (gcc3): Put dependency extraction flags before the
17532         `-c' flag, so they appear at the same position as in %FASTDEP%
17533         mode in depend2.am.  Fixes build failure for FreeBSD's c89,
17534         which ignores unknown options only after the first non-option.
17535         Bug report against M4 by Nelson H. F. Beebe.
17536
17537 2006-10-13  Jim Meyering  <jim@meyering.net>
17538
17539         Fix a bug in yesterday's change.
17540         * lib/fts.c (fts_open): When using FTS_XDEV|FTS_NOSTAT,
17541         p->fts_statp->st_dev would be used uninitialized.
17542         Ensures that we always call fts_stat on the very first entry.
17543         Miklos Szeredi reported that find -xdev stopped working.
17544
17545 2006-10-12  Bruno Haible  <bruno@clisp.org>
17546
17547         * gnulib-tool (func_get_automake_snippet): Append an automatically
17548         computed EXTRA_DIST augmentation.
17549         * modules/acl (Makefile.am): Remove EXTRA_DIST augmentation.
17550         * modules/alloca-opt (Makefile.am): Likewise.
17551         * modules/allocsa (Makefile.am): Likewise.
17552         * modules/arcfour (Makefile.am): Likewise.
17553         * modules/arctwo (Makefile.am): Likewise.
17554         * modules/argmatch (Makefile.am): Likewise.
17555         * modules/argz (Makefile.am): Likewise.
17556         * modules/atexit (Makefile.am): Likewise.
17557         * modules/backupfile (Makefile.am): Likewise.
17558         * modules/byteswap (Makefile.am): Likewise.
17559         * modules/c-strtod (Makefile.am): Likewise.
17560         * modules/c-strtold (Makefile.am): Likewise.
17561         * modules/calloc (Makefile.am): Likewise.
17562         * modules/canon-host (Makefile.am): Likewise.
17563         * modules/canonicalize (Makefile.am): Likewise.
17564         * modules/chdir-long (Makefile.am): Likewise.
17565         * modules/chdir-safer (Makefile.am): Likewise.
17566         * modules/check-version (Makefile.am): Likewise.
17567         * modules/chown (Makefile.am): Likewise.
17568         * modules/cloexec (Makefile.am): Likewise.
17569         * modules/close-stream (Makefile.am): Likewise.
17570         * modules/closeout (Makefile.am): Likewise.
17571         * modules/crc (Makefile.am): Likewise.
17572         * modules/csharpexec (Makefile.am): Likewise.
17573         * modules/cycle-check (Makefile.am): Likewise.
17574         * modules/des (Makefile.am): Likewise.
17575         * modules/dev-ino (Makefile.am): Likewise.
17576         * modules/dirfd (Makefile.am): Likewise.
17577         * modules/dirname (Makefile.am): Likewise.
17578         * modules/dup2 (Makefile.am): Likewise.
17579         * modules/eealloc (Makefile.am): Likewise.
17580         * modules/error (Makefile.am): Likewise.
17581         * modules/euidaccess (Makefile.am): Likewise.
17582         * modules/exclude (Makefile.am): Likewise.
17583         * modules/exitfail (Makefile.am): Likewise.
17584         * modules/fcntl-safer (Makefile.am): Likewise.
17585         * modules/fcntl (Makefile.am): Likewise.
17586         * modules/file-type (Makefile.am): Likewise.
17587         * modules/fileblocks (Makefile.am): Likewise.
17588         * modules/filemode (Makefile.am): Likewise.
17589         * modules/filenamecat (Makefile.am): Likewise.
17590         * modules/fnmatch (Makefile.am): Likewise.
17591         * modules/fopen-safer (Makefile.am): Likewise.
17592         * modules/fpending (Makefile.am): Likewise.
17593         * modules/fprintftime (Makefile.am): Likewise.
17594         * modules/free (Makefile.am): Likewise.
17595         * modules/fsusage (Makefile.am): Likewise.
17596         * modules/ftruncate (Makefile.am): Likewise.
17597         * modules/fts (Makefile.am): Likewise.
17598         * modules/gc-arcfour (Makefile.am): Likewise.
17599         * modules/gc-des (Makefile.am): Likewise.
17600         * modules/gc-hmac-md5 (Makefile.am): Likewise.
17601         * modules/gc-hmac-sha1 (Makefile.am): Likewise.
17602         * modules/gc-md4 (Makefile.am): Likewise.
17603         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
17604         * modules/gc-sha1 (Makefile.am): Likewise.
17605         * modules/gc (Makefile.am): Likewise.
17606         * modules/getaddrinfo (Makefile.am): Likewise.
17607         * modules/getcwd (Makefile.am): Likewise.
17608         * modules/getdelim (Makefile.am): Likewise.
17609         * modules/getdomainname (Makefile.am): Likewise.
17610         * modules/getgroups (Makefile.am): Likewise.
17611         * modules/gethostname (Makefile.am): Likewise.
17612         * modules/gethrxtime (Makefile.am): Likewise.
17613         * modules/getline (Makefile.am): Likewise.
17614         * modules/getloadavg (Makefile.am): Likewise.
17615         * modules/getlogin_r (Makefile.am): Likewise.
17616         * modules/getndelim2 (Makefile.am): Likewise.
17617         * modules/getopt (Makefile.am): Likewise.
17618         * modules/getpagesize (Makefile.am): Likewise.
17619         * modules/getpass-gnu (Makefile.am): Likewise.
17620         * modules/getpass (Makefile.am): Likewise.
17621         * modules/getsubopt (Makefile.am): Likewise.
17622         * modules/gettime (Makefile.am): Likewise.
17623         * modules/gettimeofday (Makefile.am): Likewise.
17624         * modules/getugroups (Makefile.am): Likewise.
17625         * modules/getusershell (Makefile.am): Likewise.
17626         * modules/glob (Makefile.am): Likewise.
17627         * modules/group-member (Makefile.am): Likewise.
17628         * modules/hard-locale (Makefile.am): Likewise.
17629         * modules/hash (Makefile.am): Likewise.
17630         * modules/hmac-md5 (Makefile.am): Likewise.
17631         * modules/hmac-sha1 (Makefile.am): Likewise.
17632         * modules/human (Makefile.am): Likewise.
17633         * modules/idcache (Makefile.am): Likewise.
17634         * modules/imaxabs (Makefile.am): Likewise.
17635         * modules/imaxdiv (Makefile.am): Likewise.
17636         * modules/inet_ntop (Makefile.am): Likewise.
17637         * modules/inet_pton (Makefile.am): Likewise.
17638         * modules/intprops (Makefile.am): Likewise.
17639         * modules/inttostr (Makefile.am): Likewise.
17640         * modules/inttypes (Makefile.am): Likewise.
17641         * modules/isapipe (Makefile.am): Likewise.
17642         * modules/javaversion (Makefile.am): Likewise.
17643         * modules/lchmod (Makefile.am): Likewise.
17644         * modules/lchown (Makefile.am): Likewise.
17645         * modules/localcharset (Makefile.am): Likewise.
17646         * modules/long-options (Makefile.am): Likewise.
17647         * modules/lstat (Makefile.am): Likewise.
17648         * modules/malloc (Makefile.am): Likewise.
17649         * modules/mathl (Makefile.am): Likewise.
17650         * modules/mbchar (Makefile.am): Likewise.
17651         * modules/md2 (Makefile.am): Likewise.
17652         * modules/md4 (Makefile.am): Likewise.
17653         * modules/md5 (Makefile.am): Likewise.
17654         * modules/memcasecmp (Makefile.am): Likewise.
17655         * modules/memchr (Makefile.am): Likewise.
17656         * modules/memcmp (Makefile.am): Likewise.
17657         * modules/memcoll (Makefile.am): Likewise.
17658         * modules/memcpy (Makefile.am): Likewise.
17659         * modules/memmem (Makefile.am): Likewise.
17660         * modules/memmove (Makefile.am): Likewise.
17661         * modules/mempcpy (Makefile.am): Likewise.
17662         * modules/memrchr (Makefile.am): Likewise.
17663         * modules/memset (Makefile.am): Likewise.
17664         * modules/memxor (Makefile.am): Likewise.
17665         * modules/mkancesdirs (Makefile.am): Likewise.
17666         * modules/mkdir-p (Makefile.am): Likewise.
17667         * modules/mkdir (Makefile.am): Likewise.
17668         * modules/mkdtemp (Makefile.am): Likewise.
17669         * modules/mkstemp (Makefile.am): Likewise.
17670         * modules/mktime (Makefile.am): Likewise.
17671         * modules/modechange (Makefile.am): Likewise.
17672         * modules/mountlist (Makefile.am): Likewise.
17673         * modules/nanosleep (Makefile.am): Likewise.
17674         * modules/obstack (Makefile.am): Likewise.
17675         * modules/openat (Makefile.am): Likewise.
17676         * modules/pagealign_alloc (Makefile.am): Likewise.
17677         * modules/pathmax (Makefile.am): Likewise.
17678         * modules/physmem (Makefile.am): Likewise.
17679         * modules/poll (Makefile.am): Likewise.
17680         * modules/posixtm (Makefile.am): Likewise.
17681         * modules/posixver (Makefile.am): Likewise.
17682         * modules/putenv (Makefile.am): Likewise.
17683         * modules/quote (Makefile.am): Likewise.
17684         * modules/quotearg (Makefile.am): Likewise.
17685         * modules/raise (Makefile.am): Likewise.
17686         * modules/read-file (Makefile.am): Likewise.
17687         * modules/readline (Makefile.am): Likewise.
17688         * modules/readlink (Makefile.am): Likewise.
17689         * modules/readtokens (Makefile.am): Likewise.
17690         * modules/readutmp (Makefile.am): Likewise.
17691         * modules/realloc (Makefile.am): Likewise.
17692         * modules/regex (Makefile.am): Likewise.
17693         * modules/rename-dest-slash (Makefile.am): Likewise.
17694         * modules/rename (Makefile.am): Likewise.
17695         * modules/rijndael (Makefile.am): Likewise.
17696         * modules/rmdir (Makefile.am): Likewise.
17697         * modules/rpmatch (Makefile.am): Likewise.
17698         * modules/safe-read (Makefile.am): Likewise.
17699         * modules/safe-write (Makefile.am): Likewise.
17700         * modules/same-inode (Makefile.am): Likewise.
17701         * modules/same (Makefile.am): Likewise.
17702         * modules/save-cwd (Makefile.am): Likewise.
17703         * modules/savedir (Makefile.am): Likewise.
17704         * modules/setenv (Makefile.am): Likewise.
17705         * modules/settime (Makefile.am): Likewise.
17706         * modules/sha1 (Makefile.am): Likewise.
17707         * modules/sig2str (Makefile.am): Likewise.
17708         * modules/snprintf (Makefile.am): Likewise.
17709         * modules/stat-macros (Makefile.am): Likewise.
17710         * modules/stat-time (Makefile.am): Likewise.
17711         * modules/stdbool (Makefile.am): Likewise.
17712         * modules/stdint (Makefile.am): Likewise.
17713         * modules/stdlib-safer (Makefile.am): Likewise.
17714         * modules/stpcpy (Makefile.am): Likewise.
17715         * modules/stpncpy (Makefile.am): Likewise.
17716         * modules/strcase (Makefile.am): Likewise.
17717         * modules/strcasestr (Makefile.am): Likewise.
17718         * modules/strchrnul (Makefile.am): Likewise.
17719         * modules/strcspn (Makefile.am): Likewise.
17720         * modules/strdup (Makefile.am): Likewise.
17721         * modules/strerror (Makefile.am): Likewise.
17722         * modules/strftime (Makefile.am): Likewise.
17723         * modules/strndup (Makefile.am): Likewise.
17724         * modules/strnlen (Makefile.am): Likewise.
17725         * modules/strpbrk (Makefile.am): Likewise.
17726         * modules/strsep (Makefile.am): Likewise.
17727         * modules/strstr (Makefile.am): Likewise.
17728         * modules/strtod (Makefile.am): Likewise.
17729         * modules/strtoimax (Makefile.am): Likewise.
17730         * modules/strtok_r (Makefile.am): Likewise.
17731         * modules/strtol (Makefile.am): Likewise.
17732         * modules/strtoll (Makefile.am): Likewise.
17733         * modules/strtoul (Makefile.am): Likewise.
17734         * modules/strtoull (Makefile.am): Likewise.
17735         * modules/strtoumax (Makefile.am): Likewise.
17736         * modules/strverscmp (Makefile.am): Likewise.
17737         * modules/sys_socket (Makefile.am): Likewise.
17738         * modules/sys_stat (Makefile.am): Likewise.
17739         * modules/sysexits (Makefile.am): Likewise.
17740         * modules/time_r (Makefile.am): Likewise.
17741         * modules/timegm (Makefile.am): Likewise.
17742         * modules/timespec (Makefile.am): Likewise.
17743         * modules/tmpfile-safer (Makefile.am): Likewise.
17744         * modules/trim (Makefile.am): Likewise.
17745         * modules/unistd-safer (Makefile.am): Likewise.
17746         * modules/unlinkdir (Makefile.am): Likewise.
17747         * modules/unlocked-io (Makefile.am): Likewise.
17748         * modules/userspec (Makefile.am): Likewise.
17749         * modules/utime (Makefile.am): Likewise.
17750         * modules/utimecmp (Makefile.am): Likewise.
17751         * modules/utimens (Makefile.am): Likewise.
17752         * modules/vasnprintf (Makefile.am): Likewise.
17753         * modules/vasprintf (Makefile.am): Likewise.
17754         * modules/vsnprintf (Makefile.am): Likewise.
17755         * modules/xalloc (Makefile.am): Likewise.
17756         * modules/xgetcwd (Makefile.am): Likewise.
17757         * modules/xnanosleep (Makefile.am): Likewise.
17758         * modules/xreadlink (Makefile.am): Likewise.
17759         * modules/xstrtod (Makefile.am): Likewise.
17760         * modules/xstrtol (Makefile.am): Likewise.
17761         * modules/xstrtold (Makefile.am): Likewise.
17762         * modules/yesno (Makefile.am): Likewise.
17763         * modules/getdate (Makefile.am): Don't add getdate.h to EXTRA_DIST.
17764
17765 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
17766
17767         * modules/error (Makefile.am): Distribute files through
17768         EXTRA_DIST, not lib_SOURCES.
17769
17770 2006-10-12  Eric Blake  <ebb9@byu.net>
17771
17772         * modules/error (Makefile.am): Distribute files in /lib.
17773         * modules/obstack (Makefile.am): Likewise.
17774
17775 2006-10-12  Bruno Haible  <bruno@clisp.org>
17776
17777         * modules/acl (Makefile.am): Distribute all files in lib/ through
17778         EXTRA_DIST.
17779         * modules/arcfour (Makefile.am): Likewise.
17780         * modules/arctwo (Makefile.am): Likewise.
17781         * modules/argmatch (Makefile.am): Likewise.
17782         * modules/argz (Makefile.am): Likewise.
17783         * modules/atexit (Makefile.am): Likewise.
17784         * modules/backupfile (Makefile.am): Likewise.
17785         * modules/c-strtod (Makefile.am): Likewise.
17786         * modules/c-strtold (Makefile.am): Likewise.
17787         * modules/calloc (Makefile.am): Likewise.
17788         * modules/canon-host (Makefile.am): Likewise.
17789         * modules/canonicalize (Makefile.am): Likewise.
17790         * modules/chdir-long (Makefile.am): Likewise.
17791         * modules/chdir-safer (Makefile.am): Likewise.
17792         * modules/check-version (Makefile.am): Likewise.
17793         * modules/chown (Makefile.am): Likewise.
17794         * modules/cloexec (Makefile.am): Likewise.
17795         * modules/close-stream (Makefile.am): Likewise.
17796         * modules/closeout (Makefile.am): Likewise.
17797         * modules/crc (Makefile.am): Likewise.
17798         * modules/cycle-check (Makefile.am): Likewise.
17799         * modules/des (Makefile.am): Likewise.
17800         * modules/dirfd (Makefile.am): Likewise.
17801         * modules/dirname (Makefile.am): Likewise.
17802         * modules/dup2 (Makefile.am): Likewise.
17803         * modules/euidaccess (Makefile.am): Likewise.
17804         * modules/exclude (Makefile.am): Likewise.
17805         * modules/exitfail (Makefile.am): Likewise.
17806         * modules/fcntl-safer (Makefile.am): Likewise.
17807         * modules/file-type (Makefile.am): Likewise.
17808         * modules/fileblocks (Makefile.am): Likewise.
17809         * modules/filemode (Makefile.am): Likewise.
17810         * modules/filenamecat (Makefile.am): Likewise.
17811         * modules/fnmatch (Makefile.am): Likewise.
17812         * modules/fopen-safer (Makefile.am): Likewise.
17813         * modules/fpending (Makefile.am): Likewise.
17814         * modules/fprintftime (Makefile.am): Likewise.
17815         * modules/free (Makefile.am): Likewise.
17816         * modules/fsusage (Makefile.am): Likewise.
17817         * modules/ftruncate (Makefile.am): Likewise.
17818         * modules/fts (Makefile.am): Likewise.
17819         * modules/gc (Makefile.am): Likewise.
17820         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
17821         * modules/getaddrinfo (Makefile.am): Likewise.
17822         * modules/getcwd (Makefile.am): Likewise.
17823         * modules/getdelim (Makefile.am): Likewise.
17824         * modules/getdomainname (Makefile.am): Likewise.
17825         * modules/getgroups (Makefile.am): Likewise.
17826         * modules/gethostname (Makefile.am): Likewise.
17827         * modules/gethrxtime (Makefile.am): Likewise.
17828         * modules/getline (Makefile.am): Likewise.
17829         * modules/getloadavg (Makefile.am): Likewise.
17830         * modules/getlogin_r (Makefile.am): Likewise.
17831         * modules/getopt (Makefile.am): Likewise.
17832         * modules/getpass (Makefile.am): Likewise.
17833         * modules/getpass-gnu (Makefile.am): Likewise.
17834         * modules/getsubopt (Makefile.am): Likewise.
17835         * modules/gettime (Makefile.am): Likewise.
17836         * modules/gettimeofday (Makefile.am): Likewise.
17837         * modules/getugroups (Makefile.am): Likewise.
17838         * modules/getusershell (Makefile.am): Likewise.
17839         * modules/glob (Makefile.am): Likewise.
17840         * modules/group-member (Makefile.am): Likewise.
17841         * modules/hard-locale (Makefile.am): Likewise.
17842         * modules/hash (Makefile.am): Likewise.
17843         * modules/hmac-md5 (Makefile.am): Likewise.
17844         * modules/hmac-sha1 (Makefile.am): Likewise.
17845         * modules/human (Makefile.am): Likewise.
17846         * modules/idcache (Makefile.am): Likewise.
17847         * modules/imaxabs (Makefile.am): Likewise.
17848         * modules/imaxdiv (Makefile.am): Likewise.
17849         * modules/inet_ntop (Makefile.am): Likewise.
17850         * modules/inet_pton (Makefile.am): Likewise.
17851         * modules/inttostr (Makefile.am): Likewise.
17852         * modules/isapipe (Makefile.am): Likewise.
17853         * modules/lchown (Makefile.am): Likewise.
17854         * modules/long-options (Makefile.am): Likewise.
17855         * modules/lstat (Makefile.am): Likewise.
17856         * modules/malloc (Makefile.am): Likewise.
17857         * modules/mathl (Makefile.am): Likewise.
17858         * modules/mbchar (Makefile.am): Likewise.
17859         * modules/md2 (Makefile.am): Likewise.
17860         * modules/md4 (Makefile.am): Likewise.
17861         * modules/md5 (Makefile.am): Likewise.
17862         * modules/memcasecmp (Makefile.am): Likewise.
17863         * modules/memchr (Makefile.am): Likewise.
17864         * modules/memcmp (Makefile.am): Likewise.
17865         * modules/memcoll (Makefile.am): Likewise.
17866         * modules/memcpy (Makefile.am): Likewise.
17867         * modules/memmem (Makefile.am): Likewise.
17868         * modules/memmove (Makefile.am): Likewise.
17869         * modules/mempcpy (Makefile.am): Likewise.
17870         * modules/memrchr (Makefile.am): Likewise.
17871         * modules/memset (Makefile.am): Likewise.
17872         * modules/memxor (Makefile.am): Likewise.
17873         * modules/mkancesdirs (Makefile.am): Likewise.
17874         * modules/mkdir (Makefile.am): Likewise.
17875         * modules/mkdir-p (Makefile.am): Likewise.
17876         * modules/mkdtemp (Makefile.am): Likewise.
17877         * modules/mkstemp (Makefile.am): Likewise.
17878         * modules/mktime (Makefile.am): Likewise.
17879         * modules/modechange (Makefile.am): Likewise.
17880         * modules/mountlist (Makefile.am): Likewise.
17881         * modules/nanosleep (Makefile.am): Likewise.
17882         * modules/openat (Makefile.am): Likewise.
17883         * modules/pagealign_alloc (Makefile.am): Likewise.
17884         * modules/physmem (Makefile.am): Likewise.
17885         * modules/poll (Makefile.am): Likewise.
17886         * modules/posixtm (Makefile.am): Likewise.
17887         * modules/posixver (Makefile.am): Likewise.
17888         * modules/putenv (Makefile.am): Likewise.
17889         * modules/quote (Makefile.am): Likewise.
17890         * modules/quotearg (Makefile.am): Likewise.
17891         * modules/raise (Makefile.am): Likewise.
17892         * modules/read-file (Makefile.am): Likewise.
17893         * modules/readline (Makefile.am): Likewise.
17894         * modules/readlink (Makefile.am): Likewise.
17895         * modules/readtokens (Makefile.am): Likewise.
17896         * modules/readutmp (Makefile.am): Likewise.
17897         * modules/realloc (Makefile.am): Likewise.
17898         * modules/regex (Makefile.am): Likewise.
17899         * modules/rename (Makefile.am): Likewise.
17900         * modules/rename-dest-slash (Makefile.am): Likewise.
17901         * modules/rijndael (Makefile.am): Likewise.
17902         * modules/rmdir (Makefile.am): Likewise.
17903         * modules/rpmatch (Makefile.am): Likewise.
17904         * modules/safe-read (Makefile.am): Likewise.
17905         * modules/safe-write (Makefile.am): Likewise.
17906         * modules/same (Makefile.am): Likewise.
17907         * modules/save-cwd (Makefile.am): Likewise.
17908         * modules/savedir (Makefile.am): Likewise.
17909         * modules/setenv (Makefile.am): Likewise.
17910         * modules/settime (Makefile.am): Likewise.
17911         * modules/sha1 (Makefile.am): Likewise.
17912         * modules/sig2str (Makefile.am): Likewise.
17913         * modules/snprintf (Makefile.am): Likewise.
17914         * modules/stdlib-safer (Makefile.am): Likewise.
17915         * modules/stpcpy (Makefile.am): Likewise.
17916         * modules/stpncpy (Makefile.am): Likewise.
17917         * modules/strcase (Makefile.am): Likewise.
17918         * modules/strcasestr (Makefile.am): Likewise.
17919         * modules/strchrnul (Makefile.am): Likewise.
17920         * modules/strcspn (Makefile.am): Likewise.
17921         * modules/strdup (Makefile.am): Likewise.
17922         * modules/strerror (Makefile.am): Likewise.
17923         * modules/strftime (Makefile.am): Likewise.
17924         * modules/strndup (Makefile.am): Likewise.
17925         * modules/strnlen (Makefile.am): Likewise.
17926         * modules/strpbrk (Makefile.am): Likewise.
17927         * modules/strsep (Makefile.am): Likewise.
17928         * modules/strstr (Makefile.am): Likewise.
17929         * modules/strtod (Makefile.am): Likewise.
17930         * modules/strtoimax (Makefile.am): Likewise.
17931         * modules/strtok_r (Makefile.am): Likewise.
17932         * modules/strtol (Makefile.am): Likewise.
17933         * modules/strtoll (Makefile.am): Likewise.
17934         * modules/strtoul (Makefile.am): Likewise.
17935         * modules/strtoull (Makefile.am): Likewise.
17936         * modules/strtoumax (Makefile.am): Likewise.
17937         * modules/strverscmp (Makefile.am): Likewise.
17938         * modules/time_r (Makefile.am): Likewise.
17939         * modules/timegm (Makefile.am): Likewise.
17940         * modules/tmpfile-safer (Makefile.am): Likewise.
17941         * modules/unistd-safer (Makefile.am): Likewise.
17942         * modules/unlinkdir (Makefile.am): Likewise.
17943         * modules/userspec (Makefile.am): Likewise.
17944         * modules/utime (Makefile.am): Likewise.
17945         * modules/utimecmp (Makefile.am): Likewise.
17946         * modules/utimens (Makefile.am): Likewise.
17947         * modules/vasnprintf (Makefile.am): Likewise.
17948         * modules/vasprintf (Makefile.am): Likewise.
17949         * modules/vsnprintf (Makefile.am): Likewise.
17950         * modules/xalloc (Makefile.am): Likewise.
17951         * modules/xgetcwd (Makefile.am): Likewise.
17952         * modules/xnanosleep (Makefile.am): Likewise.
17953         * modules/xreadlink (Makefile.am): Likewise.
17954         * modules/xstrtod (Makefile.am): Likewise.
17955         * modules/xstrtol (Makefile.am): Likewise.
17956         * modules/xstrtold (Makefile.am): Likewise.
17957         * modules/yesno (Makefile.am): Likewise.
17958
17959 2006-10-12  Jim Meyering  <jim@meyering.net>
17960
17961         * m4/getloadavg.m4: Revert the change below.
17962
17963         * m4/getloadavg.m4 (gl_GETLOADAVG): Test for the existence of
17964         lib/getloadavg.c using "ls -L", not "test -f".  The latter would
17965         fail with a symlink, which is what coreutils' ./bootstrap now
17966         creates by default.
17967
17968 2006-10-12  Bruno Haible  <bruno@clisp.org>
17969
17970         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): Don't define for MSVC or
17971         mingw.
17972         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX): Handle
17973         MSVC and mingw explicitly.
17974
17975 2006-10-11  Simon Josefsson  <jas@extundo.com>
17976             Bruno Haible  <bruno@clisp.org>
17977
17978         Add support for multiple gnulib-tool invocations in the scope of a
17979         single configure.ac file.
17980         * gnulib-tool (func_emit_lib_Makefile_am): In the _LIBADD variable,
17981         use a private [LT]LIBOBJS variant. Define a _DEPENDENCIES variable
17982         with the same contents as the _LIBADD variable.
17983         (func_emit_initmacro_start, func_emit_initmacro_end,
17984         func_emit_initmacro_done): New functions.
17985         (func_import, func_create_testdir): Invoke them. Allow the identifiers
17986         gl_LIBOBJS and gl_LTLIBOBJS.
17987
17988 2006-10-11  Bruno Haible  <bruno@clisp.org>
17989
17990         * gnulib-tool (GETTEXTPATH, AUTOHEADER, AUTOPOINT): New variables.
17991         (func_create_testdir): Don't create po/Makefile.am, don't invoke
17992         autoreconf. Instead, invoke autopoint explicitly but move back the
17993         *.m4 files from gnulib.
17994
17995 2006-10-11  Bruno Haible  <bruno@clisp.org>
17996
17997         * gnulib-tool (func_usage): Make module names after --create-testdir
17998         optional.
17999         (func_create_testdir): If no module was specified, use nearly all
18000         modules.
18001
18002 2006-10-12  Jim Meyering  <jim@meyering.net>
18003
18004         Big performance improvement for fts-based tools that use FTS_NOSTAT.
18005         Avoid spurious inode-mismatch problems on non-POSIX file systems.
18006         Details: http://article.gmane.org/gmane.comp.lib.gnulib.bugs/7416
18007         * lib/fts_.h (FTS_DEFER_STAT): Define new flag.
18008         (FTS_OPTIONMASK): Extend the mask to reflect this addition.
18009         * lib/fts.c (DT_IS_KNOWN, DT_MUST_BE): Define.
18010         (FTS_NO_STAT_REQUIRED, FTS_STAT_REQUIRED): Define.
18011         (fts_set_stat_required): New function.
18012         (fts_open): Defer the calls to fts_stat, if possible or requested.
18013         Move the code that maps a command-line fts_info value FTS_DOT to FTS_D
18014         into fts_stat itself.
18015         (fts_read): Perform any required (deferred) fts_stat call.
18016         (fts_build): Likewise, for the directory we're about to open and read.
18017         In the readdir loop, carefully decide whether each entry will require
18018         an eventual call to fts_stat, using dirent.d_type info if available.
18019         (fts_stat): Move the test for whether to honor FTS_COMFOLLOW on
18020         a command line argument into this function.  Update all callers.
18021         Map a return value of FTS_DOT to FTS_D for a command line argument.
18022         * modules/fts (Depends-on): Add d-type.  Alphabetize.
18023         Thanks to Miklos Szeredi for his tenacity and for the initial
18024         bug report about "find" failing on a FUSE-based file system.
18025
18026         * lib/fts.c (fts_open): Use consistent indentation.
18027
18028 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
18029
18030         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Renamed from
18031         gl_USE_SYSTEM_EXTENSIONS, to fix a coreutils bootstrap failure
18032         reported by Jim Meyering.  All uses of cache variables renamed
18033         to match Autoconf's.
18034         (gl_USE_SYSTEM_EXTENSIONS): New macro, which simply requires
18035         the other one.
18036
18037         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH):
18038         Fix misspelling in diagnostic.
18039
18040 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
18041
18042         * lib/mkdir-p.c (HAVE_FCHMOD): Define to false if not already
18043         defined.  Problem reported by Matthew Woehlke.
18044
18045         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): New macro.
18046         Add support for Tandem NonStop R series.
18047         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX):
18048         Use new macro.
18049
18050         * lib/rename-dest-slash.c: Include stdbool.h but not string.h.
18051         (has_trailing_slash): Omit size arg; all callers changed.
18052         Omit 'inline', since it doesn't help performance and we'd
18053         need to configure it.
18054         Don't count //, ///, etc. as having a trailing slash.
18055         As a side effect, this removes a C99ism reported by Matthew Woehlke.
18056         (rpl_rename_dest_slash): On failure, use rename's errno rather
18057         than (in some cases) an incorrect or junk errno.
18058         Simplify code by removing need to compute length; this does
18059         cause it to make two passes instead of one over the file name,
18060         but it's worth it.
18061
18062         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Undo previous
18063         change, since Autoconf's version may no longer be appropriate now
18064         that we are using CVS Autoconf's version.  Add support for Tandem.
18065
18066 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
18067             Bruno Haible  <bruno@clisp.org>
18068
18069         * lib/allocsa.h (sa_alignment_longlong, sa_alignment_max): Test
18070         HAVE_LONG_LONG_INT instead of HAVE_LONG_LONG.
18071         * m4/allocsa.m4 (gl_ALLOCSA): Invoke AC_TYPE_LONG_LONG_INT instead of
18072         gl_AC_TYPE_LONG_LONG.
18073
18074         * lib/printf-args.h (arg_type, argument): Test HAVE_LONG_LONG_INT
18075         instead of HAVE_LONG_LONG.
18076         * lib/printf-args.c (printf_fetchargs): Likewise.
18077         * lib/printf-parse.c (PRINTF_PARSE): Likewise.
18078         * lib/vasnprintf.c (VASNPRINTF): Likewise.
18079         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS, gl_PREREQ_PRINTF_PARSE,
18080         gl_PREREQ_VASNPRINTF): Invoke AC_TYPE_LONG_LONG_INT instead of
18081         gl_AC_TYPE_LONG_LONG.
18082
18083 2006-10-11  Bruno Haible  <bruno@clisp.org>
18084
18085         * m4/longlong.m4: Add comments.
18086         * m4/ulonglong.m4: Likewise.
18087
18088 2006-10-10  Bruno Haible  <bruno@clisp.org>
18089
18090         Make it possible to #define stpcpy, strdup to aliases.
18091         * lib/stpcpy.c (stpcpy) [!_LIBC]: Don't undefine.
18092         * lib/strdup.c (strdup) [!_LIBC]: Don't undefine.
18093
18094 2006-10-10  Bruno Haible  <bruno@clisp.org>
18095
18096         Make it possible to #define gcd to an alias.
18097         * lib/gcd.c: Include config.h.
18098
18099 2006-10-10  Bruno Haible  <bruno@clisp.org>
18100
18101         Make it possible to #define c_isascii to an alias.
18102         * lib/c-ctype.h: Don't define the macros if NO_C_CTYPE_MACROS is
18103         defined. Undefine the macros before defining them, to avoid gcc
18104         warnings.
18105         * lib/c-ctype.c: Include config.h. Don't undefine the macros; instead,
18106         define NO_C_CTYPE_MACROS early.
18107
18108 2006-10-10  Bruno Haible  <bruno@clisp.org>
18109
18110         Make it possible to #define set_program_name to an alias.
18111         * lib/progname.c: Don't undefine set_program_name; instead, undefine
18112         ENABLE_RELOCATABLE early.
18113
18114 2006-10-10  Paul Eggert  <eggert@cs.ucla.edu>
18115
18116         Port to Tandem NSK OSS, which has 64-bit signed int but at most
18117         32-bit unsigned int.  Problem reported by Matthew Woehlke in:
18118         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00062.html
18119         More generally, don't assume that 64-bit signed int is available
18120         if unsigned int is, and vice versa.
18121         * lib/inttypes_.h (_PRIu64_PREFIX, _SCNu64_PREFIX): Depend on
18122         unsigned symbols, not on their signed counterparts.
18123         * lib/stdint_.h (uint64_t, uint_least64_t, uint_fast64_t, uintmax_t):
18124         (UINT64_MAX, UINT_LEAST64_MAX, UINT_FAST64_MAX, UINTMAX_MAX):
18125         (UINT64_C, UINTMAX_C):
18126         Likewise.
18127         * lib/strtoimax.c (strtoll): Depend on signed symbols, not their
18128         unsigned counterparts.
18129         (Have_long_long, Unsigned): New macros.
18130         (Int): Renamed from INT.
18131         (strtoimax): Use the new macros.
18132         * m4/stdint.m4 (gl_STDINT_H): Require AC_TYPE_UNSIGNED_LONG_LONG_INT
18133         and substitute HAVE_UNSIGNED_LONG_LONG_INT.
18134         * modules/inttypes (inttypes.h): Substitute
18135         HAVE_UNSIGNED_LONG_LONG_INT.
18136         * modules/stdint (stdint.h): Likewise.
18137         (Files): Add m4/ulonglong.m4.
18138
18139 2006-10-10  Bruno Haible  <bruno@clisp.org>
18140
18141         Fix a gcc -Wshadow warning.
18142         * lib/gl_anyhash_list2.h (hash_resize): Rename local variable 'index'
18143         to 'bucket'.
18144         * lib/gl_anylinked_list2.h (gl_linked_search_from_to,
18145         gl_linked_indexof_from_to): Likewise.
18146         * lib/gl_linkedhash_list.c (add_to_bucket, remove_from_bucket):
18147         Likewise.
18148         * lib/gl_anytreehash_list1.h (add_to_bucket, remove_from_bucket):
18149         Likewise.
18150         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Likewise.
18151         Reported by Eric Blake.
18152
18153 2006-10-09  Paul Eggert  <eggert@cs.ucla.edu>
18154
18155         * lib/filemode.h [HAVE_DECL_STRMODE]: Include unistd.h too,
18156         for NetBSD.  Problem reported by Bruno Haible.
18157
18158 2006-10-09  Jim Meyering  <jim@meyering.net>
18159
18160         * lib/lchown.c: Include <sys/stat.h> before "stat-macros.h".
18161         Patch from Bruno Haible.
18162
18163 2006-10-09  Jim Meyering  <jim@meyering.net>
18164
18165         * lib/fts-cycle.c (leave_dir): When "leaving" a top level directory due
18166         to FTS_SKIP, don't copy the parent's uninitialized dev/ino values.
18167         Trigger with e.g., mkdir d && valgrind ./chmod u+rwx d d
18168
18169 2006-10-08  Paul Eggert  <eggert@cs.ucla.edu>
18170
18171         Don't include <config.h> twice; this doesn't work in some cases,
18172         e.g., when config.h has "#define intmax_t long long int" and
18173         we include <config.h>, <inttypes.h>, <config.h> in that order.
18174         Problem reported by Matthew Woehlke in:
18175         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00073.html
18176         * lib/fprintftime.c: Don't include config.h or fprintftime.h.
18177         * lib/fts-cycle.c: Don't include config.h.
18178         * lib/strftime.c: Include fprintftime.h if FPRINTFTIME is defined.
18179         * lib/xstrtoimax.c: Remove copyright notice since it's short tnow.
18180         Don't include config.h or xstrtol.h.  Define STRTOL_T_MINIMUM
18181         and STRTOL_T_MAXIMUM unconditionally, since we now assume gnulib
18182         inttypes.h.
18183         * lib/xstrtoumax.c: Likewise.
18184         * lib/xstrtol.c: Include config.h and xstrtol.h after defining
18185         __strtol and the like, so that this module is more like its siblings.
18186         (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [! defined STRTOL_T_MINIMUM]:
18187         Remove; no longer needed now that we assume gnulib inttypes.h.
18188
18189 2006-10-08  Bruno Haible  <bruno@clisp.org>
18190
18191         * doc/gnulib-tool.texi: Emphasize the drawbacks of the --symlink
18192         option.
18193
18194 2006-10-07  Jim Meyering  <jim@meyering.net>
18195
18196         * modules/inttypes (inttypes.h): Revert what seems to have been
18197         an inadvertent part of today's change: use "|", not "/" in the
18198         substitution for the "/"-containing string, $(ABSOLUTE_INTTYPES_H).
18199
18200 2006-10-07  Bruno Haible  <bruno@clisp.org>
18201
18202         * modules/sublist: New file.
18203
18204 2006-10-07  Bruno Haible  <bruno@clisp.org>
18205
18206         * modules/alloca-opt (alloca.h): Add a "DO NOT EDIT" comment.
18207         * modules/argz (argz.h): Likewise.
18208         * modules/arpa_inet (arpa/inet.h): Likewise.
18209         * modules/byteswap (byteswap.h): Likewise.
18210         * modules/configmake (configmake.h): Likewise.
18211         * modules/fcntl (fcntl.h): Likewise.
18212         * modules/fnmatch (fnmatch.h): Likewise.
18213         * modules/getopt (getopt.h): Likewise.
18214         * modules/glob (glob.h): Likewise.
18215         * modules/inttypes (inttypes.h): Likewise.
18216         * modules/netinet_in (netinet/in.h): Likewise.
18217         * modules/poll (poll.h): Likewise.
18218         * modules/stdbool (stdbool.h): Likewise.
18219         * modules/stdint (stdint.h): Likewise.
18220         * modules/sys_select (sys/select.h): Likewise.
18221         * modules/sys_socket (sys/socket.h): Likewise.
18222         * modules/sys_stat (sys/stat.h): Likewise.
18223         * modules/sysexits (sysexits.h): Likewise.
18224         * modules/unistd (unistd.h): Likewise.
18225         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
18226         Add a "DO NOT EDIT" comment to the generated file.
18227         (func_import): Likewise for gnulib-comp.m4.
18228
18229 2006-10-07  Bruno Haible  <bruno@clisp.org>
18230
18231         * lib/gl_sublist.h: New file.
18232         * lib/gl_sublist.c: New file.
18233
18234 2006-10-06  Paul Eggert  <eggert@cs.ucla.edu>
18235
18236         * lib/mkancesdirs.c (mkancesdirs): Pass to MAKE_DIR both the full file
18237         name (relative to the original working directory) and the file
18238         name component (relative to the temporary working directory).  All
18239         callers changed.
18240         * lib/mkancesdirs.h (mkancesdirs): Adjust prototype to match.
18241         * lib/mkdir-p.c (make_dir_parents): Likewise.
18242         * lib/mkdir-p.h (make_dir_parents): Likewise.
18243
18244 2006-10-06  Eric Blake  <ebb9@byu.net>
18245
18246         Define several macros for use by the clean-temp module.
18247         * m4/close-stream.m4 (gl_CLOSE_STREAM): Define GNULIB_CLOSE_STREAM.
18248         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Define GNULIB_FCNTL_SAFER.
18249         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Define GNULIB_FOPEN_SAFER.
18250
18251         * lib/clean-temp.h (close_stream_temp): New declaration.
18252         * lib/clean-temp.c (includes): Pull in headers according to what
18253         other modules are in use.
18254         (close_stream_temp) [GNULIB_CLOSE_STREAM]: New function.
18255
18256 2006-10-06  Bruno Haible  <bruno@clisp.org>
18257
18258         * lib/javacomp.c (write_temp_file): Use fopen_temp, fwriteerror_temp
18259         instead of fopen, fwriteerror.
18260
18261 2006-10-06  Bruno Haible  <bruno@clisp.org>
18262
18263         * lib/clean-temp.h (cleanup_temp_file, cleanup_temp_subdir,
18264         cleanup_temp_dir_contents, cleanup_temp_dir): Change return type to
18265         int.
18266         * lib/clean-temp.c (do_unlink, do_rmdir, cleanup_temp_file,
18267         cleanup_temp_subdir, cleanup_temp_dir_contents, cleanup_temp_dir):
18268         Return an error indicator.
18269         Suggested by Eric Blake.
18270
18271 2006-10-06  Bruno Haible  <bruno@clisp.org>
18272
18273         * lib/clean-temp.c (PATH_MAX): Provide a fallback for GNU Hurd.
18274         Reported by Eric Blake.
18275
18276 2006-10-06  Bruno Haible  <bruno@clisp.org>
18277
18278         * modules/closeout (Description): Mention stderr too.
18279
18280 2006-10-06  Bruno Haible  <bruno@clisp.org>
18281         and Paul Eggert  <eggert@cs.ucla.edu>
18282
18283         * lib/closeout.c (close_stdout): Also close stderr.
18284         * lib/closeout.h: Update comment.
18285
18286 2006-10-05  Paul Eggert  <eggert@cs.ucla.edu>
18287
18288         Fix some Darwin-7.9.0 porting problems reported by Bruno Haible in
18289         <http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00063.html>.
18290         * lib/dirchownmod.c: Include lchown.h.
18291         * lib/lchown.c: Don't include files that lchown.h now includes.
18292         Don't declare chown, since lchown.h now does that.
18293         * lib/lchown.h: Include errno.h, sys/types.h, unistd.h.
18294         (lchown): Define to rpl_chown if lchown is declared but
18295         does not exist.  Declare using a prototype if lchown is not
18296         declared.  Add a copyright notice.
18297         * lib/mkstemp.h: Include <unistd.h>.
18298         * lib/openat.c: Include lchown.h.
18299
18300         * lib/fcntl_.h (O_NOFOLLOW): Don't depend on O_NOFOLLOW_IS_INEFFECTIVE;
18301         we now test for that separately.
18302         * lib/fts.c (fts_safe_changedir): Inspect HAVE_WORKING_O_NOFOLLOW
18303         rather than O_NOFOLLOW, when testing whether it's possible to
18304         avoid a race condition reliably.
18305         * lib/savewd.c (savewd_chdir): Likewise.
18306
18307         Remove macros that are no longer needed now that stdint.h is
18308         reliable.
18309         * lib/fsusage.c (UINTMAX_MAX): Remove.
18310         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Remove.
18311         * lib/utimecmp.c (SIZE_MAX): Remove.
18312
18313         * m4/lchown.m4 (gl_FUNC_LCHOWN): Check whether lchown is declared.
18314
18315         * m4/fcntl_h.m4 (gl_FCNTL_H): Define HAVE_WORKING_O_NOFOLLOW instead
18316         of O_NOFOLLOW_IS_INEFFECTIVE.  Define HAVE_WORKING_O_NOATIME if
18317         O_NOATIME works.
18318
18319 2006-10-05  Bruno Haible  <bruno@clisp.org>
18320
18321         * lib/gl_list.h (gl_sortedlist_search_from_to,
18322         gl_sortedlist_indexof_from_to): New declarations.
18323         (gl_list_implementation): New fields sortedlist_search_from_to,
18324         sortedlist_indexof_from_to.
18325         (gl_sortedlist_search_from_to, gl_sortedlist_indexof_from_to): New
18326         inline functions.
18327         * lib/gl_list.c (gl_sortedlist_search_from_to,
18328         gl_sortedlist_indexof_from_to): New functions.
18329         * lib/gl_array_list.c (gl_array_sortedlist_indexof_from_to): New
18330         function.
18331         (gl_array_sortedlist_indexof, gl_array_sortedlist_search): Use it.
18332         (gl_array_sortedlist_search_from_to): New function.
18333         (gl_array_list_implementation): Update.
18334         * lib/gl_carray_list.c (gl_carray_sortedlist_indexof_from_to): New
18335         function.
18336         (gl_carray_sortedlist_indexof, gl_carray_sortedlist_search): Use it.
18337         (gl_carray_sortedlist_search_from_to): New function.
18338         (gl_carray_list_implementation): Update.
18339         * lib/gl_anylinked_list2.h (gl_linked_sortedlist_search_from_to,
18340         gl_linked_sortedlist_indexof_from_to): New functions.
18341         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
18342         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
18343         * lib/gl_anytree_list2.h (gl_tree_sortedlist_search_from_to,
18344         gl_tree_sortedlist_indexof_from_to): New functions.
18345         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
18346         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
18347         Update.
18348         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
18349         * lib/gl_rbtreehash_list.c (gl_avltreehash_list_implementation):
18350         Update.
18351
18352 2006-10-05  Bruno Haible  <bruno@clisp.org>
18353
18354         * lib/gl_list.h (gl_list_search_from, gl_list_search_from_to,
18355         gl_list_indexof_from, gl_list_indexof_from_to): New declarations.
18356         (struct gl_list_implementation): Add fields search_from_to,
18357         indexof_from_to. Remove fields search, indexof.
18358         (gl_list_search): Use the search_from_to method.
18359         (gl_list_search_from, gl_list_search_from_to): New functions.
18360         (gl_list_indexof): Use the indexof_from_to method.
18361         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
18362         * lib/gl_list.c (gl_list_search): Use the search_from_to method.
18363         (gl_list_search_from, gl_list_search_from_to): New functions.
18364         (gl_list_indexof): Use the indexof_from_to method.
18365         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
18366         * lib/gl_array_list.c (gl_array_indexof_from_to): Renamed from
18367         gl_array_indexof. Add start_index, end_index arguments.
18368         (gl_array_search_from_to): Renamed from gl_array_search. Add
18369         start_index, end_index arguments.
18370         (gl_array_remove, gl_array_list_implementation): Update.
18371         * lib/gl_carray_list.c (gl_carray_indexof_from_to): Renamed from
18372         gl_carray_indexof. Add start_index, end_index arguments.
18373         (gl_carray_search_from_to): Renamed from gl_carray_search. Add
18374         start_index, end_index arguments.
18375         (gl_carray_remove, gl_carray_list_implementation): Update.
18376         * lib/gl_anylinked_list2.h (gl_linked_search_from_to): Renamed from
18377         gl_linked_search. Add start_index, end_index arguments.
18378         (gl_linked_indexof_from_to): Renamed from gl_linked_indexof. Add
18379         start_index, end_index arguments.
18380         (gl_linked_remove): Update.
18381         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
18382         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
18383         * lib/gl_anytree_list1.h (iterstack_item_t): Change type of 'rightp'
18384         field to 'size_t'.
18385         * lib/gl_anytree_list2.h (gl_tree_search_from_to): Renamed from
18386         gl_tree_search. Add start_index, end_index arguments.
18387         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
18388         start_index, end_index arguments.
18389         (gl_tree_remove): Update.
18390         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
18391         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
18392         * lib/gl_anytreehash_list1.h (compare_position_threshold): New
18393         function.
18394         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Renamed from
18395         gl_tree_search. Add start_index, end_index arguments.
18396         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
18397         start_index, end_index arguments.
18398         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
18399         Update.
18400         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
18401
18402 2006-10-05  Bruno Haible  <bruno@clisp.org>
18403
18404         * modules/fwriteerror (configure.ac): Define GNULIB_FWRITEERROR.
18405
18406         * lib/clean-temp.h (open_temp, fopen_temp, close_temp, fclose_temp,
18407         fwriteerror_temp): New declarations.
18408         * lib/clean-temp.c (uintptr_t): Provide fallback definition.
18409         (descriptors): New variable.
18410         (cleanup): First, close the descriptors.
18411         (register_fd, unregister_fd, open_temp, fopen_temp, close_temp,
18412         fclose_temp, fwriteerror_temp): New functions.
18413
18414 2006-10-04  Jim Meyering  <jim@meyering.net>
18415
18416         * lib/fts.c (fts_open): Tiny comment change.
18417
18418 2006-10-04  Bruno Haible  <bruno@clisp.org>
18419
18420         Make it possible to invoke AC_GNU_SOURCE after gl_LOCK_EARLY.
18421         * m4/lock.m4 (gl_LOCK_EARLY_BODY): New macro, extracted code from
18422         gl_LOCK_BODY.
18423         (gl_LOCK_EARLY): Require gl_LOCK_EARLY_BODY, not gl_LOCK_BODY.
18424         (gl_LOCK_BODY): Remove settings of CPPFLAGS, now done in
18425         gl_LOCK_EARLY_BODY.
18426         (gl_LOCK): Require gl_LOCK_BODY.
18427
18428 2006-10-04  Bruno Haible  <bruno@clisp.org>
18429
18430         * lib/gl_oset.h (gl_setelement_threshold_fn): New type.
18431         (gl_oset_search_atleast): New declaration.
18432         (struct gl_oset_implementation): Add field 'search_atleast'.
18433         (gl_oset_search_atleast): New inline function.
18434         * lib/gl_oset.c (gl_oset_search_atleast): New function.
18435         * lib/gl_array_oset.c (gl_array_search_atleast): New function.
18436         (gl_array_oset_implementation): Update.
18437         * lib/gl_anytree_oset.h (gl_tree_search_atleast): New function.
18438         * lib/gl_avltree_oset.c (gl_avltree_oset_implementation): Update.
18439         * lib/gl_rbtree_oset.c (gl_rbtree_oset_implementation): Update.
18440
18441 2006-10-04  Bruno Haible  <bruno@clisp.org>
18442
18443         * lib/fatal-signal.c (fatal_signals) [WOE32]: Add the SIGBREAK signal.
18444
18445 2006-10-03  Bruno Haible  <bruno@clisp.org>
18446
18447         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Renamed
18448         from gl_avltreehash_list_implementation.
18449
18450 2006-10-03  Bruno Haible  <bruno@clisp.org>
18451
18452         * lib/gl_oset.c (gl_oset_add): Fix return type.
18453
18454 2006-10-02  Paolo Bonzini  <bonzini@gnu.org>  (tiny change)
18455
18456         * lib/quotearg.c (mbstate_t) [!HAVE_MBRTOWC]: #define to int.
18457
18458 2006-10-02  Eric Blake  <ebb9@byu.net>
18459
18460         * modules/strnlen (Depends-on): Add extensions.
18461
18462 2006-10-02  Eric Blake  <ebb9@byu.net>
18463
18464         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use autoconf's
18465         definition in 2.60+.
18466
18467 2006-10-02  Dmitry V. Levin  <ldv@altlinux.org>
18468
18469         * lib/fts.c (fts_close, fts_build, fts_palloc): Remove redundant
18470         checks.
18471
18472 2006-10-02  Bruno Haible  <bruno@clisp.org>
18473
18474         * gnulib-tool (func_emit_lib_Makefile_am): Don't add no-dependencies
18475         to the AUTOMAKE_OPTIONS.
18476         Reported by Jim Meyering.
18477
18478 2006-09-29  Paul Eggert  <eggert@cs.ucla.edu>
18479
18480         Work around bug in Solaris 10 /proc file system:
18481         /proc/self/fd/NNN/.. isn't the parent directory of
18482         the directory whose file descriptor is NNN.  This needs to
18483         be worked around at run time, not compile time, since a
18484         program might be built on Solaris 8, where things work, and
18485         run on Solaris 10.
18486         * lib/openat-priv.h (BUILD_PROC_NAME): Remove.  All callers changed
18487         to use the following interface instead:
18488         (OPENAT_BUFFER_SIZE): New macro.
18489         (openat_proc_name): New function.
18490         * lib/at-func.c (AT_FUNC_NAME): Adjust to above changes.
18491         * lib/openat.c (openat_permissive, openat_needs_fchdir, fdopendir):
18492         Likewise.
18493         * lib/openat-proc.c: New file.
18494         * modules/openat (Files): Add lib/openat-proc.c.
18495         (Depends-on): Add same-inode, stdbool.
18496         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBOBJ(openat-proc).
18497
18498 2006-09-29  Bruno Haible  <bruno@clisp.org>
18499
18500         * lib/fwriteerror.h (fwriteerror_no_ebadf): New declaration.
18501         * lib/(do_fwriteerror): Renamed from fwriteerror. Add ignore_ebadf
18502         argument. Set stdout_closed before testing for ferror, not after.
18503         (fwriteerror, fwriteerror_no_ebadf): New functions.
18504
18505 2006-09-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18506
18507         * m4/intmax.m4 (gt_TYPE_INTMAX_T): Avoid unused variables warning.
18508
18509 2006-09-28  Paolo Bonzini  <bonzini@gnu.org>
18510
18511         * lib/poll.c (rpl_poll) [__APPLE__]: Use FIONREAD instead of MSG_PEEK.
18512         * m4/poll.m4: Look for sys/ioctl.h and sys/filio.h.
18513
18514 2006-09-28  Jim Meyering  <jim@meyering.net>
18515
18516         * lib/mkdir-p.c: Include "dirchownmod.h", not "dirchownmod.c".
18517         Include <unistd.h>.
18518
18519 2006-09-28  Bruno Haible  <bruno@clisp.org>
18520
18521         * modules/avltreehash-list (Depends-on): Add stdint, remove size_max.
18522         * modules/linkedhash-list (Depends-on): Likewise.
18523         * modules/rbtreehash-list (Depends-on): Likewise.
18524
18525 2006-09-28  Bruno Haible  <bruno@clisp.org>
18526
18527         * lib/strndup.h: Simplify the redefinition of strndup.
18528         (_GL_CONCAT, _GL_XCONCAT, __STRNDUP_ID): Remove macros.
18529         * m4/strndup.m4 (gl_FUNC_STRNDUP): Don't define __STRNDUP_PREFIX.
18530
18531 2006-09-28  Bruno Haible  <bruno@clisp.org>
18532
18533         * lib/gl_avltreehash_list.c: Include <stdint.h> instead of size_max.h.
18534         * lib/gl_linkedhash_list.c: Likewise.
18535         * lib/gl_rbtreehash_list.c: Likewise.
18536
18537 2006-09-27  Paul Eggert  <eggert@cs.ucla.edu>
18538
18539         * lib/canon-host.c (canon_host_r): Work around bug in Darwin 7.9.0
18540         getaddrinfo.
18541
18542         * lib/__fpending.h: Don't include <stdio_ext.h> unless
18543         HAVE_DECL___FPENDING.  This avoids a bug with lsbcc, where
18544         it causes <stdio_ext.h> to cause a compile-time error.
18545         Problem reported by Nelson H. F. Beebe.
18546         * lib/getpass.c: Likewise, except for HAVE_DECL___FSETLOCKING instead
18547         of HAVE_DECL___PENDING.
18548
18549         * m4/fpending.m4 (gl_FUNC_FPENDING): Check for stdio_ext at most once.
18550         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for __fsetlocking's
18551         declaration.
18552
18553 2006-09-27  Jim Meyering  <jim@meyering.net>
18554
18555         This file could end up with a definition for a function
18556         named __strndup, rather than rpl_strndup on a system with
18557         incomplete weak_alias support.
18558         * lib/strndup.c (strndup): Rename from __strndup.
18559         Remove #defines that used to map __strndup to strndup.
18560         Don't use K&R prototypes.
18561         Remove LIBC-related code, since this file is not sync'd with glibc.
18562         * lib/strndup.h: Revamp, accordingly.
18563         * m4/strndup.m4: Modernize.
18564
18565 2006-09-26  Paul Eggert  <eggert@cs.ucla.edu>
18566
18567         * modules/savewd (Depends-on): Add 'raise'.
18568         * lib/savewd.c: Include <signal.h>, for 'raise'.
18569
18570 2006-09-26  Jim Meyering  <jim@meyering.net>
18571
18572         * m4/acl.m4 (AC_FUNC_ACL): Disable ACL support altogether
18573         when we detect Darwin 8.7.0's acl_get_file bug.
18574         Rearrange to perform the new (below) run-test while $LIBS
18575         contains any acl-related library.  Set USE_ACL at the end.
18576         (gl_ACL_GET_FILE): New function.
18577
18578 2006-09-26  Eric Blake  <ebb9@byu.net>
18579
18580         * lib/verror.c: Include <config.h> unconditionally.
18581
18582 2006-09-25  Paul Eggert  <eggert@cs.ucla.edu>
18583
18584         * modules/clock-time (Maintainer): Add self.
18585         * modules/getlogin_r (Depends-on): Add extensions.
18586
18587 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18588
18589         * modules/clock-time: New module.
18590         * modules/nanosleep (Depends-on): Add clock-time.
18591         * modules/gethrxtime (Depends-on): Likewise.
18592         * modules/gettime (Depends-on): Likewise.
18593         * modules/settime (Depends-on): Likewise.
18594
18595         * modules/fts-lgpl: Depend on openat.
18596         * modules/mkancesdirs: Depend on savewd.
18597         * modules/mkdir-p: Likewise.
18598
18599 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18600
18601         * m4/host-os.m4 (gl_HOST_OS): Require AC_CANONICAL_HOST.
18602
18603         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Rename cache variable from
18604         `gl_have_arbitrary_file_name_length_limit' to
18605         `gl_cv_have_arbitrary_file_name_length_limit', so that caching
18606         actually works between configure runs.
18607
18608 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18609             Bruno Haible  <bruno@clisp.org>
18610
18611         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Include <string.h>.
18612
18613 2006-09-25  Jim Meyering  <jim@meyering.net>
18614
18615         * m4/fcntl_h.m4 (gl_FCNTL_H): Fix typo in test for failed open.
18616         This typo caused coreutils/tests/dd/misc to fail on Darwin 8.7.0.
18617
18618 2006-09-25  Eric Blake  <ebb9@byu.net>
18619
18620         * gnulib-tool (func_import, func_create_testdir): Fix typos in
18621         exec's in 2006-09-18 patch when shuffling fds.
18622
18623 2006-09-25  Bruno Haible  <bruno@clisp.org>
18624
18625         * m4/getloadavg.m4 (gl_GETLOADAVG): Fix directory in error message.
18626         Reported by Jim Meyering.
18627
18628 2006-09-24  Jim Meyering  <jim@meyering.net>
18629
18630         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Don't use '>' to
18631         compare a pointer against a literal "0".  That caused failures with
18632         at least HP-UX's hpcc.
18633
18634 2006-09-22  Simon Josefsson  <jas@extundo.com>
18635
18636         * modules/gc-sha1:
18637         * modules/gc-md4:
18638         * modules/gc-hmac-sha1:
18639         * modules/gc-hmac-md5:
18640         * modules/gc-des:
18641         * modules/gc-arcfour: Distribute more files.
18642
18643 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18644
18645         * lib/gl_anylinked_list2.h [lint] (gl_linked_iterator)
18646         (gl_linked_iterator_from_to): Initialize struct completely.
18647         * lib/gl_anytree_list2.h [lint] (gl_tree_iterator): Likewise.
18648         (gl_tree_iterator_from_to): Likewise
18649         * lib/gl_anytree_oset.h [lint] (gl_tree_iterator): Likewise.
18650         * lib/gl_array_list.c [lint] (gl_array_iterator)
18651         (gl_array_iterator_from_to): Likewise.
18652         * lib/gl_array_oset.c [lint] (gl_array_iterator): Likewise.
18653         * lib/gl_carray_list.c [lint] (gl_carray_iterator)
18654         (gl_carray_iterator_from_to): Likewise.
18655
18656         * lib/gc-gnulib.c [GC_USE_HMAC_SHA1]: include hmac.h for hmac_sha1.
18657         * lib/md4.c (md4_process_block): Remove unused variable.
18658         * lib/rijndael-api-fst.c (rijndaelBlockDecrypt): GCC suggests
18659         parentheses for clarity.
18660
18661 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18662
18663         * modules/bison-i18n (Depends-on): Add gettext.
18664
18665 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18666
18667         * m4/fsusage.m4 (gl_STATFS_TRUNCATES): Avoid unused variable.
18668         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Likewise.
18669         * m4/jm-winsz1.m4 (gl_HEADER_TIOCGWINSZ_IN_TERMIOS_H): Likewise;
18670         also add missing comma that caused broken test.
18671         * m4/link-follow.m4 (gl_AC_FUNC_LINK_FOLLOWS_SYMLINK): Include
18672         stdlib.h, for `abort'.
18673         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Avoid unused
18674         variables.
18675         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Check for and
18676         include unistd.h if present, for `rmdir'.
18677         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Avoid unused
18678         variables.
18679         * m4/putenv.m4 (gl_FUNC_PUTENV): Rewrite using AC_RUN_IFELSE, and
18680         in the process include standard headers for prototypes.
18681         * m4/readutmp.m4 (gl_READUTMP): Require AC_GNU_SOURCE, so utmpxname
18682         gets declared on GNU/Linux.
18683         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Check for and include
18684         unistd.h, for `rmdir'.
18685         * m4/time_r.m4 (gl_TIME_R): Avoid unused variables.
18686
18687         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Avoid expression that is
18688         always true.
18689         * m4/strndup.m4 (gl_FUNC_STRNDUP): include stdlib.h, for `free'.
18690
18691         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Avoid gcc -Wall warnings.
18692
18693 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18694
18695         * gnulib-tool (func_version): Create output all at once.  This
18696         may help avoid triggering unnecessary SIGPIPEs, and at any
18697         rate it doesn't hurt.
18698
18699 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18700             Bruno Haible  <bruno@clisp.org>
18701
18702         * m4/lock.m4 (gl_LOCK_BODY): Avoid unused variables warning.
18703         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
18704         * m4/signed.m4 (bh_C_SIGNED): Likewise.
18705
18706         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): New macro.
18707         (gl_FUNC_VASPRINTF): Invoke it.
18708
18709 2006-09-22  Bruno Haible  <bruno@clisp.org>
18710
18711         * m4/getloadavg.m4 (gl_GETLOADAVG): Expect the directory of
18712         getloadavg.c as first argument.
18713
18714 2006-09-22  Bruno Haible  <bruno@clisp.org>
18715
18716         * gnulib-tool (func_import, func_create_testdir): Set gl_source_base
18717         at the beginning of the gl_INIT macro.
18718         * modules/getloadavg (configure.ac): Pass $gl_source_base to
18719         gl_GETLOADAVG.
18720
18721 2006-09-22  Bruno Haible  <bruno@clisp.org>
18722
18723         * gnulib-tool (func_create_megatestdir): Don't include the config-h
18724         module.
18725         Suggested by Ralf Wildenhues.
18726
18727 2006-09-20  Paul Eggert  <eggert@cs.ucla.edu>
18728
18729         Import this patch from libc:
18730
18731         2006-09-06  Jakub Jelinek  <jakub@redhat.com>
18732
18733         * lib/regex_internal.c (re_string_reconstruct): Handle
18734         offset < pstr->valid_raw_len && pstr->offsets_needed case.
18735         Ensure no bytes read before raw_mbs array.  Pass a saved copy of
18736         pstr->valid_len - 1 rather than pstr->valid_raw_len - 1 to
18737         re_string_context_at.
18738
18739         * m4/regex.m4 (gl_REGEX): Check for locale.h, since the test
18740         now requires it.
18741         (gl_PREREQ_REGEX): Don't check for locale.h any more, since
18742         gl_REGEX now does it for us.
18743         (gl_REGEX): Add test taken from
18744         http://sourceware.org/ml/libc-hacker/2006-09/msg00008.html.
18745
18746         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require AC_SYS_LARGEFILE.
18747         Check that large offsets work.  Modernize Autoconf usages.
18748         Prefer "yes" to mean a good thing rather than a bad.
18749         Don't put "#define mkstemp" in config.h, as this might interfere
18750         with standard system headers that "#define mkstemp mkstemp64".
18751
18752         * modules/mkstemp (Depends-on): Add extensions, so that
18753         mkstemp is visible on some platforms.
18754         (Makefile.am): Add mkstemp.h to EXTRA_DIST.
18755         (Include): Change to "mkstemp.h" from <stdlib.h>.
18756         (Files): Add mkstemp.h.
18757
18758         * lib/mkstemp.h: New file, since some standard headers
18759         #define mkstemp.
18760         * lib/mkstemp.c: Revamp to put the !_LIBC code together.
18761         Include "mkstemp.h".
18762         Make the _LIBC code resemble glibc original more,
18763         e.g., use K&R style.
18764         * lib/mkstemp-safer.c: Include "mkstemp.h" instead of <stdlib.h>.
18765         (mkstemp): Remove, since mkstemp.h does this for us.
18766         * lib/stdlib--.h: Include mkstemp.h.
18767
18768         Import this patch from libc:
18769
18770         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
18771
18772         * lib/tempname.c (__gen_tempname): Change attempts_min
18773         into a macro.  Use preprocessor to decide how to initialize
18774         attempts [Coverity CID 67].
18775
18776 2006-09-20  Bruno Haible  <bruno@clisp.org>
18777
18778         * lib/mkdtemp.c: Import from libc.
18779         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
18780                 * sysdeps/posix/tempname.c (__gen_tempname): Change
18781                 attempts_min into a macro.  Use preprocessor to decide how to
18782                 initialize attempts [Coverity CID 67].
18783         2001-11-27  Paul Eggert  <eggert@twinsun.com>
18784                 * sysdeps/posix/tempname.c (__gen_tempname): Try at least
18785                 ATTEMPTS_MIN or TMP_MAX times, whichever is greater.
18786
18787 2006-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18788
18789         * gnulib-tool (func_exit): New function, to allow to pass the
18790         exit status portably through the trap.  Use everywhere.
18791         (--help, --version): Signal a write error.
18792         (trap): catch SIGPIPE, for write errors.
18793         Exit at the end of the trap, with the correct exit status.
18794
18795 2006-09-19  Karl Berry  <karl@gnu.org>
18796
18797         * doc/gnulib.texi: note about the license texinfo files.
18798
18799 2006-09-19  Eric Blake  <ebb9@byu.net>
18800
18801         * gnulib-tool: Avoid space-tab.
18802
18803 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
18804
18805         * lib/getaddrinfo.c (getaddrinfo) [defined HAVE_IPV6]: Fix typo
18806         that prevented coreutils 6.1 from building.  Problem reported
18807         by Petter Reinholdtsen.
18808
18809 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
18810
18811         * gnulib-tool (avoidlist): Fix typo that broke options like
18812         --avoid=lock that are used by coreutils bootstrap.
18813
18814 2006-09-18  Mark D. Baushke  <mdb@gnu.org>
18815
18816         * m4/inttypes.m4 (gl_INTTYPES_H): Quote "test" args
18817         more systematically.
18818
18819 2006-09-18  Jim Meyering  <jim@meyering.net>
18820
18821         * lib/savewd.c (savewd_restore): Don't shadow: s/status/child_status/.
18822
18823 2006-09-18  Bruno Haible  <bruno@clisp.org>
18824
18825         * modules/inttypes (Files): Remove m4/inttypes-h.m4.
18826
18827 2006-09-18  Bruno Haible  <bruno@clisp.org>
18828
18829         * m4/inttypes-h.m4 (gl_HEADER_INTTYPES_H): Remove macro.
18830         * m4/inttypes-pri.m4: Require autoconf >= 2.52.
18831         (gt_INTTYPES_PRI): Invoke AC_CHECK_HEADERS on inttypes.h. Test
18832         ac_cv_header_inttypes_h instead of gl_cv_header_inttypes_h.
18833         * m4/gettext.m4: Require autoconf >= 2.52.
18834         (gt_INTL_SUBDIR_CORE): Invoke AC_CHECK_HEADERS on inttypes.h.
18835         * m4/inttypes.m4 (gl_INTTYPES_H): Test ac_cv_header_inttypes_h instead
18836         of gl_cv_header_inttypes_h.
18837
18838 2006-09-18  Bruno Haible  <bruno@clisp.org>
18839
18840         * lib/javaversion.c: Include configmake.h.
18841
18842 2006-09-18  Bruno Haible  <bruno@clisp.org>
18843
18844         * gnulib-tool (func_import, func_create_testdir): Use exec tricks to
18845         avoid that the while loops be executed in a subshell.
18846
18847 2006-09-18  Bruno Haible  <bruno@clisp.org>
18848
18849         * MODULES.html.sh (func_module): Break long lines.
18850         Suggested by Bruce Korb <bkorb@gnu.org>.
18851
18852 2006-09-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18853
18854         Speed up by a factor of 1.12.
18855         * gnulib-tool (nl): New variable.
18856         (func_import): Rewrite include directive extraction to only read each
18857         directive once.
18858
18859 2006-09-17  Bruno Haible  <bruno@clisp.org>
18860
18861         * modules/javaversion (Makefile.am): Remove DEFS setting.
18862         (Depends-on): Add configmake, for PKGDATADIR definition.
18863
18864 2006-09-17  Bruno Haible  <bruno@clisp.org>
18865
18866         * gnulib-tool (func_create_testdir): Rewrite all files at once.
18867
18868 2006-09-17  Bruno Haible  <bruno@clisp.org>
18869
18870         * gnulib-tool (func_append): New function, stolen from libtool.m4.
18871         (func_modules_transitive_closure, func_modules_add_dummy,
18872         func_modules_to_filelist, func_import, func_create_testdir,
18873         func_create_megatestdir, ...): Use it wherever possible.
18874         Suggested by Ralf Wildenhues.
18875
18876 2006-09-16  Karl Berry  <karl@gnu.org>
18877
18878         * doc/fdl.texi (ADDENDUM): switch to @heading from @appendixsubsec,
18879         to avoid sectioning errors.
18880         * doc/lgpl.texi, gpl.texi (Copying): downcase @unnumbered title.
18881         [ifinfo]: blank line after @center-ed titles.
18882         * doc/lgpl.texi (Library Copying): Rename main node to GNU LGPL.
18883         Spell FSF address consistently with others.
18884         (These changes approved by rms.)
18885
18886 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18887
18888         Speed up by a factor of 1.61.
18889         * gnulib-tool (func_modules_transitive_closure): Rewrite to not check
18890         already checked module names again.
18891
18892 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18893
18894         Speed up by a factor of 1.13.
18895         * gnulib-tool (func_import): Rewrite all old_files at once; likewise
18896         for new_files, and the input to func_add_or_update.
18897
18898 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18899
18900         * gnulib-tool (func_all_modules, func_modules_to_filelist, func_import,
18901         func_create_testdir, ...): Change 'sort | uniq' to 'sort -u'.
18902
18903 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
18904
18905         * modules/mkancesdirs (Depends-on): Add fcntl.
18906         * modules/savewd: New file.
18907         * MODULES.html.sh (File system functions): Add savewd.
18908
18909         * modules/configmake (Makefile.am): Add support for the
18910         Automake-supplied PKGLIBDIR, PKGINCLUDEDIR, PKGDATADIR.
18911
18912 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
18913
18914         * m4/savewd.m4: New file.
18915
18916 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
18917
18918         * lib/dirchownmod.c: Don't include fcntl.h; no longer needed.
18919         (dirchownmod): New arg FD.  All callers changed.
18920         Use FD rather than opening the directory ourself, as opening is
18921         now the caller's responsibility.
18922         * lib/dirchownmod.h: Likewise.
18923         * lib/mkancesdirs.c: Include <sys/types.h>, for portability to older
18924         hosts that require <sys/types.h> before <sys/stat.h>.  Include
18925         fcntl.h, savewd.h, and unistd.h, not dirname.h and stat-macros.h.
18926         (test_dir): Remove.
18927         (mkancesdirs): Return length of prefix of FILE that has already
18928         been made, or -2 if there is a child doing the work.  Redo
18929         algorithm so that it is O(N) rather than O(N**2).  Optimize away
18930         ".", and treat ".." specially since it might stray back into
18931         already-created areas.  Use a subprocess if necessary.  New arg
18932         WD; all users changed.  MAKE_DIR function should now return 1
18933         if it creates a directory that is not readable.  Return -2 if
18934         a child process is spun off.
18935         * lib/mkancesdirs.h: Include <stddef.h>, for ptrdiff_t.
18936         Adjust signature to match code.
18937         * lib/mkdir-p.c: Include dirname.h, for IS_ABSOLUTE_FILE_NAME.
18938         (make_dir_parents): Use a subprocess if necessary.  New arg WD;
18939         all users changed.
18940         * lib/savewd.c, lib/savewd.h: New files.
18941
18942 2006-09-15  Jim Meyering  <jim@meyering.net>
18943
18944         * modules/rename-dest-slash: New module.
18945         * MODULES.html.sh (posix_compat): Add it here.
18946
18947         * modules/rename: Reflect vb_FUNC_RENAME -> gl_FUNC_RENAME change.
18948
18949 2006-09-15  Jim Meyering  <jim@meyering.net>
18950
18951         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH): New
18952         file.
18953
18954         * m4/rename.m4 (gl_FUNC_RENAME): Rename from vb_FUNC_RENAME.
18955
18956 2006-09-15  Jim Meyering  <jim@meyering.net>
18957
18958         * lib/rename-dest-slash.c (has_trailing_slash): Use
18959         FILE_SYSTEM_PREFIX_LEN, for non-POSIX systems.
18960         (rpl_rename_dest_slash): Perform the cheaper trailing slash
18961         test before testing whether SRC is a directory.
18962         Suggestions from Bruno Haible.
18963
18964         Avoid a warning about an unused variable.
18965         * lib/regex_internal.c (re_dfa_add_node): Move declaration of "type"
18966         into the #ifdef block where it's used.
18967
18968         * lib/rename-dest-slash.c: New file.
18969
18970 2006-09-14  Bruno Haible  <bruno@clisp.org>
18971
18972         * lib/allocsa.c: Include <config.h> unconditionally.
18973         * lib/asnprintf.c: Likewise.
18974         * lib/asprintf.c: Likewise.
18975         * lib/c-strcasecmp.c: Likewise.
18976         * lib/c-strcasestr.c: Likewise.
18977         * lib/c-strncasecmp.c: Likewise.
18978         * lib/c-strstr.c: Likewise.
18979         * lib/classpath.c: Likewise.
18980         * lib/clean-temp.c: Likewise.
18981         * lib/concatpath.c: Likewise.
18982         * lib/copy-file.c: Likewise.
18983         * lib/csharpcomp.c: Likewise.
18984         * lib/csharpexec.c: Likewise.
18985         * lib/execute.c: Likewise.
18986         * lib/fatal-signal.c: Likewise.
18987         * lib/findprog.c: Likewise.
18988         * lib/fwriteerror.c: Likewise.
18989         * lib/gl_array_list.c: Likewise.
18990         * lib/gl_array_oset.c: Likewise.
18991         * lib/gl_avltree_list.c: Likewise.
18992         * lib/gl_avltree_oset.c: Likewise.
18993         * lib/gl_avltreehash_list.c: Likewise.
18994         * lib/gl_carray_list.c: Likewise.
18995         * lib/gl_linked_list.c: Likewise.
18996         * lib/gl_linkedhash_list.c: Likewise.
18997         * lib/gl_list.c: Likewise.
18998         * lib/gl_oset.c: Likewise.
18999         * lib/gl_rbtree_list.c: Likewise.
19000         * lib/gl_rbtree_oset.c: Likewise.
19001         * lib/gl_rbtreehash_list.c: Likewise.
19002         * lib/imaxabs.c: Likewise.
19003         * lib/imaxdiv.c: Likewise.
19004         * lib/javacomp.c: Likewise.
19005         * lib/javaexec.c: Likewise.
19006         * lib/javaversion.c: Likewise.
19007         * lib/linebreak.c: Likewise.
19008         * lib/localcharset.c: Likewise.
19009         * lib/lock.c: Likewise.
19010         * lib/mbchar.c: Likewise.
19011         * lib/mbswidth.c: Likewise.
19012         * lib/mkdtemp.c: Likewise.
19013         * lib/pipe.c: Likewise.
19014         * lib/printf-args.c: Likewise.
19015         * lib/printf-parse.c: Likewise.
19016         * lib/progname.c: Likewise.
19017         * lib/progreloc.c: Likewise.
19018         * lib/readlink.c: Likewise.
19019         * lib/sh-quote.c: Likewise.
19020         * lib/stpcpy.c: Likewise.
19021         * lib/stpncpy.c: Likewise.
19022         * lib/strcasecmp.c: Likewise.
19023         * lib/strcasestr.c: Likewise.
19024         * lib/strcspn.c: Likewise.
19025         * lib/striconv.c: Likewise.
19026         * lib/strncasecmp.c: Likewise.
19027         * lib/strnlen1.c: Likewise.
19028         * lib/strstr.c: Likewise.
19029         * lib/strtok_r.c: Likewise.
19030         * lib/tls.c: Likewise.
19031         * lib/tmpdir.c: Likewise.
19032         * lib/unicodeio.c: Likewise.
19033         * lib/unsetenv.c: Likewise.
19034         * lib/vasnprintf.c: Likewise.
19035         * lib/vasprintf.c: Likewise.
19036         * lib/wait-process.c: Likewise.
19037         * lib/xallocsa.c: Likewise.
19038         * lib/xsetenv.c: Likewise.
19039         * lib/xstriconv.c: Likewise.
19040
19041 2006-09-13  Simon Josefsson  <jas@extundo.com>
19042
19043         * m4/getdate.m4: Don't AC_LIBOBJ([getdate]), automake takes care of
19044         that internally, suggested by Ralf Wildenhues
19045         <Ralf.Wildenhues@gmx.de>.
19046
19047 2006-09-13  Simon Josefsson  <jas@extundo.com>
19048
19049         * gnulib-tool (func_emit_lib_Makefile_am): Use $(LIBOBJS), not
19050         @LIBOBJS@.
19051         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
19052
19053 2006-09-13  Paul Eggert  <eggert@cs.ucla.edu>
19054
19055         * lib/_fpending.c: Include <config.h> unconditionally, since we no
19056         longer worry about uses that don't define HAVE_CONFIG_H.
19057         * lib/acl.c, lib/alloca.c, lib/argmatch.c, lib/atexit.c:
19058         * lib/backupfile.c, lib/basename.c, lib/c-stack.c, lib/c-strtod.c:
19059         * lib/calloc.c,lib/ canon-host.c, lib/canonicalize.c, lib/chdir-long.c:
19060         * lib/chdir-safer.c, lib/chown.c, lib/cloexec.c, lib/close-stream.c:
19061         * lib/closeout.c, lib/creat-safer.c, lib/cycle-check.c, lib/diacrit.c:
19062         * lib/dirchownmod.c, lib/dirfd.c, lib/dirname.c, lib/dup-safer.c:
19063         * lib/dup2.c, lib/error.c, lib/euidaccess.c, lib/exclude.c:
19064         * lib/exitfail.c, lib/fchmodat.c, lib/fchown-stub.c, lib/fd-safer.c:
19065         * lib/file-type.c, lib/fileblocks.c, lib/filemode.c, lib/filenamecat.c:
19066         * lib/fnmatch.c, lib/fopen-safer.c, lib/fprintftime.c, lib/free.c:
19067         * lib/fsusage.c, lib/ftruncate.c, lib/fts-cycle.c, lib/fts.c:
19068         * lib/full-write.c, lib/gai_strerror.c, lib/getcwd.c, lib/getdate.y:
19069         * lib/getdomainname.c, lib/getgroups.c, lib/gethostname.c:
19070         * lib/gethrxtime.c, lib/getloadavg.c, lib/getlogin_r.c:
19071         * lib/getndelim2.c, lib/getnline.c, lib/getopt.c, lib/getopt1.c:
19072         * lib/getpass.c, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c:
19073         * lib/getusershell.c, lib/glob.c, lib/group-member.c:
19074         * lib/hard-locale.c, lib/hash-pjw.c, lib/hash.c, lib/human.c:
19075         * lib/idcache.c, lib/inet_ntop.c, lib/inet_pton.c, lib/inttostr.c:
19076         * lib/isdir.c, lib/lchown.c, lib/linebuffer.c, lib/long-options.c:
19077         * lib/lstat.c, lib/malloc.c, lib/md5.c, lib/memcasecmp.c, lib/memchr.c:
19078         * lib/memcmp.c, lib/memcoll.c, lib/memcpy.c, lib/memmove.c:
19079         * lib/memrchr.c, lib/mkancesdirs.c, lib/mkdir-p.c, lib/mkdir.c:
19080         * lib/mkdirat.c, lib/mkstemp-safer.c, lib/mkstemp.c, lib/modechange.c:
19081         * lib/mountlist.c, lib/nanosleep.c, lib/obstack.c, lib/open-safer.c:
19082         * lib/openat-die.c, lib/openat.c, lib/pagealign_alloc.c, lib/physmem.c:
19083         * lib/pipe-safer.c, lib/posixtm.c, lib/posixver.c, lib/putenv.c:
19084         * lib/quote.c, lib/quotearg.c, lib/raise.c, lib/readtokens.c:
19085         * lib/readtokens0.c, lib/readutmp.c, lib/realloc.c, lib/regex.c:
19086         * lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c:
19087         * lib/same.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c:
19088         * lib/settime.c, lib/sha1.c, lib/sig2str.c, lib/snprintf.c:
19089         * lib/strdup.c, lib/strerror.c, lib/strftime.c, lib/stripslash.c:
19090         * lib/strndup.c, lib/strnlen.c, lib/strpbrk.c, lib/strtod.c:
19091         * lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c:
19092         * lib/time_r.c, lib/timegm.c, lib/tmpfile-safer.c, lib/unlinkdir.c:
19093         * lib/userspec.c, lib/utime.c, lib/utimecmp.c, lib/utimens.c:
19094         * lib/version-etc-fsf.c, lib/version-etc.c, lib/xalloc-die.c:
19095         * lib/xgetcwd.c, lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c:
19096         * lib/xnanosleep.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtoimax.c:
19097         * lib/xstrtol.c, lib/xstrtoumax.c, lib/yesno.c:
19098         Likewise.
19099
19100 2006-09-13  Eric Blake  <ebb9@byu.net>
19101
19102         * lib/getopt.c: Fix typo in last commit.
19103
19104 2006-09-12  Sergey Poznyakoff  <gray@gnu.org.ua>
19105
19106         * lib/argp-help.c (argp_doc): Make sure NULL is not passed to
19107         dgettext.
19108
19109 2006-09-12  Jim Meyering  <jim@meyering.net>
19110
19111         * lib/nanosleep.c: Include <sys/types.h> before sys/select.h, to avoid
19112         compilation failure (due to use of pid_t in latter) on NetBSD 1.6.
19113         Reported by Nelson H. F. Beebe.
19114
19115 2006-09-10  Sergey Poznyakoff  <gray@gnu.org.ua>
19116
19117         * lib/argp-parse.c (__argp_parse) [!_LIBC]: Make sure
19118         program_invocation_name and program_invocation_short_name are
19119         initialized.
19120         * lib/argp-namefrob.h: Move declarations of program_invocation_name
19121         and program_invocation_short_name to argp.h, so they are visible
19122         to user programs.
19123         * lib/argp.h: Likewise
19124
19125 2006-09-10  Bruno Haible  <bruno@clisp.org>
19126
19127         * modules/mkdtemp (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
19128         m4/inttypes_h.m4, m4/uintmax_t.m4.
19129
19130 2006-09-10  Bruno Haible  <bruno@clisp.org>
19131
19132         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Don't require
19133         gl_AC_TYPE_UINTMAX_T.
19134
19135 2006-09-10  Bruno Haible  <bruno@clisp.org>
19136
19137         * lib/mkdtemp.c: Include <stdint.h> always. Don't include <inttypes.h>.
19138
19139 2006-09-09  Sergey Poznyakoff  <gray@gnu.org.ua>
19140
19141         * lib/argp.h (struct argp): Document the N_("..") "\v" N_("..")
19142         convention.  Text proposed by Bruno Haible.
19143         (struct argp_option): Document the use of N_() wrappers.
19144
19145         * lib/argp-help.c (argp_doc): Split the untranslated doc string on
19146         '\v', and translate the two parts separately, instead of feeding
19147         the whole string to gettext.  This allows to exclude
19148         '\v' from the strings visible to the translator by writing doc
19149         strings as N_("..") "\v" N_("..").
19150
19151 2006-09-09  Paul Eggert  <eggert@cs.ucla.edu>
19152
19153         * config/srclist.txt: Undo latest change; the bug was fixed.
19154
19155 2006-09-09  Bruno Haible  <bruno@clisp.org>
19156
19157         * gnulib-tool (func_emit_lib_Makefile_am): Eliminate lib_LDFLAGS
19158         assignments if building a library without libtool.
19159         (func_emit_tests_Makefile_am): Likewise. Handle lib_* variables as
19160         in func_emit_lib_Makefile_am.
19161         (func_import): When building a static library libfoo.a, arrange to
19162         define variables LIBFOO_LIBDEPS and LIBFOO_LTLIBDEPS.
19163         (func_create_testdir): Likewise.
19164         * modules/gc (configure.ac, Makefile.am): If building statically,
19165         augment gl_libdeps and gl_ltlibdeps instead of lib_LDFLAGS.
19166         * modules/iconvme (configure.ac, Makefile.am): Likewise.
19167         * modules/striconv (configure.ac, Makefile.am): Likewise.
19168         Based on a suggestion by Ralf Wildenhues.
19169
19170 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
19171
19172         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
19173         Check for unistd.h too, since Autoconf doesn't assume POSIX.
19174         Also:
19175
19176         2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
19177         Add year_2050_test to catch glibc bug 2821
19178         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
19179
19180         2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
19181         Prefer #ifdef to #if.
19182
19183         2006-04-02  Paul Eggert  <eggert@cs.ucla.edu>
19184         Return from 'main' instead of calling 'exit'.
19185
19186 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
19187
19188         * lib/mktime.c (guess_time_tm): Fix bug where mktime
19189         returned the maximum time_t value rather than (time_t) -1.
19190         Problem originally reported by William Bardwell
19191         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
19192
19193         * lib/isapipe.h (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
19194         Moved to here ...
19195         * lib/isapipe.c (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
19196         ... from here.
19197
19198 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
19199
19200         * config/srclist.txt: Temporarily comment out mktime.c until glibc bug
19201         2821 is fixed.
19202
19203 2006-09-08  Jim Meyering  <jim@meyering.net>
19204
19205         Don't make generated files read-only.  That would bother too many
19206         people.  However, do retain the ability to work when targets are
19207         read-only: remove the destination and temporary files before writing
19208         them (when generated via sed or echo), or by using the -f option for
19209         both cp and mv commands.  Suggestion to use -f from Paul Eggert.
19210         * modules/alloca-opt, modules/argz, modules/arpa_inet:
19211         * modules/byteswap, modules/configmake, modules/fcntl:
19212         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
19213         * modules/localcharset, modules/netinet_in, modules/poll:
19214         * modules/stdbool, modules/stdint, modules/sys_select:
19215         * modules/sys_socket, modules/sys_stat, modules/sysexits:
19216
19217 2006-09-08  Jim Meyering  <jim@meyering.net>
19218
19219         Avoid new build failure on FreeBSD 6.0.
19220         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Include
19221         <sys/param.h> when testing whether getmntinfo uses statvfs.  Patch by
19222         Pavel Tsekov, in <http://savannah.gnu.org/bugs/?17643>.
19223
19224 2006-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19225
19226         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't use plain echo.
19227
19228 2006-09-07  Jim Meyering  <jim@meyering.net>
19229
19230         Fix global typo in last change: use chmod u-w, not chmod u-x.
19231         Spotted by Paul Eggert and Bruce Korb.
19232         * modules/alloca-opt, modules/argz, modules/arpa_inet:
19233         * modules/byteswap, modules/configmake, modules/fcntl:
19234         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
19235         * modules/localcharset, modules/netinet_in, modules/poll:
19236         * modules/stdbool, modules/stdint, modules/sys_select:
19237         * modules/sys_socket, modules/sys_stat, modules/sysexits:
19238
19239 2006-09-06  Jim Meyering  <jim@meyering.net>
19240
19241         Make generated files be read-only.
19242         * modules/alloca-opt (Makefile.am): Work also when $@ is read-only.
19243         Ensure that each generated file is now read-only.
19244         * modules/argz: Likewise.
19245         * modules/arpa_inet: Likewise.
19246         * modules/byteswap: Likewise.
19247         * modules/configmake: Likewise.
19248         * modules/fcntl: Likewise.
19249         * modules/fnmatch: Likewise.
19250         * modules/getopt: Likewise.
19251         * modules/glob: Likewise.
19252         * modules/inttypes: Likewise.
19253         * modules/netinet_in: Likewise.
19254         * modules/poll: Likewise.
19255         * modules/stdbool: Likewise.
19256         * modules/stdint: Likewise.
19257         * modules/sys_select: Likewise.
19258         * modules/sys_socket: Likewise.
19259         * modules/sys_stat: Likewise.
19260         * modules/sysexits: Likewise.
19261         * modules/localcharset: Same as above, but continue using temporary
19262         file named "t-$@" (why different?) rather than the "$@-t" used
19263         everywhere else.
19264
19265         * modules/sysexits (Makefile.am): Replace literal occurrences
19266         of "sysexit.h" more readable, and more consistent, "$@".
19267
19268 2006-09-06  Bruno Haible  <bruno@clisp.org>
19269
19270         * modules/striconv: New file.
19271         * modules/xstriconv: New file.
19272         * MODULES.html.sh (Internationalization functions): Add striconv,
19273         xstriconv.
19274
19275 2006-09-06  Bruno Haible  <bruno@clisp.org>
19276
19277         * modules/gc (Makefile.am): Augment lib_LDFLAGS, not lib_LIBADD.
19278         * modules/iconvme (Makefile.am): Likewise. Also handle the case of
19279         not using libtool correctly.
19280
19281 2006-09-06  Bruno Haible  <bruno@clisp.org>
19282
19283         * lib/striconv.h: New file.
19284         * lib/striconv.c: New file, merging iconvme.c with GNU gettext's
19285         iconvstring.c.
19286         * lib/xstriconv.h: New file.
19287         * lib/xstriconv.c: New file.
19288
19289 2006-09-06  Bruno Haible  <bruno@clisp.org>
19290
19291         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
19292         lib_..._LDFLAGS.
19293
19294 2006-09-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19295
19296         * lib/argz_.h: Sync from Libtool.
19297
19298         2006-09-04  George Bosilca <bosilca@cs.utk.edu>
19299                 and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
19300
19301         * lib/libltdl/argz_.h: It's __cplusplus, not _cplusplus.
19302
19303 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
19304
19305         * modules/trim: New file.
19306
19307 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
19308
19309         * lib/trim.h: New file.
19310         * lib/trim.c: New file.
19311
19312 2006-09-05  Bruno Haible  <bruno@clisp.org>
19313
19314         * MODULES.html.sh (String handling): Add trim.
19315
19316 2006-09-04  Karl Berry  <karl@gnu.org>
19317
19318         * config/srclist.txt (signed.m4, gettext.m4): changes not propagated
19319         until next release.
19320
19321 2006-09-03  Bruno Haible  <bruno@clisp.org>
19322
19323         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Locate mingw shared libraries
19324         correctly.
19325
19326 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
19327
19328         * m4/getloadavg.m4 (gl_GETLOADAVG): Use CONFIGURING_GETLOADAVG,
19329         not gl_GETLOADAVG.  Omit unneeded semicolons.
19330         Problems reported by Ralf Wildenhues in
19331         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
19332         (gl_PREREQ_GETLOADAVG): Use AC_DEFUN, not m4_define.  Put
19333         at the end, which is the usual gnulib style.
19334
19335         * m4/fstypename.m4 (gl_FSTYPENAME): Use AC_CHECK_MEMBERS instead
19336         of doing all the work ourselves.
19337         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Don't check for
19338         sys/statvfs.h since the code doesn't use HAVE_SYS_STATVFS_H.
19339
19340 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
19341
19342         * lib/getloadavg.c: Use CONFIGURING_GETLOADAVG, not gl_GETLOADAVG.
19343         Problem reported by Ralf Wildenhues in
19344         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
19345
19346         * lib/mountlist.c: All uses of HAVE_F_FSTYPENAME_IN_STATFS replaced by
19347         HAVE_STRUCT_STATFS_F_FSTYPENAME.
19348
19349 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
19350
19351         * gnulib-tool (func_emit_lib_Makefile_am): Fix typos in
19352         yesterday's patch by changing test -n to test -z.
19353
19354 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
19355
19356         * modules/getloadavg (Files): Add m4/getloadavg.m4.
19357         (configure.ac): AC_FUNC_GETLOADAVG -> gl_GETLOADAVG, as
19358         the former is now obsolescent.
19359
19360         * modules/chdir-long (Depends-on): Add fcntl.
19361
19362 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
19363
19364         * m4/fnmatch.m4: Add comment that Autoconf AC_FUNC_FNMATCH is
19365         obsolescent, and programs should use gnulib instead.
19366         * m4/getloadavg.m4: New file, with contents taken from Autoconf
19367         but with prefixes changed.
19368
19369 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
19370
19371         * lib/getloadavg.c [defined gl_GETLOADAVG]: Don't include config.h
19372         or stdbool.h, because they might not exist while configuring.
19373
19374         * lib/chdir-long.c: Include <fcntl.h>, for O_DIRECTORY.
19375         Don't include unistd.h or limits.h; not needed, since chdir-long.h
19376         does that for us.
19377         (O_DIRECTORY): Remove.
19378
19379 2006-08-31  Eric Blake  <ebb9@byu.net>
19380
19381         * gnulib-tool: Don't let emacs change spaces to TAB.
19382
19383 2006-08-31  Bruno Haible  <bruno@clisp.org>
19384
19385         * gnulib-tool: When calling func_import more than once, do it in a
19386         subshell.
19387         Reported by Eric Blake <ebb9@byu.net>.
19388
19389 2006-08-31  Bruno Haible  <bruno@clisp.org>
19390
19391         * gnulib-tool (nl): Remove variable.
19392         (sed_transform_lib_file): Use more robust test for config-h module.
19393         (func_import): Fix typo in 2006-08-25 patch.
19394
19395 2006-08-31  Bruno Haible  <bruno@clisp.org>
19396
19397         * gnulib-tool (func_emit_lib_Makefile_am): When --makefile-name was
19398         specified, augment Makefile.am variables instead of assigning them.
19399
19400 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
19401
19402         Work around a bug in both the Linux and SunOS 64-bit kernels:
19403         nanosleep mishandles sleeps for longer than 2**31 seconds.
19404         Problem reported by Frank v Waveren in
19405         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
19406         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Require gl_CLOCK_TIME.
19407         Check for nanosleep bug.
19408         (LIB_NANOSLEEP): Append clock_gettime library if needed.
19409
19410 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
19411
19412         Work around a bug in both the Linux and SunOS 64-bit kernels:
19413         nanosleep mishandles sleeps for longer than 2**31 seconds.
19414         Problem reported by Frank v Waveren in
19415         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
19416         * lib/nanosleep.c (BILLION): New constant.
19417         (getnow) [HAVE_BUG_BIG_NANOSLEEP]: New functions.
19418         (rpl_nanosleep) [HAVE_BUG_BIG_NANOSLEEP]: Completely new
19419         implementation.
19420
19421 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
19422
19423         * modules/nanosleep (Depends-on): Add gettime.
19424
19425 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
19426         and Simon Josefsson  <jas@extundo.com>
19427         and Oskar Liljeblad  <oskar@osk.mine.nu>
19428
19429         * MODULES.html.sh (Support for building documentation): Add gpl, lgpl.
19430         * gnulib-tool (func_import): New license type 'unmodifiable license
19431         text'.
19432         * modules/fdl: Use it.  Longer description.
19433         * module/gpl, module/lgpl: New files.
19434
19435 2006-08-30  Jim Meyering  <jim@meyering.net>
19436
19437         * lib/isapipe.c (isapipe): Rename local s/fd/fd_pair/ to avoid
19438         shadowing the parameter.
19439
19440 2006-08-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19441
19442         Sync from Libtool:
19443
19444         2006-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19445
19446         * lib/libltdl/argz.c: Use `#ifdef HAVE_CONFIG_H', to facilitate code
19447         sharing with gnulib.  Report by Eric Blake.
19448
19449 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
19450
19451         * modules/isapipe: New file.
19452         * MODULES.html.sh (File descriptor based Input/Output): Add isapipe.
19453
19454 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
19455
19456         * modules/configmake (Makefile.am): Add a comment, and omit
19457         the CONFIGMAKE_ prefix from generated macro names.  Suggested
19458         by Bruno Haible.
19459
19460 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
19461
19462         * m4/isapipe.m4: New file.
19463
19464 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
19465
19466         * lib/isapipe.c, lib/isapipe.h: New files.
19467
19468 2006-08-29  Jim Meyering  <jim@meyering.net>
19469
19470         * modules/configmake (Makefile.am): Make configmake.h depend on
19471         Makefile.  Otherwise, a stale configmake.h could hang around.
19472
19473 2006-08-29  Eric Blake  <ebb9@byu.net>
19474
19475         * lib/error.c (error_at_line, print_errno_message): Match libc, after
19476         resolution of upstream bug 3044.
19477
19478 2006-08-29  Bruno Haible  <bruno@clisp.org>
19479
19480         * modules/localcharset (Depends-on): Add configmake.
19481         (Makefile.am): Remove setting of LIBDIR through DEFS.
19482
19483 2006-08-29  Bruno Haible  <bruno@clisp.org>
19484
19485         * lib/localcharset.c: Include configmake.h in order to get LIBDIR
19486         defined.
19487
19488 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
19489
19490         * modules/fcntl: New file.
19491         * modules/chdir-safer (Depends-on): Add fcntl.
19492         * modules/fts: Likewise.
19493         * modules/mkdir-p: Likewise.
19494
19495         * modules/stdint (Makefile.am): Do not substitute ABSOLUTE_INTTYPES_H.
19496         This undoes the most recent change, since we're now addressing the
19497         problem in a different way.
19498
19499         * gnulib-tool (emit_lib_Makefile_am): Don't put $makefile_name
19500         into output, since the output might be called Makefile.am even
19501         if $makefile_name is something different.
19502         (func_import): Use $makefile_am rather than
19503         ${makefile_name-Makefile.am}, to fix a bug where makefile_name was
19504         empty.
19505
19506         * modules/inttypes (Files): Add m4/inttypes-h.m4.
19507
19508 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
19509
19510         * m4/inttypes.m4 (gl_INTTYPES_H): Move ABSOLUTE_INTTYPES_H code here...
19511         * m4/stdint.m4 (gl_STDINT_H): ... from here.  This undoes the most
19512         recent change to stdint.m4, since we're now addressing the problem in a
19513         different way.
19514
19515 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
19516
19517         * m4/fcntl_h.m4: New file.
19518
19519 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
19520
19521         * lib/fcntl_.h: New file.
19522         * lib/chdir-safer.c (O_DIRECTORY, O_NOFOLLOW): Remove, now that we have
19523         the fcntl module.
19524         * lib/dirchownmod.c: Likewise.
19525         * lib/fts.c: Likewise.
19526
19527         * lib/inttypes_.h [defined _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H]:
19528         Include @ABSOLUTE_INTTYPES_H@ if available, but do nothing else.
19529         * lib/stdint_.h (_GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H): Define
19530         just before including <inttypes.h>, to avoid circular inclusion.
19531
19532 2006-08-28  Jim Meyering  <jim@meyering.net>
19533
19534         * doc/visibility.texi: Actually read and correct the grammar of the
19535         sentence affected by yesterday's change.
19536
19537 2006-08-28  Eric Blake  <ebb9@byu.net>
19538
19539         * modules/inttypes (Makefile.am): Fix sed error when inttypes.h
19540         needs wrapper.
19541
19542 2006-08-28  Eric Blake  <ebb9@byu.net>
19543
19544         * m4/inttypes.m4 (gl_INTTYPES_H): Fix missing #endif.
19545
19546 2006-08-28  Eric Blake  <ebb9@byu.net>
19547
19548         * m4/codeset.m4 (AM_LANGINFO_CODESET): Avoid compiler warning.
19549
19550 2006-08-28  Bruno Haible  <bruno@clisp.org>
19551
19552         * modules/c-strstr: New file, from GNU gettext.
19553         * MODULES.html.sh (String handling): Add c-strstr.
19554
19555 2006-08-28  Bruno Haible  <bruno@clisp.org>
19556
19557         * m4/inttypes.m4 (gl_INTTYPES_H): Don't test for the existence of SCNX*
19558         macros.
19559         Reported by Eric Blake.
19560
19561 2006-08-28  Bruno Haible  <bruno@clisp.org>
19562
19563         * lib/vasnprintf.c (EOVERFLOW): Remove definition.
19564         (VASNPRINTF): Return a string of length > INT_MAX without failing.
19565         * lib/vasprintf.c: Include errno.h, limits.h.
19566         (EOVERFLOW): New fallback definition.
19567         (vasprintf): Test here whether the string length is > INT_MAX.
19568         * lib/vsnprintf.c: Include errno.h, limits.h.
19569         (EOVERFLOW): New fallback definition.
19570         (vsnprintf): Fix bug when generated string was too long for the buffer.
19571         Test here whether the string length is > INT_MAX.
19572
19573 2006-08-28  Bruno Haible  <bruno@clisp.org>
19574
19575         * lib/inttypes_.h (SCNX*): Remove definitions.
19576         Reported by Eric Blake.
19577
19578 2006-08-28  Bruno Haible  <bruno@clisp.org>
19579
19580         * lib/c-strstr.h: New file, from GNU gettext.
19581         * lib/c-strstr.c: New file, from GNU gettext.
19582
19583 2006-08-28  Bruno Haible  <bruno@clisp.org>
19584
19585         * gnulib-tool: Reorder some statements.
19586
19587 2006-08-28  Bruno Haible  <bruno@clisp.org>
19588
19589         * gnulib-tool: New option --makefile-name.
19590         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Use
19591         $makefile_name.
19592         (func_import): Write $makefile_name to the cache file, and read it from
19593         there unless explicitly specified. Use $makefile_name as file name
19594         instead of Makefile.am. Adjust the recommendations accordingly.
19595
19596 2006-08-28  Bruno Haible  <bruno@clisp.org>
19597
19598         * gnulib-tool (func_verify_module): Check against misapplying patch.
19599
19600 2006-08-28  Bruno Haible  <bruno@clisp.org>
19601
19602         * gnulib-tool (func_relativize, func_relconcat): New functions.
19603         Give an error if --local-dir is given with --update.
19604         Remove trailing slashes from $local_gnulib_dir.
19605         (func_import): Store the relativized $local_gnulib_dir in
19606         gnulib-cache.m4, and read it from there if not specified explicitly.
19607
19608 2006-08-28  Bruno Haible  <bruno@clisp.org>
19609
19610         * gnulib-tool (func_get_tests_module): Don't assume that $gnulib_dir
19611         is the current directory. Respect also $local_gnulib_dir.
19612
19613 2006-08-28  Bruno Haible  <bruno@clisp.org>
19614             Simon Josefsson  <jas@extundo.com>
19615
19616         BeOS portability.
19617         * lib/getaddrinfo.c (PF_INET, PF_UNSPEC): New macros.
19618
19619 2006-08-27  Jim Meyering  <jim@meyering.net>
19620
19621         * doc/visibility.texi: Remove duplicate word: "pointer".
19622
19623 2006-08-26  Bruno Haible  <bruno@clisp.org>
19624
19625         * modules/inttypes (Files): Add lib/inttypes_.h, remove lib/inttypes.h.
19626         Add m4/inttypes.m4, remove m4/_inttypes_h.m4 and m4/include_next.m4.
19627         (Makefile.am): Create inttypes.h from inttypes_.h.
19628         * modules/stdint (Makefile.am): Substitute also ABSOLUTE_INTTYPES_H.
19629
19630         * modules/imaxabs: New file.
19631
19632         * modules/imaxdiv: New file.
19633
19634 2006-08-26  Bruno Haible  <bruno@clisp.org>
19635
19636         * m4/inttypes.m4: New file.
19637         * m4/_inttypes_h.m4: Remove file.
19638         * m4/inttypes-pri.m4 (gt_INTTYPES_PRI): Also AC_SUBST
19639         PRI_MACROS_BROKEN.
19640         * m4/stdint.m4 (gl_STDINT_H): Define also ABSOLUTE_INTTYPES_H.
19641
19642         * m4/imaxabs.m4: New file.
19643
19644         * m4/imaxdiv.m4: New file.
19645
19646 2006-08-26  Bruno Haible  <bruno@clisp.org>
19647
19648         * lib/inttypes_.h: New file.
19649         * lib/inttypes.h: Remove file.
19650         * lib/stdint_.h: Include <inttypes.h> through its absolute filename.
19651
19652         * lib/imaxabs.c: New file.
19653
19654         * lib/imaxdiv.c: New file.
19655
19656 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
19657
19658         New config-h module, so that "make" output needn't be cluttered
19659         by -DHAVE_CONFIG_H.
19660         * MODULES.html.sh (Support for building libraries and executables):
19661         Add config-h.
19662         * modules/config-h: New file.
19663         * gnulib-tool (nl, sed_transform_lib_file): New vars.
19664         (func_import): Turn "#ifdef HAVE_CONFIG_H" to "#if 1" if
19665         the config-h module is used.
19666
19667         New configmake module, so that "make" output needn't be cluttered
19668         by fluff like '-DLIBDIR=\"/usr/local/lib\"'.
19669         * MODULES.html.sh (Support for building libraries and executables):
19670         Add configmake.
19671         * modules/configmake: New file.
19672
19673 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
19674
19675         * m4/config-h.m4: New file.
19676
19677 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
19678
19679         * config/srclist.txt: Add elisp-comp.
19680
19681 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
19682
19683         * MODULES.html.sh (Support for building libraries and executables):
19684         Add elisp-comp.
19685         * build-aux/elisp-comp: New file.
19686         * modules/elisp-comp: New file.
19687
19688 2006-08-24  Bruno Haible  <bruno@clisp.org>
19689
19690         * gnulib-tool (func_create_testdir): Use non-default values of
19691         sourcebase and m4base.
19692
19693 2006-08-24  Bruno Haible  <bruno@clisp.org>
19694
19695         * MODULES.html.sh (Compatibility checks for POSIX:2001 functions: Fix
19696         HTML structure.
19697
19698 2006-08-23  Paul Eggert  <eggert@cs.ucla.edu>
19699
19700         * modules/openat (Depends-on): Add lchown.
19701
19702 2006-08-23  Bruno Haible  <bruno@clisp.org>
19703
19704         * gnulib-tool (func_import, func_create_testdir): Emit an invocation
19705         of gl_LOCK_EARLY instead of gl_LOCK.
19706
19707 2006-08-23  Bruno Haible  <bruno@clisp.org>
19708
19709         * m4/lock.m4 (gl_LOCK_BODY): Change the default value of gl_use_threads
19710         on OSF/1 to no.
19711         Reported by Stephen Cartwright <sgcartwr@ucalgary.ca>.
19712
19713 2006-08-23  Bruno Haible  <bruno@clisp.org>
19714
19715         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't consider BeOS statvfs
19716         as unusable.
19717
19718         * m4/lock.m4 (gl_LOCK_EARLY): Renamed from gl_LOCK.
19719         (gl_LOCK_BODY): Remove gl_PREREQ_LOCK invocation.
19720         (gl_LOCK): New macro.
19721
19722 2006-08-22  Simon Josefsson  <jas@extundo.com>
19723
19724         * modules/gc-md5 (Makefile.am): Need to add md5.h, after changes
19725         to md5 module.
19726
19727 2006-08-22  Simon Josefsson  <jas@extundo.com>
19728
19729         * MODULES.html.sh: Add "Support for maintaining and release
19730         projects".
19731
19732         * build-aux/gnupload: New file, from coreutils.
19733
19734 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
19735
19736         Avoid the need for AC_LIBSOURCES in m4 macros.
19737         * modules/arcfour (EXTRA_DIST): Add arcfour.h.
19738         * modules/arctwo (EXTRA_DIST): Add arctwo.h.
19739         * modules/check-version (EXTRA_DIST): Add check-version.h.
19740         * modules/crc (EXTRA_DIST): Add crc.h.
19741         * modules/des (EXTRA_DIST): Add des.h.
19742         * modules/gc (EXTRA_DIST): Add gc.h.
19743         * modules/getdelim (EXTRA_DIST): Add getdelim.h.
19744         * modules/getline (EXTRA_DIST): Add getline.h.
19745         * modules/getlogin_r (EXTRA_DIST): Add getlogin_r.h.
19746         * modules/hmac-md5 (EXTRA_DIST): Add hmac.h.
19747         * modules/hmac-sha1 (EXTRA_DIST): Add hmac.h.
19748         * modules/md2 (EXTRA_DIST): Add md2.h.
19749         * modules/md4 (EXTRA_DIST): Add md4.h.
19750         * modules/pagealign_alloc (EXTRA_DIST): Add pagealign_alloc.h.
19751         * modules/read-file (EXTRA_DIST): Add read-file.h.
19752         * modules/readline (EXTRA_DIST): Add readline.h.
19753         * modules/rijndael (EXTRA_DIST): Add rijndael-alg-fst.h,
19754         rijndael-api-fst.h.
19755
19756 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
19757
19758         * m4/rijndael.m4 (gl_ARCFOUR):
19759         * m4/arctwo.m4 (gl_ARCTWO):
19760         * m4/check-version.m4 (gl_CHECK_VERSION):
19761         * m4/crc.m4 (gl_CRC):
19762         * m4/des.m4 (gl_DES):
19763         * m4/gc-pbkdf2-sha1.m4 (gl_GC_PBKDF2_SHA1):
19764         * m4/gc.m4 (gl_GC):
19765         * m4/getdelim.m4 (gl_FUNC_GETDELIM):
19766         * m4/getline.m4 (gl_FUNC_GETLINE):
19767         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE):
19768         * m4/hmac-md5.m4 (gl_HMAC_MD5):
19769         * m4/hmac-sha1.m4 (gl_HMAC_SHA1):
19770         * m4/md2.m4 (gl_MD2):
19771         * m4/md4.m4 (gl_MD4):
19772         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC):
19773         * m4/read-file.m4 (gl_FUNC_READ_FILE):
19774         * m4/readline.m4 (gl_FUNC_READLINE):
19775         * m4/rijndael.m4 (gl_RIJNDAEL):
19776         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
19777         to get the necessary .h files and whatnot.
19778
19779 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
19780
19781         * config/srclist.txt: Remove gnupload, since coreutils now syncs from
19782         gnulib rather than the other way around.
19783         * config/srclistvars.sh (COREUTILS): Remove.
19784
19785 2006-08-22  Jim Meyering  <jim@meyering.net>
19786
19787         * modules/mkdir-p (Makefile.am): Fix typo: s/lib+SOURCES/lib_SOURCES/.
19788
19789         * modules/getpass-gnu (Makefile.am): Add getpass.h to EXTRA_DIST.
19790
19791 2006-08-22  Eric Blake  <ebb9@byu.net>
19792
19793         * modules/regexprops-generic: New file.
19794         * MODULES.html.sh (Support for building documentation): List it.
19795
19796 2006-08-22  Eric Blake  <ebb9@byu.net>
19797
19798         * m4/stdint_h.m4 (gl_AC_HEADER_STDINT_H): Avoid compiler warning.
19799         * m4/inttypes_h.m4 (gl_AC_HEADER_INTTYPES_H): Likewise.
19800         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Likewise.
19801         * m4/intmax_t.m4 (gt_AC_TYPE_INTMAX_T): Likewise.
19802
19803 2006-08-22  Bruno Haible  <bruno@clisp.org>
19804
19805         * gnulib-tool (func_emit_lib_Makefile_am): Don't treat lib_LIBRARIES
19806         and lib_LTLIBRARIES like the other lib_* variables.
19807
19808 2006-08-22  Bruno Haible  <bruno@clisp.org>
19809
19810         * build-aux/x-to-1.in: New file, from GNU gettext.
19811
19812 2006-08-22  Bruno Haible  <bruno@clisp.org>
19813
19814         * m4/readutmp.m4 (gl_READUTMP): Compile readutmp.c only if <utmp.h> or
19815         <utmpx.h> exists.
19816
19817 2006-08-22  Bruno Haible  <bruno@clisp.org>
19818
19819         * lib/readutmp.h: Skip most definitions if neither <utmp.h> nor
19820         <utmpx.h> exists.
19821
19822 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
19823
19824         BeOS portability.
19825         * lib/dirchownmod.c (dirchownmod): Don't use fchmod if it doesn't
19826         exist.
19827         Problem reported by Bruno Haible.
19828
19829 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
19830
19831         Avoid the need for AC_LIBSOURCES in m4 macros.
19832         * modules/acl (EXTRA_DIST): Add acl.h.
19833         * modules/argmatch (Files): Add m4/argmatch.m4.
19834         (configure.ac): Add gl_ARGMATCH.
19835         (EXTRA_DIST): Renamed from lib_SOURCES, for
19836         consistency with the other modules.  Remove argmatch.c.
19837         * modules/backupfile (EXTRA_DIST): Add backupfile.h.
19838         * modules/c-strtod (EXTRA_DIST): Add c-strtod.h.
19839         * modules/c-strtold (EXTRA_DIST): Add c-strtod.c, c-strtod.h.
19840         * modules/canonhost (EXTRA_DIST): Add c-canonhost.h.
19841         * modules/canonicalize (EXTRA_DIST): Add canonicalize.h.
19842         * modules/chdir-long (EXTRA_DIST): Add chdir-long.h.
19843         * modules/chdir-safer (EXTRA_DIST): Add chdir-safer.h.
19844         * modules/cloexec (EXTRA_DIST): Add cloexec.h.
19845         * modules/close-stream (EXTRA_DIST): Add close-stream.h.
19846         * modules/closeout (EXTRA_DIST): Add closeout.h.
19847         * modules/cycle-check (EXTRA_DIST): Add cycle-check.h.
19848         * modules/dev-ino (EXTRA_DIST): Add dev-ino.h.
19849         * modules/dirfd (EXTRA_DIST): Add dirfd.h.
19850         * modules/dirname (EXTRA_DIST): Renamed from lib_SOURCES.  Add
19851         dirname.h; remove basename.c and stripslash.c.
19852         * modules/exclude (EXTRA_DIST): Add exclude.h.
19853         * modules/exitfail (EXTRA_DIST): Add exitfail.h.
19854         * modules/fcntl-safer (EXTRA_DIST): Add fcntl-safer.h fcntl--.h.
19855         * modules/file-type (EXTRA_DIST): Add file-type.h.
19856         * modules/filemode (EXTRA_DIST): Add filemode.h.
19857         * modules/filenamecat (EXTRA_DIST): Add filenamecat.h.
19858         * modules/fopen-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
19859         * modules/fpending (EXTRA_DIST): Add __fpending.h.
19860         * modules/fprintftime (EXTRA_DIST): Add fprintftime.h.
19861         * modules/fsusage (EXTRA_DIST): Add fsusage.h.
19862         * modules/fts (EXTRA_DIST): Add fts_.h fts-cycle.c.
19863         * modules/getcwd (EXTRA_DIST): Add getcwd.h.
19864         * modules/getdate (EXTRA_DIST): Add getdate.c.
19865         * modules/gethrxtime (EXTRA_DIST): Add gethrxtime.h xtime.h.
19866         * modules/getpagesize (EXTRA_DIST): Add getpagesize.h.
19867         * modules/getpass (EXTRA_DIST): Add getpass.h.
19868         * modules/glob (EXTRA_DIST): Add glob_.h glob-libc.h.
19869         * modules/group-member (EXTRA_DIST): Add group-member.h.
19870         * modules/hard-locale (EXTRA_DIST): Add hard-locale.h.
19871         * modules/hash (EXTRA_DIST): Add hash.h.
19872         * modules/human (EXTRA_DIST): Add human.h.
19873         * modules/inttypes (EXTRA_DIST): Add inttypes.h.
19874         * modules/lchmod (EXTRA_DIST): Add lchmod.h.
19875         * modules/lchown (EXTRA_DIST): Add lchown.h.
19876         * modules/long-options (EXTRA_DIST): Add long-options.h.
19877         * modules/lstat (EXTRA_DIST): Add lstat.h.
19878         * modules/md5 (EXTRA_DIST): Add memcasecmp.h.
19879         * modules/memcoll (EXTRA_DIST): Add memcoll.h.
19880         * modules/mempcpy (EXTRA_DIST): Add mempcpy.h.
19881         * modules/memrchr (EXTRA_DIST): Add memrchr.h.
19882         * modules/memxor (EXTRA_DIST): Add memxor.h.
19883         * modules/mkancesdirs (EXTRA_DIST): Add mkancesdirs.h.
19884         * modules/mkdir-p (EXTRA_DIST): Add modechange.h.
19885         * modules/mountlist (EXTRA_DIST): Add mountlist.h.
19886         * modules/openat (EXTRA_DIST): Add at-func.c openat.h openat-priv.h.
19887         * modules/pathmax (EXTRA_DIST): Add pathmax.h.
19888         * modules/physmem (EXTRA_DIST): Add physmem.h.
19889         * modules/posixtm (EXTRA_DIST): Add posixtm.h.
19890         * modules/posixver (EXTRA_DIST): Add posixver.h.
19891         * modules/quote (EXTRA_DIST): Add quote.h.
19892         * modules/quotearg (EXTRA_DIST): Add quotearg.h.
19893         * modules/readtokens (EXTRA_DIST): Add readtokens.h.
19894         * modules/readutmp (EXTRA_DIST): Add readutmp.h.
19895         * modules/regex (EXTRA_DIST): Add regcomp.c regex.h regex_internal.c
19896         regex_internal.h regexec.c.
19897         * modules/safe-read (EXTRA_DIST): Add safe-read.h.
19898         * modules/safe-write (EXTRA_DIST): Add safe-write.h.
19899         * modules/same (EXTRA_DIST): Add same.h.
19900         * modules/same-inode (EXTRA_DIST): Add same-inode.h.
19901         * modules/save-cwd (EXTRA_DIST): Add save-cwd.h.
19902         * modules/savedir (EXTRA_DIST): Add savedir.h.
19903         * modules/sha1 (EXTRA_DIST): Add sha1.h.
19904         * modules/sig2str (EXTRA_DIST): Add sig2str.h.
19905         * modules/stat-macros (EXTRA_DIST): Add stat-macros.h.
19906         * modules/stat-time (EXTRA_DIST): Add stat-time.h.
19907         * modules/stdlib-safer (EXTRA_DIST): Add stdlib-safer.h stdlib--.h.
19908         * modules/strdup (EXTRA_DIST): Add strdup.h.
19909         * modules/strftime (EXTRA_DIST): Add strftime.h.
19910         * modules/strndup (EXTRA_DIST): Add strndup.h.
19911         * modules/strnlen (EXTRA_DIST): Add strnlen.h.
19912         * modules/strverscmp (EXTRA_DIST): Add strverscmp.h.
19913         * modules/time_r (EXTRA_DIST): Add time_r.h.
19914         * modules/timespec (EXTRA_DIST): Add timespec.h.
19915         * modules/tmpfile-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
19916         * modules/unistd-safer (EXTRA_DIST): Add unistd-safer.h unistd--.h.
19917         * modules/unlinkdir (EXTRA_DIST): Add unlinkdir.h.
19918         * modules/unlocked-io (EXTRA_DIST): Add unlocked-io.h.
19919         * modules/userspec (EXTRA_DIST): Add userspec.h.
19920         * modules/utimecmp (EXTRA_DIST): Add utimecmp.h.
19921         * modules/utimens (EXTRA_DIST): Add utimens.h.
19922         * modules/xalloc (EXTRA_DIST): Add xalloc.h.
19923         * modules/xgetcwd (EXTRA_DIST): Add xgetcwd.h.
19924         * modules/xnanosleep (EXTRA_DIST): Add xnanosleep.h.
19925         * modules/xreadlink (EXTRA_DIST): Add xreadlink.h.
19926         * modules/xstrtod (EXTRA_DIST): Add xstrtod.h.
19927         * modules/xstrtol (EXTRA_DIST): Add xstrtol.h.
19928         * modules/xstrtold (EXTRA_DIST): Add xstrtod.c xstrtod.h.
19929         * modules/yesno (EXTRA_DIST): Add yesno.h.
19930
19931 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
19932
19933         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Check for fchmod.
19934
19935         * m4/argmatch.m4: New file, from coreutils with AC_LIBSOURCES removed.
19936         * m4/dev-ino.m4, same-inode.m4: Remove.
19937
19938         * m4/_inttypes_h.m4 (gl_INTTYPES_H):
19939         * m4/acl.m4 (AC_FUNC_ACL):
19940         * m4/backupfile.m4 (gl_BACKUPFILE):
19941         * m4/c-strtod.m4 (gl_C99_STRTOLD):
19942         * m4/canon-host.m4 (gl_CANON_HOST):
19943         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
19944         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG):
19945         * m4/chdir-safer.m4 (gl_CHDIR_SAFER):
19946         * m4/cloexec.m4 (gl_CLOEXEC):
19947         * m4/close-stream.m4 (gl_CLOSE_STREAM):
19948         * m4/closeout.m4 (gl_CLOSEOUT):
19949         * m4/dirfd.m4 (gl_FUNC_DIRFD):
19950         * m4/dirname.m4 (gl_DIRNAME):
19951         * m4/exclude.m4 (gl_EXCLUDE):
19952         * m4/exitfail.m4 (gl_EXITFAIL):
19953         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER):
19954         * m4/file-type.m4 (gl_FILE_TYPE):
19955         * m4/filemode.m4 (gl_FILEMODE):
19956         * m4/filenamecat.m4 (gl_FILE_NAME_CONCAT):
19957         * m4/fpending.m4 (gl_FUNC_FPENDING):
19958         * m4/fprintftime.m4 (gl_FPRINTFTIME):
19959         * m4/fts.m4 (gl_FUNC_FTS):
19960         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL):
19961         * m4/getdate.m4 (gl_GETDATE):
19962         * m4/gethrxtime.m4 (gl_GETHRXTIME):
19963         * m4/getpagesize.m4 (gl_GETPAGESIZE):
19964         * m4/getpass.m4 (gl_FUNC_GETPASS):
19965         * m4/gettime.m4 (gl_GETTIME):
19966         * m4/getugroups.m4 (gl_GETUGROUPS):
19967         * m4/glob.m4 (gl_GLOB_SUBSTITUTE):
19968         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER):
19969         * m4/hard-locale.m4 (gl_HARD_LOCALE):
19970         * m4/hash.m4 (gl_HASH):
19971         * m4/idcache.m4 (gl_IDCACHE):
19972         * m4/lchmod.m4 (gl_FUNC_LCHMOD):
19973         * m4/lchown.m4 (gl_FUNC_LCHOWN):
19974         * m4/long-options.m4 (gl_LONG_OPTIONS):
19975         * m4/lstat.m4 (gl_FUNC_LSTAT):
19976         * m4/md5.m4 (gl_MD5):
19977         * m4/memcasecmp.m4 (gl_MEMCASECMP):
19978         * m4/memcoll.m4 (gl_MEMCOLL):
19979         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY):
19980         * m4/memrchr.m4 (gl_FUNC_MEMRCHR):
19981         * m4/memxor.m4 (gl_MEMXOR):
19982         * m4/mkancesdirs.m4 (gl_MKANCESDIRS):
19983         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS):
19984         * m4/modechange.m4 (gl_MODECHANGE):
19985         * m4/mountlist.m4 (gl_MOUNTLIST):
19986         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
19987         * m4/openat.m4 (gl_FUNC_OPENAT):
19988         * m4/pathmax.m4 (gl_PATHMAX):
19989         * m4/physmem.m4 (gl_PHYSMEM):
19990         * m4/posixtm.m4 (gl_POSIXTM):
19991         * m4/posixver.m4 (gl_POSIXVER):
19992         * m4/quote.m4 (gl_QUOTE):
19993         * m4/quotearg.m4 (gl_QUOTEARG):
19994         * m4/readtokens.m4 (gl_READTOKENS):
19995         * m4/readutmp.m4 (gl_READUTMP):
19996         * m4/regex.m4 (gl_REGEX):
19997         * m4/safe-read.m4 (gl_SAFE_READ):
19998         * m4/safe-write.m4 (gl_SAFE_WRITE):
19999         * m4/same.m4 (gl_SAME):
20000         * m4/save-cwd.m4 (gl_SAVE_CWD):
20001         * m4/savedir.m4 (gl_SAVEDIR):
20002         * m4/settime.m4 (gl_SETTIME):
20003         * m4/sha1.m4 (gl_SHA1):
20004         * m4/sig2str.m4 (gl_FUNC_SIG2STR):
20005         * m4/stat-macros.m4 (gl_STAT_MACROS):
20006         * m4/stat-time.m4 (gl_STAT_TIME):
20007         * m4/stdio-safer.m4 (gl_FOPEN_SAFER):
20008         * m4/stdlib-safer.m4 (gl_STDLIB_SAFER):
20009         * m4/strdup.m4 (gl_FUNC_STRDUP):
20010         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME):
20011         * m4/strndup.m4 (gl_FUNC_STRNDUP):
20012         * m4/strnlen.m4 (gl_FUNC_STRNLEN):
20013         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP):
20014         * m4/time_r.m4 (gl_TIME_R):
20015         * m4/timespec.m4 (gl_TIMESPEC):
20016         * m4/unistd-safer.m4 (gl_UNISTD_SAFER):
20017         * m4/unlinkdir.m4 (gl_UNLINKDIR):
20018         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO):
20019         * m4/userspec.m4 (gl_USERSPEC):
20020         * m4/utimecmp.m4 (gl_UTIMECMP):
20021         * m4/utimens.m4 (gl_UTIMENS):
20022         * m4/xalloc.m4 (gl_XALLOC):
20023         * m4/xgetcwd.m4 (gl_XGETCWD):
20024         * m4/xnanosleep.m4 (gl_XNANOSLEEP):
20025         * m4/xreadlink.m4 (gl_XREADLINK):
20026         * m4/xstrtod.m4 (gl_XSTRTOD):
20027         * m4/yesno.m4 (gl_YESNO):
20028         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
20029         to get the necessary .h files and whatnot.
20030
20031 2006-08-21  Mark D. Baushke  <mdb@gnu.org>
20032             Bruno Haible  <bruno@clisp.org>
20033
20034         * gnulib-tool (func_verify_module): Work around Sun's non-POSIX 1003.2
20035         /bin/sh understanding of '!' conditional negation.
20036
20037 2006-08-21  Jim Meyering  <jim@meyering.net>
20038
20039         * modules/openat (Depends-on): Really alphabetize.
20040
20041         * modules/acl (Depends-on): Add error and quote.
20042
20043         * check-module (find_included_lib_files): Add at-func.c to the
20044         ok-to-include-more-than-once white list.
20045
20046         * modules/openat (Depends-on): Add lstat.  Alphabetize.
20047
20048 2006-08-21  Bruno Haible  <bruno@clisp.org>
20049
20050         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
20051         Emit a pkgdata_DATA variable only if some snippets add contents to it.
20052         Reported by Martin Lambers <marlam@marlam.de>.
20053
20054 2006-08-21  Bruno Haible  <bruno@clisp.org>
20055
20056         * gnulib-tool (func_emit_lib_Makefile_am): If the snippets already
20057         specify an installation location, don't emit a noinst_LIBRARIES or
20058         noinst_LTLIBRARIES assignment.
20059
20060 2006-08-21  Bruno Haible  <bruno@clisp.org>
20061
20062         BeOS portability.
20063         * modules/mbchar (Include): Don't test HAVE_WCTYPE_H any more, since
20064         BeOS has mbrtowc() but no <wctype.h>.
20065
20066 2006-08-21  Bruno Haible  <bruno@clisp.org>
20067
20068         BeOS portability.
20069         * m4/mbchar.m4 (gl_MBCHAR): Compile mbchar.c also if <wctype.h> doesn't
20070         exist.
20071
20072 2006-08-21  Bruno Haible  <bruno@clisp.org>
20073
20074         BeOS portability.
20075         * lib/mbchar.h: Include <wctype.h> only if it exists.
20076
20077 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
20078
20079         Remove files that are no longer needed by their respective modules.
20080         * m4/obstack.m4: Remove.
20081         * m4/strerror_r.m4: Remove.
20082         * m4/uint32_t.m4: Remove.
20083         * m4/uintptr_t.m4: Remove.
20084         * m4/ullong_max.m4: Remove.
20085         * m4/xstrtoimax.m4: Remove.
20086         * m4/xstrtoumax.m4: Remove.
20087
20088         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Do not require
20089         gl_AC_TYPE_UINTMAX_T, gl_STRUCT_DEV_INO, or gl_SAME_INODE, since gnulib
20090         dependencies now capture this.
20091
20092         * m4/cycle-check.m4 (gl_CYCLE_CHECK):
20093         Do not use AC_LIBSOURCES, since gnulib modules now do this.
20094         * m4/fsusage.m4 (gl_FSUSAGE): Likewise.
20095         * m4/human.m4 (gl_HUMAN): Likewise.
20096         * m4/inttostr.m4 (gl_INTTOSTR): Likewise.
20097         * m4/xstrtol.m4 (gl_XSTRTOL): Likewise.
20098
20099         * m4/filemode.m4 (gl_FILEMODE): Require AC_STRUCT_ST_DM_MODE.
20100
20101         * m4/filemode.m4 (gl_PREREQ_FSUSAGE_EXTRA): Do not require
20102         gl_AC_TYPE_INTMAX_T or gl_AC_TYPE_UINTMAX_T, since we now require
20103         stdint.
20104         * m4/human.m4 (gl_HUMAN): Likewise.
20105         * m4/inttostr.m4 (gl_PREREQ_INTTOSTR): Likewise.
20106         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Likewise.
20107         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
20108         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
20109         * m4/xstrtol (gl_XSTRTOL): Likewise.
20110
20111         * m4/gethrxtime.m4 (gl_XTIME): gl_AC_TYPE_LONG_LONG ->
20112         AC_TYPE_LONG_LONG_INT.
20113         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
20114         * m4/strtoll.m4 (gl_FUNC_STRTOLL): Likewise.
20115         * m4/strtoull.m4 (gl_FUNC_STRTOULL): Likewise, for unsigned long.
20116         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
20117
20118         * m4/human.m4 (gl_HUMAN): Do not require AM_STDBOOL_H since we depend
20119         on stdbool.
20120
20121         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL_H, gl_PREREQ_XSTRTOL): Remove.
20122         (gl_PREREQ_XSTRTOUL): Remove.
20123
20124         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Check for hasmntopt.
20125
20126         * m4/posixver.m4: Fix comment since head -1 now works even in POSIX
20127         mode.
20128
20129 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
20130
20131         Add and change modules to make it easier for coreutils to use
20132         gnulib-tool.
20133         * modules/backupfile (Files): Remove m4/d-ino.m4.
20134         (Depends-on): Add d-ino.
20135         * modules/cycle-check (Depends-on): Add stdint.
20136         (lib_SOURCES): Add cycle-check.h.
20137         * modules/d-ino: New module.
20138         * modules/d-type: New module.
20139         * modules/error (Files): Remove m4/strerror_r.m4.
20140         * modules/filemode (Files): Add m4/st_dm_mode.m4.
20141         * modules/fsuage (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
20142         m4/inttypes_h.m4, m4/uintmax_t.m4.
20143         (Depends-on): Add stdint.
20144         (lib_SOURCES): Add fsusage.h.
20145         * modules/getcwd (Files): Remove d-ino.m4.
20146         (Depends-on): Add d-ino.
20147         * modules/getndelim2 (Depends-on): Add stdint.
20148         * modules/glob (Files): Remove m4/d-type.m4.
20149         (Depends-on): Add d-type.
20150         * modules/host-os: New module.
20151         * modules/human (Files):  Remove m4/ulonglong.m4, m4/stdint_h.m4,
20152         m4/inttypes_h.m4, m4/uintmax_t.m4.
20153         * Depends-on: Add stdint.
20154         (lib_SOURCES): Add human.h.
20155         * modules/inttostr (Files): Remove m4/intmax_t.m4,
20156         m4/inttostr.m4, m4/inttypes_h.m4, m4/longlong.m4, m4/stdint_h.m4,
20157         m4/uintmax_t.m4, m4/ulonglong.m4.
20158         (Depends-on): Add stdint.
20159         (EXTRA_DIST): Add inttostr.h.
20160         * modules/lchmod: New module.
20161         * modules/link-follow: New module.
20162         * modules/mkdir-p (Files): Remove lib/lchmod.h, m4/lchmod.m4.
20163         (Depends-on): Add lchmod.
20164         * modules/mkstemp (Files): Remove m4/ulonglong.m4,
20165         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4.
20166         (Depends-on): Add stdint.
20167         * modules/obstack (Files): Remove m4/inttypes_h.m4, m4/obstack.m4,
20168         m4/stdint_h.m4, m4/uintmax_t.m4, m4/ulonglong.m4.
20169         (Depends-on): Add stdint.
20170         (configure.ac): Change gl_OBSTACK to AC_FUNC_OBSTACK.
20171         * modules/perl: New module.
20172         * modules/regex (Depends-on): Add stdint.
20173         * modules/rmdir-errno: New module.
20174         * modules/strtoimax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
20175         m4/intmax_t.m4.
20176         (Depends-on): Add stdint.
20177         * modules/strtoumax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
20178         m4/uintmax_t.m4.
20179         (Depends-on): Add stdint.
20180         * modules/unlink-busy: New module.
20181         * modules/utimecmp (Depends-on): Add stdint.
20182         * modules/uptime: New module.
20183         * modules/winsz-ioctl: New module.
20184         * modules/winsz-termios: New module.
20185         * modules/xnanosleep (Depends-on): Add nanosleep.
20186         * modules/ullong_max: Remove.
20187         * modules/xstrtoimax (Files): Remove m4/xstrtoimax.m4.
20188         (configure.ac): Remove gl_XSTRTOIMAX; no action needed now.
20189         * modules/xstrtol (Files): Remove m4/ulonglong.m4, m4/longlong.m4,
20190         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4, m4/intmax_t.m4.
20191         (Depends-on): Add inttypes.
20192         (lib_SOURCES): Add xstrtol.h.
20193         * modules/xstrtoumax (Files): Remove m4/xstrtoumax.m4.
20194         (configure.ac): Remove gl_XSTRTOUMAX; no action needed now.
20195         * MODULES.html.sh: Move 'assert' into the assert section.
20196         Move 'dummy' into the linking section.
20197         Remove ullong_max.
20198         Add section for compatibility checks for POSIX:2001 functions,
20199         and put d-ino, d-type, link-follow, rmdir-errno, unlink-busy,
20200         winsz-ioctl, and winsz-termios into it.
20201         Add lchmod.
20202         Add top-level Misc section and put host-os, perl, and uptime
20203         into it.
20204
20205 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
20206
20207         * lib/cycle-check.h: Include <stdint.h> unconditionally, since we
20208         now assume the stdint module.  Do not include inttypes.h.
20209         * lib/fsusage.h: Likewise.
20210         * lib/getndelim2.c: Likewise.
20211         * lib/human.h: Likewise.
20212         * lib/inttostr.h: Likewise.
20213         * lib/obstack.c: Likewise.
20214         * lib/regex_internal.h: Likewise.
20215         * lib/tempname.c: Likewise.
20216         * lib/utimecmp.c: Likewise.
20217         * lib/xstrtol.h: Likewise.
20218
20219         * lib/stat_.h: Fix typo: HAVE_FUNC_LSTAT -> HAVE_LSTAT.
20220
20221         * lib/strtoimax.c: Adjust to macro name changes in Autoconf,
20222         e.g., HAVE_LONG_LONG -> HAVE_LONG_LONG_INT.
20223         * lib/xtime.h: Likewise.
20224
20225 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
20226
20227         * modules/openat (Files): Add lib/fchmodat.c.
20228         Fixes problem reported by Jay Youngman.
20229
20230 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
20231
20232         * lib/fchmodat.c: New file, from coreutils.  This was inadvertently
20233         omitted in the 2006-08-17 update.  Problem reported by Jay Youngman.
20234
20235 2006-08-18  Paul Eggert  <eggert@cs.ucla.edu>
20236             Bruno Haible  <bruno@clisp.org>
20237
20238         * m4/bison-i18n.m4 (BISON_I18N): Also handle the case where yacc exists
20239         and is a script that invokes bison. Tighten the code. Add comments.
20240
20241 2006-08-18  Jim Meyering  <jim@meyering.net>
20242
20243         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Also check for
20244         CLOCK_REALTIME, since gethrxtime may revert to using clock_gettime via
20245         gettime.c.  Gabor Z. Papp reported that gethrxtime-using programs
20246         failed to link due to unresolved clock_gettime on a linux-2.4.x system.
20247
20248 2006-08-18  Bruno Haible  <bruno@clisp.org>
20249
20250         * modules/bison-i18n: New file.
20251         * MODULES.html.sh (Internationalization functions): Add it.
20252
20253 2006-08-18  Bruno Haible  <bruno@clisp.org>
20254
20255         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Also check for
20256         sys/statvfs.h. When getmntinfo was found, check its declaration and
20257         set either MOUNTED_GETMNTINFO or MOUNTED_GETMNTINFO2 depending on it.
20258
20259 2006-08-18  Bruno Haible  <bruno@clisp.org>
20260
20261         * m4/bison-i18n.m4: New file, from bison.
20262
20263 2006-08-18  Bruno Haible  <bruno@clisp.org>
20264
20265         * lib/mountlist.c [MOUNTED_GETMNTINFO2]: Include sys/statvfs.h.
20266         (ME_DUMMY): Treat "kernfs" as a dummy.
20267         (read_file_system_list) [MOUNTED_GETMNTINFO2]: Implement.
20268
20269 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
20270
20271         Update from coreutils.
20272
20273         2006-08-15  Jim Meyering  <jim@meyering.net>
20274
20275         * m4/openat.m4 (gl_FUNC_OPENAT): Add at-func.c via AC_LIBSOURCES.
20276
20277         2006-01-17  Jim Meyering  <jim@meyering.net>
20278
20279         * m4/fts.m4 (gl_FUNC_FTS_CORE): Depend on gl_FUNC_OPENAT.
20280
20281         2006-01-11  Jim Meyering  <jim@meyering.net>
20282
20283         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile fchmodat.c.
20284         Check for the lchmod function.
20285
20286 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
20287
20288         Update from coreutils.
20289
20290         * lib/__fpending.h: Add copyright notice.
20291         * lib/fprintftime.h: Likewise.
20292         * lib/savedir.c: Use (C) in copyright notice.
20293         * lib/savedir.h: Likewise.
20294
20295         2006-08-15  Jim Meyering  <jim@meyering.net>
20296
20297         * lib/at-func.c: New file, with the logic of all emulated at-functions.
20298         * lib/openat-priv.h: Include <errno.h> and define ENOSYS,
20299         in support of the EXPECTED_ERRNO macro.
20300         * lib/openat.c (fstatat, unlinkat, fchownat): Remove function
20301         definitions.  Instead, define the appropriate symbols and include
20302         "at-func.c".
20303         * lib/mkdirat.c (mkdirat): Likewise.
20304         * lib/fchmodat.c (fchmodat): Likewise.
20305         (ENOSYS): Remove definition.
20306         * lib/openat.c: Don't include <errno.h>, now that "openat-priv.h" does
20307         it.  Don't include "unistd--.h" -- it wasn't ever used.
20308
20309         2006-01-17  Jim Meyering  <jim@meyering.net>
20310
20311         Rewrite fts.c not to change the current working directory,
20312         by using openat, fstatat, fdopendir, etc..
20313
20314         * lib/fts.c [! _LIBC]: Include "openat.h" and "unistd--.h".
20315         (HAVE_OPENAT_SUPPORT): Define.
20316         [_LIBC] (fchdir): Don't undef or define; no longer used.
20317         (FCHDIR): Define in terms of cwd_advance_fd rather than fchdir.
20318         Now, this `function' always succeeds, and consumes its file descriptor
20319         parameter -- so callers must not close such FDs.  Update callers.
20320         (diropen_fd, opendirat, cwd_advance_fd): New functions.
20321         (diropen): Add parameter, SP.  Adjust all callers.
20322         Implement using diropen_fd, rather than open.
20323         (fts_open): Initialize new member, fts_cwd_fd.
20324         Remove fts_rft-setting code.
20325         (fts_close): Close fts_cwd_fd, if necessary.
20326         (__opendir2): Define in terms of opendir or opendirat,
20327         depending on whether the FST_NOCHDIR flag is set.
20328         (fts_build): Since fts_safe_changedir consumes its FD, and since
20329         this code must do `closedir(dirp)', dup the dirfd(dirp) argument,
20330         and close the dup'd file descriptor upon failure.
20331         (fts_stat): Use fstatat(...AT_SYMLINK_NOFOLLOW) in place of lstat.
20332         (fts_safe_changedir): Tweak semantics to reflect that this function
20333         now calls cwd_advance_fd and hence consumes its FD argument.
20334         * lib/fts_.h [struct FTS] (fts_cwd_fd): New member.
20335         [struct FTS] (fts_rft): Remove now-unused member.
20336         [struct FTS] (fts_cycle.state): Improve comment.
20337
20338         * lib/openat.c (openat_needs_fchdir): New function.
20339         * lib/openat.h (openat_needs_fchdir): Declare it.
20340
20341 2006-08-16  Paul Eggert  <eggert@cs.ucla.edu>
20342
20343         * lib/memcoll.c (memcoll): Set errno = 0 in the shortcut case, too.
20344         Problem and fix reported by Pádraig Brady in
20345         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00099.html>.
20346
20347 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
20348
20349         * modules/cycle-check (configure.ac): Add gl_CYCLE_CHECK.
20350
20351 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
20352
20353         * lib/memcoll.c (memcoll): Optimize for the common case where the
20354         arguments are bytewise equal.
20355
20356 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
20357
20358         * doc/regexprops-generic.texi: Add a copyright notice.
20359
20360 2006-08-15  Bruno Haible  <bruno@clisp.org>
20361
20362         * modules/tmpdir (License): Change to LGPL.
20363
20364 2006-08-15  Bruno Haible  <bruno@clisp.org>
20365
20366         * gnulib-tool (func_all_modules, func_verify_module): COPYING is not a
20367         module.
20368
20369 2006-08-14  Simon Josefsson  <jas@extundo.com>
20370
20371         * config/srclist.txt: Add gnupload.
20372
20373 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
20374
20375         Change copyright notice from LGPL 2 to GPL 2, since that's the
20376         standard form used in the gnulib repository.
20377         * tests/test-lock.c: Likewise.
20378         * tests/test-stdint.c: Likewise.
20379         * tests/test-tls.c: Likewise.
20380
20381         * users.txt: Add bison, diffutils, libprelude, prelude-lml,
20382         prelude-manager.  User shorter URLs for GNU projects, without '?'.
20383         Add copyright notice.
20384
20385         * check-module: Add copyright notice.  Output a copyright
20386         notice if "--version" is specified.
20387         * modules/COPYING: New file.
20388         * tests/test-getaddrinfo.c: Add copyright notice.
20389         * tests/test-verify.c: Likewise.
20390
20391 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
20392
20393         Change copyright notice from LGPL 2 to GPL 2, since that's the
20394         standard form used in the gnulib repository.
20395         * lib/lock.c: LGPL -> GPL.
20396         * lib/lock.h: Likewise.
20397         * lib/strnlen1.c: Likewise.
20398         * lib/strnlen1.h: Likewise.
20399         * lib/tls.c: Likewise.
20400         * lib/tls.h: Likewise.
20401         * lib/tmpdir.c: Likewise.
20402
20403         * lib/TODO: Remove; this belongs only in coreutils.
20404
20405 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
20406
20407         Add copyright notices to long-enough files that lack them, since
20408         otherwise the files aren't clearly free.  Use the same notice that
20409         getdate.texi already uses.
20410         * doc/alloca-opt.texi: Add copyright notice.
20411         * doc/alloca.texi: Likewise.
20412         * doc/ctime.texi: Likewise.
20413         * doc/functions.texi: Likewise.
20414         * doc/gcd.texi: Likewise.
20415         * doc/gnulib-tool.texi: Likewise.
20416         * doc/inet_ntoa.texi: Likewise.
20417         * doc/visibility.texi: Likewise.
20418
20419         * doc/getdate.texi: Update FDL version from 1.1 to 1.2.
20420         * doc/quote.texi: Add copyright notice.
20421
20422         * doc/solaris-versions: Add SunOS 5.10, SunOS 1.x, SunOS 4.0, SunOS
20423         4.0.x, SunOS 4.1.1.1, SunOS 4.1.1_U1, SunOS 4.1.3B.  SunOS 4.1.3
20424         was Solaris 1.1A.  Remove space before B in Solaris 1.1.1B.
20425         Mention SunOS 5.11.  Mention that everything before SunOS 5.7
20426         is now obsolete, and give a pointer to the Sun list.
20427         Add copyright notice.
20428
20429 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
20430
20431         * config/srclistvars.sh: Add copyright notice.
20432
20433 2006-08-14  Eric Blake  <ebb9@byu.net>
20434
20435         Import the following change from libc:
20436
20437         2006-08-12  Ulrich Drepper  <drepper@redhat.com>
20438
20439         Upstream bug 2997.
20440         * lib/misc/error.c: Add space between program name and message if file
20441         name is missing.
20442
20443 2006-08-12  Karl Berry  <karl@gnu.org>
20444
20445         * config/srclist.txt (ssize_t.m4, sig_atomic_t.m4, signalblocking.m4):
20446         remove, these originate in gnulib now.
20447
20448 2006-08-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20449
20450         * doc/Makefile (standards.info standards.html standards.dvi):
20451         Also depend on make-stds.texi.
20452
20453 2006-08-11  Paul Eggert  <eggert@cs.ucla.edu>
20454
20455         * lib/pipe-safer.c (pipe_safer): Fix misspelling: HAVE_FUNC_PIPE ->
20456         HAVE_PIPE.  Fix a file descriptor leak when fd_safer fails.
20457
20458         * lib/regex_internal.c (re_string_skip_chars): Don't assume WEOF fits
20459         in wchar_t.  Problem reported by Eric Blake.
20460
20461         * lib/snprintf.c (snprintf): memcpy LEN bytes, not SIZE - 1, when
20462         LEN is smaller than SIZE.  Suggested by Bruno Haible.
20463         Also, help the compiler to keep LEN in a register.
20464
20465 2006-08-11  Eric Blake  <ebb9@byu.net>
20466
20467         * users.txt: Sort.  Add tar.
20468
20469 2006-08-11  Bruno Haible  <bruno@clisp.org>
20470
20471         * users.txt: New file.
20472
20473 2006-08-11  Bruno Haible  <bruno@clisp.org>
20474
20475         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Include <stdio.h> and <time.h>
20476         before <wchar.h>. Needed for OSF/1 and BSD/OS.
20477
20478 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
20479
20480         * modules/snprintf (Depends-on): Remove minmax.
20481         (Maintainer): Add self and Bruno.
20482
20483 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
20484
20485         * lib/.cppi-disable: Add snprintf.h, socket_.h.
20486         * lib/snprintf.c: Include <errno.h> and <limits.h>.
20487         (EOVERFLOW): Define if the system does not.
20488         Do not include "minmax.h"; it wasn't used.
20489         (snprintf): Don't assume size_t promotes to an unsigned type.
20490         Fix bug when generated string was too long for the buffer: the
20491         buffer's contents are supposed to be the initial prefix of the
20492         output.  Don't assume vasnprintf returns EOVERFLOW if the size
20493         exceeds INT_MAX; do the check ourselves.
20494
20495         Import the following changes from libc:
20496
20497         2006-06-02  Jakub Jelinek  <jakub@redhat.com>
20498
20499         * lib/posix/regex_internal.c (re_string_skip_chars): If no character
20500         has been converted at all, set *last_wc to WEOF.  If mbrtowc failed,
20501         set wc to the byte which couldn't be converted.
20502         (re_string_reconstruct): Don't clear valid_raw_len before calling
20503         re_string_skip_chars.  If wc is WEOF after re_string_skip_chars, set
20504         tip_context using re_string_context_at.
20505
20506         2006-05-02  Ulrich Drepper  <drepper@redhat.com>
20507
20508         * lib/posix/regex.h: g++ still cannot handled [restrict].
20509
20510         2006-04-21  Ulrich Drepper  <drepper@redhat.com>
20511
20512         * lib/posix/regex.h: Remove special handling for VMS.
20513
20514 2006-08-10  Jim Meyering  <jim@meyering.net>
20515
20516         * modules/same-inode: New module.
20517         * modules/dev-ino: New module.
20518         * modules/cycle-check: Depend on these modules, rather than simply
20519         including their .h files.
20520         (Makefile.am): Don't list cycle-check.[ch] here, now that they're
20521         required via m4/cycle-check.m4.
20522         * modules/same: Depend on new same-inode module, rather than
20523         including same-inode.h.
20524         * modules/chdir-safer: New file.
20525
20526         * modules/chown (Depends-on): Add stat-macros.
20527
20528 2006-08-10  Jim Meyering  <jim@meyering.net>
20529
20530         * m4/cycle-check.m4: New file.
20531         Require gl_STRUCT_DEV_INO and gl_SAME_INODE.
20532         * m4/dev-ino.m4, m4/same-inode.m4: New files.
20533
20534 2006-08-10  Eric Blake  <ebb9@byu.net>
20535
20536         * modules/verror (Depends-on): Remove bogus gl_VERROR that snuck
20537         in from original proposal.
20538
20539 2006-08-10  Eric Blake  <ebb9@byu.net>
20540         and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
20541
20542         * gnulib-tool (func_import): Detect unexpanded macros in gnulib
20543         namespace.
20544
20545 2006-08-10  Bruno Haible  <bruno@clisp.org>
20546
20547         * gnulib-tool (func_create_testdir): Detect unexpanded macros here
20548         as well.
20549
20550 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
20551
20552         Sync from coreutils.
20553
20554         2006-07-19  Mike Frysinger  <vapier@gentoo.org>
20555
20556         * lib/mountlist.c [ME_REMOTE]: Filter out cifs.
20557         Reported by Toralf Förster in <http://bugs.gentoo.org/141012>.
20558
20559 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
20560
20561         * modules/restrict: Remove; no longer needed now that we assume
20562         Autoconf 2.59 or later.
20563         * MODULES.html.sh: Remove 'restrict'.
20564         * modules/argp (Depends-on): Remove 'restrict'.
20565         * modules/base64 (Depends-on): Likewise.
20566         * modules/gc (Depends-on): Likewise.
20567         * modules/getaddrinfo (Depends-on): Likewise.
20568         * modules/glob (Depends-on): Likewise.
20569         * modules/inet_ntop (Depends-on): Likewise.
20570         * modules/inet_pton (Depends-on): Likewise.
20571         * modules/memxor (Depends-on): Likewise.
20572         * modules/regex (Depends-on): Likewise.
20573         * modules/strtok_r (Depends-on): Likewise.
20574         * modules/time_r (Depends-on): Likewise.
20575
20576 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
20577
20578         * m4/argp.m4 (gl_ARGP): Require AC_C_RESTRICT.
20579         * m4/gc.m4 (gl_PREREQ_GC): Likewise.
20580         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
20581         * m4/inet_ntop.m4 (gl_PREREQ_INET_NTOP): Likewise.
20582         * m4/inet_pton.m4 (gl_PREREQ_INET_PTON): Likewise.
20583         * m4/memxor.m4 (gl_MEMXOR): Likewise.
20584         * m4/restrict.m4: Remove; no longer needed.  All remaining uses of
20585         gl_C_RESTRICT replaced by AC_C_RESTRICT.
20586
20587         Merge from coreutils.
20588         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_C_RESTRICT, not
20589         gl_C_RESTRICT, now that we assume Autoconf 2.59 or later.
20590         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
20591         * m4/time_r.m4 (gl_TIME_R): Likewise.
20592
20593 2006-08-09  Karl Berry  <karl@gnu.org>
20594
20595         * config/srclist.txt: no more gettext-tools, per Bruno.
20596
20597 2006-08-08  Eric Blake  <ebb9@byu.net>
20598
20599         * modules/verror: New module.
20600         * MODULES.html.sh: Document it.
20601
20602 2006-08-08  Eric Blake  <ebb9@byu.net>
20603
20604         * lib/verror.h, lib/verror.c: New files.
20605
20606 2006-08-08  Eric Blake  <ebb9@byu.net>
20607
20608         * lib/verror.c (verror_at_line): Work around glibc bug 2997, so that
20609         verror_at_line output complies with GNU Coding Standards even when
20610         file is NULL.
20611
20612 2006-08-07  Bruno Haible  <bruno@clisp.org>
20613
20614         * lib/allocsa.h (sa_alignof) [_AIX]: Also consider 'long long' in newer
20615         versions of AIX.
20616         Reported by Ralf Wildenhues.
20617
20618 2006-08-07  Bruno Haible  <bruno@clisp.org>
20619
20620         * gnulib-tool (func_create_testdir): Wrap the set of autoconf snippets
20621         in an AC_DEFUN. Needed so that the autoconf snippets can use
20622         AC_REQUIRE.
20623
20624 2006-08-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20625
20626         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
20627         Initialize pkgdata_DATA.
20628         * modules/javaversion (Makefile.am): Add to pkgdata_DATA, rather than
20629         overriding it.
20630
20631 2006-08-06  Eric Blake  <ebb9@byu.net>
20632
20633         * lib/error.h: Fold in some upstream changes from glibc.
20634         * lib/error.c: Likewise.
20635
20636 2006-08-04  Bruno Haible  <bruno@clisp.org>
20637
20638         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
20639         Make the mostlyclean-local rule depend on mostlyclean-generic.
20640         Reported by Jim Meyering. Solution suggested by Ralf Wildenhues.
20641
20642 2006-07-31  Bruno Haible  <bruno@clisp.org>
20643
20644         * m4/localcharset.m4 (gl_LOCALCHARSET): Remove tests for <stddef.h>,
20645         <stdlib.h>, <string.h>.
20646
20647 2006-07-30  Bruno Haible  <bruno@clisp.org>
20648
20649         * modules/readlink (License): Change to LGPL.
20650
20651 2006-07-30  Bruno Haible  <bruno@clisp.org>
20652
20653         * modules/javaversion (Makefile.am): Distribute javaversion.java and
20654         javaversion.class. Also install javaversion.class in $(pkgdatadir) and
20655         set PKGDATADIR to point to it.
20656
20657 2006-07-30  Bruno Haible  <bruno@clisp.org>
20658
20659         * modules/csharpexec (configure.ac): Comment out macro invocation.
20660         * modules/javaexec (configure.ac): Likewise.
20661         * modules/javacomp-script (configure.ac): Likewise.
20662
20663         * modules/csharpcomp-script (configure.ac): Use AC_REQUIRE.
20664
20665 2006-07-30  Bruno Haible  <bruno@clisp.org>
20666
20667         * modules/clean-temp (Depends-on): Add linkedhash-list, remove
20668         linked-list.
20669
20670 2006-07-30  Bruno Haible  <bruno@clisp.org>
20671
20672         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Assume <string.h> exists.
20673
20674 2006-07-30  Bruno Haible  <bruno@clisp.org>
20675
20676         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
20677         Initialize MOSTLYCLEANFILES to core and *.stackdump, so that core dumps
20678         get removed.
20679
20680 2006-07-29  Bruno Haible  <bruno@clisp.org>
20681
20682         Make it possible for gnulib-tool to work with locally modified or
20683         augmented gnulib repositories.
20684         * gnulib-tool (func_usage): Document --local-dir option.
20685         (local_gnulib_dir): New variable.
20686         Handle --local-dir option.
20687         (func_lookup_file): New function.
20688         (func_all_modules, func_verify_module): Look also in $local_gnulib_dir.
20689         (func_get_description, func_get_filelist, func_get_description,
20690         func_get_filelist, func_get_dependencies, func_get_autoconf_snippet,
20691         func_get_automake_snippet, func_get_include_directive,
20692         func_get_license, func_get_maintainer): Use func_lookup_file.
20693         (func_import, func_create_testdir): Use func_lookup_file.
20694
20695 2006-07-29  Bruno Haible  <bruno@clisp.org>
20696
20697         * modules/setenv (Depends-on): Add unistd.
20698
20699 2006-07-29  Bruno Haible  <bruno@clisp.org>
20700
20701         * lib/setenv.c: Undo unintended modification done on 2006-02-27.
20702
20703 2006-07-29  Bruno Haible  <bruno@clisp.org>
20704
20705         * lib/localcharset.c: Assume <stddef.h>, <stdlib.h>, <string.h> exist.
20706
20707 2006-07-29  Bruno Haible  <bruno@clisp.org>
20708
20709         * gnulib-tool (import, update): If there is no Makefile.am, look at
20710         aclocal.m4, instead of bailing out.
20711
20712 2006-07-29  Bruno Haible  <bruno@clisp.org>
20713
20714         * gnulib-tool (func_usage): Revert most of the 2006-07-15 change.
20715         Categorize the options by when they are useful.
20716
20717 2006-07-29  Bruno Haible  <bruno@clisp.org>
20718
20719         * gnulib-tool (func_usage): Document option --no-libtool.
20720         Handle option --no-libtool.
20721         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Update
20722         for changed semantics of $libtool variable.
20723         (func_import): Likewise. If libtool is not used, show this through
20724         an option --no-libtool.
20725         (func_create_testdir): Update.
20726
20727 2006-07-29  Bruno Haible  <bruno@clisp.org>
20728
20729         * gnulib-tool (func_import): Extend error message about missing
20730         --doc-base.
20731
20732 2006-07-29  Bruno Haible  <bruno@clisp.org>
20733
20734         * gnulib-tool (func_import): Don't create the $docbase directory if
20735         there is no file to store there.
20736
20737 2006-07-29  Bruno Haible  <bruno@clisp.org>
20738
20739         * gnulib-tool (autoconf_minversion): If a --dir option is given and
20740         relevant, look for configure.ac there, not in the current directory.
20741         Also use a simple search for AC_PREREQ, not "autoconf --trace".
20742
20743 2006-07-29  Bruno Haible  <bruno@clisp.org>
20744
20745         * gnulib-tool (SORT): New variable.
20746         (func_usage): Undocument --assume-autoconf option.
20747         Remove --assume-autoconf option handling.
20748         (autoconf_minversion): Determine from the contents of configure.ac.
20749         (func_import): Remove autoconf_minversion handling.
20750         Suggested by Eric Blake.
20751
20752 2006-07-29  Bruno Haible  <bruno@clisp.org>
20753
20754         * doc/gnulib-tool.texi (gl_LIBTOOL): Mention --no-libtool option.
20755
20756 2006-07-29  Bruno Haible  <bruno@clisp.org>
20757
20758         * config/srclist.txt (*setenv.[ch]): Remove rules.
20759
20760 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
20761
20762         * m4/inet_pton.m4, inet_ntop.m4: Check for netinet/in.h too.
20763
20764 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
20765
20766         * lib/inet_ntop.h, inet_pton.h: Need to include netinet/in.h before
20767         arpa/inet.h.
20768
20769 2006-07-28  Simon Josefsson  <jas@extundo.com>
20770
20771         * modules/inet_ntop (Depends-on): Depend on arpa_inet.
20772         * modules/inet_pton (Depends-on): Likewise.
20773
20774 2006-07-28  Simon Josefsson  <jas@extundo.com>
20775
20776         * m4/netinet_in_h.m4: New file.
20777
20778 2006-07-28  Simon Josefsson  <jas@extundo.com>
20779
20780         * lib/inet_ntop.h, inet_pton.h: No need to guard netinet/in.h
20781         #include's.
20782
20783 2006-07-28  Simon Josefsson  <jas@extundo.com>
20784
20785         * lib/inet_ntop.h, inet_pton.h: No need to guard arpa/inet.h
20786         #include's.
20787
20788 2006-07-28  Paul Eggert  <eggert@cs.ucla.edu>
20789
20790         * lib/modechange.c (mode_compile): Numeric modes now affect setuid and
20791         setgid on directories only if they set these bits.
20792         * lib/modechange.h: Remove obsolete comment about masks.
20793
20794 2006-07-28  Eric Blake  <ebb9@byu.net>
20795
20796         * lib/regex_internal.h (struct re_dfa_t) [!_LIBC]: Avoid invalid C89
20797         macro expansion.
20798
20799 2006-07-28  Bruno Haible  <bruno@clisp.org>
20800
20801         * lib/inet_ntop.h, inet_pton.h: Use #if HAVE* instead of #ifdef HAVE*.
20802
20803 2006-07-28  Bruno Haible  <bruno@clisp.org>
20804
20805         * m4/mbchar.m4 (gl_MBCHAR): Also test for iswcntrl.
20806
20807 2006-07-28  Bruno Haible  <bruno@clisp.org>
20808
20809         * lib/mbchar.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
20810         iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit):
20811         Define fallbacks.
20812         Avoids link error on FreeBSD 4.x.
20813         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
20814
20815         * lib/wcwidth.h (iswprint): Assume an ASCII compatible wide character
20816         encoding.
20817         * lib/mbswidth.c (iswcntrl): Likewise.
20818
20819 2006-07-27  Bruno Haible  <bruno@clisp.org>
20820
20821         * m4/stdint.m4 (gl_STDINT_H): Define __STDC_CONSTANT_MACROS during the
20822         test.
20823
20824 2006-07-27  Bruno Haible  <bruno@clisp.org>
20825
20826         * lib/stdint_.h (INT*_C, UINT*_C) [C++]: Define these if
20827         __STDC_CONSTANT_MACROS is defined, not if __STDC_LIMIT_MACROS is
20828         defined.
20829
20830 2006-07-26  Eric Blake  <ebb9@byu.net>
20831
20832         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Check for missing pipe.
20833
20834 2006-07-26  Eric Blake  <ebb9@byu.net>
20835
20836         * lib/mkstemp-safer.c [! HAVE_MKSTEMP]: Add prototype for platforms
20837         like mingw that lack mkstemp.
20838         * lib/pipe-safer.c (pipe_safer) [!HAVE_FUNC_PIPE]: Provide fallback to
20839         avoid compilation warning on mingw.
20840
20841 2006-07-26  Bruno Haible  <bruno@clisp.org>
20842
20843         * m4/stdint.m4 (gl_STDINT_H): Also verify the existence of the macros
20844         INT*_MIN, INT_LEAST*_MAX, INT_LEAST*_MIN, UINT_LEAST*_MAX,
20845         INT_FAST*_MIN, INTPTR_MIN.
20846
20847 2006-07-25  Bruno Haible  <bruno@clisp.org>
20848
20849         * modules/version-etc (Depends-on): Add stdarg.
20850
20851 2006-07-25  Bruno Haible  <bruno@clisp.org>
20852
20853         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Avoid 'eval' in front of
20854         complex commands.
20855
20856 2006-07-25  Bruno Haible  <bruno@clisp.org>
20857
20858         * lib/version-etc.c (version_etc_va): Use va_copy, assumed to be
20859         defined in <stdarg.h> or config.h.
20860
20861 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
20862
20863         * m4/stdio-safer.m4 (gl_FOPEN_SAFER, gl_TMPFILE_SAFER): New macros.
20864         (gl_STDIO_SAFER): Remove.
20865
20866 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
20867
20868         * MODULES.html.sh (File stream based Input/Output):
20869         Add fopen-safer, tmpfile-safer; remove stdio-safer.
20870         * modules/getusershell (Depends-on): Change stdio-safer to fopen-safer.
20871         * modules/fopen-safer, modules/tmpfile-safer: New files.
20872         * modules/stdio-safer: Remove.
20873
20874 2006-07-24  Bruno Haible  <bruno@clisp.org>
20875
20876         * modules/tmpdir: New file.
20877         * MODULES.html.sh (File system functions): Add it.
20878
20879 2006-07-24  Bruno Haible  <bruno@clisp.org>
20880
20881         * modules/javacomp (Depends-on): Add unistd, javaversion, binary-io,
20882         getline, pathname, fwriteerror, clean-temp, xvasprintf, strstr.
20883
20884 2006-07-24  Bruno Haible  <bruno@clisp.org>
20885
20886         * modules/clean-temp: New file.
20887
20888 2006-07-24  Bruno Haible  <bruno@clisp.org>
20889
20890         * m4/tmpdir.m4: New file, from GNU gettext.
20891
20892 2006-07-24  Bruno Haible  <bruno@clisp.org>
20893
20894         * lib/tmpdir.h: New file, from GNU gettext.
20895         * lib/tmpdir.c: New file, from GNU gettext.
20896
20897 2006-07-24  Bruno Haible  <bruno@clisp.org>
20898
20899         * lib/clean-temp.h: New file, from GNU gettext.
20900         * lib/clean-temp.c: New file, from GNU gettext.
20901
20902 2006-07-23  Eric Blake  <ebb9@byu.net>
20903
20904         * modules/stdio-safer (Files): Add tmpfile-safer.c.
20905         (Depends-on): Add binary-io.
20906
20907 2006-07-23  Eric Blake  <ebb9@byu.net>
20908
20909         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add tmpfile-safer.c.
20910
20911 2006-07-23  Eric Blake  <ebb9@byu.net>
20912
20913         * lib/tmpfile-safer.c: New file.
20914         * lib/stdio-safer.h (fopen_safer): Add prototype.
20915         * lib/stdio--.h (tmpfile): Make safer.
20916
20917 2006-07-23  Bruno Haible  <bruno@clisp.org>
20918
20919         * lib/gl_anylinked_list2.h (ASYNCSAFE): New macro.
20920         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before,
20921         gl_linked_add_after, gl_linked_add_at, gl_linked_remove_node,
20922         gl_linked_remove_at): Use it.
20923
20924 2006-07-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
20925         and Simon Josefsson <jas@extundo.com>
20926
20927         * lib/getaddrinfo.h (AI_PASSIVE): Make sure it is defined.
20928
20929         * lib/getaddrinfo.c (getaddrinfo): Support AI_PASSIVE.
20930
20931 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
20932
20933         * modules/close-stream: New file.
20934         * modules/closeout (Description): Make it clear that it exits
20935         with a diagnostic on error.
20936         (Depends-on): Add close-stream.  Remove fpending, stdbool.
20937         * MODULES.html.sh (File stream based Input/Output): Add close-stream.
20938
20939 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
20940
20941         * m4/close-stream.m4: New file.
20942
20943 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
20944
20945         * lib/close-stream.c, lib/close-stream.h: New files.
20946
20947 2006-07-22  Bruno Haible  <bruno@clisp.org>
20948
20949         Merge from GNU gettext 0.15.
20950
20951         2006-05-01  Bruno Haible  <bruno@clisp.org>
20952
20953                 * build-aux/javacomp.sh.in: Update for changed javacomp.m4.
20954
20955         2006-07-22  Bruno Haible  <bruno@clisp.org>
20956
20957                 * modules/javaversion: New file.
20958                 * MODULES.html.sh (Java): Add javaversion.
20959
20960         2006-03-12  Bruno Haible  <bruno@clisp.org>
20961
20962                 * build-aux/javaexec.sh.in: Update for changed javaexec.m4.
20963
20964         2005-12-04  Bruno Haible  <bruno@clisp.org>
20965
20966                 * build-aux/csharpexec.sh.in: Add support for 'clix' launcher
20967                 (untested).
20968
20969         2006-06-21  Bruno Haible  <bruno@clisp.org>
20970
20971                 Avoid warnings from recent versions of mcs.
20972                 * build-aux/csharpcomp.sh.in (options_mcs): Don't use options
20973                 -o, -L, -r any more. Use options documented since mcs-1.0
20974                 instead. Similarly for -g.
20975
20976         2005-12-04  Bruno Haible  <bruno@clisp.org>
20977
20978                 * build-aux/csharpcomp.sh.in: Suffix for resources is
20979                 .resources, not .resource.
20980
20981         2005-07-09  Bruno Haible  <bruno@clisp.org>
20982
20983                 * build-aux/csharpcomp.sh.in (options_csc): For -l option,
20984                 add a .dll suffix.
20985                 Reported by Mark Junker <mjscod@gmx.de>.
20986
20987         2006-07-22  Bruno Haible  <bruno@clisp.org>
20988
20989                 * modules/gettext: Upgrade to gettext-0.15.
20990                 (Files): Remove m4/isc-posix.m4. Add m4/lock.m4,
20991                 m4/visibility.m4.
20992                 Replace m4/inttypes.m4 with m4/inttypes-h.m4.
20993
20994 2006-07-22  Bruno Haible  <bruno@clisp.org>
20995
20996         Merge from GNU gettext 0.15.
20997
20998         2006-03-25  Bruno Haible  <bruno@clisp.org>
20999
21000                 * lib-link.m4 (AC_LIB_LINKFLAGS_FROM_LIBS): New macro.
21001
21002         2006-07-21  Bruno Haible  <bruno@clisp.org>
21003
21004                 * javacomp.m4 (gt_JAVACOMP): Convert target_version "null" to
21005                 "1.1".
21006
21007         2006-05-09  Bruno Haible  <bruno@clisp.org>
21008
21009                 * javacomp.m4 (gt_JAVACOMP): On Cygwin, set
21010                 CLASSPATH_SEPARATOR to a semicolon. Use CLASSPATH_SEPARATOR
21011                 for the conftestver execution.
21012
21013         2006-05-01  Bruno Haible  <bruno@clisp.org>
21014
21015                 * javacomp.m4 (gt_JAVACOMP): Accept a source-version and an
21016                 optional target-version argument. Verify that the compiler
21017                 groks source of the specified source-version, or add -source
21018                 option as necessary. Verify that the compiler produces
21019                 bytecode in the specified target-version, or add -target and
21020                 -source options as necessary. Make the result of the test
21021                 available as variable CONF_JAVAC. Also log error output in
21022                 config.log.
21023
21024         2006-03-11  Bruno Haible  <bruno@clisp.org>
21025
21026                 * javacomp.m4 (gt_JAVACOMP): Treat gcj-4.x like gcj-3.x.
21027
21028         2006-05-09  Bruno Haible  <bruno@clisp.org>
21029
21030                 * javaexec.m4 (gt_JAVAEXEC): On Cygwin, set
21031                 CLASSPATH_SEPARATOR to a semicolon.
21032
21033         2006-03-12  Bruno Haible  <bruno@clisp.org>
21034
21035                 * javaexec.m4 (gt_JAVAEXEC): Make the result of the test
21036                 available as variable CONF_JAVA, for subsequent autoconf
21037                 tests. Also log error output in config.log.
21038
21039         2006-07-19  Bruno Haible  <bruno@clisp.org>
21040
21041                 * getline.m4 (AM_FUNC_GETLINE): When cross-compiling, assume
21042                 that getline works on glibc2 systems. Needed to avoid trouble
21043                 in relocatable.c.
21044                 Reported by Nils Magnus Larsgard <nmlarsgaard@atmel.no>.
21045
21046         2005-12-04  Bruno Haible  <bruno@clisp.org>
21047
21048                 * csharpexec.m4 (gt_CSHARPEXEC): Add support for 'clix'
21049                 launcher (untested).
21050
21051         2005-12-04  Bruno Haible  <bruno@clisp.org>
21052
21053                 * csharpcomp.m4 (gt_CSHARPCOMP): Also set CSHARPCOMPFLAGS.
21054
21055         2006-07-22  Bruno Haible  <bruno@clisp.org>
21056
21057                 * gettext.m4: Update from GNU gettext-0.15.
21058                 * nls.m4: Likewise.
21059                 * po.m4: Likewise.
21060                 * inttypes-pri.m4: Likewise.
21061                 * inttypes-h.m4: Renamed from inttypes.m4.
21062                 (gl_HEADER_INTTYPES_H): Renamed from gt_HEADER_INTTYPES_H.
21063
21064 2006-07-22  Bruno Haible  <bruno@clisp.org>
21065
21066         Merge from GNU gettext 0.15.
21067
21068         2005-07-05  Bruno Haible  <bruno@clisp.org>
21069
21070                 * printf-args.c (printf_fetchargs): Work around broken
21071                 definition of wint_t on mingw.
21072
21073         2005-02-12  Bruno Haible  <bruno@clisp.org>
21074
21075                 * xallocsa.h: Add extern "C" for C++.
21076
21077         2006-05-17  Bruno Haible  <bruno@clisp.org>
21078
21079                 Cygwin portability.
21080                 * progreloc.c (WIN32_NATIVE): Renamed from WIN32.
21081
21082         2006-04-30  Bruno Haible  <bruno@clisp.org>
21083
21084                 * progreloc.c: Include <mach-o/dyld.h> if available.
21085                 (find_executable): Use _NSGetExecutablePath when possible.
21086
21087         2006-05-06  Charles Wilson  <cygwin@cwilson.fastmail.fm>
21088
21089                 * progreloc.c (maybe_executable) [CYGWIN]: Use the access()
21090                 function.
21091
21092         2005-12-29  Bruno Haible  <bruno@clisp.org>
21093
21094                 * progreloc.c (set_program_name_and_installdir): Fix
21095                 compilation error.
21096
21097         2005-12-04  Bruno Haible  <bruno@clisp.org>
21098
21099                 Cygwin portability.
21100                 * progreloc.c: Include <windows.h> also on Cygwin.
21101                 (find_executable): Add support for Cygwin.
21102                 (set_program_name_and_installdir): Handle also platforms with
21103                 nonempty EXEEXT.
21104
21105         2006-07-11  Bruno Haible  <bruno@clisp.org>
21106
21107                 * javacomp.c: Fix a comment.
21108                 Reported by Jim Meyering.
21109
21110         2006-04-30  Bruno Haible  <bruno@clisp.org>
21111
21112                 * javacomp.h (compile_java_class): Add source_version,
21113                 target_version arguments.
21114                 * javacomp.c: Rewritten to choose only a compiler that
21115                 respects the specified source_version and target_version.
21116
21117         2006-06-27  Bruno Haible  <bruno@clisp.org>
21118
21119                 Assume correct S_ISDIR macro.
21120                 * mkdtemp.c: Remove test of STAT_MACROS_BROKEN.
21121
21122         2006-07-22  Bruno Haible  <bruno@clisp.org>
21123
21124                 * javaversion.h: New file, from GNU gettext.
21125                 * javaversion.c: New file, from GNU gettext.
21126                 * javaversion.java: New file, from GNU gettext.
21127                 * javaversion.class: New file, from GNU gettext.
21128
21129         2006-05-17  Bruno Haible  <bruno@clisp.org>
21130
21131                 Cygwin portability.
21132                 * javaexec.c (execute_java_class): Test for jview program
21133                 also on Cygwin.
21134
21135         2006-04-09  Bruno Haible  <bruno@clisp.org>
21136
21137                 * fatal-signal.c: Don't include string.h.
21138                 (at_fatal_signal): Use a copying loop instead of memcpy.
21139
21140         2005-12-04  Bruno Haible  <bruno@clisp.org>
21141
21142                 * csharpexec.c: Add support for 'clix' launcher (untested).
21143                 (execute_csharp_using_sscli): New function.
21144                 (execute_csharp_program): Call it.
21145
21146         2006-06-21  Bruno Haible  <bruno@clisp.org>
21147
21148                 Avoid warnings from recent versions of mcs.
21149                 * csharpcomp.c (compile_csharp_using_mono): Don't use options
21150                 -o, -L, -r any more. Use options documented since mcs-1.0
21151                 instead. Similarly for -g.
21152
21153         2005-07-09  Bruno Haible  <bruno@clisp.org>
21154
21155                 * csharpcomp.c (compile_csharp_using_sscli): For -l option,
21156                 add a .dll suffix.
21157                 Reported by Mark Junker <mjscod@gmx.de>.
21158
21159         2006-06-17  Bruno Haible  <bruno@clisp.org>
21160
21161                 * config.charset: Update for NetBSD 3.0.
21162
21163         2006-05-17  Bruno Haible  <bruno@clisp.org>
21164
21165                 Cygwin portability.
21166                 * localcharset.c (WIN32_NATIVE): Renamed from WIN32.
21167
21168         2006-05-16  Bruno Haible  <bruno@clisp.org>
21169
21170                 * localcharset.c [CYGWIN]: Include <windows.h>.
21171                 (get_charset_aliases): For Cygwin, return the same CPxxx
21172                 aliases list as under WIN32.
21173                 (locale_charset) [CYGWIN]: Try to retrieve the encoding from
21174                 the environment variables. Fall back to GetACP().
21175
21176         2006-04-05  Bruno Haible  <bruno@clisp.org>
21177
21178                 * config.charset: Update Juan Manuel Guerrero's address.
21179
21180         2005-02-12  Bruno Haible  <bruno@clisp.org>
21181
21182                 * allocsa.h: Add extern "C" for C++.
21183
21184         2005-02-10  Bruno Haible  <bruno@clisp.org>
21185
21186                 * allocsa.h (sa_alignof): Define differently with AIX xlc, to
21187                 avoid a bug of this compiler on AIX 3.2.5 dealing with enums.
21188
21189         2006-07-22  Bruno Haible  <bruno@clisp.org>
21190
21191                 * gettext.h: Update to GNU gettext-0.15.
21192
21193 2006-07-22  Bruno Haible  <bruno@clisp.org>
21194
21195         * config/srclist.txt: Resync printf-args.c, vasnprintf.c,
21196         localcharset.c, mkdtemp.c, config.rpath, lib-ld.m4, lib-link.m4,
21197         lib-prefix.m4, longdouble.m4, ssize_t.m4.
21198
21199 2006-07-21  Eric Blake  <ebb9@byu.net>
21200
21201         * modules/stdlib-safer: New file.
21202         * MODULES.html.sh (File stream based Input/Output): Add
21203         stdlib-safer.
21204
21205 2006-07-21  Eric Blake  <ebb9@byu.net>
21206
21207         * lib/stdlib-safer.h: New file from coreutils, required by
21208         stdlib--.h.
21209
21210 2006-07-20  Paul Eggert  <eggert@cs.ucla.edu>
21211
21212         * gnulib-tool (func_usage): Document --assume-autoconf='latest-stable'.
21213
21214 2006-07-20  Bruno Haible  <bruno@clisp.org>
21215
21216         * gnulib-tool: Recognize new option --assume-autoconf.
21217         (autoconf_minversion): New variable.
21218         (func_get_filelist): Use it to decide whether to add onceonly_2_57.m4.
21219
21220 2006-07-20  Bruno Haible  <bruno@clisp.org>
21221
21222         * MODULES.html.sh (func_all_modules): Add a missing func_begin_table.
21223
21224 2006-07-19  Derek R. Price  <derek@ximbiot.com>
21225
21226         * lib/getaddrinfo.h: Don't define unimplemented AI_* flags.
21227         Reindent and repaginate.
21228
21229 2006-07-19  Derek Price  <derek@ximbiot.com>
21230
21231         * doc/gnulib.texi (Libtool and Windows):  Eliminate passive voice.
21232         Correct grammar.
21233
21234 2006-07-17  Bruno Haible  <bruno@clisp.org>
21235
21236         * modules/list: New file.
21237         * modules/array-list: New file.
21238         * modules/carray-list, modules/carray-list-tests: New files.
21239         * modules/linked-list, modules/linked-list-tests: New files.
21240         * modules/avltree-list, modules/avltree-list-tests: New files.
21241         * modules/rbtree-list, modules/rbtree-list-tests: New files.
21242         * modules/linkedhash-list, modules/linkedhash-list-tests: New files.
21243         * modules/avltreehash-list, modules/avltreehash-list-tests: New files.
21244         * modules/rbtreehash-list, modules/rbtreehash-list-tests: New files.
21245         * modules/oset: New file.
21246         * modules/array-oset: New file.
21247         * modules/avltree-oset, modules/avltree-oset-tests: New files.
21248         * modules/rbtree-oset, modules/rbtree-oset-tests: New files.
21249         * tests/test-carray_list.c: New file.
21250         * tests/test-linked_list.c: New file.
21251         * tests/test-avltree_list.c: New file.
21252         * tests/test-rbtree_list.c: New file.
21253         * tests/test-linkedhash_list.c: New file.
21254         * tests/test-avltreehash_list.c: New file.
21255         * tests/test-rbtreehash_list.c: New file.
21256         * tests/test-avltree_oset.c: New file.
21257         * tests/test-rbtree_oset.c: New file.
21258         * MODULES.html.sh (Container data structures): New section.
21259
21260 2006-07-17  Bruno Haible  <bruno@clisp.org>
21261
21262         * m4/gl_list.m4: New file.
21263
21264 2006-07-17  Bruno Haible  <bruno@clisp.org>
21265
21266         * lib/gl_list.h: New file.
21267         * lib/gl_list.c: New file.
21268         * lib/gl_array_list.h: New file.
21269         * lib/gl_array_list.c: New file.
21270         * lib/gl_carray_list.h: New file.
21271         * lib/gl_carray_list.c: New file.
21272         * lib/gl_linked_list.h: New file.
21273         * lib/gl_linked_list.c: New file.
21274         * lib/gl_anylinked_list1.h: New file.
21275         * lib/gl_anylinked_list2.h: New file.
21276         * lib/gl_avltree_list.h: New file.
21277         * lib/gl_avltree_list.c: New file.
21278         * lib/gl_anyavltree_list1.h: New file.
21279         * lib/gl_anyavltree_list2.h: New file.
21280         * lib/gl_rbtree_list.h: New file.
21281         * lib/gl_rbtree_list.c: New file.
21282         * lib/gl_anyrbtree_list1.h: New file.
21283         * lib/gl_anyrbtree_list2.h: New file.
21284         * lib/gl_anytree_list1.h: New file.
21285         * lib/gl_anytree_list2.h: New file.
21286         * lib/gl_linkedhash_list.h: New file.
21287         * lib/gl_linkedhash_list.c: New file.
21288         * lib/gl_anyhash_list1.h: New file.
21289         * lib/gl_anyhash_list2.h: New file.
21290         * lib/gl_avltreehash_list.h: New file.
21291         * lib/gl_avltreehash_list.c: New file.
21292         * lib/gl_rbtreehash_list.h: New file.
21293         * lib/gl_rbtreehash_list.c: New file.
21294         * lib/gl_anytreehash_list1.h: New file.
21295         * lib/gl_anytreehash_list2.h: New file.
21296
21297         * lib/gl_oset.h: New file.
21298         * lib/gl_oset.c: New file.
21299         * lib/gl_array_oset.h: New file.
21300         * lib/gl_array_oset.c: New file.
21301         * lib/gl_avltree_oset.h: New file.
21302         * lib/gl_avltree_oset.c: New file.
21303         * lib/gl_rbtree_oset.h: New file.
21304         * lib/gl_rbtree_oset.c: New file.
21305         * lib/gl_anytree_oset.h: New file.
21306
21307 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
21308
21309         * m4/mkancesdirs.m4: New file.
21310         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Mention dirchownmod.c,
21311         dirchownmod.h.  Don't require AC_FUNC_ALLOCA, gl_AFS, gl_CHDIR_SAFER;
21312         no longer needed.  Require gl_FUNC_LCHOWN, since dirchownmod.c needs
21313         it.
21314
21315 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
21316
21317         * lib/dirchownmod.c, lib/dirchownmod.h, lib/mkancesdirs.c:
21318         * lib/mkancesdirs.h: New files.
21319         * lib/mkdir-p.c: Don't include alloca.h, stdio.h, sys/types.h,
21320         unistd.h, string.h, chdir-safer.h, dirname.h, lchmod.h, lchown.h,
21321         save-cwd.h.  Instead, include dirchownmod.h and mkancesdirs.h.
21322         (make_dir_parents): New args MAKE_ANCESTOR, OPTIONS, ANNOUNCE,
21323         MODE_BITS.  Remove options VERBOSE_FMT_STRING, CWD_ERRNO.  All
21324         callers changed.  Revamp internals significantly, by not
21325         attempting to create directories that are temporarily more
21326         permissive than the final results.  Do not attempt to use
21327         save_cwd/restore_cwd; it isn't worth it for mkdir and install.
21328         This removes some race conditions, fixes some bugs, and simplifies
21329         things.  Use new dirchownmod function to do owner and mode changes.
21330         * lib/mkdir-p.h: Likewise.
21331         * lib/modechange.c (octal_to_mode): New function.
21332         (struct mode_change): New member mentioned.
21333         (make_node_op_equals): New arg mentioned.  All callers changed.
21334         (mode_compile): Keep track of which mode bits the user has explicitly
21335         mentioned.
21336         (mode_adjust): New arg DIR, so that we implement the X op correctly.
21337         New arg PMODE_BITS, to keep track of which mode bits the user
21338         mentioned; it treats S_ISUID and S_ISGID speciall.
21339         All callers changed.
21340         * lib/modechange.h: Likewise.
21341
21342 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
21343
21344         * MODULES.html.sh: Add mkancestors.
21345         * modules/mkancesdirs: New module.
21346         * modules/mkdir-p (Files): Remove lib/chdir-safer.c, lib/chdir-safer.h,
21347         lib/same-inode.h, m4/afs.m4, m4/chdir-safer.m4.
21348         The chdir-safer and afs files are now orphans; I'll remove them
21349         unless someone speaks up.
21350         Add lib/dirchownmod.c, lib/dirchownmod.h.
21351         (Depends-on): Remove alloca, chown, save-cwd, dirname.
21352         Add lchown, mkancesdirs.
21353         (Maintainer): Add self.
21354
21355 2006-07-15  Karl Berry  <karl@gnu.org>
21356
21357         * gnulib-tool: help message wording/arrangement.
21358
21359 2006-07-14  Simon Josefsson  <jas@extundo.com>
21360
21361         * doc/gnulib.texi (Libtool and Windows): New section.
21362
21363 2006-07-12  Simon Josefsson  <jas@extundo.com>
21364
21365         * modules/gendocs (License): Fix license, approved by Karl.
21366
21367 2006-07-12  Eric Blake  <ebb9@byu.net>
21368
21369         * MODULES.html.sh: Add gendocs.
21370
21371 2006-07-11  Eric Blake  <ebb9@byu.net>
21372
21373         * modules/fdl: New module, to install doc/fdl.texi.
21374         * MODULES.html.sh: Add new section for documentation modules.
21375         * gnulib-tool: Avoid space-tab.
21376         (--doc-base): New option, to manage files from doc.
21377
21378 2006-07-11  Eric Blake  <ebb9@byu.net>
21379
21380         * m4/absolute-header.m4: Fix comments to match recent change.
21381
21382 2006-07-11  Eric Blake  <ebb9@byu.net>
21383
21384         * gnulib-tool: List --doc-base before --tests-base.
21385
21386 2006-07-11  Derek R. Price  <derek@ximbiot.com>
21387
21388         * lib/glob.c: s/NAMLEN/_D_EXACT_NAMLEN/.
21389
21390 2006-07-11  Bruno Haible  <bruno@clisp.org>
21391
21392         * README: Mention where to put documentation.
21393
21394 2006-07-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21395
21396         * doc/functions.texi, gnulib-tool.texi, gnulib.texi: Fix some typos.
21397
21398 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
21399
21400         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Like today's change
21401         to stdint.m4.
21402
21403 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
21404
21405         * m4/stdint.m4 (gl_STDINT_H): Like yesterday's change to
21406         absolute-header.m4.  Also, set ABSOLUTE_STDINT_H to a string
21407         "no/such/file/stdint.h" when there is no such file, so that
21408         the resulting C code can be parsed by dodgy compilers.
21409         Problems reported by Bob Proulx.
21410
21411 2006-07-10  Derek R. Price  <derek@ximbiot.com>
21412
21413         * lib/backupfile.c, dirfd.h, fts.c, getcwd.c, glob.c, glob_.h:
21414         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
21415         macros into the GNU _D_EXACT_NAMLEN.
21416         * lib/savedir.c:  Likewise.
21417         (savedirstream): Use _D_EXACT_NAMLEN in preference to strlen.
21418
21419 2006-07-10  Derek R. Price  <derek@ximbiot.com>
21420         and Paul Eggert  <eggert@cs.ucla.edu>
21421
21422         * m4/backupfile.m4, d-ino.m4, d-type.m4, dirfd.m4, fts.m4, getcwd.m4:
21423         * m4/savedir.m4:
21424         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
21425         macros into the GNU _D_EXACT_NAMLEN.
21426
21427 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
21428
21429         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Use "" rather than <>
21430         around the absolute name, to work around a problem with the HP-UX
21431         11.23 native C compiler, reported by Bob Proulx.
21432
21433 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
21434
21435         * doc/maintain.texi, make-stds.texi: Sync from
21436         <http://savannah.gnu.org/projects/gnustandards>.
21437
21438 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
21439
21440         * build-aux/depcomp, build-aux/install-sh: Sync from Automake.
21441
21442 2006-07-09  Jim Meyering  <jim@meyering.net>
21443
21444         * m4/glob.m4: Remove a doubled word in a comment.
21445
21446 2006-07-09  Jim Meyering  <jim@meyering.net>
21447
21448         * lib/argp-pv.c: Remove a doubled word in a comment.
21449         * lib/check-version.c (check_version): Likewise.
21450         * lib/javacomp.c (compile_java_class): Likewise.
21451
21452 2006-07-08  Paul Eggert  <eggert@cs.ucla.edu>
21453
21454         * gnulib-tool (func_get_filelist): Don't echo m4/onceonly_2_57.m4,
21455         for the benefit of people using Autoconf 2.60.  If you want to
21456         support older Autoconf versions you can copy m4/onceonly_2_57.m4
21457         (or m4/onceonly.m4, if pre-2.57) manually.
21458
21459 2006-07-08  Jim Meyering  <jim@meyering.net>
21460
21461         * m4/link-follow.m4: Remove one of two adjacent "whether"s in a
21462         comment.
21463         * m4/getopt.m4: Remove one of two adjacent "your"s in a comment.
21464         * m4/regex.m4 (gl_REGEX): Remove one of two adjacent "the"s in a
21465         comment.
21466
21467 2006-07-08  Jim Meyering  <jim@meyering.net>
21468
21469         * lib/getndelim2.h (getndelim2): Remove doubled "after" in comment.
21470
21471 2006-07-07  Simon Josefsson  <jas@extundo.com>
21472
21473         * tests/test-crc.c: Change expected crc value, the test vector
21474         were probably computed using the old broken crc.c?
21475
21476 2006-07-06  Simon Josefsson  <jas@extundo.com>
21477
21478         * modules/sys_socket (Files): Add m4/sockpfaf.m4 (this module is
21479         now the canonical place for the M4 file).
21480
21481         * modules/getaddrinfo (Files): Remove m4/sockpfaf.m4, we get it
21482         from the sys_socket dependency now.
21483
21484         * modules/inet_pton (Files): Ditto.
21485
21486         * modules/inet_ntop (Files): Ditto.
21487
21488 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
21489
21490         * modules/getusershell (configure.ac): Use gl_FUNC_GETUSERSHELL,
21491         not gl_PREREQ_GETUSERSHELL.
21492
21493 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21494
21495         * m4/_inttypes_h.m4 (gl_INTTYPES_H): Use AC_CHECK_DECLS_ONCE
21496         with only one argument, for Autoconf 2.60.
21497         * m4/fileblocks.m4 (gl_PREREQ_FILEBLOCKS): AC_CHECK_DECLS_ONCE may
21498         expand to nothing, so add a shell command to avoid syntax error.
21499         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
21500
21501 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21502
21503         * lib/strtod.c (strtod): cast the argument of tolower to unsigned char.
21504
21505 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
21506
21507         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't check for getenv decl;
21508         no longer needed.  Check for isblank decl.
21509         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Don't check for getenv decl.
21510         * m4/regex.m4 (gl_PREREQ_REGEX): Dheck for isblank decl instead
21511         of existence.
21512
21513 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
21514
21515         * lib/getloadavg.c: Use __VMS, not VMS.
21516         * lib/getopt.c: Likewise.
21517         * lib/getpagesize.h: Likewise.
21518         * lib/glob.c: Remove most VMS cruft; it hasn't been tested for a while
21519         and probably does not work.
21520
21521 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
21522
21523         * lib/.cppi-disable: Add wcwidth.
21524         * lib/fnmatch.c (ISBLANK): Remove.  All uses changed to isblank.
21525         (isblank) [! (defined isblank || HAVE_DECL_ISBLANK)]: New macro.
21526         (ISGRAPH): Remove.  All uses changed to isgraph.
21527         (FOLD) [!defined _LIBC]: Remove special case.
21528         * lib/getdate.y (lookup_word): Remove no-longer-needed call to islower.
21529         * lib/regex_internal.h (isblank): Depend on HAVE_DECL_ISBLANK, not
21530         HAVE_ISBLANK.
21531         * lib/strftime.c (TOLOWER, TOUPPER) [!defined _LIBC]: Remove special
21532         case.
21533
21534 2006-07-06  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
21535
21536         * lib/getaddrinfo.c: Changes to compile under MSVC6: changed
21537         '#if WIN32_NATIVE' to '#ifdef' & moved WSAAPI macro inside
21538         brackets.  Other minor changes to suppress some compiler
21539         warnings.
21540
21541 2006-07-06  Derek R. Price  <derek@ximbiot.com>
21542         and Paul Eggert  <eggert@cs.ucla.edu>
21543
21544         * m4/backupfile.m4 (gl_BACKUPFILE): Check for dirent.h, instead
21545         of invoking obsolescent AC_HEADER_DIRENT macro.
21546         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Likewise.
21547         * m4/d-type.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Likewise.
21548         * m4/dirfd.m4 (gl_FUNC_DIRFD): Likewise.
21549         * m4/fts.m4 (gl_FUNC_FTS_CORE): Likewise.
21550         * m4/getcwd.m4 (gl_PREREQ_GETCWD): Likewise.
21551         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
21552         * m4/savedir.m4 (gl_SAVEDIR): Likewise.
21553         * m4/readdir.m4: Remove; no longer needed.
21554
21555 2006-07-06  Derek R. Price  <derek@ximbiot.com>
21556         and Paul Eggert  <eggert@cs.ucla.edu>
21557
21558         * lib/backupfile.c [HAVE_DIRENT_H && ! HAVE_NDIR_H]:
21559         Don't worry about this obsolete case any more.
21560         (HAVE_DIR): Remove.  All uses removed; we now assume you can read
21561         directories.
21562         * lib/dirfd.h [HAVE_DIRENT_H && ! HAVE_NDIR_H]: Don't
21563         worry about this obsolete case any more.
21564         * lib/fts.c: Likewise.
21565         * lib/getcwd.c: Likewise.
21566         * lib/glob.h: Likewise.
21567         * lib/savedir.c: Likewise.
21568
21569 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
21570
21571         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Use AC_CHECK_DECLS_ONCE
21572         rather than AC_CHECK_DECLS for strtoimax and strtoumax.
21573         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Remove; no longer
21574         needed.
21575         All uses removed.
21576         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
21577         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
21578         * m4/exclude.m4 (gl_EXCLUDE): Don't check for isascii; no longer
21579         needed.
21580         * m4/getdate.m4 (gl_GETDATE): Likewise.
21581         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
21582         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
21583         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
21584         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
21585         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
21586         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
21587         * m4/exclude.m4 (gl_EXCLUDE): Don't require AC_C_INLINE; no longer
21588         needed.
21589
21590 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
21591
21592         * lib/memcasecmp.c: Include <limits.h>.
21593         (memcasecmp): Don't assume UCHAR_MAX <= INT_MAX.
21594         * lib/strtod.c (strtod): Don't assume isspace works on negative chars.
21595         Don't assume isdigit succeeds only on '0' through '9'.
21596
21597 2006-07-05  Eric Blake  <ebb9@byu.net>
21598
21599         * modules/getaddrinfo (Depends-on): Add snprintf.
21600
21601 2006-07-05  Eric Blake  <ebb9@byu.net>
21602
21603         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Use gl_HEADER_SYS_SOCKET
21604         to avoid 'header present but could not be compiled' on cygwin.
21605
21606 2006-07-05  Eric Blake  <ebb9@byu.net>
21607
21608         * lib/getaddrinfo.h (NI_NUMERICHOST, NI_NUMERICSERV): Define if
21609         missing from netdb.h.
21610         * lib/getaddrinfo.c (includes): Include inet_ntop and snprintf.
21611
21612 2006-07-05  Derek R. Price  <derek@ximbiot.com>
21613
21614         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Don't require AC_HEADER_STDC;
21615         no longer needed.
21616         * m4/exclude.m4 (gl_EXCLUDE): Likewise.
21617         * m4/getdate.m4 (gl_GETDATE): Likewise.
21618         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
21619         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
21620         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
21621         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
21622         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
21623
21624 2006-07-05  Derek R. Price  <derek@ximbiot.com>
21625
21626         * lib/exclude.c (IN_CTYPE_DOMAIN, is_space): Remove; no longer needed.
21627         All uses of is_space replaced by isspace.
21628         * lib/exit.h: Don't talk about STDC_HEADERS.
21629         * lib/fnmatch.c (ISASCII): Remove; no longer needed.  All uses removed.
21630         (ISPRINT, ISDIGIT, ISALNUM, ISALPHA, ISCNTRL, ISLOWER, ISPUNCT):
21631         (ISSPACE, ISUPPER, ISXDIGIT): Remove; no longer needed.  All uses
21632         replaced by isprint etc.
21633         * lib/getdate.y (IN_CTYPE_DOMAIN, ISSPACE, ISALPHA, ISLOWER): Likewise.
21634         * lib/getusershell.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
21635         * lib/memcasecmp.c (IN_CTYPE_DOMAIN, ISLOWER, TOUPPER): Likewise.
21636         * lib/strtod.c (IN_CTYPE_DOMAIN, ISSPACE, ISDIGIT, TOLOWER): Likewise.
21637         * lib/strtol.c (IN_CTYPE_DOMAIN): Likewise.
21638         * lib/xstrtol.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
21639
21640 2006-07-05  Bruno Haible  <bruno@clisp.org>
21641
21642         * m4/strndup.m4 (gl_FUNC_STRNDUP): When cross-compiling, check whether
21643         the function exists, before testing against AIX.
21644         Reported by Martin Lambers <marlam@marlam.de>.
21645
21646 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
21647
21648         * modules/cycle-check (lib_SOURCES): Add same-inode.h.
21649         From Mark D. Baushke.
21650
21651 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
21652
21653         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Prepend three slashes
21654         to the absolute name, not just one, to bypass Sun C 5.8's
21655         "warning: #include of /usr/include/... may be non-portable".
21656
21657 2006-07-04  Eric Blake  <ebb9@byu.net>
21658
21659         * modules/dirname-tests: New test module.
21660         * tests/test-dirname.c: New file, replacing dirname.c
21661         TEST_DIRNAME section that was recently deleted.
21662
21663 2006-07-04  Bruno Haible  <bruno@clisp.org>
21664
21665         Assume ANSI C header files and <ctype.h> functions.
21666         * lib/mbswidth.c (IN_CTYPE_DOMAIN, ISPRINT, ISCNTRL): Remove macros.
21667         (mbsnwidth): Use isprint, iscntrl instead.
21668
21669 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
21670
21671         Merge from coreutils.
21672         * MODULES.html.sh: Add xstrtold.
21673         * modules/xstrtold: New file.
21674         * modules/cycle-check (Files): Add lib/same-inode.h.
21675         * modules/dirname (Files): Add m4/double-slash-root.m4.
21676         * modules/getcwd (Files): Add m4/getcwd-abort-bug.m4.
21677         * modules/mkdir-p (Files): Add lib/same-inode.h.
21678         * modules/same (Files): Add lib/same-inode.h.
21679
21680 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
21681
21682         * m4/absolute-header.m4: Renamed from full-header-path.m4.
21683         This is to keep the terminology clean; POSIX talks about
21684         "absolute pathnames", not "full pathnames", but the GNU
21685         Coding Standards say to use "path" for something else;
21686         so use "absolute" to keep both sides happy.
21687         (gl_ABSOLUTE_HEADER): Renamed from gl_FULL_HEADER_PATH.
21688         Set gl_absolute_header, not gl_full_header_path.
21689         Set gl_cv_absolute_<header>, not gl_full_path_<header>.
21690         Define ABSOLUTE_<HEADER>, not FULL_PATH_<HEADER>.
21691         All uses changed.
21692
21693         Merge from coreutils.
21694
21695         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
21696
21697         * m4/c-strtod.m4 (gl_C_STRTOLD): Add c-strtod.c to LIBSOURCES.
21698         Require gl_USE_SYSTEM_EXTENSIONS, not gl_C_STRTOD, since we don't
21699         want to require the building of c-strtod.o.
21700         * m4/lib-check.m4 (cu_LIB_CHECK): Remove SEQ_LIBM, since seq no longer
21701         needs -lm directly.
21702         * m4/xstrtod.m4 (gl_XSTRTOLD): New macro.
21703
21704         2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
21705
21706         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Prefer binutils's
21707         --as-needed option if available.  Problem reported by Albert Chin in
21708         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00114.html>.
21709         However, use -Wl,--as-needed, not bare --as-needed, since HP-UX 11.11
21710         cc merely issues a bunch of annoying warnings for --as-needed
21711         (this problem was reported by Bob Proulx).  Also, try linking with
21712         -lm to detect a bug in binutils 2.16 (this problem was reported
21713         by Ralf Wildenhues).
21714
21715         2006-06-18  Jim Meyering  <jim@meyering.net>
21716
21717         Test for a bug that causes glibc's getcwd to suffer a failed assertion.
21718         * m4/getcwd-abort-bug.m4 (gl_FUNC_GETCWD_ABORT_BUG): New file and
21719         macro.
21720         * m4/getcwd.m4 (gl_FUNC_GETCWD): If we detect support for getcwd_null,
21721         also check for glibc-2.4's abort-inducing bug.
21722
21723         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Fix typo.
21724         Low-probability clean-up should be to use rmdir to get rid of
21725         the just-created directory, not unlink.
21726
21727         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): If ftruncate is missing, make
21728         configure fail, and request a bug report to inform us about it.
21729         Add a comment that, barring reports to the contrary, in 2007 we'll
21730         assume ftruncate is universally available.
21731
21732         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
21733
21734         * m4/filemode.m4 (gl_FILEMODE): Check for strmode declaration.
21735
21736         2006-03-12  Jim Meyering  <jim@meyering.net>
21737
21738         * m4/chdir-safer.m4 (gl_CHDIR_SAFER): Add same-inode.h to the list.
21739         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Likewise.
21740         * m4/same.m4 (gl_SAME): Likewise.
21741         * m4/root-dev-ino.m4 (gl_ROOT_DEV_INO): Likewise.
21742
21743         2006-03-11  Eric Blake  <ebb9@byu.net>
21744
21745         * m4/double-slash-root.m4: New file, provides gl_DOUBLE_SLASH_ROOT.
21746         * m4/dirname.m4 (gl_DIRNAME): Use gl_DOUBLE_SLASH_ROOT.
21747         * m4/dos.m4 (FILE_SYSTEM_PREFIX_LEN): Move from here to dirname.h.
21748         (FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE): New define.
21749
21750 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
21751
21752         * lib/stdint_.h: Include <sys/types.h> after @FULL_PATH_STDINT_H@, for
21753         MacOS X 10.4.6.  Don't mention <sys/int_types.h>.  Problems
21754         reported by Mark D. Baushke, one in
21755         <http://lists.gnu.org/archive/html/bug-gnulib/2006-07/msg00015.html>.
21756
21757         Merge from coreutils.
21758
21759         * lib/.cppi-disable: Add stdint_.h.
21760         * lib/.cvsignore: Add stdint.h.
21761
21762         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
21763
21764         * lib/xstrtod.c (XSTRTOD, DOUBLE): New macros, so that we can support
21765         both double and long double versions.
21766         (XSTRTOD): Renamed from xstrtod.  Use DOUBLE internally.
21767         * lib/xstrtold.c: New file.
21768         * lib/xstrtod.h (xstrtold): New decl.
21769
21770         2006-05-22  Paul Eggert  <eggert@cs.ucla.edu>
21771
21772         * lib/filemode.c (setst): Remove.
21773         (strmode): Rewrite to avoid setst.  This makes the code shorter,
21774         (arguably) clearer, and the generated code is a bit smaller on my
21775         Debian GNU/Linux stable x86 host.
21776
21777         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
21778
21779         * lib/filemode.c: Include "filemode.h" first, to test the interface.
21780         Assume that filemode.h includes sys/types.h and sys/stat.h.
21781         (HAVE_ST_DM_MODE): New macro, moved here from ls.c.
21782         (ftypelet): Reorder to put common cases first, for efficiency.
21783         Add 'P', 'w'.  Remove 'M', since it's now the caller's responsibility
21784         to do 'M'.
21785         (strmode): Renamed from mode_string, and now stores 12 bytes instead
21786         of 10, for compatibility with FreeBSD.  All callers changed.
21787         (filemodestring): Now stores 12 bytes instead of 10, and sets file
21788         types that can't be deduced solely from st_mode.  First arg is now a
21789         const pointer.
21790         * lib/filemode.h (HAVE_DECL_STRMODE): Include <string.h> for strmode.
21791         (strmode): Renamed from mode_string.
21792         (filemodestring): New decl.
21793         * lib/stat-macros.h: Don't undef S_ISDOOR, since it's never buggy.
21794         (S_ISDOOR): Don't bother with S_IFDOOR, since that code is never
21795         needed.
21796         (S_ISPORT, S_ISWHT): New macros, if not already defined.
21797
21798         2006-04-12  Paul Eggert  <eggert@cs.ucla.edu>
21799
21800         * lib/fsusage.c: Don't include <inttypes.h> or <stdint.h>, since
21801         fsusage.h now does that.  Include fsusage.h first, to test interface.
21802         Prefer statvfs if it works, since it's blessed by POSIX.  Attempt
21803         at most one method (the old code could have generated decls that
21804         didn't conform to C89, not that this was ever exercised).
21805         * lib/fsusage.h: Include <inttypes.h> and <stdint.h> if they exist.
21806
21807         2006-03-19  Jim Meyering  <jim@meyering.net>
21808
21809         Work even in a chroot where d_ino values for entries in "/"
21810         don't match the stat.st_ino values for the same names.
21811         * lib/getcwd.c (__getcwd): When no d_ino value matches the target inode
21812         number, iterate through all entries again, using lstat instead.
21813         Reported by Kenshi Muto in http://bugs.debian.org/355810, and by
21814         Zouhir Hafidi in https://bugzilla.redhat.com/bugzilla/190656.
21815
21816         * lib/getcwd.c (__getcwd): Clarify a comment.
21817         Use memcpy in place of a call to strcpy.
21818
21819         2006-03-12  Jim Meyering  <jim@meyering.net>
21820
21821         * lib/fts-cycle.c (leave_dir): If cycle-check's saved dev-ino pair
21822         matches that of the current directory (which we're about to chdir ".."
21823         out of), then save the dev-ino of the parent, instead.
21824
21825         * lib/same-inode.h (SAME_INODE): New file/macro.
21826         * lib/chdir-safer.c (SAME_INODE): Remove definition.
21827         Include "same-inode.h", instead.
21828         * lib/same.c: Likewise.
21829         * lib/cycle-check.h: Include "same-inode.h".
21830         (CYCLE_CHECK_REFLECT_CHDIR_UP): Define.
21831         * lib/cycle-check.c (SAME_INODE): Remove definition.
21832         * lib/root-dev-ino.h: Include "same-inode.h".
21833
21834         2006-03-11  Eric Blake  <ebb9@byu.net>
21835
21836         * lib/same.c (same_name): s/base_name/last_component/
21837         * lib/backupfile.c (check_extension, numbered_backup): Likewise.
21838         * lib/filenamecat.c (file_name_concat): Likewise.
21839
21840         2006-03-11  Eric Blake  <ebb9@byu.net>,
21841                     Paul Eggert  <eggert@cs.ucla.edu>
21842
21843         * lib/dirname.h (FILE_SYSTEM_PREFIX_LEN): Move here from dos.m4.
21844         [FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't treat 1: as a
21845         drive prefix.
21846         (IS_ABSOLUTE_FILE_NAME): Treat all drive letters as absolute on
21847         platforms like cygwin with FILE_SYSTEM_DRIVE_PREFIX_IS_ABSOLUTE.
21848         (last_component): New method.
21849         * lib/dirname.c (dir_len): Determine when drive letters need a
21850         subsequent slash.  Preserve // when it is special.
21851         (dir_name): Don't append dot when drive letter is absolute.
21852         [TEST_DIRNAME]: Move into a full-blown gnulib test.
21853         * lib/basename.c (base_name): New semantics - malloc the result.
21854         Preserve // when it is special.  Preserve relative files that look
21855         like drive letters.
21856         (base_len): Preserve // when it is special.
21857         (last_component): New method, similar to old base_name semantics.
21858         * lib/stripslash.c (strip_trailing_slashes): Use last_component, not
21859         base_name.  Strip redundant slashes from ///.
21860
21861 2006-07-03  Jim Meyering  <jim@meyering.net>
21862
21863         * lib/cycle-check.h (CYCLE_CHECK_REFLECT_CHDIR_UP): Abort if this
21864         macro is used before the first cycle_check call.
21865
21866 2006-07-03  Eric Blake  <ebb9@byu.net>
21867
21868         * modules/dirname (Depends-on): Add xstrndup.
21869
21870 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
21871
21872         * m4/stdint.m4 (gl_STDINT_H): Use more-mnemonic identifiers for
21873         test cases, so that config.log is a bit easier to follow.
21874
21875 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
21876
21877         * lib/stdint_.h (intmax_t, uintmax_t): Prefer long to long long if
21878         both are 64 bits, since this seems to be the tradition, and this
21879         prevents gcc -Wformat from warning about usages with PRIuMAX.  If
21880         we ever run into a host that prefers long long to long in this
21881         case, we'll need another configure-time test.  Problem reported by
21882         Jim Meyering.
21883
21884 2006-07-02  Eric Blake  <ebb9@byu.net>
21885
21886         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Simplify by using AC_CHECK_DECLS.
21887
21888 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
21889
21890         * modules/inttypes (Depends-on): No longer depends on stdint.
21891         * modules/stdint (Description): Say more about assumptions.
21892         Say that the fast types might differ.  Say macros are used.
21893         (Files): Remove m4/size_max.m4, m4/wchar_t.m4.  Add m4/longlong.m4.
21894         (Makefile.am): Revise list of substituted symbols to match
21895         new stdint.m4.
21896         * modules/stdint-tests (Files): Add m4/wchar_t.m4, m4/wint_t.m4.
21897         (configure.ac): Add gt_TYPE_WCHAR_T, gt_TYPE_WINT_T.
21898         * tests/test-stdint.c (verify_same_types)
21899         [! (__GNUC__ >= 2 && DO_PEDANTIC)]: Put in a decl, so that
21900         the code conforms to C99/C89.
21901         Test for WCHAR_MIN and WCHAR_MAX only if HAVE_WCHAR_T.
21902         Test for WINT_MIN and WINT_MAX only if HAVE_WINT_T.
21903
21904 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
21905
21906         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Backport from Autoconf 2.60,
21907         but fix a bug, by requiring at least 64 bits.
21908         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
21909         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Now just call
21910         AC_TYPE_LONG_LONG_INT.  This macro is obsolete and will go soon.
21911         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG) Likewise.
21912
21913         * m4/stdint.m4 (gl_STDINT_H): Rewrite to accommodate stdint_.h
21914         changes.  Make 2.59 a prerequisite.  Check and substitute for
21915         HAVE_LONG_LONG_INT.  Rely on Autoconf to check for stdint.h and
21916         inttypes.h.  Do not use special include files; just use the
21917         defaults.  Check for sys/inttypes.h and sys/bitypes.h in the usual
21918         way now.  Remove no-longer-needed tests for HAVE_LONG_64BIT,
21919         HAVE_LONG_LONG_64BIT, int8_t, int16_t, int32_t, int64_t, uint8_t,
21920         uint16_t, uint32_t uint64_t, int_least8_t, int_least16_t,
21921         int_least32_t, int_least64_t, uint_least8_t, uint_least16_t,
21922         uint_least32_t, uint_least64_t, int_fast8_t, int_fast16_t,
21923         int_fast32_t, int_fast64_t, uint_fast8_t uint_fast16_t,
21924         uint_fast32_t, uint_fast64_t, intptr_t, uintptr_t, intmax_t,
21925         uintmax_t, INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX,
21926         UINT16_MAX, INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN,
21927         INT64_MAX, UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX,
21928         UINT_LEAST8_MAX, INT_LEAST16_MIN, INT_LEAST16_MAX,
21929         UINT_LEAST16_MAX, INT_LEAST32_MIN, INT_LEAST32_MAX,
21930         UINT_LEAST32_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX,
21931         UINT_LEAST64_MAX, INT_FAST8_MIN, INT_FAST8_MAX, UINT_FAST8_MAX,
21932         INT_FAST16_MIN, INT_FAST16_MAX, UINT_FAST16_MAX, INT_FAST32_MIN,
21933         INT_FAST32_MAX, UINT_FAST32_MAX, INT_FAST64_MIN, INT_FAST64_MAX,
21934         UINT_FAST64_MAX, INTPTR_MIN, INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN,
21935         INTMAX_MAX, UINTMAX_MAX, PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN,
21936         SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN,
21937         WINT_MAX.  Check for C99 conformance more strictly, by detecting
21938         bugs in glibc 2.4, Solaris 10, and OpenBSD 3.9.  On the other hand do
21939         not check for things that C99 does not require, e.g., int8_t.  If
21940         a test isn't needed unless <stdint.h> isn't working, and is
21941         unlikely to be needed for any other reason, then don't do it
21942         unless <stdint.h> isn't working.  Do not check for ptrdiff_t or
21943         size_t, since we assume C89 freestanding at least.  Do not check
21944         for sig_atomic_t, wchar_t, or wint_t, since the code now does
21945         the right thing even if the types are not defined.  Instead use:
21946         (gl_STDINT_TYPE_PROPERTIES): New macro.
21947         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H): Remove.  Don't bother
21948         testing whether <sys/types.h> clashes, as Autoconf does this for
21949         us now.  All uses removed.
21950         (gl_STDINT_CHECK_TYPES, gl_STDINT_MISSING_BOUND):
21951         (gl_STDINT_MISSING_BOUNDS, gl_STDINT_MISSING_BOUNDS2):
21952         (gl_CHECK_TYPE_SAME):
21953         Remove; no longer needed.
21954         (gl_STDINT_BITSIZEOF): Don't bother to check whether the type
21955         exists, since we'll return 0 anyway in that case.
21956         (gl_INTEGER_TYPE_SUFFIX, gl_STDINT_INCLUDES): New macros.
21957
21958 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
21959
21960         * lib/stdint_.h (_GL_STDINT_H): Renamed from _STDINT_H, to avoid
21961         possible collision with system files.
21962         (<stdio.h>, <time.h>, <wchar.h>) [defined __cplusplus && ! defined
21963         __STDC_CONSTANT_MACROS)]: Do not include, since we don't need
21964         WCHAR_MIN and WCHAR_MAX in this case.
21965         (<stddef.h>): Do not include; no longer needed.
21966         (<sys/types.h>): Include if @HAVE_SYS_TYPES_H@, not if
21967         (defined(__OpenBSD__) || defined(__bsdi__) || defined(__sgi)).
21968         (<sys/inttypes.h>): Include if @HAVE_SYS_INTTYPES_H@ &&
21969         !@HAVE_INTTYPES_H@, not if (defined(__FreeBSD__)
21970         && (__FreeBSD__ >= 3) && (__FreeBSD__ <= 4)).
21971         (__STDINT_H__) [@HAVE_STDINT_H@ && defined __sgi && ! defined
21972         __c99]: Define, to work around IRIX <stdint.h> incompatibility.
21973         (@FULL_PATH_STDINT_H@) [!(defined(__sgi) && @HAVE_INTTYPES_H@ &&
21974         !defined(__c99))]: Include in this case too, since it's harmless
21975         now.
21976         (<inttypes.h>) [@HAVE_INTTYPES_H@]: Include, since it's no longer
21977         dangerous to do so.
21978         (@FULL_PATH_INTTYPES_H@) [(defined(__hpux) || defined(_AIX)) &&
21979         @HAVE_INTTYPES_H@]: Do not include, since we now include <inttypes.h>.
21980         (_STDINT_MIN, _STDINT_MAX): New macros.
21981         (int8_t, uint8_t, int16_t, uint16_t, int32_t, uint32_t, int64_t):
21982         (uint64_t, int_least8_t, uint_least8_t, int_least16_t):
21983         (uint_least16_t, int_least32_t, uint_least32_t, int_least64_t):
21984         (uint_least64_t, int_fast8_t, uint_fast8_t, int_fast16_t):
21985         (uint_fast16_t, int_fast32_t, uint_fast32_t, int_fast64_t):
21986         (uint_fast64_t, intptr_t, uintptr_t, intmax_t, uintmax_t): Now
21987         macros, not typedefs; this simplifies things quite a bit.
21988         Use long int for all types narrower than int64_t.
21989         (intmax_t, uintmax_t, INTMAX_C, UINTMAX_C):
21990         Define in terms of long long int or int64_t or long int,
21991         not int64_t or int32_t.  This saves some compile-time testing.
21992         (INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX, UINT16_MAX):
21993         (INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN, INT64_MAX):
21994         (UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX, UINT_LEAST8_MAX):
21995         (INT_LEAST16_MIN, INT_LEAST16_MAX, UINT_LEAST16_MAX):
21996         (INT_LEAST32_MIN, INT_LEAST32_MAX, UINT_LEAST32_MAX):
21997         (INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX, INT_FAST8_MIN):
21998         (INT_FAST8_MAX, UINT_FAST8_MAX, INT_FAST16_MIN, INT_FAST16_MAX):
21999         (UINT_FAST16_MAX, INT_FAST32_MIN, INT_FAST32_MAX, UINT_FAST32_MAX):
22000         (INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTPTR_MIN):
22001         (INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN, INTMAX_MAX, UINTMAX_MAX):
22002         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
22003         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
22004         undef any previous version and define our own version, for
22005         simplicity and consistency with the new macros for types.
22006         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
22007         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
22008         Simplify definitions by using _STDINT_MIN and _STDINT_MAX
22009         where appropriate.  Rely on new symbols @PTRDIFF_T_SUFFIX@,
22010         @SIG_ATOMIC_T_SUFFIX@, @SIZE_T_SUFFIX@, @WCHAR_T_SUFFIX@,
22011         @WINT_T_SUFFIX@ to keep things simple here.
22012         (UINT8_C, UINT16_C, UINT32_C, INT64_C, UINT64_C):
22013         Simplify by assuming typical 8/16/32/64 host, since we're
22014         already doing that elsewhere anyway.
22015         Use (LONG_MAX >> 31 >> 31 == 1) rather than @HAVE_LONG_64BIT@,
22016         and assume long long int is 64 bits if available.  This
22017         speeds up 'configure'.
22018
22019 2006-07-01  Eric Blake  <ebb9@byu.net>
22020
22021         * m4/stdarg.m4 (gl_STDARG_H): Use proper AH_VERBATIM.
22022         Reported by Andreas Buening.
22023
22024 2006-07-01  Eric Blake  <ebb9@byu.net>
22025
22026         * m4/stdarg.m4 (gl_STDARG_H): Properly parenthesize gl_va_copy.
22027
22028 2006-06-30  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
22029
22030         * lib/getaddrinfo.c: fixed typo
22031
22032 2006-06-29  Jim Meyering  <jim@meyering.net>
22033
22034         * modules/strftime (Maintainer): Add my name, since with the
22035         FPRINTFTIME changes strftime.c has forked from glibc.
22036
22037 2006-06-29  Eric Blake  <ebb9@byu.net>
22038
22039         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Use AC_C_INLINE.
22040
22041 2006-06-29  Eric Blake  <ebb9@byu.net>
22042
22043         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): New file.
22044
22045 2006-06-29  Eric Blake  <ebb9@byu.net>
22046
22047         * lib/stat_.h: New file.
22048
22049 2006-06-29  Eric Blake  <ebb9@byu.net>
22050
22051         * lib/stat_.h (rpl_mkdir): Declare inline, to avoid warnings about
22052         unused static function.
22053
22054 2006-06-29  Eric Blake  <ebb9@byu.net>
22055
22056         * doc/functions.texi (Function Portability): Document missing lstat
22057         on mingw.
22058
22059 2006-06-29  Eric Blake  <ebb9@byu.net>
22060
22061         * MODULES.html.sh: Add sys_stat.
22062         * modules/sys_stat: New module.
22063         * modules/mkstemp (Depends-on): Add sys_stat.
22064
22065 2006-06-29  Derek R. Price  <derek@ximbiot.com>
22066
22067         * m4/strftime.m4: Don't call AC_FUNC_STRFTIME.
22068
22069 2006-06-29  Derek R. Price  <derek@ximbiot.com>
22070
22071         * m4/c-bs-a.m4: Removed.
22072
22073 2006-06-29  Derek R. Price  <derek@ximbiot.com>
22074
22075         * lib/strftime.c: Assume strftime() exists.
22076
22077 2006-06-29  Derek Price  <derek@ximbiot.com>
22078
22079         * modules/c-bs-a: Removed - \a is C89.
22080         * MODULES.html.sh: Remove c-bs-a.
22081
22082 2006-06-29  Bruno Haible  <bruno@clisp.org>
22083
22084         * modules/wcwidth (License): Change to LGPL.
22085
22086 2006-06-28  Simon Josefsson  <jas@extundo.com>
22087
22088         * tests/test-getaddrinfo.c: Test getnameinfo too.  Call WSAStartup
22089         on _WIN32.
22090
22091         * modules/getaddrinfo (Depends-on): Add inet_ntop, needed by
22092         getnameinfo.
22093
22094 2006-06-28  Simon Josefsson  <jas@extundo.com>
22095
22096         * m4/getaddrinfo.m4: Look for getnameinfo prototypes too.
22097
22098 2006-06-28  Simon Josefsson  <jas@extundo.com>
22099
22100         * lib/getaddrinfo.c: Try to load ws2_32.dll on Windows, to find the
22101         functions there.  It will succeed on Windows XP, but on Windows
22102         2000 and (presumably) earlier, it will fail, and use the internal
22103         re-implementation.
22104         (use_win32_p): New function.
22105         (getaddrinfo): Use strtoul on servname, to support numeric ports.
22106         Support AI_NUMERICSERV to disable getservbyname.
22107         (getnameinfo): New function, only supports
22108         NI_NUMERICHOST|NI_NUMERICSERV for now.
22109
22110         * lib/getaddrinfo.h: Test and check for AI_* flags separately, MinGW
22111         only have some of them.  Add AI_NUMERICSERV.  Add prototype for
22112         getnameinfo.
22113
22114 2006-06-28  Eric Blake  <ebb9@byu.net>
22115
22116         * modules/wcwidth: New file.
22117         * modules/mbchar (Depends-on): Add wcwidth.
22118         * modules/mbswidth (Depends-on): Add wcwidth.
22119         * MODULES.html.sh: Add wcwidth.
22120
22121 2006-06-28  Eric Blake  <ebb9@byu.net>
22122
22123         * m4/mbswidth.m4 (gl_MBSDWIDTH): Move wcwidth from here...
22124         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): ...to this new file.
22125
22126 2006-06-28  Eric Blake  <ebb9@byu.net>
22127
22128         * lib/xvasprintf.h: Fix comments.
22129
22130 2006-06-28  Eric Blake  <ebb9@byu.net>
22131
22132         * lib/mbchar.h (wcwidth): Include wcwidth.h.
22133         * lib/mbswidth.c (wcwidth): Move from here...
22134         * lib/wcwidth.h: ...to this new file.
22135
22136 2006-06-28  Derek R. Price  <derek@ximbiot.com>
22137
22138         * m4/savedir.m4: Remove AC_FUNC_CLOSEDIR_VOID requirement.
22139
22140         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't require AC_C_CONST, since
22141         it's obsolete.
22142         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Likewise.
22143
22144 2006-06-28  Derek R. Price  <derek@ximbiot.com>
22145
22146         * lib/savedir.c (CLOSEDIR): Remove.  All uses changed to closedir.
22147         Autoconf 2.60 says this stuff was obsolete.
22148
22149 2006-06-28  Bruno Haible  <bruno@clisp.org>
22150
22151         * modules/wcwidth (Files): Add m4/wchar_t.m4.
22152
22153 2006-06-28  Bruno Haible  <bruno@clisp.org>
22154
22155         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Also require AC_C_INLINE and
22156         gt_TYPE_WCHAR_T.
22157
22158 2006-06-28  Bruno Haible  <bruno@clisp.org>
22159
22160         * lib/wcwidth.h: Declare nothing if !HAVE_WCHAR_T. Provide a fallback
22161         declaration for wcwidth.
22162         * lib/mbswidth.c: Restore the includes of <wchar.h> and <wctypes.h>.
22163
22164 2006-06-28  Bruno Haible  <bruno@clisp.org>
22165
22166         * lib/mkdtemp.c [MINGW]: Include <io.h>.
22167         (mkdir): Define using _mkdir.
22168
22169 2006-06-28  Bruno Haible  <bruno@clisp.org>
22170
22171         * lib/getaddrinfo.h: Fix POSIX URL.
22172         * lib/getaddrinfo.c (WIN32_NATIVE): New macro. Use it instead of
22173         _WIN32.
22174         (use_win32_p): Make static.
22175         (getaddrinfo): Reject service name if it is empty or does not consist
22176         solely of decimal digits, or if its value is > 65535.
22177         (getnameinfo): Remove useless casts.
22178
22179 2006-06-27  Simon Josefsson  <jas@extundo.com>
22180
22181         * modules/sys_select: New file, suggested by Bruno Haible, Paul
22182         Eggert and Martin Lambers.
22183
22184 2006-06-27  Simon Josefsson  <jas@extundo.com>
22185
22186         * m4/sys_select_h.m4: New file, suggested by Bruno Haible, Paul
22187         Eggert and Martin Lambers.
22188
22189 2006-06-27  Bruno Haible  <bruno@clisp.org>
22190
22191         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): For nonexistent types, set the
22192         result to 0, not to empty.
22193         Reported by Martin Neitzel <neitzel@sco.gaertner.de>.
22194
22195 2006-06-27  Bruno Haible  <bruno@clisp.org>
22196
22197         * lib/stdint_.h (intmax_t, uintmax_t): Undefine before typedef.
22198
22199 2006-06-26  Simon Josefsson  <jas@extundo.com>
22200
22201         * m4/inet_ntop.m4: Don't check for sys/types.h, we assume it is
22202         present.
22203
22204 2006-06-26  Paul Eggert  <eggert@cs.ucla.edu>
22205
22206         * lib/base64.c (B64): Use _ as the formal parameter, not x, to avoid
22207         bug in IBM C V6 for AIX.  Problem reported by Larry Jones in
22208         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00181.html>.
22209
22210 2006-06-26  Mark D. Baushke  <mdb@gnu.org>
22211
22212         * m4/stdint.m4 (gl_STDINT_H): Treat BSD/OS like OpenBSD.
22213
22214 2006-06-26  Bruno Haible  <bruno@clisp.org>
22215
22216         * modules/stdint (Makefile.am): Also substitute HAVE_WCHAR_H.
22217
22218 2006-06-26  Bruno Haible  <bruno@clisp.org>
22219
22220         * m4/stdint.m4 (gl_STDINT_H): Test also for <wchar.h>.
22221
22222 2006-06-26  Bruno Haible  <bruno@clisp.org>
22223
22224         * m4/stdint.m4 (gl_STDINT_H): Don't include <stdint.h> when using the
22225         SGI C compiler in pre-C99 mode.
22226         Suggested by Mark D. Baushke and Larry Jones.
22227
22228 2006-06-26  Bruno Haible  <bruno@clisp.org>
22229
22230         * lib/stdint_.h: Include <wchar.h> if necessary for WCHAR_MIN or
22231         WCHAR_MAX.
22232         Reported by Mark D. Baushke and Larry Jones.
22233
22234 2006-06-26  Bruno Haible  <bruno@clisp.org>
22235
22236         * lib/stdint_.h: Don't include <stdint.h> when using the SGI C compiler
22237         in pre-C99 mode.
22238         Suggested by Mark D. Baushke and Larry Jones.
22239
22240 2006-06-23  Simon Josefsson  <jas@extundo.com>
22241             Bruno Haible  <bruno@clisp.org>
22242
22243         * gnulib-tool (func_emit_lib_Makefile_am): Define MOSTLYCLEANDIRS.
22244         Emit mostlyclean-local rule.
22245         (func_emit_tests_Makefile_am): Likewise.
22246         * modules/sys_socket (Makefile.am): Use MOSTLYCLEANDIRS.
22247
22248 2006-06-23  Mark D. Baushke  <mdb@gnu.org>
22249
22250         * lib/stdint_.h: Treat BSD/OS like OpenBSD.
22251
22252 2006-06-23  Bruno Haible  <bruno@clisp.org>
22253
22254         * tests/test-stdint.c: Update to match ISO C 99 Technical
22255         Corrigendum 1.
22256
22257 2006-06-23  Bruno Haible  <bruno@clisp.org>
22258
22259         * m4/stdint.m4 (gl_STDINT_H): Treat IRIX like OpenBSD.
22260
22261 2006-06-23  Bruno Haible  <bruno@clisp.org>
22262
22263         * lib/stdint_.h: Treat IRIX like OpenBSD.
22264
22265 2006-06-23  Bruno Haible  <bruno@clisp.org>
22266
22267         * lib/stdint_.h (UINT8_C, UINT16_C, UINT32_C): Define according to
22268         ISO C 99 Technical Corrigendum 1.
22269
22270 2006-06-22  Simon Josefsson  <jas@extundo.com>
22271
22272         * m4/sockpfaf.m4: Include winsock2.h too, to make it work under
22273         MinGW.
22274
22275 2006-06-22  Paul Eggert  <eggert@cs.ucla.edu>
22276
22277         * lib/glob.c (collated_compare): Remove 'const' uses that weren't
22278         needed.  Some compiler complained about some of them.  Problem reported
22279         by Larry Jones in
22280         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00172.html>.
22281
22282 2006-06-21  Simon Josefsson  <jas@extundo.com>
22283
22284         * tests/test-getaddrinfo.c: New file.
22285
22286         * modules/getaddrinfo-tests: New file.
22287
22288         * MODULES.html.sh: Add inet_pton.
22289
22290         * modules/inet_pton: New file.
22291
22292 2006-06-21  Simon Josefsson  <jas@extundo.com>
22293
22294         * m4/getaddrinfo.m4: Don't define WINVER.  Look for gethostbyname in
22295         -lws2_32 too.  Fixes getaddrinfo on Windows 2000, with the price
22296         of using the (limited) gnulib implementation on Windows XP.
22297
22298         * m4/inet_pton.m4: New file.
22299
22300 2006-06-21  Simon Josefsson  <jas@extundo.com>
22301
22302         * lib/getaddrinfo.c (getaddrinfo): Set ai_family in the return
22303         variable.
22304
22305         * lib/socket_.h: Don't define WINVER.
22306
22307         * lib/inet_pton.h, inet_pton.c: New file, taken from glibc but
22308         slightly modified to work in gnulib.
22309
22310 2006-06-21  Simon Josefsson  <jas@extundo.com>
22311
22312         * doc/gnulib.texi (Windows sockets): Add.
22313
22314 2006-06-21  Paul Eggert  <eggert@cs.ucla.edu>
22315
22316         * lib/read-file.c (fread_file): Start with buffer allocation of
22317         0 bytes rather than 1 byte; this simplifies the code.
22318         Don't invoke feof; it's not needed.  Refactor to avoid duplicate
22319         code to free buffer and save/restore errno.
22320         (internal_read_file): Remove unused local.
22321
22322 2006-06-20  Paul Eggert  <eggert@cs.ucla.edu>
22323
22324         * lib/openat.c (openat): Use ?:, not if, to work around GCC bug 4210
22325         <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=4210>.
22326         Problem reported by Denis Excoffier in
22327         <http://lists.gnu.org/archive/html/bug-tar/2006-06/msg00023.html>.
22328
22329 2006-06-19  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
22330
22331         * modules/sys_socket, modules/socklen: Include sys/types since
22332         FreeBSD 4.x's sys/socket.h needs it.
22333
22334 2006-06-19  Simon Josefsson  <jas@extundo.com>
22335
22336         * lib/inet_ntop.c: Always build inet_ntop4, since inet_ntop6 calls it.
22337
22338 2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
22339
22340         * lib/alloca_.h (alloca) [defined alloca]: Don't define or declare.
22341
22342 2006-06-19  Bruno Haible  <bruno@clisp.org>
22343
22344         * m4/stdint.m4 (gl_STDINT_H): Enclose the values of FULL_PATH_STDINT_H
22345         and FULL_PATH_INTTYPES_H in angle brackets.
22346         Reported by Mark D. Baushke <mdb@gnu.org>.
22347
22348 2006-06-17  Eric Blake  <ebb9@byu.net>
22349
22350         * m4/rmdir-errno.m4 (gl_FUNC_FMDIR_NOTEMPTY): Assume errno.h declares
22351         errno.
22352
22353 2006-06-17  Bruno Haible  <bruno@clisp.org>
22354
22355         * m4/stdint.m4 (gl_STDINT_H) [FreeBSD >= 5]: Don't include
22356         <sys/inttypes.h>.
22357
22358 2006-06-17  Bruno Haible  <bruno@clisp.org>
22359
22360         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove test
22361         whether errno is declared. Assume <errno.h> declares errno.
22362
22363 2006-06-17  Bruno Haible  <bruno@clisp.org>
22364
22365         * lib/stdint_.h [FreeBSD >= 5]: Don't include <sys/inttypes.h>.
22366
22367 2006-06-17  Bruno Haible  <bruno@clisp.org>
22368
22369         * lib/stdint_.h (_UINT8_T, _UINT32_T, _UINT64_T): New macros. Fixes a
22370         problem on Solaris 2.5.1.
22371
22372 2006-06-16  Eric Blake  <ebb9@byu.net>
22373
22374         * lib/unsetenv.c [!defined errno]: Assume errno.h declares errno.
22375         * lib/unicodeio.c [!defined errno]: Likewise.
22376         * lib/strtol.c [!defined errno]: Likewise.
22377         * lib/strtod.c [!defined errno]: Likewise.
22378
22379 2006-06-15  Eric Blake  <ebb9@byu.net>
22380
22381         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Work in spite of -Werror.
22382
22383 2006-06-15  Eric Blake  <ebb9@byu.net>
22384
22385         * config/srclist.txt (ssize_t.m4): Lose sync.
22386
22387 2006-06-15  Bruno Haible  <bruno@clisp.org>
22388
22389         * modules/stdint (Files): Include m4/full-header-path.m4,
22390         m4/size_max.m4, m4/wchar_t.m4.
22391         (Makefile.am): Many more substitutions.
22392         * modules/stdint-tests: New file.
22393         * tests/test-stdint.c: New file.
22394
22395 2006-06-15  Bruno Haible  <bruno@clisp.org>
22396
22397         * m4/stdint.m4 (gl_STDINT_H): Rewritten to produce a complete stdint.h.
22398         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H, gl_STDINT_CHECK_TYPES,
22399         gl_STDINT_MISSING_BOUND, gl_STDINT_MISSING_BOUNDS,
22400         gl_STDINT_MISSING_BOUNDS2, gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED,
22401         gl_CHECK_TYPE_SAME): New macros.
22402
22403 2006-06-15  Bruno Haible  <bruno@clisp.org>
22404
22405         * m4/size_max.m4 (gl_SIZE_MAX): Make it work also when cross-compiling.
22406
22407 2006-06-15  Bruno Haible  <bruno@clisp.org>
22408
22409         * lib/stdint_.h: Rewritten to be fully auto-configured.
22410         Fixes bug on HP-UX/IA64.
22411
22412 2006-06-11  Paul Eggert  <eggert@cs.ucla.edu>
22413
22414         * lib/getdate.y (__attribute__): Don't define if already defined.
22415         Problem reported by Larry Jones.
22416         * lib/utimens.c (__attribute__): Likewise.
22417
22418 2006-06-04  Paul Eggert  <eggert@cs.ucla.edu>
22419
22420         * lib/regexec.c (group_nodes_into_DFAstates): Fix a buffer overrun
22421         reported by Andreas Schwab.
22422
22423 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22424             Bruno Haible  <bruno@clisp.org>
22425
22426         * m4/strndup.m4 (gl_FUNC_STRNDUP): Replace the AC_REPLACE_FUNCS with a
22427         check for the declaration of strnlen and a run test that exposes the
22428         AIX 5.1 strnlen bug.  In the failure case, #define strndup to
22429         rpl_strndup.
22430
22431 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22432             Bruno Haible  <bruno@clisp.org>
22433
22434         * lib/strndup.c (strndup) [!_LIBC]: Don't undefine macro definition.
22435
22436 2006-05-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22437
22438         * m4/c-strtod.m4 (gl_C99_STRTOLD): Use a link test rather than a
22439         compile test, for Tru64 4.0D.
22440
22441 2006-05-28  Karl Berry  <karl@gnu.org>
22442
22443         * config/srclist.txt (printf-args.c): lose sync.
22444
22445 2006-05-26  Martin Lambers  <marlam@marlam.de>
22446
22447         * lib/getpass.c: Updates the test for the native W32 API, and adds
22448         missing includes, thus fixing compilation warnings.
22449
22450 2006-05-25  Sergey Poznyakoff  <gray@gnu.org.ua>
22451
22452         * lib/exclude.c (exclude_fnmatch): New function.
22453         (excluded_file_name): Call exclude_fnmatch.
22454         * lib/exclude.h (excluded_file_name): New prototype
22455
22456 2006-05-25  Paul Eggert  <eggert@cs.ucla.edu>
22457
22458         * lib/tempname.c (small_open, large_open): New macros.
22459         (__open, __open64) [!_LIBC]: Remove.
22460         (__gen_tempname): Use small_open and large_open instead of __open
22461         and __open64.  This fixes a portability bug on HP-UX 11.11i
22462         reported by Simon Wing-Tang in
22463         <http://lists.gnu.org/archive/html/bug-coreutils/2006-05/msg00114.html>.
22464
22465 2006-05-24  Bruno Haible  <bruno@clisp.org>
22466
22467         * lib/printf-args.c (printf_fetchargs): Turn NULL pointers for
22468         TYPE_STRING and TYPE_WIDE_STRING into a non-NULL replacement.
22469         Reported by Thorsten Maerz <torte@netztorte.de> via
22470         Aaron Stone <aaron@serendipity.cx>.
22471
22472 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
22473
22474         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Rename cache variables to use
22475         gl_ rather than jm_.  Link, don't run, so that cross-compiles are
22476         allowed.  Check that resulting type is arithmetic.  Move AC_REQUIRE
22477         and AC_CHECK_HEADERS_ONCE outside of AC_CACHE_CHECK, since they're
22478         not really conditional on the cache.
22479         (gl_PREREQ_NANOSLEEP): Check for sys/select.h.
22480
22481 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
22482
22483         * lib/nanosleep.c [HAVE_SYS_SELECT_H]: Include <sys/select.h>.
22484         Use the usual Autoconf way to include <time.h> and/or sys/time.h.
22485         (my_usleep): Don't mishandle maximum value.
22486
22487 2006-05-19  Jim Meyering  <jim@meyering.net>
22488
22489         * lib/getugroups.c: Correct an outdated comment.  From Bruno Haible.
22490
22491 2006-05-17  Bruno Haible  <bruno@clisp.org>
22492
22493         Cygwin portability.
22494         * lib/classpath.c (PATH_SEPARATOR) [CYGWIN]: Define as ':'.
22495
22496 2006-05-17  Bruno Haible  <bruno@clisp.org>
22497
22498         * lib/stdint_.h: Fix recognition of Cygwin.
22499
22500 2006-05-15  Bruno Haible  <bruno@clisp.org>
22501
22502         * build-aux/config.rpath: Improve support for Sun C 5.9 on Linux, based
22503         on libtool patch by Ralf Wildenhues.
22504
22505 2006-05-14  Paul Eggert  <eggert@cs.ucla.edu>
22506
22507         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Fix overly-picky
22508         test for C99 conformance; (bool) 0.5 is an integer constant
22509         expression, but (bool) -0.5 is not.  Problem reported by Fedor
22510         Sergeev in <http://forum.sun.com/jive/thread.jspa?threadID=96202>.
22511
22512 2006-05-11  Simon Josefsson  <jas@extundo.com>
22513
22514         * m4/xvasprintf.m4: Fix obvious typo.
22515
22516 2006-05-11  Jim Meyering  <jim@meyering.net>
22517
22518         * lib/sha1.c (sha1_buffer): Correct comment: s/MD5/SHA1/.  From
22519         James Lemley.
22520
22521 2006-05-10  Simon Josefsson  <jas@extundo.com>
22522
22523         * lib/md4.c: Typo fix, update copyright years.
22524         (K1, K2): Don't use L because it turn computations into 64-bit on
22525         64-bit platforms.
22526
22527 2006-05-10  Paul Eggert  <eggert@cs.ucla.edu>
22528
22529         * lib/crc.c (crc32_update): Remove unnecessary L suffix.
22530         * lib/md4.c (rol): Cast right-shift arg to uint32_t to prevent
22531         unwanted sign propagation, e.g., on hosts with 64-bit int.
22532         There still are some problems with reeelly weird theoretical hosts
22533         (e.g., 33-bit int) but it's not worth worrying about now.
22534         * lib/sha1.c (rol): Likewise.
22535         (K1, K2, K3, K4): Remove unnecessary L suffix.
22536
22537 2006-05-10  Bruno Haible  <bruno@clisp.org>
22538
22539         * lib/des.c: Cast to avoid warnings.
22540
22541 2006-05-09  Bruno Haible  <bruno@clisp.org>
22542
22543         * modules/xvasprintf (Files): Add m4/xvasprintf.m4.
22544         (Depends-on): Depend also on xsize, stdarg.
22545         (configure.ac): Add gl_XVASPRINTF.
22546
22547 2006-05-09  Bruno Haible  <bruno@clisp.org>
22548
22549         * m4/xvasprintf.m4: New file.
22550
22551 2006-05-09  Bruno Haible  <bruno@clisp.org>
22552
22553         * lib/xvasprintf.c: Include limits.h, string.h, xsize.h.
22554         (EOVERFLOW): Define fallback value.
22555         (xstrcat): New function.
22556         (xvasprintf): Recognize the special case of a string concatenation.
22557
22558 2006-05-08  Eric Blake  <ebb9@byu.net>
22559
22560         * gnulib-tool (func_version): Base copyright year on CVS date.
22561         (func_emit_copyright_notice): New function.
22562         (func_emit_lib_Makefile_am): Use it.
22563         (func_emit_tests_Makefile_am): Likewise.
22564         (func_import): Likewise.
22565
22566 2006-05-08  Bruno Haible  <bruno@clisp.org>
22567
22568         * modules/stdarg: New file.
22569         * MODULES.html.sh (func_all_modules): Add section for <stdarg.h>.
22570
22571 2006-05-08  Bruno Haible  <bruno@clisp.org>
22572
22573         * m4/stdarg.m4: New file, from GNU gettext.
22574
22575 2006-05-08  Bruno Haible  <bruno@clisp.org>
22576
22577         * config/srclist.txt (build-aux/config.rpath): different from latest
22578         release.
22579
22580 2006-05-08  Bruno Haible  <bruno@clisp.org>
22581
22582         * build-aux/config.rpath: Add support for Sun C 5.9 on Linux.
22583
22584 2006-05-05  Jim Meyering  <jim@meyering.net>
22585
22586         * m4/warning.m4: New file, derived from bison's file by the same name.
22587
22588 2006-05-03  Bruno Haible  <bruno@clisp.org>
22589
22590         * lib/stdint_.h: Shorter URL.
22591         * lib/inttypes.h: Likewise.
22592
22593 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
22594
22595         * modules/inttypes (Maintainer): Change from Derek Price to 'all'.
22596
22597 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
22598
22599         * lib/verify.h: Document the internals better.  Most of this change
22600         was written by Bruno Haible.
22601
22602 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
22603
22604         * doc/verify.texi: New file, partly based on a proposal by
22605         Bruno Haible.
22606
22607 2006-05-02  Bruno Haible  <bruno@clisp.org>
22608
22609         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Move the include_next
22610         test from here...
22611         * m4/_inttypes_h.m4 (gl_INTTYPES_H): ... to here.
22612
22613 2006-04-29  Bruno Haible  <bruno@clisp.org>
22614
22615         * lib/gcd.c: Use WORD_T and GCD instead of unsigned long and gcd.
22616         Suggested by Oskar Liljeblad <oskar@osk.mine.nu>.
22617
22618 2006-04-29  Bruno Haible  <bruno@clisp.org>
22619
22620         * gnulib-tool: Make --update option actually work.
22621
22622 2006-04-29  Bruno Haible  <bruno@clisp.org>
22623
22624         * doc/gcd.texi: New file.
22625         * doc/gnulib.texi: Include it.
22626
22627 2006-04-25  Paul Eggert  <eggert@cs.ucla.edu>
22628
22629         * lib/getdate.y (get_date): When adding relative date, start with the
22630         initial time, not with the result of the first mktime call.
22631
22632 2006-04-25  Bruno Haible  <bruno@clisp.org>
22633
22634         * gnulib-tool (func_import): Output the include directives in three
22635         blocks, sorted separately.
22636         Reported by Ben Pfaff <blp@cs.stanford.edu>.
22637
22638 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
22639
22640         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use prototype
22641         to define main with arguments, for C++.  Reported by Eric Blake.
22642         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC):
22643         Prefer 'int main ()' to 'int main (void)', for C++.
22644         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Likewise.
22645         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Specify a return type
22646         for 'main', for C99 and C++.
22647
22648 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
22649
22650         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Use return, not exit.
22651         Don't assume that exit status -1 is valid.
22652         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
22653         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
22654         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Likewise.
22655         * m4/readdir.m4 (GL_FUNC_READDIR): Include <stdlib.h>.
22656         * m4/rename.m4 (vb_FUNC_RENAME): Likewise.
22657         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use AC_RUN_IFELSE,
22658         not AC_TRY_RUN.  Use return, not exit.  Don't assume that
22659         functions can be used without declaring them, or that you can
22660         exit with status -1.
22661         * m4/utimes-null.m4 (gl_FUNC_UTIMES_NULL): Likewise.
22662
22663 2006-04-24  Karl Berry  <karl@gnu.org>
22664
22665         * config/srclist.txt (longdouble.m4): sync lost.
22666
22667 2006-04-24  Eric Blake  <ebb9@byu.net>
22668
22669         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Avoid unused variable warning.
22670
22671 2006-04-24  Bruno Haible  <bruno@clisp.org>
22672
22673         * m4/poll.m4 (gl_FUNC_POLL): When cross-compiling, reject also the
22674         poll() implementation in AIX.
22675         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
22676
22677 2006-04-24  Bruno Haible  <bruno@clisp.org>
22678
22679         * m4/poll.m4 (gl_FUNC_POLL): Rearrange code, so that POLL_H gets
22680         assigned exactly once.
22681
22682 2006-04-23  Claudio Fontana  <claudio@gnu.org>
22683             Bruno Haible  <bruno@clisp.org>
22684
22685         * modules/gettext (Makefile.am): Add a -I flag for <libintl.h>.
22686         * gnulib-tool (func_emit_lib_Makefile_am): Emit empty default value
22687         for AM_CPPFLAGS.
22688
22689 2006-04-23  Bruno Haible  <bruno@clisp.org>
22690
22691         * modules/copy-file: Depend on unistd.
22692         * modules/execute: Likewise.
22693         * modules/fatal-signal: Likewise.
22694         * modules/findprog: Likewise.
22695         * modules/mkdtemp : Likewise.
22696         * modules/pipe: Likewise.
22697         * modules/wait-process: Likewise.
22698
22699 2006-04-23  Bruno Haible  <bruno@clisp.org>
22700
22701         * lib/fwriteerror.c (fwriteerror): Call fclose also when an error
22702         condition was already detected.
22703         Reported by Ben Pfaff <blp@cs.stanford.edu>.
22704
22705 2006-04-23  Bruno Haible  <bruno@clisp.org>
22706
22707         * lib/copy-file.c: Include <unistd.h> unconditionally.
22708         * lib/execute.c: Likewise.
22709         * lib/fatal-signal.c: Likewise.
22710         * lib/findprog.c: Likewise.
22711         * lib/mkdtemp.c: Likewise.
22712         * lib/pipe.h: Likewise.
22713         * lib/pipe.c: Likewise.
22714         * lib/wait-process.h: Likewise.
22715
22716 2006-04-23  Bruno Haible  <bruno@clisp.org>
22717
22718         * gnulib-tool (func_usage): Fix --import description. Document
22719         --update.
22720         (func_import): Create temporary file in a temporary directory, if
22721         --dry-run is specified. Silence errors from 'grep' when there are no
22722         m4 files in $m4dir.
22723         (func_create_testdir): Silence errors from 'grep' when there are no
22724         m4 files in $m4dir.
22725         Reported by Karl Berry <karl@freefriends.org>.
22726
22727 2006-04-20  Bruno Haible  <bruno@clisp.org>
22728
22729         * m4/argp.m4 (gl_ARGP): Don't call AC_CHECK_DECLS_ONCE with more than
22730         one argument, so that the code will be portable to Autoconf 2.60.
22731         * m4/getlogin_r.m4 (gl_PREREQ_GETLOGIN_R): Likewise.
22732         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
22733         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO): Likewise.
22734
22735 2006-04-19  Derek Price  <derek@ximbiot.com>
22736             Eric Blake  <ebb9@byu.net>
22737
22738         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Use </full/path.h>
22739         rather than "/full/path.h".  Update comment to match.  Shorten &
22740         generalize m4_translit call via AS_TR_CPP.
22741
22742 2006-04-19  Derek Price  <derek@ximbiot.com>
22743             Eric Blake  <ebb9@byu.net>
22744
22745         * lib/inttypes.h: Correct grammar in comment.
22746
22747 2006-04-18  Derek Price  <derek@ximbiot.com>
22748             Paul Eggert  <eggert@cs.ucla.edu>
22749
22750         * modules/inttypes: New file.
22751         * modules/strtoimax, modules/strtoumax: Depend on inttypes.
22752
22753 2006-04-18  Derek Price  <derek@ximbiot.com>
22754             Paul Eggert  <eggert@cs.ucla.edu>
22755
22756         * m4/_inttypes_h.m4, m4/full-header-path.m4, m4/include_next.m4:
22757         New files.
22758
22759 2006-04-18  Derek Price  <derek@ximbiot.com>
22760             Paul Eggert  <eggert@cs.ucla.edu>
22761
22762         * lib/inttypes.h: New file.
22763         * lib/strtoimax.c: Assume <inttypes.h>.
22764
22765 2006-04-15  Paul Eggert  <eggert@cs.ucla.edu>
22766
22767         * lib/utimens.c (futimens): glibc futimesat messes up if /proc
22768         isn't mounted.  Problem reported by Kir Kolyshkin.
22769
22770 2006-04-13  Paul Eggert  <eggert@cs.ucla.edu>
22771
22772         * lib/regcomp.c (init_dfa): Don't use wchar_t or wctype_t if
22773         RE_ENABLE_I18N is not defined.  Problem reported by Mark D. Baushke via
22774         Derek R. Price.
22775         * lib/regex.h (RE_DUP_MAX): Update comment to match current
22776         implementation.
22777
22778 2006-04-12  Eric Blake  <ebb9@byu.net>
22779
22780         * modules/time_r (Makefile.am): Remove lib_SOURCES line, as this
22781         is now done automatically by the corresponding Autoconf macro.
22782
22783 2006-04-11  Paul Eggert  <eggert@cs.ucla.edu>
22784
22785         * m4/time_r.m4 (gl_TIME_R): Add AC_LIBSOURCES for time_r.c and
22786         time_r.h.
22787
22788 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
22789
22790         Merge regex changes from libc, removing some of our
22791         POSIX-conformance changes that were rejected and redoing them in a
22792         less-intrusive way.
22793
22794         * lib/regcomp.c (re_compile_internal, init_dfa):
22795         Length arg is now size_t, not Idx.  All uses changed.
22796         (peek_token): Forward decl now says internal_function.
22797         (__re_error_msgid, __re_error_msgid_idx):
22798         Now static rather than extern with attribute_hidden.
22799         (re_compile_pattern) [!defined _LIBC]: Use K&R-style defn.
22800         For some reason libc prefers K&R style defns for external functions.
22801         (regerror) [!defined _LIBC]: Likewise.
22802         (re_set_syntax, re_compile_fastmap, regcomp, regfree, re_comp):
22803         (seek_collating_symbol_entry, lookup_collation_sequence_value):
22804         (build_range_exp, build_collating_symbol):
22805         Use K&R-style defn.
22806         (re_compile_fastmap): Use '\0' to memset, not 0.
22807         (utf8_sb_map): Make the calculations more obvious.
22808         (init_dfa, parse_bracket_exp, build_charclass_op):
22809         Call calloc and cast result, as glibc does.
22810         (init_word_char, fetch_token, peek_token, peek_token_bracket):
22811         (build_range_exp, build_collating_symbol):
22812         Now internal functions.
22813
22814         * lib/regex.c [!defined _LIBC]: Allow compiling with C++ compilers.
22815
22816         * lib/regex.h (__USE_GNU_REGEX): New macro.  Don't depend on
22817         _REGEX_SOURCE any more; depend on _GNU_SOURCE instead.
22818         Don't depend on VMS; depend on __VMS instead, for POSIX
22819         namespace cleanness.
22820         (regoff_t): Define to ssize_t, not long int.
22821
22822         Remove the REG_ macros named below.  Instead, make the old names
22823         (e.g., RE_BACKSLASH_ESCAPE_IN_LISTS) visible only if
22824         __USE_GNU_REGEX.
22825         (REG_BACKSLASH_ESCAPE_IN_LISTS):
22826         (REG_BK_PLUS_QM, REG_CHAR_CLASSES, REG_CONTEXT_INDEP_ANCHORS):
22827         (REG_CONTEXT_INDEP_OPS, REG_CONTEXT_INVALID_OPS):
22828         (REG_DOT_NEWLINE, REG_DOT_NOT_NULL, REG_HAT_LISTS_NOT_NEWLINE):
22829         (REG_INTERVALS, REG_LIMITED_OPS, REG_NEWLINE_ALT):
22830         (REG_NO_BK_BRACES, REG_NO_BK_PARENS, REG_NO_BK_REFS):
22831         (REG_NO_BK_VBAR, REG_NO_EMPTY_RANGES):
22832         (REG_UNMATCHED_RIGHT_PAREN_ORD, REG_NO_POSIX_BACKTRACKING):
22833         (REG_NO_GNU_OPS, REG_DEBUG, REG_INVALID_INTERVAL_ORD):
22834         (REG_IGNORE_CASE, REG_CARET_ANCHORS_HERE):
22835         (REG_CONTEXT_INVALID_DUP, REG_NO_SUB, REG_SYNTAX_EMACS):
22836         (REG_SYNTAX_AWK, REG_SYNTAX_GNU_AWK, REG_SYNTAX_POSIX_AWK):
22837         (REG_SYNTAX_GREP, REG_SYNTAX_EGREP, REG_SYNTAX_POSIX_EGREP):
22838         (REG_SYNTAX_ED, REG_SYNTAX_SED, _REG_SYNTAX_POSIX_COMMON):
22839         (REG_SYNTAX_POSIX_BASIC, REG_SYNTAX_POSIX_MINIMAL_BASIC):
22840         (REG_SYNTAX_POSIX_EXTENDED, REG_SYNTAX_POSIX_MINIMAL_EXTENDED):
22841         (REG_DUP_MAX, REG_UNALLOCATED, REG_REALLOCATE, REG_FIXED):
22842         (REG_NREGS):
22843         Remove.  All uses replaced by the old RE_* names.
22844         (RE_BACKSLASH_ESCAPE_IN_LISTS):
22845         (RE_BK_PLUS_QM, RE_CHAR_CLASSES, RE_CONTEXT_INDEP_ANCHORS):
22846         (RE_CONTEXT_INDEP_OPS, RE_CONTEXT_INVALID_OPS):
22847         (RE_DOT_NEWLINE, RE_DOT_NOT_NULL, RE_HAT_LISTS_NOT_NEWLINE):
22848         (RE_INTERVALS, RE_LIMITED_OPS, RE_NEWLINE_ALT):
22849         (RE_NO_BK_BRACES, RE_NO_BK_PARENS, RE_NO_BK_REFS):
22850         (RE_NO_BK_VBAR, RE_NO_EMPTY_RANGES):
22851         (RE_UNMATCHED_RIGHT_PAREN_ORD, RE_NO_POSIX_BACKTRACKING):
22852         (RE_NO_GNU_OPS, RE_DEBUG, RE_INVALID_INTERVAL_ORD):
22853         (RE_IGNORE_CASE, RE_CARET_ANCHORS_HERE):
22854         (RE_CONTEXT_INVALID_DUP, RE_NO_SUB):
22855         Don't bother having these macros be independent of each others'
22856         values, since they no longer exist in the POSIX name space.
22857
22858         Rename the following member names back to their old names,
22859         unless !__USE_GNU_REGEX.  All uses changed back.
22860         (buffer): Renamed from re_buffer.
22861         (allocated): Renamed from re_allocated.
22862         (used): Renamed from re_used.
22863         (syntax): Renamed from re_syntax.
22864         (fastmap): Renamed from re_fastmap.
22865         (translate): Renamed from re_translate.
22866         (can_be_null): Renamed from re_can_be_null.
22867         (regs_allocated): Renamed from re_regs_allocated.
22868         (fastmap_accurate): Renamed from re_fastmap_accurate.
22869         (no_sub): Renamed from re_no_sub.
22870         (not_bol): Renamed from re_not_bol.
22871         (not_eol): Renamed from re_not_eol.
22872         (newline_anchor): Renamed from re_newline_anchor.
22873         (num_regs): Renamed from rm_num_regs.
22874         (start): Renamed from rm_start.
22875         (end): Renamed from rm_end.
22876
22877         (free_state): Move up a bit.
22878
22879         * lib/regex_internal.h (inline) [__GNUC__ < 3 && defined _LIBC]:
22880         #define to be empty.
22881         (ASCII_CHARS): New macro, replacing all uses of 0x80 and/or SBC_MAX / 2
22882         when that is what is intended.
22883         (SBC_MAX): Define to UCHAR_MAX + 1, not 256.
22884         (__re_error_msgid, __re_error_msgid_idx): Remove decls; not needed.
22885         (MAX): New macro.
22886         (re_xmalloc, re_calloc, re_xrealloc, re_x2realloc): Remove.
22887         All uses changed back to re_malloc, etc.  It's now the caller's
22888         responsibility to check for overflow; all callers changed.
22889         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc, re_xnrealloc):
22890         (re_x2nrealloc): Remove.
22891         (free_state): Remove decl.
22892
22893         * lib/regexc.c (regexec, re_match, re_search, re_match_2, re_search_2):
22894         (re_set_registers, re_exec):
22895         Use K&R-style defn.
22896
22897         2006-01-31  Roland McGrath  <roland@redhat.com>
22898
22899         * lib/regcomp.c (calc_eclosure_iter): Remove dead variables.
22900         Reported by Mike Frysinger <vapier@gentoo.org>.
22901
22902         2006-01-15  Andreas Jaeger  <aj@suse.de>
22903
22904         [BZ #1950]
22905         * lib/regex_internal.c (re_string_reconstruct): Adjust for
22906         build_wcs_upper_buffer change.
22907         (build_wcs_upper_buffer): Change return type.
22908
22909         2005-12-10  Ulrich Drepper  <drepper@redhat.com>
22910
22911         * lib/regex_internal.h: Include <stdint.h> if available.
22912
22913         2005-12-06  Paolo Bonzini  <bonzini@gnu.org>
22914
22915         * lib/regex_internal.h (SIZE_MAX): Provide a default definition.
22916
22917         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
22918
22919         * lib/regcomp.c: Adjust for changed secondary hash function.
22920
22921         2005-09-30  Ulrich Drepper  <drepper@redhat.com>
22922
22923         * lib/regex.h: Pretty printing.
22924         Clean up namespace a bit.
22925
22926         2005-09-30  Jakub Jelinek  <jakub@redhat.com>
22927
22928         * lib/regexec.c (update_cur_sifted_state, check_arrival,
22929         check_arrival_add_next_nodes): Avoid using uninitialized variable.
22930
22931         2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
22932                     Ulrich Drepper  <drepper@redhat.com>
22933
22934         [BZ #1302]
22935         * lib/regex_internal.h (bitset_t): Renamed from bitset.  All uses
22936         changed.
22937         (bitset_word_t): Renamed from bitset_word.  All uses changed.
22938
22939         2005-09-22  Ulrich Drepper  <drepper@redhat.com>
22940
22941         [BZ #281]
22942         * lib/regex.h: Define RE_TRANSLATE_TYPE as unsigned char *.
22943         * lib/regcomp.c: Remove unnecessary uses of
22944         unsigned RE_TRANSLATE_TYPE.
22945         * lib/regex_internal.h: Likewise.
22946         * lib/regex_internal.c: Likewise.
22947         * lib/regexec.c: Likewise.
22948         Based on a patch by Stepan Kasal <kasal@ucw.cz>.
22949
22950         2005-09-07  Ulrich Drepper  <drepper@redhat.com>
22951
22952         * lib/regexec.c (find_recover_state): Remove unnecessary
22953         initialization.
22954         (transit_state_bkref): Make DFA a const pointer.
22955         (get_subexp): Likewise.
22956         (check_arrival): Likewise.
22957         (update_cur_sifted_state): Likewise.
22958         (re_search_internal): Likewise.
22959         (prune_impossible_nodes): Likewise.
22960         (acquire_init_state_context): Likewise.
22961         (proceed_next_node): Likewise.
22962         (set_regs): Likewise.
22963         (free_fail_stack_return): Likewise.
22964         (check_arrival_expand_ecl): Mark DFA parameter as const.
22965         (check_arrival_expand_ecl_sub): Likewise.
22966         (check_subexp_limits): Likewise.
22967         (sub_epsilon_src_nodes):  Likewise.
22968         (add_epsilon_src_nodes):  Likewise.
22969         (merge_state_array): Likewise.
22970         (update_regs): Likewise.
22971         (build_trtable): Likewise.
22972         (sift_states_backward): Mark MCTX parameter as const.
22973         (build_sifted_states): Likewise.
22974         (update_cur_sifted_state): Likewise.
22975         (sift_states_mkref): Likewise.
22976         (check_arrival_expand_ecl): Mark eclosure as const.
22977         (check_dst_limits_calc_pos_1): Likewise.
22978         * lib/regex_internal.h (re_match_context_t): Make dfa a const
22979         pointer.
22980
22981         2005-09-06  Ulrich Drepper  <drepper@redhat.com>
22982
22983         * lib/regexec.c (merge_state_with_log): Define dfa as const pointer.
22984         (transit_state_sb): Likewise.
22985         (transit_state_mb): Likewise.
22986         (sift_states_iter_mb): Likewise.
22987         (check_arrival_add_next_nodes): Likewise.
22988         (check_node_accept_bytes): Change first parameter to pointer-to-const.
22989         [_LIBC] (re_search_2_stub): Use mempcpy.
22990
22991         * lib/regex_internal.c (re_string_reconstruct): Avoid calling
22992         mbrtowc for very simple UTF-8 case.
22993
22994         * lib/regex_internal.c (re_acquire_state): Make DFA pointer arg
22995         a pointer-to-const.
22996         (re_acquire_state_context): Likewise.
22997         * lib/regex_internal.h: Adjust prototypes.
22998
22999         * lib/regex.c: Prevent using C++ compilers.
23000
23001         * lib/regex_internal.c (re_acquire_state): Minor code rearrangement.
23002         (re_acquire_state_context): Likewise.
23003
23004 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
23005
23006         * modules/regex (Depends-on): Add ssize_t.
23007
23008 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
23009
23010         * m4/regex.m4 (gl_REGEX): Check for new glibc interface to
23011         translation table.
23012
23013 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
23014
23015         * doc/gnulib-tool.texi (Modified imports): pathname -> file name.
23016
23017 2006-03-29  Mark D. Baushke  <mdb@gnu.org>
23018             Bruno Haible  <bruno@clisp.org>
23019
23020         * lib/stdint_.h: On OpenBSD, don't redefine types already included in
23021         <sys/types.h> and <inttypes.h>.
23022
23023 2006-03-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23024
23025         * m4/argz.m4 (gl_FUNC_ARGZ): If we define `error_t', also define
23026         `__error_t_defined', so argp.h will not typedef the former.
23027
23028 2006-03-25  Paul Eggert  <eggert@cs.ucla.edu>
23029
23030         * m4/regex.m4 (gl_REGEX): Don't insist on REG_SYNTAX_POSIX_EGREP,
23031         REG_SYNTAX_EMACS, and REG_IGNORE_CASE.  Settle for the traditional
23032         glibc names.  Even if glibc is changed to conform to POSIX, the
23033         traditional names will be available anyway, since regex depends on
23034         the extensions module.  Also, fix a longstanding typo in the
23035         implementation of Spencer ERE test #75 from grep 2.3.  Problems
23036         reported by Emanuele Giaquinta.  Also, change sense of cached
23037         variable, so that the message makes sense.
23038
23039 2006-03-24  Simon Josefsson  <jas@extundo.com>
23040
23041         * lib/base64.c: Fix problems reported by Eric Blake <ebb9@byu.net>,
23042         including some doc fixes.
23043         (base64_encode_alloc): Fix +1 bug on allocation failures.
23044
23045 2006-03-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23046
23047         * lib/base64.c (base64_encode): Do not read past end of array with
23048         unsanitized input on systems with CHAR_BIT > 8.
23049
23050 2006-03-24  Eric Blake  <ebb9@byu.net>
23051
23052         * lib/time_r.c (copy_string_result): Remove, as it is no longer used.
23053
23054 2006-03-22  Karl Berry  <karl@gnu.org>
23055
23056         * config/srclist.txt (*setenv.[ch]): get from coreutils.
23057         * config/srclistvars.sh (COREUTILS): new var.
23058
23059 2006-03-17  Jim Meyering  <jim@meyering.net>
23060
23061         * m4/regex.m4 (gl_REGEX): Fix typo in last change:
23062         s/_REGEX_WIDE_OFFSETS/_REGEX_LARGE_OFFSETS/.
23063
23064 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
23065
23066         * m4/regex.m4 (gl_REGEX): Don't check for off_t, since the code
23067         no longer needs it.  Instead, check that regoff_t is as least
23068         as wide as ptrdiff_t.
23069
23070         Don't define _REGEX_WIDE_OFFSETS unless using the included regex,
23071         so that our regex.h stays compatible with the installed regex.
23072         This is helpful for installers who configure --without-included-regex.
23073         Problem reported by Emanuele Giaquinta.
23074
23075 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
23076
23077         * lib/regex.h (regoff_t) [defined _REGEX_LARGE_OFFSETS]:
23078         Typedef to long int, not to off_, as POSIX will likely change
23079         in that direction.
23080
23081 2006-03-15  Eric Blake  <ebb9@byu.net>
23082
23083         * m4/dirfd.m4 (gl_FUNC_DIRFD): Use AC_REQUIRE for AC_HEADER_DIRENT.
23084
23085 2006-03-13  Sergey Poznyakoff  <gray@gnu.org.ua>
23086
23087         * lib/argp-help.c (validate_uparams): Fix typo
23088         * lib/argp-parse.c (argp_default_options): Consistently begin help
23089         messages with a lowercase letter.
23090
23091 2006-03-11  Paul Eggert  <eggert@cs.ucla.edu>
23092
23093         * lib/time_r.h (asctime_r, ctime_r): Remove.  These functions can
23094         overrun buffers and shouldn't be used (much as gets shouldn't be
23095         used).
23096         * lib/time_r.c (asctime_r, ctime_r): Likewise.
23097
23098 2006-03-08  Simon Josefsson  <jas@extundo.com>
23099
23100         * m4/gc-random.m4: Permit 'no' as variable values and fix warnings,
23101         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
23102
23103 2006-03-08  Simon Josefsson  <jas@extundo.com>
23104
23105         * m4/gc-random.m4: Call AC_CANONICAL_HOST and use $host_os instead of
23106         $target, suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
23107
23108 2006-03-08  Simon Josefsson  <jas@extundo.com>
23109
23110         * lib/gc-gnulib.c (randomize): Don't open files called 'no', they
23111         signal that configure disabled the device.
23112
23113 2006-03-08  Simon Josefsson  <jas@extundo.com>
23114
23115         * build-aux/maint.mk: Fix refresh-po, to handle no translated
23116         languages.
23117
23118 2006-03-07  Simon Josefsson  <jas@extundo.com>
23119
23120         * modules/getopt (Depends-on): Add unistd.
23121
23122         * modules/unistd: New file.
23123
23124 2006-03-07  Simon Josefsson  <jas@extundo.com>
23125
23126         * modules/gc-random: New file.
23127
23128 2006-03-07  Simon Josefsson  <jas@extundo.com>
23129
23130         * m4/unistd_h.m4: New file.
23131
23132 2006-03-07  Simon Josefsson  <jas@extundo.com>
23133
23134         * m4/readline.m4 (gl_FUNC_READLINE): Rewrite the cached part of the
23135         test to be side-effect free by storing the result in the cache
23136         variable gl_cv_lib_readline, and moving the assignment of
23137         LIBREADLINE and LTLIBREADLINE outside the COMMANDS-TO-SET-IT.
23138         From Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
23139
23140 2006-03-07  Simon Josefsson  <jas@extundo.com>
23141
23142         * m4/gc-random.m4: New file, mostly from gc.m4.  Warn instead of
23143         error on missing devices (the functions will return an error).
23144
23145         * m4/gc.m4: Move random stuff to gc-random.m4
23146
23147 2006-03-07  Simon Josefsson  <jas@extundo.com>
23148
23149         * lib/unistd_.h: New file.
23150
23151 2006-03-07  Simon Josefsson  <jas@extundo.com>
23152
23153         * lib/gc-libgcrypt.c, gc-gnulib.c: Use GC_USE_RANDOM.
23154
23155 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
23156
23157         * m4/unistd_h.m4 (gl_HEADER_UNISTD): Rename, to match modules file.
23158         Problem reported by Juan Manuel Guerrero.
23159
23160 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
23161
23162         * lib/c-stack.c: Include unistd.h unconditionally, since we now assume
23163         the unistd module.
23164         * lib/getlogin_r.c: Likewise.
23165         * lib/getlogin_r.h: Likewise.
23166         * lib/glob.c: Likewise.
23167         * lib/pagealign_alloc.c: Likewise.
23168         * lib/unistd_.h: Remove; no longer needed.
23169
23170 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
23171
23172         * MODULES.html.sh (Support for systems lacking POSIX:2001):
23173         Add unistd.
23174         * modules/c-stack (Depends-on): Add unistd.
23175         * modules/getlogin_r: Likewise.
23176         * modules/glob: Likewise.
23177         * modules/pagealign_alloc: Likewise.
23178         * modules/unistd (Files): Remove lib/unistd_.h.
23179         (EXTRA_DIST): Remove.
23180         (unistd.h): Create using 'echo' rather than 'cp', so that we don't
23181         need unistd_.h.
23182         (MOSTLYCLEANFILES): Remove unistd.h-t.
23183
23184 2006-03-03  Simon Josefsson  <jas@extundo.com>
23185
23186         * build-aux/maint.mk: Add several syntax checks from CoreUtils.
23187
23188 2006-03-03  Simon Josefsson  <jas@extundo.com>
23189
23190         * build-aux/maint.mk: Add refresh-po rule, based on ideas from
23191         libidn and bison.
23192
23193 2006-03-03  Simon Josefsson  <jas@extundo.com>
23194
23195         * build-aux/maint.mk: Add indent target.
23196
23197 2006-03-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de> (tiny change)
23198
23199         * m4/poll.m4 (gl_FUNC_POLL): If we deem poll(2) unacceptable, use
23200         our replacement poll.h in any case, to avoid a differing
23201         declaration from a system header.  Seen on AIX.
23202
23203 2006-03-01  Simon Josefsson  <jas@extundo.com>
23204
23205         * lib/readline.c: Fix typo, tiny patch from Stepan Kasal
23206         <kasal@ucw.cz>.
23207
23208 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
23209
23210         * modules/gettime (Depends-on): Add extensions module.
23211         * modules/nanosleep (Depends-on): Likewise.
23212         * modules/settime (Depends-on): Likewise.
23213
23214 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
23215
23216         * m4/clock_time.m4 (gl_CLOCK_TIME): Require gl_USE_SYSTEM_EXTENSIONS,
23217         not merely AC_GNU_SOURCE, for the benefit of Solaris 10 when compiled
23218         pedantically.
23219         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
23220         * m4/timespec.m4 (gl_TIMESPEC): Likewise.
23221
23222         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use "=" with "test",
23223         not "==".  Reported by Ralf Wildenhues.
23224
23225 2006-03-01  Karl Berry  <karl@gnu.org>
23226
23227         * doc/Copyright/request-*: new files, synced from gnuorg.
23228
23229 2006-03-01  Karl Berry  <karl@gnu.org>
23230
23231         * config/srclist.txt (Copyright/*): new entries.
23232
23233 2006-02-28  Simon Josefsson  <jas@extundo.com>
23234
23235         * lib/getopt.c: Protect #include of unistd.h, for MSVS.
23236
23237 2006-02-27  Simon Josefsson  <jas@extundo.com>
23238
23239         * lib/base64.h: Indent #define's.  From Jim Meyering
23240         <jim@meyering.net>.
23241
23242 2006-02-27  Jim Meyering  <jim@meyering.net>
23243
23244         Revert the change of 2006-02-24, so these files can continue
23245         to be sync'd from gettext.
23246         * lib/mkdtemp.c, setenv.c, unsetenv.c: *Un*-normalize inclusion
23247         of `config.h'.
23248
23249 2006-02-26  Paul Eggert  <eggert@cs.ucla.edu>
23250
23251         * modules/intprops: New file.
23252         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
23253         Add intprops.
23254         * modules/getloadavg (Files): Remove lib/intprops.h.
23255         (Depends-on): Add intprops.
23256         * modules/human: Likewise.
23257         * modules/inttostr: Likewise.
23258         * modules/openat: Likewise.
23259         * modules/sig2str: Likewise.
23260         * modules/userspec: Likewise.
23261         * modules/utimecmp: Likewise.
23262         * modules/xnanosleep: Likewise.
23263         * modules/xstrtol: Likewise.
23264
23265 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny changes)
23266
23267         * modules/xstrtod: Omit xstrtod.h, xstrtod.c; they're in LIB_SOURCES.
23268         * modules/lock-tests (TESTS): Use $(EXEEXT).
23269         * modules/tls-tests: Likewise.
23270         * modules/argp-tests: Likewise.
23271         (check_PROGRAMS): New var, replacing...
23272         (noinst_PROGRAMS, test_argp_SOURCES): Remove.
23273
23274 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23275
23276         * lib/mkdtemp.c, lib/setenv.c, lib/unsetenv.c: Normalize inclusion of
23277         `config.h'.
23278
23279 2006-02-24  Paul Eggert  <eggert@cs.ucla.edu>
23280
23281         * lib/glob.c: Say "invalid" rather than "illegal" in comments.
23282
23283 2006-02-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23284
23285         Sync from coreutils.
23286         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Require gl_FUNC_LCHMOD and
23287         gl_CHDIR_SAFER.
23288
23289 2006-02-22  Jim Meyering  <jim@meyering.net>
23290
23291         Sync from coreutils.
23292         * m4/chdir-safer.m4: New file.
23293
23294 2006-02-20  Paul Eggert  <eggert@cs.ucla.edu>
23295
23296         * lib/getcwd.c (AT_FDCWD): Work around a bug in Solaris 9 and 10, where
23297         AT_FDCWD exceeds INT_MAX.
23298         * lib/openat.h (AT_FDCWD): Likewise.
23299
23300 2006-02-17  Eric Blake  <address@hidden>
23301
23302         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Fix caching error.
23303
23304 2006-02-16  Simon Josefsson  <jas@extundo.com>
23305
23306         * modules/getaddrinfo (Depends-on): Add sys_socket.
23307
23308 2006-02-15  Simon Josefsson  <jas@extundo.com>
23309
23310         * build-aux/maint.mk: Add dsyntax-check rule.
23311
23312 2006-02-15  Eric Blake  <ebb9@byu.net>
23313
23314         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Don't attempt using
23315         winsock2.h or ws2tcpip.h when sys/socket.h is present. Fixes
23316         'present but cannot compile' warnings on cygwin.
23317         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Use gl_HEADER_SYS_SOCKET.  Don't
23318         use ws2tcpip.h if sys/socket.h works.
23319         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Use gl_HEADER_SYS_SOCKET.
23320         (gl_GETADDRINFO): Don't use ws2tcpip.h when sys/socket.h is present.
23321
23322 2006-02-14  Simon Josefsson  <jas@extundo.com>
23323
23324         * modules/maintainer-makefile (Files): Rename.
23325
23326         * build-aux/GNUmakefile: Rename Makefile.maint to maint.mk
23327         and (the local) Makefile.cfg to maint-cfg.mk.
23328
23329         * build-aux/Makefile.maint, build-aux/maint.mk: Renamed the former
23330         to the latter.
23331
23332         * modules/maintainer-makefile: New module.
23333
23334         * build-aux/Makefile.maint: New file, from GNU CoreUtils, although
23335         severaly stripped to make it possible to build it up from scratch
23336         with reliable tests.
23337
23338         * build-aux/GNUmakefile: New file, from GNU CoreUtils with some
23339         fixes to permit overriding the default actions when configure and
23340         makefile are not available.
23341
23342 2006-02-14  Paul Eggert  <eggert@cs.ucla.edu>
23343
23344         Sync from coreutils.
23345         * modules/lstat (Depends-on): Don't depend on xalloc.
23346         (License): Change from GPL to LGPL, since this is now simply a
23347         replacement for a libc function.
23348
23349 2006-02-14  Jim Meyering  <jim@meyering.net>
23350
23351         Sync from coreutils.
23352
23353         Eliminate the unwelcome (albeit unlikely) possibility of xmalloc
23354         failure on deficient systems, and simplify gnulib lgpl dependencies.
23355         * lib/lstat.c (rpl_lstat): Rewrite to use stat() in place of the
23356         xmalloc/lstat combination.  Based on a patch from Bruno Haible.
23357
23358         * lib/xalloc-die.c: Remove unused definition of N_.
23359
23360 2006-02-14  Jim Meyering  <jim@meyering.net>
23361
23362         Sync from coreutils.
23363         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Invoke
23364         AC_CHECK_FUNCS(getmntent) unconditionally so that tests of
23365         $ac_cv_func_getmntent (e.g., in gl_LIST_MOUNTED_FILE_SYSTEMS) need not
23366         double-quote uses of that variable, to accommodate the rare case in
23367         which getmntent is available in none of the libraries checked.  This
23368         happens at least on FreeBSD 5.0.
23369
23370 2006-02-13  Simon Josefsson  <jas@extundo.com>
23371
23372         * gnulib-tool (Usage): Fix --import, from
23373         karl@freefriends.org (Karl Berry).
23374
23375 2006-02-13  Sergey Poznyakoff  <gray@gnu.org.ua>
23376
23377         * lib/argp-fmtstream.c: Restore another bugfix lost on 2005-12-12
23378
23379 2006-02-07  Sergey Poznyakoff  <gray@gnu.org.ua>
23380
23381         * lib/argp-namefrob.h: Restore changes accidentally lost during the
23382         "autoupdate" on 2005-12-12.
23383
23384 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
23385
23386         * modules/closeout (Depends-on): Remove atexit.
23387
23388 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
23389
23390         * lib/closeout.c (close_stdout): Don't assume 'bool' converts nonzero
23391         ints to 0 or 1, as this isn't true for the stdbool.h substitute.
23392
23393 2006-02-05  Paul Eggert  <eggert@cs.ucla.edu>
23394
23395         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Don't #define
23396         __EXTENSIONS__ if this causes compilation to fail.  Problem
23397         reported by Nelson H. F. Beebe with Solaris 10 and Sun C 5.7
23398         c89 -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED.
23399
23400 2006-01-27  Paul Eggert  <eggert@cs.ucla.edu>
23401
23402         * lib/fnmatch.c (L_): Renamed from L, to work around a bug in
23403         Mac OS X 10.3.9 with GCC 3 reported by Claudio Fontana in
23404         <http://lists.gnu.org/archive/html/bug-gnulib/2006-01/msg00074.html>.
23405         All uses changed.
23406
23407 2006-01-26  Simon Josefsson  <jas@extundo.com>
23408
23409         * lib/socket_.h: Set WINVER to 0x0501, to make sure getaddrinfo
23410         prototype is visible on mingw32.
23411
23412         * lib/getaddrinfo.h: Define EAI_ADDRFAMILY and EAI_SYSTEM if not set,
23413         for mingw32.
23414
23415         * lib/gai_strerror.c, getaddrinfo.h: Protect netdb.h #include (for
23416         mingw32).
23417
23418 2006-01-26  Paul Eggert  <eggert@cs.ucla.edu>
23419
23420         * lib/fts.c (diropen): Open with O_NOCTTY | O_NONBLOCK too.  Don't
23421         attempt to open for write; this always fails, at least on POSIX
23422         hosts.  This reinstates the 2006-01-09 change, which was
23423         inadvertently removed.
23424
23425 2006-01-26  Bruno Haible  <bruno@clisp.org>
23426
23427         * gnulib-tool (func_import): Use "trap 'exit $?' instead of "trap :".
23428         Reported by Paul Eggert.
23429
23430 2006-01-26  Bruno Haible  <bruno@clisp.org>
23431             Paul Eggert  <eggert@cs.ucla.edu>
23432
23433         * lib/stdbool_.h (_Bool)
23434         [(! (defined __cplusplus || defined __BEOS__)
23435           && !defined __GNUC__
23436           && !(defined __HP_cc || defined __xlc__
23437                || (defined __SUNPRO_C && (__SUNPRO_C < 0x550 || __STDC__ == 1))
23438                || defined __sgi))]:
23439         #define to signed char in these cases too; this simplifies
23440         the code (so that we don't have to worry about HP-UX, AIX, SunPRO,
23441         etc., separately) and makes it more conservative.
23442
23443 2006-01-25  Simon Josefsson  <jas@extundo.com>
23444
23445         * m4/getaddrinfo.m4: Look for getaddrinfo inside ws2tcip.h and
23446         -lws2_32.  Protect sys/socket.h and netdb.h #include's.  Include
23447         ws2tcpip.h with WINVER=0x0501.  All for mingw32.
23448
23449 2006-01-25  Sergey Poznyakoff  <gray@gnu.org.ua>
23450
23451         * lib/argp-namefrob.h: Bugfix. Remove stray #
23452
23453 2006-01-25  Paul Eggert  <eggert@cs.ucla.edu>
23454
23455         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for xlc bug if __GCC__ too,
23456         so that we test the test.
23457         Check for yet another HP-UX cc bug involving *bool |= bool.
23458
23459 2006-01-25  Karl Berry  <karl@gnu.org>
23460
23461         * config/srclist.txt (vasnprintf.c): sync lost.
23462
23463 2006-01-25  Jim Meyering  <jim@meyering.net>
23464
23465         Sync from the stable (b5) branch of coreutils:
23466
23467         * lib/fts.c (fts_children): Don't let close() clobber errno from
23468         failed fchdir().
23469
23470         * lib/fts.c (fts_stat): When following a symlink-to-directory,
23471         don't necessarily interpret stat-fails+lstat-succeeds as indicating
23472         a dangling symlink.  That can also happen at least for ELOOP.
23473         The fix: return FTS_SLNONE only when the stat errno is ENOENT.
23474         FYI, this bug predates the inclusion of fts.c in coreutils.
23475
23476         * lib/fts.c (fts_open): Put new maxarglen declaration and uses
23477         in their own block, so pre-c99 compilers don't object.
23478
23479         Avoid the double-free (first in fts_read, second in fts_close) that
23480         would occur when an `active' directory is made inaccessible (e.g.,
23481         via chmod a-x) during a traversal.
23482         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
23483         before returning.  Reproduce this failure by
23484         mkdir -p a/b; cd a; chmod a-x . b
23485         Reported by Stavros Passas.
23486
23487 2006-01-25  Jim Meyering  <jim@meyering.net>
23488
23489         * lib/fileblocks.c: Remove more useless parentheses.
23490         * lib/readutmp.h: Likewise.
23491
23492 2006-01-25  Bruno Haible  <bruno@clisp.org>
23493
23494         * lib/stdbool_.h (_Bool) [IRIX cc]: Define as 'signed char', to avoid
23495         warnings.
23496         Reported by Paul Eggert.
23497
23498 2006-01-25  Bruno Haible  <bruno@clisp.org>
23499
23500         * gnulib-tool (func_import): Use "trap :" instead of "trap -" to get
23501         rid of a trap command. For Solaris sh.
23502         Reported by Mark D. Baushke <mdb@gnu.org>.
23503
23504 2006-01-24  Simon Josefsson  <jas@extundo.com>
23505
23506         * lib/socket_.h (SHUT_WR, SHUT_RDWR): Don't hardcode, suggested by
23507         Bruno.
23508
23509 2006-01-24  Karl Berry  <karl@gnu.org>
23510
23511         * config/srclist.txt (argp-namefrob.h): sync lost.
23512
23513 2006-01-24  Jim Meyering  <jim@meyering.net>
23514
23515         * modules/openat (Files): Add lib/intprops.h.
23516         From Mark D. Baushke.
23517
23518 2006-01-24  Jim Meyering  <jim@meyering.net>
23519
23520         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBSOURCES([intprops.h]).
23521         Reported by Mark D. Baushke.
23522
23523 2006-01-24  Jim Meyering  <jim@meyering.net>
23524
23525         * lib/socket_.h: Remove useless parentheses in uses of cpp `defined'.
23526
23527 2006-01-24  Bruno Haible  <bruno@clisp.org>
23528
23529         * modules/strnlen (Maintainer): Change from glibc to all.
23530
23531 2006-01-24  Bruno Haible  <bruno@clisp.org>
23532
23533         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for IBM and HP-UX bugs.
23534         Patch by Paul Eggert.
23535
23536 2006-01-24  Bruno Haible  <bruno@clisp.org>
23537
23538         * lib/stdbool_.h (_Bool) [__cplusplus]: Don't define if the compiler
23539         already has it.
23540         Report and patch by Albert Chin-A-Young  <china@thewrittenword.com> on
23541         2005-11-26.
23542
23543         * lib/stdbool_.h (_Bool) [HP-UX cc, AIX cc,xlc]: Define as
23544         'signed char' to avoid problems with the built-in _Bool type.
23545         Reported by Paul Eggert on 2005-11-26.
23546
23547 2006-01-24  Bruno Haible  <bruno@clisp.org>
23548
23549         * gnulib-tool (func_import): Avoid constructing complicated sed
23550         expressions inside backquote.
23551         Report and solution by Mark D. Baushke <mdb@gnu.org>.
23552
23553 2006-01-23  Ulrich Drepper  <drepper@redhat.com>
23554
23555         These changes imported from libc.
23556         * lib/getopt.c: Use __fxprintf instead of inline stream orientation
23557         test and two separate function calls.
23558         * lib/strndup.c (__strndup): Add libc_hidden_def.
23559
23560 2006-01-23  Simon Josefsson  <jas@extundo.com>
23561
23562         * modules/lock-tests: Use check_PROGRAMS instead of noinst_PROGRAMS.
23563         Remove the test_*_SOURCES variable: automake infers it by default.
23564         * modules/tls-tests: Likewise.
23565
23566 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
23567
23568         Work around porting bugs reported by Dieter in
23569         <http://lists.gnu.org/archive/html/bug-bison/2006-01/msg00049.html>.
23570         * lib/getopt.c (_NOPROTO): Remove; no longer needed.
23571         Include <stdlib.h> and <unistd.h> in all environments; it's safe now.
23572         Include "getopt.h" first, to check interface.
23573         (getenv): Declare only if defined HAVE_DECL_GETENV &&
23574         !HAVE_DECL_GETENV.
23575         * lib/strndup.c [!_LIBC]: Include "strndup.h" to get prototype.
23576         (__strndup): Revert to K&R-style function dfns, the glibc style.
23577         * lib/strnlen.c: Don't claim it's taken from glibc; it's not.
23578         (strnlen, __strnlen): Remove #defines and #undefs; not needed.
23579         Include strnlen.h first, to get prototype properly.
23580         (strnlen): Renamed from __strnlen.
23581         Remove weak alias.
23582
23583 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
23584
23585         * m4/getopt.m4 (gl_PREREQ_GETOPT): Check for getenv decl.
23586
23587 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
23588
23589         * config/srclist.txt: Adjust to reflect glibc reorganization.
23590         This affects only comments.
23591
23592 2006-01-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
23593
23594          * gnulib-tool, build-aux/csharpcomp.sh.in: Do not pass `-q' to mktemp.
23595          Reported by Bruce Korb <bkorb@gnu.org>.
23596
23597 2006-01-22  Paul Eggert  <eggert@cs.ucla.edu>
23598
23599         * lib/quotearg.c (quotearg_buffer_restyled): Add "default: break;"
23600         to pacify gcc -Wswitch-default.
23601
23602 2006-01-22  Bruno Haible  <bruno@clisp.org>
23603
23604         * lib/vasnprintf.c (VASNPRINTF): In the computation of the size of the
23605         temporary buffer for sprintf, take into account the precision also
23606         for 'd', 'i', 'u', 'o', 'x', 'X'.
23607
23608 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
23609
23610         * modules/argp-tests: New module
23611         * tests/test-argp.c: New file
23612         * tests/test-argp-2.sh: New file
23613
23614 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
23615
23616         * lib/argp-help.c (usage_long_opt): Do not print DOC options.
23617         (__argp_base_name): Removed
23618         * lib/argp-namefrob.h (__argp_basename): Removed definition. Was a
23619         typo.
23620         (__argp_base_name): Provide macro definition or extern declaration
23621         depending on the configuration
23622
23623 2006-01-20  Simon Josefsson  <jas@extundo.com>
23624
23625         * modules/inet_ntop (Depends-on): Depend on sys_socket.
23626
23627 2006-01-20  Simon Josefsson  <jas@extundo.com>
23628
23629         * lib/inet_ntop.h: Unconditionally include sys/socket.h.
23630
23631 2006-01-20  Paul Eggert  <eggert@cs.ucla.edu>
23632
23633         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Use -Wl,-z,ignore
23634         rather than -Xlinker -z -Xlinker ignore, as it's more portable.
23635         Suggested by Bruno Haible.
23636
23637 2006-01-20  Karl Berry  <karl@gnu.org>
23638
23639         * config/srclist.txt (argp-fmtstream.h, localcharset.c): comment out
23640         until changes propagate, I guess.
23641
23642 2006-01-19  Simon Josefsson  <jas@extundo.com>
23643
23644         * m4/socklen.m4: Look in ws2tcpip.h too, for mingw32.
23645
23646 2006-01-19  Simon Josefsson  <jas@extundo.com>
23647
23648         * lib/socket_.h: Map SHUT_RD, SHUT_WR, SHUT_RDWR correctly.
23649
23650 2006-01-19  Simon Josefsson  <jas@extundo.com>
23651
23652         * gnulib-tool: Set check_PROGRAMS.
23653
23654         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
23655         modules/des-tests, modules/gc-arcfour-tests,
23656         modules/gc-arctwo-tests, modules/gc-des-tests,
23657         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
23658         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
23659         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
23660         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
23661         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
23662         modules/md5-tests, modules/readline, modules/rijndael-tests: Use
23663         check_PROGRAMS instead of noinst_PROGRAMS to be able to remove
23664         test_*_SOURCES.
23665
23666 2006-01-18  Simon Josefsson  <jas@extundo.com>
23667
23668         * modules/socklen (Depends-on): Depend on sys_socket.
23669
23670 2006-01-18  Simon Josefsson  <jas@extundo.com>
23671
23672         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
23673         modules/des-tests, modules/gc-arcfour-tests,
23674         modules/gc-arctwo-tests, modules/gc-des-tests,
23675         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
23676         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
23677         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
23678         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
23679         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
23680         modules/md5-tests, modules/readline, modules/rijndael-tests: Add
23681         $(EXEEXT) to automake TESTS variable, for mingw32.
23682
23683 2006-01-17  Simon Josefsson  <jas@extundo.com>
23684
23685         * modules/socklen (Include): Need sys/socket.h.
23686
23687 2006-01-17  Bruno Haible  <bruno@clisp.org>
23688
23689         * modules/ssize_t (Include): Add <sys/types.h>.
23690
23691 2006-01-16  Paul Eggert  <eggert@cs.ucla.edu>
23692
23693         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Don't use ldd, as
23694         it's not portable and it doesn't work with cross-compiles.
23695         Problem reported by Bruno Haible.  Fix missing-$ typo in
23696         'test "gl_cv_ignore_unused_libraries" ...' that prevented
23697         -zignore from being used with Sun's C compiler.
23698
23699 2006-01-12  Simon Josefsson  <jas@extundo.com>
23700
23701         * lib/base64.c: Fix warning, reported by Bruno Haible
23702         <bruno@clisp.org> and patch by Paul Eggert <eggert@CS.UCLA.EDU>.
23703
23704 2006-01-12  Bruno Haible  <bruno@clisp.org>
23705
23706         * modules/ldd: New file.
23707         * build-aux/ldd.sh.in: New file.
23708         * MODULES.html.sh (Support for building libraries and executables): Add
23709         ldd.
23710
23711 2006-01-12  Bruno Haible  <bruno@clisp.org>
23712
23713         * m4/ldd.m4: New file.
23714
23715 2006-01-12  Bruno Haible  <bruno@clisp.org>
23716
23717         * gnulib-tool (func_import, func_create_testdir): Don't go into an
23718         endless loop while replacing $auxdir with build-aux.
23719
23720 2006-01-11  Simon Josefsson  <jas@extundo.com>
23721
23722         * lib/stdint_.h (SIZE_MAX): Add missing (.
23723
23724 2006-01-11  Paul Eggert  <eggert@cs.ucla.edu>
23725
23726         Sync from coreutils.
23727         * lib/md5.c: Fix commentary typos.
23728         (alignof, UNALIGNED_P): No need for a GCC-specific version.
23729         * lib/md5.h (__attribute__): Remove; unused.
23730         * lib/sha1.c: Fix commentary to match md5 better.
23731         * lib/sha1.h (struct sha1_ctx): Use a word buffer, not a byte buffer,
23732         so that we don't need to worry about alignment.  All uses changed.
23733         This merges the 2005-10-28 md5 change into sha1.
23734
23735 2006-01-11  Jim Meyering  <jim@meyering.net>
23736
23737         Sync from coreutils.
23738         * lib/md5.c (OP): Fix spacing.
23739
23740 2006-01-11  Bruno Haible  <bruno@clisp.org>
23741
23742         Ensure automatic ordering between gl_LOCK and gl_ARGP.
23743         * m4/lock.m4 (gl_LOCK_BODY): Renamed from gl_LOCK.
23744         (gl_LOCK): New macro, requiring gl_LOCK_BODY.
23745
23746 2006-01-11  Bruno Haible  <bruno@clisp.org>
23747
23748         Ensure automatic ordering between gl_LOCK and gl_ARGP.
23749         * gnulib-tool (func_import, func_create_testdir): Put gl_LOCK into
23750         the "early" section as well.
23751
23752 2006-01-11  Bruno Haible  <bruno@clisp.org>
23753
23754         Avoid "ar: no archive members specified" error on MacOS X.
23755         * gnulib-tool (func_modules_add_dummy): New function.
23756         (func_import, func_create_testdir): Invoke it.
23757
23758 2006-01-11  Bruno Haible  <bruno@clisp.org>
23759
23760         * gnulib-tool (func_import, func_create_testdir): Replace build-aux
23761         with $auxdir in AC_CONFIG_FILES statements.
23762
23763 2006-01-11  Bruno Haible  <bruno@clisp.org>
23764
23765         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
23766         Initialize also noinst_HEADERS to empty.
23767
23768 2006-01-11  Bruno Haible  <bruno@clisp.org>
23769
23770         * gnulib-tool (AUTOMAKEPATH, AUTOCONF, ACLOCAL, AUTOMAKE): New
23771         variables.
23772         (func_create_megatestdir): Call aclocal, autoconf, automake here, not
23773         autoreconf.
23774
23775 2006-01-11  Bruno Haible  <bruno@clisp.org>
23776
23777         * gnulib-tool (AUTOCONF, ACLOCAL, AUTOMAKE, AUTORECONF): Make
23778         overridable by the user.
23779         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
23780
23781 2006-01-10  Simon Josefsson  <jas@extundo.com>
23782
23783         * modules/sys_socket: New file.
23784
23785 2006-01-10  Simon Josefsson  <jas@extundo.com>
23786
23787         * m4/sys_socket_h.m4: New file.
23788
23789 2006-01-10  Simon Josefsson  <jas@extundo.com>
23790
23791         * lib/socket_.h: New file.
23792
23793 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
23794
23795         * modules/readutmp (Maintainer): Add myself.
23796
23797 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
23798
23799         * m4/memcoll.m4 (gl_MEMCOLL): Don't require AC_FUNC_MEMCMP, undoing
23800         the 2002-12-31 change.  Problem and fix reported by Bruno Haible.
23801         People who are still concerned with buggy memcmp implementations
23802         can invoke gl_FUNC_MEMCMP themselves.
23803
23804 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
23805
23806         * lib/regex_internal.h (BITSET_WORD_BITS):
23807         Work around a bug in 64-bit PGC (before version 6.1-2), where the
23808         preprocessor mishandles large unsigned values as if they were signed.
23809         Problem reported by Claudio Fontana in
23810         <http://lists.gnu.org/archive/html/bug-gnulib/2005-12/msg00061.html>.
23811
23812 2006-01-10  Jim Meyering  <jim@meyering.net>
23813
23814         Avoid the double-free (first in fts_read, second in fts_close) that
23815         would occur when an `active' directory is made inaccessible (e.g.,
23816         via chmod a-x) during a traversal.
23817         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
23818         before returning.  Reproduce this failure by
23819         mkdir -p a/b; cd a; chmod a-x . b
23820         Reported by Stavros Passas.
23821
23822         Sync from coreutils.
23823         * lib/sha1.c: Tweak grammar in a comment.
23824
23825 2006-01-10  Jim Meyering  <jim@meyering.net>
23826
23827         * m4/fpending.m4: Also include <stdio.h>, for Dragonfly.
23828         Patch by Joerg Sonnenberger.
23829
23830 2006-01-10  Bruno Haible  <bruno@clisp.org>
23831
23832         * modules/readutmp: Depend on module free.
23833         * modules/strtok_r: Depend on module restrict.
23834
23835 2006-01-10  Bruno Haible  <bruno@clisp.org>
23836
23837         * modules/gettext (configure.ac): Add an invocation of
23838         AM_GNU_GETTEXT_VERSION. Needed since autoreconf is used by gnulib-tool.
23839
23840 2006-01-10  Bruno Haible  <bruno@clisp.org>
23841
23842         * m4/localcharset.m4 (gl_LOCALCHARSET): Also test for getc_unlocked.
23843         Reported by Werner Lemberg <wl@gnu.org>.
23844
23845 2006-01-10  Bruno Haible  <bruno@clisp.org>
23846
23847         * lib/localcharset.c: Update from GNU gettext.
23848
23849 2006-01-10  Bruno Haible  <bruno@clisp.org>
23850
23851         * lib/argp.h (__const): Remove macro. Use const instead.
23852         * lib/argp-fmtstream.h (__const): Likewise.
23853         * lib/glob_.h (__const): Remove macro.
23854         * lib/glob-libc.h: Use const instead of __const.
23855
23856 2006-01-10  Bruno Haible  <bruno@clisp.org>
23857
23858         * gnulib-tool (func_emit_tests_Makefile_am): Emit an empty SUBDIR
23859         variable.
23860         Needed to avoid an automake error regarding the 'gettext' module.
23861
23862 2006-01-09  Simon Josefsson  <jas@extundo.com>
23863
23864         * modules/inet_ntop (Depends-on): Add restrict.
23865
23866 2006-01-09  Simon Josefsson  <jas@extundo.com>
23867
23868         * modules/gc-rijndael-tests (License): Put under LGPL.
23869
23870         * modules/gc-des-tests (License): Likewise.
23871
23872         * modules/gc-arcfour-tests (License): Likewise.
23873
23874         * modules/gc-arctwo-tests (License): Likewise.
23875
23876         * modules/gc-pbkdf2-sha1-tests (License): Likewise.
23877
23878         * modules/gc-hmac-sha1-tests (Files): Likewise.
23879
23880         * modules/gc-hmac-md5-tests (License): Likewise.
23881
23882         * modules/gc-sha1-tests (License): Likewise.
23883
23884         * modules/gc-md5-tests (License): Likewise.
23885
23886         * modules/gc-md4-tests (License): Likewise.
23887
23888         * modules/gc-md2-tests (License): Likewise.
23889
23890         * modules/gc-tests (License): Likewise.
23891
23892         * modules/des-tests (License): Likewise.
23893
23894         * modules/md4-tests (License): Likewise.
23895
23896         * modules/md2-tests (License): Likewise.
23897
23898 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
23899
23900         Sync from coreutils:
23901
23902         * MODULES.html.sh (build_lib): New section, with new lib-ignore module.
23903         * modules/lib-ignore: New file.
23904         * modules/mkdir-p (Files): Add chdir-safer.c, chdir-safer.h, lchmod.h,
23905         chdir-safer.m4, lchmod.m4.
23906         * modules/openat: Add mkdirat.c, openat-priv.h.
23907
23908 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
23909
23910         Sync from coreutils.
23911         * m4/lib-ignore.m4: New file.
23912         * m4/lchmod.m4: New file.
23913
23914 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
23915
23916         Sync from coreutils.
23917         * lib/chdir-long.c (cdb_free): Don't bother trying to open directory
23918         for write access: POSIX says that must fail.
23919         * lib/fts.c (diropen): Likewise.
23920         * lib/save-cwd.c (save_cwd): Likewise.
23921         * lib/chdir-long.c (cdb_free): Open with O_NOCTTY | O_NONBLOCK as
23922         well, for minor improvements on hosts that lack O_DIRECTORY.
23923         * lib/chown.c (rpl_chown) [CHOWN_MODIFIES_SYMLINK]:
23924         Don't try O_WRONLY unless O_RDONLY failed wth EACCES.
23925         Fall back on chown if open failed with EACCES.
23926
23927         * lib/gettime.c (gettime) [!defined OK_TO_USE_1S_CLOCK]:
23928         Report an error at compile-time if only a 1-second nominal clock
23929         resolution is found.
23930
23931         * lib/lchmod.h: New file.
23932         * lib/mkdir-p.c: Include lchmod.h, lchown.h.
23933         (make_dir_parents): Use lchown rather than chown, and
23934         lchmod rather than chmod.
23935
23936         * lib/mountlist.c (ME_DUMMY): "none" and "proc" file systems are
23937         dummies too.  Problem with "none" reported by Bob Proulx.  Problem with
23938         "proc" reported by n0dalus.
23939
23940         * lib/mountlist.c: Include <limits.h>.
23941         (dev_from_mount_options)
23942         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]:
23943         New function.  It no longer assumes "dev=" has the System V meaning
23944         on Linux (since it doesn't).  It also parses "dev=" more carefully.
23945         (read_file_system_list)
23946         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]: Use it.
23947         MOUNTED_GETMNTENT2 is new here; the code didn't used to look for
23948         dev= in that case.
23949
23950         * lib/posixtm.h (PDS_PRE_2000): New macro.
23951         * lib/posixtm.c (year): Arg is now syntax_bits rather than
23952         allow_century.  All usages changed.  Reject dates outside the range
23953         1969-1999 if PDS_PRE_2000 is used.
23954
23955 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
23956
23957         Sync from coreutils.
23958         * doc/getdate.texi (General date syntax): Invalid dates are rejected.
23959         (Time of day items): Mention the possibility of leap seconds.
23960         Problem reported by Dr. David Alan Gilbert.
23961
23962 2006-01-09  Jim Meyering  <jim@meyering.net>
23963
23964         Sync from coreutils.
23965
23966         * lib/version-etc.c (COPYRIGHT_YEAR): Update to 2006.
23967
23968         * lib/chdir-safer.h, lib/chdir-safer.c: New files.
23969
23970         * lib/modechange.c (mode_compile): Reject an invalid mode string
23971         that starts with an octal digit.  From Andreas Gruenbacher.
23972
23973         * lib/openat.c: Include "fcntl--.h" and "unistd--.h", to map open
23974         and dup to open_safer and dup_safer, respectively.
23975         (openat_permissive): Fix typo in comment.
23976
23977         * lib/openat.c: Don't include <stdlib.h>, <unistd.h>, <fcntl.h>,
23978         "gettext.h"; either no longer needed or are guaranteed by openat.h.
23979         (_): Remove; no longer needed.
23980         (openat): Renamed from rpl_openat; no need for rpl_openat
23981         since openat.h renames openat for us.
23982         Replace most of the body with a call to openat_permissive,
23983         to avoid duplicate code.
23984         Port to (probably hypothetical) environments were mode_t is
23985         wider than int.
23986         (openat_permissive): Require mode arg, so that we can check
23987         types better.  Put it just after flags.  Change cwd failure
23988         indicator from pointer-to-bool to pointer-to-errno-value.
23989         All callers changed.
23990         Invoke openat_save_fail and/or openat_restore_fail if
23991         cwd_errno is null, so that openat can call us.
23992         (openat_permissive, fdopendir, fstatat, unlinkat):
23993         Simplify errno handling to avoid some duplicate code,
23994         as it's OK to set errno on success.
23995         * lib/openat.h: Revamp code so that function macros depend on
23996         __OPENAT_PREFIX only, not also on AT_FDCWD.
23997         (openat_ro): Remove.  Caller changed to use openat_permissive.
23998         (openat_permissive): Now a macro, if not a function.
23999         (openat_restore_fail, openat_save_fail): Now always functions,
24000         since mkdirat needs them even if __OPENAT_PREFIX is defined.
24001
24002         * lib/openat-priv.h: New file, defining macros used by mkdirat.c
24003         and openat.c.
24004         * lib/mkdirat.c: Include openat-priv.h.
24005         Remove definitions of macros defined therein.
24006         * lib/openat.c: Likewise.
24007
24008         * lib/mkdirat.c (mkdirat): New file and function.
24009         * lib/openat.h (mkdirat): Declare.
24010
24011         * lib/openat.c (fdopendir): Don't change errno when returning non-NULL.
24012
24013         * lib/openat.h (openat_permissive): Declare.
24014         (openat_ro): Define.
24015
24016         * lib/openat.c (EXPECTED_ERRNO): New macro.
24017         (openat_permissive): New function -- used in remove.c rewrite.
24018         (all functions): Set errno just before returning, only if there
24019         was an actual failure.
24020         Use EXPECTED_ERRNO rather than comparing against only ENOTDIR.
24021
24022         Emulate openat-family functions using Linux's procfs, if possible.
24023         Idea and some code based on Ulrich Drepper's glibc changes.
24024
24025         * lib/openat.c: (BUILD_PROC_NAME): New macro.
24026         Include <stdio.h>, <string.h>, "alloca.h" and "intprops.h".
24027         (rpl_openat): Emulate by trying to open /proc/self/fd/%d/%s,
24028         before falling back on save_cwd and restore_cwd.
24029         (fdopendir, fstatat, unlinkat): Likewise.
24030
24031         * lib/openat.c (fstatat, unlinkat): Perform the syscall directly,
24032         skipping the save_cwd...restore_cwd overhead, if FILE is absolute.
24033
24034         * lib/openat.c (rpl_openat): Use the promoted type (int), not mode_t,
24035         as second argument to va_arg.  Otherwise, some versions of gcc
24036         warn that `if this code is reached, the program will abort'.
24037
24038 2006-01-09  Jim Meyering  <jim@meyering.net>
24039
24040         Sync from coreutils.
24041         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile mkdirat.c.
24042         Require openat-priv.h.
24043
24044 2006-01-09  Bruno Haible  <bruno@clisp.org>
24045
24046         * modules/strnlen (Include): Use strnlen.h.
24047
24048 2006-01-09  Bruno Haible  <bruno@clisp.org>
24049
24050         * m4/stdint.m4 (gl_STDINT_H): Also test for <sys/bitypes.h>.
24051
24052 2006-01-09  Bruno Haible  <bruno@clisp.org>
24053
24054         * lib/sysexit_.h (EX_OK): New macro.
24055         Suggested by Martin Lambers <marlam@marlam.de>.
24056
24057 2006-01-09  Bruno Haible  <bruno@clisp.org>
24058
24059         * lib/stdint_.h: On Linux libc4 and libc5, include <sys/bitypes.h> and
24060         don't define _STDINT_H_NEED_SIGNED_INT_TYPES.
24061
24062 2006-01-09  Bruno Haible  <bruno@clisp.org>
24063
24064         * lib/stdint_.h (SIZE_MAX): Write the value without involving negative
24065         numbers.
24066
24067 2006-01-09  Bruno Haible  <bruno@clisp.org>
24068
24069         * lib/javacomp.sh.in: Move to ../build-aux/javacomp.sh.in.
24070         * lib/javaexec.sh.in: Move to ../build-aux/javaexec.sh.in.
24071         * lib/csharpcomp.sh.in: Move to ../build-aux/csharpcomp.sh.in.
24072         * lib/csharpexec.sh.in: Move to ../build-aux/csharpexec.sh.in.
24073
24074 2006-01-09  Bruno Haible  <bruno@clisp.org>
24075
24076         * build-aux/javacomp.sh.in: New file, moved from lib/.
24077         * modules/javacomp-script (Files): Update.
24078         (configure.ac): Add AC_CONFIG_FILES invocation.
24079         (EXTRA_DIST): Remove variable.
24080
24081         * build-aux/javaexec.sh.in: New file, moved from lib/.
24082         * modules/javaexec (Files): Update.
24083         (configure.ac): Add AC_CONFIG_FILES invocation.
24084         (EXTRA_DIST): Remove javaexec.sh.in.
24085
24086         * build-aux/csharpcomp.sh.in: New file, moved from lib/.
24087         * modules/csharpcomp-script (Files): Update.
24088         (configure.ac): Add AC_CONFIG_FILES invocation.
24089         (EXTRA_DIST): Remove variable.
24090
24091         * build-aux/csharpexec.sh.in: New file, moved from lib/.
24092         * modules/csharpexec (Files): Update.
24093         (configure.ac): Add AC_CONFIG_FILES invocation.
24094         (EXTRA_DIST): Remove csharpexec.sh.in.
24095
24096 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
24097
24098         Sync from coreutils.
24099
24100         Add POSIX ACL support
24101         * lib/acl.h (copy_acl, set_acl): Add declarations.
24102         * lib/acl.c (acl_entries): Add fallback implementation for POSIX ACL
24103         systems other than Linux.
24104         (chmod_or_fchmod): New function: use fchmod when possible,
24105         and chmod otherwise.
24106         (file_has_acl): Add a POSIX ACL implementation, with a
24107         Linux-specific subcase.
24108         (copy_acl): Add: copy an acl and S_ISUID, S_ISGID, and
24109         S_ISVTX from one file to another.  Fall back to fchmod/chmod when
24110         acls are unsupported.
24111         (set_acl): Add: set a file's acl and S_ISUID, S_ISGID, and
24112         S_ISVTX to a defined value.  Fall back to fchmod/chmod when acls
24113         are unsupported.
24114
24115 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
24116
24117         Sync from coreutils.
24118         * m4/acl.m4 (AC_FUNC_ACL): Add POSIX ACL and Linux-specific acl tests.
24119
24120 2006-01-07  Bruno Haible  <bruno@clisp.org>
24121
24122         * gnulib-tool (func_import): Add an AC_PROG_RANLIB dependency to
24123         gl_EARLY.
24124
24125 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
24126
24127         * lib/strftime.c (tzname): Don't declare if it is already #defined.
24128         Problem reported for Mingw by Mark Junker.
24129
24130 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
24131
24132         * README: Gnulib normally doesn't generate a tarball.
24133
24134 2006-01-03  Paul Eggert  <eggert@cs.ucla.edu>
24135
24136         * lib/xtime.h (xtime_make, xtime_nonnegative_nsec, xtime_nsec): Use
24137         long int, not int, for nanosecond counts, so that people who are
24138         used to POSIX struct timespec won't be surprised.  Reported by Jim
24139         Meyering.
24140
24141 2005-12-28  Bruno Haible  <bruno@clisp.org>
24142
24143         * build-aux/config.rpath: Update from GNU gettext.
24144
24145 2005-12-16  Jim Meyering  <jim@meyering.net>
24146
24147         * modules/fprintftime: New module.
24148         * MODULES.html.sh (Date and time <time.h>): Add fprintftime.
24149
24150 2005-12-16  Jim Meyering  <jim@meyering.net>
24151
24152         * m4/fprintftime.m4: New file.
24153
24154 2005-12-16  Jim Meyering  <jim@meyering.net>
24155
24156         * lib/fprintftime.c, lib/fprintftime.h: New files.
24157
24158 2005-12-15  Simon Josefsson  <jas@extundo.com>
24159
24160         * modules/socklen (configure.ac): Fix M4 macro name, to align with
24161         new m4/socklen.m4.
24162
24163 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
24164
24165         * m4/argp.m4: Define HAVE_DECL_PROGRAM_INVOCATION_NAME and
24166         HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME
24167
24168 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
24169
24170         * lib/argp-fmtstream.c (__argp_fmtstream_update): Fix coredump
24171         * lib/argp-help.c (fill_in_uparams): Check if the constructed
24172         struct uparams is valid. Fall back to the default values if it is
24173         not.
24174
24175 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
24176
24177         * modules/argp (Files): Add argp-pin.c
24178         (Depends-on): dirname
24179         (lib_SOURCES): Add argp-pin.c
24180
24181 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
24182
24183         * m4/argp.m4:  Check if program_invocation_name and
24184         program_invocation_short_name are declared and define appropriate
24185         macros if they are not.
24186
24187 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
24188
24189         * lib/argp-help.c (__argp_base_name): New function
24190         (__argp_short_program_name): Rewrite using __argp_base_name
24191         * lib/argp-namefrob.h: Define program_invocation_name and
24192         program_invocation_short_name if requested
24193         (__argp_base_name): Add prototype
24194         * lib/argp-parse.c (argp_def): Use gettext wrappers
24195         (argp_default_parser): Use __argp_base_name
24196         * lib/argp-pin.c: New file. Defines program_invocation_name and
24197         program_invocation_short_name on systems that lack them.
24198
24199 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
24200
24201         * m4/stat-time.m4 (gl_STAT_TIME): Add check for
24202         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
24203         porting problem reported by Georg Schwarz in
24204         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
24205
24206 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
24207
24208         * lib/stat-time.h (STATE_TIMESPEC, STAT_TIMESPEC_NS): Add check for
24209         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
24210         porting problem reported by Georg Schwarz in
24211         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
24212
24213 2005-12-05  Bruno Haible  <bruno@clisp.org>
24214
24215         * lib/csharpcomp.sh.in (options_csc): For -l option, add a .dll suffix.
24216         * lib/csharpcomp.c (compile_csharp_using_sscli): Likewise.
24217         Reported by Mark Junker <mjscod@gmx.de>.
24218
24219 2005-12-02  Paul Eggert  <eggert@cs.ucla.edu>
24220
24221         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Renamed from gl_SOCKLEN_T.
24222         Use implementation from Albert Chin, with some
24223         comments/corrections by Stepan Kasal and myself.
24224
24225 2005-12-02  Bruno Haible  <bruno@clisp.org>
24226
24227         * gnulib-tool (func_import): Accept GPLed build tool modules when
24228         --lgpl is given.
24229         * modules/csharpcomp-script: New file.
24230         * modules/csharpcomp: Depend on it.
24231         * modules/javacomp-script: New file.
24232         * modules/javacomp: Depend on it.
24233         Suggested by Simon Josefsson.
24234
24235 2005-12-01  Paul Eggert  <eggert@cs.ucla.edu>
24236
24237         * m4/regex.m4 (gl_REGEX): Check whether off_t can be used in a switch
24238         statement, to work around an HP-UX 10.20 compiler bug reported by
24239         Peter O'Gorman.
24240
24241 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
24242
24243         * modules/savedir (Depends-on): Add openat.
24244
24245 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
24246
24247         * lib/stdint_.h (intmax_t) [defined intmax_t]: Do not declare.
24248         (uintmax_t) [defined uintmax_t]: Do not declare.
24249         (SIZE_MAX) [defined SIZE_MAX]: Do not define.
24250         This works around a problem if intmax_t.m4 and/or uintmax_t.m4
24251         and/or size_max.m4 are also used.  Problem reported by Mark D. Baushke.
24252         (SIZE_MAX): Define to ((size_t) -1), not (~(size_t)0), for the
24253         sake of portability to weird hosts that C allows (though we don't
24254         know of any practical examples).
24255
24256         * lib/savedir.h (fdsavedir): New decl.
24257         * lib/savedir.c (fdsavedir, savedirstream): New functions; the latter
24258         contains most of the former guts of savedir.
24259         (savedir): Use savedirstream.
24260         Include "openat.h".
24261
24262 2005-11-25  Paul Eggert  <eggert@cs.ucla.edu>
24263
24264         * modules/obstack (Files): Add m4/ulonglong.m4.
24265         Problem reported by Davide Angelocola.
24266
24267 2005-11-15  Paul Eggert  <eggert@cs.ucla.edu>
24268
24269         * lib/xstrtod.c: Don't bother with #pragma STDC FENV_ACCESS ON, as
24270         coreutils no longer futzes with rounding modes.
24271
24272 2005-11-14  Jim Meyering  <jim@meyering.net>
24273
24274         * lib/mkstemp-safer.c: Include <config.h>, required for possible
24275         replacement of mkstemp.
24276
24277 2005-11-10  Simon Josefsson  <jas@extundo.com>
24278
24279         * lib/readline.c: Remove EOL.
24280
24281 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
24282
24283         * modules/gethrxtime (Depends-on): Add gettime.
24284
24285 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
24286
24287         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Don't require AC_HEADER_TIME
24288         or gettimeofday; no longer needed.
24289
24290 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
24291
24292         * lib/gethrxtime.c: Include "timespec.h" rather than the sys/time /
24293         time business.
24294         (gethrxtime) [! (HAVE_NANOUPTIME
24295         || (defined CLOCK_MONOTONIC && HAVE_CLOCK_GETTIME)
24296         || HAVE_MICROUPTIME)]: Fall back on gettime rather than rolling
24297         our own approximation.
24298
24299 2005-11-08  Eric Blake  <ebb9@byu.net>
24300
24301         * lib/inet_ntop.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
24302
24303 2005-11-08  Eric Blake  <ebb9@byu.net>
24304
24305         * lib/getaddrinfo.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
24306
24307 2005-11-04  Bruno Haible  <bruno@clisp.org>
24308
24309         * gnulib-tool: Implement --update mode.
24310
24311 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
24312
24313         Fix porting problem reported by Theodoros V. Kalamatianos.
24314         * lib/utimens.c (futimens) [HAVE_WORKING_UTIMES && HAVE_FUTIMES]:
24315         Don't assume that futimes failing means we must fail.
24316
24317 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
24318
24319         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Revamp wording and local
24320         variables to suggest the intended function of the PATH_MAX check.
24321
24322 2005-10-30  Kean Johnston  <jkj@sco.com>
24323
24324         Trivial changes to support SCO systems.
24325         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Check for MAXPATHLEN as well
24326         as PATH_MAX.
24327         * m4/fpending.m4 (gl_FUNC_FPENDING): Correct check for SCO systems,
24328         where __ptr is null when no I/O is pending.
24329
24330 2005-10-29  Paul Eggert  <eggert@cs.ucla.edu>
24331
24332         * lib/getcwd.c (__getcwd): Don't assume that system calls after readdir
24333         leave errno alone.  Problem reported by Dmitry V. Levin.
24334
24335 2005-10-28  Simon Josefsson  <jas@extundo.com>
24336
24337         * tests/test-gc-md4.c, tests/test-gc-md5.c, tests/test-gc-sha1.c:
24338         Test more.
24339
24340         * tests/test-gc-md2.c, tests/test-md2.c: New files.
24341
24342         * modules/md2, modules/md2-tests: New files.
24343
24344 2005-10-28  Simon Josefsson  <jas@extundo.com>
24345
24346         * m4/inet_ntop.m4: More tests.
24347
24348         * m4/gc-md2.m4, md2.m4: New file.
24349
24350 2005-10-28  Simon Josefsson  <jas@extundo.com>
24351
24352         * lib/inet_ntop.h, inet_ntop.c: Make it work under mingw32: Add
24353         "restrict" keywords, as per POSIX.  Protect the function
24354         declaration around HAVE_DECL_INET_NTOP rather than HAVE_INET_NTOP.
24355         Don't use K&R prototypes.  Check the sprintf return values.
24356         Re-define EAFNOSUPPORT if not present.  Indent.
24357
24358         * lib/md5.h, md5.c: Simplify buffer handling visavi alignment,
24359         suggested by Bruno Haible <bruno@clisp.org>.
24360
24361         * lib/gc-gnulib.c, gc-libgcrypt.c: Check calloc return value.
24362
24363         * lib/gc.h: Add MD2 and RMD160 length defines.  Add prototypes.
24364
24365         * lib/gc-libgcrypt.c: Add MD2 (which is not available through
24366         libgcrypt).
24367
24368         * lib/gc-gnulib.c: Add MD2.  Implement gc_hash_* API.
24369
24370         * lib/md2.h, lib/md2.c: New files.
24371
24372 2005-10-28  Paul Eggert  <eggert@cs.ucla.edu>
24373
24374         * lib/savedir.c (savedir): Don't assume that xrealloc etc. leave
24375         errno alone.  Problem reported by Frederic Jolliton.
24376
24377 2005-10-27  Paul Eggert  <eggert@cs.ucla.edu>
24378
24379         * modules/verify (License): Change from GPL to LGPL.  This is a
24380         tiny module and there are apparently near-equivalents that are
24381         under the BSD license.
24382
24383 2005-10-24  Simon Josefsson  <jas@extundo.com>
24384
24385         * modules/sha1: Relicense to LGPL.
24386
24387 2005-10-24  Simon Josefsson  <jas@extundo.com>
24388
24389         * lib/md4.h: Shrink buffer size, now that we changed the type.
24390
24391 2005-10-23  Simon Josefsson  <jas@extundo.com>
24392
24393         * gnulib-tool (func_import): Fix --tests-base.
24394
24395 2005-10-22  Simon Josefsson  <jas@extundo.com>
24396
24397         * modules/arcfour (Depends-on): Need stdint.
24398
24399 2005-10-22  Simon Josefsson  <jas@extundo.com>
24400
24401         * m4/gc.m4: Don't be fooled by --disable-*random-device parameters,
24402         suggested by Bruno Haible <bruno@clisp.org>.  Fix error messages.
24403
24404 2005-10-22  Simon Josefsson  <jas@extundo.com>
24405
24406         * lib/md4.h, md4.c: Simplify buffer handling visavi alignment,
24407         suggested by Bruno Haible <bruno@clisp.org>.
24408
24409 2005-10-22  Simon Josefsson  <jas@extundo.com>
24410
24411         * lib/crc.h: Include stddef.h, for size_t.
24412
24413 2005-10-22  Simon Josefsson  <jas@extundo.com>
24414
24415         * lib/arcfour.h, arcfour.c: Use fixed size indices in the
24416         arcfour_context struct (simplify test vector testing in GNU
24417         Shishi).
24418
24419 2005-10-21  Simon Josefsson  <jas@extundo.com>
24420
24421         * modules/des, modules/des-tests: New files.
24422
24423         * modules/gc-des, modules/gc-des-tests: New files.
24424
24425         * tests/test-des.c, tests/test-gc-des.c: New file.
24426
24427 2005-10-21  Simon Josefsson  <jas@extundo.com>
24428
24429         * modules/arctwo, modules/arctwo-tests: New files.
24430
24431         * tests/test-arctwo.c: New file.
24432
24433         * modules/gc-arctwo, modules/gc-arctwo-tests: New files.
24434
24435         * tests/test-gc-arctwo.c: New file.
24436
24437 2005-10-21  Simon Josefsson  <jas@extundo.com>
24438
24439         * m4/gc.m4: Don't use libgcrypt if gcrypt.h isn't found, suggested by
24440         Bruno Haible <bruno@clisp.org>.
24441
24442         * m4/gc-des.m4: New file.
24443
24444 2005-10-21  Simon Josefsson  <jas@extundo.com>
24445
24446         * m4/arctwo.m4: New file.
24447
24448         * m4/gc-arctwo.m4: New file.
24449
24450 2005-10-21  Simon Josefsson  <jas@extundo.com>
24451
24452         * lib/rijndael-api-fst.c: Fix bugs in CBC mode for more than one
24453         block.
24454
24455 2005-10-21  Simon Josefsson  <jas@extundo.com>
24456
24457         * lib/hmac-md5.c (hmac_md5): Add comments, suggested by Bruno Haible
24458         <bruno@clisp.org>.
24459
24460         * lib/hmac-sha1.c (hmac_sha1): Likewise.
24461
24462         * lib/crc.c (crc32_update): Actually use crc parameter, suggested by
24463         Bruno Haible <bruno@clisp.org>.
24464
24465         * lib/crc.h: Include stdint.h directly, suggested by Bruno Haible
24466         <bruno@clisp.org>.
24467
24468 2005-10-21  Simon Josefsson  <jas@extundo.com>
24469
24470         * lib/gc-libgcrypt.c (gc_cipher_open): Handle ECB.
24471
24472 2005-10-21  Simon Josefsson  <jas@extundo.com>
24473
24474         * lib/gc-gnulib.c: Support ARCTWO in CBC mode.
24475
24476 2005-10-21  Simon Josefsson  <jas@extundo.com>
24477
24478         * lib/des.h, lib/des.c: New files.
24479
24480         * lib/gc-gnulib.c: Support DES.c
24481
24482 2005-10-21  Simon Josefsson  <jas@extundo.com>
24483
24484         * lib/arctwo.h, lib/arctwo.c: New files.
24485
24486         * lib/gc-gnulib.c: Support ARCTWO.
24487
24488 2005-10-21  Simon Josefsson  <jas@extundo.com>
24489
24490         * lib/arctwo.h (arctwo_setkey): Protect variable in CPP macro,
24491         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
24492
24493 2005-10-21  Simon Josefsson  <jas@extundo.com>
24494
24495         * gnulib-tool (func_import, func_create_testdir): Define automake
24496         conditional GL_COND_LIBTOOL if libtool is used (to be used by modules
24497         Makefile.am snippet),
24498         suggested by Bruno Haible <bruno@clisp.org>.
24499
24500         * modules/gc (Makefile.am): Use it.
24501
24502 2005-10-21  Bruno Haible  <bruno@clisp.org>
24503
24504         * gnulib-tool (func_import, func_create_testdir): Add quoting to last
24505         patch.
24506
24507 2005-10-19  Simon Josefsson  <jas@extundo.com>
24508
24509         * tests/test-gc-rijndael.c: New file.
24510
24511         * modules/gc-rijndael, modules/gc-rijndael-test: New files.
24512
24513 2005-10-19  Simon Josefsson  <jas@extundo.com>
24514
24515         * tests/test-gc-md4.c, tests/test-gc-md5.c: Test gc_hash_buffer
24516         interface too.
24517
24518 2005-10-19  Simon Josefsson  <jas@extundo.com>
24519
24520         * tests/test-gc-arcfour.c: New file.
24521
24522         * modules/gc-arcfour, modules/gc-arcfour-tests: New files.
24523
24524 2005-10-19  Simon Josefsson  <jas@extundo.com>
24525
24526         * modules/gc-md4, modules/gc-md4-tests: New file.
24527
24528         * tests/test-gc-md4.c: New file.
24529
24530 2005-10-19  Simon Josefsson  <jas@extundo.com>
24531
24532         * m4/gc-md4.m4: New file.
24533
24534 2005-10-19  Simon Josefsson  <jas@extundo.com>
24535
24536         * m4/gc-hmac-md5.m4, gc-hmac-sha1.m4, gc-md4.m4,
24537         gc-md5.m4, gc-sha1.m4: Fix typo, suggested by Stepan Kasal
24538         <kasal@ucw.cz>.
24539
24540 2005-10-19  Simon Josefsson  <jas@extundo.com>
24541
24542         * m4/gc-arcfour.m4: New file.
24543
24544         * m4/gc-rijndael.m4: New file.
24545
24546 2005-10-19  Simon Josefsson  <jas@extundo.com>
24547
24548         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support MD4.
24549
24550 2005-10-19  Simon Josefsson  <jas@extundo.com>
24551
24552         * lib/gc-gnulib.c: Support ARCFOUR.
24553
24554 2005-10-19  Simon Josefsson  <jas@extundo.com>
24555
24556         * lib/gc-gnulib.c: Implement gc_cipher_* API, currently only with AES
24557         support.
24558
24559         * lib/gc.h: Add ECB enum type.
24560
24561         * lib/hmac-md5.c, hmac-sha1.c: Include memxor.h.
24562
24563 2005-10-18  Simon Josefsson  <jas@extundo.com>
24564
24565         * tests/test-md5.c: New file.
24566
24567         * modules/md5-tests: New file.
24568
24569 2005-10-18  Simon Josefsson  <jas@extundo.com>
24570
24571         * tests/test-md4.c: New file.
24572
24573         * modules/md4, modules/md4-tests: New files.
24574
24575 2005-10-18  Simon Josefsson  <jas@extundo.com>
24576
24577         * m4/md4.m4: New file.
24578
24579 2005-10-18  Simon Josefsson  <jas@extundo.com>
24580
24581         * lib/md4.h, lib/md4.c: New files, based on md5.?.
24582
24583 2005-10-17  Stepan Kasal  <kasal@ucw.cz>
24584
24585         * gnulib-tool (func_create_testdir): Omit the second check whether
24586         BUILT_SOURCES in nonempty.
24587
24588 2005-10-17  Simon Josefsson  <jas@extundo.com>
24589
24590         * tests/test-rijndael.c: New file.
24591
24592 2005-10-17  Simon Josefsson  <jas@extundo.com>
24593
24594         * modules/sha1: Depend on stdint instead of md5.
24595
24596         * modules/md5: Depend on stdint, remove uint32_t.
24597
24598 2005-10-17  Simon Josefsson  <jas@extundo.com>
24599
24600         * modules/gc-sha1-tests: New file.
24601
24602         * tests/test-gc-sha1.c: New file.
24603
24604 2005-10-17  Simon Josefsson  <jas@extundo.com>
24605
24606         * m4/md5.m4: Remove call to uint32_t.m4.
24607
24608 2005-10-17  Simon Josefsson  <jas@extundo.com>
24609
24610         * lib/sha1.c: Use uint32_t instead of md5_uint32.t
24611
24612         * lib/sha1.h: Use stdint.h and uint32_t instead of md5_uint32 from
24613         md5.h.
24614
24615         * lib/md5.c: Use uin32_t.  Fix non-gcc UNALIGNED_P macro.
24616
24617         * lib/md5.h: Use stdint.h and uint32_t.  Doc fix.
24618
24619 2005-10-17  Simon Josefsson  <jas@extundo.com>
24620
24621         * lib/gc.h, gc-libgcrypt.c: Add more hash types/functions.
24622
24623 2005-10-17  Simon Josefsson  <jas@extundo.com>
24624
24625         * lib/gc.h, gc-libgcrypt.c: Add ciphers.
24626
24627 2005-10-17  Simon Josefsson  <jas@extundo.com>
24628
24629         * lib/gc-libgcrypt.c (gc_hmac_sha1): Fix assert.
24630
24631         * lib/gc.h (gc_nonce, gc_pseudo_random, gc_random): Add prototypes.
24632
24633 2005-10-17  Bruno Haible  <bruno@clisp.org>
24634
24635         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Change the return statement so
24636         that it can also be used in a test.
24637
24638 2005-10-16  Bruno Haible  <bruno@clisp.org>
24639
24640         * gnulib-tool (func_emit_tests_Makefile_am): Also define
24641         TESTS_ENVIRONMENT, so that individual tests can augment it.
24642
24643         * gnulib-tool (func_create_testdir): Use an intermediate target for
24644         building $(BUILT_SOURCES). Needed because BUILT_SOURCES can contain
24645         macros, like $(ALLOCA_H), which cannot be passed through the command
24646         line.
24647
24648 2005-10-15  Simon Josefsson  <jas@extundo.com>
24649
24650         * modules/rijndael-tests: New file.
24651
24652         * modules/rijndael: New file.
24653
24654 2005-10-15  Simon Josefsson  <jas@extundo.com>
24655
24656         * m4/rijndael.m4: New file.
24657
24658 2005-10-15  Simon Josefsson  <jas@extundo.com>
24659
24660         * lib/rijndael-api-fst.h, lib/rijndael-api-fst.c: New files.
24661
24662         * lib/rijndael-alg-fst.h, lib/rijndael-alg-fst.c: New files.
24663
24664 2005-10-14  Simon Josefsson  <jas@extundo.com>
24665
24666         * tests/test-arcfour.c: New file.
24667
24668         * modules/arcfour, modules/arcfour-tests: New files.
24669
24670 2005-10-14  Simon Josefsson  <jas@extundo.com>
24671
24672         * m4/arcfour.m4: New file.
24673
24674 2005-10-14  Simon Josefsson  <jas@extundo.com>
24675
24676         * lib/arcfour.h, lib/arcfour.c: New files.
24677
24678 2005-10-14  Roland McGrath  <roland@redhat.com>
24679
24680         Import from libc.  [BZ #1331]
24681         * lib/obstack.h [!__STDC__] (obstack_int_grow_fast): Fix misnamed
24682         macro argument.
24683         Reported by Matej Vela <vela@debian.org>.
24684
24685 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
24686
24687         * lib/obstack.c [defined _LIBC && defined USE_IN_LIBIO]: Don't
24688         include <wchar.h>; no longer needed.
24689
24690 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
24691
24692         * config/srclist.txt: Add glibc bug 321 for obstack.c, obstack.h.
24693
24694 2005-10-14  Jakub Jelinek  <jakub@redhat.com>
24695         and  Ulrich Drepper  <drepper@redhat.com>
24696
24697         Import from libc.
24698         * lib/obstack.c (print_and_abort) [defined _LIBC]: Use __fxprintf
24699         instead of inline stream orientation test and two separate
24700         function calls.  Pay no attention to USE_IN_LIBIO.
24701
24702 2005-10-13  Simon Josefsson  <jas@extundo.com>
24703
24704         * modules/gc-hmac-md5-tests: New file.
24705
24706         * tests/test-gc-hmac-sha1.c: New file.
24707
24708         * tests/test-gc.c (main): Remove MD5 and HMAC-MD5 tests.
24709
24710         * modules/gc-hmac-md5-tests: New file.
24711
24712         * tests/test-gc-md5.c: New file.
24713
24714         * modules/gc-md5-tests: New file.
24715
24716 2005-10-13  Simon Josefsson  <jas@extundo.com>
24717
24718         * lib/gc-pbkdf2-sha1.c (gc_pbkdf2_sha1): Optimize CEIL computation.
24719         Move memory allocation outside of loop.
24720
24721 2005-10-13  Paul Eggert  <eggert@cs.ucla.edu>
24722
24723         * lib/mkdir-p.c (make_dir_parents): Don't report an error if an
24724         intermediate directory is in a read-only file system.  Problem
24725         reported by Eric Blake.
24726
24727 2005-10-13  Oskar Liljeblad  <oskar@osk.mine.nu>
24728
24729         * modules/human (Depends-on): Depend on xstrtoumax, not xstrtol.
24730
24731 2005-10-12  Simon Josefsson  <jas@extundo.com>
24732
24733         * tests/test-hmac-sha1.c: New file.
24734
24735         * modules/hmac-sha1-tests: New file.
24736
24737         * modules/hmac-sha1: New file.
24738
24739 2005-10-12  Simon Josefsson  <jas@extundo.com>
24740
24741         * modules/gc-sha1: New file.
24742
24743 2005-10-12  Simon Josefsson  <jas@extundo.com>
24744
24745         * modules/gc-pbkdf2-sha1, modules/gc-pbkdf2-sha1-tests: New files.
24746
24747         * tests/test-gc-pbkdf2-sha1.c: New file.
24748
24749 2005-10-12  Simon Josefsson  <jas@extundo.com>
24750
24751         * modules/gc-md5, modules/gc-hmac-md5: New files.
24752
24753         * modules/gc (Files): Remove md5, memxor and hmac files.
24754
24755 2005-10-12  Simon Josefsson  <jas@extundo.com>
24756
24757         * m4/gc-pbkdf2-sha1.m4: New file.
24758
24759         * m4/gc-hmac-sha1.m4: New file.
24760
24761         * m4/gc-sha1: New file.
24762
24763         * m4/hmac-sha1.m4: New file.
24764
24765 2005-10-12  Simon Josefsson  <jas@extundo.com>
24766
24767         * m4/gc-md5.m4, m4/gc-hmac-md5.m4: New files.
24768
24769         * m4/gc.m4: Don't call gl_MD5, gl_MEMXOR or gl_HMAC_MD5.
24770
24771 2005-10-12  Simon Josefsson  <jas@extundo.com>
24772
24773         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Use Gc_rc for return types,
24774         suggested by Bruno Haible <bruno@clisp.org>.
24775
24776 2005-10-12  Simon Josefsson  <jas@extundo.com>
24777
24778         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support SHA-1.
24779
24780 2005-10-12  Simon Josefsson  <jas@extundo.com>
24781
24782         * lib/gc-pbkdf2-sha1.c: New file.
24783
24784         * lib/gc.h: Add gc_pbkdf2_sha1 prototype.
24785
24786 2005-10-12  Simon Josefsson  <jas@extundo.com>
24787
24788         * lib/gc-libgcrypt.c (gc_hmac_sha1): New function.
24789
24790         * lib/gc-gnulib.c (gc_hmac_sha1): New function.
24791
24792 2005-10-12  Simon Josefsson  <jas@extundo.com>
24793
24794         * lib/gc-gnulib.c: Condition MD5 and HMAC-MD5 use on GC_USE_MD5 and
24795         GC_USE_HMAC_MD5, respectively.
24796
24797         * lib/gc-libgcrypt.c (gc_md5): Fix assert call.
24798         (gc_md5): Fix typo.
24799
24800         * lib/gc.h (gc_hash_buffer): Use gc_hash in prototype.
24801
24802         * lib/gc-libgcrypt.c (gc_hash_buffer): Ditto.
24803
24804         * lib/gc-gnulib.c (gc_hash_buffer): Ditto.
24805
24806 2005-10-12  Bruno Haible  <bruno@clisp.org>
24807
24808         * m4/stdbool.m4 (gl_STDBOOL_H): Define as an alias of AM_STDBOOL_H.
24809         Reported by Stepan Kasal <kasal@ucw.cz>.
24810
24811 2005-10-11  Simon Josefsson  <jas@extundo.com>
24812
24813         * tests/test-crc.c: New file.
24814
24815         * modules/crc, modules/crc-tests: New files.
24816
24817 2005-10-11  Simon Josefsson  <jas@extundo.com>
24818
24819         * m4/crc.m4: New file.
24820
24821 2005-10-11  Simon Josefsson  <jas@extundo.com>
24822
24823         * lib/gc.h: Add gc_hash and gc_hash_buffer.
24824
24825         * lib/gc-gnulib.c (gc_hash_buffer): Add.  Reorder #include's.
24826
24827         * lib/gc-libgcrypt.c (gc_hash_buffer): Add.
24828
24829 2005-10-11  Simon Josefsson  <jas@extundo.com>
24830
24831         * lib/crc.h, lib/crc.c: New files.
24832
24833         * lib/gc.h (gc_hash_buffer): Add doc.
24834
24835 2005-10-11  Bruno Haible  <bruno@clisp.org>
24836
24837         * modules/c-strcasestr: New file.
24838         * MODULES.html.sh (String handling <string.h>): Add c-strcasestr.
24839
24840 2005-10-11  Bruno Haible  <bruno@clisp.org>
24841
24842         * modules/c-strcase: New file.
24843         * MODULES.html.sh (String handling <string.h>): Add c-strcase.
24844
24845 2005-10-11  Bruno Haible  <bruno@clisp.org>
24846
24847         * lib/strcasecmp.c: Include limits.h.
24848         (strcasecmp): Avoid integer overflow on exotic platforms.
24849         * lib/strncasecmp.c: Include limits.h.
24850         (strncasecmp): Avoid integer overflow on exotic platforms.
24851         Reported by Paul Eggert.
24852
24853 2005-10-11  Bruno Haible  <bruno@clisp.org>
24854
24855         * lib/c-strcasestr.h: New file, from GNU gettext.
24856         * lib/c-strcasestr.c: New file, from GNU gettext.
24857
24858 2005-10-11  Bruno Haible  <bruno@clisp.org>
24859
24860         * lib/c-strcase.h: New file, from GNU gettext.
24861         * lib/c-strcasecmp.c: New file, from GNU gettext.
24862         * lib/c-strncasecmp.c: New file, from GNU gettext.
24863
24864 2005-10-10  Paul Eggert  <eggert@cs.ucla.edu>
24865
24866         * modules/mempcpy (License): GPL -> LGPL.
24867         * modules/strchrnul (License): Likewise.
24868         * modules/sysexits (License): Likewise.
24869
24870 2005-10-08  Simon Josefsson  <jas@extundo.com>
24871
24872         * config/srclist.txt: Bug 1423 is closed, but 1439 remains.
24873
24874 2005-10-07  Simon Josefsson  <jas@extundo.com>
24875
24876         * m4/memxor.m4: Remove gl_C_RESTRICT call.
24877
24878 2005-10-06  Simon Josefsson  <jas@extundo.com>
24879
24880         * tests/test-hmac-md5.c: New file.
24881
24882         * modules/hmac-md5-tests: New file.
24883
24884         * modules/hmac-md5: New file.
24885
24886 2005-10-06  Simon Josefsson  <jas@extundo.com>
24887
24888         * m4/hmac-md5.m4: New file.
24889
24890         * m4/memxor.m4: Require gl_C_RESTRICT.
24891
24892 2005-10-06  Simon Josefsson  <jas@extundo.com>
24893
24894         * lib/memxor.c (memxor): Avoid casts and warnings.
24895
24896 2005-10-06  Simon Josefsson  <jas@extundo.com>
24897
24898         * lib/hmac-md5.c: New file.
24899
24900         * lib/hmac.h: New file.
24901
24902 2005-10-06  Paul Eggert  <eggert@cs.ucla.edu>
24903
24904         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check that bool
24905         promotes to int, not unsigned int, to catch the AIX 5.3
24906         compiler bug.
24907
24908 2005-10-05  Simon Josefsson  <jas@extundo.com>
24909
24910         * modules/memxor: New file.
24911
24912         * modules/iconv (Files): Move config.rpath to havelib, it is used
24913         there.
24914
24915         * modules/havelib (Files): Add config.rpath.
24916
24917 2005-10-05  Simon Josefsson  <jas@extundo.com>
24918
24919         * m4/memxor.m4: New file.
24920
24921 2005-10-05  Simon Josefsson  <jas@extundo.com>
24922
24923         * lib/memxor.c (memxor): Fix compiler error.
24924
24925         * lib/md5.h (MD5_DIGEST_SIZE, MD5_BLOCK_SIZE): Add, see also
24926         <http://sourceware.org/bugzilla/show_bug.cgi?id=1423>.
24927
24928         * lib/memxor.h, lib/memxor.c: New files.
24929
24930         * lib/getaddrinfo.h: Don't protect sys/types.h with HAVE_SYS_TYPES_H,
24931         we assume all systems have it, suggested by Jim Meyering
24932         <jim@meyering.net>.  Remove HAVE_SYS_SOCKET_H test too, to see if
24933         any systems lack sys/socket.h; mingw32 is known to lack it, but we
24934         don't support it yet anyway.  Also remove HAVE_NETDB_H test, for
24935         same reasons.
24936
24937 2005-10-05  Simon Josefsson  <jas@extundo.com>
24938
24939         * config/srclist.txt: Add glibc bug 1423 for md5.h.
24940
24941 2005-10-05  Paul Eggert  <eggert@cs.ucla.edu>
24942
24943         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Don't check for
24944         sys/socket.h, netdb.h, sys/types.h; the checks areno longer
24945         needed, since the source code now assumes these .h files.
24946
24947 2005-10-05  Derek Price  <derek@ximbiot.com>
24948
24949         * lib/getdelim.c (SIZE_MAX): New macro, if not already defined.
24950
24951 2005-10-05  Bruno Haible  <bruno@clisp.org>
24952
24953         * modules/stdint (License): Change to LGPL.
24954
24955 2005-10-04  Simon Josefsson  <jas@extundo.com>
24956
24957         * lib/getaddrinfo.h: Move sys/types.h include first, reported by "Mark
24958         D. Baushke" <mdb@gnu.org>.
24959
24960 2005-10-04  Bruno Haible  <bruno@clisp.org>
24961
24962         * lib/verify.h (verify_true): Provide alternative definition for C++.
24963
24964 2005-10-03  Paul Eggert  <eggert@cs.ucla.edu>
24965
24966         * lib/getdelim.c: Include getdelim.h first.  Include <limits.h>.
24967         (SSIZE_MAX): New macro, if not already defined.
24968         (getdelim): Fix buffer overrun on 64-bit hosts with lines longer
24969         than 2 GiB.
24970
24971 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
24972
24973         Sync from coreutils.
24974         * m4/openat.m4 (gl_FUNC_OPENAT): Check for fdopendir.
24975         * m4/ullong_max.m4 (gl_ULLONG_MAX): Simplify so that it merely
24976         defines ULONG_MAX_LT_ULLONG_MAX.  Thomas M.Ott reports that
24977         ULLONG_MAX doesn't work with 2.7.2.1.
24978
24979 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
24980
24981         * modules/xreadlink (Makefile.am): Remove lib_SOURCES.
24982         From Ben Pfaff.
24983
24984         * modules/exclude (Depends-on): Depend on verify.
24985         * modules/strtoimax (Depends-on): Likewise.
24986         * modules/utimecmp (Depends-on): Likewise.
24987
24988 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
24989
24990         * lib/exclude.c: Include verify.h.
24991         (verify): Remove.  All callers changed to use verify.h's version.
24992         * lib/strtoimax.c: Likewise.
24993         * lib/utimecmp.c: Likewis.e
24994
24995         Sync from coreutils.
24996         * lib/.cppi-disable: Add getaddrinfo.h, getdelim.h, getline.h,
24997         getpass.c, mbchar.h, mbuiter.h, strcase.h, strnlen.h, strnlen1.h.
24998         * lib/.cvsignore: Add fts.h, search.h, t-fpending.
24999         * lib/settime.c (settime): Fix { typo in previous patch.  Also, don't
25000         bother returning ENOSYS if settimeofday or stime fails; just let
25001         them return whatever errno they want to return.
25002         * lib/utimens.c: Include unistd.h, for dup2.
25003         (futimens): Fix typo: HAVE_FUTIMESAT was misspelled in an #if.
25004         (futimens) [! HAVE_FUTIMESAT]: If !file, set errno before returning -1.
25005
25006 2005-10-02  Jim Meyering  <jim@meyering.net>
25007
25008         Sync from coreutils.
25009         * m4/utimes.m4 (gl_FUNC_UTIMES): Detect the version of utimes
25010         from glibc-2.2.5 that fails for read-only files.
25011
25012 2005-10-02  Jim Meyering  <jim@meyering.net>
25013
25014         Sync from coreutils.
25015         * lib/fts-cycle.c [HAVE_CONFIG_H]: Include <config.h>.
25016         * lib/openat-die.c: Use `#ifdef HAVE_CONFIG_H', not
25017         `#if HAVE_CONFIG_H'.
25018         * lib/openat.c (fdopendir): Do not define if HAVE_FDOPENDIR.
25019         Remove AT_FDCWD test.
25020         Do not consume the fd unless successful.
25021         * lib/openat.h (fdopendir): Do not define if HAVE_FDOPENDIR.
25022         * lib/settime.c (settime): Move the HAVE_STIME block `up' into an #elif
25023         block, so that we don't even try to compile it if settimeofday is
25024         available.  This works around a compilation failure on OSF1 V5.1,
25025         due to stime requiring a `long int*' while tv_sec is `int'.
25026
25027 2005-10-02  Alfred M. Szmidt  <ams@gnu.org>
25028
25029         Sync from coreutils.
25030         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Compare $gl_have_path...
25031         against `yes', rather than just testing for nonempty.
25032
25033 2005-10-01  Simon Josefsson  <jas@extundo.com>
25034
25035         * m4/getaddrinfo.m4: Include sys/types.h for sys/socket.h, on FreeBSD
25036         and Darwin.
25037
25038         * m4/getaddrinfo.m4: Use AC_GNU_SOURCE, GNU only declare getaddrinfo
25039         as an (POSIX) extension.  Check for sys/types.h, sys/socket.h, and
25040         netdb.h too, needed by getaddrinfo.h.  Check if getaddrinfo,
25041         freeaddrinfo and gai_strerror are declared by the POSIX headers.
25042         Check if struct addrinfo is declared.
25043
25044 2005-10-01  Simon Josefsson  <jas@extundo.com>
25045
25046         * lib/getaddrinfo.h: Protect #include's of sys/socket.h and netdb.h.
25047         Only define struct addrinfo if !HAVE_STRUCT_ADDRINFO.  Protect
25048         AI_* and EAI_* definitions.  Protect function declarations.
25049
25050 2005-10-01  Jim Meyering  <jim@meyering.net>
25051
25052         Sync from coreutils.
25053
25054         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Look for getservbyname in these
25055         libraries [inet nsl socket xnet].  Nelson Beebe reported that with
25056         native cc on Solaris 7, getaddrinfo.c requires -lsocket.
25057         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
25058         in the inet and nsl libraries.  Required on Solaris 5.7.
25059
25060 2005-10-01  Jim Meyering  <jim@meyering.net>
25061
25062         Sync from coreutils.
25063         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
25064         in the inet and nsl libraries.  Required on Solaris 5.7.
25065
25066 2005-10-01  Eric Blake  <ebb9@byu.net>  (tiny change)
25067
25068         * lib/getdelim.c (getdelim): Remove unused variables.
25069
25070 2005-09-29  Paul Eggert  <eggert@cs.ucla.edu>
25071
25072         * lib/xtime.h (XTIME_PRECISION): Now of type int, not long long int,
25073         so that the code works even with ancient cpp.  Portability problem
25074         with GCC 2.7.2.1 reported by Thomas M.Ott.
25075
25076 2005-09-27  Paul Eggert  <eggert@cs.ucla.edu>
25077
25078         * modules/regex (Depends-on): Add strcase.
25079
25080         * modules/gethostname (Licence): Change from GPL to LGPL, since
25081         gethostname.c is a trivial implementation of a standard library
25082         function.
25083         * modules/poll (License): Change from GPL to LGPL, since it's
25084         derived from LGPL code.
25085
25086 2005-09-27  Jim Meyering  <jim@meyering.net>
25087
25088         * lib/getcwd.c: Change #ifdef<TAB>HAVE_CONFIG_H to #ifdef
25089         HAVE_CONFIG_H.
25090
25091         * lib/intprops.h (signed_type_or_expr__): Define.
25092         (INT_STRLEN_BOUND) [__GNUC__]: Use a slightly tighter bound
25093         for unsigned types.
25094
25095 2005-09-26  Paul Eggert  <eggert@cs.ucla.edu>
25096
25097         * lib/verify.h (verify_expr): Remove, replacing with:
25098         (verify_true): New macro that returns true instead of void.
25099         (verify_type__): Remove.
25100         (verify): Use verify_true rather than verify_type__.
25101
25102 2005-09-26  Bruno Haible  <bruno@clisp.org>
25103
25104         * modules/mbchar (Include): Mention that HAVE_WCHAR_H && HAVE_WCTYPE_H
25105         is necessary.
25106         (lib_SOURCES): Remove mbchar.c.
25107         * modules/mbfile (Include): Mention that HAVE_MBRTOWC is necessary.
25108         (Files): Add m4/mbrtowc.m4.
25109         * modules/mbiter: Likewise.
25110         * modules/mbuiter: Likewise.
25111
25112 2005-09-26  Bruno Haible  <bruno@clisp.org>
25113
25114         * m4/mbchar.m4 (gl_MBCHAR): Check for wchar.h and wctype.h. Don't
25115         compile mbchar.c if they are not both present.
25116         * m4/mbfile.m4 (gl_MBFILE): Require gl_FUNC_MBRTOWC.
25117         * m4/mbiter.m4 (gl_MBITER): Likewise.
25118         * m4/strstr.m4 (gl_PREREQ_STRSTR): Use AC_REQUIRE.
25119         * m4/strcasestr.m4 (gl_PREREQ_STRCASESTR): Likewise.
25120         * m4/strcase.m4 (gl_PREREQ_STRCASECMP): Likewise.
25121
25122 2005-09-25  Jim Meyering  <jim@meyering.net>
25123
25124         * modules/inet_ntop (Depends-on): Add socklen, since inet_ntop.c
25125         also uses socklen_t.
25126
25127 2005-09-24  Paul Eggert  <eggert@cs.ucla.edu>
25128
25129         * lib/utimens.c (ENOSYS): Define if not already defined.
25130         (futimens): Support having a null PATH if the file descriptor
25131         is nonnegative.
25132
25133         * lib/regex_internal.h (__GNUC_PREREQ, always_inline, inline, pure):
25134         Remove.
25135         (__attribute): Define to empty unless GCC 3.1 or later.
25136         This works around a core dump on OpenBSD 3.4, which has GCC
25137         2.95.3, which dumps core when given __attribute__(()).  It also
25138         simplifies other tests, since we really don't want to bother with
25139         worrying about which ancient version of GCC supported what.
25140         Original problem reported by Yoann Vandoorselaere, with part of
25141         the fix suggested by Derek Price.
25142
25143 2005-09-24  Jim Meyering  <jim@meyering.net>
25144
25145         * lib/verify.h (verify_type__): Use `unsigned int' as the bitfield type
25146         so we can once again use a positive bitfield width of 1 -- now we
25147         don't have to explain why we were using a bitfield width of 2.
25148
25149 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
25150
25151         * m4/regex.m4 (gl_REGEX): If replacing, define regcomp to rpl_regcomp,
25152         and similarly for the other external symbols.  Problem reported
25153         by James Gallager.
25154
25155         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Catch Sun Studio 10u1 on Linux
25156         bug reported by Jim Meyering.
25157
25158         * m4/utimens.m4 (gl_UTIMENS): Check for futimesat.
25159         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Undo previous change;
25160         not needed, since socklen is a prerequisite module.
25161
25162 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
25163
25164         * lib/getaddrinfo.c [HAVE_NETINET_IN_H]: Include <netinet/in.h>.
25165         Problem reported by Eric Blake.
25166         (getaddrinfo): Initialize se so that it's not garbage.
25167         Redo internal storage allocation so that it doesn't make unportable
25168         assumptions about alignment.
25169         Fix a memory leak.
25170
25171         * lib/utimens.c (futimens): Use futimesat if available.
25172         Prefer it to futimes since it doesn't have the futimes bug.
25173
25174         * lib/verify.h (GL_CONCAT0, GL_CONCAT): Remove.
25175         (verify): Don't use the __LINE__ trick, as it doesn't work in general.
25176         Instead, declare a function that returns a pointer to an array,
25177         and use verify_type__ to declare the size of the array.
25178         Problem and germ of a solution reported by Bruno Haible.
25179         (verify_type__): Use 2, not 1, for bitfield size, to avoid
25180         a warning with Irix 6.5 cc.  Problem reported by Bruno Haible.
25181
25182 2005-09-23  Jim Meyering  <jim@meyering.net>
25183
25184         Sync from coreutils.
25185         Correct build failure (socklen_t not defined) on at least
25186         mips-sgi-irix6.5 and alphaev67-dec-osf5.1.
25187         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Require gl_SOCKLEN_T.
25188
25189 2005-09-23  Jim Meyering  <jim@meyering.net>
25190
25191         * modules/getaddrinfo (Depends-on): Add socklen.
25192
25193 2005-09-23  Bruno Haible  <bruno@clisp.org>
25194
25195         * tests/test-verify.c: New file.
25196
25197 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
25198
25199         Sync from coreutils.
25200
25201         * modules/argmatch (Depends-on): Add verify.
25202         * modules/getloadavg (Depends-on): Depend on fcntl-safer, not
25203         unistd-safer.
25204         * modules/save-cwd (Depends-on): Likewise.
25205
25206         * modules/openat (Files): Add lib/openat-die.c.
25207         (Depends-on): Remove error, exitfail.
25208         Add dirname.
25209
25210         * modules/verify: New file.
25211         * MODULES.html.sh (Diagnostics <assert.h>): New section,
25212         with "verify" module.
25213
25214 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
25215
25216         Sync from coreutils.
25217
25218         * m4/backupfile.m4, calloc.m4, chown.m4, cloexec.m4, dup2.m4:
25219         * m4/fileblocks.m4, free.m4, ftruncate.m4, getcwd.m4, getpagesize.m4:
25220         * m4/getugroups.m4, group-member.m4, idcache.m4, link-follow.m4:
25221         * m4/mkstemp.m4, mktime.m4, mountlist.m4, nanosleep.m4, pathmax.m4:
25222         * m4/physmem.m4, posixver.m4, putenv.m4, safe-read.m4, same.m4:
25223         * m4/save-cwd.m4, stdio-safer.m4, unistd-safer.m4, unlinkdir.m4:
25224         * m4/userspec.m4, xgetcwd.m4, xreadlink.m4:
25225         Don't bother checking for string.h, stdlib.h, unistd.h.
25226         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't require
25227         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK; that's now the lstat
25228         module's job.
25229         * m4/jm-macros.m4 (gl_MACROS): Likewise.
25230         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_LSTAT.
25231
25232         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): New macro.
25233         (gl_GETDATE): Use it.
25234
25235         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Don't bother checking for unistd.h.
25236
25237 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
25238
25239         Sync from coreutils.
25240
25241         * lib/.cppi-disable: Add regcomp.c, regex_internal.c, regex_internal.h,
25242         stat-time.h.
25243         * lib/argmatch.h: Include verify.h
25244         (ARGMATCH_VERIFY): Use verify rather than rolling our own.
25245         (ARGMATCH_ASSERT): Remove; unused.
25246         * lib/canonicalize.c: Assume STDC_HEADERS.
25247         * lib/exclude.c: Include "strcase.h".
25248         * lib/regex_internal.h [!defined _LIBC]: Likewise.
25249         * lib/getusershell.c: Include stdio--.h rather than stdio.h
25250         and stdio-safer.h.
25251         (getusershell): Call fopen, not fopen_safer.
25252         * lib/save-cwd.c: Include fcntl--.h rather than fcntl.h.
25253         Do not include unistd-safer.h.
25254         (save_cwd): Don't call fd_safer; no longer needed
25255         now that we include fcntl--.h.
25256
25257         * lib/getdate.y (relative_time): New type.
25258         (RELATIVE_TIME_0): New constant.
25259         (parser_control): Use relative_time instead of doing it ourselves.
25260         (%union): Add new relative_time rel member.
25261         (tYEAR_UNIT, tMONTH_UNIT, tHOUR_UNIT, tMINUTE_UNIT, tSEC_UNIT):
25262         Now typeless.
25263         (relunit, relunit_snumber): Now of type rel.
25264         (zone, rel, relunit, get_date): Adjust to above changes.
25265
25266         * lib/getloadavg.c: Include fcntl--.h rather than fcntl.h.
25267         Do not include unistd-safer.h.
25268         (getloadavg): Don't call fd_safer; no longer needed
25269         now that we include fcntl--.h.
25270
25271         * lib/mkdir-p.c (ENOSYS): Define to EEXIST if not defined.
25272         (make_dir_parents): Treat ENOSYS like EEXIST.
25273
25274         Improve quality of diagnostics on restore_cwd failure.
25275         * lib/mkdir-p.h (make_dir): Remove.  All uses replaced by mkdir.
25276         (make_dir_parents): Last arg is now int * (for errno), not bool *.
25277         * lib/mkdir-p.c (make_dir, make_dir_parents): Likewise.
25278         Rewrite "mkdir -p" algorithm to avoid the need for "stat"
25279         each time through the loop.  Do not diagnose restore_cwd failure;
25280         that is the caller's job (and perhaps the caller does not care).
25281
25282         * lib/mkdir-p.c (CLEANUP_CWD, CLEANUP): Remove.
25283         (make_dir_parents): Revamp to avoid need for CLEANUP_CWD, CLEANUP.
25284         If the file already exists but is not a directory, don't bother
25285         to try to make its parents.
25286         Close potential file descriptor leak if we can't chdir("/") (!).
25287         Don't always return true if chdir($PWD) fails; return true only
25288         if the requested action was done successfully (except for the
25289         chdir($PWD)).
25290         Don't log final directory unless we actually made it.
25291         Refactor to avoid duplicate code to fix up permissions.
25292         Don't attempt to fix up parent permissions if chdir($PWD) fails.
25293
25294         * lib/strftime.c (my_strftime): Rewrite the previous change slightly,
25295         to make it a bit faster and (I hope) clearer.
25296         * lib/strftime.c (my_strftime): Add support for %:z, %::z, %:::z.
25297         Fix bug in formats like %2N.
25298
25299         * lib/verify.h: New file.
25300
25301 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
25302
25303         Sync from coreutils.
25304         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Check for netinet/in.h.
25305
25306 2005-09-22  Jim Meyering  <jim@meyering.net>
25307
25308         Sync from coreutils.
25309
25310         * m4/lstat.m4 (gl_FUNC_LSTAT):
25311         Use AC_LIBSOURCES to require lstat.c and lstat.h.
25312         Remove obsolete comment.
25313         * m4/xreadlink.m4: Use AC_LIBSOURCES and AC_LIBOBJ.
25314         * m4/xstrtod.m4: Likewise.
25315
25316         * m4/openat.m4 (gl_FUNC_OPENAT): Add openat-die.c.
25317
25318 2005-09-22  Jim Meyering  <jim@meyering.net>
25319
25320         Sync from coreutils.
25321
25322         * lib/backupfile.c: Use ARGMATCH_VERIFY, just in case.
25323
25324         * lib/posixtm.c (posixtime) [lint]: Initialize *all* of tm0, not just
25325         the .tm_year member, since otherwise gcc-4.0 would now warn about
25326         tm_zone, tm_gmtoff, tm_isdst, tm_yday, tm_wday.
25327
25328         * lib/quotearg.c (quotearg_n_options): Change code to be suboptimal, in
25329         order to avoid an unsuppressible warning from gcc on 64-bit systems.
25330
25331         * lib/getdate.y (get_date): Undo part of the 2005-04-04 change, so that
25332         the command "date -d'2005-03-27 +1 day'" succeeds once again, even
25333         when run in a time zone for which daylight savings time is in effect
25334         for the starting date.
25335
25336         * lib/mkdir-p.c (make_dir_parents): Don't let a failed chdir($PWD)
25337         stop us from restricting permissions of just-created absolute-named
25338         directories.
25339         * lib/mkdir-p.c (CLEANUP_CWD): Return *true*, not false when failing
25340         to restore initial working directory.
25341         * lib/mkdir-p.c (make_dir_parents): New parameter:
25342         different_working_dir, to tell caller if/when we change the working
25343         directory and are unable to return to the initial one.
25344         * lib/mkdir-p.h (make_dir_parents): Update prototype.
25345         * lib/mkdir-p.c (CLEANUP_CWD): Change one more `return 1' to
25346         `return false'.  This fixes a bug introduced on 2004-07-30.
25347
25348         * lib/openat.c (fdopendir): Be sure to close the supplied
25349         file descriptor before returning.  This makes our replacement
25350         implementation a little closer to Solaris's, where fdopendir
25351         ties the file descriptor to the returned DIR* pointer.
25352         * lib/openat.c (unlinkat): New function.
25353         * lib/openat.h (unlinkat): Add prototype.
25354         * lib/openat-die.c (openat_save_fail): Rename from openat_save_die.
25355         (openat_restore_fail): Rename from openat_restore_die.
25356         * lib/openat.c, openat.h: Reflect s/_die/_fail/ renaming.
25357
25358         Provide an alternative to exiting immediately upon save_cwd or
25359         restore_cwd failure.  Now, an application can arrange e.g.,
25360         to perform a longjump in that case.
25361         * lib/openat.c: Include dirname.h.
25362         Use IS_ABSOLUTE_FILE_NAME rather than testing for leading slash.
25363         (rpl_openat, fdopendir, fstatat): Call openat_save_die
25364         and openat_restore_die rather than calling error directly.
25365         Don't include "error.h" or "exitfail.h"; they're no longer needed.
25366
25367         * lib/openat-die.c (openat_save_die, openat_restore_die): New file.
25368         * lib/openat.h (openat_save_die, openat_restore_die): Declare and
25369         define.
25370
25371         * lib/strftime.c [FPRINTFTIME] (fprintftime): Provide a new interface:
25372         size_t fprintftime (FILE *fp, char const *fmt, struct tm const *tm,
25373                             int utc, int nanoseconds);
25374         Background:
25375         date should not have to allocate a megabyte of virtual memory to
25376         handle a format argument like +%1048575T.  When implemented with
25377         strftime, it must allocate such a buffer, use strftime to fill it
25378         in, print it, then free it.
25379         With fprintftime, it simply prints everything and exits.
25380         With no need for memory allocation, that's one fewer way to fail.
25381         * lib/strftime.c (my_strftime): Parse the colons of %:::z *after* the
25382         optional field width, not before, so we accept %9:z, not %:9z.
25383         (my_strftime): Be sure to use L_('x') for literals.
25384
25385         * lib/backupfile.c, lib/canon-host.c, lib/canonicalize.c, lib/chown.c:
25386         * lib/cloexec.c, lib/dup-safer.c, lib/dup2.c, lib/euidaccess.c:
25387         * lib/fd-safer.c, lib/fileblocks.c, lib/fopen-safer.c, lib/fsusage.c:
25388         * lib/ftruncate.c, lib/getcwd.c, lib/getcwd.h, lib/getloadavg.c:
25389         * lib/getopt_.h, lib/getpagesize.h, lib/getugroups.c:
25390         * lib/group-member.c, lib/human.h, lib/idcache.c, lib/mkdir-p.c:
25391         * lib/mountlist.c, lib/nanosleep.c, lib/pathmax.h, lib/physmem.c:
25392         * lib/posixver.c, lib/putenv.c, lib/raise.c, lib/safe-read.c:
25393         * lib/same.c, lib/save-cwd.c, lib/setenv.c, lib/settime.c:
25394         * lib/tempname.c, lib/unlinkdir.c, lib/unsetenv.c, lib/userspec.c:
25395         * lib/xgethostname.c, lib/xreadlink.c:
25396         Assume HAVE_UNISTD_H, i.e., include <unistd.h> unconditionally.
25397
25398         * lib/chown.c, lib/cloexec.c, lib/dup-safer.c, lib/dup2.c:
25399         * lib/fsusage.c, lib/getcwd.c, lib/getloadavg.c, lib/mountlist.c:
25400         * lib/openat.h, lib/save-cwd.c, lib/tempname.c:
25401         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
25402         and don't include <sys/file.h>).
25403
25404 2005-09-22  Eric Blake  <ebb9@byu.net>  (tiny change)
25405
25406         Sync from coreutils.
25407
25408         * lib/getloadavg.c (getloadavg) [__CYGWIN__]: Port to cygwin.
25409         [__linux__]: Allocate a big enough buffer for /proc/loadavg.
25410         [!LDAV_DONE]: Avoid unused variable warning.
25411
25412 2005-09-21  Bruno Haible  <bruno@clisp.org>
25413
25414         * lib/unicodeio.h (unicode_to_mb): New declaration.
25415
25416 2005-09-20  Derek Price  <derek@ximbiot.com>
25417
25418         * lib/getaddrinfo.c: Don't include <netdb.h> included from
25419         getaddrinfo.h.
25420
25421 2005-09-20  Bruno Haible  <bruno@clisp.org>
25422
25423         * gnulib-tool: Remove trailing slashes from the values specified for
25424         --source-base, --m4-base, --tests-base, --aux-dir.
25425         Suggested by Simon Josefsson <jas@extundo.com>.
25426
25427 2005-09-20  Bruno Haible  <bruno@clisp.org>
25428
25429         * gnulib-tool (func_all_modules, func_modules_transitive_closure,
25430         func_modules_to_filelist, func_import, func_create_testdir): Make all
25431         sorting results locale-independent, so that gnulib-cache.m4 doesn't
25432         change when gnulib-tool is invoked in a different locale.
25433
25434 2005-09-19  Simon Josefsson  <jas@extundo.com>
25435
25436         * m4/socklen.m4: Fix typo.
25437
25438 2005-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25439
25440         Use a consistent style for including <config.h>.
25441         * lib/__fpending.c, lib/acl.c, lib/argmatch.c, lib/argp-help.c,
25442         lib/argp-parse.c, lib/argp-pvh.c, lib/backupfile.c, lib/basename.c,
25443         lib/c-stack.c, lib/calloc.c, lib/check-version.c, lib/cloexec.c,
25444         lib/closeout.c, lib/copy-file.c, lib/creat-safer.c, lib/cycle-check.c,
25445         lib/dirfd.c, lib/dirname.c, lib/dup-safer.c, lib/dup2.c,
25446         lib/euidaccess.c, lib/exclude.c, lib/exitfail.c, lib/fatal-signal.c,
25447         lib/fd-safer.c, lib/file-type.c, lib/fileblocks.c, lib/filemode.c,
25448         lib/filenamecat.c, lib/findprog.c, lib/fnmatch.c, lib/fopen-safer.c,
25449         lib/free.c, lib/fsusage.c, lib/ftruncate.c, lib/full-write.c,
25450         lib/fwriteerror.c, lib/getaddrinfo.c, lib/getcwd.c, lib/getdelim.c,
25451         lib/getline.c, lib/getlogin_r.c, lib/getndelim2.c, lib/getnline.c,
25452         lib/getopt1.c, lib/getpass.c, lib/group-member.c, lib/hard-locale.c,
25453         lib/hash-pjw.c, lib/hash.c, lib/human.c, lib/idcache.c,
25454         lib/inet_ntop.c, lib/isdir.c, lib/long-options.c, lib/malloc.c,
25455         lib/memcasecmp.c, lib/memcmp.c, lib/memcoll.c, lib/memcpy.c,
25456         lib/memmove.c, lib/mkdir-p.c, lib/modechange.c, lib/mountlist.c,
25457         lib/open-safer.c, lib/physmem.c, lib/pipe-safer.c, lib/pipe.c,
25458         lib/poll.c, lib/posixver.c, lib/progname.c, lib/progreloc.c,
25459         lib/putenv.c, lib/quote.c, lib/quotearg.c, lib/readline.c,
25460         lib/readlink.c, lib/realloc.c, lib/regex.c, lib/rename.c, lib/rmdir.c,
25461         lib/rpmatch.c, lib/safe-read.c, lib/same.c, lib/save-cwd.c,
25462         lib/savedir.c, lib/sig2str.c, lib/strcspn.c, lib/strerror.c,
25463         lib/stripslash.c, lib/strncasecmp.c, lib/strndup.c, lib/strnlen.c,
25464         lib/strnlen1.c, lib/strsep.c, lib/strstr.c, lib/strtod.c,
25465         lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c,
25466         lib/time_r.c, lib/userspec.c, lib/utimecmp.c, lib/version-etc-fsf.c,
25467         lib/version-etc.c, lib/wait-process.c, lib/xalloc-die.c, lib/xgetcwd.c,
25468         lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c, lib/xreadlink.c,
25469         lib/xsetenv.c, lib/xstrndup.c, lib/xstrtoimax.c, lib/xstrtol.c,
25470         lib/xstrtoumax.c, lib/yesno.c:
25471         Standardize inclusion of config.h.
25472         * lib/__fpending.h, lib/dirfd.h, lib/getdate.h, lib/human.h,
25473         lib/inttostr.h:  Removed inclusion of config.h from header files.
25474         * lib/inttostr.c:  Adjusted in-tree users.
25475         * lib/timespec.h: Remove superfluous warning to include config.h.
25476         * lib/atexit.c, lib/chdir-long.c, lib/chown.c, lib/fchown-stub.c,
25477         lib/getgroups.c, lib/gettimeofday.c, lib/lchown.c, lib/lstat.c,
25478         lib/mkdir.c, lib/mkstemp.c, lib/nanosleep.c, lib/openat.c, lib/raise.c,
25479         lib/readtokens0.c, lib/readutmp.c, lib/unlinkdir.c: Guard inclusion of
25480         config.h with HAVE_CONFIG_H.
25481
25482 2005-09-19  Jim Meyering  <jim@meyering.net>
25483
25484         * modules/pathmax (License): Change to LGPL.
25485
25486 2005-09-19  Derek Price  <derek@ximbiot.com>
25487
25488         * config/srclist.txt: glibc's glob.h is now in lib/glob-libc.h.
25489
25490 2005-09-19  Bruno Haible  <bruno@clisp.org>
25491
25492         * gnulib-tool (import): Provide default for --tests-base.
25493
25494 2005-09-19  Bruno Haible  <bruno@clisp.org>
25495
25496         * doc/quote.texi: New file, extracted from gnulib.texi.
25497         * doc/ctime.texi: New file, extracted from gnulib.texi.
25498         * doc/inet_ntoa.texi: New file, extracted from gnulib.texi.
25499         * doc/gnulib-tool.texi: New file, extracted from gnulib.texi.
25500         * doc/gnulib.texi: Include them.
25501
25502 2005-09-18  Bruno Haible  <bruno@clisp.org>
25503
25504         Portability fix.
25505         * gnulib-tool (func_readlink): New function.
25506         (func_ln_if_changed): Use it.
25507
25508 2005-09-18  Bruno Haible  <bruno@clisp.org>
25509
25510         * gnulib-tool: Support --with-tests also with --import.
25511         (func_emit_tests_Makefile_am): Use variables $m4base and $testsbase.
25512         (func_import): Use variables $testsbase and $inctests. Emit a
25513         gl_TESTS_BASE form into gnulib-cache.m4. Create $testsbase/Makefile.am.
25514         Remind the user to add AC_CONFIG_FILES($testsdir/Makefile) and
25515         SUBDIRS += $testsdir.
25516         (func_create_testdir): Update.
25517
25518 2005-09-18  Bruno Haible  <bruno@clisp.org>
25519
25520         * gnulib-tool: Revise --dry-run implementation. Use variable $doit
25521         instead of $dry_run.
25522         (func_cp_if_changed, func_mv_if_changed): Remove functions.
25523         (func_ln_if_changed): Don't handle dry-run here.
25524         (func_import): In dry-run mode, detect more precisely which actions
25525         would be performed, and don't use "...ing" verbs.
25526
25527 2005-09-18  Bruno Haible  <bruno@clisp.org>
25528
25529         * gnulib-tool (func_tmpdir): New function, taken from GNU gettextize.
25530         (func_import): Use join on two temporary files instead of three nested
25531         loops, in order to determine which files are new or old.
25532
25533 2005-09-18  Bruno Haible  <bruno@clisp.org>
25534
25535         * gnulib-tool (func_import): Comment out code that spits out the
25536         new files with --dry-run.
25537
25538 2005-09-18  Bruno Haible  <bruno@clisp.org>
25539
25540         * doc/gnulib.texi (Invoking gnulib-tool): 50% rewritten.
25541
25542 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
25543
25544         * lib/stat-time.h: New file.
25545         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP, ATIME_CMP, CTIME_CMP):
25546         (MTIME_CMP, TIMESPEC_NS): Remove.  Now done by stat-time.h,
25547         in a different way.
25548         (timespec_cmp): New function.
25549         * lib/utimecmp.c: Include stat-time.h.
25550         (SYSCALL_RESOLUTION): Depend on whether various struct stat
25551         members exist, not on the obsolescent ST_MTIM_NSEC.
25552         (utimecmp): Use the new stat-time functions rater than TIMESPEC_NS.
25553
25554 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
25555
25556         * config/srclist.txt: Remove glibc bug 1033 and uncomment mktime.c.
25557
25558 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
25559
25560         * MODULES.html.sh (File system functions): Add stat-time.
25561         * modules/stat-time: New file.
25562         * modules/timespec (Files): Remove m4/st_mtim.m4; this
25563         is now done in a different way, by the stat-time module.
25564         * modules/utimecmp (Depends-on): Add stat-time.
25565
25566 2005-09-15  Paul Eggert  <eggert@cs.ucla.edu>
25567
25568         * m4/st_mtim.m4: Remove.  Superseded by...
25569         * m4/stat-time.m4: New file.
25570         * m4/timespec.m4 (gl_TIMESPEC): Require AC_C_INLINE.
25571         Do not invoke AC_STRUCT_ST_MTIM_NSEC; no longer needed.
25572
25573 2005-09-15  Derek Price  <derek@ximbiot.com>
25574
25575         * m4/strstr.m4 (gl_FUNC_STRSTR): Don't define strstr here.
25576
25577 2005-09-15  Derek Price  <derek@ximbiot.com>
25578
25579         * lib/regex_internal.h: Blank `pure' for GNUC < 3.
25580         * lib/regex_internal.c: Ditto, using this...
25581         (__GNUC_PREREQ): ...new macro.
25582         * lib/regcomp.c, regexec.c: Blank `always_inline' for GNUC < 3.1
25583         using...
25584         (__GNUC_PREREQ): ...this new macro.
25585
25586         * lib/strstr.h: Include string.h. Define strstr as a macro here.
25587
25588 2005-09-15  Derek Price  <derek@ximbiot.com>
25589             Paul Eggert  <eggert@cs.ucla.edu>
25590
25591         * lib/regcomp.c, regexec.c, regex_internal.c: Back out previous
25592         changes, consolidating in...
25593         * lib/regex_internal.h: ...this file.
25594
25595 2005-09-13  Jim Meyering  <jim@meyering.net>
25596
25597         * lib/canon-host.c: Filter through gnu indent and reword comments
25598         slightly.
25599         * lib/canon-host.h (ch_strerror_r): Tweak cpp indentation and spacing.
25600
25601 2005-09-13  Derek Price  <derek@ximbiot.com>
25602
25603         * lib/canon-host.c (canon_host_r): Set *cherror on memory allocation
25604         failure.
25605         Reported by Jim Meyering  <jim@meyering.net>.
25606
25607 2005-09-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
25608
25609         * lib/base64.c: Typo.
25610         (base64_encode): Put b64str in initialized data section.
25611
25612 2005-09-12  Paul Eggert  <eggert@cs.ucla.edu>
25613
25614         Merge glibc and coreutils changes into gnulib, plus a few
25615         extra fixes.
25616         * lib/md5.c: Use #error rather than a string.
25617         (CYCLIC): New macro, from glibc source.  Use it instead of rol.
25618         * lib/md5.h (__GNUC_PREREQ, __THROW): Define if not defined already.
25619         (__attribute__): Define to empty for non recent-GCC.
25620         (__md5_buffer, __md5_finish_ctx, __md5_init_ctx, __md5_process_block):
25621         (__md5_process_bytes, __md5_read_ctx, __md5_stream):
25622         Renamed from their non-__ counterparts, with new macros replacing
25623         them if not _LIBC.  Add __THROW attribute.
25624         (rol): Remove.
25625         (struct md5_ctx): Align buffer if using GCC.
25626         * lib/sha1.h (struct sha1_ctx): Likewise.
25627         * lib/sha1.c (SWAP): Renamed from the NOTSWAP.  All uses changed.
25628         The old name was backwards.
25629         (NOTSWAP): Remove; not used.
25630         (rol): New macro, moved here from md5.h.
25631         (sha1_process_block): Remove a FIXME that doesn't make sense.
25632
25633 2005-09-12  Derek Price  <derek@ximbiot.com>
25634
25635         Return usable errors from canon-host.
25636         * lib/canon-host.h: New file.
25637         * lib/canon-host.c (canon_host): Wrap...
25638         (canon_host_r): ...this new function, which now relies exclusively on
25639         getaddrinfo.
25640         (ch_strerror): New function.
25641         (last_cherror): New global.
25642         * lib/getaddrinfo.c: Move include of getaddrinfo.h first to test
25643         interface.
25644         (getaddrinfo): Add AI_CANONNAME functionality.  Don't do arithmetic on
25645         void *.
25646         (freeaddrinfo): Free ai->ai_canonname when set.
25647
25648 2005-09-12  Derek Price  <derek@ximbiot.com>
25649
25650         Make canon-host require getaddrinfo.
25651         * m4/canon-host.m4 (gl_CANON_HOST): Remove most dependencies.
25652         AC_LIBSOURCE canon-host.h.  Call...
25653         (gl_PREREQ_CANON_HOST): ...this new function, which requires
25654         gl_GETADDRINFO.
25655         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Compile gai_strerror when needed.
25656
25657 2005-09-12  Derek Price  <derek@ximbiot.com>
25658
25659         * modules/canon-host: Add canon-host.h.  Depend on getaddrinfo.  Make
25660         LGPL.
25661         * modules/getaddrinfo: Add link to opengroup spec.  Depend on strdup.
25662
25663 2005-09-12  Derek Price  <derek@ximbiot.com>
25664
25665         * lib/gai_strerror.c: Include config.h when available.  Include
25666         getaddrinfo.h before other headers to test interface.
25667         Reported by Larry Jones <lawrence.jones@ugs.com>.
25668
25669 2005-09-12  Derek Price  <derek@ximbiot.com>
25670             Paul Eggert  <eggert@cs.ucla.edu>
25671
25672         * modules/glob (Files): Add glob-libc.h.
25673
25674 2005-09-12  Derek Price  <derek@ximbiot.com>
25675             Paul Eggert  <eggert@cs.ucla.edu>
25676
25677         * m4/glob.m4 (gl_GLOB_SUBSTITUTE): AC_LIBSOURCES for glob.c,
25678         glob_.h, glob-libc.h.
25679         (gl_PREREQ_GLOB): Remove _SYS_CDEFS_H hack; no longer needed.
25680
25681 2005-09-12  Derek Price  <derek@ximbiot.com>
25682             Paul Eggert  <eggert@cs.ucla.edu>
25683
25684         * lib/glob-libc.h: Renamed from glob_.h.  The new version is
25685         taken from libc's glob.h, except with '#ifdef __GLOB_GNULIB'
25686         protecting things that should be done only in gnulib contexts.
25687         * lib/glob_.h: New file, containing only the glob things needed for
25688         gnulib.
25689         (GLOB_PREFIX): Remove.  All uses changed to look for __GLOB_GNULIB.
25690         (__GLOB_CONCAT, __GLOB_XCONCAT, __GLOB_ID): Remove; no longer needed.
25691         (glob, globfree, glob_pattern_p): Now defined simply in terms of
25692         rpl_glob, rpl_globfree, rpl_glob_pattern_p.
25693         (__GLOB_GNULIB): New macro, to keep the glob.h changes clearer
25694         and to respect the namespace rules better.
25695
25696 2005-09-08  Simon Josefsson  <jas@extundo.com>
25697
25698         * modules/socklen: New file.
25699
25700 2005-09-08  Simon Josefsson  <jas@extundo.com>
25701
25702         * m4/socklen.m4: New file.
25703
25704 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
25705
25706         * modules/utimens (Files): Add m4/utimbuf.m4, since
25707         m4/utimens.m4 requires gl_CHECK_TYPE_STRUCT_UTIMBUF.
25708         Reported by Sergey Poznyakoff.
25709
25710 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
25711
25712         * lib/glob.c (glob, globfree, __glob_pattern_p): Use old-style function
25713         definitions, since that's the preferred style in glibc.
25714         Fix a minor spacing issue, and update copyright notice to match
25715         glibc's.
25716
25717 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
25718
25719         * config/srclist.txt: Remove glibc bug 1061; it's been fixed.
25720
25721 2005-09-06  Simon Josefsson  <jas@extundo.com>
25722
25723         * lib/getpass.c (getpass): Fix typo, test for HAVE_TCSETATTR and not
25724         TCSETATTR.  Reported by Derek Price <derek@ximbiot.com>.
25725
25726 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
25727
25728         * lib/regex_internal.h (bitset_not): Add parens to avoid gcc -Wall
25729         warning.
25730
25731 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
25732
25733         * config/srclist.txt: Add glibc bug 1302.
25734
25735 2005-09-05  Paul Eggert  <eggert@cs.ucla.edu>
25736
25737         Change bitset word type from unsigned int to unsigned long int,
25738         as this has better performance on typical 64-bit hosts.
25739         Port bitset code to hosts with unusual word sizes.
25740         * lib/regcomp.c (build_equiv_class, build_charclass, build_range_exp):
25741         (build_collating_symbol):
25742         Prefer bitset to re_bitset_ptr_t in prototypes, when the actual
25743         argument is a bitset.  This is merely a style issue, but it makes
25744         it clearer that an entire array is expected.
25745         (re_compile_fastmap_iter, init_dfa, init_word_char, optimize_subexps):
25746         * lib/regcomp.c (lower_subexp, parse_bracket_exp, built_charclass_op):
25747         Port to the case where bitset_word is not the same as unsigned int.
25748         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
25749         (bitset_not, bitset_merge, bitset_set_all, bitset_mask):
25750         Likewise.
25751         * lib/regexec.c (check_dst_limits_calc_pos_1,
25752         check_subexp_matching_top):
25753         (build_trtable, group_nodes_into_DFAstates):
25754         Likewise.
25755         * lib/regcomp.c (re_compile_fastmap_iter, utf8_sb_map, optimize_utf8):
25756         Don't assume that SBC_MAX is a multiple of BITSET_WORD_BITS.
25757         * lib/regex_internal.h (bitset_set_all, bitset_not): Likewise.
25758         * lib/regexec.c (group_nodes_into_DFAstates): Likewise.
25759         * lib/regcomp.c (utf8_sb_map): Don't assume UINT_MAX == 0xffffffff.
25760         * lib/regcomp.c (optimize_subexps, lower_subexp):
25761         Work even if bitset_word has holes in its bitwise representation.
25762         * lib/regex_internal.h (BITSET_WORD_BITS): Likewise.
25763         * lib/regexec.c (check_dst_limits_calc_pos_1,
25764         check_subexp_matching_top):
25765         Likewise.
25766         * lib/regex_internal.c (re_string_reconstruct):
25767         Don't assume UCHAR_MAX == 255.
25768         * lib/regex_internal.h (bitset_set_all): Likewise.
25769         * lib/regex_internal.h (BITSET_WORD_BITS): Renamed from UINT_BITS.
25770         All uses changed.
25771         (BITSET_WORDS): Renamed from BITSET_UINTS.  All uses changed.
25772         (bitset_word): New type, replacing 'unsigned int' for bitset uses.
25773         All uses changed.
25774         (BITSET_WORD_MAX): New macro.
25775         (bitset_set, bitset_clear, bitset_contain, bitset_empty):
25776         (bitset_set_all, bitset_copy):  Now inline functions, not macros.
25777         (bitset_empty, bitset_copy):
25778         Prefer sizeof (bitset) to multiplying it out ourselves.
25779         (bitset_not_merge): Remove; unused.
25780         (bitset_contain): Return bool, not unsigned int with one bit on.
25781         All callers changed.
25782         * lib/regexec.c (build_trtable): Don't assume bitset has no stricter
25783         alignment than re_node_set; do this by defining a new internal
25784         type struct dests_alloc and using it to allocate memory.
25785
25786 2005-09-05  Bruno Haible  <bruno@clisp.org>
25787
25788         * gnulib-tool (func_import): Fix comparison in handling of symbolic
25789         links.
25790
25791 2005-09-04  Martin Lambers  <marlam@marlam.de>  (tiny change)
25792
25793         * modules/size_max (Makefile.am): Add size_max.h
25794
25795 2005-09-04  Derek Price  <derek@ximbiot.com>
25796
25797         * gnulib-tool (func_import): Fix reversed $symbolic logic.
25798
25799 2005-09-03  Simon Josefsson  <jas@extundo.com>
25800
25801         * gnulib-tool: Fix typo.
25802
25803 2005-09-03  Simon Josefsson  <jas@extundo.com>
25804
25805         * config/srclist.txt: Add glibc bug 1293.
25806
25807 2005-09-03  Derek Price  <derek@ximbiot.com>
25808
25809         * m4/getlogin_r (gl_GETLOGIN_R): Fix cut & paste error.
25810         From Larry Jones <lawrence.jones@ugs.com>.
25811
25812 2005-09-02  Simon Josefsson  <jas@extundo.com>
25813
25814         * modules/socklen: New file.
25815
25816 2005-09-02  Simon Josefsson  <jas@extundo.com>
25817
25818         * modules/havelib: New module.
25819
25820         * modules/gettext, modules/iconv, modules/lock, modules/readline:
25821         Use havelib.
25822
25823 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
25824
25825         Check for arithmetic overflow when calculating sizes, to prevent
25826         some buffer-overflow issues.  These patches are conservative, in the
25827         sense that when I couldn't determine whether an overflow was possible,
25828         I inserted a run-time check.
25829         * lib/regex_internal.h (re_xmalloc, re_xrealloc, re_x2realloc): New
25830         macros.
25831         (SIZE_MAX) [!defined SIZE_MAX]: New macro.
25832         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc):
25833         (re_xnrealloc, re_x2nrealloc): New inline functions.
25834         * lib/regcomp.c (init_dfa, analyze, build_range_exp,
25835         parse_bracket_exp):
25836         (build_equiv_class, build_charclass): Check for arithmetic overflow
25837         in size expression calculations.
25838         * lib/regex_internal.c (re_string_realloc_buffers):
25839         (build_wcs_upper_buffer, re_node_set_add_intersect):
25840         (re_node_set_init_union, re_node_set_insert, re_node_set_insert_last):
25841         (re_dfa_add_node, register_state): Likewise.
25842         * lib/regexec.c (re_search_stub, re_copy_regs, re_search_internal):
25843         (prune_impossible_nodes, push_fail_stack, set_regs, check_arrival):
25844         (build_trtable, extend_buffers, match_ctx_init, match_ctx_add_entry):
25845         (match_ctx_add_subtop, match_ctx_add_sublast): Likewise.
25846
25847 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
25848
25849         * modules/inttostr (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
25850         m4/ulonglong.m4.  Problem reported by Martin Lambers.
25851
25852 2005-09-02  Bruno Haible  <bruno@clisp.org>
25853
25854         Support for lib vs. lib64 distinction on biarch platforms.
25855         * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): New macro.
25856         (AC_LIB_PREFIX): Require it. Use $acl_libdirstem instead of 'lib'.
25857         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Likewise.
25858
25859 2005-09-02  Bruno Haible  <bruno@clisp.org>
25860
25861         * gnulib-tool (import): In the other first-use case, provide defaults
25862         as well.
25863
25864 2005-09-02  Bruno Haible  <bruno@clisp.org>
25865
25866         * config/srclist.txt: lib-link.m4 and lib-prefix.m4 currently have
25867         patches not yet found in the latest gettext release.
25868
25869 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
25870
25871         * lib/glob.c (GET_LOGIN_NAME_MAX): Renamed from LOGIN_NAME_MAX,
25872         to avoid a collision with bits/local_lim.h in glibc.
25873         All uses changed.  Problem reported by Dmitry V. Levin in
25874         <http://sources.redhat.com/bugzilla/show_bug.cgi?id=1060>.
25875
25876         * lib/regex_internal.c (build_wcs_upper_buffer): Fix portability
25877         bugs in int versus size_t comparisons.
25878         (re_string_context_at): Fix bug where the code assumed that
25879         Idx is signed.
25880
25881         Use bool where appropriate.
25882         * lib/regcomp.c (re_set_fastmap): ICASE arg is bool, not int.
25883         All callers changed.
25884         (calc_eclosure_iter): Likewise, for ROOT arg.
25885         (parse_bracket_element): Likewise, for ACCEPT_HYPHEN arg.
25886         (build_charclass_op): Likewise, for NON_MATCH arg.
25887         * lib/regex_internal.c (re_string_allocate, re_string_construct):
25888         (re_string_construct_common): Likewise, for ICASE arg.
25889         * lib/regexec.c (re_search_2_stub, re_search_stub):
25890         Likewise, for RET_LEN arg.
25891         (check_matching): Likewise, for FL_LONGEST_MATCH arg.
25892         (set_regs): Likewise, for FL_BACKTRACK arg.
25893         * lib/regcomp.c (re_compile_fastmap_iter, optimize_utf8):
25894         (duplicate_node_closure, calc_inveclosure, calc_eclosure):
25895         (calc_eclosure_iter, parse_bracket_exp):
25896         Use bool for internal variables that are booleans.
25897         * lib/regexec.c (re_search_internal, check_matching,
25898         proceed_next_node):
25899         (set_regs, build_sifted_states, sift_states_bkref):
25900         (check_arrival_add_next_nodes, check_arrival_expand_ecl_sub):
25901         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
25902         (find_collation_sequence_value):
25903         Likewise.
25904         * lib/regex_internal.c (re_node_set_insert, re_node_set_insert_last):
25905         (re_node_set_compare):
25906         Return bool, not int. All callers changed.
25907         * lib/regexec.c (check_halt_node_context, check_dst_limits):
25908         (build_trtable, check_node_accept): Likewise.
25909         * lib/regex_internal.h: Include stdbool.h.
25910
25911         Fix bugs uncovered when converting to bool.
25912         * lib/regcomp.c (calc_eclosure_iter): Check for storage allocation
25913         failure instead of charging ahead blindly.
25914         * lib/regex_internal.c (register_state): Likewise.
25915         * lib/regexec.c (re_search_2_stub): Use simpler method than boolean
25916         for freeing internal storage.
25917         (group_nodes_into_DFA_states): Use unsigned int, not int, for
25918         bitset pieces used as boolean, to avoid undefined behavior
25919         on hosts that do int overflow checking.
25920
25921 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
25922
25923         * config/srclist.txt: Add glibc bugs 1285-1287.
25924
25925 2005-09-01  Jim Meyering  <jim@meyering.net>
25926
25927         * m4/lchown.m4: Require gl_FUNC_CHOWN, for the definition of
25928         CHOWN_MODIFIES_SYMLINK, which is used by lchown.c.
25929         Require gl_STAT_MACROS, too.
25930
25931 2005-09-01  Bruno Haible  <bruno@clisp.org>
25932
25933         * gnulib-tool (import): In the first-use case, provide defaults.
25934
25935 2005-09-01  Bruno Haible  <bruno@clisp.org>
25936
25937         * gnulib-tool (func_import): Remove the .tmp files.
25938
25939 2005-09-01  Bruno Haible  <bruno@clisp.org>
25940
25941         * gnulib-tool (func_import): Fix handling of symbolic links.
25942
25943 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
25944
25945         On 64-bit hosts (where size_t is 64 bits and int is 32 bits), the
25946         old glibc regex code mishandles strings longer than 2**31 bytes.
25947         This patch fixes this when the regex code is used in gnulib
25948         (i.e., outside glibc).
25949
25950         This patch should not affect the use of the regex code inside
25951         glibc.  No doubt this problem also needs to be handled for glibc
25952         as well, but the result will be an incompatible change to the
25953         glibc ABI, and the old ABI will have to be supported too.  That
25954         can be the the subject for another patch.
25955
25956         * lib/regex.h (_REGEX_LARGE_OFFSETS): New feature-test macro,
25957         governing whether the rest of this patch is active.  By default,
25958         the macro is disabled and the patch has no effect.
25959         (regoff_t) [defined _REGEX_LARGE_OFFSETS]: Define to off_t, not int.
25960         (__re_idx_t, __re_size_t, __re_long_size_t): New types.
25961         (struct re_pattern_buffer, re_search, re_search_2, re_match):
25962         (re_match_2, re_set_registers): Use the new types.
25963         * lib/regex_internal.h (Idx, re_hashval_t): New types.
25964         (REG_MISSING, REG_ERROR, REG_VALID_INDEX, REG_VALID_NONZERO_INDEX):
25965         New macros.
25966         (re_node_set, re_charset_t, re_token_t, re_string_realloc_buffers):
25967         (re_string_context_at, bin_tree_t, re_dfastate_t):
25968         (struct re_state_table_entry, state_array_t, re_sub_match_last_t):
25969         (re_sub_match_top_t, re_match_context_t, re_sift_context_t):
25970         (struct re_fail_stack_ent_t, struct re_fail_stack_t, struct re_dfa_t):
25971         (re_string_char_size_at, re_string_wchar_at):
25972         (re_string_elem_size_at):
25973         Use the new types and macros to port to 64-bit hosts.
25974         Use unsigned types for internal values, so that the code
25975         mostly works even for arrays larger than SSIZE_MAX.
25976         * lib/regcomp.c (re_compile_internal, init_dfa, duplicate_node):
25977         (search_duplicated_node, calc_eclosure_iter, fetch_number):
25978         (parse_reg_exp, parse_branch, parse_expression, parse_sub_exp):
25979         (build_equiv_class, build_charclass, re_compile_fastmap_iter):
25980         (free_dfa_content, create_initial_state, optimize_utf8, analyze):
25981         (optimize_subexps, calc_first, link_nfa_nodes, duplicate_node_closure):
25982         (calc_inveclosure, parse_dup_op, build_range_exp):
25983         (build_collating_symbol, parse_bracket_exp, build_charclass_op):
25984         (fetch_number, create_token_tree, mark_opt_subexp):
25985         Likewise.
25986         * lib/regex_internal.c (re_string_construct_common,
25987         create_ci_newstate):
25988         (create_cd_newstate, re_string_allocate, re_string_construct):
25989         (re_string_realloc_buffers, build_wcs_upper_buffer):
25990         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
25991         (re_string_reconstruct, re_string_peek_byte_case):
25992         (re_string_fetch_byte_case, re_string_context_at):
25993         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
25994         (re_node_set_init_copy, re_node_set_add_intersect):
25995         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
25996         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
25997         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
25998         (re_acquire_state, re_acquire_state_context, register_state):
25999         Likewise.
26000         * lib/regex.c (match_ctx_init, match_ctx_add_entry,
26001         search_cur_bkref_entry):
26002         (match_ctx_add_subtop, match_ctx_add_sublast, sift_ctx_init):
26003         (re_search_internal, re_search_2_stub, re_search_stub)
26004         (re_copy_regs, check_matching, check_halt_state_context, update_regs):
26005         (push_fail_stack, sift_states_iter_mb, build_sifted_states):
26006         (update_cur_sifted_state, check_dst_limits):
26007         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
26008         (check_subexp_limits, sift_states_bkref, merge_state_array):
26009         (check_subexp_matching_top, get_subexp, get_subexp_sub):
26010         (find_subexp_node, check_arrival, check_arrival_add_next_nodes):
26011         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
26012         (expand_bkref_cache, check_node_accept_bytes):
26013         (group_nodes_into_DFAstates, check_node_accept, regexec, re_match):
26014         (re_search, re_match_2, re_search_2, prune_impossible_nodes):
26015         (acquire_init_state_context, check_halt_node_context):
26016         (proceed_next_node, pop_fail_stack, set_regs, free_fail_stack_return):
26017         (sift_states_backward, clean_state_log_if_needed):
26018         (sub_epsilon_src_nodes, add_epsilone_src_nodes, merge_state_with_log):
26019         (find_recover_state, transit_state_sb, transit_state_mb):
26020         (transit_state_bkref, build_trtable, match_ctx_clean):
26021         Likewise.
26022         * lib/regcomp.c (parse_dup_op): Add an extra test if Idx is unsigned,
26023         to work around an assumption that REG_MISSING is negative.
26024
26025         * lib/regcomp.c (re_comp) [defined _REGEX_RE_COMP || defined _LIBC]:
26026         (seek_collating_symbol_entry) [defined _LIBC]:
26027         (lookup_collation_sequence_value) [defined _LIBC]:
26028         (build_range_exp, build_collating_symbol) [defined _LIBC]:
26029         Use prototypes rather than old-style function definitions.
26030         * lib/regexec.c (re_exec) [defined _REGEX_RE_COMP || defined _LIBC]:
26031         (transit_state_sb) [0]:
26032         (find_collation_sequence_value) [defined _LIBC]: Likewise.
26033
26034         * lib/regexec.c (re_search_internal): Simplify update of rm_so and
26035         rm_eo.
26036
26037         * lib/regcomp.c (re_compile_fastmap_iter, init_dfa, init_word_char):
26038         (optimize_subexps, lower_subexp):
26039         Don't assume 1<<31 has defined behavior on hosts with 32-bit int,
26040         since the signed shift might overflow.  Use 1u<<31 instead.
26041         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
26042         Likewise.
26043         * lib/regexec.c (check_dst_limits_calc_pos_1,
26044         check_subexp_matching_top): Likewise.
26045
26046         * lib/regcomp.c (optimize_subexps, lower_subexp):
26047         Use CHAR_BIT rather than 8, for clarity.
26048         * lib/regexec.c (check_dst_limits_calc_pos_1):
26049         (check_subexp_matching_top): Likewise.
26050         * lib/regcomp.c (init_dfa): Make table_size unsigned, so that we don't
26051         have to worry about portability issues when shifting it left.
26052         Remove no-longer-needed test for table_size > 0.
26053         * lib/regcomp.c (parse_sub_exp): Do not shift more bits than there are
26054         in a word, as the resulting behavior is undefined.
26055         * lib/regexec.c (check_dst_limits_calc_pos_1): Likewise;
26056         in one case, a <= should have been an <, and in another case the
26057         whole test was missing.
26058         * lib/regex_internal.h (BYTE_BITS): Remove.  All uses changed to
26059         the standard name CHAR_BIT.
26060         * lib/regexec.c (match_ctx_add_entry): Don't assume that ~0 == -1;
26061         this is not true on one's complement and signed-magnitude hosts.
26062
26063         * lib/regex_internal.h (re_sub_match_top_t): Remove unused member
26064         next_last_offset.
26065         (struct re_dfa_t): Remove unused member states_alloc.
26066         * lib/regcomp.c (init_dfa): Don't initialize unused members.
26067
26068 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
26069
26070         * m4/regex.m4 (gl_REGEX): Require AC_SYS_LARGEFILE, Define
26071         _REGEX_LARGE_OFFSETS).  Test for regoff_t/off_t bug in 64-bit
26072         and large-file glibc and in 32-bit large-file Solaris.
26073
26074 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
26075
26076         * lib/regex_internal.c (re_string_reconstruct): Don't assume buffer
26077         lengths fit in regoff_t; this isn't true if regoff_t is the same
26078         width as size_t.
26079         * lib/regex.c (re_search_internal): 5th arg is LAST_START
26080         (= START + RANGE) instead of RANGE.  This avoids overflow
26081         problems when regoff_t is the same width as size_t.
26082         All callers changed.
26083         (re_search_2_stub): Check for overflow when adding the
26084         sizes of the two strings.
26085         (re_search_stub): Check for overflow when adding START
26086         to RANGE; if it occurs, substitute the extreme value.
26087
26088 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
26089
26090         * config/srclist.txt: Add glibc bugs 1273, 1278-1282, 1284.
26091
26092 2005-08-31  Jim Meyering  <jim@meyering.net>
26093
26094         * lib/regcomp.c (search_duplicated_node): Make first pointer arg
26095         a pointer-to-const.
26096         * lib/regex_internal.c (create_ci_newstate, create_cd_newstate):
26097         (register_state): Likewise.
26098         * lib/regexec.c (search_cur_bkref_entry, check_dst_limits):
26099         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
26100         (group_nodes_into_DFAstates): Likewise.
26101
26102 2005-08-31  Jim Meyering  <jim@meyering.net>
26103
26104         * check-module: Add a FIXME comment.
26105
26106 2005-08-31  Eric Blake  <ebb9@byu.net>
26107
26108         * modules/unistd-safer (Files): Add unistd--.h.
26109         * modules/stdio-safer (Files): Add stdio--.h.
26110
26111 2005-08-31  Derek Price  <derek@ximbiot.com>
26112
26113         * lib/getdelim.c (getdelim): Return EOF on EOF.
26114         Reported by Larry Jones <lawrence.jones@ugs.com>.
26115
26116 2005-08-31  Bruno Haible  <bruno@clisp.org>
26117
26118         Avoid unnecessary diffs in the generated lib/Makefile.am.
26119         * gnulib-tool (func_emit_lib_Makefile_am): Don't write the cmd into
26120         the generated files.
26121         (func_import): Don't set cmd.
26122
26123 2005-08-31  Bruno Haible  <bruno@clisp.org>
26124
26125         * lib/strstr.c: Include <stddef.h>, for NULL.
26126         * lib/strcasestr.c: Likewise.
26127         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
26128
26129 2005-08-31  Bruno Haible  <bruno@clisp.org>
26130
26131         * gnulib-tool: New option --macro-prefix.
26132         (func_import): Use macro_prefix.
26133         (import): Handle option --macro-prefix.
26134
26135 2005-08-31  Bruno Haible  <bruno@clisp.org>
26136
26137         * gnulib-tool (import): Rename most ac_* variables to cached_*.
26138         Also use new variables cached_lgpl, cached_libtool.
26139
26140 2005-08-31  Bruno Haible  <bruno@clisp.org>
26141
26142         * gnulib-tool (func_import): Require AC_GNU_SOURCE etc. instead of
26143         always instantiating them.
26144
26145 2005-08-31  Bruno Haible  <bruno@clisp.org>
26146
26147         * gnulib-tool (func_import): Read the previous cached settings
26148         from gnulib-cache.m4 and gnulib-comp.m4. Remove files that were
26149         earlier added by gnulib but are now dropped. Warn when a gnulib file
26150         overwrites a non-gnulib file.
26151
26152 2005-08-31  Bruno Haible  <bruno@clisp.org>
26153
26154         * gnulib-tool (func_import): Generate two files gnulib-cache.m4 and
26155         gnulib-comp.m4 instead of a single gnulib.m4, to make it easy for
26156         projects that don't keep autogenerated files in CVS. Put into
26157         actioncmd only the specified modules, not the transitive closure.
26158
26159 2005-08-31  Bruno Haible  <bruno@clisp.org>
26160
26161         * gnulib-tool (func_import): Fix defaulting of $libname and $libtool.
26162         Create directories that shall be filled.
26163         (import): Don't look for gl_* macros in configure.ac. Recurse across
26164         all directories containing a gnulib-cache.m4 files, if meaningful.
26165
26166 2005-08-31  Bruno Haible  <bruno@clisp.org>
26167
26168         * gnulib-tool (func_import): Emit also a stub for gl_LIBTOOL.
26169         (import): Set seen_libtool when we see gl_LIBTOOL.
26170
26171 2005-08-31  Bruno Haible  <bruno@clisp.org>
26172
26173         * gnulib-tool (func_import): Also copy m4/gnulib-tool.m4. Omit
26174         declaration macro definitions from generated gnulib.m4.
26175
26176 2005-08-30  Oskar Liljeblad  <oskar@osk.mine.nu>
26177
26178         * lib/iconvme.h: Add prototype for iconv_alloc.
26179
26180 2005-08-29  Simon Josefsson  <jas@extundo.com>
26181
26182         * lib/iconvme.c: Fix errno.
26183
26184 2005-08-29  Bruno Haible  <bruno@clisp.org>
26185
26186         * gnulib-tool: Enclose all occurrences of $destdir in "...", so
26187         that it works when the directory contains spaces.
26188
26189 2005-08-29  Bruno Haible  <bruno@clisp.org>
26190
26191         * gnulib-tool (import): Avoid unnecessary spaces in $avoidlist.
26192
26193 2005-08-29  Bruno Haible  <bruno@clisp.org>
26194
26195         * gnulib-tool (func_import): Emit more comments into gnulib.m4.
26196         Emit more advice.
26197
26198 2005-08-29  Bruno Haible  <bruno@clisp.org>
26199         and Stepan Kasal  <kasal@ucw.cz>
26200
26201         * check-module: If more parameters are given, check each of them
26202         separately; add more exceptions, as noted by Jim Meyering.
26203         (check_module): New procedure.
26204         (%exempt_header): Now contains all exceptions.
26205
26206 2005-08-29  Ben Pfaff  <blp@cs.stanford.edu>
26207
26208         * modules/byteswap (Makefile.am): Fix rule to not assume GNU make.
26209
26210 2005-08-29  Oskar Liljeblad  <oskar@osk.mine.nu>
26211
26212         * lib/iconvme.c: Split iconv_string into iconv_alloc.
26213
26214 2005-08-28  Bruno Haible  <bruno@clisp.org>
26215
26216         * m4/gnulib-tool.m4: New file.
26217
26218 2005-08-27  Jim Meyering  <jim@meyering.net>
26219
26220         * modules/unistd-safer (Files): Add pipe-safer.c.
26221         * modules/fcntl-safer (Files): Add creat-safer.c.
26222
26223 2005-08-27  Jim Meyering  <jim@meyering.net>
26224
26225         * m4/stdlib-safer.m4: New file.  From coreutils.
26226         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add stdio--.h.
26227         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Add creat-safer.c to the
26228         AC_LIBSOURCES list and arrange to compile it via AC_LIBOBJ.
26229         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise, add pipe-safer.c.
26230         Add pipe-safer.c and unistd--.h to the AC_LIBSOURCES list.
26231
26232 2005-08-27  Jim Meyering  <jim@meyering.net>
26233
26234         * lib/fopen-safer.c: Merge minor changes from coreutils.
26235         * lib/dup-safer.c: Likewise.
26236         * lib/fd-safer.c: Likewise.
26237
26238         Merge from coreutils.
26239         * lib/stdio--.h: New file.
26240         * lib/stdlib--.h: New file.
26241         * lib/mkstemp-safer.c: New file.
26242
26243         GNU tar needs these.
26244         * lib/pipe-safer.c: New file.
26245         * lib/creat-safer.c: New file.
26246         * lib/fcntl--.h (creat): Define to creat_safer.
26247         * lib/fcntl-safer.h: Include <sys/types.h> and declare creat_safer.
26248         * lib/unistd--.h (pipe): Define to pipe_safer.
26249         * lib/unistd-safer.h: Declare pipe_safer.
26250
26251 2005-08-26  Simon Josefsson  <jas@extundo.com>
26252
26253         * lib/getpass.c: Use _WIN32 instead of WIN32, suggested by Bruno
26254         Haible <bruno@clisp.org>.
26255
26256 2005-08-26  Paul Eggert  <eggert@cs.ucla.edu>
26257
26258         * lib/regex_internal.h: Remove all references to
26259         RE_NO_INTERNAL_PROTOTYPES; no longer neeeded now that we assume C89
26260         or better.
26261         (bitset_not, bitset_merge, bitset_not_merge):
26262         (bitset_mask, re_string_allocate, re_string_construct):
26263         (re_string_reconstruct, re_string_destruct, re_string_elem_size_at):
26264         (re_string_char_size_at, re_string_wchar_at, re_string_peek_byte_case):
26265         (re_string_fetch_byte_case, re_node_set_alloc, re_node_set_init_1):
26266         (re_node_set_init_2, re_node_set_init_copy, re_node_set_add_intersect):
26267         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
26268         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
26269         (re_node_set_remove_at, re_dfa_add_node, re_acquire_state):
26270         (re_acquire_state_context):
26271         Remove unnecessary forward decls.
26272         (re_string_char_size_at, re_string_wchar_at, re_string_elem_size_at):
26273         Put __attribute at function definition,
26274         now that the function decl has been removed.
26275         * lib/regex_internal.c (re_string_peek_byte_case):
26276         (re_string_fetch_byte_case, re_node_set_compare, re_node_set_contains):
26277         Likewise.
26278
26279 2005-08-25  Stepan Kasal  <kasal@ucw.cz>
26280
26281         * m4/regex.m4: Add AC_PREREQ(2.50).
26282         (gl_REGEX): If --with-included-regex was given, skip the autodetection.
26283
26284 2005-08-25  Simon Josefsson  <jas@extundo.com>
26285
26286         * m4/getpass.m4: Check for termios.h, tcgetattr, tcsetattr, and
26287         __fsetlocking.
26288
26289 2005-08-25  Simon Josefsson  <jas@extundo.com>
26290
26291         * lib/getpass.c: Add WIN32 implementation.  Conditionalize use of
26292         termios.h, tcgetattr, tcsetattr and __fsetlocking.  Remove some
26293         GLIBC specific code.
26294
26295 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
26296
26297         Make regex safe for g++.  This fixes one real bug (an "err"
26298         that should have been "*err").  g++ problem reported by
26299         Sam Steingold.
26300         * lib/regex_internal.h (re_calloc): New macro, consistent with
26301         re_malloc etc.  All callers of calloc changed to use re_calloc.
26302         * lib/regex_internal.c (build_wcs_upper_buffer): Return reg_errcode_t,
26303         not int.  All callers changed.
26304         * lib/regcomp.c (re_compile_fastmap_iter): Don't use
26305         alloca (mb_cur_max); just use an array of size MB_LEN_MAX.
26306         * lib/regexec.c (push_fail_stack): Use re_realloc, not realloc.
26307         (find_recover_state): Change "err" to "*err"; this fixes what
26308         appears to be a real bug.
26309         (check_arrival_expand_ecl_sub): Be consistent about reg_errcode_t
26310         versus int.
26311
26312 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
26313
26314         * modules/regex (Depends-on): Add malloc, since the code
26315         assumes that !malloc(0) means failure.
26316
26317 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
26318
26319         * lib/regexec.c (set_regs): Don't alloca with an unbounded size.
26320
26321         alloca modernization/simplification for regex.
26322         * lib/regex.c: Remove portability cruft for alloca.  This no longer
26323         needs to be at the start of the file, and can be moved into
26324         regex_internal.h and simplified.
26325         * lib/regex_internal.h: Include <alloca.h>.
26326         (__libc_use_alloca) [!defined _LIBC]: New macro.
26327         * lib/regexec.c (build_trtable): Remove "#ifdef _LIBC", since the code
26328         now works outside glibc.
26329
26330 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
26331
26332         * config/srclist.txt: Add glibc bugs 1241, 1245.
26333
26334 2005-08-25  Jim Meyering  <jim@meyering.net>
26335
26336         * lib/open-safer.c: Include <config.h>.
26337         Otherwise, we'd lose LARGEFILE support in any file using
26338         e.g. "fcntl--.h"
26339
26340 2005-08-25  Bruno Haible  <bruno@clisp.org>
26341
26342         * m4/minmax.m4: Require autoconf 2.52.
26343         (gl_MINMAX_IN_HEADER): Add comments. Use m4_pushdef/m4_popdef instead
26344         of define/undefine. Use AS_TR_SH and AS_TR_CPP as more robust
26345         alternatives of translit over the alphabet.
26346         Based on a patch from Stepan Kasal <kasal@ucw.cz>.
26347
26348 2005-08-24  Simon Josefsson  <jas@extundo.com>
26349
26350         * tests/test-getpass.c: New file.
26351
26352 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
26353
26354         * m4/regex.m4 (gl_REGEX): Use POSIX-compliant spellings when testing
26355         for GNU regex features.
26356
26357 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
26358
26359         * lib/regcomp.c (regerror): 2nd arg is 'restrict', as per POSIX.
26360         * lib/regex.h (regerror): Likewise.
26361
26362         * lib/regex.c: Do not include <sys/types.h>, as POSIX no longer
26363         requires this.  (The code never needed it.)
26364
26365         * lib/regcomp.c, regex_internal.c, regex_internal.h, regexec.c:
26366         All uses of recently-renamed identifiers changed to use the new,
26367         POSIX-compliant names.  The code will build and run just fine
26368         without these changes, but it's better to eat our own dog food
26369         and use the standard-conforming names.
26370
26371         * lib/regex.h: Fix a multitude of POSIX name space violations.
26372         These changes have an effect only for programs that define
26373         _POSIX_C_SOURCE, _POSIX_SOURCE, or _XOPEN_SOURCE; they
26374         do not change anything for programs compiled in the normal way.
26375         Also, there is no effect on the ABI.
26376
26377         (_REGEX_SOURCE): New macro.
26378         Do not include <stddef.h> if _XOPEN_SOURCE and VMS are both
26379         defined and _GNU_SOURCE is not; this fixes a name space violation.
26380
26381         Rename the following macros to obey POSIX requirements.
26382         The old names are still visible as macros if _REGEX_SOURCE is defined.
26383         (REG_BACKSLASH_ESCAPE_IN_LISTS): renamed from
26384         RE_BACKSLASH_ESCAPE_IN_LISTS.
26385         (REG_BK_PLUS_QM): renamed from RE_BK_PLUS_QM.
26386         (REG_CHAR_CLASSES): renamed from RE_CHAR_CLASSES.
26387         (REG_CONTEXT_INDEP_ANCHORS): renamed from RE_CONTEXT_INDEP_ANCHORS.
26388         (REG_CONTEXT_INDEP_OPS): renamed from RE_CONTEXT_INDEP_OPS.
26389         (REG_CONTEXT_INVALID_OPS): renamed from RE_CONTEXT_INVALID_OPS.
26390         (REG_DOT_NEWLINE): renamed from RE_DOT_NEWLINE.
26391         (REG_DOT_NOT_NULL): renamed from RE_DOT_NOT_NULL.
26392         (REG_HAT_LISTS_NOT_NEWLINE): renamed from RE_HAT_LISTS_NOT_NEWLINE.
26393         (REG_INTERVALS): renamed from RE_INTERVALS.
26394         (REG_LIMITED_OPS): renamed from RE_LIMITED_OPS.
26395         (REG_NEWLINE_ALT): renamed from RE_NEWLINE_ALT.
26396         (REG_NO_BK_BRACES): renamed from RE_NO_BK_BRACES.
26397         (REG_NO_BK_PARENS): renamed from RE_NO_BK_PARENS.
26398         (REG_NO_BK_REFS): renamed from RE_NO_BK_REFS.
26399         (REG_NO_BK_VBAR): renamed from RE_NO_BK_VBAR.
26400         (REG_NO_EMPTY_RANGES): renamed from RE_NO_EMPTY_RANGES.
26401         (REG_UNMATCHED_RIGHT_PAREN_ORD): renamed from
26402         RE_UNMATCHED_RIGHT_PAREN_ORD.
26403         (REG_NO_POSIX_BACKTRACKING): renamed from RE_NO_POSIX_BACKTRACKING.
26404         (REG_NO_GNU_OPS): renamed from RE_NO_GNU_OPS.
26405         (REG_DEBUG): renamed from RE_DEBUG.
26406         (REG_INVALID_INTERVAL_ORD): renamed from RE_INVALID_INTERVAL_ORD.
26407         (REG_IGNORE_CASE): renamed from RE_ICASE.  This renaming is a bit
26408         unusual, since we can't clash with the POSIX REG_ICASE.
26409         (REG_CARET_ANCHORS_HERE): renamed from RE_CARET_ANCHORS_HERE.
26410         (REG_CONTEXT_INVALID_DUP): renamed from RE_CONTEXT_INVALID_DUP.
26411         (REG_NO_SUB): renamed from RE_NO_SUB.
26412         (REG_SYNTAX_EMACS): renamed from RE_SYNTAX_EMACS.
26413         (REG_SYNTAX_AWK): renamed from RE_SYNTAX_AWK.
26414         (REG_SYNTAX_GNU_AWK): renamed from RE_SYNTAX_GNU_AWK.
26415         (REG_SYNTAX_POSIX_AWK): renamed from RE_SYNTAX_POSIX_AWK.
26416         (REG_SYNTAX_GREP): renamed from RE_SYNTAX_GREP.
26417         (REG_SYNTAX_EGREP): renamed from RE_SYNTAX_EGREP.
26418         (REG_SYNTAX_POSIX_EGREP): renamed from RE_SYNTAX_POSIX_EGREP.
26419         (REG_SYNTAX_ED): renamed from RE_SYNTAX_ED.
26420         (REG_SYNTAX_SED): renamed from RE_SYNTAX_SED.
26421         (_REG_SYNTAX_POSIX_COMMON): renamed from _RE_SYNTAX_POSIX_COMMON.
26422         (REG_SYNTAX_POSIX_BASIC): renamed from RE_SYNTAX_POSIX_BASIC.
26423         (REG_SYNTAX_POSIX_MINIMAL_BASIC): renamed from
26424         RE_SYNTAX_POSIX_MINIMAL_BASIC.
26425         (REG_SYNTAX_POSIX_EXTENDED): renamed from RE_SYNTAX_POSIX_EXTENDED.
26426         (REG_SYNTAX_POSIX_MINIMAL_EXTENDED): renamed from
26427         RE_SYNTAX_POSIX_MINIMAL_EXTENDED.
26428         (REG_DUP_MAX): renamed from RE_DUP_MAX.  No need to undef it.
26429         (REG_UNALLOCATED): Renamed from REGS_UNALLOCATED.
26430         (REG_REALLOCATE): Renamed from REGS_REALLOCATE.
26431         (REG_FIXED): Renamed from REGS_FIXED.
26432         (REG_NREGS): Renamed from RE_NREGS.
26433
26434         (REG_ICASE, REG_NEWLINE, REG_NOSUB): Do not depend on the values
26435         of other REG_* macros, since POSIX says the user is allowed to
26436         #undef these macros selectively.
26437
26438         (reg_errcode_t): Update comment stating what other tables need
26439         to be consistent.
26440
26441         Rename the following enum values to obey POSIX requirements.
26442         The old names are still visible as macros.
26443         (_REG_ENOSYS): Renamed from REG_ENOSYS.  Define even if _XOPEN_SOURCE
26444         is not defined, since GNU is supposed to be a superset of POSIX as
26445         much as possible, and since we want reg_errcode_t to be a signed
26446         type for implementation consistency.
26447         (_REG_NOERROR): Renamed from REG_NOERROR.
26448         (_REG_NOMATCH): Renamed from REG_NOMATCH.
26449         (_REG_BADPAT): Renamed from REG_BADPAT.
26450         (_REG_ECOLLATE): Renamed from REG_ECOLLATE.
26451         (_REG_ECTYPE): Renamed from REG_ECTYPE.
26452         (_REG_EESCAPE): Renamed from REG_EESCAPE.
26453         (_REG_ESUBREG): Renamed from REG_ESUBREG.
26454         (_REG_EBRACK): Renamed from REG_EBRACK.
26455         (_REG_EPAREN): Renamed from REG_EPAREN.
26456         (_REG_EBRACE): Renamed from REG_EBRACE.
26457         (_REG_BADBR): Renamed from REG_BADBR.
26458         (_REG_ERANGE): Renamed from REG_ERANGE.
26459         (_REG_ESPACE): Renamed from REG_ESPACE.
26460         (_REG_BADRPT): Renamed from REG_BADRPT.
26461         (_REG_EEND): Renamed from REG_EEND.
26462         (_REG_ESIZE): Renamed from REG_ESIZE.
26463         (_REG_ERPAREN): Renamed from REG_ERPAREN.
26464         (REG_ENOSYS, REG_NOERROR, REG_NOMATCH, REG_BADPAT, REG_ECOLLATE):
26465         (REG_ECTYPE, REG_EESCAPE, REG_ESUBREG, REG_EBRACK, REG_EPAREN):
26466         (REG_EBRACE, REG_BADBR, REG_ERANGE, REG_ESPACE, REG_BADRPT, REG_EEND):
26467         (REG_ESIZE, REG_ERPAREN): Now macros, not enum constants.
26468
26469         (_REG_RE_NAME, _REG_RM_NAME): New macros.
26470         (REG_TRANSLATE_TYPE): Renamed from RE_TRANSLATE_TYPE.  All uses
26471         changed.  But support the old name if the new one is not defined
26472         and if _REGEX_SOURCE.
26473
26474         Change the following member names in struct re_pattern_buffer.
26475         The old names are still supported if !_REGEX_SOURCE.
26476         The new names are always supported, regardless of _REGEX_SOURCE.
26477         (re_buffer): Renamed from buffer.
26478         (re_allocated): Renamed from allocated.
26479         (re_used): Renamed from used.
26480         (re_syntax): Renamed from syntax.
26481         (re_fastmap): Renamed from fastmap.
26482         (re_translate): Renamed from translate.
26483         (re_can_be_null): Renamed from can_be_null.
26484         (re_regs_allocated): Renamed from regs_allocated.
26485         (re_fastmap_accurate): Renamed from fastmap_accurate.
26486         (re_no_sub): Renamed from no_sub.
26487         (re_not_bol): Renamed from not_bol.
26488         (re_not_eol): Renamed from not_eol.
26489         (re_newline_anchor): Renamed from newline_anchor.
26490
26491         Change the following member names in struct re_registers.
26492         The old names are still supported if !_REGEX_SOURCE.
26493         The new names are always supported, regardless of _REGEX_SOURCE.
26494         (rm_num_regs): Renamed from num_regs.
26495         (rm_start): Renamed from start.
26496         (rm_end): Renamed from end.
26497
26498         (re_set_syntax, re_compile_pattern, re_compile_fastmap):
26499         (re_search, re_search_2, re_match, re_match_2, re_set_registers):
26500         Prepend __ to parameter names.
26501
26502         Undo yesterday's changes.
26503
26504 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
26505
26506         * config/srclist.txt: Remove glibc bug 1233 and add 1236, which
26507         supersedes it. Add glibc bugs 1237, 1238, 1240.  Comment out
26508         lib/regex.c.
26509
26510 2005-08-24  Jim Meyering  <jim@meyering.net>
26511
26512         Sync from coreutils.
26513         * m4/fcntl-safer.m4: New file.
26514
26515         * m4/xgetcwd.m4: Use AC_LIBSOURCES and AC_LIBOBJ to indicate source
26516         and object files for this module.
26517
26518 2005-08-24  Jim Meyering  <jim@meyering.net>
26519
26520         Sync from coreutils.
26521         * lib/fcntl--.h, lib/fcntl-safer.h, lib/open-safer.c: New files.
26522
26523 2005-08-24  Jim Meyering  <jim@meyering.net>
26524
26525         * modules/xgetcwd (Makefile.am): Remove `lib_SOURCES += ...' line,
26526         now that xgetcwd.m4 requires xgetcwd.c and xgetcwd.h.
26527
26528 2005-08-24  Jim Meyering  <jim@meyering.net>
26529
26530         * modules/fcntl-safer: New module.
26531         * modules/fts (Depends-on): Add fcntl-safer.
26532         * MODULES.html.sh (File descriptor based Input/Output):
26533         Add fcntl-safer.
26534
26535 2005-08-24  Bruno Haible  <bruno@clisp.org>
26536
26537         Support for unit test modules.
26538         * modules/README: Mention tests modules.
26539         * modules/TEMPLATE-TESTS: New file.
26540         * gnulib-tool: New options --extract-tests-module, --with-tests and
26541         --tests-base (unused for the moment).
26542         (testsbase, inctests): New variables.
26543         (func_all_modules): Exclude TEMPLATE-TESTS and *-tests.
26544         (func_verify_module): Exclude TEMPLATE-TESTS.
26545         (func_verify_nontests_module, func_verify_tests_module): New functions.
26546         (func_get_dependencies): Add implicit dependency for tests modules.
26547         (func_get_tests_module): New function.
26548         (func_modules_transitive_closure): When --with-tests was specified,
26549         include the unit tests as well, unless explicitly avoided.
26550         (func_emit_lib_Makefile_am): Ignore the tests modules here.
26551         (func_emit_tests_Makefile_am): New function.
26552         (func_create_testdir): When --with-tests was specified, emit a
26553         tests/ directory.
26554         * MODULES.html.sh (Future developments): Update.
26555
26556 2005-08-24  Bruno Haible  <bruno@clisp.org>
26557
26558         * modules/tls-tests: New file.
26559         * tests/test-tls.c: New file, from GNU gettext.
26560
26561 2005-08-24  Bruno Haible  <bruno@clisp.org>
26562
26563         * modules/lock-tests: New file.
26564         * tests/test-lock.c: New file, from GNU gettext.
26565
26566 2005-08-24  Bruno Haible  <bruno@clisp.org>
26567
26568         * lib/lock.h: Add multiple inclusion guard.
26569         * lib/tls.h: Add multiple inclusion guard.
26570
26571 2005-08-24  Bruno Haible  <bruno@clisp.org>
26572
26573         * gnulib-tool: Add support for the --aux-dir option to
26574         --create-testdir, --create-megatestdir, --test, --megatest.
26575         (func_create_testdir, func_create_megatestdir): Optionally emit a
26576         AC_CONFIG_AUX_DIR directive.
26577         (create-testdir, create-megatestdir, test, megatest): Provide a
26578         default value for $auxdir.
26579
26580 2005-08-24  Bruno Haible  <bruno@clisp.org>
26581
26582         * gnulib-tool (import): Use compound statement instead of subshell
26583         where possible.
26584
26585 2005-08-24  Bruno Haible  <bruno@clisp.org>
26586
26587         * gnulib-tool (import): Change --aux-dir default to "build-aux".
26588
26589 2005-08-24  Bruno Haible  <bruno@clisp.org>
26590
26591         * gnulib-tool (func_version): Update.
26592
26593 2005-08-24  Bruno Haible  <bruno@clisp.org>
26594
26595         * gnulib-tool (func_import, func_create_testdir,
26596         func_create_megatestdir): Quote all autoconf macro arguments.
26597
26598 2005-08-24  Bruno Haible  <bruno@clisp.org>
26599
26600         * gnulib-tool (func_create_megatestdir): Call autoreconf without the
26601         option --force, because --force causes the aclocal.m4 of each
26602         subdirectory to be newer than the corresponding config.h.in.
26603
26604 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
26605
26606         * m4/regex.m4 (gl_INCLUDED_REGEX): Remove; no longer used.
26607         All contents moved to gl_REGEX.
26608         (gl_REGEX): Don't bother checking whether lib/regex.c exists;
26609         assume that it does.
26610
26611 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
26612
26613         * lib/regex.h (REG_NOSYS)
26614         [!defined _XOPEN_SOURCE && 200112L <= _POSIX_C_SOURCE]:
26615         Define, since POSIX requires it as of 2001.
26616         (_REG_ENOSYS)
26617         [! (defined _XOPEN_SOURCE || 200112L <= _POSIX_C_SOURCE)]:
26618         New private symbol, used to keep the enum signed in all cases.
26619         * lib/regex.h (RE_NO_EMPTY_RANGES): Fix doc bug reported by James
26620         Youngman in
26621         <http://lists.gnu.org/archive/html/bug-gnulib/2005-07/msg00132.html>.
26622
26623         * lib/regex_internal.c (re_string_skip_chars, register_state):
26624         (calc_state_hash):
26625         Remove forward decls; no longer needed now that we use prototypes.
26626         * lib/regexec.c (acquire_init_state_context, check_halt_node_context):
26627         (proceed_next_node, pop_fail_stack, sub_epsilon_src_nodes):
26628         (clean_state_log_if_needed): Likewise.
26629
26630 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
26631
26632         * config/srclist.txt: Add glibc bugs 1231-1233.
26633
26634 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
26635
26636         Fix problems reported by Sam Steingold in
26637         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00007.html>.
26638         * lib/regexec.c (sift_states_bkref): Fix portability bug: the code
26639         assumed that reg_errcode_t is a signed type, which is not
26640         necessarily true if _XOPEN_SOURCE is not defined.
26641         * lib/regex_internal.c (calc_state_hash): Put 'inline' before type,
26642         since some compilers warn about it otherwise.
26643
26644 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
26645
26646         * lib/regcomp.c (create_initial_state): Remove duplicate decl.
26647         (init_word_char, create_initial_state, duplicate_node_closure):
26648         (fetch_token, peek_token_bracket, build_range_exp):
26649         (build_collating_symbol): Remove forward decls; no longer needed
26650         now that we use prototypes.
26651
26652         * lib/regcomp.c:
26653         (re_compile_pattern, re_set_syntax, re_compile_fastmap):
26654         (re_compile_fastmap_iter, regcomp, regerror, regfree):
26655         (re_compile_internal, init_dfa, init_word_char, free_workarea_compile):
26656         (create_initial_state, optimize_utf8, analyze, postorder, preorder):
26657         (optimize_subexps, lower_subexps, lower_subexp, calc_first, calc_next):
26658         (link_nfa_nodes, duplicate_node_closure, search_duplicated_node):
26659         (duplicate_node, calc_inveclosure, calc_eclosure, calc_eclosure_iter):
26660         (fetch_token, peek_token, peek_token_bracket, parse, parse_reg_exp):
26661         (parse_branch, parse_expression, parse_sub_exp, parse_dup_op):
26662         (build_range_exp, build_collating_symbol, parse_bracket_exp):
26663         (parse_bracket_element, parse_bracket_symbol, build_equiv_class):
26664         (build_charclass, build_charclass_op, fetch_number, create_tree):
26665         (create_token_tree, mark_opt_subexp, duplicate_tree):
26666         Use prototypes rather than old-style definitions.
26667
26668         * lib/regex_internal.c:
26669         (re_string_allocate, re_string_construct, re_string_realloc_buffers):
26670         (re_string_construct_common, build_wcs_buffer, build_wcs_upper_buffer):
26671         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
26672         (re_string_reconstruct, re_string_peek_byte_case):
26673         (re_string_fetch_byte_case, re_string_destruct, re_string_context_at):
26674         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
26675         (re_node_set_init_copy, re_node_set_add_intersect):
26676         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
26677         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
26678         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
26679         (re_acquire_state, re_acquire_state_context, register_state):
26680         (create_ci_newstate, create_cd_newstate, free_state):
26681         Likewise.
26682         * lib/regexec.c (regexec, re_match, re_search, re_match_2,
26683         re_search_2):
26684         (re_search_2_stub, re_search_stub, re_copy_regs, re_set_registers):
26685         (re_search_internal, prune_impossible_nodes):
26686         (acquire_init_state_context, check_matching, static):
26687         (check_halt_node_context, check_halt_state_context, proceed_next_node):
26688         (push_fail_stack, pop_fail_stack, set_regs, free_fail_stack_return):
26689         (update_regs, sift_states_backward, build_sifted_states):
26690         (clean_state_log_if_needed, merge_state_array):
26691         (update_cur_sifted_state, add_epsilon_src_nodes):
26692         (sub_epsilon_src_nodes, check_dst_limits, check_dst_limits_calc_pos_1):
26693         (check_dst_limits_calc_pos, check_subexp_limits, sift_states_bkref):
26694         (sift_states_iter_mb, transit_state, merge_state_with_log, static):
26695         (find_recover_state, check_subexp_matching_top, transit_state_mb):
26696         (transit_state_bkref, get_subexp, get_subexp_sub, find_subexp_node):
26697         (check_arrival, check_arrival_add_next_nodes):
26698         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
26699         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
26700         (check_node_accept_bytes, check_node_accept, extend_buffers):
26701         (match_ctx_init, match_ctx_clean, match_ctx_free, match_ctx_add_entry):
26702         (search_cur_bkref_entry, match_ctx_add_subtop, match_ctx_add_sublast):
26703         (sift_ctx_init):
26704         Likewise.
26705
26706         * lib/regex_internal.h:
26707         (re_string_allocate, re_string_construct, re_string_reconstruct):
26708         (re_string_realloc_buffers, build_wcs_buffer, build_wcs_upper_buffer):
26709         (build_upper_buffer, re_string_translate_buffer, re_string_destruct):
26710         (re_string_elem_size_at, re_string_char_size_at, re_string_wchar_at):
26711         (re_string_context_at, re_string_peek_byte_case):
26712         (re_string_fetch_byte_case): Declare even if RE_NO_INTERNAL_PROTOTYPES
26713         is defined, since we now use prototypes always.
26714
26715         * lib/regex.h (_RE_ARGS): Remove.  No longer needed, since we assume
26716         C89 or better.  All uses removed.
26717
26718 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
26719
26720         * config/srclist.txt: Add glibc bugs 1220-1227.
26721
26722 2005-08-20  Jim Meyering  <jim@meyering.net>
26723
26724         * lib/regexec.c (regexec, re_search_stub) [!_LIBC]: Omit declaration
26725         of unused local, dfa.
26726
26727 2005-08-20  Bruno Haible  <bruno@clisp.org>
26728
26729         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_GNU_SOURCE.
26730
26731 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
26732
26733         * lib/regex_internal.c (re_string_realloc_buffers, re_node_set_insert):
26734         (re_node_set_insert_last, re_dfa_add_node):
26735         Rename local variables to avoid GCC shadowing warnings.
26736
26737 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
26738
26739         * lib/regex_internal.c (re_acquire_state, re_acquire_state_context)
26740         [defined lint]: Suppress bogus uninitialized-variable warnings.
26741
26742         * lib/regcomp.c (duplicate_node): Return new index, not an error code,
26743         and let the caller return REG_ESPACE if out of space.  This
26744         removes an uninitialied-variable warning with GCC 4.0.1, and also
26745         avoids taking the address of a local variable.  All callers
26746         changed.
26747
26748 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
26749
26750         * config/srclist.txt: Comment out $LIBCSRC/posix/regex_internal.c,
26751         $LIBCSRC/posix/regexec.c.
26752         Add glibc bug 1217 for regcomp.c.
26753
26754 2005-08-19  Jim Meyering  <jim@meyering.net>
26755
26756         * lib/regexec.c (proceed_next_node): Redo local variables to
26757         avoid GCC shadowing warnings.
26758
26759 2005-08-18  Bruno Haible  <bruno@clisp.org>
26760
26761         * lib/strstr.c (strstr): Fix return value in multibyte case.
26762         * lib/strcasestr.c (strcasestr): Likewise.
26763
26764 2005-08-17  Paul Eggert  <eggert@cs.ucla.edu>
26765
26766         * lib/regex.h: Remove useless space-before-tab.  From coreutils.
26767
26768 2005-08-17  Jim Meyering  <jim@meyering.net>
26769
26770         Make the %s format (seconds since the epoch) work for a negative
26771         number and when used with a zero-padded field width, e.g. %015s.
26772
26773         * lib/strftime.c (my_strftime): Move the `do_number_sign_and_padding'
26774         label so that it precedes the code to set `digits'.  Otherwise,
26775         %0Ns wouldn't work.  Before this change, `date -d @-22 +%05s' would
26776         print `00-22'.  Now, it prints `-0022', as it should.
26777
26778 2005-08-17  Bruno Haible  <bruno@clisp.org>
26779
26780         * modules/strstr (Files): Add m4/mbrtowc.m4.
26781         (Depends-on): Add mbuiter.
26782
26783 2005-08-17  Bruno Haible  <bruno@clisp.org>
26784
26785         * modules/strcasestr: New file.
26786         * MODULES.html.sh (String handling, based on ANSI C 89): Add
26787         strcasestr.
26788
26789 2005-08-17  Bruno Haible  <bruno@clisp.org>
26790
26791         * modules/strcase (Depends-on): Add mbuiter. Remove strnlen1, mbchar.
26792
26793 2005-08-17  Bruno Haible  <bruno@clisp.org>
26794
26795         * modules/mbuiter: New file.
26796         * MODULES.html.sh (Extended multibyte and wide character utilities):
26797         Add mbuiter.
26798
26799 2005-08-17  Bruno Haible  <bruno@clisp.org>
26800
26801         * m4/strstr.m4 (gl_FUNC_STRSTR): Use the replacement function always.
26802         (gl_PREREQ_STRSTR): Use gl_FUNC_MBRTOWC.
26803
26804 2005-08-17  Bruno Haible  <bruno@clisp.org>
26805
26806         * m4/strcasestr.m4: New file.
26807
26808 2005-08-17  Bruno Haible  <bruno@clisp.org>
26809
26810         * lib/strstr.h: Ignore HAVE_STRSTR, always declare the gnulib function.
26811         * lib/strstr.c: Completely rewritten, with multibyte locale support.
26812
26813 2005-08-17  Bruno Haible  <bruno@clisp.org>
26814
26815         * lib/strcasestr.h: New file.
26816         * lib/strcasestr.c: New file.
26817
26818 2005-08-17  Bruno Haible  <bruno@clisp.org>
26819
26820         * lib/strcasecmp.c: Use mbuiter.h.
26821
26822 2005-08-17  Bruno Haible  <bruno@clisp.org>
26823
26824         * lib/mbuiter.h: New file.
26825
26826 2005-08-16  Paul Eggert  <eggert@cs.ucla.edu>
26827
26828         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Do not override the results
26829         of gl_GETOPT_SUBSTITUTE.  That way, if both gl_GETOPT_SUBSTITUTE
26830         and gl_GETOPT are both invoked via different paths (as happens
26831         with GNU tar CVS because it uses both argp and getopt), the former
26832         wins.
26833
26834 2005-08-16  Bruno Haible  <bruno@clisp.org>
26835
26836         * modules/tls: New file.
26837         * MODULES.html.sh (Multithreading): Add tls.
26838
26839 2005-08-16  Bruno Haible  <bruno@clisp.org>
26840
26841         * modules/strnlen1: New file.
26842         * MODULES.html.sh (String handling): Add strnlen1.
26843
26844 2005-08-16  Bruno Haible  <bruno@clisp.org>
26845
26846         * modules/strcase (Files): Add m4/mbrtowc.m4.
26847         (Depends-on): Add strnlen1, mbchar.
26848
26849 2005-08-16  Bruno Haible  <bruno@clisp.org>
26850
26851         * modules/mbiter: New file.
26852         * MODULES.html.sh (Extended multibyte and wide character utilities):
26853         Add mbiter.
26854
26855 2005-08-16  Bruno Haible  <bruno@clisp.org>
26856
26857         * modules/mbfile: New file.
26858         * MODULES.html.sh (Extended multibyte and wide character utilities):
26859         Add mbfile.
26860
26861 2005-08-16  Bruno Haible  <bruno@clisp.org>
26862
26863         * modules/mbchar: New file.
26864         * MODULES.html.sh (Extended multibyte and wide character utilities):
26865         New section.
26866
26867 2005-08-16  Bruno Haible  <bruno@clisp.org>
26868
26869         * m4/tls.m4: New file, from GNU gettext.
26870
26871 2005-08-16  Bruno Haible  <bruno@clisp.org>
26872
26873         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Use the replacement function
26874         always.
26875         (gl_PREREQ_STRCASECMP): Use gl_FUNC_MBRTOWC.
26876
26877 2005-08-16  Bruno Haible  <bruno@clisp.org>
26878
26879         * m4/mbiter.m4: New file.
26880
26881 2005-08-16  Bruno Haible  <bruno@clisp.org>
26882
26883         * m4/mbfile.m4: New file.
26884
26885 2005-08-16  Bruno Haible  <bruno@clisp.org>
26886
26887         * m4/mbchar.m4: New file.
26888
26889 2005-08-16  Bruno Haible  <bruno@clisp.org>
26890
26891         * lib/tls.h: New file, from GNU gettext.
26892         * lib/tls.c: New file, from GNU gettext.
26893
26894 2005-08-16  Bruno Haible  <bruno@clisp.org>
26895
26896         * lib/strnlen1.h: New file.
26897         * lib/strnlen1.c: New file.
26898
26899 2005-08-16  Bruno Haible  <bruno@clisp.org>
26900
26901         * lib/strcasecmp.c (struct mbiter_multi): Remove at_end field.
26902         (mbi_init): Update.
26903         (mbi_avail, mbi_advance): Let the iteration end before the terminating
26904         NUL byte, not after it.
26905
26906 2005-08-16  Bruno Haible  <bruno@clisp.org>
26907
26908         * lib/strcase.h (strcasecmp): Add note in comments.
26909         * lib/strncasecmp.c: Use code from strcasecmp.c.
26910         * lib/strcasecmp.c: Use mbchar module. Define private mbiter variant.
26911         (strcasecmp): Work correctly in multibyte locales.
26912
26913 2005-08-16  Bruno Haible  <bruno@clisp.org>
26914
26915         * lib/mbiter.h: New file.
26916
26917 2005-08-16  Bruno Haible  <bruno@clisp.org>
26918
26919         * lib/mbfile.h: New file.
26920
26921 2005-08-16  Bruno Haible  <bruno@clisp.org>
26922
26923         * lib/mbchar.h: New file.
26924         * lib/mbchar.c: New file.
26925
26926 2005-08-16  Bruno Haible  <bruno@clisp.org>
26927
26928         * lib/mbchar.h (mb_cmp, mb_casecmp): Order the invalid characters after
26929         the valid ones. Makes the comparison operations transitive:
26930         cmp (a, b) < 0 && cmp (b, c) < 0 ==> cmp (a, c) < 0.
26931         * lib/strcasecmp.c (strcasecmp): Use mb_casecmp.
26932
26933 2005-08-15  Simon Josefsson  <jas@extundo.com>
26934
26935         * modules/ssize_t (License): Change to 'unlimited'.
26936
26937         * gnulib-tool (sed_extract_prog): Recognize 'unlimited' license.
26938
26939 2005-08-15  Paul Eggert  <eggert@cs.ucla.edu>
26940
26941         * config/srclist.txt: Comment out $LIBCSRC/posix/regex.h.
26942         Add comments for each pending glibc patch.
26943
26944 2005-08-15  Bruno Haible  <bruno@clisp.org>
26945
26946         * lib/regex.h (__restrict_arr): Don't define to __restrict if
26947         __cplusplus is defined.
26948
26949 2005-08-14  Jim Meyering  <jim@meyering.net>
26950
26951         Sync from coreutils.
26952
26953         * lib/fts-cycle.c (setup_dir, enter_dir, leave_dir, free_dir):
26954         Use the hash-table-based cycle-detection code not just when
26955         FTS_TIGHT_CYCLE_CHECK if specified, but also with FTS_LOGICAL.
26956         Reported by James Youngman in
26957         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00011.html>.
26958         * lib/fts_.h: Mention that with FTS_LOGICAL, we use
26959         FTS_TIGHT_CYCLE_CHECK.
26960         * lib/fts.c (fts_cross_check) [FTS_DEBUG]:
26961         s/active_dir_ht/fts_cycle.ht/. This lets us compile with -DFTS_DEBUG,
26962         once again.
26963         * lib/fts.c [! _LIBC]: Include "lstat.h" rather than rolling our own.
26964         * lib/fts.c (fd_safer): Remove decl.
26965         Include fcntl--.h rather than unistd-safer.h
26966         (fts_safe_changedir): Don't call fd_safer; no longer needed
26967         now that we include fcntl--.h.
26968
26969 2005-08-12  Simon Josefsson  <jas@extundo.com>
26970
26971         * modules/getndelim2: Use ssize_t module.
26972         * modules/getnline: Likewise.
26973         * modules/safe-read: Likewise.
26974         * modules/xreadlink: Likewise.
26975
26976         * modules/ssize_t: New file.
26977
26978 2005-08-12  Simon Josefsson  <jas@extundo.com>
26979
26980         * m4/readline.m4: Look for termcap, curses or ncurses if required.
26981
26982 2005-08-12  Simon Josefsson  <jas@extundo.com>
26983
26984         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
26985         ssize_t.
26986
26987 2005-08-12  Simon Josefsson  <jas@extundo.com>
26988
26989         * MODULES.html.sh (Extra functions based on ANSI C 89: Misc): Add
26990         readline, getdelim and check_version.
26991         (Support for systems lacking ISO C 99: Sizes of integer types):
26992         Add size_max.
26993
26994 2005-08-12  Bruno Haible  <bruno@clisp.org>
26995
26996         * m4/readline.m4 (gl_FUNC_READLINE): Look for ncurses first.
26997
26998 2005-08-11  Simon Josefsson  <jas@extundo.com>
26999
27000         * modules/readline: New file.
27001
27002         * modules/strnlen (Files): Add strnlen.h.
27003
27004 2005-08-11  Simon Josefsson  <jas@extundo.com>
27005
27006         * m4/readline.m4: New file.
27007
27008 2005-08-11  Simon Josefsson  <jas@extundo.com>
27009
27010         * lib/readline.h, readline.c: New file.
27011
27012 2005-08-11  Simon Josefsson  <jas@extundo.com>
27013
27014         * doc/gnulib.texi (Initial import, Finishing touches): Mention
27015         gl_AVOID.
27016
27017 2005-08-11  Bruno Haible  <bruno@clisp.org>
27018
27019         * lib/strnlen.h (strnlen): Change parameter name to match comment.
27020
27021 2005-08-10  Stepan Kasal  <kasal@ucw.cz>
27022
27023         * m4/onceonly_2_57.m4: Really require Autoconf 2.57.
27024
27025 2005-08-10  Simon Josefsson  <jas@extundo.com>
27026
27027         * tests/test-iconvme.c: New file.
27028
27029 2005-08-10  Simon Josefsson  <jas@extundo.com>
27030
27031         * m4/strnlen.m4: New file.
27032
27033         * m4/strndup.m4: Don't check for strnlen declaration, done in
27034         strnlen.m4.
27035
27036 2005-08-10  Simon Josefsson  <jas@extundo.com>
27037
27038         * lib/strndup.c: Use strnlen.h.
27039
27040         * lib/strnlen.h: New file.
27041
27042 2005-08-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
27043
27044         * README: Typos.
27045
27046 2005-08-02  Simon Josefsson  <jas@extundo.com>
27047
27048         * modules/readline: New file.
27049
27050 2005-08-02  Simon Josefsson  <jas@extundo.com>
27051
27052         * modules/getdelim: New file.
27053
27054         * modules/getline: Rewrite, don't use getndelim2.
27055
27056 2005-08-02  Simon Josefsson  <jas@extundo.com>
27057
27058         * m4/getline.m4: Separate out getdelim stuff into separate module.
27059
27060         * m4/getdelim.m4: New file.
27061
27062 2005-08-02  Simon Josefsson  <jas@extundo.com>
27063
27064         * lib/getline.h, getline.c: Rewrite.
27065
27066         * lib/getdelim.h, lib/getdelim.c: New files, ported from glibc.
27067
27068 2005-07-31  Bruno Haible  <bruno@clisp.org>
27069
27070         * lib/lock.h (gl_lock_initializer): New macro.
27071         (gl_lock_define_initialized): Use it.
27072         (gl_rwlock_initializer): New macro.
27073         (gl_rwlock_define_initialized): Use it.
27074         (gl_recursive_lock_initializer): New macro.
27075         (gl_recursive_lock_define_initialized): Use it.
27076
27077 2005-07-30  Karl Berry  <karl@gnu.org>
27078
27079         * doc/gnulib.texi (Initial import): mention -I$(top_builddir)/lib.
27080         Report from Ben Pfaff, regarding getopt.
27081
27082 2005-07-26  Paul Eggert  <eggert@cs.ucla.edu>
27083
27084         Add support to getopt for Emacs, which doesn't use LIBOBJS in the
27085         normal way.
27086         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE_HEADER): New macro.
27087         (gl_GETOPT_SUBSTITUTE): Use it.  Invoke gl_PREREQ_GETOPT.
27088         (gl_GETOPT_IFELSE, gl_GETOPT_CHECK_HEADERS): New macros.
27089         (gl_GETOPT): Use the new macros.  Most of the implementation
27090         is moved to the new macros.  This is for programs like Emacs
27091         that don't want all the functionality of gl_GETOPT.
27092
27093 2005-07-26  Bruno Haible  <bruno@clisp.org>
27094
27095         * m4/lock.m4: Update from GNU gettext.
27096
27097 2005-07-26  Bruno Haible  <bruno@clisp.org>
27098
27099         * lib/lock.h: Update from GNU gettext.
27100         * lib/lock.c: Update from GNU gettext.
27101
27102 2005-07-25  Paul Eggert  <eggert@cs.ucla.edu>
27103
27104         * m4/regex.m4 (gl_INCLUDED_REGEX): Use AC_RUN_IFELSE instead of the
27105         obsolescent AC_TRY_RUN.  Include the default includes files, for
27106         'exit'.
27107
27108 2005-07-24  Bruno Haible  <bruno@clisp.org>
27109
27110         * modules/visibility: New file.
27111         * MODULES.html.sh (Misc): Add visibility.
27112
27113 2005-07-24  Bruno Haible  <bruno@clisp.org>
27114
27115         * m4/visibility.m4: New file.
27116
27117 2005-07-24  Bruno Haible  <bruno@clisp.org>
27118
27119         * doc/visibility.texi: New file.
27120
27121 2005-07-22  Bruno Haible  <bruno@clisp.org>
27122
27123         * modules/alloca-opt (Makefile.am): Remove explicit dependency on
27124         $(ALLOCA_H), redundant through BUILT_SOURCES.
27125         * modules/argz (Makefile.am): Remove explicit dependency on $(ARGZ_H),
27126         redundant through BUILT_SOURCES.
27127         * modules/byteswap (Makefile.am): Remove explicit dependency on
27128         $(BYTESWAP_H), redundant through BUILT_SOURCES.
27129         * modules/fnmatch (Makefile.am): Remove explicit dependency on
27130         $(FNMATCH_H), redundant through BUILT_SOURCES.
27131         * modules/getopt (Makefile.am): Remove explicit dependency on
27132         $(GETOPT_H), redundant through BUILT_SOURCES.
27133         * modules/glob (Makefile.am): Remove explicit dependency on $(GLOB_H),
27134         redundant through BUILT_SOURCES.
27135         * modules/poll (Makefile.am): Remove explicit dependency on $(POLL_H),
27136         redundant through BUILT_SOURCES.
27137         * modules/stdbool (Makefile.am): Remove explicit dependency on
27138         $(STDBOOL_H), redundant through BUILT_SOURCES.
27139         * modules/stdint (Makefile.am): Remove explicit dependency on
27140         $(STDINT_H), redundant through BUILT_SOURCES.
27141         * modules/sysexits (Makefile.am): Add $(SYSEXITS_H) to BUILT_SOURCES.
27142         Remove explicit dependency on $(SYSEXITS_H).
27143         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>.
27144
27145 2005-07-18  Simon Josefsson  <jas@extundo.com>
27146
27147         * lib/check-version.c (check_version): Accept identical versions too.
27148
27149 2005-07-18  Bruno Haible  <bruno@clisp.org>
27150
27151         * modules/lock: New file.
27152         * MODULES.html.sh (Multithreading): New section.
27153
27154 2005-07-18  Bruno Haible  <bruno@clisp.org>
27155
27156         * m4/lock.m4: New file, from GNU gettext.
27157
27158 2005-07-18  Bruno Haible  <bruno@clisp.org>
27159
27160         * lib/lock.h: New file, from GNU gettext.
27161         * lib/lock.c: New file, from GNU gettext.
27162
27163 2005-07-18  Bruno Haible  <bruno@clisp.org>
27164
27165         * lib/lock.h (gl_once_t): New type.
27166         (gl_once_define, gl_once): New macros.
27167         * lib/lock.c (fresh_once): New variable.
27168         (glthread_once, glthread_once_call, glthread_once_singlethreaded): New
27169         functions.
27170
27171 2005-07-16  Simon Josefsson  <jas@extundo.com>
27172
27173         * doc/gnulib.texi (Library version handling): Add ELF symbol collision
27174         workaround, suggested by Bruno.
27175
27176 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
27177
27178         * modules/xalloc (Depends-on): Add xalloc-die.
27179         * modules/xvasprintf (Depends-on): Add xalloc-die.
27180
27181 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
27182
27183         * lib/quotearg.c: Add translator comment suggested by Bruno Haible,
27184         with a minor change.
27185
27186 2005-07-15  Bruno Haible  <bruno@clisp.org>
27187
27188         * m4/poll.m4 (gl_FUNC_POLL): Check against MacOS X 10.4 poll() bug.
27189         When using lib/poll.c, define poll as rpl_poll.
27190
27191 2005-07-14  Paul Eggert  <eggert@cs.ucla.edu>
27192
27193         * modules/argp (Depends-on): Remove unlocked-io.
27194
27195 2005-07-14  Derek Price  <derek@ximbiot.com>
27196
27197         * m4/glob.m4 (gl_GLOB): Cache glob interface check result.  Add check
27198         for glob symlink bug.
27199
27200 2005-07-14  Bruno Haible  <bruno@clisp.org>
27201
27202         * m4/argp.m4 (gl_ARGP): Remove invocation of gl_FUNC_GLIBC_UNLOCKED_IO.
27203         Instead, test for *_unlocked function declarations directly.
27204
27205 2005-07-11  Simon Josefsson  <jas@extundo.com>
27206
27207         * modules/size_max: New file.
27208
27209         * modules/xsize: Depend on size_max module for size_max.m4.
27210
27211 2005-07-11  Simon Josefsson  <jas@extundo.com>
27212
27213         * lib/size_max.h: New file.
27214
27215 2005-07-11  Paul Eggert  <eggert@cs.ucla.edu>
27216
27217         * lib/version-etc-fsf.c (version_etc_copyright): Parameterize the
27218         copyright symbol and the year.
27219         * lib/version-etc.c (COPYRIGHT_YEAR): New constant.
27220         (version_etc_va): Use parameterized copyright notice.
27221         Reword to conform to the current GNU coding standards.
27222
27223 2005-07-11  Karl Berry  <karl@gnu.org>
27224
27225         * doc/gnulib.texi (Quoting): new node.
27226         (Initial import): more info, from Patrice.
27227
27228 2005-07-11  Bruno Haible  <bruno@clisp.org>
27229
27230         * gnulib-tool (func_usage): Document option --avoid.
27231         (Command line options): Handle --avoid.
27232         (func_acceptable): New function.
27233         (func_modules_transitive_closure): Use it.
27234
27235 2005-07-11  Bruno Haible  <bruno@clisp.org>
27236
27237         * MODULES.html.sh: Use shortcut URLs to the www.opengroup.org site.
27238         Reported by Jim Meyering.
27239
27240 2005-07-10  Bruno Haible  <bruno@clisp.org>
27241
27242         * m4/size_max.m4 (gl_SIZE_MAX): Cast ~(size_t)0 back to size_t.
27243         Needed when size_t is smaller than 'unsigned int'.
27244         Reported by Paul Eggert.
27245
27246 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
27247
27248         * modules/argp (Depends-on): Add unlocked-io
27249
27250 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
27251
27252         * lib/argp-namefrob.h: Include unlocked-io.h. Removed unnecessary
27253         block of defines.
27254
27255 2005-07-08  Paul Eggert  <eggert@cs.ucla.edu>
27256
27257         * config/srclist.txt: Comment out regcomp.c, since we have a porting
27258         fix now.
27259
27260 2005-07-08  Eric Blake  <ebb9@byu.net>  (tiny change)
27261         and Paul Eggert  <eggert@cs.ucla.edu>
27262
27263         * lib/regcomp.c (init_dfa, build_range_exp): Store __btowc value
27264         in wint_t, not wchar_t.  Remove now-unnecessary cast.
27265
27266 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
27267
27268         * modules/regex (Files): Add lib/regex_internal.c,
27269         lib/regex_internal.h, lib/regexec.c, lib/regcomp.c, m4/codeset.m4.
27270         (Depends-on): Add extensions.
27271         (Makefile.am): Remove lib_SOURCES; now done by m4 code.
27272
27273 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
27274
27275         * m4/backupfile.m4 (gl_BACKUPFILE): Use AC_CHECK_FUNCS_ONCE on
27276         pathconf.
27277         * m4/same.m4 (gl_SAME): Likewise.
27278         Require AC_SYS_LONG_FILE_NAMES; bug reported by Gerrit P. Haase.
27279
27280         * m4/regex.m4: Adjust to new libc regex implementation.
27281         (gl_INCLUDED_REGEX): Add AC_LIBSOURCES for
27282         all the .c and .h parts of (the new) regex.
27283         Quote the m4 stuff better.
27284         Check for RE_ICASE bug of old gnulib.
27285         Check for REG_STARTEND of recent libc.
27286         Rename local variables from jm_* to gl_*.
27287         Quote operand of "test -f".
27288         Say "recent enough" version of libc, not "version 2".
27289         (gl_PREREQ_REGEX): Remove AC_FUNC_ALLOCA, since alloca is a
27290         prerequisite module.  Remove AC_HEADER_STDC; no longer needed.
27291         Check for locale.h, isblank, mbrtowc, wcrtomb, wcscoll.
27292         Remove check for btowc, isascii.
27293         Require AM_LANGINFO_CODESET.
27294
27295 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
27296
27297         * lib/regex.c, regex.h: Sync from libc.
27298         * lib/regcomp.c, lib/regexec_internal.c, lib/regex_internal.h:
27299         * lib/regexec.c:
27300         New files, synced from libc, except that regex_internal.h
27301         currently has a small porting fix.
27302
27303 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
27304
27305         * config/srclist.txt: Add regcomp.c, regex.c, regex.h,
27306         regex_internal.c, regexec.c.
27307         Add regex_internal.h too, but as a comment, since the libc version
27308         is currently broken in gnulib mode.
27309
27310 2005-07-06  Paul Eggert  <eggert@cs.ucla.edu>
27311
27312         Support programs like Emacs that use gnulib but not gettext.
27313         * MODULES.html.sh (Internationalization functions): Add gettext-h.
27314         * modules/gettext-h: New file.
27315         * modules/gettext (Files): Remove lib/gettext.h.
27316         (Depends-on): Add gettext-h.
27317         (Makefile.am): Remove lib_SOURCES.
27318         * modules/argmatch, modules/c-stack, modules/closeout:
27319         * modules/copy-file, modules/csharpcomp, modules/csharpexec:
27320         * modules/execute, modules/file-type, modules/getaddrinfo:
27321         * modules/getopt, modules/human, modules/javacomp:
27322         * modules/javaexec, modules/mkdir-p, modules/obstack:
27323         * modules/openat, modules/pagealign_alloc, modules/pipe:
27324         * modules/quotearg, modules/regex, modules/rpmatch:
27325         * modules/unicodeio, modules/userspec, modules/version-etc:
27326         * modules/wait-process, modules/xalloc-die, modules/xmemcoll:
27327         * modules/xsetenv:
27328         Depend on gettext-h, not gettext.
27329
27330 2005-07-05  Paul Eggert  <eggert@cs.ucla.edu>
27331
27332         * gnulib-tool (func_import): Add support for 'public domain' license.
27333         * modules/alloca, modules/atexit, modules/memmove:
27334         Now public domain, not GPL.
27335         * modules/dup2, modules/getpagesize, modules/malloc, modules/memset:
27336         * modules/realloc, modules/strerror, modules/strtod:
27337         Now LGPL, not GPL.
27338
27339 2005-07-05  Bruno Haible  <bruno@clisp.org>
27340
27341         * m4/mbrtowc.m4 (gl_FUNC_MBRTOWC): Upgrade to version from current
27342         autoconf CVS. Needed for mingw.
27343
27344 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
27345
27346         Remove the dependency of the strftime module on the tzset module.
27347         * modules/strftime (Depends-on): Remove dependency on tzset.
27348
27349 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
27350
27351         Remove the dependency of the strftime module on the tzset module.
27352         * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't require
27353         gl_FUNC_TZSET_CLOBBER.
27354
27355 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
27356
27357         Remove the dependency of the strftime module on the tzset module.
27358         * lib/strftime.c (my_strftime)
27359         [! defined _LIBC && ! HAVE_RUN_TZSET_TEST]:
27360         Copy the input structure, to work around some of the bug with
27361         Solaris 2.5.1 and Solaris 2.6.  If you still care about these old
27362         Solaris releases, you should also use the tzset module, but we won't
27363         require it as a dependency any more since we don't want LGPLed code
27364         to depend on GPLed code.
27365
27366 2005-07-02  Jim Meyering  <jim@meyering.net>
27367
27368         * m4/chown.m4, cloexec.m4, dup2.m4, fsusage.m4:
27369         * m4/getcwd-path-max.m4, getcwd.m4, mkstemp.m4, mountlist.m4:
27370         * m4/pagealign_alloc.m4, save-cwd.m4, unistd-safer.m4:
27371         Don't check for fcntl.h, and don't test for HAVE_FCNTL_H.
27372
27373 2005-07-02  Jim Meyering  <jim@meyering.net>
27374
27375         * lib/backupfile.c (backup_args): Change a `0' to NULL.
27376
27377 2005-07-01  Paul Eggert  <eggert@cs.ucla.edu>
27378
27379         * lib/xnanosleep.c: Include timespec.h, since OpenBSD 3.4 <time.h>
27380         declares only 'struct timespec;' (!).
27381
27382 2005-07-01  Jim Meyering  <jim@meyering.net>
27383
27384         * lib/chown.c, cloexec.c, dup-safer.c, dup2.c, fsusage.c, getcwd.c:
27385         * lib/getloadavg.c, mountlist.c, openat.h, pagealign_alloc.c:
27386         * lib/save-cwd.c, tempname.c:
27387         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
27388         and don't include <sys/file.h>).
27389
27390 2005-06-29  Jim Meyering  <jim@meyering.net>
27391
27392         * lib/mkdir-p.c (make_dir_parents): Don't apply sizeof to a hard-coded
27393         type name.  Use the variable name instead.
27394         * lib/idcache.c (getuser, getuidbyname, getgroup, getgidbyname):
27395         Likewise.
27396
27397 2005-06-28  Simon Josefsson  <jas@extundo.com>
27398
27399         * modules/check-version (Files): Add check-version.m4.
27400
27401 2005-06-28  Simon Josefsson  <jas@extundo.com>
27402
27403         * m4/check-version.m4: New file, suggested by Jim Meyering
27404         <jim@meyering.net>.
27405
27406 2005-06-28  Simon Josefsson  <jas@extundo.com>
27407
27408         * lib/check-version.h, lib/check-version.c: New files.
27409
27410 2005-06-28  Simon Josefsson  <jas@extundo.com>
27411
27412         * lib/base64.c (base64_encode): Indent.  Rename 'b64' to avoid
27413         collision with global variable.  Better indentation.  Don't
27414         increment buffer pointer beyond buffer end.  Based on comments
27415         from Paul Eggert <eggert@cs.ucla.edu>.
27416
27417         * lib/base64.h: Indent.
27418
27419 2005-06-28  Simon Josefsson  <jas@extundo.com>
27420
27421         * doc/gnulib.texi (Library version handling): New section.
27422
27423 2005-06-28  Jim Meyering  <jim@meyering.net>
27424
27425         * check-module (find_included_lib_files): Hard-code another
27426         pair of exceptions: fts.c includes fts-cycle.c and unistd-safer.h
27427         but modules/fts-lgpl (correctly) does not list those files.
27428
27429         * modules/canonicalize (Files): Add lib/pathmax.h.
27430
27431 2005-06-25  Simon Josefsson  <jas@extundo.com>
27432
27433         * modules/check-version: New file.
27434
27435 2005-06-24  Paul Eggert  <eggert@cs.ucla.edu>
27436
27437         * lib/canon-host.c (canon-host): Append trailing "," to 0 in
27438         initializer of struct addrinfo, as an indication that we don't
27439         care how many members the structure has.
27440
27441 2005-06-24  Derek Price  <derek@ximbiot.com>
27442         and Bruno Haible  <bruno@clisp.org>
27443
27444         Remove stat module & update lstat.
27445         * m4/lstat.m4 (gl_FUNC_LSTAT): Drop AC_FUNC_LSTAT in favor of
27446         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
27447         * m4/stat.m4: Remove this file.
27448
27449 2005-06-24  Derek Price  <derek@ximbiot.com>
27450         and Bruno Haible  <bruno@clisp.org>
27451
27452         Remove stat module & update lstat.
27453         * lib/stat.c: Remove this file...
27454         (slash_aware_lstat): ...moving this content and its support...
27455         * lib/lstat.c (rpl_lstat): ...into here.
27456         * lib/lstat.h: New file.
27457
27458 2005-06-24  Derek Price  <derek@ximbiot.com>
27459         and Bruno Haible  <bruno@clisp.org>
27460
27461         Remove stat module & update lstat.
27462         * config/srclist.txt (libc sources): Remove stat.
27463
27464 2005-06-24  Derek Price  <derek@ximbiot.com>
27465         and Bruno Haible  <bruno@clisp.org>
27466
27467         Remove stat module & update lstat.
27468         * MODULES.html.sh (stat): Remove.
27469         * MODULES.html: Regenerated.
27470         * modules/lstat (Description): Correct function name.
27471         (Files): Add "lstat.h".
27472         (Depends-on): Remove stat, add xalloc, stat-macros.
27473         * modules/stat: Remove this file.
27474         (Include): Add "lstat.h", remove <sys/stat.h>.
27475
27476 2005-06-23  Paul Eggert  <eggert@cs.ucla.edu>
27477
27478         * lib/mktime.c: Include <string.h> even if !DEBUG.  (From glibc.)
27479         (ranged_convert): Don't save conversion in a temporary struct.
27480         This causes a warning with GCC 4.0.0, and anyway in the typical
27481         case it's not worth the extra 100 bytes or so of code.
27482         (ranged_convert, __mktime_internal): When calling a function via a
27483         pointer P, use P () rather than (*P) (), as we now assume C89 or
27484         better.
27485
27486 2005-06-22  Paul Eggert  <eggert@cs.ucla.edu>
27487
27488         * lib/readutmp.c (desirable_utmp_entry): Fix bug where "who -b" and
27489         "who -r" failed to give output.  Problem reported by Tim Waugh.
27490
27491         * lib/xmalloc.c (HAVE_GNU_CALLOC): New constant.
27492         (xcalloc): Use it to avoid needless tests.
27493         Problem reported by Jim Meyering.
27494
27495 2005-06-20  Derek Price  <derek@ximbiot.com>
27496
27497         * m4/bison.m4: Note that precious decls of YACC & YFLAGS will be
27498         unnecessary for Autoconfs > 2.59c.
27499
27500 2005-06-16  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
27501
27502         * lib/argp.h (__option_is_short): Check upper limit of
27503         __key. Isprint() requires its argument to have the value
27504         of an unsigned char or EOF.
27505
27506 2005-06-16  Jim Meyering  <jim@meyering.net>
27507
27508         * lib/calloc.c (rpl_calloc): Allocate a 1-byte buffer (not 1xS or Nx1)
27509         when either N or S is zero.
27510
27511 2005-06-16  Derek Price  <derek@ximbiot.com>
27512
27513         * m4/bison.m4: Declare YACC & YFLAGS precious.
27514
27515 2005-06-10  Paul Eggert  <eggert@cs.ucla.edu>
27516
27517         * lib/fnmatch.c (fnmatch): If there is an encoding error in a
27518         multibyte string or pattern, fall back on unibyte matching.
27519         Problem reported by James Youngman.
27520
27521 2005-06-08  Bruno Haible  <bruno@clisp.org>
27522
27523         * modules/csharpcomp: New file.
27524         * MODULES.html.sh (C#): Add csharpcomp.
27525
27526 2005-06-08  Bruno Haible  <bruno@clisp.org>
27527
27528         * m4/csharpcomp.m4: New file, from GNU gettext.
27529
27530 2005-06-08  Bruno Haible  <bruno@clisp.org>
27531
27532         * lib/csharpcomp.h: New file, from GNU gettext.
27533         * lib/csharpcomp.c: New file, from GNU gettext.
27534         * lib/csharpcomp.sh.in: New file, from GNU gettext.
27535
27536 2005-06-08  Bruno Haible  <bruno@clisp.org>
27537
27538         * lib/binary-io.h (fileno): Undefine before defining it. Avoids a gcc
27539         warning on mingw.
27540
27541 2005-06-07  Derek Price  <derek@ximbiot.com>
27542
27543         Sync from CVS.
27544         * lib/glob_.h: Indent nested #ifdef.
27545
27546 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
27547
27548         Sync from coreutils.
27549         Use "file name" when talking about file names, instead of "filename"
27550         or "path", as per the GNU coding standards.
27551         * lib/mkdir-p.c: Renamed from makepath.c.
27552         (make_dir_parents): Renamed from make_path.  All callers changed.
27553         * lib/mkdir-p.h: Likewise.  All includers changed.
27554         * lib/filenamecat.c: Renamed from path-concat.c.
27555         (file_name_concat): Renamed from path_concat.  All callers changed.
27556         [TEST_FILE_NAME_CONCAT]: Renamed from TEST_PATH_CONCAT.
27557         * lib/filenamecat.h: Likewise.  All includers changed.
27558         * lib/acl.c: Don't use "path" or "filename" to mean "file name"
27559         in comments or local variable names.
27560         * lib/basename.c: Likewise.
27561         * lib/canonicalize.c, canonicalize.h: Likewise.
27562         * lib/dirname.c, dirname.h: Likewise.
27563         * lib/euidaccess.c: Likewise.
27564         * lib/exclude.c: Likewise
27565         * lib/fnmatch_.h, fnmatch_loop.c: Likewise.
27566         * lib/fsusage.c, fsuage.h: Likewise.
27567         * lib/fts.c, fts_.h: Likewise.
27568         * lib/getcwd.c: Likewise.
27569         * lib/getloadavg.c: Likewise.
27570         * lib/mkstemp.c: Likewise.
27571         * lib/mountlist.c, mountlist.h: Likewise.
27572         * lib/openat.c, openat.h: Likewise.
27573         * lib/readlink-stub.c: Likewise.
27574         * lib/readutmp.c, readutmp.h: Likewise.
27575         * lib/rename.c: Likewise.
27576         * lib/rmdir.c: Likewise.
27577         * lib/same.c: Likewise.
27578         * lib/savedir.c: Likewise.
27579         * lib/stripslash.c: Likewise.
27580         * lib/tempname.c: Likewise.
27581         * lib/xreadlink.c: Likewise.
27582         * lib/exclude.c (excluded_file_name): Renamed from excluded_filename.
27583         All uses changed.
27584         * lib/exclude.h: Likewise.
27585
27586         * lib/euidaccess.c (getuid, getgid, getuid, getegid)
27587         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
27588         * lib/idcache.c (getpwuid, getpwnam, getgrgid, getgrnam)
27589         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
27590         * lib/pathmax.h: Include <limits.h> unconditionally, since other
27591         files have been getting away with it for years (MORE/BSD 4.3
27592         is extinct now).
27593         * lib/userspec.c (getpwnam, getgrnam, getgrgid)
27594         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
27595
27596         * lib/pathmax.h (_POSIX_PATH_MAX) [!defined _POSIX_PATH_MAX]:
27597         Define to 256, not 255, as per modern POSIX.
27598
27599 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
27600
27601         Sync from coreutils.
27602         Use "file name" when talking about file names, instead of "filename"
27603         or "path", as per the GNU coding standards.
27604         * MODULES.html.sh: mkdir-p renamed from makepath.
27605         filenamecat renamed from path-concat.
27606         * modules/filenamecat: Renamed from modules/path-concat.
27607         (Files): filenamecat.h and filenamecat.c renamed from
27608         path-concat.h and path-concat.c.
27609         (configure.ac): gl_FILE_NAME_CONCAT, not gl_PATH_CONCAT.
27610         (Include): filenamecat.h, not path-concat.h.
27611         * modules/mkdir-p: Renamed from modules/makepath.
27612         (Files): mkdir-p.h and mkdir-p.c renamed from makepath.h and
27613         makepath.c.
27614         (configure.ac): gl_MKDIR_PARENTS, not gl_MAKEPATH.
27615         (Include): mkdir-p.h, not makepath.h.
27616
27617 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
27618
27619         Sync from coreutils.
27620         * m4/mkdir-p.m4: Renamed from makepath.m4.
27621         (gl_MKDIR_PARENTS): Renamed from gl_MAKEPATH.  All uses changed.
27622         Rename files from makepath.c to mkdir-p.c, and from
27623         makepath.h to mkdir-p.h.
27624         * m4/filenamecat.m4: Renamed from path-concat.m4.
27625         (gl_FILE_NAME_CONCAT): Renamed from gl_PATH_CONCAT.  All uses changed.
27626         Rename files from path-concat.c to filenamecat.c,
27627         and from path-concat.h to filenamecat.h.
27628         * m4/getcwd-path-max.m4: Don't use "path" or "filename" to mean
27629         "file name" in local variables or comments.
27630         * m4/rename.m4: Likewise.
27631
27632 2005-06-01  Bruno Haible  <bruno@clisp.org>
27633
27634         * modules/csharpexec: New file.
27635         * MODULES.html.sh (C#): New section.
27636
27637 2005-06-01  Bruno Haible  <bruno@clisp.org>
27638
27639         * m4/csharp.m4: New file, from GNU gettext.
27640         * m4/csharpexec.m4: New file, from GNU gettext.
27641
27642 2005-06-01  Bruno Haible  <bruno@clisp.org>
27643
27644         * lib/csharpexec.h: New file, from GNU gettext.
27645         * lib/csharpexec.c: New file, from GNU gettext.
27646         * lib/csharpexec.sh.in: New file, from GNU gettext.
27647
27648 2005-05-31  Derek Price  <derek@ximbiot.com>
27649             Paul Eggert  <eggert@cs.ucla.edu>
27650
27651         Sync from cvs.
27652         * m4/glob.m4: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
27653
27654 2005-05-31  Derek Price  <derek@ximbiot.com>
27655             Paul Eggert  <eggert@cs.ucla.edu>
27656
27657         Sync from cvs.
27658         * lib/glob_.h: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
27659
27660 2005-05-29  Derek Price  <derek@ximbiot.com>
27661
27662         * config/srclist.txt (glob_.h, glob.c): Add these files.
27663
27664 2005-05-29  Derek Price  <derek@ximbiot.com>
27665
27666         * MODULES.html.sh: Add glob to Enhanced POSIX.2001 section.
27667         * modules/glob: New file.
27668         * modules/getlogin_r: Add link to POSIX spec in description.
27669
27670 2005-05-29  Derek Price  <derek@ximbiot.com>
27671             Paul Eggert  <eggert@cs.ucla.edu>
27672
27673         * m4/glob.m4: New file.
27674
27675 2005-05-29  Derek Price  <derek@ximbiot.com>
27676             Paul Eggert  <eggert@cs.ucla.edu>
27677
27678         * lib/glob_.h, lib/glob.c: New files.
27679
27680 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
27681
27682         * modules/fts (Files): Remove m4/inttypes-pri.m4.
27683         * modules/fts-lgpl (Depends-on): Remove gettext.
27684
27685 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
27686
27687         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't check for inttypes.h or stdint.h,
27688         and don't require gt_INTTYPES_PRI.
27689
27690 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
27691
27692         * lib/getlogin_r.c (getlogin_r): Don't set errno to 0 on return.
27693
27694         * lib/fts.c: Don't worry about debugging on pre-C99-compatible hosts;
27695         the configuration hassle isn't worth it.
27696         Include inttypes.h and stdint.h unconditionally if FTS_DEBUG.
27697         (LONGEST_MODIFIER, PRIuMAX): Remove.
27698
27699 2005-05-27  Bruno Haible  <bruno@clisp.org>
27700
27701         * lib/getlogin_r.h: Remove second include of <stddef.h>.
27702
27703 2005-05-26  Paul Eggert  <eggert@cs.ucla.edu>
27704
27705         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Define
27706         _POSIX_PTHREAD_SEMANTICS for Solaris.
27707
27708 2005-05-25  Derek Price  <derek@ximbiot.com>
27709
27710         * MODULES.html.sh: Add getlogin_r to POSIX.2001 support section.
27711
27712 2005-05-25  Derek Price  <derek@ximbiot.com>
27713             Paul Eggert  <eggert@cs.ucla.edu>
27714
27715         * modules/getlogin_r, m4/getlogin_r.m4: New files.
27716         * lib/getlogin_r.c, getlogin_r.h: New files.
27717
27718 2005-05-25  Bruno Haible  <bruno@clisp.org>
27719             Derek Price  <derek@ximbiot.com>
27720
27721         * lib/getlogin_r.h: Simplify API documentation.
27722
27723 2005-05-23  Derek Price  <derek@ximbiot.com>
27724
27725         * modules/minmax (Files): Add m4/minmax.m4.
27726         (configure.ac): Add gl_MINMAX.
27727
27728 2005-05-22  Paul Eggert  <eggert@cs.ucla.edu>
27729
27730         * lib/fts.c (fd_safer) [_LGPL_PACKAGE]: New static function,
27731         so that unistd-safer.h (GPL'ed code) need not be included.
27732
27733 2005-05-22  Bruno Haible  <bruno@clisp.org>
27734
27735         * m4/minmax.m4: New file.
27736         Based on a patch by Derek Price <derek@ximbiot.com>.
27737
27738 2005-05-22  Bruno Haible  <bruno@clisp.org>
27739
27740         * lib/stdint_.h (_STDINT_H_HAVE_INT64): New macro. Use it in #ifdefs.
27741         (INT64_MIN): Fix definition.
27742         Suggested by Paul Eggert <eggert@cs.ucla.edu>.
27743
27744         * lib/stdint_.h (_STDINT_H_NEED_SIGNED_INT_TYPES): Renamed from
27745         NEED_SIGNED_INT_TYPES.
27746
27747         * lib/stdint_.h (_STDINT_H_HAVE_SYSTEM_INTTYPES): Renamed from
27748         HAVE_SYSTEM_INTTYPES.
27749
27750 2005-05-22  Bruno Haible  <bruno@clisp.org>
27751
27752         * lib/minmax.h: Include <limits.h> only when it defines MIN, MAX.
27753         Also include <sys/param.h> if it defines MIN, MAX.
27754         Based on a patch by Derek Price <derek@ximbiot.com>.
27755
27756 2005-05-21  Jim Meyering  <jim@meyering.net>
27757
27758         * modules/fts (Files): Add m4/inttypes-pri.m4.
27759         (Depends-on): Add lstat and remove gettext.  Alphabetize.
27760
27761 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
27762
27763         New fts module.
27764         * lib/fts.c: Don't include "cycle-check.h" or "hash.h".
27765         (setup_dir, free_dir): New functions.
27766         (enter_dir, leave_dir): Define trivial
27767         alternatives of _LGPL_PACKAGE.  Move to fts-cycle.c if !_LGPL_PACKAGE.
27768         (HT_INITIAL_SIZE, ENTER_DIR): Remove.  All uses removed.
27769         (LEAVE_DIR): Fix typo: pass Fts and Ent to leave_dir.
27770         (struct Active_dir, AD_compare, AD_hash, enter_dir, leave_dir):
27771         Move to fts-cycle.c.
27772         (fts_open): Use setup_dir.
27773         (fts_close): Use free_dir.
27774         (fts_read): Have just one copy of the ENTER_DIR code rather than three.
27775         This adds a label and some gotos, but the alternatives were messier.
27776         Check for memory allocation failure when entering a dir.
27777         (fts_stat) [_LGPL_PACKAGE]: Bring back glibc cycle detection code.
27778         * lib/fts_.h (_LGPL_PACKAGE) [defined _LIBC]: New macro.
27779         (FTS): New member fts_cycle, that is a union that contains the
27780         old active_dir_ht and cycle_state.  All uses changed to mention
27781         fts_cycle.ht and fts_cycle.state.
27782         * lib/fts-cycle.c: New file, containing GPL'ed code migrated out of
27783         fts.c, with the following changes:
27784         (setup_dir, free_dir): New functions.
27785         (enter_dir): Now returns bool.  Return true if successful, false
27786         if memory exhausted.  All callers changed.
27787         Do not bother partly cleaning up on
27788         memory allocation failure; that is free_dir's job.
27789         However, free ad if hash_insert fails, to avoid memory leak.
27790         (enter_dir, leave_dir): Accommodate change to FTS by inspecting
27791         fts->fts_options to see which union member to use.
27792
27793 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
27794
27795         * m4/fts.m4 (gl_FUNC_FTS_CORE): Renamed from gl_FUNC_FTS.
27796         (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): New macros.
27797
27798 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
27799
27800         * MODULES.html.sh (File system functions): Add fts, fts-lgpl.
27801
27802 2005-05-20  Jim Meyering  <jim@meyering.net>
27803
27804         * lib/unlinkdir.h (cannot_unlink_dir) [UNLINK_CANNOT_UNLINK_DIR]:
27805         Now a macro, to pacify GCC.
27806
27807 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
27808
27809         * m4/chown.m4 (gl_FUNC_CHOWN): Correct sense of test for honoring IDs
27810         of -1.
27811
27812 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
27813
27814         * lib/chown.c (rpl_chown): Return -1 on failure.
27815
27816 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
27817
27818         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME]):
27819         Don't check for stddef.h.
27820         * m4/fts.m4 (gl_FUNC_FTS): Don't require AC_HEADER_STDC, as we
27821         don't use its results.
27822         Don't check for fcntl.h, stddef.h, stdlib.h, string.h, unistd.h,
27823         since we include them unconditionally.  Don't require
27824         AM_STDBOOL_H, since stdbool is a prerequisite.
27825         Don't require AC_C_CONST, AC_TYPE_SIZE_T or check for ptrdiff_t
27826         since we assume C89 or better.
27827         Don't require AC_FUNC_CLOSEDIR_VOID, AC_FUNC_LSTAT, or AC_FUNC_STAT,
27828         as we don't use their results.
27829         Don't check for fchdir, memmove, memset, strrchr, as we use
27830         them unconditionally.
27831         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't define
27832         GETTIMEOFDAY_CLOBBERS_LOCALTIME_BUFFER, since nobody uses it.
27833
27834 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
27835
27836         * lib/canonicalize.c: Include canonicalize.h first, to test interface.
27837         Include <stddef.h> unconditionally, since we assume C89 now.
27838         All uses of PTR_INT_TYPE replaced by ptrdiff_t.
27839         * lib/fts.c: Include fts_.h first, to check interface.
27840         Do not include intprops.h; no longer needed.
27841         Include cycle-check.h and hash.h, since fts_.h no longer does.
27842         Remove unnecessary casts of closedir to void.
27843         (fts_build): Use a simpler method (not involving TYPE_SIGNED) to
27844         decide whether to decrement nlinks.
27845         * lib/fts_.h: Do not include hash.h or cycle-check.h; no longer needed.
27846         (FTS): Use struct hash_table * instead of Hash_table, so that
27847         we no longer need to include hash.h here.
27848
27849 2005-05-18  Jim Meyering  <jim@meyering.net>
27850
27851         * modules/dirfd (License): Change to LGPL.  Most of the code
27852         is already in the public domain.
27853
27854 2005-05-18  Jim Meyering  <jim@meyering.net>
27855
27856         * m4/fts.m4 (AC_LIBSOURCES): Add intprops.h to the list.
27857         Reported by Yoann Vandoorselaere.
27858
27859 2005-05-17  Jim Meyering  <jim@meyering.net>
27860
27861         * m4/fts.m4: New file, from coreutils.
27862
27863 2005-05-17  Jim Meyering  <jim@meyering.net>
27864
27865         * lib/fts.c, lib/fts_.h: New files, from coreutils.
27866
27867 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
27868
27869         Sync from coreutils.
27870         * m4/unlinkdir.m4: New file.
27871
27872 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
27873
27874         Sync from coreutils.
27875         * lib/unlinkdir.c, lib/unlinkdir.h: New files.
27876         * lib/gethrxtime.c, lib/gethrxtime.h, lib/getpass.h, lib/mountlist.h,
27877         lib/path-concat.c, lib/regex.h, lib/unlocked-io.h, lib/xtime.h:
27878         White space changes only.
27879         * lib/makepath.c (make_path): Port to hosts where leading "//" is
27880         special.
27881         * lib/yesno.c: Include getline.h, not ctype.h.
27882         (yesno): Don't remove leading white space; POSIX doesn't allow it.
27883         Use getline to remove arbitrary restriction on response length.
27884
27885 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
27886
27887         * config/srclist-update: Spell out "Street" in FSF postal
27888         mail address; this is the style the FSF seems to prefer.
27889
27890         * build-aux/depcomp, build-aux/install-sh, build-aux/mdate-sh,
27891         build-aux/missing, build-aux/mkinstalldirs: Sync from Automake;
27892         this updates FSF postal mail address.
27893
27894         Sync from coreutils.
27895         * modules/unlinkdir: New file.
27896         * modules/yesno (Depends-on): Add getline.
27897         * MODULES.html.sh (File system functions): Add unlinkdir.
27898
27899 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
27900
27901         * lib/byteswap_.h, lib/getsubopt.h, lib/iconvme.h, lib/strsep.c,
27902         lib/strsep.h:
27903         Change the initial comment to refer to GPL, not LGPL.
27904         gnulib-tool will change it to LGPL as needed.
27905
27906         * lib/__fpending.c, lib/acl.c, lib/acl.h, lib/alloca_.h, lib/allocsa.c,
27907         lib/allocsa.h, lib/argmatch.c, lib/argmatch.h, lib/argp-ba.c,
27908         lib/argp-eexst.c, lib/argp-fmtstream.c, lib/argp-fmtstream.h,
27909         lib/argp-fs-xinl.c, lib/argp-help.c, lib/argp-namefrob.h,
27910         lib/argp-parse.c, lib/argp-pv.c, lib/argp-pvh.c, lib/argp-xinl.c,
27911         lib/argp.h, lib/argz.c, lib/argz_.h, lib/asnprintf.c, lib/asprintf.c,
27912         lib/atanl.c, lib/backupfile.c, lib/backupfile.h, lib/base64.c,
27913         lib/base64.h, lib/basename.c, lib/binary-io.h, lib/byteswap_.h,
27914         lib/c-ctype.c, lib/c-ctype.h, lib/c-stack.c, lib/c-stack.h,
27915         lib/c-strtod.c, lib/calloc.c, lib/canon-host.c, lib/canonicalize.c,
27916         lib/canonicalize.h, lib/ceill.c, lib/chdir-long.c, lib/chdir-long.h,
27917         lib/chown.c, lib/classpath.c, lib/classpath.h, lib/cloexec.c,
27918         lib/closeout.c, lib/closeout.h, lib/concatpath.c, lib/config.charset,
27919         lib/copy-file.c, lib/copy-file.h, lib/cycle-check.c, lib/cycle-check.h,
27920         lib/diacrit.c, lib/diacrit.h, lib/dirfd.c, lib/dirfd.h, lib/dirname.c,
27921         lib/dirname.h, lib/dummy.c, lib/dup-safer.c, lib/dup2.c, lib/eealloc.h,
27922         lib/error.c, lib/error.h, lib/euidaccess.c, lib/exclude.c,
27923         lib/exclude.h, lib/execute.c, lib/execute.h, lib/exit.h,
27924         lib/exitfail.c, lib/exitfail.h, lib/expl.c, lib/fatal-signal.c,
27925         lib/fatal-signal.h, lib/fd-safer.c, lib/file-type.c, lib/file-type.h,
27926         lib/fileblocks.c, lib/filemode.c, lib/filemode.h, lib/findprog.c,
27927         lib/findprog.h, lib/floorl.c, lib/fnmatch.c, lib/fnmatch_.h,
27928         lib/fnmatch_loop.c, lib/fopen-safer.c, lib/free.c, lib/frexpl.c,
27929         lib/fsusage.c, lib/fsusage.h, lib/full-read.c, lib/full-read.h,
27930         lib/full-write.c, lib/full-write.h, lib/fwriteerror.c,
27931         lib/fwriteerror.h, lib/gai_strerror.c, lib/gcd.c, lib/gcd.h,
27932         lib/getaddrinfo.c, lib/getaddrinfo.h, lib/getcwd.c, lib/getcwd.h,
27933         lib/getdate.h, lib/getdate.y, lib/getdomainname.c, lib/getdomainname.h,
27934         lib/getgroups.c, lib/gethostname.c, lib/gethrxtime.c, lib/gethrxtime.h,
27935         lib/getline.c, lib/getline.h, lib/getloadavg.c, lib/getndelim2.c,
27936         lib/getndelim2.h, lib/getnline.c, lib/getnline.h, lib/getopt.c,
27937         lib/getopt1.c, lib/getopt_.h, lib/getopt_int.h, lib/getpagesize.h,
27938         lib/getpass.c, lib/getpass.h, lib/getsubopt.c, lib/getsubopt.h,
27939         lib/gettext.h, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c,
27940         lib/getusershell.c, lib/group-member.c, lib/group-member.h,
27941         lib/hard-locale.c, lib/hard-locale.h, lib/hash-pjw.c, lib/hash-pjw.h,
27942         lib/hash.c, lib/hash.h, lib/human.c, lib/human.h, lib/iconvme.c,
27943         lib/iconvme.h, lib/idcache.c, lib/inet_ntop.h, lib/intprops.h,
27944         lib/inttostr.c, lib/inttostr.h, lib/isdir.c, lib/javacomp.c,
27945         lib/javacomp.h, lib/javacomp.sh.in, lib/javaexec.c, lib/javaexec.h,
27946         lib/javaexec.sh.in, lib/lbrkprop.h, lib/lchown.c, lib/ldexpl.c,
27947         lib/linebreak.c, lib/linebreak.h, lib/linebuffer.c, lib/linebuffer.h,
27948         lib/localcharset.c, lib/localcharset.h, lib/logl.c, lib/long-options.c,
27949         lib/long-options.h, lib/lstat.c, lib/makepath.c, lib/makepath.h,
27950         lib/malloc.c, lib/mathl.h, lib/mbswidth.c, lib/mbswidth.h, lib/md5.c,
27951         lib/md5.h, lib/memcasecmp.c, lib/memcasecmp.h, lib/memchr.c,
27952         lib/memcmp.c, lib/memcoll.c, lib/memcoll.h, lib/memcpy.c, lib/memmem.c,
27953         lib/memmem.h, lib/mempcpy.c, lib/mempcpy.h, lib/memrchr.c,
27954         lib/memrchr.h, lib/memset.c, lib/minmax.h, lib/mkdir.c, lib/mkdtemp.c,
27955         lib/mkdtemp.h, lib/mkstemp.c, lib/mktime.c, lib/modechange.c,
27956         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
27957         lib/obstack.c, lib/obstack.h, lib/openat.c, lib/openat.h,
27958         lib/pagealign_alloc.c, lib/pagealign_alloc.h, lib/path-concat.c,
27959         lib/path-concat.h, lib/pathmax.h, lib/pathname.h, lib/physmem.c,
27960         lib/physmem.h, lib/pipe.c, lib/pipe.h, lib/poll.c, lib/poll_.h,
27961         lib/posixtm.c, lib/posixtm.h, lib/posixver.c, lib/printf-args.c,
27962         lib/printf-args.h, lib/printf-parse.c, lib/printf-parse.h,
27963         lib/progname.c, lib/progname.h, lib/progreloc.c, lib/putenv.c,
27964         lib/quote.c, lib/quote.h, lib/quotearg.c, lib/quotearg.h, lib/raise.c,
27965         lib/readlink.c, lib/readtokens.c, lib/readtokens.h, lib/readtokens0.c,
27966         lib/readtokens0.h, lib/readutmp.c, lib/readutmp.h, lib/realloc.c,
27967         lib/ref-add.sin, lib/ref-del.sin, lib/regex.c, lib/regex.h,
27968         lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c,
27969         lib/safe-read.h, lib/safe-write.c, lib/safe-write.h, lib/same.c,
27970         lib/same.h, lib/save-cwd.c, lib/save-cwd.h, lib/savedir.c,
27971         lib/savedir.h, lib/setenv.c, lib/setenv.h, lib/settime.c,
27972         lib/sh-quote.c, lib/sh-quote.h, lib/sha1.c, lib/sha1.h, lib/sig2str.c,
27973         lib/sig2str.h, lib/sincosl.c, lib/snprintf.c, lib/snprintf.h,
27974         lib/sqrtl.c, lib/stat-macros.h, lib/stat.c, lib/stdbool_.h,
27975         lib/stdint_.h, lib/stdio-safer.h, lib/stpcpy.c, lib/stpcpy.h,
27976         lib/stpncpy.c, lib/stpncpy.h, lib/strcase.h, lib/strcasecmp.c,
27977         lib/strchrnul.c, lib/strchrnul.h, lib/strcspn.c, lib/strdup.c,
27978         lib/strdup.h, lib/strerror.c, lib/strftime.c, lib/strftime.h,
27979         lib/stripslash.c, lib/strndup.c, lib/strndup.h, lib/strnlen.c,
27980         lib/strpbrk.c, lib/strpbrk.h, lib/strsep.c, lib/strsep.h, lib/strstr.c,
27981         lib/strstr.h, lib/strtod.c, lib/strtoimax.c, lib/strtok_r.c,
27982         lib/strtok_r.h, lib/strtol.c, lib/strtoll.c, lib/strtoul.c,
27983         lib/strtoull.c, lib/strverscmp.c, lib/strverscmp.h, lib/sysexit_.h,
27984         lib/tempname.c, lib/time_r.c, lib/time_r.h, lib/timegm.c, lib/timegm.h,
27985         lib/timespec.h, lib/trigl.c, lib/trigl.h, lib/ucs4-utf16.h,
27986         lib/ucs4-utf8.h, lib/unicodeio.c, lib/unicodeio.h, lib/unistd-safer.h,
27987         lib/unlocked-io.h, lib/unsetenv.c, lib/userspec.c, lib/utf16-ucs4.h,
27988         lib/utf8-ucs4.h, lib/utime.c, lib/utimecmp.c, lib/utimecmp.h,
27989         lib/utimens.c, lib/vasnprintf.c, lib/vasnprintf.h, lib/vasprintf.c,
27990         lib/vasprintf.h, lib/version-etc-fsf.c, lib/version-etc.c,
27991         lib/version-etc.h, lib/vsnprintf.c, lib/vsnprintf.h, lib/w32spawn.h,
27992         lib/wait-process.c, lib/wait-process.h, lib/xalloc-die.c, lib/xalloc.h,
27993         lib/xallocsa.c, lib/xallocsa.h, lib/xasprintf.c, lib/xgetcwd.c,
27994         lib/xgetcwd.h, lib/xgetdomainname.c, lib/xgetdomainname.h,
27995         lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c,
27996         lib/xreadlink.c, lib/xreadlink.h, lib/xsetenv.c, lib/xsetenv.h,
27997         lib/xsize.h, lib/xstrndup.c, lib/xstrndup.h, lib/xstrtod.c,
27998         lib/xstrtod.h, lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h,
27999         lib/xstrtoumax.c, lib/xtime.h, lib/xvasprintf.c, lib/xvasprintf.h,
28000         lib/yesno.c, lib/yesno.h:
28001         Update FSF postal mail address.
28002
28003 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
28004
28005         * MODULES.html.sh, README, gnulib-tool, tests/test-base64.c,
28006         tests/test-memmem.c, tests/test-stpncpy.c:
28007         Update FSF postal mail address.
28008
28009 2005-05-13  Bruno Haible  <bruno@clisp.org>
28010
28011         * lib/stdint_.h (int64_t, uint64_t, int_least64_t, uint_least64_t,
28012         int_fast64_t, uint_fast64_t, intmax_t, uintmax_t, INT64_MIN, INT64_MAX,
28013         UINT64_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX,
28014         INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTMAX_MIN,
28015         INTMAX_MAX, UINTMAX_MAX, INT64_C, UINT64_C, INTMAX_C, UINTMAX_C):
28016         Add support for 64-bit integers in the MSVC compiler.
28017
28018 2005-05-12  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
28019
28020         * modules/getdate (Makefile.am): Add getdate.c to EXTRA_DIST
28021
28022 2005-05-12  Eric Blake  <ebb9@byu.net>  (tiny change)
28023
28024         * gnulib-tool (func_import): Sort and uniquify recommended includes.
28025
28026 2005-05-11  Paul Eggert  <eggert@cs.ucla.edu>
28027
28028         * doc/getdate.texi (General date syntax): Don't say that date
28029         date --iso-8601=ns generates acceptable dates; it doesn't yet.
28030         Problem reported by Nic Ferrier.
28031
28032 2005-05-10  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
28033
28034         * lib/getaddrinfo.c: Don't fail when SOCK_STREAM or SOCK_DGRAM are
28035         specified in ai_socktype. Fix invalid ai_protocol
28036         check. ai_protocol is usually set to 0 or depending on
28037         ai_family/ai_socktype to IPPROTO_TCP / IPPROTO_UDP.  Checking for
28038         SOCK_STREAM / SOCK_DGRAM in ai_protocol was invalid.  Set
28039         ai_socktype / ai_protocol in the returned addrinfo structure.
28040
28041 2005-05-10  Simon Josefsson  <jas@extundo.com>
28042
28043         * m4/getaddrinfo.m4: Look in libnsl/libsocket for getaddrinfo, from
28044         Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
28045
28046 2005-05-10  Karl Berry  <karl@gnu.org>
28047
28048         * doc/fdl.texi, gpl.texi, lgpl.texi, COPYING: update FSF address
28049         (from http://www.gnu.org/licenses).
28050         * doc/COPYING.LIB: also rename to COPYING.LESSER.
28051         * doc/COPYING.DOC: remove; per rms, only needed in doc files, so
28052         fdl.texi suffices.
28053
28054 2005-05-10  Karl Berry  <karl@gnu.org>
28055
28056         * config/srclist.txt (COPYING.LESSER): rename from COPYING.LIB.
28057         (COPYING.DOC): remove.
28058
28059         * config/srclist-update: new FSF address.
28060
28061 2005-05-10  Derek Price  <derek@ximbiot.com>
28062
28063         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 bug, not decl, when
28064         possible.
28065
28066 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
28067             Bruno Haible  <bruno@clisp.org>
28068
28069         * modules/inet_ntop: New file.
28070         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
28071         inet_ntop.
28072
28073 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
28074             Bruno Haible  <bruno@clisp.org>
28075
28076         * m4/inet_ntop.m4: New file.
28077
28078 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
28079             Bruno Haible  <bruno@clisp.org>
28080
28081         * lib/inet_ntop.h: New file.
28082         * lib/inet_ntop.c: New file, from glibc with modifications.
28083
28084 2005-05-09  Paul Eggert  <eggert@cs.ucla.edu>
28085
28086         * modules/time_r (License): Change to LGPL.
28087         * modules/extensions (License): Change to LGPL.  Actually,
28088         the license is more permissive than that, but currently gnulib-tool
28089         doesn't know how to handle more-permissive licenses.
28090
28091         * modules/stat-macros (Depends-on): Don't depend on stat-macros (!).
28092         Problem reported by Dave Love.
28093
28094 2005-05-08  Jim Meyering  <jim@meyering.net>
28095
28096         * lib/classpath.c (PATH_SEPARATOR): Remove insignificant trailing
28097         blank.
28098
28099 2005-05-06  Paul Eggert  <eggert@cs.ucla.edu>
28100
28101         * modules/argmatch (Depends-on): Add stdbool.
28102         * modules/backupfile (Depends-on): Likewise.
28103         * modules/chdir-long (Depends-on): Likewise.
28104         * modules/closeout (Depends-on): Likewise.
28105         * modules/cycle-check (Depends-on): Likewise.
28106         * modules/dirname (Depends-on): Likewise.
28107         * modules/fnmatch (Depends-on): Likewise.
28108         * modules/fsusage (Depends-on): Likewise.
28109         * modules/fwriteerror (Depends-on): Likewise.
28110         * modules/getcwd (Depends-on): Likewise.
28111         * modules/getloadavg (Depends-on): Likewise.
28112         * modules/hard-locale (Depends-on): Likewise.
28113         * modules/makepath (Depends-on): Likewise.
28114         * modules/mountlist (Depends-on): Likewise.
28115         * modules/nanosleep (Depends-on): Likewise.
28116         * modules/posixtm (Depends-on): Likewise.
28117         * modules/quotearg (Depends-on): Likewise.
28118         * modules/readtokens (Depends-on): Likewise.
28119         * modules/readtokens0 (Depends-on): Likewise.
28120         * modules/readutmp (Depends-on): Likewise.
28121         * modules/save-cwd (Depends-on): Likewise.
28122         * modules/strftime (Depends-on): Likewise.
28123         * modules/userspec (Depends-on): Likewise.
28124         * modules/utimecmp (Depends-on): Likewise.
28125         * modules/xgetcwd (Depends-on): Likewise.
28126         * modules/xnanosleep (Depends-on): Likewise.
28127         * modules/xstrtod (Depends-on): Likewise.
28128         * modules/yesno (Depends-on): Likewise.
28129
28130 2005-05-05  Paul Eggert  <eggert@cs.ucla.edu>
28131
28132         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 getopt, and avoid
28133         needless checks.
28134
28135 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
28136
28137         Merge from coreutils.  Among other things,
28138         add bulletproofing for cases where stdin, stdout, or stderr are closed.
28139         * lib/fd-safer.c: New file.
28140         * lib/fcntl-safer.h, open-safer.c: Remove.
28141         * lib/chdir-long.c: Fix comment "fetish" -> "coreutils".
28142         * lib/dup-safer.c: Include unistd-safer.h first.
28143         Don't include errno.h.
28144         (dup_safer) [!defined F_DUPFD]: Let fd_safer do the real work.
28145         * lib/file-type.h: Don't assume invoker included sys/stat.h first.
28146         * lib/file-type.c: Rely on file-type.h change.
28147         * lib/getloadavg.c: Include unistd-safer.h.
28148         (getloadavg): Use safer open.
28149         * lib/getusershell.c: Include "stdio-safer.h".
28150         (getusershell): Use safer fopen.
28151         * lib/long-options.c (long_options): Use NULL rather than 0.
28152         * lib/modechange.h (mode_free): Remove; all callers changed to invoke
28153         'free'.
28154         * lib/modechange.c: Likewise.
28155         xstrtol.h, stdbool.h, stddef.h: Don't include; no longer needed.
28156         (MODE_DONE): New constant.
28157         (struct mode_change): Remove 'next' member.
28158         (make_node_op_equals): New function; like the old one of the
28159         same name, except it allocates an array.
28160         (mode_compile, mode_create_from_ref): Use it.
28161         (mode_compile): Allocate result as an array, not a linked list.
28162         Parse octal string ourself, so that we catch mistakes like "+0".
28163         (mode_adjust): Arg is an array, not a linked list.
28164         * lib/modechange.c: Include stat-macros.h, xalloc.h.
28165         (S_ISDIR, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR):
28166         (S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH, S_IRXWU):
28167         (S_IRWXG, S_IRWXO, CHMOD_MODE_BITS):
28168         Remove.  This is now stat-macros.h's job.
28169         (talloc): Remove.  All callers replaced by xalloc, so that
28170         our invokers don't have to worry about reporting memory failures.
28171         (make_node_op_equals): Remove.
28172         (MODE_ORDINARY_CHAGE, MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
28173         New constants.
28174         (struct mode_change): Moved here from modechange.h.
28175         (mode_append_entry): Remove.
28176         (mode_compile): Remove MASKED_OPS arg, since it encouraged
28177         apps to have incorrect behavior.  Use simpler algorithm for head
28178         and tail.  Don't futz with umask; that's now the job of mode_adjust.
28179         Detect more invalid usages rather than having somewhat-random behavior.
28180         Don't insert an "a=" action, as that leads to incorrect behavior.
28181         (mode_compile, mode_create_from_ref): Return NULL on error instead
28182         of an enum, since now there's only one way to have an error.  All
28183         callers changed.
28184         (mode_adjust): Accept new arg UMASK_VALUE, and interpret it
28185         at the correct time.  Simplify calculation of "+u" and its ilk.
28186         Don't mishandle "+X".
28187         (mode_free): Remove "register" and localize decls.
28188         * lib/modechange.h (MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
28189         (struct mode_change): Move to modechange.c; callers don't
28190         need to see this stuff.
28191         (MODE_MASK_EQUALS, MODE_MASK_PLUS, MODE_MASK_MINUS, MODE_MASK_ALL):
28192         (MODE_INVALID, MODE_MEMORY_EXHAUSTED, MODE_BAD_REFERENCE): Remove.
28193         (mode_change, mode_adjust): Reflect the new signatures noted above.
28194         * lib/nanosleep.c (rpl_nanosleep): Include "timespec.h" before macros
28195         that might redefine system include files.
28196         (siginterrupt) [!HAVE_SIGINTERRUPT]: New macro.
28197         (my_usleep): Use NULL rather than (void *) 0.
28198         (rpl_nanosleep) [!defined SA_NOCLDSTOP]:
28199         Use siginterrupt to specify that system calls should be interrupted.
28200         (rpl_nanosleep): Move initialization of suspended closer to call of
28201         my_usleep.
28202         * lib/readutmp.h (read_utmp): New arg OPTIONS.  All uses changed.
28203         * lib/readutmp.c: Likewise.  Include signal.h, stdbool.h.
28204         (desirable_utmp_entry): New function.
28205         (read_utmp) [defined UTMP_NAME_FUNCTION]: Redo memory allocation
28206         using x2nrealloc, to simplify logic.
28207         (read_utmp) [!defined UTMP_NAME_FUNCTION]: Check for overflow in
28208         size calculation.  Do not assume utmp file is a regular file.
28209         * lib/readutmp.h (UT_PID): Moved here from ../src/who.c.
28210         (READ_UTMP_CHECK_PIDS): New constant.
28211         * lib/save-cwd.c: Include unistd-safer.h.
28212         (save_cwd): Use fd_safer.
28213         * lib/tempname.c (S_ISDIR, S_IRUSR, S_IRUSR, S_IWUSR, S_IXUSR): Remove.
28214         [!_LIBC] Include "stat-macros.h" instead.
28215         * lib/unistd-safer.h (fd_safer): New decl.
28216
28217 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
28218
28219         * modules/getloadavg (Depends-on): Add unistd-safer.
28220         * modules/getusershell (Depends-on): Add stdio-safer.
28221         * modules/lstat (Depends-on): Remove xalloc.
28222         * modules/mkstemp (Depends-on): Add stat-macros.
28223         * modules/modechange (Depends-on): Remove xstrtol.
28224         Add stat-macros, xalloc.
28225         * modules/save-cwd (Depends-on): Add unistd-safer.
28226         * modules/stdio-safer (Makefile.am): Remove lib_SOURCES.
28227         * modules/unistd-safer (Files): Add lib/fd-safer.c
28228         (Makefile.am): Remove lib_SOURCES.
28229
28230         * MODULES.html.sh (Enhancements for POSIX:2001 functions):
28231         Remove fcntl-safer; unistd-safer supersedes it.
28232
28233 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
28234
28235         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Don't require
28236         AC_HEADER_STAT.
28237         * m4/lchown.m4 (gl_FUNC_CHOWN): Likewise.
28238         (gl_PREREQ_CHOWN): Remove.
28239         * m4/lstat.m4 (gl_FUNC_LSTAT): Require AC_FUNC_LSTAT instead of calling
28240         it.  Don't require AC_HEADER_STAT.
28241         (gl_PREREQ_LSTAT): Remove.
28242         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Check stdint.h only once.
28243         Don't require AC_HEADER_STAT.
28244         * m4/rmdir.m4 (gl_FUNC_RMDIR): Don't require AC_HEADER_STAT.
28245         (gl_PREREQ_RMDIR): Remove.
28246         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Don't
28247         mention stat-macros.h or AC_HEADER_STAT, since we'll make
28248         the stat-macros module a prerequisite.
28249         * m4/file-type.m4 (gl_FILE_TYPE): Likewise.
28250         * m4/filemode.m4 (gl_FILEMODE): Likewise.
28251         * m4/makepath.m4 (gl_MAKEPATH): Likewise.
28252         * m4/modechange.m4 (gl_MODECHANGE): Likewise.
28253         * m4/clock_time.m4 (gl_CLOCK_TIME): Use gl_ rather than fetish_ for
28254         variable names.
28255         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Renamed from
28256         fetish_FUNC_RMDIR_NOTEMPTY.  All uses changed.  Use gl_ for
28257         variable prefixes.
28258         * m4/fcntl-safer.m4: Remove.
28259         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Use AC_LIBSOURCES and AC_LIBOBJ.
28260         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise.
28261         Invoke gl_PREREQ_FD_SAFER.
28262         (gl_PREREQ_FD_SAFER): New macro.
28263         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Check for siginterrupt.
28264         * m4/readutmp.m4 (gl_READUTMP): Require AC_C_INLINE.
28265         Use AC_CHECK_HEADERS_ONCE and AC_CHECK_FUNCS_ONCE when possible.
28266         Remove duplicate call to AC_LIBOBJ(readutmp).
28267         (gl_PREREQ_READUTMP): Remove.  All uses inlined.
28268
28269         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Check for message, not for
28270         MAP_ANON.  Problem reported by Moriyoshi Koizumi to bug-cvs.
28271
28272 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
28273
28274         * MODULES.html.sh (Misc): Add byteswap.
28275
28276 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
28277
28278         * modules/getcwd (Depends-on): Add extensions.
28279         * modules/openat (Depends-on): Likewise.
28280
28281 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
28282
28283         * modules/byteswap: New file.
28284
28285 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
28286
28287         * m4/byteswap.m4: New file.
28288
28289 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
28290
28291         * lib/byteswap_.h: New file.
28292
28293 2005-04-25  Karl Berry  <karl@gnu.org>
28294
28295         * m4/gettext.m4: Update from GNU gettext 0.14.4.
28296
28297 2005-04-25  Albert Chin  <china@thewrittenword.com>
28298
28299         * lib/regex.c: Include <stdio.h>, as a workaround to a Compaq Desktop
28300         Toolkit C bug.
28301
28302 2005-04-21  Oskar Liljeblad  <oskar@osk.mine.nu>
28303
28304         * gnulib-tool (Options): Add -s for --symlink/--symbolic.
28305         (func_ln_if_changed) Remove forcibly for no error message
28306         in case file does not exist.
28307
28308 2005-04-19  Simon Josefsson  <jas@extundo.com>
28309
28310         * gnulib-tool (Options): Make --symlink mean --symbolic.
28311
28312 2005-04-18  Oskar Liljeblad  <oskar@osk.mine.nu>
28313
28314         * doc/gnulib.texi (Initial import): Fix.  Mention --aux-dir.
28315
28316 2005-04-16  Simon Josefsson  <jas@extundo.com>
28317
28318         * modules/getpass-gnu (Makefile.am): Don't mention getpass.h.
28319
28320 2005-04-15  Simon Josefsson  <jas@extundo.com>
28321
28322         * m4/getpass.m4 (gl_FUNC_GETPASS): Use AC_LIBSOURCES.
28323
28324 2005-04-15  Simon Josefsson  <jas@extundo.com>
28325
28326         * gnulib-tool: Rename --symlink to --symbolic.
28327
28328 2005-04-15  Oskar Liljeblad  <oskar@osk.mine.nu>
28329
28330         * gnulib-tool: Add -s, --symlink option to gnulib-tool to make
28331         symbolic links to files instead of copying/moving.  Add --aux-dir,
28332         specifying directory relative --dir where auxiliary build tools
28333         are placed.
28334
28335 2005-04-14  Bruno Haible  <bruno@clisp.org>
28336
28337         * modules/allocsa (License): Change to LGPL.
28338         Requested by Yoann Vandoorselaere <yoann@prelude-ids.org>.
28339
28340 2005-04-13  Paul Eggert  <eggert@cs.ucla.edu>
28341
28342         * lib/getdate.y (zone): Allow relunit_snumber after tZONE, so
28343         that "UTC +1 second" continues to work.  Problem reported
28344         by Dmitry V. Levin.
28345         (relunit_snumber): New rule.
28346         (relunit): Use it.
28347
28348 2005-04-12  Paul Eggert  <eggert@cs.ucla.edu>
28349
28350         * lib/getdate.y (universal_time_zone_table): New constant.
28351         (time_zone_table): Remove GMT, UT, UTC entries; they're now in
28352         universal_time_zone_table.
28353         (lookup_zone): Prefer universal_time_zone_table to
28354         local_time_zone_table, so that "GMT" time stamps are allowed in
28355         London during the summer.  Problem reported by Ian Abbott.
28356
28357 2005-04-12  Jim Meyering  <jim@meyering.net>
28358
28359         * lib/human.c (humblock): Set *options even when returning due to
28360         xstrtoumax conversion failure.  Thanks to a used-uninitialized
28361         warning from gcc-4.
28362
28363 2005-04-09  Jim Meyering  <jim@meyering.net>
28364
28365         * lib/posixtm.c (posixtime) [lint]: Avoid spurious warning from gcc-4's
28366         -Wuninitialized: initialize tm0.tm_year.
28367
28368 2005-04-04  Paul Eggert  <eggert@cs.ucla.edu>
28369
28370         * lib/getdate.y (parser_control): rels_seen is now a boolean, not a
28371         count, since there's no maximum.  All uses changed.
28372         Add member dsts_seen.
28373         (local_zone): Accumulate dsts_seen rather than relying on tm_isdst
28374         not being INT_MAX.
28375         (get_date): Initialize dsts_seen, and check that it doesn't go over 1.
28376         Use pc_rels_seen to decide whther a date is absolute.
28377
28378         * lib/getdate.y (number): Don't overwrite year.
28379         (get_date): Initialize pc.year.digits to 0, not 4, to enable above
28380         check.
28381
28382 2005-04-02  Simon Josefsson  <jas@extundo.com>
28383
28384         * lib/getaddrinfo.h: Fix OpenBSD compilation failure, inspired by tiny
28385         patch from Yoann Vandoorselaere <yoann@prelude-ids.org>.
28386
28387 2005-03-28  Eric Blake  <ebb9@byu.net>  (tiny change)
28388
28389         * m4/getcwd-path-max.m4: Return success on systems such as Cygwin
28390         where no absolute path name can be longer than PATH_MAX.
28391
28392 2005-03-27  Jim Meyering  <jim@meyering.net>
28393
28394         * lib/argmatch.c: Clarify comment: null-terminated -> NULL-terminated.
28395
28396 2005-03-26  Paul Eggert  <eggert@cs.ucla.edu>
28397
28398         * lib/intprops.h (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND):
28399         "one's complement" -> "ones' complement" in comment, as per Knuth.
28400         "value of type" -> "type or expression" in comment.
28401         * lib/mktime.c, strftime.c: Propagate intprops.h comment nits.
28402
28403 2005-03-26  Jim Meyering  <jim@meyering.net>
28404
28405         Comment nits.
28406         * lib/intprops.h: Add the apostrophe in `(one|two)'s complement'.
28407         Correct typos: s/or/of/.
28408
28409 2005-03-26  Jim Meyering  <jim@meyering.net>
28410
28411         * modules/check-include-files: Move to ../ and rename to...
28412         * check-module: ...this.
28413
28414 2005-03-25  Jim Meyering  <jim@meyering.net>
28415
28416         * modules/xvasprintf (Files): Add xalloc.h.
28417
28418 2005-03-23  Paul Eggert  <eggert@cs.ucla.edu>
28419
28420         * modules/gettext (Files): config/config.rpath ->
28421         build-aux/config.rpath
28422         * modules/iconv (Files): Likewise.
28423         Problem reported by Oskar Liljeblad.
28424
28425 2005-03-23  Jim Meyering  <jim@meyering.net>
28426
28427         * modules/check-include-files: New script to check for
28428         missing dependencies, multiple includes, etc.
28429
28430         * modules/c-strtold (Depends-on): Add xalloc.
28431         * modules/c-strtod (Depends-on): Add xalloc.
28432         * modules/hash (Depends-on): Add xalloc.
28433         (Files): Remove lib/xalloc.h.
28434
28435         * modules/gethrxtime (Files): Add lib/gethrxtime.h.
28436         * modules/userspec (Files): Add lib/inttostr.h.
28437
28438 2005-03-23  Jim Meyering  <jim@meyering.net>
28439
28440         * lib/canonicalize.c: Remove duplicate `#include "stat-macros.h"'.
28441
28442 2005-03-22  Jim Meyering  <jim@meyering.net>
28443
28444         * modules/stat-macros: New module.
28445         * modules/canonicalize, modules/euidaccess, modules/file-type,
28446         * modules/filemode, modules/lchown, modules/makepath,
28447         * modules/rmdir, modules/stat: Depend on new stat-macros module
28448         rather than listing lib/stat-macros.h manually.
28449         Don't add stat-macros.h to lib_SOURCES or list it in Files: section.
28450
28451 2005-03-22  Jim Meyering  <jim@meyering.net>
28452
28453         * m4/stat-macros.m4 (gl_STAT_MACROS): New file/macro.
28454
28455 2005-03-22  Bruno Haible  <bruno@clisp.org>
28456
28457         * config/srclist.txt: Replace target directory 'config' with
28458         'build-aux'.
28459         * config/config.guess, config.sub, config.rpath, depcomp, install-sh:
28460         * config/mdate-sh, missing, mkinstalldirs, texinfo.tex: Move to
28461         ../build-aux/.
28462
28463 2005-03-21  Paul Eggert  <eggert@cs.ucla.edu>
28464
28465         * modules/chdir-long (Depends-on): Add mempcpy.
28466
28467         * modules/acl, modules/backupfile, modules/c-strtod,
28468         modules/c-strtold, modules/canon-host, modules/canonicalize,
28469         modules/cloexec, modules/closeout, modules/dirfd, modules/dirname,
28470         modules/exclude, modules/exitfail, modules/file-type,
28471         modules/filemode, modules/fpending, modules/fsusage, modules/getcwd,
28472         modules/getdate, modules/getline, modules/getpagesize,
28473         modules/getpass, modules/getugroups, modules/group-member,
28474         modules/hard-locale, modules/hash, modules/human, modules/idcache,
28475         modules/inttostr, modules/long-options, modules/makepath,
28476         modules/md5, modules/memcasecmp, modules/memcoll,
28477         modules/modechange, modules/mountlist, modules/path-concat,
28478         modules/pathmax, modules/physmem, modules/posixtm, modules/posixver,
28479         modules/quote, modules/quotearg, modules/readtokens, modules/readutmp,
28480         modules/safe-read, modules/safe-write, modules/same, modules/savedir,
28481         modules/settime, modules/sha1, modules/sig2str, modules/strdup,
28482         modules/strftime, modules/strndup, modules/strverscmp,
28483         modules/timespec, modules/unlocked-io, modules/userspec,
28484         modules/utimecmp, modules/utimens, modules/xalloc, modules/xstrtol,
28485         modules/yesno:
28486         Remove lib_SOURCES line from Makefile.am section, as this is now
28487         done automatically by the corresponding Autoconf macro.
28488
28489 2005-03-21  Jim Meyering  <jim@meyering.net>
28490
28491         Changes imported from coreutils.
28492
28493         * lib/cycle-check.c: Don't include xalloc.h.
28494
28495         * lib/path-concat.c: Don't include assert.h.
28496         (path_concat): Remove assertion that would have triggered
28497         for ABASE starting with more than one slash.
28498         Reported by Andreas Schwab.
28499
28500         * lib/path-concat.c (path_concat): Set *BASE_IN_RESULT
28501         properly when ABASE is an absolute file name.
28502         Correct the description of this function.
28503         Include <assert.h>.
28504         Add an assertion and a test driver.
28505         This fixes a bug introduced on 2004-07-02.
28506         Andreas Schwab reported the resulting failure of cp --parents:
28507         http://lists.gnu.org/archive/html/bug-coreutils/2005-01/msg00130.html
28508
28509 2005-03-21  Jim Meyering  <jim@meyering.net>
28510
28511         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Invoke gl_FUNC_MEMRCHR.
28512         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Check for memrchr decl.
28513
28514 2005-03-21  Jim Meyering  <jim@meyering.net>
28515         and  Paul Eggert  <eggert@cs.ucla.edu>
28516
28517         * m4/acl.m4, m4/backupfile.m4, m4/c-strtod.m4, m4/canon-host.m4,
28518         m4/canonicalize.m4, m4/cloexec.m4, m4/closeout.m4, m4/dirfd.m4,
28519         m4/dirname.m4, m4/exclude.m4, m4/exitfail.m4, m4/file-type.m4,
28520         m4/filemode.m4, m4/fpending.m4, m4/fsusage.m4, m4/getcwd.m4,
28521         m4/getdate.m4, m4/getline.m4, m4/getpagesize.m4, m4/getpass.m4,
28522         m4/getugroups.m4, m4/group-member.m4, m4/hard-locale.m4, m4/hash.m4,
28523         m4/human.m4, m4/idcache.m4, m4/inttostr.m4, m4/long-options.m4,
28524         m4/makepath.m4, m4/md5.m4, m4/memcasecmp.m4, m4/memcoll.m4,
28525         m4/modechange.m4, m4/mountlist.m4, m4/nanosleep.m4, m4/path-concat.m4,
28526         m4/pathmax.m4, m4/physmem.m4, m4/posixtm.m4, m4/posixver.m4,
28527         m4/quote.m4, m4/quotearg.m4, m4/readtokens.m4, m4/readutmp.m4,
28528         m4/safe-read.m4, m4/safe-write.m4, m4/same.m4, m4/savedir.m4,
28529         m4/settime.m4, m4/sha1.m4, m4/sig2str.m4, m4/strdup.m4, m4/strftime.m4,
28530         m4/strndup.m4, m4/strverscmp.m4, m4/timespec.m4, m4/unlocked-io.m4,
28531         m4/userspec.m4, m4/utimecmp.m4, m4/utimens.m4, m4/xalloc.m4,
28532         m4/xnanosleep.m4, m4/xstrtol.m4, m4/yesno.m4:
28533         Use AC_LIBSOURCES and AC_LIBOBJ to indicate source and object files
28534         for these modules.
28535
28536 2005-03-18  Paul Eggert  <eggert@cs.ucla.edu>
28537
28538         * lib/strftime.c (my_strftime): If the underlying strftime returns 0
28539         (which shouldn't happen), generate nothing instead of returning 0
28540         immediately, so that nstrftime (NULL, ...) doesn't return 0.
28541
28542 2005-03-16  Bruno Haible  <bruno@clisp.org>
28543
28544         * modules/stdint (Makefile.am): Use HAVE_LONG_LONG_64BIT instead of
28545         HAVE_LONGLONG_64BIT.
28546
28547 2005-03-16  Bruno Haible  <bruno@clisp.org>
28548
28549         * m4/stdint.m4 (gl_STDINT_H): Define HAVE_LONG_LONG_64BIT instead of
28550         HAVE_LONGLONG_64BIT.
28551
28552 2005-03-16  Bruno Haible  <bruno@clisp.org>
28553
28554         * lib/stdint_.h: Use HAVE_LONG_LONG_64BIT instead of
28555         HAVE_LONGLONG_64BIT.
28556
28557 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
28558
28559         * lib/strftime.c (my_strftime): Prepend space to format so that we can
28560         reliably distinguish strftime failure from empty output on POSIX
28561         hosts.
28562
28563 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
28564
28565         * lib/iconvme.c (SIZE_MAX): New macro, if not already defined.
28566         (iconv_string): Don't guess a size-zero buffer, as that might cause
28567         buffer overrun.  Instead, avoid multiplying by MB_LEN_MAX if the
28568         result would be 'too large', where 'too large' is (heuristically)
28569         the square root of SIZE_MAX, divided by MB_LEN_MAX to allay
28570         overflow concerns.  This will prevent some unwanted malloc failures
28571         when the inputs are very large.
28572
28573 2005-03-15  Karl Berry  <karl@gnu.org>
28574
28575         * config/srclist.txt (config.rpath): from gettext.
28576         * config/config.rpath: update.
28577
28578 2005-03-15  Bruno Haible  <bruno@clisp.org>
28579
28580         * lib/regex.c (byte_re_match_2_internal): Rename local variable 'not'
28581         to 'negate'.
28582
28583         * lib/regex.c (byte_re_match_2_internal): Reduce scope of same_str_p
28584         variable.
28585
28586         * lib/regex.c (EXTEND_BUFFER, regcomp): Cast the realloc/malloc
28587         results.
28588
28589 2005-03-14  Simon Josefsson  <jas@extundo.com>
28590
28591         * lib/timegm.h: Use proper prototype CPP guards, reported by Dave Love
28592         <fx@gnu.org>.
28593
28594 2005-03-14  Paul Eggert  <eggert@cs.ucla.edu>
28595
28596         * lib/mktime.c (TYPE_TWOS_COMPLEMENT, TYPE_ONES_COMPLEMENT,
28597         TYPE_SIGNED_MAGNITUDE, TYPE_MINIMUM, TYPE_MAXIMUM): Sync from
28598         intprops.h.
28599         * lib/strtol.c: Likewise.
28600
28601 2005-03-14  Jim Meyering  <jim@meyering.net>
28602
28603         * lib/strftime.c (my_strftime) [HAVE_STRFTIME && ! (_NL_CURRENT
28604         && HAVE_STRUCT_ERA_ENTRY)]: Initialize the first byte of ubuf[]
28605         to be nonzero so that we (and caller) can detect the difference
28606         between a valid zero-length expansion and an error return, even
28607         when the underlying strftime fails before writing anything into
28608         that location.
28609
28610 2005-03-14  Bruno Haible  <bruno@clisp.org>
28611
28612         * m4/lib-link.m4, gettext.m4, nls.m4, po.m4:
28613         Update from GNU gettext 0.14.3.
28614
28615 2005-03-10  Jim Meyering  <jim@meyering.net>
28616
28617         * m4/save-cwd.m4 (gl_SAVE_CWD): Check for fchdir.
28618
28619 2005-03-10  Jim Meyering  <jim@meyering.net>
28620
28621         * lib/save-cwd.c [!HAVE_FCHDIR]: Define open, fchdir, and chdir_long
28622         so that this module works on systems without fchdir.
28623
28624 2005-03-09  Paul Eggert  <eggert@cs.ucla.edu>
28625
28626         Factor int-properties macros into a single file, except for
28627         glibc-related files.
28628         * lib/intprops.h: New file.
28629         * lib/getloadavg.c: Include it instead of limits.h.
28630         (INT_STRLEN_BOUND): Remove.
28631         * lib/human.c: Include intprops.h.
28632         (group_number): Use INT_STRLEN_BOUND instead of rolling it ourself.
28633         * lib/human.h (LONGEST_HUMAN_READABLE): Use 146/485 rather than
28634         302/1000.
28635         * lib/inttostr.h: Include intprops.h instead of limits.h.
28636         (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND): Remove.
28637         * lib/mktime.c (TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT): New macros,
28638         for consistency with intprops.h.
28639         (time_t_is_integer, twos_complement_arithmetic): Use them.
28640         * lib/sig2str.h: Include <signal.h>, intprops.h.
28641         (INT_STRLEN_BOUND): Remove.
28642         * lib/strftime.c (TYPE_SIGNED): Remove.
28643         (INT_STRLEN_BOUND): Switch to same implementation as intprops.h.
28644         * lib/strtol.c: Adjust comments to match intprops.h.
28645         * lib/userspec.c: Include intprops.h.
28646         (TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Remove.
28647         * lib/utimecmp.c, xnanosleep.c, xstrtol.c: Likewise.
28648         * lib/utimecmp.c (utimecmp): Use TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT
28649         instead of rolling our own expressions.
28650         * lib/xstrtol.c: Include xstrtol.h first, to test interface.
28651
28652         * lib/strftime.c: Include <stdbool.h>.  Use bool where appropriate,
28653         instead of int.
28654         (my_strftime): Do not mishandle years close to INT_MAX, by doing
28655         the right thing even if adding 1900 would overflow.  Similarly
28656         for tm_mon + 1 and tm_yday + 1.
28657         Make %Y always equivalent to %C%y, and similarly for %G and %g.
28658         (DO_NUMBER, DO_NUMBER_SPACEPAD): Set digits to d, not a conditional.
28659         (DO_SIGNED_NUMBER): New macro.
28660         (my_strftime) [HAVE_TZNAME]: Don't dump core if tp->tm_dst > 1.
28661
28662 2005-03-07  Bruno Haible  <bruno@clisp.org>
28663
28664         * m4/mmap-anon.m4 (MAP_FILE, MAP_FAILED): Remove definitions.
28665
28666 2005-03-07  Bruno Haible  <bruno@clisp.org>
28667
28668         * lib/pagealign_alloc.c (MAP_FILE, MAP_FAILED): Define fallbacks.
28669
28670 2005-03-04  Derek R. Price  <derek@ximbiot.com>
28671
28672         * gnulib-tool (func_cp_if_changed, func_mv_if_changed): New functions.
28673         (func_import): Only replace files via --import when they have actually
28674         changed.
28675
28676 2005-03-03  Derek R. Price  <derek@ximbiot.com>
28677
28678         * m4/mmap-anon.m4: New file.
28679         * m4/pagealign_alloc.m4: New file.
28680
28681 2005-03-03  Derek R. Price  <derek@ximbiot.com>
28682             Bruno Haible  <bruno@clisp.org>
28683
28684         * modules/pagealign_alloc: New file.
28685         * MODULES.html.sh (Memory management functions): Add pagealign_alloc.
28686
28687 2005-03-03  Derek R. Price  <derek@ximbiot.com>
28688             Bruno Haible  <bruno@clisp.org>
28689
28690         * lib/pagealign_alloc.h: New file.
28691         * lib/pagealign_alloc.c: New file.
28692
28693 2005-03-03  Bruno Haible  <bruno@clisp.org>
28694
28695         * m4/inttypes.m4, isc-posix.m4, once-only.m4:
28696         Use an all-permissive copyright notice, recommended by RMS.
28697
28698 2005-03-02  Bruno Haible  <bruno@clisp.org>
28699
28700         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Undo the replacement here. Because
28701         of AIX, the replacement has to be done only after <string.h> is
28702         included, therefore not in config.h. stpncpy.h does the replacement,
28703         and stpncpy.c uses it.
28704
28705 2005-03-02  Bruno Haible  <bruno@clisp.org>
28706
28707         * lib/stpncpy.h (stpncpy): Define as a macro without arguments, so that
28708         stpncpy.c uses it.
28709
28710 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
28711
28712         Remove workaround for bug in Linux kernel 2.6.8 or thereabouts.
28713         The workaround isn't strictly needed for POSIX conformance, and
28714         it's too much of a pain to configure and maintain.  We'll ask
28715         people to fix their kernels instead.
28716         * lib/xnanosleep.c: Don't include gethrxtime.h or xtime.h.
28717         (NANOSLEEP_BUG_WORKAROUND): Remove.
28718         (xnanosleep): Remove the workaround.
28719
28720 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
28721
28722         * modules/gettime (Makefile.am): Remove lib_SOURCES line.
28723         Reported by Derek Price.
28724         (Include): Add "timespec.h".
28725
28726         * modules/xnanosleep (Depends-on): Remove gethrxtime.
28727
28728 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
28729
28730         * m4/xnanosleep.m4 (gl_XNANOSLEEP): Remove configuration attempting
28731         to detect nanosleep bug.
28732
28733 2005-03-01  Bruno Haible  <bruno@clisp.org>
28734
28735         * lib/vasnprintf.c (EOVERFLOW): Define to a fallback if needed.
28736
28737 2005-02-26  Paul Eggert  <eggert@cs.ucla.edu>
28738
28739         * modules/gethrxtime: New file.
28740         * modules/xnanosleep (Files): Add m4/xnanosleep.m4.
28741         (Depends-on): Add gethrxtime.
28742         (configure.ac): Add gl_XNANOSLEEP.
28743         (Makefile.am): Remove lib_SOURCES line.
28744
28745 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
28746
28747         * m4/gethrxtime.m4, m4/xnanosleep.m4: New files.
28748         * m4/gettime.m4 (gl_GETTIME): Check for nanotime.
28749
28750 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
28751
28752         * lib/gethrxtime.h, lib/gethrxtime.c, lib/xtime.h: New files.
28753         * lib/timespec.h (gettime): Return void, since it always
28754         succeeds now.  All uses changed.
28755         * lib/gettime.c (gettime) Likewise.
28756         [HAVE_NANOTIME]: Prefer nanotime.
28757         Assume gettimeofday succeeds, as POSIX requires.
28758         Assime time () succeeds, since other code already does.
28759         * lib/xnanosleep.c: Include xtime.h and gethrxtime.h, not xalloc.h.
28760         (timespec_subtract): Remove.
28761         (NANOSLEEP_BUG_WORKAROUND): New constant.
28762         (xnanosleep): Use gethrxtime rather than gettime; this simplifies
28763         things considerably.  Use it only on GNU/Linux hosts, since the
28764         workaround shouldn't be needed elsewhere.
28765
28766 2005-02-24  Bruno Haible  <bruno@clisp.org>
28767
28768         * modules/gettext (Files): Add m4/glibc2.m4.
28769
28770 2005-02-24  Bruno Haible  <bruno@clisp.org>
28771
28772         * m4/gettext.m4, intdiv0.m4, intmax.m4, inttypes-pri.m4, lcmessage.m4:
28773         * m4/lib-link.m4, lib-prefix.m4, nls.m4, po.m4, printf-posix.m4:
28774         * m4/progtest.m4:
28775         Update from GNU gettext 0.14.2.
28776         * m4/glibc2.m4: New file, from GNU gettext 0.14.2.
28777
28778 2005-02-24  Bruno Haible  <bruno@clisp.org>
28779
28780         * lib/localcharset.c: Update from GNU gettext 0.14.2.
28781         * lib/config.charset: Update from GNU gettext 0.14.2.
28782
28783 2005-02-24  Bruno Haible  <bruno@clisp.org>
28784
28785         * lib/gettext.h: Update from GNU gettext 0.14.2.
28786
28787 2005-02-23  Simon Josefsson  <jas@extundo.com>
28788
28789         * m4/iconvme.m4: New file.
28790
28791 2005-02-23  Jim Meyering  <jim@meyering.net>
28792
28793         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Revert yesteday's
28794         change.
28795         Thanks to Bruno Haible for catching it.
28796
28797 2005-02-22  Simon Josefsson  <jas@extundo.com>
28798
28799         * modules/iconvme: New file.
28800
28801         * MODULES.html.sh: Add iconvme.
28802
28803 2005-02-22  Simon Josefsson  <jas@extundo.com>
28804
28805         * lib/iconvme.h, lib/iconvme.c: New files, from libc.
28806
28807 2005-02-22  Simon Josefsson  <jas@extundo.com>
28808
28809         * config/srclist.txt: Sync iconvme.h, iconvme.c from libc.
28810
28811 2005-02-22  Jim Meyering  <jim@meyering.net>
28812
28813         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Fix typo:
28814         s/ifndef/ifdef/.
28815
28816 2005-02-20  Neil Conway  <neilc@samurai.com>
28817
28818         * lib/xgethostname.c (xgethostname): Check for ENOMEM, which is
28819         returned by OSX/Darwin if the specified buffer is not large
28820         enough for the hostname.
28821
28822 2005-02-03  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
28823
28824         * lib/argp-help.c (__argp_help): Create a fake struct argp_state and
28825         pass it to _help, otherwise the latter coredumps trying to
28826         dereference state.root_argp.
28827
28828 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
28829
28830         * modules/chdir-long (Depends-on): Add memrchr.
28831         * modules/memrchr (Files): Add lib/memrchr.h.
28832         (Include): "memrchr.h".
28833
28834 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
28835
28836         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Add AC_LIBSOURCES, for memrchr.h.
28837
28838 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
28839
28840         * lib/memrchr.h: New file.
28841         * lib/chdir-long.c: Include it.
28842         * lib/memrchr.c [!defined _LIBC]: Include it rather than <string.h>
28843         Don't bother including stddef.h.
28844
28845 2005-02-01  Paul Eggert  <eggert@cs.ucla.edu>
28846
28847         * lib/mountlist.h (MOUNTLIST_H_): New macro, to protect against double
28848         inclusion.
28849         Include <sys/types.h>, for dev_t.
28850         (ME_DUMMY, ME_REMOTE): Move from here....
28851         * lib/mountlist.c (ME_DUMMY, ME_REMOTE): To here.
28852         (ME_DUMMY): Count "subfs" as a dummy.  Problem reported by
28853         Dmitry V. Levin.
28854         Include mountlist.h first, to test the interface.
28855
28856 2005-01-29  Bruno Haible  <bruno@clisp.org>
28857
28858         * lib/progname.c (program_name): Initialize.
28859         Needed when linking statically on MacOS X.
28860
28861 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
28862
28863         Sync from coreutils.
28864         * modules/getloadavg (Files): Remove m4/getloadavg.m4.
28865         (Depends-on): Add c-strtod.
28866         (configure.ac): Replace gl_FUNC_GETLOADAVG with AC_FUNC_GETLOADAVG.
28867
28868 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
28869
28870         Sync from coreutils.
28871         * m4/getloadavg.m4, glibc.m4, search-libs.m4: Remove.
28872
28873         Remove files that are specific to coreutils.
28874         * m4/check-decl.m4, jm-macros.m4, lib-check.m4, prereq.m4: Remove.
28875
28876 2005-01-28  Bruno Haible  <bruno@clisp.org>
28877
28878         * modules/javacomp: New file.
28879         * MODULES.html.sh (Java): Add javacomp.
28880
28881 2005-01-28  Bruno Haible  <bruno@clisp.org>
28882
28883         * m4/javacomp.m4: New file, from GNU gettext.
28884
28885 2005-01-28  Bruno Haible  <bruno@clisp.org>
28886
28887         * lib/javacomp.sh.in: New file, from GNU gettext.
28888         * lib/javacomp.h: New file, from GNU gettext.
28889         * lib/javacomp.c: New file, from GNU gettext.
28890
28891 2005-01-26  Simon Josefsson  <jas@extundo.com>
28892
28893         * lib/gai_strerror.c: Use GPL in header.
28894
28895 2005-01-26  Bruno Haible  <bruno@clisp.org>
28896
28897         * modules/javaexec: New file.
28898         * MODULES.html.sh (Java): Add javaexec.
28899
28900 2005-01-26  Bruno Haible  <bruno@clisp.org>
28901
28902         * m4/javaexec.m4: New file, from GNU gettext.
28903
28904 2005-01-26  Bruno Haible  <bruno@clisp.org>
28905
28906         * lib/javaexec.sh.in: New file, from GNU gettext.
28907         * lib/javaexec.h: New file, from GNU gettext.
28908         * lib/javaexec.c: New file, from GNU gettext.
28909
28910 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
28911
28912         * modules/lchown (Depends-on): Remove lchown.h
28913
28914 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
28915
28916         * m4/sysexits.m4 (gl_SYSEXITS): Reverted logic. SYSEXITS_H
28917         must be defined if the header file was not found, in order
28918         to provide a replacement. Reported by Todd Vierling <tv@duh.org>
28919
28920 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
28921
28922         * lib/argp-help.c (hol_entry_help): Avoid using non-constant
28923         initializers for struct pentry_state.
28924         (__argp_error): Check return value of __asprintf
28925         (__argp_failure): Translate error message
28926
28927         * lib/argp-parse.c: Removed braces around the expansion of N_()
28928
28929 2005-01-23  Paul Eggert  <eggert@cs.ucla.edu>
28930
28931         * m4/acl.m4, afs.m4, alloca.m4, argp.m4, assert.m4, atexit.m4,
28932         backupfile.m4, base64.m4, bison.m4, c-bs-a.m4, c-stack.m4,
28933         c-strtod.m4, calloc.m4, canon-host.m4, canonicalize.m4,
28934         clock_time.m4, cloexec.m4, closeout.m4, d-ino.m4, d-type.m4,
28935         dirfd.m4, dirname.m4, dos.m4, dup2.m4, error.m4, euidaccess.m4,
28936         exclude.m4, exitfail.m4, extensions.m4, fcntl-safer.m4,
28937         file-type.m4, fileblocks.m4, filemode.m4, fnmatch.m4, fpending.m4,
28938         free.m4, fstypename.m4, fsusage.m4, ftruncate.m4, getaddrinfo.m4,
28939         getcwd-path-max.m4, getcwd.m4, getdate.m4, getdomainname.m4,
28940         getgroups.m4, gethostname.m4, getline.m4, getndelim2.m4,
28941         getnline.m4, getopt.m4, getpagesize.m4, getpass.m4, getsubopt.m4,
28942         gettime.m4, gettimeofday.m4, getugroups.m4, getusershell.m4,
28943         group-member.m4, hard-locale.m4, hash.m4, host-os.m4, human.m4,
28944         idcache.m4, inttostr.m4, isdir.m4, jm-winsz1.m4, jm-winsz2.m4,
28945         link-follow.m4, long-options.m4, ls-mntd-fs.m4, lstat.m4,
28946         makepath.m4, mathl.m4, md5.m4, memcasecmp.m4, memchr.m4,
28947         memcmp.m4, memcoll.m4, memcpy.m4, memmem.m4, memmove.m4,
28948         memrchr.m4, memset.m4, mkdir-slash.m4, mkstemp.m4, mktime.m4,
28949         modechange.m4, mountlist.m4, nanosleep.m4, obstack.m4,
28950         path-concat.m4, pathmax.m4, perl.m4, physmem.m4, poll.m4,
28951         posixtm.m4, posixver.m4, putenv.m4, quote.m4, quotearg.m4,
28952         readdir.m4, readtokens.m4, readutmp.m4, regex.m4, rename.m4,
28953         restrict.m4, rmdir-errno.m4, rmdir.m4, rpmatch.m4, same.m4,
28954         savedir.m4, settime.m4, sha1.m4, sig2str.m4, snprintf.m4,
28955         sockpfaf.m4, st_dm_mode.m4, st_mtim.m4, stat.m4, stdint.m4,
28956         stdio-safer.m4, strchrnul.m4, strdup.m4, strerror.m4,
28957         strerror_r.m4, strftime.m4, strndup.m4, strnlen.m4, strsep.m4,
28958         strtod.m4, strtoimax.m4, strtok_r.m4, strtol.m4, strtoll.m4,
28959         strtoul.m4, strtoull.m4, strtoumax.m4, strverscmp.m4, sysexits.m4,
28960         time_r.m4, timegm.m4, timespec.m4, tm_gmtoff.m4, tzset.m4,
28961         uint32_t.m4, uintptr_t.m4, unistd-safer.m4, unlink-busy.m4,
28962         unlocked-io.m4, uptime.m4, userspec.m4, utimbuf.m4, utime.m4,
28963         utimecmp.m4, utimens.m4, utimes-null.m4, vsnprintf.m4, xalloc.m4,
28964         xgetcwd.m4, xreadlink.m4, xstrndup.m4, xstrtod.m4, xstrtoimax.m4,
28965         xstrtol.m4, xstrtoumax.m4, yesno.m4:
28966         Use an all-permissive copyright notice, recommended by RMS.
28967
28968 2005-01-21  Paul Eggert  <eggert@cs.ucla.edu>
28969
28970         * modules/chdir-long (Depends-on): Remove mempcpy.
28971
28972 2005-01-21  Jim Meyering  <jim@meyering.net>
28973
28974         * lib/openat.h (AT_SYMLINK_NOFOLLOW): Define to 4096, so it's the
28975         same value as for Solaris 9.
28976
28977         * lib/chdir-long.c (chdir_long): Rewrite to remove limitation on
28978         component length.  This included changing the parameter to be
28979         of type `char *' rather than `char const *'.
28980         * lib/chdir-long.h (chdir_long): Update prototype.
28981
28982         * lib/openat.c (fdopendir, fstatat): New functions.
28983         * lib/openat.h: Include headers required for use of DIR and struct
28984         stat.
28985         [AT_SYMLINK_NOFOLLOW]: Define.
28986         (fdopendir, fstatat): Add prototypes.
28987
28988 2005-01-21  Bruno Haible  <bruno@clisp.org>
28989
28990         * modules/classpath: New file.
28991         * MODULES.html.sh (Java): Add classpath.
28992
28993 2005-01-21  Bruno Haible  <bruno@clisp.org>
28994
28995         * lib/classpath.h: New file, from GNU gettext.
28996         * lib/classpath.c: New file, from GNU gettext.
28997
28998 2005-01-20  Simon Josefsson  <jas@extundo.com>
28999
29000         * modules/version-etc-fsf: New file.
29001
29002 2005-01-20  Simon Josefsson  <jas@extundo.com>
29003
29004         * lib/version-etc-fsf.c: New file, with version_etc_copyright.
29005         * lib/version-etc.c: Remove version_etc_copyright.
29006         * lib/version-etc.h (version_etc_copyright): Use [] instead of * in
29007         prototype, suggested by Paul Eggert <eggert@CS.UCLA.EDU>.
29008
29009 2005-01-20  Simon Josefsson  <jas@extundo.com>
29010
29011         * lib/base64.h (isbase64): Add.
29012
29013         * lib/base64.c (isb64): Rename to isbase64, use to_uchar instead of
29014         using a unsigned prototype, don't inline.
29015         (base64_decode): Use it.
29016
29017 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
29018
29019         * m4/save-cwd.m4 (gl_SAVE_CWD): Remove check for fcntl; we now assume
29020         it.
29021
29022 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
29023
29024         * lib/save-cwd.c (save_cwd): Remove code to support the case
29025         where fchdir is missing or flaky.
29026
29027 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
29028
29029         * MODULES.html.sh (Command-line arguments): Add version-etc-fsf.
29030
29031 2005-01-19  Paul Eggert  <eggert@cs.ucla.edu>
29032
29033         * modules/mempcpy (Makefile.am): Remove mention of mempcpy.h;
29034         AC_LIBSOURCES now does this.
29035         * MODULES.html.sh (Sizes of integer types <limits.h>): New element,
29036         with new ullong_max module.
29037
29038 2005-01-19  Bruno Haible  <bruno@clisp.org>
29039
29040         * modules/sh-quote: New file.
29041         * MODULES.html.sh (Executing programs): Add sh-quote.
29042
29043 2005-01-19  Bruno Haible  <bruno@clisp.org>
29044
29045         * lib/sh-quote.h: New file, from GNU gettext.
29046         * lib/sh-quote.c: New file, from GNU gettext.
29047
29048 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
29049
29050         Merge from coreutils.
29051         * m4/ullong_max.m4: New file.
29052         * m4/jm-macros.m4 (gl_MACROS): Require gl_ULLONG_MAX.
29053         (gl_MACROS): Assume localeconv exists.
29054
29055 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
29056
29057         Merge changes from coreutils, as described below in several
29058         changelogs dated today.
29059
29060         * lib/save-cwd.c: Include "save-cwd.h" before other include files.
29061         (O_DIRECTORY): Remove; not needed here, since "." must be
29062         a directory.  All uses removed.
29063         (save_cwd): Use __sgi || __sun, not sun || __sun.  __sun is
29064         universal on Suns, and we also need to test for IRIX.
29065         Revamp code to use 'if' rather than '#if'.
29066         Avoid unnecessary comparison of cwd->desc to 0.
29067
29068         * lib/utimens.c (futimens): Robustify the previous patch, by checking
29069         for known valid error numbers rather than observed invalid ones.
29070
29071 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
29072
29073         * modules/ullong_max: New file.
29074
29075         * modules/chdir-long, modules/openat: New files.
29076         * modules/save-cwd (Depends-on): Depend on chdir-long.
29077         (Makefile.am): Remove lib_SOURCES; now handled by AC_LIBSOURCES.
29078
29079 2005-01-18  Jim Meyering  <jim@meyering.net>
29080
29081         Merge from coreutils.
29082         * m4/chdir-long.m4, m4/openat.m4: New files.
29083         * m4/save-cwd.m4 (gl_SAVE_CWD): Add AC_LIBSOURCES for save-cwd.c,
29084         save-cwd.h.  Add AC_LIBOBJ for save-cwd.
29085         * m4/chown.m4 (gl_FUNC_CHOWN): When cross-compiling, assume that chown
29086         is sane and DOES follow symlinks.  Besides, testing 20 different
29087         systems found no broken chown implementations.
29088         Prompted by a change in rsync's copy of this macro.
29089         * m4/jm-macros.m4 (gl_MACROS): Require gl_FUNC_CHDIR_LONG.
29090
29091         * m4/lchown.m4 (gl_FUNC_LCHOWN): Use AC_LIBSOURCES.
29092
29093         * m4/utimes.m4: Work around tests/touch/empty-file failure on a system
29094         (sparc64, Linux-2.4.28, glibc-2.3.3) that didn't honor utimes'
29095         NULL-means-set-to-current-time semantics.
29096         Remove temporary file immediately, rather than waiting
29097         for configure's at-exit trap code to do it.
29098
29099 2005-01-18  Jim Meyering  <jim@meyering.net>
29100
29101         * lib/version-etc.c (version_etc_copyright): Update copyright date.
29102
29103         * lib/utimens.c (futimens): Account for the fact that futimes
29104         can also fail with errno == ENOSYS or errno == ENOENT.
29105         Patch from Dmitry V. Levin.
29106
29107         Change the name of the robust chdir function from chdir to chdir_long.
29108         * lib/save-cwd.c: Include chdir-long.h rather than chdir.h.
29109         (restore_cwd): Use chdir_long, not chdir.
29110         * lib/chdir-long.c: Renamed from chdir.c.
29111         * lib/chdir-long.h: Renamed from chdir.h.
29112         [!defined PATH_MAX]: Define chdir_long to chdir on systems like the
29113         Hurd.
29114
29115 2005-01-18  Bruno Haible  <bruno@clisp.org>
29116
29117         * m4/allocsa.m4, m4/codeset.m4, m4/copy-file.m4, m4/eaccess.m4:
29118         * m4/eealloc.m4, m4/eoverflow.m4, m4/execute.m4, m4/fatal-signal.m4:
29119         * m4/findprog.m4, m4/glibc21.m4, m4/iconv.m4, m4/intmax_t.m4:
29120         * m4/inttypes_h.m4, m4/lib-ld.m4, m4/lib-link.m4, m4/lib-prefix.m4:
29121         * m4/linebreak.m4, m4/localcharset.m4, m4/longdouble.m4:
29122         * m4/longlong.m4, m4/mbrtowc.m4, m4/mbstate_t.m4, m4/mbswidth.m4:
29123         * m4/mkdtemp.m4, m4/pipe.m4, m4/readlink.m4, m4/safe-read.m4:
29124         * m4/safe-write.m4, m4/setenv.m4, m4/sig_atomic_t.m4:
29125         * m4/signalblocking.m4, m4/signed.m4, m4/size_max.m4, m4/ssize_t.m4:
29126         * m4/stdbool.m4, m4/stdint_h.m4, m4/stpcpy.m4, m4/stpncpy.m4:
29127         * m4/strcase.m4, m4/strcspn.m4, m4/strpbrk.m4, m4/strstr.m4:
29128         * m4/ucs4-utf.m4, m4/uintmax_t.m4, m4/ulonglong.m4, m4/unicodeio.m4:
29129         * m4/utf-ucs4.m4, m4/vasnprintf.m4, m4/vasprintf.m4:
29130         * m4/wait-process.m4, m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4:
29131         Use an all-permissive copyright notice, recommended by RMS.
29132
29133 2005-01-18  Bob Proulx  <bob@proulx.com>
29134
29135         * lib/obstack.c [DEFAULT_ALIGNMENT]: Use an intermediate type to
29136         simplify offsetof() macro construct to avoid compile failure with
29137         native HP-UX 11.0 ANSI C compiler.
29138
29139 2005-01-17  Bruno Haible  <bruno@clisp.org>
29140
29141         * lib/stpncpy.c: Remove HAVE_STPNCPY and gnu_stpncpy renaming,
29142         redundant because stpncpy.m4 takes care of it.
29143
29144 2005-01-17  Bruno Haible  <bruno@clisp.org>
29145
29146         * lib/progreloc.c: Include xalloc.h instead of xmalloc.h.
29147
29148 2005-01-17  Bruno Haible  <bruno@clisp.org>
29149
29150         * lib/progreloc.c (xstrdup): Define as strdup if no xmalloc should be
29151         used.
29152
29153 2005-01-17  Bruno Haible  <bruno@clisp.org>
29154
29155         * lib/fwriteerror.h (fwriteerror): Change specification to include
29156         fclose.
29157         * lib/fwriteerror.c: Include <stdbool.h>.
29158         (fwriteerror): At the end, close the file stream. Record whether
29159         stdout was already closed.
29160
29161 2005-01-17  Bruno Haible  <bruno@clisp.org>
29162
29163         * lib/execute.c (environ): Declare if needed.
29164         * lib/pipe.c (environ): Likewise.
29165         Reported by Michael Schloh von Bennewitz <michael.schloh@cw.com>.
29166
29167 2005-01-11  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
29168
29169         * modules/argp: Depend on vsnprintf
29170
29171 2005-01-10  Jim Meyering  <jim@meyering.net>
29172
29173         * modules/closeout (Depends-on): Add atexit.
29174
29175 2005-01-06  Bruno Haible  <bruno@clisp.org>
29176
29177         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Rename stpncpy to gnu_stpncpy here.
29178
29179 2005-01-04  Paul Eggert  <eggert@cs.ucla.edu>
29180
29181         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Move these conditional
29182         definitions to be after all include files, to avoid collisions.
29183         Problem reported by Bob Proulx.
29184
29185 2005-01-04  Jim Meyering  <jim@meyering.net>
29186
29187         Changes imported from coreutils.
29188         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Rather than using "conftestXXXXXX"
29189         as the mkstemp template, use a temporary directory and an
29190         8.3-friendly template to avoid trouble on systems like DJGPP.
29191         Reported by Juan M. Guerrero via Stepan Kasal.
29192         * m4/(gl_FUNC_MKSTEMP): Include <unistd.h> for the declaration of
29193         close. Remove the temporary directory right away, rather than waiting
29194         for configure's at-exit trap code to do it.
29195         Suggestion from Stepan Kasal.
29196
29197 2005-01-01  Simon Josefsson  <jas@extundo.com>
29198
29199         * gnulib-tool: Print #include directives when --import'ing.
29200
29201 2004-12-28  Simon Josefsson  <jas@extundo.com>
29202
29203         * tests/test-base64.c: Include required header files.  Remove
29204         unused variables.
29205
29206 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
29207
29208         * modules/error (Depends-on): Remove gettext.
29209
29210 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
29211
29212         * lib/error.c [!_LIBC && !ENABLE_NLS]: Do not include "gettext.h";
29213         not needed.  This removes a dependency on the gettext module.
29214         [defined _LIBC]: Do not include <libintl.h>; not needed.
29215
29216 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
29217
29218         * m4/c-strtod.m4 (gl_C99_STRTOLD): New macro.
29219         (gl_C_STRTOD): Use it instead of AC_CHECK_DECLS_ONCE(strtold).
29220
29221 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
29222
29223         * lib/c-strtod.c (STRTOD): Depend on HAVE_C99_STRTOLD, not
29224         HAVE_DECL_STRTOLD.
29225
29226 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
29227
29228         * modules/getdate (Depends-on): Remove alloca-opt.
29229
29230 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
29231
29232         * m4/getdate.m4 (gl_GETDATE): Remove AC_FUNC_ALLOCA.
29233
29234 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
29235
29236         * lib/argp-parse.c: Include <stddef.h>.
29237         (alignof, alignto): New macros.
29238         (parser_init): Don't assume that void * is aligned sufficiently
29239         for struct option.
29240
29241         * lib/getdate.y (YYSTACK_USE_ALLOCA): Define to 0, since there's no
29242         need to extend the stack.
29243         (YYINITDEPTH): New macro, so that the initial stack isn't overly
29244         large.
29245
29246 2004-12-22  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
29247
29248         * lib/argp-parse.c (parser_init): Avoid arithmetics on void pointers.
29249
29250 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
29251
29252         * modules/regex (lib_SOURCES): Remove regex.c, undoing previous
29253         (2004-10-24) change.  Apparently this was a false alarm.
29254
29255         * modules/getdate: Depend on alloca-opt, not alloca.
29256
29257 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
29258
29259         * lib/alloca_.h: Conditionalize on _GNULIB_ALLOCA_H, not _ALLOCA_H.
29260         Remove now-obsolete comment about AIX.
29261         * lib/getdate.y: Include <alloca.h> only if HAVE_ALLOCA.
29262         (YYSTACK_USE_ALLOCA): Define to 0 if !HAVE_ALLOCA.
29263         (YYMAXDEPTH): New macro.
29264
29265 2004-12-18  Simon Josefsson  <jas@extundo.com>
29266
29267         * modules/alloca: Depend on alloca-opt, instead of duplicating it.
29268
29269 2004-12-18  Bruno Haible  <bruno@clisp.org>
29270
29271         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Also test for sigaction.
29272
29273 2004-12-18  Bruno Haible  <bruno@clisp.org>
29274
29275         * lib/fatal-signal.c (fatal_signals): Make non-const.
29276         (init_fatal_signals): New function.
29277         (uninstall_handlers, install_handlers): Ignore signals that were set to
29278         SIG_IGN.
29279         (at_fatal_signal): Call init_fatal_signals.
29280         (init_fatal_signal_set): Likewise. Ignore signals that were set to
29281         SIG_IGN.
29282         Reported by Paul Eggert.
29283
29284 2004-12-18  Bruno Haible  <bruno@clisp.org>
29285
29286         * doc/alloca.texi: New file.
29287         * doc/alloca-opt.texi: New file.
29288
29289 2004-12-17  Jim Meyering  <jim@meyering.net>
29290
29291         * config/install-sh: Use `(exit N); exit N', not `(exit N); exit'.
29292         Otherwise, install-sh could exit with improper exit status when
29293         exiting via a trapped interrupt.  Thanks to a report from Bob Proulx.
29294
29295 2004-12-16  Simon Josefsson  <jas@extundo.com>
29296
29297         * tests/test-base64.c: Add license.
29298
29299 2004-12-15  Stepan Kasal  <address@hidden>
29300
29301         * gnulib-tool (func_emit_lib_Makefile_am): Shorten a long sed command.
29302
29303 2004-12-12  Paul Eggert  <eggert@cs.ucla.edu>
29304
29305         * modules/getcwd (Files): Add m4/d-ino.m4.
29306         Suggested by Mark D. Baushke.
29307
29308 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
29309
29310         * lib/getdate.y (textint): New member "negative".
29311         (time_zone_hhmm): New function.
29312         Expect 14 shift-reduce conflicts, not 13.
29313         (o_colon_minutes): New rule.
29314         (time, zone): Use it to add support for +HH:MM, UTC+HH:MM.
29315         (yylex): Set the "negative" member of signed numbers.
29316
29317 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
29318
29319         * doc/getdate.texi (Time of day items, Time zone items):
29320         Describe new formats +00:00, UTC+00:00.
29321
29322 2004-12-07  Paul Eggert  <eggert@cs.ucla.edu>
29323
29324         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Fix typo in previous change:
29325         spurious "-l"s.  Problem reported by Stepan Kasal.
29326
29327 2004-12-06  Paul Eggert  <eggert@cs.ucla.edu>
29328
29329         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): New macro, to work around bug
29330         in Autoconf 2.59.  Problem reported by Mark D. Baushke.
29331
29332 2004-12-04  Simon Josefsson  <jas@extundo.com>
29333
29334         * modules/getaddrinfo (License): Add LGPL, reported by Yoann
29335         Vandoorselaere <yoann@prelude-ids.org>.
29336
29337 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
29338
29339         Changes imported from coreutils.
29340         * m4/hard-locale.m4 (gl_HARD_LOCALE): Assume locale.h and setlocale
29341         exist.
29342         * m4/human.m4 (gl_HUMAN): Assume locale.h and localeconv exist.
29343
29344 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
29345
29346         Changes imported from coreutils.
29347         * lib/hard-locale.c: Assume <locale.h> exists.
29348         Include "strdup.h".
29349         (GLIBC_VERSION): New macro.
29350         (hard_locale): Assume setlocale exists.
29351         Rewrite to avoid #ifdef.
29352         Use strdup rather than malloc + strcpy.
29353         * lib/human.c: Assume <locale.h> exists.
29354         (human_readable): Assume localeconv exists.
29355
29356 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
29357
29358         * modules/hard-locale (Depends-on): Add strdup.
29359
29360 2004-12-01  Jakub Jelinek  <jakub@redhat.com>
29361
29362         * lib/mktime.c (__mktime_internal): If SEC_REQUESTED != SEC,
29363         convert T2, not T.  (Imported from libc.)
29364
29365 2004-11-30  Simon Josefsson  <jas@extundo.com>
29366
29367         * modules/restrict (License): Change to LGPL.
29368
29369 2004-11-30  Simon Josefsson  <jas@extundo.com>
29370
29371         * m4/restrict.m4: Add copyright and copying conditions.
29372
29373 2004-11-30  Simon Josefsson  <jas@extundo.com>
29374
29375         * m4/base64.m4: New file.
29376
29377 2004-11-30  Simon Josefsson  <jas@extundo.com>
29378
29379         * MODULES.html.sh (Extra functions based on ANSI C 89): Add
29380         base64.
29381
29382         * tests/test-base64.c: New file.
29383
29384         * modules/base64: New file.
29385
29386 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
29387
29388         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX):
29389         Define HAVE_PARTLY_WORKING_GETCWD if getcwd is partly working.
29390
29391         * m4/readutmp.m4 (gl_READUTMP): Don't check for sys/param.h.
29392
29393 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
29394
29395         * lib/getcwd.c (is_ENAMETOOLONG): New macro.
29396         (__getcwd.c): Don't restore errno; glibc doesn't.
29397         [HAVE_PARTLY_WORKING_GETCWD && !defined AT_FDCWD]: Try system getcwd
29398         first, falling back to our code only if its results look suspicious.
29399         Ensure that the resulting buffer is only as large as necessary.
29400
29401         * lib/readutmp.c: Include readutmp.h first.
29402         Include <errno.h>, since readutmp.h no longer does that.
29403         * lib/readutmp.h: Don't include <errno.h>,
29404         <sys/param.h>, <time.h>; not needed to establish interface.
29405         (errno): Remove decl.
29406         (HAVE_STRUCT_XTMP_UT_TYPE): Remove; no longer needed.
29407         (UT_TYPE_EQ, UT_TYPE_NOT_DEFINED, UT_TYPE_BOOT_TIME,
29408         UT_TYPE_USER_PROCESS, IS_USER_PROCESS): New macros.
29409
29410 2004-11-28  Simon Josefsson  <jas@extundo.com>
29411
29412         * lib/base64.h, base64.c: New file.
29413
29414 2004-11-27  Paul Eggert  <eggert@cs.ucla.edu>
29415
29416         * lib/getcwd.h: New file, which I forgot to check in on 2004-11-25.
29417
29418 2004-11-26  Paul Eggert  <eggert@cs.ucla.edu>
29419
29420         * modules/getcwd (Files): Add lib/getcwd.h, m4/getcwd.m4.
29421         (Depends-on): Remove pathmax, same.  Add mempcpy.
29422         (configure.ac): GL_FUNC_GETCWD_PATH_MAX -> gl_FUNC_GETCWD.
29423         (Makefile.am): Append getcwd.h to lib_SOURCES.
29424         (Include): Add getcwd.h.
29425         (Maintainer): Change from Jim Meyering to "all, glibc",
29426         since getdate now uses intended-for-glibc code.
29427         * modules/xgetcwd (Files): Remove m4/getcwd.m4.
29428         (Depends-on): Depend on getcwd.  Do not depend on pathmax.
29429
29430 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
29431
29432         Fix problems reported by Scott S. Tinsley for HP-UX 11.11 using
29433         HP's ANSI C compiler.
29434         * lib/fsusage.c (statvfs) [HAVE_SYS_STATVFS_H]: Remove decl.
29435         Declaring int functions causes warnings on some modern systems and
29436         shouldn't be needed to compile on ancient ones.
29437         * lib/same.c (MIN) [defined MIN]: Don't define, since it's already
29438         defined.
29439
29440         * lib/getcwd.c: Replace by a copy of glibc/sysdeps/posix/getcwd.c, but
29441         with the following changes.
29442         (__set_errno): Parenthesize properly.
29443         Include <stdbool.h>.
29444         (MIN, MAX, MATCHING_INO): New macros.
29445         (__getcwd): Define with prototype, not K&R form.
29446         Use heuristics to allocate default buffer on stack if possible.
29447         If AT_FDCWD is defined, use openat and fstatat to avoid O(N**2)
29448         behavior, and to avoid the PATH_MAX limit when computing
29449         ../../../../...
29450         Use MATCHING_INO to compare inode number to file.
29451         Check for arithmetic overflow in size calculations.
29452         Fix bug in reallocation of dot array that caused getcwd to fail
29453         on directories nested deeper than 75.
29454         Be more careful about saving errno on error.
29455         Do not use realloc; use only free+malloc, as this is a bit
29456         more flexible and avoids a needless copy operation.
29457         Do not inspect st_dev and st_ino for symbolic links; POSIX
29458         doesn't specify the latter.
29459         Check for closedir errors.
29460         Avoid needless casts.
29461         Use "#ifdef weak_alias" around weak_alias, to be like other
29462         glibc code.
29463         The following changes to getcwd.c have effect only when used in
29464         gnulib; they have no effect inside glibc proper.
29465         (#pragma alloca) [defined _AIX && !defined __GNUC__]: Remove,
29466         as alloca isn't used.
29467         (alloca, __alloca): Likewise.
29468         [!_LIBC]: Include "getcwd.h", "mempcpy.h".
29469         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
29470         unconditionally, as gnulib assumes C89 or better.
29471         Do not include <sys/param.h>.
29472         (errno) [!defined __GNU_LIBRARY__ && !defined STDC_HEADERS]: Remove
29473         no-longer-necessary 'extern int errno' decl; gnulib assumes C89 or
29474         better.
29475         (NULL) [!defined NULL]: Remove; we assume C89 or better.
29476         Include <dirent.h> in a way that is compatible with modern Autoconf.
29477         (_D_ALLOC_NAMELEN, _D_EXACT_NAMLEN):
29478         New macros, if not already defined.
29479         Include <unistd.h> if _LIBC, not if __GNU_LIBRARY__.
29480         Use "_LIBC", not "defined _LIBC", for consistency.
29481         (HAVE_MEMPCPY): Remove; no longer needed now that gnulib has
29482         a mempcpy module.
29483         (__lstat, __closedir, __opendir, __readdir) [!_LIBC]: New macros.
29484         (GETCWD_RETURN_TYPE): Remove.  All uses replaced by char *.
29485         * lib/xgetcwd.c: David MacKenzie's old code was removed, so give
29486         credit only to Jim Meyering and adjust the copyright dates.
29487         Do not include <limits.h>, <stdio.h>, <sys/types.h>,
29488         <stdlib.h>, <unistd.h>, "pathmax.h".
29489         Instead, include "xgetcwd.h" (first) and "getcwd.h".
29490         (INITIAL_BUFFER_SIZE): Remove.
29491         (xgetcwd): Rely on getcwd, since we now depend on a reliable one.
29492
29493 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
29494
29495         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Renamed from
29496         GL_FUNC_GETCWD_PATH_MAX for consistency.  All uses changed.
29497         Use the _ONCE methods, for efficiency.
29498         Check for fcntl.h.  In test program, include <errno.h>
29499         and <fcntl.h> if available.  Remove old K&R cruft from
29500         test program.  Check for common errors in GNU/Linux,
29501         OpenBSD, and Solaris.  Just set gl_cv_func_getcwd_path_max;
29502         don't do AC_LIBOBJ, as that's getcwd.m4's job.
29503         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL): Renamed from
29504         AC_FUNC_GETCWD_NULL.  All used changed.  Change cache variable
29505         name accordingly.
29506         (gl_FUNC_GETCWD, gl_PREREQ_GETCWD): New macros.  Revamp to
29507         accommodate new getcwd.c.
29508         * m4/jm-macros.m4 (gl_MACROS): Don't require GL_FUNC_GETCWD_PATH_MAX.
29509         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_MEMPCPY.
29510         * m4/xgetcwd.m4 (gl_XGETCWD): Replace with gl_FUNC_GETCWD, since
29511         that's all we need now.
29512
29513 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
29514
29515         * m4/argp.m4 (gl_ARGP): Require gl_GETOPT_SUBSTITUTE unconditionally:
29516         argp-parse.c depends on getopt internals, that means we should
29517         always use our getopt, to be on the safe side.
29518         * m4/getopt.m4 (gl_GETOPT): Check if GETOPT_H is already set, in
29519         order not to spoil the result of an eventual previous invocation
29520         of gl_GETOPT_SUBSTITUTE.
29521
29522 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
29523
29524         * lib/getopt_.h: Re-addition of __getopt_argv_const caused
29525         redefinition warnings. To avoid them, include the defines
29526         in `#if !defined __need_getopt ... #endif'. The only place
29527         where __getopt_argv_const is used is in definitions
29528         of getopt_long and getopt_long_only below, which are as well
29529         protected by `#ifndef __need_getopt'.
29530         [defined __GETOPT_PREFIX && !defined __need_getopt]: Undef
29531         __need_getopt after including <stdio.h> and <unistd.h> These
29532         headers might have defined it.
29533
29534 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
29535
29536         * m4/utimens.m4 (gl_UTIMENS): Check for futimes function.
29537
29538 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
29539
29540         * lib/utimens.c (__attribute__, ATTRIBUTE_UNUSED): New macros.
29541         (futimens): New function, which uses futimes if available.
29542         (futimens, utimens): Support timespec==NULL, with same semantics
29543         as utime and utimens.
29544         * lib/utimens.h (futimens): New decl.
29545
29546 2004-11-23  Jim Meyering  <jim@meyering.net>
29547
29548         * lib/getopt_.h: Remove trailing blanks.
29549
29550 2004-11-23  Jim Meyering  <jim@meyering.net>
29551
29552         * lib/__fpending.c: Add comment.
29553
29554 2004-11-22  Paul Eggert  <eggert@cs.ucla.edu>
29555
29556         * modules/canonicalize (Depends-on): Add xreadlink.
29557         Problem reported by James Youngman.
29558
29559 2004-11-20  Paul Eggert  <eggert@cs.ucla.edu>
29560
29561         * lib/getopt_.h (__GETOPT_CONCAT, __GETOPT_XCONCAT, __GETOPT_ID):
29562         New macros.
29563         (getopt, getopt_long, getopt_long_only, optarg, opterr, optind,
29564         optopt): Use them instead of invoking ## directly; otherwise, the
29565         symbols will be __GETOPT_PREFIXgetopt rather than rpl_getopt.
29566
29567 2004-11-19  Bruno Haible  <bruno@clisp.org>
29568
29569         * lib/strtok_r.c: Move comments from here...
29570         * lib/strtok_r.h: ... to here.
29571
29572 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
29573
29574         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Check for buggy calloc
29575         implementations that mishandle size_t overflow.
29576
29577 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
29578
29579         * lib/realloc.c (rpl_realloc): Call 'free' if n==0, since realloc
29580         might fail.  Problem reported by Yoann Vandoorselaere.
29581         * lib/calloc.c (rpl_calloc): Defend against buggy calloc
29582         implementations that mishandle size_t overflow.
29583
29584 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
29585
29586         * modules/canon-host (Depends-on): Add strdup.
29587
29588 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
29589
29590         * m4/canon-host.m4 (gl_CANON_HOST): Check for getaddrinfo.
29591
29592 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
29593
29594         * lib/canon-host.c: Include "strdup.h".
29595         (canon_host): Use getaddrinfo if available, so that IPv6 works.
29596         Use strdup instead of malloc/strcpy to duplicate strings.
29597
29598         * lib/human.h (LONGEST_HUMAN_READABLE): Add 1 for space before unit.
29599         (human_space_before_unit): New constant.
29600         * lib/human.c (human_readable): Support it.
29601
29602         * lib/xgetcwd.c: Include <limits.h>, for PATH_MAX.
29603         (xgetcwd): Set errno correctly when failing.
29604         Work around Solaris 9 bug: getcwd sets errno==ERANGE even though
29605         the failure is actually due to a PATH_MAX problem.
29606
29607         Further getopt changes to make it more likely that glibc will
29608         buy the changes back.
29609         * lib/getopt.c (POSIXLY_CORRECT): New constant.
29610         (getopt): Use it, so to preserve glibc semantic
29611         * lib/getopt1.c (getopt_long, getopt_long_only): Arg is char * const *
29612         when compiling for libc.
29613         * lib/getopt_.h (__getopt_argv_const): Bring it back.
29614         (getopt_long, getopt_long_only): Use it.
29615
29616         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
29617         _getopt_internal): New arg POSIXLY_CORRECT.  All callers changed.
29618         (getopt): Argv is now char * const *, as per standard.
29619         (_getopt_internal_r, _getopt_internal): Argv is now char **,
29620         not char *__getopt_argv_const *.
29621         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
29622         _getopt_long_only_r): Likewise.
29623         * lib/getopt_.h (getopt, getopt_long, geopt_long_only): Likewise.
29624         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
29625         _getopt_long_r, _getopt_long_only_r): Likewise.
29626         * lib/getopt_.h (__getopt_argv_const): Remove.
29627         (getopt): Argv is now char * const *, as per standard.
29628
29629         * lib/getdate.y (tORDINAL): New token.
29630         (day, relunit): Allow it for relative times.
29631         (relative_time_table): Use tORDINAL for ordinals.
29632
29633 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
29634
29635         * doc/getdate.texi (General date syntax): "next" is 1, not 2.
29636         Document that "second" isn't allowed as an ordinal number.
29637
29638 2004-11-16  Jim Meyering  <jim@meyering.net>
29639
29640         * modules/closeout (Depends-on): Add fpending.
29641
29642 2004-11-15  Jim Meyering  <jim@meyering.net>
29643
29644         * lib/closeout.c: Include "__fpending.h" once again.
29645         Include <stdbool.h>.
29646         (close_stdout): Don't fail just because stdout was closed initially,
29647         since some programs don't write to stdout in the normal course of
29648         operation (other than --version and --help), and we don't want this
29649         function to make e.g. `touch file >&-' fail.
29650         But do fail if it was closed and someone has tried to write to it.
29651         E.g., `printf foo >&-' must fail.
29652
29653 2004-11-13  Jim Meyering  <jim@meyering.net>
29654
29655         * m4/jm-macros.m4: Do require gl_FUNC_FPENDING.
29656
29657 2004-11-12  Simon Josefsson  <jas@extundo.com>
29658
29659         * config/srclist.txt: Add strtok_r.c, glibc bought our changes, but a
29660         small doc fix is still pending.
29661
29662 2004-11-11  Simon Josefsson  <jas@extundo.com>
29663
29664         * modules/strtok_r: New file.
29665
29666         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
29667         strtok_r.
29668
29669 2004-11-11  Simon Josefsson  <jas@extundo.com>
29670
29671         * m4/strtok_r.m4: New file.
29672
29673         * m4/getopt.m4: Replace opterr.
29674
29675 2004-11-11  Simon Josefsson  <jas@extundo.com>
29676
29677         * lib/strtok_r.h, strtok_r.c: New file.
29678
29679 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
29680
29681         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): Define __GETOPT_PREFIX instead
29682         of replacing opterr, getopt, etc.  This should handle the
29683         powerpc-apple-darwin5.5 problem recently noted by Simon Josefsson.
29684
29685 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
29686
29687         * lib/getopt_.h (__getopt_argv_const): New macro, to be used so that
29688         we can stop lying to compilers about the constness of argv when we
29689         are compiled outside glibc.
29690         (getopt, getopt_long, getopt_long_only): Use it.
29691         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
29692         _getopt_internal, getopt): Likewise.
29693         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
29694         _getopt_long_only_r): Likewise.
29695         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
29696         _getopt_long_r, _getopt_long_only_r): Likewise.
29697
29698         * lib/getopt_.h [defined __GETOPT_PREFIX && !defined __need_getopt]:
29699         Include <stdlib.h> and <stdio.h>, and <unistd.h> if available.
29700         Then rename getopt to __GETOPT_PREFIX##getopt, and so forth for
29701         the other external symbols.
29702         (getopt) [!defined __GNU_LIBRARY]: Use prototype, not old-style
29703         declaration, since the above renaming now works around collisions.
29704
29705 2004-11-11  Jim Meyering  <jim@meyering.net>
29706
29707         * lib/linebreak.c: Remove trailing blanks.
29708         * lib/alloca_.h: Likewise.
29709         * lib/acosl.c: Likewise.
29710         * lib/euidaccess.c: Likewise.
29711         * lib/allocsa.h: Likewise.
29712
29713 2004-11-10  Simon Josefsson  <jas@extundo.com>
29714
29715         * m4/getaddrinfo.m4: New file.
29716
29717 2004-11-10  Simon Josefsson  <jas@extundo.com>
29718
29719         * lib/getaddrinfo.h, lib/getaddrinfo.c: New files.
29720
29721 2004-11-10  Simon Josefsson  <jas@extundo.com>
29722
29723         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
29724         getaddrinfo.
29725
29726         * modules/getaddrinfo: New file.
29727
29728 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
29729
29730         * m4/prereq.m4 (gl_PREREQ): Require gt_FUNC_SETENV.
29731
29732 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
29733
29734         * lib/mktime.c (SHR): New macro, which is a portable
29735         substitute for >> that should work even on Crays.
29736         (TIME_T_MIDPOINT, ydhms_diff, __mktime_internal): Use it.
29737         Problem reported by Mark D. Baushke in
29738         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00071.html>.
29739         * lib/getdate.y (SHR): Likewise.
29740         (tm_diff): Use it.
29741         * lib/strftime.c (SHR): Likewise.
29742         (tm_diff): Use it.
29743         * lib/quotearg.c (struct quoting_options): Use unsigned int for
29744         quote_these_too, so that right shifts are well defined.  All uses
29745         changed.
29746
29747 2004-11-10  Jim Meyering  <jim@meyering.net>
29748
29749         Ensure that no close failure goes unreported.
29750         * lib/closeout.c (close_stdout): Always close stdout.  I.e., don't
29751         return early when it seems there's nothing to flush.
29752         Don't include __fpending.h.
29753
29754 2004-11-10  Jim Meyering  <jim@meyering.net>
29755
29756         * modules/closeout (Depends-on): Remove fpending.
29757
29758 2004-11-10  Jim Meyering  <jim@meyering.net>
29759
29760         * m4/jm-macros.m4 (gl_MACROS): Don't require gl_FUNC_FPENDING.
29761
29762 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
29763
29764         * m4/strftime.m4 (_gl_STRFTIME_PREREQS): Remove.  Move its body to
29765         gl_FUNC_STRFTIME.
29766         (gl_FUNC_STRFTIME): Use AC_CHECK_FUNCS_ONCE and AC_CHECK_HEADERS_ONCE
29767         and AC_REQUIRE when possible, to avoid duplicate checks.
29768         Check for <wchar.h>.
29769
29770 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
29771
29772         * lib/strftime.c (DO_MULTIBYTE): Check for wchar.h, too.
29773
29774 2004-11-09  Bruno Haible  <bruno@clisp.org>
29775
29776         * m4/sockpfaf.m4: New file.
29777
29778 2004-11-05  Bruno Haible  <bruno@clisp.org>
29779
29780         * lib/readlink.c: Include stddef.h, needed for size_t on Woe32.
29781         Reported by Mark D. Baushke <mdb@cvshome.org>.
29782
29783 2004-11-04  Bruno Haible  <bruno@clisp.org>
29784
29785         2004-09-11  Bruno Haible  <bruno@clisp.org>
29786                 * allocsa.valgrind: New file.
29787         2004-02-06  Bruno Haible  <bruno@clisp.org>
29788                 * allocsa.h (sa_alignof): Define differently with HP-UX cc, to
29789                 avoid a bug of this cc on HP-UX 10.20 dealing with enums.
29790                 Reported by Christopher Seip <chris.seip@hp.com>.
29791
29792 2004-11-04  Bruno Haible  <bruno@clisp.org>
29793
29794         * modules/allocsa (Files): Add lib/allocsa.valgrind.
29795         (Makefile.am): Distribute it.
29796
29797 2004-11-03  Paul Eggert  <eggert@cs.ucla.edu>
29798
29799         * lib/xreadlink.c (xreadlink): AIX and HP-UX readlink return -1
29800         with errno == ERANGE if the buffer is too small.
29801         Problem reported by Mark D. Baushke.
29802
29803 2004-11-03  Albert Chin  <china@thewrittenword.com>
29804             Paul Eggert  <eggert@cs.ucla.edu>
29805
29806         * m4/uint32_t.m4 (gl_AC_TYPE_UINT32_T): When determining uint32_t
29807         equivalent, substitute $ac_type for equivalent type rather than
29808         blindly using uint32_t *always* which won't work if uint32_t is not
29809         available.  Define _UINT32_T to work around typedef of uint32_t if
29810         <sys/sched.h>, <pthread.h>, or <semaphore.h> used on Solaris
29811         2.5.1.
29812
29813 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
29814
29815         * m4/jm-macros.m4: Sync from coreutils.
29816         (gl_MACROS): Check for mbrlen, for pathchk.
29817         (gl_CHECK_ALL_TYPES): Require AC_TYPE_MBSTATE_T, for pathchk.
29818
29819 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
29820
29821         * lib/xreadlink.c (MAXSIZE): New macro.
29822         (xreadlink): Use it instead of SSIZE_MAX.  Ensure initial buffer
29823         size does not exceed MAXSIZE.  Avoid cast.
29824         As suggested by Mark D. Baushke in
29825         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00009.html>,
29826         if readlink fails with buffer size just under MAXSIZE, try again
29827         with MAXSIZE.
29828
29829 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
29830
29831         * config/srclist.txt: Add mktime.c; glibc bought all our changes.
29832
29833 2004-11-02  Derek R. Price  <derek@ximbiot.com>
29834         and  Paul Eggert  <eggert@cs.ucla.edu>
29835
29836         * lib/getdate.y [!TEST]: Include <stdio.h>, since we use sprintf now.
29837         (get_date): Overparenthesize to avoid GCC warning.
29838
29839 2004-11-02  Bruno Haible  <bruno@clisp.org>
29840
29841         * m4/setenv.m4 (gt_FUNC_SETENV): Define VOID_UNSETENV if unsetenv()
29842         returns void.
29843
29844 2004-11-02  Bruno Haible  <bruno@clisp.org>
29845
29846         * lib/setenv.h (unsetenv): Define as a macro if the system's unsetenv()
29847         function returns void.
29848
29849 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
29850
29851         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for declarations of
29852         fflush_unlocked, flockfile, funlockfile, funlockfile,
29853         fputs_unlocked, putc_unlocked.
29854
29855 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
29856
29857         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
29858         (funlockfile, fputs_unlocked, putc_unlocked): Don't define if
29859         already declared.
29860
29861 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
29862
29863         * modules/getdate (Files): Add doc/getdate.texi.
29864         (Depends-on): Add setenv, xalloc.
29865
29866 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
29867
29868         * lib/getdate.y: Add support for TZ="foo" within a date string.
29869         Fix some bugs near time_t boundaries.  Reject dates with
29870         out-of-range components, e.g., "Sept 31".
29871         Include <stdlib.h>, "setenv.h", "xalloc.h".
29872         (ISDIGIT_LOCALE): Remove; unused.
29873         Note that the TZ and time functions used here are not reentrant.
29874         (mktime_ok, get_tz): New functions.
29875         (TZBUFSIZE): New constant.
29876         (get_date): Parse leading TZ="foo".  Reject out-of-range components;.
29877         This requires that we sometimes generate our own TZ="XXX..." setting.
29878
29879 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
29880
29881         * doc/getdate.texi: New file, from coreutils with modifications for
29882         the new TZ parsing.
29883
29884 2004-10-27  Derek R. Price  <derek@ximbiot.com>
29885
29886         * lib/mktime.c (not_equal_tm): Remove redundant check.
29887
29888 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
29889
29890         * modules/regex (lib_SOURCES): Add regex.c.
29891         Reported by James Youngman in
29892         <http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00199.html>.
29893
29894 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
29895
29896         * lib/getdate.y: Use Bison 1.875 features, and some minor
29897         code cleanups.  This change does not affect semantics.
29898         Don't include <stdlib.h>; no longer needed.
29899         Don't include unlocked-io.h; only the "#if TEST" code uses
29900         stdio, and performance isn't crucial there.
29901         (PC, YYLEX_PARAM, YYPARSE_PARAM): Remove; replaced by
29902         Bison 1.875 features as described below.
29903         All uses of "PC." replaced by "pc->".
29904         (YYSTYPE): Add a forward declaration.
29905         (yylex, yyerror): Use full prototypes in forward decls.
29906         Use "%pure-parser" rather than obsolescent "%pure_parser".
29907         Use %parse-param and %lex-param instead of obsolescent
29908         YYPARSE_PARAM and YYLEX_PARAM.
29909         (meridian_table, month_and_day_table, time_units_table,
29910         relative_time_table, time_zone_table, military_table,
29911         lookup_zone, lookup_word, get_date):
29912         Use NULL instead of 0 where appropriate.
29913         (to_hour): Avoid abort (), to avoid a dependency on
29914         stdlib.h.
29915         (yyerror, yylex): Now accepts parser_control * arg.
29916         (main) [TEST]: Use '\0' rather than 0 for char.
29917
29918 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
29919
29920         * m4/getpagesize.m4 (gl_GETPAGESIZE): Check for <sys/param.h>.
29921
29922 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
29923
29924         * lib/getpagesize.c (getpagesize): Don't assume <sys/param.h> exists.
29925         It's now the caller's responsibility to handle the case where
29926         !HAVE_GETPAGESIZE && !defined getpagesize.
29927
29928         * lib/mktime.c (leapyear): Arg is long int, not int.
29929
29930 2004-10-18  Paul Eggert  <eggert@cs.ucla.edu>
29931
29932         * lib/argp-fs-xinl.c, argp-xinl.c: Update from glibc.
29933
29934 2004-10-17  Paul Eggert  <eggert@cs.ucla.edu>
29935
29936         * gnulib-tool (func_emit_lib_Makefile_am): Fix typo: a $ was
29937         missing.  Problem reported by James Youngman.
29938
29939 2004-10-16  Simon Josefsson  <jas@extundo.com>
29940
29941         * gnulib-tool: Fix comments.  Fix parse problem.
29942         (func_emit_lib_Makefile_am): Don't hard code a in libgl_a_SOURCES.
29943
29944 2004-10-15  Paul Eggert  <eggert@cs.ucla.edu>
29945
29946         * m4/getopt.m4 (gl_GETOPT): Detect and reject the incompatible BSD
29947         implementation of getopt_long.  Problem reported by Alexander Taler in:
29948         http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00103.html
29949
29950 2004-10-15  Bruno Haible  <bruno@clisp.org>
29951
29952         * gnulib-tool: Untabify. Initialize supplied_libname.
29953         (func_usage): More homogenous output.
29954         (func_modules_transitive_closure, func_modules_to_filelist,
29955         func_emit_lib_Makefile_am): New functions.
29956         (func_import): New function, extracted from big case statement. Use
29957         func_get_license, func_modules_transitive_closure,
29958         func_modules_to_filelist, func_emit_lib_Makefile_am. Initialize
29959         opt_lgpl. Don't use test -a, as it's not portable.
29960         (func_create_testdir): Use func_modules_transitive_closure,
29961         func_modules_to_filelist, func_emit_lib_Makefile_am.
29962
29963 2004-10-15  Bruno Haible  <bruno@clisp.org>
29964
29965         * gnulib-tool (func_import): Let gl_INIT define LTALLOCA when needed.
29966
29967 2004-10-15  Bruno Haible  <bruno@clisp.org>
29968
29969         * gnulib-tool (func_emit_lib_Makefile_am): Add markers to separate
29970         the portions belonging to each module.
29971         Suggested by Derek Robert Price <derek@ximbiot.com>.
29972
29973 2004-10-12  Simon Josefsson  <jas@extundo.com>
29974
29975         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
29976         (fputs_unlocked, putc_unlocked) [!_LIBCS && !USE_UNLOCKED_IO]: Map
29977         to real functions.
29978
29979 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
29980
29981         * modules/vsnprintf: New file.
29982
29983 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
29984
29985         * m4/vsnprintf.m4: New file.
29986
29987 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
29988
29989         * lib/vsnprintf.h: New file.
29990         * lib/vsnprintf.c: New file.
29991
29992 2004-10-11  Bruno Haible  <bruno@clisp.org>
29993
29994         * MODULES.html.sh (Support for systems lacking ISO C 99): Add
29995         vsnprintf.
29996
29997 2004-10-10  Paul Eggert  <eggert@cs.ucla.edu>
29998
29999         * config/srclistvars.sh: Add GNUSTANDARDS (for eggert only).
30000
30001 2004-10-07  Bruno Haible  <bruno@clisp.org>
30002
30003         * lib/snprintf.c (snprintf): Avoid a memory allocation if the result
30004         fits into the provided buffer.
30005
30006 2004-10-06  Paul Eggert  <eggert@cs.ucla.edu>
30007
30008         * lib/diacrit.c, diacrit.h: Add GPL notice.
30009
30010         * lib/atanl.c, logl.c: Add GPL notice, to match glibc's added LGPL
30011         notice.
30012         * lib/atanl.c (atanl): Keep the code as similar to glibc as possible.
30013         * lib/logl.c (logl): Keep the code as similar to glibc as possible.
30014         This avoids a potential constant-folding bug.
30015
30016 2004-10-05  Bruno Haible  <bruno@clisp.org>
30017
30018         * m4/strsep.m4 (gl_FUNC_STRSEP): Require AC_GNU_SOURCE. Don't check
30019         for the declaration of strsep.
30020
30021 2004-10-05  Bruno Haible  <bruno@clisp.org>
30022
30023         * lib/strsep.h: Don't declare strsep() if HAVE_STRSEP.
30024
30025 2004-10-04  Simon Josefsson  <jas@extundo.com>
30026
30027         * modules/memmem: New file.
30028         * tests/test-memmem.c: New file.
30029         * MODULES.html.sh (Extra functions based on ANSI C 89): Add memmem.
30030
30031 2004-10-04  Simon Josefsson  <jas@extundo.com>
30032
30033         * m4/memmem.m4: New file.
30034
30035 2004-10-04  Simon Josefsson  <jas@extundo.com>
30036
30037         * lib/memmem.h: New file.
30038         * lib/memmem.c: New file, taken from glibc.
30039
30040 2004-10-04  Simon Josefsson  <jas@extundo.com>
30041
30042         * lib/error.c, md5.c, regex.c: Use '#if USE_UNLOCKED_IO' instead of
30043         '#ifdef USE_UNLOCKED_IO'.
30044
30045 2004-10-04  Simon Josefsson  <jas@extundo.com>
30046
30047         * config/srclist.txt: Add memmem from glibc.
30048
30049 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
30050
30051         * modules/xalloc (Files, Makefile.am): Remove xstrdup.c.
30052
30053         * modules/argmatch, modules/argp, modules/closeout, modules/error,
30054         modules/exclude, modules/getdate, modules/getline,
30055         modules/getndelim2, modules/getpass, modules/getpass-gnu,
30056         modules/getusershell, modules/linebuffer, modules/md5,
30057         modules/mountlist, modules/posixtm, modules/readtokens,
30058         modules/readutmp, modules/regex, modules/sha1,
30059         modules/version-etc, modules/yesno:
30060         Remove dependency on unlocked-io.
30061
30062 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
30063
30064         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Remove.  All uses removed.
30065
30066         * m4/unlocked-io.m4: Add copyright notice.
30067         (gl_FUNC_GLIBC_UNLOCKED_IO): Define USE_UNLOCKED_IO.
30068
30069 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
30070
30071         * lib/xalloc.h (xmemdup): Renamed from xclone.  All uses changed.
30072         * lib/xmalloc.c (xmemdup): Likewise.
30073         * lib/xalloc.h (CCLONE, CLONE, NEW, XCALLOC, XMALLOC, XREALLOC,
30074         XFREE): Remove these long-obsolescent macros.
30075         * lib/xmalloc.c (xstrdup): Implementation moved here from xstrdup.c
30076         * lib/xstrdup.c: Remove.
30077
30078         * lib/regex.c (re_comp): Cast gettext return value to char *,
30079         Problem reported by Martin Neitzel via Mark D. Baushke.
30080
30081 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
30082
30083         * lib/argmatch.c, closeout.c, error.c, exclude.c, getdate.y,
30084         getndelim2.c, getpass.c, getusershell.c, linebuffer.c,
30085         md5.c, mountlist.c, posixtm.c, readtokens.c, readutmp.c,
30086         regex.c, sha1.c, version-etc.c, yesno.c:
30087         Include "unlocked-io.h" only if USE_UNLOCKED_IO.
30088         * lib/unlocked-io.h: Don't worry about USE_UNLOCKED_IO; that's now
30089         the includer's responsibility.
30090
30091         Sync from coreutils.
30092
30093         * lib/modechange.c (mode_compile): Don't decrement a pointer that
30094         points to the start of a string, as the C Standard says the
30095         resulting behavior is undefined.
30096
30097         * lib/backupfile.h (enum backuptype): Rename none -> no_backups,
30098         simple -> simple_backups, numbered_existing ->
30099         numbered_existing_backups, numbered -> numbered_backups
30100         to avoid shadowing problems.  All uses changed.
30101         * lib/argmatch.c (enum backuptype) [defined TEST]: Likewise.
30102         * lib/backupfile.c (check_extension, numbered_backup):
30103         Rename locals to avoid shadowing 'basename'.
30104         * lib/backupfile.h (VALID_BACKUP_TYPE): Don't evaluate arg more than
30105         once.
30106
30107         * lib/.cppi-disable: Add getopt_.h, getopt_int.h.
30108         * lib/.cvsignore: Add getopt.h.
30109
30110 2004-10-04  Bruno Haible  <bruno@clisp.org>
30111
30112         * modules/README: New file.
30113         * gnulib-tool (func_all_modules, func_verify_module): modules/README is
30114         not a module.
30115
30116 2004-10-02  Jim Meyering  <jim@meyering.net>
30117
30118         * lib/dirfd.h, getpagesize.h: Add copyright notice.
30119
30120 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
30121
30122         * modules/strsep: New file.
30123
30124 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
30125
30126         * m4/strsep.m4: New file.
30127
30128 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
30129
30130         * lib/strsep.h: New file.
30131         * lib/strsep.c: New file.
30132
30133 2004-10-01  Simon Josefsson  <jas@extundo.com>
30134
30135         * lib/snprintf.c (snprintf): Handle size==0.
30136
30137 2004-10-01  Simon Josefsson  <jas@extundo.com>
30138             Bruno Haible  <bruno@clisp.org>
30139
30140         * lib/snprintf.c: Include <stdarg.h>, <stdlib.h>, <string.h>.
30141         (snprintf): Declare 'args'.
30142
30143 2004-10-01  Paul Eggert  <eggert@cs.ucla.edu>
30144
30145         * lib/snprintf.c: Remove comments as to why each header is needed.
30146
30147 2004-10-01  Bruno Haible  <bruno@clisp.org>
30148
30149         * MODULES.html.sh: Add strsep.
30150
30151 2004-09-30  Simon Josefsson  <jas@extundo.com>
30152
30153         * modules/snprintf: New file.
30154
30155 2004-09-30  Simon Josefsson  <jas@extundo.com>
30156
30157         * m4/snprintf.m4: New file.
30158
30159 2004-09-30  Simon Josefsson  <jas@extundo.com>
30160
30161         * lib/snprintf.h, lib/snprintf.c: New files.
30162
30163 2004-09-30  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
30164
30165         * lib/argp-help.c (canon_doc_option): Fixed coredump if *name==NULL
30166         (hol_entry_help): Never translate an empty string.
30167         Do not translate option tag (opt->name) if OPTION_NO_TRANS is set
30168         * lib/argp.h (OPTION_NO_TRANS): New option.
30169
30170 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
30171
30172         * modules/argp (Maintainer): Replace Simon Josefsson
30173         by Sergey Poznyakoff.
30174
30175 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
30176
30177         * config/srclist.txt: Comment-out argp/argp.h, until we get the argp
30178         changes merged back into glibc.
30179
30180 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
30181
30182         * MODULES.html.sh (Support for systems lacking ISO C 99): Add snprintf.
30183
30184 2004-09-29  Oskar Liljeblad  <oskar@osk.mine.nu>
30185
30186         * lib/xvasprintf.c: Include xalloc.h.
30187         (xvasprintf): Use xalloc_die, not xmalloc_die.
30188
30189 2004-09-29  Bruno Haible  <bruno@clisp.org>
30190
30191         * modules/alloca-opt: New file, derived from modules/alloca.
30192         * modules/allocsa: Depend on alloca-opt instead of alloca.
30193         * modules/setenv: Likewise.
30194         * modules/vasnprintf: Likewise.
30195         * MODULES.html.sh: Add alloca-opt.
30196
30197 2004-09-28  Simon Josefsson  <jas@extundo.com>
30198
30199         * gnulib-tool: New parameter --lgpl, to asseert that modules are
30200         LGPL, and to replace license template from GPL to LGPL.
30201
30202 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
30203
30204         * modules/dummy: Change license to LGPL.
30205
30206 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
30207
30208         * lib/dummy.c: Change copyright notice to FSF, and license to GPL.
30209
30210 2004-09-24  Simon Josefsson  <jas@extundo.com>
30211
30212         * modules/minmax (License): Change from GPL to LGPL.
30213
30214 2004-09-23  Simon Josefsson  <jas@extundo.com>
30215
30216         * gnulib-tool (--import): Typo.
30217
30218 2004-09-23  Simon Josefsson  <jas@extundo.com>
30219
30220         * gnulib-tool (--import): Make sure *.m4 end up in m4/ by default.
30221
30222 2004-09-22  Bruno Haible  <bruno@clisp.org>
30223
30224         * modules/*: Add 'License' field.
30225         * gnulib-tool: Accept --extract-license option.
30226         (func_get_license): New function.
30227
30228 2004-09-21  Bruno Haible  <bruno@clisp.org>
30229
30230         * modules/vasnprintf (Files): Add m4/stdint_h.m4, m4/inttypes_h.m4.
30231         Reported by Simon Josefsson.
30232
30233 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
30234
30235         * modules/inttostr (Files): Add m4/longlong.m4, since it uses
30236         gl_AC_TYPE_LONG_LONG.
30237
30238 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
30239
30240         * config/srclist.txt: Add getsubopt.c, since libc bought our changes.
30241
30242 2004-09-18  Simon Josefsson  <jas@extundo.com>
30243         and  Paul Eggert  <eggert@cs.ucla.edu>
30244
30245         * gnulib-tool: Replace various ad-hoc automake/autoconf/aclocal
30246         calls with autoreconf.  Define GL_LIB.
30247
30248 2004-09-14  Karl Berry  <karl@gnu.org>
30249
30250         * config/srclist.txt: unsync setenv.c, sigh.
30251
30252 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
30253
30254         * lib/argp-pvh.c (argp_program_version_hook): Provide initial value.
30255         Problem reported by Bruno Haible in:
30256         http://lists.gnu.org/archive/html/bug-tar/2004-09/msg00023.html
30257
30258 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
30259
30260         * config/srclist.txt: Comment out argp-pvh.c.
30261
30262 2004-09-11  Paul Eggert  <eggert@cs.ucla.edu>
30263
30264         * lib/mempcpy.h: Wrap the entire include file inside #ifndef mempcpy,
30265         in case some system header has #define'd it.  Problem reported by
30266         Soeren D. Schulze in
30267         <http://lists.gnu.org/archive/html/bug-gnulib/2004-09/msg00017.html>.
30268
30269 2004-09-09  Karl Berry  <karl@gnu.org>
30270
30271         * regex.[ch]: delete from the root.  These were supposed to be
30272                 synced with emacs cvs, but this has not happened for about
30273                 a year, and anyway nothing else uses emacs regex.[ch].
30274                 bug-gnulib mail from Jeff Bailey, 9 Sep 2004 15:49:24 -0700.
30275                 lib/regex[.ch] is untouched.
30276
30277 2004-09-09  Bruno Haible  <bruno@clisp.org>
30278
30279         * modules/vasnprintf (Files): Add m4/eoverflow.m4.
30280
30281 2004-09-09  Bruno Haible  <bruno@clisp.org>
30282
30283         * m4/eoverflow.m4: New file, taken from GNU libiconv eilseq.m4 with
30284         modifications.
30285         * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Require gl_EOVERFLOW.
30286
30287 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
30288
30289         * modules/xvasprintf: New file.
30290         * MODULES.html.sh (Extra functions based on ANSI C 89): Add vasprintf.
30291
30292 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
30293
30294         * lib/xvasprintf.h: New file.
30295         * lib/xvasprintf.c: New file.
30296         * lib/xasprintf.c: New file.
30297
30298 2004-09-08  Bruno Haible  <bruno@clisp.org>
30299
30300         * m4/stdint.m4: New file, taken from GNU clisp with modifications.
30301
30302 2004-09-08  Bruno Haible  <bruno@clisp.org>
30303
30304         * lib/vasnprintf.c (VASNPRINTF): Signal EOVERFLOW if the resulting
30305         length is > INT_MAX.
30306         * lib/vasprintf.c (vasprintf): Don't test for length > INT_MAX any
30307         more.
30308
30309 2004-09-08  Bruno Haible  <bruno@clisp.org>
30310
30311         * lib/stdint_.h: New file, taken from GNU clisp.
30312
30313 2004-09-08  Bruno Haible  <bruno@clisp.org>
30314             Oskar Liljeblad  <oskar@osk.mine.nu>
30315
30316         * modules/stdint: New file.
30317         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdint.
30318
30319 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
30320
30321         Import from coreutils.
30322         * lib/userspec.c: Don't use <alloca.h>, so that we don't use alloca on
30323         strings on unbounded length.  alloca's performance benefits aren't
30324         that important here.
30325         (V_STRDUP): Remove.
30326         (parse_with_separator): New function, with most of the internals
30327         of the old parse_user_spec.  Allow user to omit both user and group,
30328         for compatibility with FreeBSD.
30329         Clone only the user name, not the entire spec.
30330         Do not set *uid, *gid unless entirely successful.
30331         Avoid memory leak in some failing cases.
30332         Fix regression for USER.GROUP reported by Dmitry V. Levin in
30333         <http://lists.gnu.org/archive/html/bug-coreutils/2004-08/msg00102.html>
30334         (parse_user_spec): Rewrite to use parse_with_separator.
30335
30336 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
30337
30338         * modules/userspec: Don't depend on alloca.
30339
30340 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
30341
30342         * m4/userspec.m4 (gl_USERSPEC): Don't require AC_FUNC_ALLOCA.
30343
30344 2004-08-17  Paul Eggert  <eggert@cs.ucla.edu>
30345
30346         * MODULES.html.sh: Add xalloc-die, c-strtod, c-strtold, raise,
30347         readtokens0, getcwd, fcntl-safer, canonicalize, cycle-check,
30348         utimecmp, utimens, xnanosleep.  Rename sha to sha1.
30349
30350 2004-08-16  Simon Josefsson  <jas@extundo.com>
30351
30352         * gnulib-tool: Use sed instead of autoconf --trace, inspired by
30353         libtoolize behaviour by "Gary V. Vaughan" <gary@gnu.org>.
30354         Add --dry-run for --import.
30355         Let user provided command line parameters override configure.ac
30356         settings.
30357
30358 2004-08-12  Simon Josefsson  <jas@extundo.com>
30359
30360         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): New macro,
30361         as discussed with Paul Eggert in threads rooted at
30362         <http://lists.gnu.org/archive/html/bug-gnulib/2004-06/msg00039.html>
30363         and
30364         <http://lists.gnu.org/archive/html/bug-gnulib/2004-07/msg00001.html>.
30365         Before, the test was empty, and relied on ELIDE_CODE in source
30366         code.)
30367         (gl_PREREQ_GETOPT): New macro.
30368         (gl_GETOPT): Use them.
30369
30370 2004-08-12  Simon Josefsson  <jas@extundo.com>
30371
30372         * lib/getopt.c, getopt1.c: Remove ELIDE_CODE hack.
30373         * lib/getopt_.h: Renamed from getopt.h.
30374
30375 2004-08-12  Simon Josefsson  <jas@extundo.com>
30376
30377         * gnulib-tool: Add --source-base, --m4-base, --libtool options.
30378         Change default library name from libfoo to libgnu.
30379         Now, if you have a configure.ac that says:
30380                 gl_SOURCE_BASE(gl)
30381                 gl_M4_BASE(gl/m4)
30382                 gl_MODULES(error getopt etcetera)
30383                 gl_INIT
30384         you can import all you need by running:
30385                 ../gnulib/gnulib-tool --import
30386
30387         * modules/getopt (Files): Rename getopt.h to getopt_.h.
30388         (Makefile.am): Rewrite, use logic from argz.
30389         (Include): Use <getopt.h> instead of "getopt.h".
30390
30391 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
30392
30393         * modules/argp (Files): Add m4/unlocked-io.m4.
30394         (Depends-on): Add extensions.
30395
30396 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
30397
30398         * m4/argp.m4 (gl_ARGP): Do not check for argp.h or argp_parse; nobody
30399         uses HAVE_ARGP_H or HAVE_ARGP_PARSE.
30400         Require gl_FUNC_GLIBC_UNLOCKED_IO, gl_USE_SYSTEM_EXTENSIONS.
30401         Check for program_invocation_name, program_invocation_short_name,
30402         flockfile, funlockfile, features.h, _getopt_long_only_r.
30403
30404 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
30405
30406         * lib/argp-help.c, argp-parse.c: Use "gettext.h" instead of
30407         its complicated substitute.
30408         * lib/argp-help.c: Include <errno.h>, for program_invocation_short_name
30409         and program_invocation_name.
30410         (__argp_basename) [!_LIBC]: Remove; the only use was
30411         replaced by its body.
30412         (__argp_short_program_name): Change condition from
30413         !defined __argp_short_program_name to
30414         ! (defined _LIBC || HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME),
30415         to match argp-namefrob.h.
30416         (__argp_failure): Don't assume strerror_r returns char *.
30417         * lib/argp-parse.c (N_): Define unconditionally.
30418         (argp_default_options): Fill out initializers with 0 to avoid
30419         gcc warnings.
30420
30421 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
30422
30423         * config/srclist.txt: Remove getopt.c, getopt.h (renamed to getopt_.h),
30424         getopt1.c.
30425
30426 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
30427
30428         Merge from coreutils.
30429
30430         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for wmemchr and wmemcpy.
30431
30432         * m4/obstack.m4 (gl_PREREQ_OBSTACK): Require
30433         gl_AC_HEADER_INTTYPES_H, gl_AC_HEADER_STDINT_H, gl_AC_TYPE_UINTMAX_T.
30434
30435 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
30436
30437         Merge from coreutils.
30438
30439         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Don't set to 1 if missing
30440         wmemchr or wmemcpy.  Problem reported by Robert Dahlem
30441         for Reliant Unix 5.43.
30442
30443         * lib/obstack.c: Include <inttypes.h> and <stdint.h> if available.
30444         (union fooround): Use uintmax_t, not long int.
30445         The rest is a merge from libc:
30446         [defined _LIBC]: Include <shlib-compat.h>.
30447         (_obstack) [defined _LIBC]: Remove after 2.3.4.
30448
30449         * lib/settime.c (settime): Recode to avoid warning with
30450         Sun Forte C 6U2.
30451
30452         * lib/strverscmp.c: Convert to UTF-8.
30453
30454 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
30455
30456         * modules/obstack (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
30457         m4/uintmax_t.m4.
30458
30459 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
30460
30461         * modules/xalloc-die: New file.
30462         * modules/xalloc: Remove dependencies on error, gettext, exitfail.
30463
30464         * modules/md5 (Files): Add m4/uint32_t.m4.
30465         * modules/sha1: Renamed from modules/sha.
30466         (Files):
30467         Rename lib/sha.h to lib/sha1.h.
30468         Rename lib/sha.c to lib/sha1.c.
30469         Rename m4/sha.m4 to m4/sha1.m4.
30470         (lib_SOURCES): Likewise.
30471         (configure.ac): Rename gl_SHA to gl_SHA1.
30472         (Include): sha.h -> sha1.h.
30473
30474 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
30475
30476         * m4/uint32_t.m4, m4/uintptr_t.m4: New files.
30477         * m4/sha1.m4: Renamed from sha.m4.
30478         (gl_SHA1): Renamed from gl_SHA.  All uses changed.
30479
30480 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
30481
30482         * lib/obstack.h (obstack_empty_p):
30483         Don't assume that chunk->contents is suitably aligned.
30484         * lib/obstack.c (_obstack_begin, _obstack_begin_1, _obstack_newchunk):
30485         Likewise. Problem reported by Benno in
30486         <http://sources.redhat.com/ml/libc-alpha/2004-08/msg00055.html>.
30487
30488         * lib/chown.c (rpl_chown): Work even if the file is writeable but not
30489         readable.  This could be improved further but it'd take some work.
30490
30491 2004-08-08  Simon Josefsson  <jas@extundo.com>
30492
30493         * modules/xgethostname (Depends-on): Remove exit and error (not
30494         used).
30495
30496         * modules/getpass-gnu: Add getpass.h.
30497         (Depends-on): Add stdbool.
30498         * modules/getpass: Add getpass.h.
30499
30500 2004-08-08  Simon Josefsson  <jas@extundo.com>
30501
30502         * m4/getpass.m4 (gl_FUNC_GETPASS, gl_FUNC_GETPASS_GNU):
30503         Check getpass declaration.
30504
30505 2004-08-08  Simon Josefsson  <jas@extundo.com>
30506
30507         * lib/xgethostname.c: Don't include error.h (not used).
30508
30509         * lib/getpass.h: Add.
30510         * lib/getpass.c: Include getpass.h first.
30511
30512 2004-08-08  Paul Eggert  <eggert@cs.ucla.edu>
30513
30514         * lib/xalloc-die.c: New file.
30515         * lib/xalloc.h (xalloc_fail_func, xalloc_msg_memory_exhausted): Remove.
30516         All uses removed.
30517         * lib/xmalloc.c (xalloc_fail_func, xalloc_msg_memory_exhausted):
30518         Likewise. Move inclusions of gettext.h, error.h, exitfail.h to
30519         xalloc-die.c.
30520         (_, N_, xalloc_die): Move to xalloc-die.c.
30521         * lib/userspec.c (parse_user_spaec): Use xstrdup rather than strdup,
30522         so that we needn't mess with xalloc_msg_memory_exhausted.
30523
30524         * lib/sha1.h: Renamed from sha.h.
30525         (SHA1_H): Renamed from _SHA_H.
30526         (sha1_ctx): Renamed from sha_ctx.
30527         (sha1_init_ctx): Renamed from sha_init_ctx.
30528         (sha1_process_block): Renamed from sha_process_block.
30529         (sha1_process_bytes): Renamed from sha_process_bytes.
30530         (sha1_finish_ctx): Renamed from sha_finish_ctx.
30531         (sha1_read_ctx): Renamed from sha_read_ctx.
30532         (sha1_stream): Renamed from sha_stream.
30533         (sha1_buffer): Renamed from sha_buffer.
30534         * lib/sha1.c: Likewise; renamed from sha.c.
30535         Do not include <sys/types.h>.
30536         Include <stddef.h> rather than <stdlib.h>.
30537
30538 2004-08-08  Bruno Haible  <bruno@clisp.org>
30539
30540         * lib/pathname.h (FILE_SYSTEM_PREFIX_LEN): Renamed from
30541         FILESYSTEM_PREFIX_LEN.
30542         * lib/progreloc.c: Likewise.
30543         * lib/concatpath.c (concatenated_pathname): Use FILE_SYSTEM_PREFIX_LEN.
30544
30545 2004-08-06  Simon Josefsson  <jas@extundo.com>
30546
30547         * modules/progname (Depends-on): Don't depend on stdbool.
30548
30549 2004-08-06  Simon Josefsson  <jas@extundo.com>
30550
30551         * modules/getsubopt: New file.
30552         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
30553         getsubopt.
30554
30555 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
30556
30557         More merge from coreutils.
30558
30559         * m4/utimens.m4, m4/utimecmp.m4: New files.
30560         * m4/backupfile.m4, euidacces.m4, acl.m4, afs.m4, calloc.m4, dirfd.m4,
30561         fsusage.m4, jm-macros.m4, ls-mntd-fs.m4, md5.m4, mountlist.m4,
30562         prereq.m4, sha.m4: Import changes from coreutils.
30563
30564 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
30565
30566         More merge from coreutils.
30567         * modules/raise, modules/readtokens0, modules/utimens:
30568         * modules/utimecmp, module/xnanosleep: New files.
30569         * modules/strftime: Add lib/strftime.h.
30570         Change include from <time.h> to "strftime.h".
30571         * modules/yesno: Add lib/yesno.h.
30572         * modules/backupfile: Remove lib/addext.c.
30573         * modules/euidaccess: Add stat-macros.h.
30574         * modules/canonicalize, modules/euidaccess,
30575         modules/filemode, modules/lchown, modules/makepath,
30576         modules/rmdir, modules/stat: Likewise.
30577
30578 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
30579
30580         Merge from tar.
30581         * lib/argp-help.c (make_hol, hol_append): Don't assume that
30582         SIZE_MAX is a valid preprocessor constant.
30583         (__argp_basename): Change from "#ifndef _LIBC"
30584         to "#ifndef __argp_short_program_name", so that
30585         we don't compile these functions for tar.
30586
30587         More merges from coreutils.
30588         * lib/raise.c, lib/readtokens0.h, lib/readtokens0.c, lib/strftime.h:
30589         * lib/utimens.h, lib/utimens.c, lib/utimecmp.h, lib/utimecmp.c:
30590         * lib/xnanosleep.h, lib/xnanosleep.c, lib/yesno.h: New files.
30591         * lib/addext.c: Remove; no longer needed.
30592         * lib/yesno.c, lib/argmatch.h, lib/argmatch.c, lib/backupfile.h,
30593         lib/backupfile.c, lib/euidaccess.c, lib/filemode.c, lib/closeout.c,
30594         lib/dup2.c, lib/exclude.c, lib/fileblocks.c, lib/filemode.c,
30595         lib/fnmatch.c, lib/fnmtahc_loop.c, lib/fopen-safer.c, lib/fsusage.c,
30596         lib/fsusage.h, lib/ftruncate.c, lib/full-write.c, lib/getdate.y,
30597         lib/getloadavg.c, lib/getugroups.c, lib/hard-locale.c,
30598         lib/hard-locale.h, lib/hash.c, lib/human.c, lib/human.h, lib/lchown.c,
30599         lib/lchown.h, lib/makepath.c, lib/makepath.h, lib/md5.c, lib/md5.h,
30600         lib/memchr.c, lib/memcoll.c, lib/memrchr.c, lib/modechange.c,
30601         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
30602         lib/posixtm.c, lib/putenv.c, quotearg.c, lib/quotearg.h,
30603         lib/readtokens.c, lib/readutmp.c, lib/readutmp.h, lib/rmdir.c,
30604         lib/safe-read.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c,
30605         lib/sig2str.c, lib/stat.c, lib/strtoimax.c, lib/strverscmp.c,
30606         lib/userspec.c, lib/utime.c, lib/version-etc.c., lib/xgethostname.c,
30607         lib/xmemcoll.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtod.h,
30608         lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h, lib/xstrtoumax.c:
30609         Import changes from coreutils.
30610
30611 2004-08-05  Simon Josefsson  <jas@extundo.com>
30612
30613         * m4/strdup.m4: Always run gl_PREREQ_STRDUP, since strdup.h need it.
30614
30615 2004-08-05  Simon Josefsson  <jas@extundo.com>
30616
30617         * m4/getsubopt.m4: New file.
30618
30619 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
30620
30621         Merge from coreutils.
30622
30623         * m4/c-strtod.m4, m4/canonicalize.m4, m4/fcntl-safer.m4:
30624         * m4/getcwd-path-max.m4: New files.
30625
30626         * m4/dos.m4 (gl_AC_DOS): filesystem -> file system renaming.
30627         FILESYSTEM_PREFIX_LEN ->
30628         FILE_SYSTEM_PREFIX_LEN.
30629         FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX ->
30630         FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX.
30631         FILESYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR ->
30632         FILE_SYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR.
30633
30634         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't require gl_AC_DOS, the
30635         prerequisite modules now handle the DOS stuff.
30636         Don't check for unistd.h.
30637
30638 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
30639
30640         Merge from coreutils.
30641
30642         * lib/.gdb-history: Remove; this doesn't belong here.
30643
30644         * lib/c-strtod.c, lib/c-strtod.h, lib/c-strtold.c, lib/cycle-check.c:
30645         * lib/cycle-check.h, lib/dev-ino.h, lib/canonicalize.h:
30646         * lib/canonicalize.c, lib/fcntl-safer.h, lib/fcntl-safer.c:
30647         * lib/getcwd.c: New files.
30648
30649         * lib/dirname.h: Include <stdbool.h>.
30650         (FILE_SYSTEM_PREFIX_LEN): Renamed from FILESYSTEM_PREFIX_LEN,
30651         for consistency with POSIX terminology.  All uses changed.
30652         (IS_ABSOLUTE_FILE_NAME, IS_RELATIVE_FILE_NAME): New macros.
30653         (strip_trailing_slashes): Use bool for booleans.
30654         * lib/stripslash.c (strip_trailing_slashes): Likewise.
30655
30656         * lib/error.c: Work around bug in OpenBSD 3.4 sterror_r: it
30657         sometimes returns a positive errno value even when it succeeds.
30658         (print_errno_message) [!LIBC]: Fall back on strerror if
30659         __strerror_r fails.
30660
30661         * lib/path-concat.c (mempcpy): Don't define if a system header defines
30662         it. Don't include stdio.h, stdlib.h, unistd.h, strdup.h.
30663         (longest_relative_suffix): New function.
30664         (path_concat): Use it.  Assume first argument is not NULL.
30665         Port to DOS.  Omit redundant separators.
30666         Report an error instead of returning NULL.
30667         Use mempcpy instead of memcpy.
30668         (xpath_concat): Remove: not declared or used.
30669
30670         * lib/same.h: Include <stdbool.h>
30671         (same_name): Return bool, not int.
30672         * lib/same.c (same_name): Likewise.
30673         (errno): Don't declare; we assume C89 or better now.
30674
30675         * lib/stat-macros (S_ISCTG, S_ISOFD, S_ISOFL): New macros,
30676         if not already defined.
30677
30678         * lib/xgetcwd.c (errno): Don't declare; we assume C89 or better now.
30679         * lib/dup-safer.c (errno): Likewise.
30680
30681 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
30682
30683         Merge from coreutils.
30684         * modules/c-strtod, modules/c-strtold, modules/canonicalize:
30685         * modules/cycle-check, modules/fcntl-safer, modules/getcwd: New files.
30686         * modules/path-concat: Don't depend on strdup.
30687
30688 2004-08-03  Simon Josefsson  <jas@extundo.com>
30689
30690         * lib/strdup.h: Only use HAVE_DECL_STRDUP if defined.
30691         * lib/progname.h: Don't include stdbool.h.
30692
30693 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
30694
30695         * modules/fatal: Remove, as the "fatal" module wasn't used or working.
30696         * MODULES.html.sh (func_all_modules): Remove fatal.
30697
30698 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
30699
30700         * m4/fatal.m4: Remove, as the "fatal" module wasn't used or working.
30701
30702 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
30703
30704         * lib/fatal.c, fatal.h: Remove as the "fatal" module wasn't used or
30705         working.
30706
30707 2004-08-02  Simon Josefsson  <jas@extundo.com>
30708
30709         * lib/getsubopt.h: New file, with comments from Bruno Haible.
30710         * lib/getsubopt.c: New file, from glibc, but slightly modified based on
30711         suggestions from Paul Eggert <eggert@cs.ucla.edu>.
30712
30713 2004-08-01  Simon Josefsson  <jas@extundo.com>
30714
30715         * lib/xgetdomainname.c: Include stdlib.h, for free().
30716
30717 2004-07-19  Bruno Haible  <bruno@clisp.org>
30718
30719         * MODULES.html.sh (func_all_modules): Add dummy.
30720
30721 2004-07-16  Simon Josefsson  <jas@extundo.com>
30722
30723         * modules/dummy: New file.
30724
30725 2004-07-16  Simon Josefsson  <jas@extundo.com>
30726
30727         * lib/dummy.c: New file.
30728
30729 2004-07-16  Bruno Haible  <bruno@clisp.org>
30730
30731         * lib/backupfile.h: Add extern "C" for C++.
30732         * lib/closeout.h: Likewise.
30733         * lib/copy-file.h: Likewise.
30734         * lib/findprog.h: Likewise.
30735         * lib/full-write.h: Likewise.
30736         * lib/pathname.h: Likewise.
30737         * lib/progname.h: Likewise.
30738         * lib/stpcpy.h: Likewise.
30739         * lib/stpncpy.h: Likewise.
30740         * lib/strcase.h: Likewise.
30741         * lib/strstr.h: Likewise.
30742         * lib/xalloc.h: Likewise.
30743
30744         * lib/mbswidth.h: Add extern "C" for C++.
30745         Reported by Albert Chin-A-Young <china@thewrittenword.com>.
30746
30747 2004-07-13  Robert Millan  <robertmh@gnu.org>
30748
30749         * m4/host-os.m4: s/KNetBSD/kNetBSD/g and s/KFreeBSD/kFreeBSD/g.
30750
30751 2004-07-09  Simon Josefsson  <jas@extundo.com>
30752
30753         * lib/getndelim2.c: Include stddef.h, for ptrdiff_t.  (FreeBSD 4.9
30754         failed without this.)
30755
30756 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
30757
30758         * modules/chown (Files): Add lib/fchown-stub.c, since
30759         gl_PREREQ_CHOWN invokes AC_LIBOBJ(fchown-stub).
30760
30761 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
30762
30763         * lib/fchown-stub.c: New file.
30764
30765 2004-06-24  Jim Meyering  <jim@meyering.net>
30766
30767         * lib/obstack.h (obstack_base): Cast to (void *), per documentation.
30768
30769 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
30770
30771         * modules/argz: Omit "#include".
30772
30773         * MODULES.html.sh (func_all_modules): Add calloc, to match
30774         2004-06-01 addition of calloc module.
30775
30776 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
30777
30778         * m4/argz.m4: New file, which is autoupdated from libtool.
30779
30780 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
30781
30782         * lib/argz.c, lib/argz_.h: New files, which are autoupdated from
30783         libtool.
30784
30785 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
30786
30787         * config/srclist-update: Don't insist on "USA." before the
30788         close-comment, as libtool omits the period and puts the */ on a
30789         separate line.
30790         * config/srclist.txt: Add argz.c, argz_.h, argz.m4.
30791         * config/srclistvars.sh: Add LIBTOOL (for eggert only).
30792
30793 2004-06-22  Gary V. Vaughan  <gary@gnu.org>
30794
30795         * modules/argz: New file.
30796         * MODULES.html.sh (func_all_modules): Add argz.
30797
30798 2004-06-12  Jim Meyering  <jim@meyering.net>
30799         and  Paul Eggert  <eggert@cs.ucla.edu>
30800
30801         * modules/hash (Files): Add lib/xalloc.h.
30802         * modules/pipe (Depends-on): Add wait-process.
30803         * modules/stat (Depends-on): Add xalloc.
30804         * modules/userspec (Files): Add lib/userspec.h.
30805         * modules/xstrto
30806
30807         Upgrade from gettext-0.13.
30808         * modules/gettext (Files): Add m4/intmax.m4, m4/longdouble.m4,
30809         m4/longlong.m4, m4/printf-posix.m4, m4/signed.m4, m4/size_max.m4,
30810         m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4.
30811
30812 2004-06-10  Jim Meyering  <jim@meyering.net>
30813
30814         * lib/calloc.c: New file.
30815
30816 2004-06-06  Paul Eggert  <eggert@cs.ucla.edu>
30817
30818         * lib/getdate.y (yylex): Allow space between sign and number.
30819         Problem reported by Dan Jacobson.
30820
30821 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
30822
30823         Merge from coreutils CVS.
30824
30825         * m4/backupfile.m4, dirname.m4, human.m4, inttypes.m4, longlong.m4,
30826         makepath.m4, memchr.m4, memcmp.m4, mountlist.m4, path-concat.m4,
30827         putenv.m4, quotearg.m4, readutmp.m4, strtoimax.m4, strtoll.m4,
30828         strtoull.m4, strtoumax.m4, ulonglong.m4, vasnprintf.m4,
30829         xstrtol.m4: Fix copyright date and/or serial number.
30830
30831         * m4/chown.m4 (gl_PREREQ_CHOWN): Check for fcntl.h.
30832         See if we need an fchown replacement.
30833         (gl_FUNC_CHOWN_FOLLOWS_SYMLINK): New macro.
30834         (gl_FUNC_CHOWN): Require gl_FUNC_CHOWN_FOLLOWS_SYMLINK,
30835         and use the replacement function if we detect either defect.
30836
30837         * m4/prereq.m4 (gl_PREREQ): Add gl_ALLOCSA, gl_CLOEXEC, gl_INTTOSTR,
30838         gl_UTIMECMP.
30839
30840 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
30841         and  Jim Meyering  <jim@meyering.net>
30842
30843         Merge from coreutils CVS.
30844
30845         * lib/stat-macros.h: New file, with contents from file-type.h
30846         and coreutils' system.h.
30847         * lib/file-type.c: Include "stat-macros.h".
30848         * lib/file-type.h (file_type): Move all macro definitions to new file,
30849         stat-macros.h.
30850
30851         * lib/chown.c (rpl_chown) [CHOWN_FAILS_TO_HONOR_ID_OF_NEGATIVE_ONE]:
30852         Wrap old code with this conditional.
30853         [CHOWN_MODIFIES_SYMLINK]: Try to work around a chown
30854         function that does not dereference symlinks.
30855         * lib/lchown.c (lchown) [CHOWN_MODIFIES_SYMLINK]: Just call chown.
30856
30857         * lib/xreadlink.c: Include xreadlink.h first, to catch .h file
30858         dependency problems.
30859         (xreadlink): Accept new arg SIZE, for efficiency.
30860         All decls and uses changed.
30861         * lib/xreadlink.h: Include <stddef.h>, for size_t.
30862
30863         * lib/.cppi-disable: Add alloca_.h, allocsa.h, exit.h, getndelim2.h,
30864         gettext.h, localcharset.h, strdup.h, strndup.h, strtoul.c, time_r.h.
30865
30866         * lib/.cvsignore: Add alloca.h, fnmatch.h, poll.h, stdbool.h,
30867         sysexits.h.
30868
30869 2004-06-01  Jim Meyering  <jim@meyering.net>
30870
30871         * m4/calloc.m4: New file.
30872
30873 2004-05-31  Paul Eggert  <eggert@cs.ucla.edu>
30874
30875         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Detect _Bool bug in HP aC++/ANSI
30876         C B3910B A.05.55 [Dec 04 2003].  Problem reported by Jim Meyering.
30877         Also, fix a typo in a diagnostic.
30878
30879 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
30880
30881         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Do not require AC_FUNC_MALLOC
30882         or AC_FUNC_REALLOC.
30883
30884 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
30885
30886         * lib/xmalloc.c (HAVE_MALLOC, HAVE_REALLOC): Do not require these
30887         macros to be defined.
30888         (xnmalloc_inline, xnrealloc_inline, xcalloc): Do not die if
30889         the allocator returns NULL because the requested size is zero.
30890
30891 2004-05-20  Paul Eggert  <eggert@cs.ucla.edu>
30892
30893         * lib/malloc/obstack.c (_obstack) [defined _LIBC]: Bring back this
30894         var.  Add comment explaining why libc still defines it.  This
30895         merges the following patch from glibc:
30896         http://sources.redhat.com/ml/libc-alpha/2004-05/msg00157.html
30897
30898 2004-05-20  Andreas Schwab  <schwab@suse.de>
30899
30900         * m4/free.m4: Replace free if it not known to work, not the other
30901         way round.
30902
30903 2004-05-19  Paul Eggert  <eggert@cs.ucla.edu>
30904
30905         * lib/obstack.c (_obstack): Remove unused variable.  It hasn't been
30906         present in glibc since revision 1.1 of this file.
30907         * lib/obstack.h (_obstack_free, obstack_1grow, obstack_1grow_fast,
30908         obstack_alignment_mask, obstack_alloc, obstack_base,
30909         obstack_blank, obstack_blank_fast, obstack_chunk_size,
30910         obstack_copy, obstack_copy0, obstack_finish, obstack_grow,
30911         obstack_grow0, obstack_init, obstack_int_grow,
30912         obstack_int_grow_fast, obstack_make_room, obstack_memory_used,
30913         obstack_next_free, obstack_object_size, obstack_ptr_grow,
30914         obstack_ptr_grow_fast, obstack_room): Remove declarations of
30915         nonexistent functions.
30916
30917 2004-05-18  Karl Berry  <karl@gnu.org>
30918
30919         * config/srclist.txt: break link for vasnprintf.c.
30920
30921 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
30922
30923         Port obstack to the AS/400, where pointers are 16 bytes wide and
30924         you cannot cast an integer to a valid pointer.  This patch is
30925         currently waiting to be integrated into glibc; see
30926         <http://sources.redhat.com/ml/libc-alpha/2004-05/msg00073.html>.
30927
30928         * lib/obstack.h (__PTR_TO_INT, __INT_TO_PTR): Remove.
30929         All uses of __INT_TO_PTR (PTR_TO_INT ...) replaced by __PTR_ALIGN.
30930         (__BPTR_ALIGN, __PTR_ALIGN): New macros.
30931         (struct obstack): temp member is now a union of a pointer and
30932         an integer, instead of an integer.  All integer uses changed.
30933         This does not affect the physical layout of struct obstack,
30934         except on hosts (like the AS/400) where the size or alignment of
30935         void * is greater than that of ptrdiff_t.
30936         (obstack_finish) [! (defined __GNUC__ && defined __STDC__ &&
30937         __STDC__)]: Store temporary in pointer member of union, not
30938         integer member.
30939         * lib/obstack.c: Include <stddef.h>, for offsetof.
30940         (struct fooalign): Remove; it doesn't need a name.
30941         (union fooround): Change double to long double, and add void *.
30942         (DEFAULT_ALIGNMENT): Use offsetof to compute.
30943         (DEFAULT_ALIGNMENT, DEFAULT_ROUNDING): Now an enum constant,
30944         not a macro.  Hence the values are always int; so remove all
30945         casts-to-int in uses.
30946
30947 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
30948
30949         * config/srclist.txt: Break link for argp-help.c and argp-parse.c until
30950         we can get this patch merged into glibc.
30951
30952 2004-05-17  Derek R. Price  <derek@ximbiot.com>
30953             Paul Eggert  <eggert@cs.ucla.edu>
30954
30955         * m4/argp: Depend on alloca.
30956
30957 2004-05-17  Derek R. Price  <derek@ximbiot.com>
30958             Paul Eggert  <eggert@cs.ucla.edu>
30959
30960         * lib/argp-help.c, argp-parse.c: Assume <alloca.h> rather than
30961         freecoding.
30962
30963 2004-05-17  Bruno Haible  <bruno@clisp.org>
30964
30965         * lib/vasnprintf.c (VASNPRINTF): Correctly handle the case of a
30966         precision that consists of a '.' followed by an empty digit string.
30967         Patch by Tor Lillqvist <tml@iki.fi>.
30968
30969 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
30970
30971         * m4/alloca.m4 (gl_FUNC_ALLOCA): Define HAVE_ALLOCA_H always,
30972         for backward compatibility with older code.  We need our own
30973         alloca.h if _AIX is defined.  Define HAVE_ALLOCA if we discover
30974         it under some other name, and our alloca.h will define it.
30975
30976 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
30977             Derek Price  <derek@ximbiot.com>
30978
30979         * lib/alloca.c: Include <alloca.h>, to get our interface.
30980         * lib/alloca_.h: Use __alloca on AIX, so that we don't have to
30981         include <alloca.h> first.  Use C89 prototype for alloca; this
30982         requires including <stddef.h> for size_t.  Use extern "C" if C++.
30983         Use #elif for simplicity, since we can assume C89 now.
30984         Don't try to source the system alloca.h since it will not be found
30985         and to prevent recursively including its replacement.
30986         * lib/fnmatch.c: Include <alloca.h> instead of opencoding.
30987         * lib/regex.c: Likewise.
30988
30989 2004-05-16  Derek Price  <derek@ximbiot.com>
30990             Paul Eggert  <eggert@cs.ucla.edu>
30991
30992         getline cleanup.  This changes the getndelim2 API: both order of
30993         arguments, and meaning of delim2 (now uses EOF, not 0, to indicate
30994         no delimiter).
30995
30996         * lib/getline.c: Don't include stddef.h or stdio.h, since our
30997         interface does that.
30998         (getline): Always use getdelim, so that we don't have two
30999         copies of this code.
31000         * lib/getndelim2.c: Include <limits.h>, <inttypes.h>, <stdint.h>
31001         if available.
31002         (PTRDIFF_MAX, SIZE_MAX, SSIZE_MAX): Define if not defined.
31003         (GETNDELIM2_MAXIMUM): New macro.
31004         (getndelim2): Reorder arguments.  delim==EOF now means no delimiter,
31005         instead of the old practice of delim2==0.  All callers changed.
31006         Return -1 on overflow, instead of returning junk.
31007         Do not set *linesize unless allocation succeeds.
31008         * lib/getndelim2.h: Do not include stddef.h; no longer needed, now
31009         that we include sys/types.h.
31010         * lib/getnline.h: Likewise.
31011         * lib/getndelim2.h (GETNLINE_NO_LIMIT): New macro.
31012         (getndelim2): Reorder arguments.
31013         * lib/getnline.c (getnline, getndelim):
31014         Don't discard the NMAX argument.
31015         (getnline): Invoke getndelim, to avoid code duplication.
31016         * lib/getnline.h (GETNLINE_NO_LIMIT): New macro, used instead
31017         of (size_t) -1 by callers of the getnline family.
31018
31019 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
31020
31021         * m4/gettime.m4 (gl_GETTIME): Require gl_TIMESPEC.
31022         Check for gettimeofday.
31023         * m4/settime.m4 (gl_SETTIME): Require gl_TIMESPEC.
31024         Check for settimeofday, stime.
31025
31026 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
31027
31028         * lib/nanosleep.c (suspended): Change its type from int to
31029         sig_atomic_t volatile.
31030         (first_call): Make it private to rpl_nanosleep, and have it
31031         be zero initially as that's a bit faster.
31032         (my_usleep): Round up fractional times instead of truncating them,
31033         as this is the usual meaning for 'sleep'.
31034
31035         * lib/gettime.c (gettime): Fall back on `time' if `gettimeofday'
31036         doesn't work.
31037         * lib/settime.c: Include <unistd.h>, for stime (on Solaris 8, anyway).
31038         (ENOSYS): Define if not defined.
31039         (settime): Fall back on stime if it exists and settimeofday fails.
31040         But don't bother with fallbacks if a method fails with errno == EPERM.
31041
31042 2004-05-11  Jim Meyering  <jim@meyering.net>
31043
31044         Prior to this change, the save_cwd caller required read access to the
31045         current directory on most systems (ones with the fchdir function).
31046
31047         * lib/save-cwd.c (save_cwd) [HAVE_FCHDIR]: If opening `.' read-only
31048         fails, try write-only, and finally, resort to using xgetcwd.
31049
31050 2004-05-06  Paul Eggert  <eggert@cs.ucla.edu>
31051
31052         * lib/obstack.c, obstack.h: Import changes from libc.
31053
31054 2004-04-28  Bruno Haible  <bruno@clisp.org>
31055
31056         * lib/findprog.c (find_in_path): Treat Cygwin like Windows, since it
31057         also implicitly appends .exe to executables.
31058         * lib/localcharset.c (ISSLASH): Treat Cygwin like Windows, since it now
31059         accepts Windows pathnames.
31060         * lib/pathname.h (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
31061         Treat Cygwin like Windows, since it now accepts Windows pathnames.
31062         * lib/progreloc.c (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
31063         Treat Cygwin like Windows, since it now accepts Windows pathnames.
31064         Reported by Derek Robert Price <derek@ximbiot.com>.
31065
31066 2004-04-21  Karl Berry  <karl@gnu.org>
31067
31068         * config/srclist.txt (localcharset.c): break sync.
31069
31070 2004-04-20  Paul Eggert  <eggert@twinsun.com>
31071
31072         * m4/host-os.m4: Add a copyright notice.
31073
31074 2004-04-20  Jim Meyering  <jim@meyering.net>
31075
31076         Change UTILS_ to gl_ in AC_DEFINE'd names.
31077         Change utils_- and jm_-prefixed variables, too.
31078         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Renamed from
31079         UTILS_FUNC_MKDIR_TRAILING_SLASH.
31080         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Renamed from UTILS_FUNC_MKSTEP.
31081
31082         * m4/dirfd.m4 (gl_FUNC_DIRFD): Rename from UTILS_FUNC_DIRFD.
31083         Don't emit trailing blanks.
31084         Also rename jm_-prefixed variables to have gl_ prefix.
31085
31086         * m4/host-os.m4 (gl_HOST_OS): Rename from UTILS_HOST_OS.
31087         Also rename jm_-prefixed variables to have gl_ prefix.
31088
31089         * m4/jm-macros.m4: Reflect the renamings.
31090         * m4/prereq.m4: Likewise.
31091
31092 2004-04-20  Jim Meyering  <jim@meyering.net>
31093
31094         * lib/getndelim2.c (getndelim2): Upon realloc failure, don't leak
31095         memory.
31096
31097 2004-04-20  Jim Meyering  <jim@meyering.net>
31098             Bruno Haible  <bruno@clisp.org>
31099
31100         * lib/localcharset.c (get_charset_aliases) [!VMS && !WIN32]: Don't leak
31101         memory when realloc fails.
31102
31103 2004-04-19  Jim Meyering  <jim@meyering.net>
31104
31105         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Require gl_FUNC_FREE,
31106         now that readutmp.c may call `free (0)'.
31107
31108 2004-04-19  Bruno Haible  <bruno@clisp.org>
31109
31110         * m4/mbrtowc.m4: Change jm_ to gl_ in cache variables as well.
31111         * m4/inttypes_h.m4: Likewise.
31112         * m4/stdint_h.m4: Likewise.
31113         * m4/intmax_t.m4: Likewise.
31114         * m4/uintmax_t.m4: Likewise.
31115
31116 2004-04-18  Jim Meyering  <jim@meyering.net>
31117
31118         * m4/prereq.m4: Don't forbid jm_ prefix.
31119
31120         * m4/afs.m4, m4/allocsa.m4, m4/assert.m4, m4/backupfile.m4:
31121         * m4/bison.m4, m4/check-decl.m4, m4/chown.m4, m4/d-ino.m4:
31122         * m4/d-type.m4, m4/dirname.m4, m4/dos.m4, m4/error.m4, m4/fpending.m4:
31123         * m4/fstypename.m4, m4/fsusage.m4, m4/ftruncate.m4, m4/getdate.m4:
31124         * m4/getgroups.m4, m4/gettext.m4, m4/glibc21.m4, m4/group-member.m4:
31125         * m4/human.m4, m4/intmax.m4, m4/intmax_t.m4, m4/inttostr.m4:
31126         * m4/inttypes.m4, m4/inttypes_h.m4, m4/jm-macros.m4, m4/jm-winsz1.m4:
31127         * m4/jm-winsz2.m4, m4/lchown.m4, m4/lib-check.m4, m4/link-follow.m4:
31128         * m4/localcharset.m4, m4/longlong.m4, m4/ls-mntd-fs.m4, m4/lstat.m4:
31129         * m4/makepath.m4, m4/mbrtowc.m4, m4/mbswidth.m4, m4/memchr.m4:
31130         * m4/memcmp.m4, m4/mkdtemp.m4, m4/mkstemp.m4, m4/mountlist.m4:
31131         * m4/nanosleep.m4, m4/path-concat.m4, m4/perl.m4, m4/prereq.m4:
31132         * m4/putenv.m4, m4/quotearg.m4, m4/regex.m4, m4/stat.m4:
31133         * m4/stdint_h.m4, m4/strftime.m4, m4/strtoimax.m4, m4/strtoll.m4:
31134         * m4/strtoull.m4, m4/strtoumax.m4, m4/timespec.m4, m4/uintmax_t.m4:
31135         * m4/ulonglong.m4, m4/unlink-busy.m4, m4/unlocked-io.m4, m4/uptime.m4,
31136         * m4/utimbuf.m4, m4/utime.m4, m4/utimes-null.m4, m4/vasnprintf.m4:
31137         * m4/xstrtoimax.m4, m4/xstrtol.m4, m4/xstrtoumax.m4:
31138         Change jm_ to gl_ in AC_DEFINE'd names. Update all uses.
31139
31140 2004-04-18  Jim Meyering  <jim@meyering.net>
31141
31142         * lib/readutmp.c (read_utmp) [UTMP_NAME_FUNCTION]: Upon realloc
31143         failure, don't leak memory and do call END_UTMP_ENT.
31144
31145 2004-04-16  Jim Meyering  <jim@meyering.net>
31146
31147         * m4/prereq.m4 (jm_PREREQ_STAT): Remove macro.  It is specific to
31148         coreutils' stat program.
31149         (gl_PREREQ): Don't require jm_PREREQ_STAT.
31150
31151 2004-04-11  Paul Eggert  <eggert@twinsun.com>
31152
31153         * lib/inttostr.h: Include <limits.h> unconditionally, since we assume
31154         C89.
31155         (CHAR_BIT): Remove, since we assume C89.
31156         Include <stdint.h> if available, as per current Autoconf CVS advice.
31157
31158 2004-03-31  Jim Meyering  <jim@meyering.net>
31159
31160         * m4/prereq.m4: Require AC_FUNC_MALLOC, not jm_FUNC_MALLOC.
31161         Require AC_FUNC_REALLOC, not jm_FUNC_REALLOC.
31162         * m4/xalloc.m4: Likewise.
31163
31164 2004-03-30  Paul Eggert  <eggert@twinsun.com>
31165
31166         Merge from coreutils.
31167
31168         * m4/inttostr.m4: New file.
31169         * m4/getdate.m4 (gl_GETDATE): Remove time-related stuff.
31170         Require AM_STDBOOL_H and gl_TIMESPEC instead.
31171         Require gl_CLOCK_TIME.
31172         * m4/clock_time.m4 (gl_CLOCK_TIME): Require AC_GNU_SOURCE.
31173
31174 2004-03-30  Paul Eggert  <eggert@twinsun.com>
31175
31176         * lib/cloexec.h, cloexec.c (set_cloexec_flag): Return int
31177         not bool, to be more consistent with Unix conventions.
31178         Suggested by Bruno Haible.
31179
31180         Merge from coreutils.
31181
31182         * lib/imaxtostr.c, lib/inttostr.c, lib/inttostr.h, lib/offtostr.c:
31183         * lib/umaxtostr.c: New files.
31184
31185         * lib/getdate.h: Include stdbool.h, and timespec.h instead of
31186         the usual <time.h> dance.
31187         (get_date): Change signature to support fractional time stamps.
31188         All callers changed.
31189         * lib/getdate.y: Include "getdate.h" first, as we can now
31190         assume C89 and don't need to worry about 'const'.
31191         Similarly, include "unlocked-io.h" near start, not in middle.
31192         Include <limits.h>.
31193         (textint.value): Use long int rather than int.
31194         (textint.digits): Use size_t rather than int.
31195         (BILLION, LOG10_BILLION): New constants.
31196         (parser_control): New member rel_ns.  Members day_ordinal,
31197         time_zone, month, day, hour, minutes, rel_year, rel_month,
31198         rel_day, rel_hour, rel_minutes, rel_seconds
31199         are now long int, not int.  Member seconds is now struct timespec,
31200         not int.  New member timespec_seen.  Members dates_seen, days_seen,
31201         local_zones_seen, rels_seen, times_seen, zones_seen are now size_t,
31202         not int.
31203         (%union.intval): Now long int, not int.
31204         New member timespec.
31205         (tSDECIMAL_NUMBER, tUDECIMAL_NUMBER): New tokens.
31206         (seconds, signed_seconds, unsigned_seconds): New nonterminals.
31207         (spec): Now is a timespec or an item list.
31208         (timespec, items): New nonterminals.
31209         (time, rel, relunit, number, get_date):
31210         Add support for fractional seconds.
31211         (time): Fix bug: seconds weren't cleared in "00:00 +0000" syntax.
31212         (gmtime, localtime, mktime): Remove decls; not needed with C89.
31213         (to_hour): First arg is now long int, not int.
31214         (to_year): Returns long int, not int.
31215         Don't treat year -70 like 70.
31216         (tm_diff): Returns long int, not int.
31217         (lookup_word): Use bool instead of int when appropriate.
31218         (yylex): Use size_t for count, not int.
31219         Detect overflow when parsing large integer constants.
31220         Add support for fractions.
31221         (get_date): Make pointers 'const' if possible.
31222         Use more-portable code to detect integer overflow.
31223         (main) [TEST]: Adjust to above changes.  Test for localtime failure.
31224         Don't use ctime; it's not reliable if the year has >4 digits.
31225
31226         * lib/human.c (humblock): Inspect BLOCKSIZE if BLOCK_SIZE isn't set.
31227         This is for compatibility with BSD.
31228
31229         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP): Define.
31230         (ATIME_CMP, CTIME_CMP, MTIME_CMP, TIMESPEC_NS): Likewise.
31231         From coreutils' system.h.
31232
31233         * lib/userspec.c: Don't include "posixver.h".
31234         (parse_user_spec): Fall back on USER.GROUP parsing, regardless
31235         of POSIX version, as POSIX 1003.1-2001 allows that behavior as a
31236         compatible extension.  Simplify code by removing a boolean int
31237         that was always nonzero if a string was nonnull.
31238
31239 2004-03-30  Jim Meyering  <jim@meyering.net>
31240
31241         Merge from coreutils.
31242
31243         Avoid a configure-time warning about sys/ucred.h on OSF V4.0.
31244         * m4/ls-mntd-fs.m4: Test for sys/ucred.h separately, since
31245         on some systems one must include <grp.h> before it.
31246         Reported by Christian Krackowizer.
31247
31248 2004-03-30  Jim Meyering  <jim@meyering.net>
31249
31250         Merge from coreutils.
31251
31252         * lib/mountlist.c [HAVE_SYS_UCRED_H]: Include grp.h before sys/ucred.h.
31253
31254         * lib/readtokens.c (readtoken): Don't leak 64 bytes when reading
31255         an empty input stream.
31256
31257         * lib/readtokens.c: Include <stdbool.h>.
31258         (readtoken): Use `size_t' rather than int/long.
31259         All callers adjusted.
31260         Use `bool' rather than `int' where appropriate.
31261         Use memset rather than an explicit loop.
31262         Use x2nrealloc rather than xrealloc.
31263         Allow the use of `\0' as a delimiter.
31264         (readtokens): Likewise.
31265         * lib/readtokens.h (readtoken, readtokens): Update prototypes.
31266
31267 2004-03-30  Jim Meyering  <jim@meyering.net>
31268
31269         * m4/realloc.m4: Remove file, since now it does no more than
31270         AC_REQUIRE([AC_FUNC_REALLOC]), and that can be done via
31271         the `configure.ac' section of module/realloc.
31272         * m4/malloc.m4: Likewise, but for AC_FUNC_MALLOC.
31273
31274 2004-03-30  Bruno Haible  <bruno@clisp.org>
31275
31276         * lib/getloadavg.c (getloadavg): Don't assume setlocale returns
31277         nonnull.
31278
31279 2004-03-29  Paul Eggert  <eggert@twinsun.com>
31280
31281         Merge changes to getloadavg.c from coreutils and Emacs.
31282
31283         * lib/getloadavg.c [!defined HAVE_SETLOCALE] (setlocale):
31284         Define to an expression, not to the empty string.
31285         Include cloexec.h and xalloc.h.
31286         (getloadavg): Restore LC_NUMERIC locale after setting it temporarily.
31287         Use set_cloexec_flag rather than rolling our own.
31288         * lib/cloexec.c, lib/cloexec.h: New files.
31289
31290 2004-03-29  Paul Eggert  <eggert@twinsun.com>
31291
31292         * m4/cloexec.m4: New file.
31293
31294 2004-03-18  Paul Eggert  <eggert@twinsun.com>
31295
31296         * lib/getopt.h: Sync with libc CVS.
31297
31298 2004-03-18  Paul Eggert  <eggert@twinsun.com>
31299             Bruno Haible  <bruno@clisp.org>
31300
31301         * m4/mbswidth.m4 (gl_MBSWIDTH): Also test whether <wchar.h> declares
31302         mbswidth.
31303
31304 2004-03-18  Paul Eggert  <eggert@twinsun.com>
31305             Bruno Haible  <bruno@clisp.org>
31306
31307         * lib/mbswidth.h: Include <wchar.h> only if
31308         HAVE_DECL_MBSWIDTH_IN_WCHAR_H, not on all platforms that have
31309         <wchar.h>.
31310         * lib/mbswidth.c: Include <stdio.h> and <time.h> before <wchar.h>.
31311
31312 2004-03-09  Paul Eggert  <eggert@twinsun.com>
31313
31314         * lib/argp-parse.c, getopt.c, getopt.h, getopt1.c:
31315         Sync with libc CVS.
31316         * lib/getopt_int.h: New file, also synced from libc.
31317
31318 2004-03-09  Paul Eggert  <eggert@twinsun.com>
31319
31320         * config/srclistvars.sh: Add GNUWWWLICENSES for eggert.
31321         * config/srclist.txt: Sync getopt with libc.  Add getopt_int.h.
31322         Bring back getopt.c, getopt.h, getopt1.c.
31323
31324 2004-03-07  Paul Eggert  <eggert@twinsun.com>
31325
31326         * m4/c-stack.m4 (gl_PREREQ_C_STACK): Renamed from jm_PREREQ_C_STACK.
31327         All uses changed.  Check for sa_sigaction member; this fixes
31328         a bug first reported by Jason Andrade in
31329         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
31330
31331 2004-03-07  Paul Eggert  <eggert@twinsun.com>
31332
31333         * lib/c-stack.c (SIGACTION_WORKS): New macro.  Use it instead of long
31334         '#if' expressions.  Unlike the code it replaces, it does not
31335         depend on (defined _SC_PAGESIZE).  However, it does depend on
31336         HAVE_STRUCT_SIGACTION_SA_SIGACTION; this last change fixes a bug
31337         first reported by Jason Andrade in
31338         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
31339
31340 2004-02-25  Simon Josefsson  <jas@extundo.com>
31341
31342         * m4/strdup.m4 (gl_PREREQ_STRDUP): Check whether strdup is declared.
31343
31344 2004-02-25  Simon Josefsson  <jas@extundo.com>
31345
31346         * lib/strdup.h: New file.
31347         * lib/strdup.c: Include it.
31348         * lib/path-concat.c: Include strdup.h. Drop strdup declaration.
31349         * lib/userspec.c: Include strdup.h. Drop strdup declaration.
31350
31351 2004-02-23  Karl Berry  <karl@gnu.org>
31352
31353         * doc/maintain.texi, doc/standards.texi, doc/make-stds.texi: new files
31354         (from fencepost.gnu.org:/gd/gnuorg).
31355
31356 2004-02-23  Karl Berry  <karl@gnu.org>
31357
31358         * config/srclistvars.sh (GNUORG) [karl]: redefine.
31359         * config/srclist.txt: add maintain/standards documents.
31360
31361 2004-02-18  Bruno Haible  <bruno@clisp.org>
31362
31363         * m4/xsize.m4 (gl_XSIZE): Require AC_C_INLINE.
31364         Reported by Derek Robert Price <derek@ximbiot.com>.
31365
31366 2004-02-16  Karl Berry  <karl@gnu.org>
31367
31368         * config/mkinstalldirs, install-sh: update from automake.
31369
31370 2004-02-06  Karl Berry  <karl@gnu.org>
31371
31372         * m4/po.m4: update from gettext 0.14.1.
31373
31374 2004-02-06  Karl Berry  <karl@gnu.org>
31375
31376         * lib/config.charset: update from gettext 0.14.1.
31377
31378 2004-02-05  Paul Eggert  <eggert@twinsun.com>
31379
31380         Add comments and code, prompted by suggestions from Bruno Haible
31381         for sh-quote.
31382         * lib/quotearg.h (quotearg_alloc): New decl.  Improve the comments
31383         describing the enum quoting_style values.
31384         * lib/quotearg.c (quotearg_alloc): New function.
31385         (quotearg_buffer_restyled): Treat lone { and } as special.
31386         Treat = as special.  Work around bug with older shells
31387         that "see" a '\' that is really the 2nd byte of a multibyte char.
31388         Quote empty string with shell_quoting_style.
31389
31390 2004-02-03  Bruno Haible  <bruno@clisp.org>
31391
31392         * m4/pipe.m4: New file, from GNU gettext.
31393
31394 2004-02-03  Bruno Haible  <bruno@clisp.org>
31395
31396         * lib/pipe.h: New file, from GNU gettext.
31397         * lib/pipe.c: New file, from GNU gettext.
31398
31399 2004-01-27  Bruno Haible  <bruno@clisp.org>
31400
31401         * m4/execute.m4: New file, from GNU gettext.
31402
31403 2004-01-27  Bruno Haible  <bruno@clisp.org>
31404
31405         * lib/execute.h: New file, from GNU gettext.
31406         * lib/execute.c: New file, from GNU gettext.
31407         * lib/w32spawn.h: New file, from GNU gettext.
31408
31409 2004-01-24  Paul Eggert  <eggert@twinsun.com>
31410
31411         Merge from diffutils.
31412
31413         * lib/file-type.c (file_type): Add typed memory objects.
31414         * lib/file-type.h (S_TYPEISTMO): New macro.
31415
31416         * lib/c-stack.h (c_stack_action): Remove argv argument.
31417         * lib/c-stack.c (c_stack_action): Likewise.  All uses changed.
31418         (die): Don't calculate message unless segv_action returns.
31419         (get_stack_location, min_address_from_argv, max_address_from_argv,
31420         volatile stack_base, volatile_stack_size): Remove.
31421         (segv_handler): If ! HAVE_XSI_STACK_OVERFLOW_HEURISTIC, assume
31422         that every segmentation violation is a stack overflow.  (Ouch!)
31423         See Debian bug 136249 (still outstanding) for more info about why
31424         HAVE_XSI_STACK_OVERFLOW_HEURISTIC fails on Linux kernels.
31425
31426 2004-01-24  Paul Eggert  <eggert@twinsun.com>
31427
31428         Exit-status fix from coreutils.
31429
31430         Use exit_failure consistently in place of EXIT_FAILURE,
31431         so that program exit statuses are consistent on failure.
31432
31433         * lib/argmatch.c (ARGMATCH_DIE) [! defined ARGMATCH_DIE]:
31434         Include "exitfail.h", and use exit_failure rather than EXIT_FAILURE.
31435         * lib/argmatch.h: Comment fix to match the above.
31436         * lib/obstack.c (obstack_exit_failure) [!defined _LIBC]:
31437         Now a macro referring to exit_failure, instead of a separate
31438         variable.  Include "exitfail.h" to get it.
31439         * lib/xstrtol.h: Include "exitfail.h".
31440         (STRTOL_FATAL_ERROR): Exit with status exit_failure, not 2.
31441
31442         * lib/long-options.c (parse_long_options): Use prototype
31443         for usage function arg.  Pass it EXIT_SUCCESS rather than 0,
31444         for clarity.
31445
31446 2004-01-21  Jim Meyering  <jim@meyering.net>
31447
31448         * lib/mktime.c (__mktime_internal) [!_LIBC]: Define to mktime_internal
31449         so as not to conflict with a different-sized __mktime_internal
31450         function in GNU libc.
31451         * lib/timegm.c (__mktime_internal) [!_LIBC]: Likewise.
31452         Problem building statically-linked `ls' reported by Michael Brunnbauer.
31453
31454 2004-01-20  Karl Berry  <karl@gnu.org>
31455
31456         * config/config.guess: update from config.
31457
31458         * config/srclistvars.sh: GNUWWWLICENSES for karl.
31459
31460 2004-01-20  Bruno Haible  <bruno@clisp.org>
31461
31462         Safer stack allocation.
31463         * lib/setenv.c: Include allocsa.h.
31464         (alloca): Remove fallback definition.
31465         (freea): Remove macro.
31466         (__add_to_environ) [!_LIBC]: Use allocsa instead of alloca. Use freesa
31467         instead of freea.
31468
31469 2004-01-20  Bruno Haible  <bruno@clisp.org>
31470
31471         * m4/eealloc.m4: New file, from GNU gettext.
31472
31473 2004-01-20  Bruno Haible  <bruno@clisp.org>
31474
31475         * m4/allocsa.m4: New file, from GNU gettext.
31476
31477 2004-01-20  Bruno Haible  <bruno@clisp.org>
31478
31479         * lib/xallocsa.h: New file, from GNU gettext.
31480         * lib/xallocsa.c: New file, from GNU gettext.
31481
31482 2004-01-20  Bruno Haible  <bruno@clisp.org>
31483
31484         * lib/wait-process.c: On Windows, include windows.h. Needed on mingw.
31485
31486 2004-01-20  Bruno Haible  <bruno@clisp.org>
31487
31488         * lib/wait-process.c (wait_subprocess): Add ignore_sigpipe argument.
31489         * lib/wait-process.c (wait_subprocess): Likewise. Handle SIGPIPE
31490         specially.
31491
31492 2004-01-20  Bruno Haible  <bruno@clisp.org>
31493
31494         * lib/wait-process.c (wait_process): Disable the 2003-10-31 waitid()
31495         patch.
31496
31497 2004-01-20  Bruno Haible  <bruno@clisp.org>
31498
31499         * lib/wait-process.c (cleanup_slaves): Use ANSI C declaration.
31500
31501 2004-01-20  Bruno Haible  <bruno@clisp.org>
31502
31503         * lib/eealloc.h: New file.
31504
31505 2004-01-20  Bruno Haible  <bruno@clisp.org>
31506
31507         * lib/binary-io.h: Avoid warnings on Cygwin.
31508
31509 2004-01-20  Bruno Haible  <bruno@clisp.org>
31510
31511         * lib/allocsa.h: New file, from GNU gettext.
31512         * lib/allocsa.c: New file, from GNU gettext.
31513
31514 2004-01-18  Karl Berry  <karl@gnu.org>
31515
31516         * doc/gpl.texi, doc/lgpl.texi: new files.
31517
31518 2004-01-18  Karl Berry  <karl@gnu.org>
31519
31520         * config/srclistvars.sh (GNUWWWLICENSES): new variable.
31521         * config/srclist.txt ({fdl,gpl,lgpl}.text): get from there.
31522
31523 2004-01-15  Paul Eggert  <eggert@twinsun.com>
31524
31525         Merge from coreutils.
31526
31527         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for uintptr_t.
31528         * m4/posixver.m4 (gl_POSIXVER): Require gl_DEFAULT_POSIX2_VERSION.
31529         (gl_DEFAULT_POSIX2_VERSION): Move
31530         the documentation from 'configure' into 'config.hin',
31531         so that 'configure --help' isn't burdened by it and
31532         we don't have to worry about its formatting there.
31533         Reword the documentation so that it's more succinct
31534         and can be run together into a single paragraph.
31535         * m4/same.m4 (gl_SAME): Check for pathconf.
31536
31537 2004-01-15  Paul Eggert  <eggert@twinsun.com>
31538
31539         Merge from coreutils.
31540
31541         * lib/posixver.c: Include posixver.h.
31542
31543         * lib/same.c: Include <stdbool.h>, <limits.h>.
31544         (_POSIX_NAME_MAX): Define if not defined.
31545         (MIN): New macro.
31546         (same_name): If file names are silently truncated, report
31547         that the file names are the same if they are the same after
31548         the silent truncation.
31549
31550         * lib/xstrtod.h (xstrtod): Accept an extra arg, specifying the
31551         conversion function.
31552         * lib/xstrtod.c (xstrtod): Likewise.  All callers changed to
31553         include c-strtod.h and use c_strtod.  Don't include stdlib.h; no
31554         longer needed.
31555
31556 2004-01-15  Jim Meyering  <jim@meyering.net>
31557
31558         Merge from coreutils.
31559
31560         * m4/clock_time.m4 (gl_CLOCK_TIME): Don't set LIB_CLOCK_GETTIME
31561         if no library is required.
31562         * m4/jm-macros.m4: Don't require UTILS_SYS_OPEN_MAX.
31563         * m4/jm-macros.m4 (jm_MACROS): Require gl_FUNC_FREE.
31564         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.58.
31565         (AC_LANG_SOURCE): Remove definition, now that we require autoconf-2.58.
31566         * m4/jm-macros.m4 (jm_MACROS): Don't require AC_FUNC_FTW.
31567         * m4/lib-check.m4 (jm_LIB_CHECK): Do not set LIB_CRYPT to the
31568         value, $ac_cv_search_crypt, if it's "none required".
31569         * m4/posixver.m4 (gl_DEFAULT_POSIX2_VERSION): New macro.
31570         * m4/prereq.m4 (jm_PREREQ): Require AC_FUNC_GETLOADAVG,
31571         not gl_FUNC_GETLOADAVG.
31572         * m4/prereq.m4 (jm_PREREQ): Require gl_READTOKENS, gl_MD5, gl_MAKEPATH,
31573         gl_LONG_OPTIONS, and gl_IDCACHE, gl_GETUGROUPS.
31574
31575 2004-01-15  Jim Meyering  <jim@meyering.net>
31576
31577         Merge from coreutils.
31578
31579         * lib/md5.h (rol) [__GNUC__ && __i386__]: Don't use `asm' code.  These
31580         days, gcc-3.x does better all by itself.  Patch from Dean Gaudet:
31581         http://mail.gnu.org/archive/html/bug-coreutils/2003-11/msg00144.html
31582
31583         * lib/posixver.c (DEFAULT_POSIX2_VERSION): Use definition of new,
31584         optional configure-time default.
31585
31586         * lib/version-etc.c (version_etc_copyright): Update copyright date.
31587
31588         * lib/xreadlink.c (xreadlink): Correct outdated comment.
31589
31590 2004-01-15  Alexandre Duret-Lutz  <adl@gnu.org>
31591
31592         Merge from coreutils.
31593
31594         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Do not set LIB_NANOSLEEP to the
31595         value, $ac_cv_search_nanosleep, if it's "none required".
31596
31597 2004-01-14  Paul Eggert  <eggert@twinsun.com>
31598
31599         * lib/fnmatch_loop.c (ALLOCA_LIMIT): Remove macro, which collided
31600         with like-named macro in fnmatch.c.
31601         (EXT): Use an internal constant instead.
31602
31603         Merge fnmatch patches from glibc.
31604         * lib/fnmatch.c (mbsinit): Remove define.
31605         Add libc_hidden_ver (__fnmatch, fnmatch).
31606         * lib/fnmatch_loop.c (FCT): Cast to int32_t and UCHAR when appropriate.
31607         Adjust to renaming of collseq_table_lookup to __collseq_table_lookup.
31608
31609 2004-01-14  Karl Berry  <karl@gnu.org>
31610
31611         * config/install-sh: update from automake.
31612
31613 2004-01-13  Karl Berry  <karl@gnu.org>
31614
31615         * config/install-sh: update from automake.
31616
31617 2004-01-09  Karl Berry  <karl@gnu.org>
31618
31619         * config/install-sh: update from automake.
31620
31621 2004-01-05  Karl Berry  <karl@gnu.org>
31622
31623         * config/config.{sub,guess}: update from config.
31624
31625 2003-12-31  Karl Berry  <karl@gnu.org>
31626
31627         * config/depcomp: update from automake.
31628
31629 2003-12-14  Karl Berry  <karl@gnu.org>
31630
31631         * lib/config.charset: update from gettext-runtime.
31632
31633 2003-12-03  Paul Eggert  <eggert@twinsun.com>
31634
31635         * lib/getgroups.c (getgroups): xmalloc takes one argument, not two.
31636         Bug reported by Alfred M. Szmidt.
31637
31638 2003-12-03  Bruno Haible  <bruno@clisp.org>
31639
31640         * m4/gettext.m4: Upgrade from gettext-0.13.
31641         * m4/po.m4: Upgrade from gettext-0.13.
31642         * m4/size_max.m4 (gl_SIZE_MAX): Don't use the _ONCE macros here.
31643         * m4/intmax.m4: New file, from gettext-0.13.
31644         * m4/printf-posix.m4: New file, from gettext-0.13.
31645
31646 2003-11-29  Karl Berry  <karl@gnu.org>
31647
31648         * lib/argp-{help.c,parse.c,namefrob.h}, argp.h: update from libc.
31649
31650 2003-11-25  Paul Eggert  <eggert@twinsun.com>
31651             Bruno Haible  <bruno@clisp.org>
31652
31653         * lib/printf-parse.h: Don't include sys/types.h.
31654         (ARG_NONE): New macro.
31655         (char_directive): Change type of *arg_index fields to size_t.
31656         * lib/printf-parse.c: Don't include sys/types.h.
31657         (SSIZE_MAX): Remove macro.
31658         (PRINTF_PARSE): Change the type of the arg_index variables to size_t.
31659         Remove unnecessary overflow check.
31660         * lib/vasnprintf.c (VASNPRINTF): Update for type change of *arg_index
31661         fields.
31662
31663 2003-11-25  Bruno Haible  <bruno@clisp.org>
31664
31665         * modules/vasnprintf (Files): Remove m4/ssize_t.m4.
31666
31667 2003-11-25  Bruno Haible  <bruno@clisp.org>
31668
31669         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Don't require
31670         gt_TYPE_SSIZE_T.
31671
31672 2003-11-24  Paul Eggert  <eggert@twinsun.com>
31673
31674         * modules/alloca: Remove dependency on xalloc.
31675
31676 2003-11-24  Paul Eggert  <eggert@twinsun.com>
31677
31678         * lib/alloca.c: Remove dependency on xalloc module.
31679         (xalloc_die): Remove.
31680         (memory_full) [!defined emacs]: New macro.
31681         [!defined emacs]: Don't include xalloc.h.
31682         (alloca): Invoke memory_full, not xalloc_die, if malloc fails or
31683         address arithmetic overflows.  Change datatypes a bit to avoid
31684         unnecessary casts.
31685
31686 2003-11-22  Jim Meyering  <jim@meyering.net>
31687
31688         * lib/xmalloc.c (x2nrealloc_inline): Fix typos in comments:
31689         s/size/size_t/.
31690
31691 2003-11-21  Karl Berry  <karl@gnu.org>
31692
31693         * config/config.{sub,guess}: update from config.
31694
31695 2003-11-18  Karl Berry  <karl@gnu.org>
31696
31697         * config/config.{sub,guess}: update from config.
31698
31699         * config/(printf-{parse,args}.[ch]): sync broken, sigh.
31700
31701 2003-11-17  Paul Eggert  <eggert@twinsun.com>
31702
31703         * README: Mention that S+T cannot overflow if S is the size of
31704         an existing object and T is sufficiently small.
31705
31706 2003-11-17  Jim Meyering  <jim@meyering.net>
31707
31708         On systems without utime and without a utimes function capable of
31709         dealing with a NULL struct utimbuf* argument, this utime replacement
31710         could -- in unusual circumstances -- leak a file descriptor.
31711         * lib/utime.c: Include <unistd.h> and <errno.h>.
31712         (utime_null): Be sure to close `fd' and to preserve errno.
31713         Reported by Geoff Collyer via Arnold Robbins.
31714
31715 2003-11-17  Bruno Haible  <bruno@clisp.org>
31716
31717         * modules/vasnprintf (Files): Add m4/ssize_t.m4.
31718         (Depends-on): Add xsize.
31719
31720 2003-11-17  Bruno Haible  <bruno@clisp.org>
31721
31722         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Require gt_TYPE_SSIZE_T.
31723
31724 2003-11-17  Bruno Haible  <bruno@clisp.org>
31725
31726         * lib/vasnprintf.c (alloca): Remove fallback definition.
31727         (freea): Remove definition.
31728         (VASNPRINTF): Use alloca only for small sizes, say <= 4000 bytes.
31729         Reported by Paul Eggert.
31730
31731 2003-11-16  Paul Eggert  <eggert@twinsun.com>
31732             Bruno Haible  <bruno@clisp.org>
31733
31734         Protect against address arithmetic overflow.
31735         * lib/printf-args.h: Include stddef.h.
31736         (arguments): Change type of field 'count' to size_t.
31737         * lib/printf-args.c (printf_fetchargs): Use size_t instead of
31738         'unsigned int' where appropriate.
31739         * lib/printf-parse.h: Include sys/types.h.
31740         (char_directive): Change type of *arg_index fields to ssize_t.
31741         (char_directives): Change type of fields 'count', max_*_length to
31742         size_t.
31743         * lib/printf-parse.c: Include sys/types.h and xsize.h.
31744         (SSIZE_MAX): Define fallback value.
31745         (PRINTF_PARSE): Use size_t instead of 'unsigned int' and ssize_t
31746         instead of 'int' where appropriate. Check a_allocated, d_allocated
31747         against overflow. Reject %m$ argument numbers > SSIZE_MAX + 1.
31748         * lib/vasnprintf.c: Include xsize.h.
31749         (VASNPRINTF): Use size_t instead of 'unsigned int' where appropriate.
31750         Check alloca, malloc, realloc, ENSURE_ALLOCATION arguments against
31751         overflow. Avoid wraparound when converting a width or precision from
31752         decimal to binary.
31753
31754 2003-11-16  Bruno Haible  <bruno@clisp.org>
31755
31756         Update from GNU gettext.
31757         * lib/printf-parse.c: Generalize to it can be compiled for wide
31758         strings.
31759         (PRINTF_PARSE, CHAR_T, DIRECTIVE, DIRECTIVES): New macros.
31760         * lib/vasnprintf.c: Generalize to it can be compiled for wide strings.
31761         (VASNPRINTF, CHAR_T, DIRECTIVE, DIRECTIVES, PRINTF_PARSE, USE_SNPRINTF,
31762         SNPRINTF): New macros.
31763         Don't include <alloca.h> if the file is used inside libintl.
31764         (local_wcslen): New function, for Solaris 2.5.1.
31765         (VASNPRINTF): Use it instead of wcslen.
31766
31767 2003-11-16  Bruno Haible  <bruno@clisp.org>
31768
31769         * lib/xsize.h (xmax): New function.
31770         (xsum, xsum3, xsum4): Declare as "pure" functions.
31771
31772 2003-11-12  Paul Eggert  <eggert@twinsun.com>
31773
31774         * modules/xalloc (Files): Undo latest change, since xalloc.h
31775         no longer needs SIZE_MAX or PTRDIFF_MAX.
31776
31777 2003-11-12  Paul Eggert  <eggert@twinsun.com>
31778
31779         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Do not require gl_SIZE_MAX or
31780         gl_PTRDIFF_MAX.
31781
31782 2003-11-12  Paul Eggert  <eggert@twinsun.com>
31783
31784         * lib/xstrtol.c (__xstrtol): Remove "break" immediately after
31785         "return", to pacify some unknown compiler.  Problem reported
31786         by Joerg Schilling.
31787
31788 2003-11-12  Paul Eggert  <eggert@twinsun.com>
31789
31790         * lib/xalloc.h: Do not include <limits.h> or <stdint.h>.
31791         (xalloc_oversized): Use sizeof (ptrdiff_t) and sizeof (size_t) for
31792         the heuristic, rather than PTRDIFF_MAX and SIZE_MAX.  This
31793         heuristic is just as accurate as far as we know, and it removes a
31794         dependency on size_max.m4 and ptrdiff_max.m4.
31795
31796 2003-11-11  Bruno Haible  <bruno@clisp.org>
31797
31798         * modules/xsize (Files): Add m4/size_max.m4.
31799         * modules/xalloc (Files): Add m4/size_max.m4, m4/ptrdiff_max.m4.
31800
31801 2003-11-11  Bruno Haible  <bruno@clisp.org>
31802
31803         * m4/size_max.m4: New file.
31804         * m4/ptrdiff_max.m4: New file.
31805         * m4/xsize,m4 (gl_XSIZE): Require gl_SIZE_MAX.
31806         * m4/xalloc.m4 (gl_PREREQ_XALLOC): New macro.
31807         (gl_XALLOC): Invoke it.
31808
31809 2003-11-11  Bruno Haible  <bruno@clisp.org>
31810
31811         * lib/xsize.h (SIZE_MAX): Remove fallback definition.
31812         * lib/xalloc.h: Include limits.h. Assume SIZE_MAX and PTRDIFF_MAX are
31813         defined.
31814
31815 2003-11-10  Paul Eggert  <eggert@twinsun.com>
31816
31817         * lib/xalloc.h (xalloc_oversized): [! (defined PTRDIFF_MAX &&
31818         PTRDIFF_MAX < SIZE_MAX)]: Fix off-by-one error that would have
31819         rejected some allocations of exactly SIZE_MAX - 2 bytes.
31820         From Bruno Haible.
31821         [defined PTRDIFF_MAX && PTRDIFF_MAX < SIZE_MAX]: Use SIZE_MAX,
31822         not (size_t) -1, since it's defined here.
31823
31824 2003-11-09  Karl Berry  <karl@gnu.org>
31825
31826         * config/mkinstalldirs, depcomp, mdate-sh: update from automake.
31827
31828 2003-11-06  Paul Eggert  <eggert@twinsun.com>
31829
31830         * lib/xalloc.h [HAVE_STDINT_H]: Include <stdint.h>.
31831         (xalloc_oversized) [! (PTRDIFF_MAX < SIZE_MAX)]:
31832         Reject sizes of exactly SIZE_MAX bytes.
31833         * lib/xreadlink.c: Include "xalloc.h" before checking whether SIZE_MAX
31834         is defined, since "xalloc.h" now defines SIZE_MAX on modern hosts.
31835
31836 2003-11-05  Bruno Haible  <bruno@clisp.org>
31837
31838         * lib/xsize.h: Include limits.h, to avoid a possible collision with
31839         SIZE_MAX defined in <limits.h> on Solaris.
31840
31841 2003-11-04  Jim Meyering  <jim@meyering.net>
31842
31843         * modules/sysexits: Use the `$(VAR)' notation for AC_SUBST'd
31844         variable names, rather than @VAR@.
31845         * modules/poll: Likewise.
31846
31847 2003-11-04  Bruno Haible  <bruno@clisp.org>
31848
31849         * modules/xsize: New file.
31850         * modules/linebreak: Depend on xsize.
31851         * MODULES.html.sh (func_all_modules): Add xsize.
31852
31853 2003-11-04  Bruno Haible  <bruno@clisp.org>
31854
31855         * m4/xsize.m4: New file.
31856
31857 2003-11-04  Bruno Haible  <bruno@clisp.org>
31858
31859         * lib/xsize.h: New file.
31860         * lib/linebreak.c: Include xsize.h.
31861         (mbs_possible_linebreaks, mbs_width_linebreaks): Check malloc()
31862         argument for overflow.
31863         Suggested by Paul Eggert.
31864
31865 2003-11-03  Karl Berry  <karl@gnu.org>
31866
31867         * config/config.{guess,sub}: update from config.
31868
31869 2003-11-03  Jim Meyering  <jim@meyering.net>
31870
31871         * modules/userspec (lib_SOURCES): Add userspec.h.
31872         (Include): Add "userspec.h".
31873         Improve description.
31874
31875 2003-11-03  Jim Meyering  <jim@meyering.net>
31876
31877         * lib/userspec.c: Include "userspec.h".
31878         * lib/userspec.h: New file.
31879
31880 2003-11-03  Bruno Haible  <bruno@clisp.org>
31881
31882         * m4/wait-process.m4 (gl_WAIT_PROCESS): Also check for waitid.
31883
31884 2003-11-03  Bruno Haible  <bruno@clisp.org>
31885
31886         * lib/wait-process.c (wait_process): Use waitid with WNOWAIT if
31887         available, to avoid (extremely rare) race condition.
31888         Suggested by Paul Eggert.
31889
31890 2003-11-02  Karl Berry  <karl@gnu.org>
31891
31892         * config/srclist.txt (vasprintf.c): sync broken, sigh.
31893
31894 2003-10-31  Paul Eggert  <eggert@twinsun.com>
31895
31896         * lib/mountlist.h (struct mount_entry.me_type_malloced): New member.
31897         * lib/mountlist.c (SIZE_MAX): Define if not defined already.
31898         (read_filesystem_list): Set and use me_type_malloced.
31899         Use "sizeof *me" rather than "sizeof (struct mount_entry)" (or
31900         whatever the type happens to be), for brevity and consistency.
31901         Check for size calculation overflow on Alphas running OSF/1.
31902
31903 2003-10-31  Jim Meyering  <jim@meyering.net>
31904
31905         * lib/hash.c: Include "xalloc.h" for use of xalloc_oversized.
31906
31907         * lib/linebuffer.c: Include <string.h> for declaration of memset.
31908
31909 2003-10-30  Paul Eggert  <eggert@twinsun.com>
31910             Bruno Haible  <bruno@clisp.org>
31911
31912         * lib/vasprintf.c: Include <limits.h>, <stdlib.h>.
31913         (vasprintf): Fail if the resulting length doesn't fit in an 'int'.
31914
31915 2003-10-30  Paul Eggert  <eggert@cs.ucla.edu>
31916
31917         * m4/host-os.m4 (UTILS_HOST_OS): Change netbsd*-gnu pattern back to
31918         netbsd*-gnu*.  Suggested by Robert Millan.
31919
31920 2003-10-29  Paul Eggert  <eggert@twinsun.com>
31921
31922         * modules/group-member: Depend on stdbool.
31923
31924 2003-10-29  Paul Eggert  <eggert@twinsun.com>
31925
31926         * m4/xalloc.m4 (gl_XALLOC): Undo previous change.
31927
31928 2003-10-29  Paul Eggert  <eggert@twinsun.com>
31929
31930         * m4/host-os.m4 (UTILS_HOST_OS): Resurrect netbsd*-gnu.  Add comments
31931         to it, and to knetbsd*-gnu and kfreebsd*-gnu.  Remove the '*' from
31932         after the 'gnu' in these cases.  This fixes some bugs in the
31933         previous change, and is based on suggestions by Robert Millan.
31934
31935 2003-10-29  Paul Eggert  <eggert@twinsun.com>
31936
31937         * lib/xalloc.h (xalloc_oversized): Now a macro, not a function,
31938         so that it works even if SIZE_MAX < N.  Do not include <stdbool.h>;
31939         no longer needed.
31940         * lib/quotearg.c (quotearg_n_options): Use it.
31941         * lib/group-member.c: Include <stdbool.h>.
31942         (free_group_info): Arg is now const *; don't free arg.
31943         (get_group_info): Now returns bool and accepts struct group_info *,
31944         rather than returning a malloc'ed struct group_info *.
31945         All uses changed.  Check for overflow in internal size calculation.
31946
31947         * lib/getusershell.c (readname): Simplify the code by using x2nrealloc
31948         rather than xmalloc/xrealloc.
31949         * lib/linebuffer.c (initbuffer, readlinebuffer): Simplify the code by
31950         using x2realloc rather than xmalloc/xrealloc.  Also, fix a C
31951         conformance bug: the old code used a pointer after freeing the
31952         storage that it addressed.
31953         * lib/hash.c (hash_initialize): Simplify the code by using
31954         xalloc_oversized rather than doing it by hand.
31955         * lib/getgroups.c (getgroups): Don't use xrealloc, since we don't need
31956         the buffer preserved.  Use free and xmalloc instead.
31957         * lib/quotearg.c (quotearg_n_options): Likewise.
31958         Use a simpler test for size overflow.  Don't use xalloc_oversized
31959         because unsigned int might be wider than size_t (!); this suggests
31960         that we should switch from unsigned int to size_t for slot numbers.
31961
31962 2003-10-28  Paul Eggert  <eggert@twinsun.com>
31963
31964         * m4/host-os.m4 (UTILS_HOST_OS): Identify GNU/KFreeBSD and
31965         GNU/KNetBSD.  These implementations use glibc atop the FreeBSD and
31966         NetBSD kernels.  Requested by Richard Stallman.
31967
31968 2003-10-27  Paul Eggert  <eggert@twinsun.com>
31969
31970         * lib/exclude.c (new_exclude): Use xzalloc rather than xmalloc
31971         to allocate the returned structure.  Do not allocate a subarray,
31972         as x2nrealloc will do that.
31973         (add_exclude): Use x2nrealloc to reallocate ex->exclude,
31974         instead of xnrealloc.
31975         (add_exclude_file): Use x2realloc instead of malloc + xnrealloc.
31976
31977 2003-10-27  Bruno Haible  <bruno@clisp.org>
31978
31979         * lib/stdbool_.h: Better support for BeOS.
31980
31981 2003-10-26  Paul Eggert  <eggert@twinsun.com>
31982
31983         * m4/xalloc.m4 (gl_XALLOC): Requore AC_C_INLINE, since xalloc.h
31984         now uses inline.
31985
31986 2003-10-26  Paul Eggert  <eggert@twinsun.com>
31987
31988         * lib/xalloc.h (xalloc_oversized): New static inline function, for
31989         callers that want to do their own size-overflow checking.  Include
31990         <stdbool.h>, since xalloc_oversized returns bool.
31991         * lib/xalloc.c (array_size_overflow): Remove.  All callers changed
31992         to use xalloc_oversized.
31993
31994         Add two functions x2realloc, x2nrealloc, for programs that grow
31995         arrays dynamically by doubling their sizes.
31996         * lib/xalloc.h (x2realloc, x2nrealloc): New decls.
31997         * lib/xmalloc.c (x2nrealloc_inline, x2nrealloc, x2realloc):
31998         New functions.
31999
32000         Port to C99 semantics for 'inline' of external functions.
32001         Bug reported by Bruno Haible.
32002         * lib/xmalloc.c (xnmalloc_inline): New static inline function,
32003         with the old contents of xnmalloc.
32004         (xnmalloc, xmalloc): Use it.
32005         (xnrealloc_inline): New static inline function,
32006         with the old contents of xnrealloc.
32007         (xnrealloc, xrealloc): Use it.
32008
32009         * lib/alloc.c (alloca): xmalloc cannot return NULL, so don't test for
32010         that.
32011
32012 2003-10-26  Karl Berry  <karl@gnu.org>
32013
32014         * config/srclist.txt (COPYING.DOC): no longer available from
32015         /gd/gnuorg; don't know where the ultimate source is.
32016
32017 2003-10-25  Paul Eggert  <eggert@twinsun.com>
32018
32019         Fix several address-calculation bugs in the hash modules,
32020         plus some minor code cleanup.
32021
32022         * lib/hash.h: Include <stdbool.h>, for bool.
32023         * lib/hash.c: Don't include <stdbool.h>, since hash.h does it now.
32024         * lib/hash.h (Hash_hasher, hash_get_n_buckets, hash_get_n_buckets_used,
32025         hash_get_n_entries, hash_get_max_bucket_length,
32026         hash_get_entries, hash_do_for_each, hash_string, hash_initialize,
32027         hash_rehash): Use size_t rather than unsigned.
32028         * lib/hash.c (struct hash_table, hash_get_n_buckets,
32029         hash_get_n_buckets_used, hash_get_n_entries,
32030         hash_get_max_bucket_length, hash_table_ok, hash_print_statistics,
32031         hash_get_entries, hash_do_for_each, hash_string, is_prime,
32032         next_prime, hash_initialize, hash_rehash, hash_delete, hash_print):
32033         Likewise.
32034         (SIZE_MAX): Define if not defined.
32035         (hash_get_max_bucket_length, hash_table_ok, hash_lookup,
32036         hash_get_first, hash_get_next, hash_get_entries, hash_do_for_each,
32037         hash_print):
32038         Use const * when possible.
32039         (hash_string): Use (unsigned char) *P rather than *(unsigned char *) P.
32040         (check_tuning): Fix bug: if tuning parameters were very close to
32041         0 or 1, rounding errors could have caused subscript violations.
32042         (hash_initialize, allocate_entry, hash_print): Remove unnecessary cast.
32043         (hash_initialize): Add 'fail:' label
32044         to free table and return NULL, and use it to simplify code.
32045         Use calloc rather than clearing the storage ourself.
32046         (hash_initialize, hash_rehash): Check for arithmetic overflow in
32047         buffer size calculations.
32048         * lib/hash-pjw.h (hash_pjw): Use size_t, not unsigned.
32049         Include <stddef.h>, for size_t.
32050         * lib/hash-pjw.c (hash_pjw): Likewise.
32051         Switch to method described by Bruno Haible.
32052         Include <limits.h>, for CHAR_BIT.
32053         (SIZE_BITS): New macro.
32054
32055 2003-10-23  Paul Eggert  <eggert@twinsun.com>
32056
32057         * m4/getline.m4 (AM_FUNC_GETLINE):
32058         Don't include getndelim2.o twice into LIBOBJS; this breaks on some
32059         hosts.  Problem reported by Derek Robert Price in
32060         <http://mail.gnu.org/archive/html/bug-gnulib/2003-10/msg00092.html>.
32061         This patch can be withdrawn after Autoconf 2.58 is required for gnulib.
32062         * m4/getndelim2.m4 (gl_GETNDELIM2): Likewise.
32063
32064 2003-10-21  Paul Eggert  <eggert@twinsun.com>
32065
32066         * lib/getndelim2.c (getndelim2): When size calculation overflows,
32067         ceiling the allocation at NMAX bytes rather than silently
32068         discarding input bytes before NMAX is reached.  This makes
32069         a difference only if NMAX exceeds SIZE_MAX / 2.
32070
32071         * lib/obstack.c: Merge from glibc.
32072         [defined _LIBC]: Include <obstack.h>, not "obstack.h".
32073         Add libc_hidden_def (_obstack_newchunk).
32074         (_obstack_free) [! defined _LIBC]: Remove.
32075         [defined _LIBC]: Make a strong alias from obstack_free, rather than
32076         a clone of the function body.
32077         (fputs) [defined _LIBC && defined USE_IN_LIBIO]: Remove.
32078         [defined _LIBC && !defined USE_IN_LIBIO]: Include <libio/iolibio.h>.
32079
32080         * lib/obstack.h: Indenting cleanup, to make it easier to merge with
32081         glibc.
32082         (obstack_grow, obstack_grow0): Remove unnecessary parentheses around
32083         arg to memcpy.
32084
32085         * lib/obstack.h (obstack_1grow_fast): Properly parenthesize arg.
32086         (obstack_ptr_grow_fast, obstack_int_grow_fast):
32087         Don't use lvalue casts, as GCC plans to remove support for them
32088         in GCC 3.5.  Reported by Joseph S. Myers.  This bug
32089         was also present in the non-GCC version, indicating that this
32090         code had always been buggy and had never been widely used.
32091         (obstack_1grow, obstack_ptr_grow, obstack_int_grow, obstack_blank):
32092         Use the fast variant of each macro, rather than copying the
32093         definiens of the fast variant; that way, we'll be more likely to
32094         catch future bugs in the fast variants.
32095
32096 2003-10-20  Bruno Haible  <bruno@clisp.org>
32097
32098         * modules/wait-process: New file.
32099         * MODULES.html.sh (func_all_modules): Add wait-process.
32100
32101 2003-10-20  Bruno Haible  <bruno@clisp.org>
32102
32103         * m4/wait-process.m4: New file.
32104
32105 2003-10-20  Bruno Haible  <bruno@clisp.org>
32106
32107         * lib/wait-process.h: New file, from GNU gettext.
32108         * lib/wait-process.c: New file, from GNU gettext.
32109
32110 2003-10-19  Jim Meyering  <jim@meyering.net>
32111
32112         * lib/vasnprintf.c (vasnprintf): Work around losing snprintf on
32113         HPUX 10.20.
32114
32115 2003-10-18  Karl Berry  <karl@gnu.org>
32116
32117         * config/config.guess: update from config.
32118
32119 2003-10-16  Paul Eggert  <eggert@twinsun.com>
32120
32121         * lib/getgroups.c: Include <errno.h>, <stdlib.h>.
32122         (getgroups): First arg is int, not size_t.
32123         Don't let 'free' mangle errno.
32124
32125 2003-10-16  Paul Eggert  <eggert@twinsun.com>
32126
32127         * README: Mention that gnulib assumes that (foo *) NULL + 0 == NULL.
32128
32129 2003-10-16  Karl Berry  <karl@gnu.org>
32130
32131         * config/config.{guess,sub}: update from config.
32132
32133 2003-10-16  Jim Meyering  <jim@meyering.net>
32134
32135         * lib/xmalloc.c: Include <string.h>, for declarations of memset and
32136         memcpy.
32137
32138 2003-10-15  Paul Eggert  <eggert@twinsun.com>
32139
32140         * lib/exclude.c: Do not include <inttypes.h> or <stdint.h>.
32141         (SIZE_MAX): Remove.
32142         (new_exclude, add_exclude_file): Initial size no longer needs to
32143         be a power of 2.
32144         (add_exclude, add_exclude_file): Use xnrealloc instead of rolling
32145         our own address arithmetic overflow checking.
32146
32147         * lib/fnmatch.c (SIZE_MAX): Define if standard headers don't.
32148         (fnmatch): Do not alloca more than 2000 wide characters;
32149         instead, use malloc for large buffers.
32150         Check for address arithmetic overflow, and return -1
32151         with errno set to ENOMEM in that case.
32152         * lib/fnmatch_loop.c (ALLOCA_LIMIT): New macro.
32153         (NEW_PATTERN): Do not alloca more than 8000 bytes;
32154         instead, return -1.  Check for address arithmetic overflow.
32155
32156 2003-10-14  Paul Eggert  <eggert@twinsun.com>
32157
32158         Handle invalid suffixes and overflow independently, so that
32159         callers can treat them independently as needed.  Fix some bugs in
32160         suffix handling, e.g., "100k@" was not diagnosed as an invalid
32161         suffix for a human-readable blocksize.  The major caller-visible
32162         change is the addition of a new
32163         LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW enum value, indicating
32164         that both overflow and suffix chars were found.
32165
32166         * lib/human.c (humblock): Don't check separately for invalid suffix
32167         char; that is xstrtoumax's job (now that its bug is fixed).
32168         * lib/xstrtoimax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [defined
32169         INTMAX_MAX]: New macros.
32170         * lib/xstrtol.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM, TYPE_MINIMUM,
32171         TYPE_MAXIMUM): New macros.
32172         (bkm_scale, bkm_scale_by_power): Return strtol_error, not int.
32173         (bkm_scale, bkm_scale_by_power, __xstrtol): Return maximal values
32174         if overflow occurs, as it's what __strtol does and it's more useful
32175         in practice.
32176         (__xstrtol): If __strtol reports some error other than ERANGE,
32177         reflect it to the caller as LONGINT_INVALID.  If it reports
32178         ERANGE, continue the rest of parsing, and report LONGINT_OVERFLOW
32179         | LONGINT_INVALID_SUFFIX_CHAR if both errors occur.
32180         * lib/xstrtol.h (LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW): New enum
32181         value.
32182         (_STRTOL_ERROR): Handle it.  Abort when given unknown error codes.
32183         * lib/xstrtoul.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM): New macros.
32184         * lib/xstrtoumax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM)
32185         [defined UINTMAX_MAX]: New macros.
32186
32187 2003-10-14  Bruno Haible  <bruno@clisp.org>
32188
32189         * modules/fatal-signal: Add m4/sig_atomic_t.m4 to file list.
32190
32191 2003-10-14  Bruno Haible  <bruno@clisp.org>
32192
32193         * m4/sig_atomic_t: New file, from GNU gettext.
32194         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Require gt_TYPE_SIG_ATOMIC_T.
32195
32196 2003-10-14  Bruno Haible  <bruno@clisp.org>
32197
32198         * lib/fatal-signal.h: Improved comments. Suggested by Paul Eggert.
32199         * lib/fatal-signal.c: Use sig_atomic_t. Suggested by Paul Eggert.
32200         Also use volatile where needed.
32201
32202 2003-10-12  Paul Eggert  <eggert@twinsun.com>
32203
32204         * modules/xalloc: Do not depend on 'exit'.  Depend on 'stdbool'.
32205         Change maintainer from Bruno Haible to 'all'.
32206
32207 2003-10-12  Paul Eggert  <eggert@twinsun.com>
32208
32209         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Require AC_C_INLINE.
32210
32211 2003-10-12  Paul Eggert  <eggert@twinsun.com>
32212
32213         * lib/xalloc.h (xnmalloc, xzalloc, xnrealloc, xclone): New decls.
32214         (XMALLOC, XCALLOC, XREALLOC, XFREE, CCLONE, CLONE): Deprecate,
32215         and define in terms of the other primitives.
32216         * lib/xmalloc.c: Include stdbool.h; do not include exit.h.
32217         (SIZE_MAX): Define if not already defined.
32218         (array_size_overflow): New function.
32219         (xalloc_die): Abort instead of exiting if 'error' returns.
32220         (xnmalloc, xnrealloc, xzalloc, xclone): New functions.
32221         (xmalloc, xrealloc): Use them.
32222         (xcalloc): Check for address arithmetic overflow.
32223         * lib/xstrdup.c (xstrdup): Use xclone, since memcpy should be
32224         a bit faster than strcpy.
32225
32226 2003-10-10  Simon Josefsson  <jas@extundo.com>
32227
32228         * modules/argp (Depends-on): Add restrict and strcase.
32229
32230 2003-10-10  Simon Josefsson  <jas@extundo.com>
32231
32232         * m4/argp.m4: Add AC_C_INLINE.
32233
32234 2003-10-08  Paul Eggert  <eggert@twinsun.com>
32235
32236         Merge getpass from libc, plus a few fixes.
32237
32238         * lib/getpass.c (HAVE_STDIO_EXT) [_LIBC]: Define to 1.
32239         Include <stdbool.h>.
32240         Include <stdio_ext.h> if HAVE_STDIO_H, otherwise define
32241         __fsetlocking to empty.
32242         [_LIBC]: Do not include "getline.h" or "unlocked-io.h", but
32243         do include <bits/libc-lock.h>.
32244         Do not include <fcntl.h>; not needed.
32245         [_LIBC]: Include <wchar.h>.
32246         (NOTCANCEL_MODE): New macro.
32247         (flockfile, funlockfile) [_LIBC]: New macros.
32248         (__libc_cleanup_push, __libc_cleanup_pop, __getline, __tcgetattr)
32249         [!_LIBC]: New macros.
32250         (call_fclose): New function.
32251         (getpass): Use it.  Save tty stream separately; this simplifies the
32252         code and makes it more reliable if stdin happens to equal stdout.
32253         Invoke __fsetlocking on tty.
32254         Handle thread cancellation if needed.
32255         Namespace cleanup (use __tcgetattr, __getline).
32256         Use bool for Booleans.
32257         [USE_IN_LIBIO]: Handle wide streams.
32258         [!_LIBC]: Unconditionally do the fseek, since we don't know what
32259         stream might go where.
32260
32261         * lib/unlocked-io.h: Include <stdio.h>, so that the caller
32262         doesn't have to include <stdio.h> before us.
32263         (clearerr_unlocked, feof_unlocked, ferror_unlocked,
32264         fflush_unlocked, fgets_unlocked, fputc_unlocked, fputs_unlocked,
32265         fread_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked,
32266         putc_unlocked, putchar_unlocked): Define to the unlocked counterpart
32267         if not declared, so that we can use getpass.c code from libc without
32268         rewriting it.
32269         (flockfile, ftrylockfile, funlockfile): New macros.
32270
32271 2003-10-08  Paul Eggert  <eggert@twinsun.com>
32272
32273         * modules/getpass: Depend on stdbool.
32274
32275 2003-10-08  Paul Eggert  <eggert@twinsun.com>
32276
32277         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for stdio_ext.h.
32278
32279 2003-10-07  Karl Berry  <karl@gnu.org>
32280
32281         * config/config.{guess,sub}: update from config.
32282
32283 2003-10-06  Jim Meyering  <jim@meyering.net>
32284             Bruno Haible  <bruno@clisp.org>
32285
32286         This lets translators provide better translations for the
32287         "Written by ..." part of --version output.
32288         * lib/version-etc.h: Include stdarg.h.
32289         (version_etc_copyright): Declare as readonly.
32290         (version_etc): Make this function variadic with a NULL-terminated list
32291         of author name strings.
32292         (version_etc_va): New declaration.
32293         * lib/version-etc.c: Include stdarg.h, stdlib.h.
32294         (version_etc_copyright): Declare as readonly.
32295         (version_etc_va): New function. Provide a different translatable string
32296         for each possible number of authors < 10. Abbreviate when there are 10
32297         authors or more.
32298         (version_etc): Make this function variadic. Call version_etc_va.
32299         Suggestion from Gary V. Vaughan.
32300
32301         * lib/long-options.h (parse_long_options): Change prototype: the
32302         authors string is moved to the end and becomes variadic.
32303         * lib/long-options.c: Include stdarg.h.
32304         (parse_long_options): Make this function variadic, too.
32305         Call version_etc_va, not version_etc.
32306
32307 2003-10-06  Bruno Haible  <bruno@clisp.org>
32308
32309         * modules/version-etc-2: Remove file.
32310         * MODULES.html.sh (func_all_modules): Remove version-etc-2.
32311
32312 2003-10-06  Bruno Haible  <bruno@clisp.org>
32313
32314         * modules/fatal-signal: New file.
32315         * MODULES.html.sh (func_all_modules): Add fatal-signal.
32316
32317 2003-10-06  Bruno Haible  <bruno@clisp.org>
32318
32319         * m4/fatal-signal.m4: New file.
32320         * m4/signalblocking.m4: New file, from GNU gettext.
32321
32322 2003-10-06  Bruno Haible  <bruno@clisp.org>
32323
32324         * lib/version-etc-2.h: Remove file.
32325         * lib/version-etc-2.c: Remove file.
32326
32327 2003-10-06  Bruno Haible  <bruno@clisp.org>
32328
32329         * lib/fatal-signal.h: New file, from GNU gettext.
32330         * lib/fatal-signal.c: New file, from GNU gettext.
32331
32332 2003-10-05  Paul Eggert  <eggert@twinsun.com>
32333
32334         * README: Rework advice for preventing empty .o files.
32335         Don't recommend ELIDE constructs.  Recommend <stddef.h>,
32336         not <sys/types.h>.
32337
32338 2003-10-04  Karl Berry  <karl@gnu.org>
32339
32340         * lib/argp*: update from libc.
32341
32342 2003-10-04  Karl Berry  <karl@gnu.org>
32343
32344         * config/config.{guess,sub}: update from config.
32345
32346 2003-10-02  Bruno Haible  <bruno@clisp.org>
32347
32348         * modules/lchown (Include): Add lchown.h.
32349         * modules/time_r (Include): Use "..." syntax.
32350         * modules/xgetdomainname (Include): Add xgetdomainname.h.
32351
32352 2003-10-01  Simon Josefsson  <jas@extundo.com>
32353
32354         * MODULES.html.sh (func_all_modules): Move gethostname from section
32355         'based on' to section 'lacking' POSIX:2001.
32356
32357 2003-10-01  Larry Jones  <lawrence.jones@eds.com>
32358
32359         * lib/getpass.c (getpass): Use a no-op fseek when switching from input
32360         to output mode on the same stream.
32361
32362 2003-09-29  Paul Eggert  <eggert@twinsun.com>
32363
32364         * lib/strftime.c (tm_diff) [! HAVE_TM_GMTOFF]:
32365         Fix arg typo in previous patch.
32366
32367 2003-09-28  Jim Meyering  <jim@meyering.net>
32368
32369         * lib/error.c: Correct cpp indentation.
32370
32371 2003-09-27  Paul Eggert  <eggert@twinsun.com>
32372
32373         * modules/free: New file.
32374
32375 2003-09-27  Paul Eggert  <eggert@twinsun.com>
32376
32377         * m4/free.m4: New file.
32378
32379 2003-09-27  Paul Eggert  <eggert@twinsun.com>
32380
32381         * lib/minmax.h (MIN, MAX)
32382         [__STDC__ && defined __GNUC__ && __GNUC__ >= 2]:
32383         Omit the special code that used __typeof__, since we worry that
32384         it could be more trouble than it's worth.  See:
32385         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00090.html
32386         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00095.html
32387
32388         * lib/free.c: New file.
32389
32390 2003-09-27  Oskar Liljeblad  <oskar@osk.mine.nu>
32391
32392         Trivial fixes to Makefile.am parts of module listings.
32393         * modules/strstr: Append strstr.h to lib_SOURCES.
32394         * modules/strcase: Likewise, for strcase.h.
32395
32396 2003-09-27  Karl Berry  <karl@gnu.org>
32397
32398         * config/mkinstalldirs: update from automake.
32399
32400 2003-09-26  Paul Eggert  <eggert@twinsun.com>
32401
32402         * lib/error.c (SIZE_MAX) [!defined SIZE_MAX]: Define.
32403         (error_tail): Do not loop, reallocating temporary buffer, since
32404         the output cannot contain more wide characters than the input
32405         contains bytes, the size must be big enough already.  This avoids
32406         one potential size overflow calculation.  Check for size overflow
32407         when calculating temporary buffer size.  Free temporary buffer
32408         when done, if it was allocated with malloc; this plugs a memory
32409         leak.  Remove casts from void * to pointers, that are no longer
32410         needed now that we're assuming C89 or better.
32411
32412         Merge error changes from glibc.
32413
32414         * lib/error.c, error.h: Update copyright notice header to match glibc.
32415         * lib/error.c [defined _LIBC]: Include <errno.h>, <bits/libc-lock.h>.
32416         (error, error_at_line) [defined _LIBC && defined __libc_ptf_call]:
32417         Disable cancellation while printing error.
32418         * lib/error.h: Prepend __ to parameter names.
32419
32420 2003-09-26  Jim Meyering  <jim@meyering.net>
32421
32422         * lib/error.c (error_tail): Move some declarations
32423         into inner scope where the local variables are used.
32424
32425 2003-09-26  Bruno Haible  <bruno@clisp.org>
32426
32427         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Add comments about the AIX
32428         stpncpy().
32429         Don't define stpncpy through config.h; it's now done through stpncpy.h.
32430
32431 2003-09-26  Bruno Haible  <bruno@clisp.org>
32432
32433         * lib/stpncpy.h (gnu_stpncpy): New declaration.
32434         (stpncpy): Define as alias for gnu_stpncpy.
32435         * lib/stpncpy.c [!_LIBC]: Define gnu_stpncpy, not stpncpy.
32436
32437 2003-09-25  Simon Josefsson  <jas@extundo.com>
32438
32439         * lib/xgetdomainname.h: New file.
32440         * lib/xgetdomainname.c: New file.
32441
32442 2003-09-25  Simon Josefsson  <jas@extundo.com>
32443             Bruno Haible  <bruno@clisp.org>
32444
32445         * modules/getdomainname: New file.
32446         * modules/xgetdomainname: New file.
32447         * MODULES.html.sh (func_all_modules): Add getdomainname,
32448         xgetdomainname.
32449
32450 2003-09-25  Simon Josefsson  <jas@extundo.com>
32451             Bruno Haible  <bruno@clisp.org>
32452
32453         * m4/getdomainname.m4: New file.
32454
32455 2003-09-25  Simon Josefsson  <jas@extundo.com>
32456             Bruno Haible  <bruno@clisp.org>
32457
32458         * lib/getdomainname.h: New file.
32459         * lib/getdomainname.c: New file.
32460
32461 2003-09-25  Karl Berry  <karl@gnu.org>
32462
32463         * lib/argp-fmtstream.c, argp-help.c: update from libc.
32464
32465 2003-09-25  Karl Berry  <karl@gnu.org>
32466
32467         * config/install-sh: update from automake.
32468
32469 2003-09-25  Bruno Haible  <bruno@clisp.org>
32470
32471         * modules/version-etc-2: New file, from modules/version-etc with
32472         modifications.
32473         * MODULES.html.sh (func_all_modules): Add version-etc-2.
32474
32475 2003-09-25  Bruno Haible  <bruno@clisp.org>
32476
32477         * lib/version-etc-2.h: New file, from version-etc.h with modifications.
32478         * lib/version-etc-2.c: New file, from version-etc.c with modifications.
32479
32480 2003-09-24  Simon Josefsson  <jas@extundo.com>
32481
32482         * modules/xgethostname: Add xgethostname.h.
32483
32484 2003-09-24  Paul Eggert  <eggert@twinsun.com>
32485
32486         * lib/linebuffer.c (freebuffer): Don't free the argument, just
32487         the buffer associated with the argument.  Bug reported by
32488         Simon Josefsson.
32489
32490 2003-09-24  Paul Eggert  <eggert@twinsun.com>
32491
32492         * README: Document assumptions that 'int' is at least 32 bits
32493         wide, that integer arithmetic is 2's complement without overflow,
32494         that there are no holes in integer values, that adding sizes of
32495         two nonoverlapping objects can't overflow, and that all-bits-zero
32496         yields scalar zero.  Fix spelling and capitalization typos.
32497
32498 2003-09-19  Karl Berry  <karl@gnu.org>
32499
32500         * lib/argp.h: update from libc.
32501
32502 2003-09-17  Paul Eggert  <eggert@twinsun.com>
32503
32504         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Call AC_BEFORE first,
32505         to avoid spurious warnings like "AC_RUN_IFELSE was called before
32506         gl_USE_SYSTEM_EXTENSIONS" from autoreconf.
32507
32508 2003-09-17  Paul Eggert  <eggert@twinsun.com>
32509
32510         * gnulib-tool: Use "test -h", not "test -L", for portability
32511         to Solaris 8 /bin/sh.  (This bug is fixed in Solaris 9.)
32512         (tags_regexp): Remove, since \| doesn't conform to POSIX.
32513         (sed_extract_prog): Issue s commands one-by-one, rather than
32514         using \| in one s command.
32515
32516 2003-09-16  Paul Eggert  <eggert@twinsun.com>
32517
32518         * lib/linebuffer.c (readlinebuffer): Return NULL immediately upon
32519         input error, instead of returning NULL the next time we are called
32520         (and therefore losing track of errno).
32521
32522 2003-09-16  Bruno Haible  <bruno@clisp.org>
32523
32524         * gnulib-tool (func_create_testdir): Warn about duplicated
32525         dependencies.
32526
32527 2003-09-15  Paul Eggert  <eggert@twinsun.com>
32528
32529         * modules/argmatch, modules/fatal, modules/obstack,
32530         modules/xalloc, modules/xgethostname: Sort dependencies by
32531         importance, not alphabetically.
32532
32533 2003-09-15  Paul Eggert  <eggert@twinsun.com>
32534
32535         * lib/getndelim2.c (getndelim2): Don't trash errno when a read
32536         fails, so that the caller gets the proper errno.
32537
32538         * lib/readutmp.c (read_utmp): Likewise.
32539         Check for fstat error.  Close stream and free storage
32540         when failing.
32541
32542 2003-09-14  Karl Berry  <karl@gnu.org>
32543
32544         * config/srclist.txt (strdup.c): disable for c89 changes.
32545
32546 2003-09-14  Jim Meyering  <jim@meyering.net>
32547
32548         * lib/getloadavg.c: Correct cpp indentation.
32549         * lib/strdup.c: Likewise.
32550         * lib/vasnprintf.c: Likewise.
32551
32552 2003-09-14  Bruno Haible  <bruno@clisp.org>
32553
32554         * modules/fwriteerror: New file.
32555         * MODULES.html.sh (func_all_modules): Add fwriteerror.
32556
32557 2003-09-14  Bruno Haible  <bruno@clisp.org>
32558
32559         * lib/fwriteerror.h: New file.
32560         * lib/fwriteerror.c: New file.
32561
32562 2003-09-12  Paul Eggert  <eggert@twinsun.com>
32563
32564         * modules/argmatch, modules/exitfail, modules/fatal, modules/obstack,
32565         modules/xgethostname, modules/xalloc: Depend on exit.
32566
32567 2003-09-12  Paul Eggert  <eggert@twinsun.com>
32568
32569         * m4/error.m4: Require AC_FUNC_STRERROR_R rather than invoking it.
32570
32571         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Require AC_AIX
32572         and AC_MINIX, too, so that their extensions are available.
32573
32574         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Remove.  All uses removed.
32575         This macro has been superseded by gl_BACKUPFILE.
32576
32577         More patches to assume C89 or better.
32578
32579         * m4/error.m4 (gl_ERROR): Don't check for vprintf.
32580
32581         * m4/check-decl.m4 (jm_CHECK_DECLS): Include <string.h>, <stdlib.h>
32582         unconditionally.
32583         * m4/closeout.m4 (gl_CLOSEOUT): Don't check for stdlib.h.
32584         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER):
32585         Include <string.h>, <stdlib.h> unconditionally.
32586         * m4/lstat.m4 (gl_PREREQ_LSTAT): Don't check for stdlib.h, free.
32587         * m4/readdir.m4 (GL_FUNC_READDIR): Don't check for string.h.
32588         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Don't check for standard C
32589         headers or for string.h.
32590         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Don't check for stdlib.h
32591         or strtoul.
32592
32593         * m4/mkstemp.m4 (jm_PREREQ_TEMPNAME): Do not require standard C
32594         headers.
32595         * m4/strdup.m4 (gl_PREREQ_STRDUP): Likewise.
32596         * m4/userspec.m4 (gl_USERSPEC): Likewise.
32597         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Likewise.
32598         * m4/xstrtod.m4 (gl_XSTRTOD): Likewise.
32599         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
32600         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't check for limits.h,
32601         memcpy, memset.
32602         (jm_FUNC_GNU_STRFTIME): Don't require standard C headers.
32603         * m4/strtod.m4 (gl_FUNC_STRTOD): Do not check for float.h.
32604         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Do not check for stdlib.h,
32605         strtol.
32606         * m4/strtol.m4 (gl_FUNC_STRTOL): Do not check for limits.h.
32607         * m4/userspec.m4 (gl_USERSPEC): Do not check for string.h.
32608         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Do not check for string.h, strtol,
32609         strtoul.
32610
32611 2003-09-12  Paul Eggert  <eggert@twinsun.com>
32612
32613         * lib/argmatch.c, fatal.c, xgethostname.c, xmalloc.c: Include exit.h.
32614         * lib/obstack.c [!defined _LIBC]: Likewise.
32615         * lib/argmatch.c (EXIT_FAILURE): Remove; now done by exit.h
32616         * lib/exitfail.c, fatal.c, xgethostname.c, xmalloc.c: Likewise.
32617         * lib/exitfail.c: Don't include stdlib.h; no longer needed.
32618
32619         More changes to assume C89 or better.
32620
32621         * lib/error.c (error_tail): Assume vprintf.
32622
32623         * lib/argmatch.c (getenv): Remove decl.
32624         * lib/progreloc.c (get_full_program_name): Define via prototype.
32625         * lib/setenv.c (clearenv): Likewise.
32626         * lib/stpncpy.c: Do not include <string.h> or <sys/types.h>; not
32627         needed.
32628         * lib/strdup.c: Include <stdlib.h>, <string.h> unconditionally.
32629         (malloc, memcpy): Remove decls.
32630         * lib/strftime.c (HAVE_LIMITS_H, STDC_HEADERS) [defined _LIBC]: Remove.
32631         (HAVE_MEMCPY) [defined emacs && !defined HAVE_BCOPY]: Remove.
32632         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
32633         (memcpy): Remove macro.
32634         (MEMCPY) [!defined COMPILE_WIDE]: Define to memcpy unconditionally.
32635         (__P): Remove.  All uses removed.
32636         (PTR): Remove.  All uses changed to void *.
32637         (CHAR_BIT, NULL): Remove.
32638         (spaces, zeros, memset_space, memset_zero)
32639         [!defined memset && !defined HAVE_MEMSET && !defined _LIBC]:
32640         Remove.
32641         (LOCALE_PARAM, LOCALE_PARAM_DECL): Remove.
32642         (memcpy_lowcase, memcpy_uppcase, tm_diff, iso_week_days):
32643         Define with prototype.
32644         Remove now-unnecessary prototype decl.
32645         (extra_args_spec): Assume ANSI C.  All uses changed.
32646         (extra_args_spec_iso): Remove.
32647         (my_strftime, emacs_strftimeu): Define via prototype.
32648         * lib/strtod.c: Include <float.h>, <stdlib.h>, <string.h>
32649         unconditionally.
32650         (DBL_MAX, DBL_MIN, HUGE_VAL, NULL): Remove decls.
32651         * lib/strtoimax.c: Include <stdlib.h> unconditionally.
32652         (strtoul, strtol): Remove decls.
32653         * lib/strtol.c (STDC_HEADERS, HAVE_LIMITS_H, NULL, ULONG_MAX,
32654         LONG_MAX): Remove.
32655         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
32656         (LOCALE_PARAM_DECL): Remove.  All uses changed to LOCALE_PARAM_PROTO.
32657         (LOCALE_PARAM_PROTO): New macro.
32658         (INTERNAL, INTERNAL1, WEAKNAME): Assume ANSI C, not K&R.
32659         (INTERNAL (strtol), strtol): Define with a prototype.
32660         (PARAMS): Remove.  All uses removed.
32661         * lib/tempname.c: Include <string.h> unconditionally.
32662         * lib/userspec.c: Include <stdlib.h>, <string.h> unconditionally.
32663         * lib/xgethostname.c (main): Define with a prototype.
32664         * lib/xmalloc.c: Include "xalloc.h" first, to check interface.
32665         Include <stdlib.h> unconditionally.
32666         (calloc, malloc, realloc, free): Remove decls.
32667         * lib/xstrtod.c: Include "xstrtod.h" first, to check interface.
32668         Include <stdlib.h> unconditionally.  Sort include file names.
32669         (strtod): Remove.
32670         (xstrtod): Define with a prototype.
32671         * lib/xstrtol.c: Include <stdlib.h>, <string.h> unconditionally.
32672         (strtol, strtoul): Remove decls.
32673
32674 2003-09-11  Paul Eggert  <eggert@twinsun.com>
32675
32676         More patches to assume C89 or better.
32677         * m4/strndup.m4 (gl_PREREQ_STRNDUP): Remove STDC_HEADERS check.
32678         * m4/strnlen.m4 (gl_PREREQ_STRNLEN): Don't check for memory.h,
32679         string.h, memchr, STDC_HEADERS.
32680
32681 2003-09-11  Paul Eggert  <eggert@twinsun.com>
32682
32683         * lib/strndup.c: Don't include <stdio.h>, <sys/types.h>.
32684         Include <stdlib.h>, <string.h> unconditionally.
32685         Remove now-unnecessary cast to char *.
32686         * lib/strnlen.c: Include <string.h> unconditionally.
32687         * lib/yesno.c (yesno): Define with a prototype.
32688
32689 2003-09-11  Bruno Haible  <bruno@clisp.org>
32690
32691         * config/srclist.txt (setenv.c, unsetenv.c): Disable for the moment.
32692
32693 2003-09-10  Jim Meyering  <jim@meyering.net>
32694
32695         * lib/error.c: Correct indentation of cpp directives.
32696
32697 2003-09-10  Bruno Haible  <bruno@clisp.org>
32698
32699         * m4/strcspn.m4 (gl_PREREQ_STRCSPN): Remove <string.h> check.
32700         * m4/strpbrk.m4 (gl_PREREQ_STRPBRK): Remove <string.h> check.
32701         * m4/strstr.m4 (gl_PREREQ_STRSTR): Remove <string.h> check.
32702         * m4/unicodeio.m4 (gl_UNICODEIO): Remove <string.h> check.
32703         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove
32704         <stdlib.h> and <string.h> checks.
32705         * m4/xreadlink.m4 (gl_XREADLINK): Remove <stdlib.h> check.
32706         * m4/yesno.m4 (gl_YESNO): Remove <stdlib.h> check.
32707
32708 2003-09-10  Bruno Haible  <bruno@clisp.org>
32709
32710         * lib/strcspn.c: Include <string.h> unconditionally.
32711         * lib/strpbrk.c: Include <string.h> unconditionally.
32712         * lib/strstr.c: Include <string.h> unconditionally.
32713         * lib/unicodeio.c: Include <string.h> unconditionally.
32714         * lib/setenv.c: Include <stdlib.h> and <string.h> unconditionally.
32715         * lib/unsetenv.c: Likewise.
32716         * lib/xreadlink.c: Include <stdlib.h> unconditionally.
32717         * lib/yesno.c: Include <stdlib.h> unconditionally.
32718         (rpmatch): Add prototype.
32719
32720 2003-09-09  Paul Eggert  <eggert@twinsun.com>
32721
32722         More patches to assume C89 or better.
32723         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Don't check for stdlib.h.
32724         * m4/getopt.m4 (gl_GETOPT): Don't check for string.h.
32725         * m4/getugroups.m4 (gl_GETUGROUPS): Do not check for standard C headers
32726         or for string.h.
32727         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Do not check for
32728         stdlib.h.
32729         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): Do not require standard
32730         C headers.
32731         * m4/hard-locale.m4 (gl_HARD_LOCALE): Do not check for stdlib.h,
32732         string.h.
32733         * m4/hash.m4 (gl_HASH): Do not check for stdlib.h, malloc, free.
32734         * m4/human.m4 (gl_HUMAN): Do not check for stdlib.h, string.h, getenv.
32735         * m4/idcache.m4 (gl_IDCACHE): Do not check for standard C headers,
32736         or for string.h.
32737         * m4/long-options.m4 (gl_LONG_OPTIONS): Do not check for stdlib.h.
32738         * m4/makepath.m4 (gl_MAKEPATH): Do not check for string.h or standard
32739         C headers.
32740         * m4/md5.m4 (gl_MD5): Don't check for limits.h, standard C headers,
32741         memcpy.
32742         * m4/sha.m4 (gl_SHA): Don't check for standard Cheaders, memcpy.
32743         * m4/memchr.m4 (jm_PREREQ_MEMCHR): Don't check for limits.h, stdlib.h.
32744         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): Don't check for string.h.
32745         * m4/memcoll.m4 (gl_MEMCOLL): Likewise.
32746         * m4/memrchr.c (gl_PREREQ_MEMRCHR): Don't check for limits.h.
32747         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): Don't check for stdlib.h,
32748         string.h, free.
32749         * m4/mktime.m4 (gl_PREREQ_MKTIME): Don't check for standard C headers.
32750         * m4/modechange.m4 (gl_MODECHANGE): Don't check for standard C headers.
32751         * m4/mountlist.m4 (gl_PREREQ_MOUNTLIST_EXTRA): Don't check for standard
32752         C headers, or for string.h.
32753         * m4/obstack.m4 (gl_OBSTACK): Don't check for stddefe.h, string.h.
32754         (gl_PREREQ_OBSTACK): Don't check for stdlib.h.
32755         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't check for standard C
32756         headers, memory.h, stdlib.h, string.h, strings.h.
32757         * m4/posixtm.m4 (gl_POSIXTM): Don't check for stdlib.h, string.h.
32758         * m4/posixver.m4 (gl_POSIXVER): Don't check for getenv.
32759         * m4/putenv.m4 (gl_PREREQ_PUTENV): Don't check for string.h, memcpy,
32760         strchr.
32761         * m4/readtokens.m4 (gl_READTOKENS): Don't check for standard C
32762         headers, memory.h, string.h.
32763         * m4/regex.m4 (jm_PREREQ_REGEX): Do not check for limits.h, string.h.
32764         * m4/rename.m4 (gl_PREREQ_RENAME): Do not check for stdlib.h, string.h,
32765         free.
32766         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Don't check for standard C
32767         headers.
32768         * m4/same.m4 (gl_SAME): Don't check for stdlib.h, string.h, free.
32769         * m4/save-cwd.m4 (gl_SAVE_CWD): Don't check for standard C headers.
32770         * m4/savedir.m4 (gl_SAVEDIR): Don't check for standard C headers.
32771         * m4/strchrnul.m4 (gl_PREREQ_STRCHRNUL): Don't check for string.h.
32772         * m4/xgetcwd.m4 (gl_XGETCWD): Don't check for stdlib.h.
32773
32774 2003-09-09  Paul Eggert  <eggert@twinsun.com>
32775
32776         More K&R removal.
32777
32778         * lib/acosl.c (main): Use a prototype.
32779         * lib/asinl.c, cosl.c, expl.c, frexpl.c, ldexpl.c, sinl.c,
32780         tanl.c: Likewise.
32781
32782         * lib/getloadavg.c (getloadavg, main): Define via prototypes.
32783
32784         * lib/getopt.h (struct option.name): Assume C89, and use 'const'.
32785         (getopt, etopt_long, getopt_long_only, _getopt_internal)
32786         [defined __GNU_LIBRARY__]: Assume C89, so we can always declare
32787         with a prototype.
32788         * lib/getopt.c (const): Remove macro.
32789         Include <string.h> unconditionally.
32790         (my_index): Remove; all uses changed to strchr.
32791         (strlen): Remove decl.
32792         (exchange): Remove forward decl; no longer needed.
32793         (exchange, _getopt_initialize, _getopt_internal, getopt, main):
32794         Define with prototype.
32795         * lib/getopt1.c (const): Remove macro.
32796         (getopt_long, getopt_long_only, main): Define with prototype.
32797
32798         * lib/getugroups.c: Include <string.h> unconditionally.
32799
32800         * lib/getusershell.c: Include <stdlib.h> unconditionally.
32801         (getusershell, setusershell, endusershell, readname, main):
32802         Define with prototypes.
32803
32804         * lib/group-member.c: Include group-member.h first.
32805         Include <stdlib.h> unconditionally.
32806
32807         * lib/hard-locale.c: Include hard-locale.h first.
32808         Include <stdlib.h>, <string.h> unconditionally.
32809
32810         * lib/hash.c (free, malloc): Remove decls.
32811         Include <stdlib.h> unconditionally.
32812
32813         * lib/human.c: Include <stdlib.h>, <string.h> unconditionally.
32814         (getenv): Do not declare.
32815
32816         * lib/idcache.c: Include <string.h> unconditionally.
32817
32818         * lib/long-options.c: Include long-options.h first, to test interface.
32819         Include <stdlib.h> unconditionally.
32820
32821         * lib/makepath.c: Include makepath.h first, to test interface.
32822         Include <stdlib.h> and <string.h> unconditionally.
32823
32824         * lib/linebuffer.c: Include <stdlib.h>.
32825         (free): Remove decl.
32826
32827         * lib/malloc.c: Include <stdlib.h>, for malloc; don't bother with
32828         stddef.h. rpl_malloc returns void *, not char *.
32829         * lib/realloc.c (rpl_realloc): Likewise.  Also, define with a
32830         prototype.
32831
32832         * lib/md5.h: Include <limits.h> unconditionally.
32833         (UINT_MAX_32_BITS): Don't worry about non-__STDC__ case.
32834         (__P): Remove; all uses removed.
32835         * lib/md5.c: Include "md5.h" first.
32836         (md5_init_ctx, md5_read_ctx, md5_finish_ctx, md5_stream,
32837         md5_buffer, md5_process_bytes, md5_process_block):
32838         Define with prototypes.
32839         * lib/sha.h (__P): Remove all uses.  (It wasn't defined??)
32840         * lib/sha.c: Include "sha.h" first.
32841         Include <stdlib.h>, <string.h> unconditionally.
32842
32843         * lib/memchr.c (__ptr_t): Remove; all uses changed to void *.
32844         * lib/memcmp.c (__ptr_t): Likewise.
32845         * lib/memrchr.c (__ptr_t): Likewise.
32846         * lib/memchr.c, memcmp.c, memcoll.c, memrchr.c:
32847         Include <string.h> unconditionally.
32848         * lib/memchr.c, memrchr.c: Include <limits.h> unconditionally.
32849         * lib/memchr.c: Include <stdlib.h> unconditionally.
32850         * lib/memchr.c (LONG_MAX): Remove.
32851         * lib/memrchr.c (LONG_MAX): Likewise.
32852         * lib/memchr.c (__memchr): Define via a prototype.
32853         * lib/memrchr.c (__memrchr): Likewise.
32854         * lib/memcmp.c (__P): Remove, and remove all uses.
32855         (memcmp_bytes, memcmp_common_alignment, memcmp_not_common_alignment):
32856         Remove forward decls; no longer needed.
32857         * lib/memcpy.c, memmove.c, memset.c: Include <stddef.h>.
32858         Use types required by C89 in prototype.
32859
32860         * lib/mkdir.c: Include <stdlib.h>, <string.h> unconditionally.
32861         * lib/savedir.c: Likewise.
32862         * lib/mkdir.c (free): Remove decl.
32863         * lib/rmdir.c (rmdir): Define with a prototype.
32864         * lib/savedir.c: Include savedir.h first, to test interface.
32865
32866         * lib/mktime.c (STDC_HEADERS): Remove.
32867         Include <stdlib.h>, <string.h> unconditionally.
32868
32869         * lib/modechange.c: Include <stdlib.h> unconditionally.
32870         (malloc): Remove decl.
32871
32872         * lib/mountlist.c: Include <stdlib.h>, <string.h> unconditionally.
32873         (free): Remove decl.
32874
32875         * lib/obstack.h (PTR_INT_TYPE) [!defined __PTRDIFF_TYPE__]:
32876         Define to ptrdiff_t, without bothering to check HAVE_STDDEF_H.
32877         (This type really should be intptr_t, but that's a C99ism.)
32878         (_obstack_memcpy): Remove: all uses changed to memcpy.
32879         Include <string.h> unconditionally.
32880         (struct obstack): Assume __STDC__ for types of members
32881         chunkfun, freefun, extra_arg.
32882         (_obstack_newchunk, _obstack_free, _obstack_begin, _obstack_begin_1,
32883         _obstack_memory_used, obstack_alloc_failed_handler, obstack_init,
32884         obstack_begin, obstack_specify_allocation,
32885         obstack_specify_allocation_with_arg, obstack_chunkfun,
32886         obstack_freefun, obstack_free) [! (defined __STDC__ && __STDC__)]:
32887         Remove unprototyped decls and the macros that use them.
32888         * lib/obstack.c (POINTER): Remove.  All uses changed to void *.
32889         (obstack_alloc_failed_handler, CALL_CHUNKFUN, CALL_FREEFUN,
32890         _obstack_begin, _obstack_begin_1, _obstack_allocated_p)
32891         (defined __STDC__ && __STDC__)]:
32892         Remove nonprototyped code.
32893         Include <stdlib.h> unconditionally.
32894         (_obstack_begin, _obstack_begin_1, _obstack_newchunk,
32895         _obstack_allocated_p, _obstack_free, obstack_free,
32896         _obstack_memory_used, print_and_abort):
32897         Define using prototypes.
32898         (obstack_1grow, obstack_1grow_fast, obstack_alloc, obstack_base,
32899         obstack_blank, obstack_blank_fast, obstack_copy, obstack_copy0,
32900         obstack_finish, obstack_grow, obstack_grow0, obstack_make_room,
32901         obstack_next_free, obstack_object_size, obstack_room) [0]:
32902         Remove unused, unprototyped code.
32903
32904         * lib/path-concat.c: Include <stdlib.h>, <string.h> unconditionally.
32905
32906         * lib/physmem.c (physmem_total, physmem_available, main): Define
32907         with prototypes.
32908
32909         * lib/posixtm.c: Include <stdlib.h>, <string.h> unconditionally.
32910         (main): Define with a prototype.
32911
32912         * lib/posixver.c (getenv): Remove decl.
32913
32914         * lib/putenv.c (malloc): Returns void *, not char *.
32915         Include <string.h> unconditionally.
32916         (strchr, memcpy, NULL): Do not define.
32917
32918         * lib/readtokens.c: Include readtokens.h first, to test interface.
32919         Include <stdlib.h>, <string.h> unconditionally.
32920         (init_tokenbuffer): Define with a prototype.
32921
32922         * lib/regex.c (PARAMS): Remove.  All uses removed.
32923         All uses of _RE_ARGS removed, too.
32924         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
32925         unconditionally.
32926         (bzero): Assume memset exists.
32927         (memcmp, memcpy, NULL): Remove.
32928         (SIGN_EXTEND_CHAR): Remove; all uses replaced by casts to signed
32929         char, or assignments to local vars of type signed char.
32930         (init_syntax_once, PREFIX(extract_number_and_incr),
32931         PREFIX(print_partial_compiled_pattern),
32932         PREFIX(print_compiled_pattern), PREFIX(print_double_string),
32933         convert_mbs_to_wcs, print_fastmap, re_set_syntax,
32934         PREFIX(regex_grow_registers), PREFIX(regex_compile),
32935         PREFIX(store_op1), PREFIX(store_op2), PREFIX(insert_op1),
32936         PREFIX(insert_op2), PREFIX(at_begline_loc_p),
32937         PREFIX(at_endline_loc_p), group_in_compile_stack, insert_space,
32938         wcs_compile_range, byte_compile_range, truncate_wchar,
32939         PREFIX(re_compile_fastmap), re_compile_fastmap, re_set_registers,
32940         re_search, re_search_2, PREFIX(re_search_2), re_match, re_match_2,
32941         count_mbs_length, wcs_re_match_2_internal,
32942         byte_re_match_2_internal, PREFIX(group_match_null_string_p),
32943         PREFIX(alt_match_null_string_p),
32944         PREFIX(common_op_match_null_string_p), PREFIX(bcmp_translate),
32945         re_compile_pattern, re_comp, re_exec, regcomp, regexec, regerror,
32946         regfree, PREFIX(extract_number)): Define with prototype.  Remove
32947         now-unnecessary declaration, if any.
32948         (byte_compile_range, PREFIX(regex_compile), re_comp, re_exec,
32949         regcomp, regexec):
32950         Remove now-unnecessary casts among pointer types.
32951         * lib/regex.h (_RE_ARGS): Remove.  All uses removed.
32952
32953         * lib/rename.c: Include <stdlib.h>, <string.h> unconditionally.
32954         (free): Remove decl.
32955
32956         * lib/rpmatch.c: Include <stdlib.h> unconditionally.
32957
32958         * lib/same.c: Include <stdlib.h>, <string.h> unconditionally.
32959         (free): Remove decl.
32960
32961         * lib/save-cwd.c: Include <stdlib.h> unconditionally.
32962         * lib/xgetcwd.c: Likewise.
32963
32964         * lib/stat.c: Include <stdlib.h>, <string.h> unconditionally.
32965         (free): Remove decl.
32966
32967         * lib/strchrnul.c (strchrnul): Define with a prototype.
32968         Fix bug: c_in was not converted to char before searching.
32969
32970         The following changes are not K&R related:
32971
32972         * lib/group-member.h: Include <sys/types.h>, so that this file is
32973         self-contained.
32974         * lib/makepath.h: Likewise.
32975
32976         * lib/getusershell.c (readname, default_index, line_size, readname):
32977         Use size_t, not int, for sizes.
32978         (readname): If the size overflows, report an error instead of
32979         looping forever.
32980
32981 2003-09-09  Paul Eggert  <eggert@twinsun.com>
32982
32983         * config/srclist.txt: Do not get getopt.h, getopt1.c, or regex.h from
32984         libc.
32985
32986 2003-09-09  Paul Eggert  <eggert@twinsun.com>
32987
32988         * README: New section: portability guidelines.
32989
32990 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
32991
32992         * m4/getndelim2.m4 (gl_PREREQ_GETNDELIM2): Assume stdlib.h per the
32993         C89 spec.
32994
32995 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
32996
32997         * lib/getndelim2.c: Assume stdlib.h per the C89 spec.
32998
32999 2003-09-08  Paul Eggert  <eggert@twinsun.com>
33000
33001         Assume C89 or better; remove K&R cruft.
33002         A few of these changes were first proposed by Derek Robert Price
33003         in <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00105.html>.
33004
33005         * lib/addext.c: Include <string.h> unconditionally.
33006         * lib/backupfile.c: Include <string.h>, <stdlib.h> unconditionally.
33007         Don't declare getenv or malloc.
33008
33009         * lib/alloca.c: Include <string.h>, <stdlib.h> unconditionally.
33010         (POINTER_TYPE, pointer): Remove; all uses changed to void *.
33011         (NULL): Remove.
33012         (find_stack_direction, alloca): Use prototypes.
33013
33014         * lib/atexit.c (atexit): Define using a prototype.
33015
33016         * lib/basename.c, dirname.c, stripslash.c:
33017         Include <string.h> unconditionally.
33018
33019         * lib/bcopy.c: Include <stddef.h>.
33020         (bcopy): Define with prototype, using 'const' and 'void' and 'size_t'.
33021
33022         * lib/canon-host.c: Include <stdlib.h>, <string.h> unconditionally.
33023
33024         * lib/error.h (error, error_at_line, error_print_progname)
33025         [! (defined (__STDC__) && __STDC__)]: Remove decls.
33026         * lib/error.c: Include error.h first, to check interface.
33027         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
33028         (VA_START): Remove; all uses changeed to va_start.
33029         (exit, strerror): Remove decls.
33030         (error_print_progname): Prototype uncondionally.
33031         Don't include <errno.h>; no longer needed.
33032         (private_strerror): Remove.
33033         (error_tail): Always define.
33034         (error, error_at_line): Assume C89 or better; always use prototypes.
33035         * lib/fatal.c: Include "fatal.h" first, to test interface.
33036         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
33037         (VA_START): Remove; all uses changed to va_start.
33038         [! (HAVE_VPRINTF || HAVE_DOPRNT || _LIBC)]: Remove support for
33039         this case.
33040         (exit): Remove decl.
33041         (fatal): Prototype unconditionally.  Assume va_start works.
33042         Abort at end, to pacify gcc.
33043
33044         * lib/euidaccess.c (main): Define with a prototype.
33045
33046         * lib/exclude.c: Include <stdlib.h>, <string.h> unconditionally.
33047
33048         * lib/exitfail.c: Include <stdlib.h> unconditionally.
33049
33050         * lib/fnmatch_.h (__P): Remove.  All uses changed to assume
33051         prototypes.
33052         * lib/fnmatch.c: Include fnmatch.h first, to test interface.
33053         Include <string.h>, <stddef.h>, <stdlib.h> unconditionally.
33054         (getenv): Remove decl.
33055         (fnmatch): Define using a prototype.
33056         * lib/fnmatch_loop.c (FCT): Remove forward decl; no longer needed.
33057         (FCT): Define using a prototype.
33058
33059         * lib/getdate.y: Include <stdlib.h>, <string.h> unconditionally.
33060
33061         * lib/gethostname.c: Include <stddef.h>.
33062         (gethostname): Define with prototype.  Length is size_t, not int.
33063
33064 2003-09-08  Paul Eggert  <eggert@twinsun.com>
33065
33066         Assume C89 or better; remove K&R cruft.
33067         * m4/alloca.m4 (gl_PREREQ_ALLOCA): Don't check for stdlib.h, string.h.
33068         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for stdlib.h,
33069         string.h, getenv, malloc.
33070         * m4/dirname.m4 (gl_DIRNAME): Don't check for string.h or C standard
33071         headers.
33072         * m4/canon-host.m4 (gl_CANON_HOST): Don't check for string.h, stdlib.h.
33073         * m4/error.m4 (jm_PREREQ_ERROR): Do not require STDC headers, and
33074         do not check for strerror.
33075         * m4/exclude.m4: Do not check for stdlib.h, string.h, strings.h.
33076         * m4/exitfail.m4 (gl_EXITFAIL): Do not check for stdlib.h.
33077         * m4/fatal.m4 (gl_FATAL): Do not require STDC headers, and
33078         do not check for doprnt or vprintf.
33079         * m4/fnmatch.m4 (gl_PREREQ_FNMATCH_EXTRA): Remove.  All uses removed.
33080         * m4/getdate.m4 (gl_GETDATE): Don't check for stdlib.h or string.h.
33081
33082 2003-09-08  Paul Eggert  <eggert@twinsun.com>
33083
33084         * lib/getversion.c: Remove; was migrated to backupfile.c in 1997.
33085         getversion.c should have been removed then, but was accidentally
33086         preserved.
33087
33088         * lib/utime.c [!HAVE_UTIMES_NULL]: Include <sys/stat.h>, <fcntl.h>.
33089         (utime_null): Fix typo: 'st' was sometimes called 'sb'.
33090
33091 2003-09-08  Karl Berry  <karl@gnu.org>
33092
33093         * config/config.sub, config.guess, srclistvars.sh: update from savannah
33094                 config, forget about prep.
33095
33096         * config/depcomp, missing: update from automake.
33097
33098 2003-09-07  Paul Eggert  <eggert@twinsun.com>
33099
33100         * modules/time_r: Depend on 'restrict'.  Fix from Simon Josefsson in
33101         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
33102
33103 2003-09-07  Paul Eggert  <eggert@twinsun.com>
33104
33105         * lib/time_r.c (gmtime_r, localtime_r): Fix silly typo: missing arg to
33106         copy_tm_result.  Bug reported by Simon Josefsson in
33107         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
33108
33109 2003-09-06  Paul Eggert  <eggert@twinsun.com>
33110
33111         * m4/time_r.m4: New file.
33112         * m4/mktime.m4 (gl_PREREQ_MKTIME): Remove check for limits.h.
33113         * m4/timegm.m4 (gl_FUNC_TIMEGM): Assume that timegm is buggy if mktime
33114         is. Check for timegm declaration.
33115         (gl_PREREQ_TIMEGM): Require gl_FUNC_MKTIME.
33116         Do not check for gmtime_r.
33117         Replace mktime if __mktime_internal does not exist and if mktime
33118         hasn't been replaced already.
33119
33120 2003-09-06  Paul Eggert  <eggert@twinsun.com>
33121
33122         * lib/time_r.c, lib/time_r.h: New files.
33123
33124         * lib/mktime.c (my_mktime_localtime_r): Remove; all uses changed to
33125         __localtime_r.
33126         (__localtime_r) [!defined _LIBC]: New macro.  Include <time_r.h>.
33127         (__mktime_internal) [!defined _LIBC]: Now extern, not static.
33128
33129         * lib/strftime.c (my_strftime_gmtime_r): Remove; all uses changed to
33130         __gmtime_r.
33131         (my_strftime_localtime_r): Remove; all uses changed to __localtime_r.
33132         (__gtime_r, __localtime_r) [!HAVE_TM_GMTOFF]: New macros.
33133         Include <time_r.h>.
33134
33135         * lib/timegm.c: Switch to glibc implementation, with the following
33136         changes:
33137         [defined HAVE_CONFIG_H]: Include <config.h>.
33138         [!defined _LIBC]: Include "timegm.h" rather than <time.h>.
33139         (__mktime_internal) [!defined _LIBC]: New decl.
33140         (__gmtime_r) [!defined _LIBC]: New macro and function.
33141         (timegm): Use a prototype, since gnulib assumes C89.
33142         Do not bother declaring tmp to be const, as it's not really usefu.
33143         * lib/timegm.h: Hoist "#include <time.h>" out of #ifdef.
33144         (timegm): Declare only if HAVE_DECL_TIMEGM.
33145
33146 2003-09-06  Paul Eggert  <eggert@twinsun.com>
33147
33148         * MODULES.html.sh (func_all_modules): Add time_r.
33149         * modules/time_r: New file.
33150         * modules/mktime, modules/strftime, modules/timegm: Depend on time_r.
33151         * modules/timegm: Depend on mktime.  Change maintainer to "all, glibc".
33152
33153 2003-09-03  Paul Eggert  <eggert@twinsun.com>
33154
33155         * lib/human.c (human_readable): Fix bug that rounded 10501 to 10k.
33156         Bug reported by Lute Kamstra in
33157         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00003.html>.
33158
33159         * lib/getdate.y (relative_time_table): Use tDAY_UNIT for "tomorrow",
33160         "yesterday", "today", and "now" rather than tMINUTE_UNIT.  Of
33161         course with correspondingly smaller numbers for tomorrow and
33162         yesterday.  From Tadayoshi Funaba.  Originally installed into
33163         sh-utils on 1999-08-07, but the patch got lost (I guess during the
33164         coreutils merge?).
33165
33166 2003-08-31  Simon Josefsson  <jas@extundo.com>
33167
33168         * modules/timegm: New file.
33169         * MODULES.html.sh (func_all_modules): Add timegm.
33170
33171 2003-08-31  Simon Josefsson  <jas@extundo.com>
33172
33173         * m4/timegm.m4: New file.
33174
33175 2003-08-31  Simon Josefsson  <jas@extundo.com>
33176
33177         * lib/timegm.h: New file.
33178         * lib/timegm.c: New file.  Based on
33179         wget-1.8.2/src/http.c:mktime_from_utc.
33180
33181 2003-08-31  Karl Berry  <karl@gnu.org>
33182
33183         * lib/argp.h: update from libc.
33184
33185 2003-08-28  Bruno Haible  <bruno@clisp.org>
33186
33187         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Remove AC_DEFINE of fnmatch here.
33188         This avoids havoc on compilers for which '#define fnmatch rpl_fnmatch'
33189         followed by '#define fnmatch fnmatch_posix' gives an error.
33190
33191 2003-08-28  Bruno Haible  <bruno@clisp.org>
33192
33193         * lib/binary-io.h: Undefine O_BINARY before defining it. This avoids a
33194         warning on QNX, which defines O_BINARY to 000000.
33195
33196 2003-08-27  Jim Meyering  <jim@meyering.net>
33197
33198         * m4/mkstemp.m4: Require that the system mkstemp be able to create
33199         70 temporary files, not just 30.  Tru64 V4.0F's mkstemp function
33200         would fail after 32.  Reported by Danny Levinson.  Details here:
33201         http://mail.gnu.org/archive/html/bug-coreutils/2003-08/msg00124.html
33202
33203 2003-08-24  Bruno Haible  <bruno@clisp.org>
33204
33205         * lib/binary-io.h: Include <stdio.h>, to avoid a compilation error when
33206         MSVC7 <stdio.h> is included later.
33207
33208 2003-08-22  Simon Josefsson  <jas@extundo.com>
33209
33210         * modules/strndup (Makefile.am): Add strndup.h to lib_SOURCES.
33211
33212 2003-08-20  Karl Berry  <karl@gnu.org>
33213
33214         * m4/lib-ld.m4: serial 1003 from gettext, no changes besides serial.
33215
33216 2003-08-20  Bruno Haible  <bruno@clisp.org>
33217
33218         * modules/progname: New file.
33219         * MODULES.html.sh (func_all_modules): Add progname.
33220
33221 2003-08-20  Bruno Haible  <bruno@clisp.org>
33222
33223         * lib/progname.h: New file, from GNU gettext.
33224         * lib/progname.c: New file, from GNU gettext.
33225         * lib/progreloc.c: New file, from GNU gettext.
33226
33227 2003-08-19  Jim Meyering  <jim@meyering.net>
33228
33229         * m4/lib-ld.m4: Revert yesterday's change, per Bruno's request here:
33230         http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00155.html
33231
33232 2003-08-19  Bruno Haible  <bruno@clisp.org>
33233
33234         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Don't check for <string.h> any
33235         more.
33236
33237 2003-08-19  Bruno Haible  <bruno@clisp.org>
33238
33239         * lib/xstrdup.c: Assume <string.h> exists.
33240
33241 2003-08-18  Paul Eggert  <eggert@twinsun.com>
33242
33243         * modules/stdbool: Add BUILT_SOURCES.  Prefer $@ to target name
33244         in makefile rules.
33245
33246 2003-08-18  Jim Meyering  <jim@meyering.net>
33247
33248         * m4/getloadavg.m4: Use [\t ], not [ \t] (where \t is a literal TAB).
33249         * m4/lib-ld.m4: Likewise.
33250
33251 2003-08-18  Jim Meyering  <jim@meyering.net>
33252
33253         * lib/setenv.h: Indent nested cpp directive.
33254         * lib/vasnprintf.c: Remove trailing blanks.
33255
33256 2003-08-17  Simon Josefsson  <jas@extundo.com>
33257
33258         * modules/xstrndup: New file.
33259         * MODULES.html.sh (func_all_modules): Add xstrndup.
33260
33261 2003-08-17  Simon Josefsson  <jas@extundo.com>
33262
33263         * modules/argp: Fix autoconf macro name. Add more dependencies.
33264
33265 2003-08-17  Simon Josefsson  <jas@extundo.com>
33266
33267         * m4/xstrndup.m4: New file.
33268
33269 2003-08-17  Simon Josefsson  <jas@extundo.com>
33270
33271         * m4/argp.m4: New file.
33272
33273 2003-08-17  Simon Josefsson  <jas@extundo.com>
33274             Bruno Haible  <bruno@clisp.org>
33275
33276         * lib/xstrndup.h: New file.
33277         * lib/xstrndup.c: New file.
33278
33279 2003-08-17  Bruno Haible  <bruno@clisp.org>
33280
33281         * modules/strndup (Files, Include): Add lib/strndup.h.
33282
33283 2003-08-17  Bruno Haible  <bruno@clisp.org>
33284
33285         * modules/euidaccess (Files): Add lib/euidaccess.h.
33286
33287 2003-08-17  Bruno Haible  <bruno@clisp.org>
33288
33289         * lib/strndup.h: New file.
33290
33291 2003-08-17  Bruno Haible  <bruno@clisp.org>
33292
33293         * gnulib-tool (func_create_testdir): Handle gl_USE_SYSTEM_EXTENSIONS
33294         like AC_GNU_SOURCE.
33295         * modules/extensions (configure.ac): Comment out the invocation of
33296         gl_USE_SYSTEM_EXTENSIONS.
33297
33298 2003-08-16  Paul Eggert  <eggert@twinsun.com>
33299
33300         Merges from coreutils, etc.
33301         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Insert ':' to prevent a syntax
33302         error in gl_FUNC_MATCH.  This fixes a bug I introduced on 2003-05-28.
33303         * m4/readlink.m4 (gl_PREREQ_READLINK): Renamed from gl_PREREQ_READLINE,
33304         fixing a typo.
33305         * m4/host-os.m4 (UTILS_HOST_OS): Add GNU/NetBSD, GNU/FreeBSD.
33306         * m4/hash.m4 (gl_HASH): Use AM_STDBOOL_H, not AC_HEADER_STDBOOL.
33307
33308 2003-08-16  Paul Eggert  <eggert@twinsun.com>
33309
33310         Document merge from coreutils.
33311         * modules/alloca: Append $(ALLOCA_H) to BUILT_SOURCES.
33312         * modules/fnmatch: Append $(FNMATCH_H) to BUILT_SOURCES.
33313         * modules/utime: Add m4/utimes-null.m4.
33314
33315 2003-08-16  Paul Eggert  <eggert@twinsun.com>
33316
33317         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Do not normalize white
33318         space, undoing this 2003-08-12 change:
33319         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
33320
33321 2003-08-16  Paul Eggert  <eggert@twinsun.com>
33322
33323         * config/srclist.txt: Get regex.h, strdup.c, strtoll.c,
33324         strtoul.c from libc, undoing this 2003-08-12 change:
33325         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
33326
33327 2003-08-16  Jim Meyering  <jim@meyering.net>
33328
33329         Merges from coreutils.
33330         * m4/readdir.m4 (GL_FUNC_READDIR): Change name to have GL_ (not jm_)
33331         prefix.  Adjust cache variables similarly.  Create 500 rather than
33332         just 300 files, to exercise bug on Darwin6.5, too.
33333         * m4/perl.m4 (jm_PERL): Use $am_missing_run, not undefined
33334         $missing_dir.
33335         * m4/jm-winsz1.m4: Require AC_SYS_POSIX_TERMIOS, not
33336         AM_SYS_POSIX_TERMIOS.
33337         Reported by mkc@mathdogs.com.
33338         Also change use of $am_cv_sys_posix_termios
33339         to $ac_cv_sys_posix_termios.  Reported by Andreas Schwab.
33340         * m4/getgroups.m4 (jm_FUNC_GETGROUPS): Rewrite to use AC_FUNC_GETGROUPS
33341         and (if needed) to call AC_LIBOBJ and to set GETGROUPS_LIB.
33342         * m4/fsusage.m4 [__GLIBC__]: GNU libc's statvfs stats each mount point
33343         in /proc/mounts until it finds one with matching device number.  This
33344         is unnecessary when the FILE argument *is* a mount point.  No stat call
33345         is necessary in that case.  So, disable the statvfs-testing code on
33346         systems with GNU libc.  Reported by Andrei Gaponenko via Tim Waugh
33347         as RedHat bug# 84846.
33348         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
33349         to 1MB, so as not to render systems with no stack size limit (e.g.,
33350         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
33351         Include <unistd.h>.  On some systems,
33352         it is required for the definition of _SC_PAGESIZE.
33353
33354 2003-08-16  Jim Meyering  <jim@meyering.net>
33355
33356         Merge from coreutils.
33357         * lib/xstrtoimax.c: #else #if -> #elif.
33358         * lib/xstrtoumax.c: Likewise.
33359
33360 2003-08-16  Jim Meyering  <jim@meyering.net>
33361
33362         * m4/utimes.m4 (gl_FUNC_UTIMES): New file.
33363         * m4/utimes.m4: Removed.
33364         * m4/utimes-null.m4: Renamed from utimes.m4.
33365
33366         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
33367         to 1MB, so as not to render systems with no stack size limit (e.g.,
33368         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
33369         Include <unistd.h>.  On some systems,
33370         it is required for the definition of _SC_PAGESIZE.
33371
33372 2003-08-16  Jim Meyering  <jim@meyering.net>
33373         and Paul Eggert  <eggert@cs.ucla.edu>
33374
33375         Merges from coreutils, etc.
33376
33377         * m4/jm-macros.m4 (AC_LANG_SOURCE(C)): New macro, undefine, then define
33378         using the latest version from cvs.  This avoids problems with #line
33379         directives using a vendor (Sun) compiler.
33380         (jm_MACROS): Bump prerequisite from 2.52g to 2.57.
33381         Don't set GETGROUPS_LIB here; now it's
33382         done via getgroups.m4's wrapper function.
33383         AC_SUBST OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, and MAN here,
33384         rather than just in sh-util/configure.in, so that the
33385         now-shared-by-fileutils-and-textutils lib/Makefile.am are all the
33386         same.
33387         Use AC_CONFIG_LIBOBJ_DIR(lib) to tell the new
33388         AC_FUNC_GETLOADAVG where to find getloadavg.c.
33389         Require AC_FUNC_FTW, gt_INTTYPES_PRI, gl_CLOCK_TIME,
33390         UTILS_SYS_OPEN_MAX, GL_FUNC_GETCWD_PATH_MAX, GL_FUNC_READDIR,
33391         gl_FSUSAGE, gl_MOUNTLIST, AC_FUNC_CANONICALIZE_FILE_NAME.
33392         Remove code that is now done by the newly-required macros.
33393         Append $(EXEEXT) to DF_PROG.
33394         AC_LIBOBJ fchdir-stub if fchdir doesn't exist; similarly for fchown.
33395         Do not invoke or require the following here,
33396         since prereq.m4 or some gnulib .m4 now does this for us:
33397         gl_REGEX, UTILS_FUNC_MKDIR_TRAILING_SLASH, jm_BISON, gl_FUNC_MKTIME,
33398         jm_FUNC_LSTAT, jm_FUNC_STAT, jm_FUNC_REALLOC, jm_FUNC_MALLOC,
33399         jm_FUNC_NANOSLEEP, jm_FUNC_READDIR, jm_FUNC_MEMCMP,
33400         jm_FUNC_GLIBC_UNLOCKED_IO, AC_FUNC_FNMATCH_GNU, jm_FUNC_PUTENV,
33401         jm_AC_PREREQ_XSTRTOUMAX, jm_AC_PREREQ_XSTRTOIMAX,
33402         AC_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, AC_FUNC_VPRINTF,
33403         vb_FUNC_RENAME, UTILS_FUNC_MKSTEP, jm_FUNC_UTIME, AM_FUNC_GETLINE,
33404         AC_FUNC_OBSTACK.
33405         Do not replace the following functions, as this is now the job
33406         of some gnulib .m4: strcasecmp, strncasecmp, dup2, gethostname,
33407         getusershell, sig2str, strcspn, stpcpy, strstr, strtol, strtoul
33408         strpbrk, euidaccess, memcmp, rmdir, rpmatch, strndup, strverscmp,
33409         atexit getpass, strdup, getpagesize.
33410         Replace 'raise'.
33411         Do not check for the following functions, as this is now the job
33412         of some gnulib .m4: bcopy, canonicalize_file_name, fchdir, ftime,
33413         getcwd, getmntinfo, resolvepath.  But check for sysctl, setreuid,
33414         setregid.
33415         (jm_CHECK_ALL_HEADERS): Do not check for fenv.h.
33416         Check for sys/sysctl.h.
33417         (jm_CHECK_ALL_TYPES): Do not require AC_STRUCT_TM, AC_STRUCT_TIMEZONE,
33418         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Invoke gt_TYPE_SSIZE_T instead
33419         of checking for ssize_t ourselves.
33420
33421         * m4/prereq.m4 (jm_PREREQ): Don't invoke macros; AC_REQUIRE them.
33422         Require every macro that gnulib/modules/* suggests for us.
33423         (jm_PREREQ_ADDEXT): New macro.
33424         (jm_PREREQ_STAT): Check for 'struct statfs' on Ultrix 4.4.
33425         Require jm_AC_TYPE_LONG_LONG instead of invoking it.
33426
33427         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): New macro.
33428         (gl_PHYSMEM): Use it.
33429         Also check for `table' function.
33430         Check for new headers and functions.
33431         Add check for sys/sysmp.h.
33432         With suggestions from Kaveh Ghazi.
33433         Ignore headers that are present but cannot be compiled.  This
33434         avoids spurious warnings on Solaris 9 sparc with Forte Developer 7
33435         C 5.4.
33436
33437 2003-08-15  Paul Eggert  <eggert@twinsun.com>
33438
33439         Document merge from coreutils.
33440         * modules/userspec: Depend on posixver.
33441         * modules/strftime: Depend on tzset.
33442
33443 2003-08-15  Paul Eggert  <eggert@twinsun.com>
33444
33445         * lib/config.charset, ref-add.sin, ref-del.sin: Use three spaces,
33446         rather than tab, after '#' in shell-script copyright notices.
33447         Suggested by Bruno Haible.
33448
33449 2003-08-15  Paul Eggert  <eggert@twinsun.com>
33450
33451         * config/srclist-update: Use three spaces, rather than tab, after '#'
33452         in shell-script copyright notices.  Suggested by Bruno Haible.
33453         Remove unnecessary parenthesization in regular expression.
33454
33455 2003-08-15  Jim Meyering  <jim@meyering.net>
33456
33457         Merge from coreutils.
33458         * lib/xgethostname.c: Include <stdlib.h>.
33459         (xghostname): Don't exit for anything other than memory-related
33460         failure; just return NULL.
33461         * lib/userspec.c: Include "posixver.h".
33462         (parse_user_spec): Accept `.' as a separator only
33463         in pre-POSIX-200112 mode.
33464         * lib/strtoimax.c: Use #elif rather than #else #if.
33465         * lib/strftime.c (my_strftime) [!_LIBC && HAVE_TZNAME && HAVE_TZSET]:
33466         Remove function, now that we can rely on a working tzset function.
33467         [!_LIBC]: Ensure that the required autoconf test has been run.
33468         [!defined _NL_CURRENT && HAVE_STRFTIME]:
33469         Use underlying_strftime for %r.
33470         * lib/sha.c: Merge in some clean-up and optimization changes from
33471         glibc.
33472         * lib/sha.c (sha_stream) [BLOCKSIZE]: Move definition to top of file.
33473         Ensure that it is a multiple of 64.
33474         Rearrange loop exit tests so as to avoid performing an
33475         additional fread after encountering an error or EOF.
33476         * lib/realloc.c: Update copyright date.
33477
33478 2003-08-15  Jim Meyering  <jim@meyering.net>
33479         and Paul Eggert  <eggert@twinsun.com>
33480
33481         Merge from coreutils.
33482         * lib/readutmp.h (HAVE_UTMPX_H): Undef if struct utmp has the ut_exit
33483         member but strut utmpx does not.  Needed for AIX 4.3.3.
33484         (UT_EXIT_E_TERMINATION, UT_EXIT_E_EXIT): Define.
33485
33486 2003-08-15  Jim Meyering  <jim@meyering.net>
33487         and Paul Eggert  <eggert@cs.ucla.edu>
33488
33489         Merges from coreutils, etc.
33490         * m4/strftime.m4 (_jm_STRFTIME_PREREQS):
33491         Require gl_FUNC_TZSET_CLOBBER.
33492         * m4/readutmp.m4 (gl_READUTMP): Check for ut_exit.ut_exit,
33493         ut_exit.e_exit, ut_exit.ut_termination, and ut_exit.e_termination
33494         members.
33495
33496 2003-08-14  Paul Eggert  <eggert@twinsun.com>
33497
33498         Help the merge from coreutils.
33499         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): New macro.
33500         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use it.
33501         * m4/tzset.m4: Use it too.
33502
33503 2003-08-14  Paul Eggert  <eggert@twinsun.com>
33504
33505         * modules/tzset: New file.
33506
33507 2003-08-14  Jim Meyering  <jim@meyering.net>
33508
33509         Merges from coreutils.
33510         * modules/fnmatch: Use the `$(FNMATCH_H)' notation for AC_REPLACED
33511         variable names, rather than @FNMATCH_H@.
33512         * modules/alloca: Likewise for $(ALLOCA_H).
33513
33514         * modules/fnmatch (fnmatch.h): Use `$@' in the commands, in place of
33515         the three copies of the literal target, `fnmatch.h'.
33516         * modules/alloca (alloca.h): Likewise.
33517
33518 2003-08-14  Jim Meyering  <jim@meyering.net>
33519
33520         Merge from coreutils.
33521         * m4/tzset.m4: New file.
33522         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Move the
33523         MOUNTED_VMOUNT test to precede the MOUNTED_GETMNTENT1 tests, since
33524         otherwise, AIX 5.1 systems would end up using the latter.
33525         MOUNTED_GETMNTENT1 support is inadequate on such systems: 1) detecting
33526         whether a file system is remote doesn't work  2) the MOUNTED_VMOUNT
33527         code reports the HOSTNAME:/MOUNT_POINT, while the MOUNTED_GETMNTENT1
33528         code reports merely /MOUNT_POINT.  Reported by Mike Jetzer.
33529
33530 2003-08-14  Jim Meyering  <jim@meyering.net>
33531
33532         Merge from coreutils.
33533         * lib/obstack.h: Whitespace changes.
33534         * lib/mountlist.c: Remove anachronistic casts of xmalloc, xrealloc,
33535         and xcalloc return values.
33536         (read_filesystem_list) [MOUNTED_GETFSSTAT]:
33537         Use MNT_NOWAIT, rather than MNT_WAIT.  Otherwise, `df DIR' could
33538         hang on OSF/1 5.1 for DIR on both local and remote file systems.
33539         Reported by (and fix confirmed by) Nelson H. F. Beebe.
33540         (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
33541         error from mntctl.
33542         Use mntctl's return value to drive the entry-processing loop, since
33543         we can't rely on the value of the vmt_length member in the last
33544         entry.  On some systems doing so could result in exhausting
33545         virtual memory.  Based in part on a patch from Mike Jetzer.
33546
33547 2003-08-14  Jim Meyering  <jim@meyering.net>
33548         and Paul Eggert  <eggert@twinsun.com>
33549
33550         Merges from coreutils, plus other fixes.
33551         * lib/physmem.c: Merge in portability changes from gcc/libiberty
33552         to support AIX, IRIX, Tru64, and Windows.  See the ChangeLog there
33553         for credits and details.  Thanks to Kaveh Ghazi for helping
33554         to keep these files in sync.
33555         (ARRAY_SIZE): Define it.
33556         (physmem_total, physmem_available): Add comments. From Kaveh Ghazi.
33557         * lib/memcasecmp.c: Remove unnecessary parentheses after 'defined'.
33558         (memcasecmp): Don't assume size_t fits in unsigned int.
33559         Remove casts and duplicate code.
33560         * lib/md5.c: Include <string.h> and <stdlib.h> unconditionally.
33561         (memcpy): Remove definition.
33562         Merge in some clean-up and optimization changes from glibc.
33563         [BLOCKSIZE]: Move definition to top of file.
33564         Ensure that it is a multiple of 64.
33565         Rearrange loop exit tests so as to avoid performing an
33566         additional fread after encountering an error or EOF.
33567         * lib/md5.h (md5_uintptr): Define.
33568         * lib/makepath.c (CLEANUP_CWD): Report an error if we failed to
33569         return to the initial working directory.  Preserve errno
33570         for caller.
33571         * lib/idcache.c: Include "xalloc.h".
33572         (xmalloc, xrealloc): Remove decls.
33573         (getuser): Remove casts no longer required in C89.
33574         * lib/human.c: Include stdio.h, for sprintf.
33575         * lib/group-member.c: Include "xalloc.h".
33576         (xmalloc, xrealloc): Remove decls.
33577         (get_group_info): Remove casts no longer required in C89.
33578         * lib/getusershell.c (readname): Remove casts no longer required in
33579         C89.
33580         * lib/gettimeofday.c (rpl_gmtime, rpl_tzset): New functions.
33581         * lib/getline.c: Whitespace fix, from coreutils.
33582
33583 2003-08-13  Paul Eggert  <eggert@twinsun.com>
33584
33585         * m4/exclude.m4 (gl_EXCLUDE): Require AC_C_INLINE, AC_HEADER_STDC.
33586         Check for isascii.
33587
33588         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
33589         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
33590         Undo previous (whitespace-only) change.
33591
33592 2003-08-13  Paul Eggert  <eggert@twinsun.com>
33593
33594         * lib/exclude.c: Include <ctype.h>
33595         (IN_CTYPE_DOMAIN): New macro.
33596         (is_space): New fn.
33597         (add_exclude_file): If LINE_END is a space, ignore trailing spaces
33598         and empty lines.
33599
33600         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
33601         Undo previous (whitespace-only) change.
33602
33603 2003-08-13  Paul Eggert  <eggert@twinsun.com>
33604
33605         * config/srclist-update: Change update back to the old behavior,
33606         leaving whitespace alone.  Use one 'sed' command rather than a
33607         pipeline.
33608         (fixlicense): Now a variable, not a function.
33609         (remove_trailing_blanks): Remove.
33610         (fixfile): Don't invoke unexpand or cat, or remove trailing blanks.
33611         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
33612         Undo previous (whitespace-only) change.
33613
33614 2003-08-12  Paul Eggert  <eggert@twinsun.com>
33615
33616         Merge from coreutils.
33617         * modules/euidaccess: Add lib_SOURCES, include for new
33618         file euidaccess.h
33619
33620 2003-08-12  Paul Eggert  <eggert@twinsun.com>
33621
33622         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
33623         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
33624         Normalize leading white space and remove trailing white space.
33625
33626         Merge from coreutils
33627         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): Check for euidaccess decl.
33628
33629         * m4/lib-ld.m4, lib-link.m4, lib-prefix.m4: Regenerate from gettext
33630         0.12.1.  These files are now being upgraded automatically by
33631         ../config/srclist-update.
33632
33633 2003-08-12  Paul Eggert  <eggert@twinsun.com>
33634
33635         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
33636         Normalize leading white space and remove trailing white space.
33637         * lib/ref-add.sin, ref-del.sin: Use '#' before empty line in copyright
33638         notice, as per ../config/srclist-update.
33639
33640         Merge from coreutils.
33641         * lib/euidaccess.h: New file.
33642         * lib/euidaccess.c: Include it.
33643         * lib/.cppi-disable: Add printf-args.h, printf-parse.h, stdbool_.h,
33644         vasnprintf.h, vasprintf.h.  Remove strdup.c, gettext.h.
33645         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Normalize white space.
33646
33647 2003-08-12  Paul Eggert  <eggert@twinsun.com>
33648
33649         * config/srclist-update: Add copyright notice.
33650         (remove_id_lines, remove_trailing_blanks): New constants.
33651         (fixfile): Use them to normalize spacing a bit in copied files.
33652         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
33653         Normalize leading white space and remove trailing white space.
33654
33655         * config/texinfo.tex: Sync with texinfo.
33656
33657         * config/srclist.txt: Don't get regex.h, strdup.c, strtoll.c,
33658         strtoul.c from libc, to merge coreutils whitespace changes.
33659
33660         * config/srclist.txt: Get the following m4 files from gettext:
33661         codeset.m4, gettext.m4, glibc21.m4, iconv.m4, intdiv0.m4,
33662         inttypes-pri.m4, lcmessage.m4, lib-ld.m4, lib-link.m4, lib-prefix.m4,
33663         longdouble.m4, nls.m4, po.m4, progtest.m4, signed.m4, wchar_t.m4,
33664         wint_t.m4.
33665
33666 2003-08-12  Karl Berry  <karl@gnu.org>
33667
33668         * config/srclist.txt: can't sync vasnprintf.c any more, changes have
33669         been made.
33670
33671 2003-08-11  Paul Eggert  <eggert@twinsun.com>
33672
33673         * modules/gnu-source, m4/gnu-source.m4:
33674         Remove; we're assuming Autoconf 2.54 or later now.
33675         Suggested by Bruno Haible.
33676         * MODULES.html.sh (func_all_modules): Remove gnu-source.
33677
33678 2003-08-11  Bruno Haible  <bruno@clisp.org>
33679
33680         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Also check for wcslen.
33681
33682 2003-08-11  Bruno Haible  <bruno@clisp.org>
33683
33684         * lib/vasnprintf.c (local_wcslen): New function, for Solaris 2.5.1.
33685         (vasnprintf): Use it instead of wcslen.
33686
33687 2003-08-11  Bruno Haible  <bruno@clisp.org>
33688
33689         * lib/stdbool_.h (_Bool): Undo last change; instead use a negative enum
33690         value to ensure that _Bool promotes to int. Use #define for _Bool when
33691         using the Solaris C compiler. Adds comments suggested by Paul Eggert.
33692
33693 2003-08-10  Karl Berry  <karl@gnu.org>
33694
33695         * lib/regex.h: update from libc (whitespace fix).
33696
33697 2003-08-09  Paul Eggert  <eggert@twinsun.com>
33698
33699         Merge some files from coreutils.  These changes were
33700         originally made by Jim Meyering.
33701         * lib/acl.c: Include <sys/types.h> before <sys/stat.h>;
33702         many older Unixes require this.
33703         * lib/alloca.c (alloca): Remove cast to argument of free;
33704         no longer needed in C89.
33705         * lib/alloca_.h, regex.h: Fix white space to match
33706         what GNU indent does.
33707
33708 2003-08-09  Paul Eggert  <eggert@twinsun.com>
33709
33710         * m4/regex.m4 (jm_INCLUDED_REGEX): Change "\201" to "\371";
33711         apparently Emacs's Unicode mode got confused before my 2003-08-05
33712         checkin.
33713
33714 2003-08-08  Paul Eggert  <eggert@twinsun.com>
33715
33716         * m4/extensions.m4: New file.
33717         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC):
33718         Require gl_USE_SYSTEM_EXTENSIONS.
33719         * m4/unlocked-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO):
33720         Require gl_USE_SYSTEM_EXTENSIONS rather than AC_GNU_SOURCE.
33721
33722 2003-08-08  Paul Eggert  <eggert@twinsun.com>
33723
33724         * MODULES.html.sh (func_all_modules): Add extensions, gnu-source.
33725         * modules/extensions, modules/gnu-source: New files.
33726         * modules/timespec, modules/unlocked-io: Depend on extensions.
33727
33728 2003-08-07  Paul Eggert  <eggert@twinsun.com>
33729
33730         * modules/restrict: New file.
33731         * MODULES.html.sh (func_all_modules): Add restrict.
33732         * modules/regex: Depend on restrict.
33733
33734 2003-08-07  Paul Eggert  <eggert@twinsun.com>
33735
33736         * m4/restrict.m4: New file.
33737         * m4/regex.m4 (jm_PREREQ_REGEX): Add gl_C_RESTRICT.
33738
33739 2003-08-07  Bruno Haible  <bruno@clisp.org>
33740
33741         * modules/getndelim2 (Makefile.am): Add the files to EXTRA_DIST, not
33742         lib_SOURCES, because getndelim2.m4 now uses AC_LIBOBJ(getndelim2).
33743
33744 2003-08-07  Bruno Haible  <bruno@clisp.org>
33745
33746         * m4/getndelim2.m4 (gl_GETNDELIM2): Use AC_LIBOBJ(getndelim2). This
33747         makes the module 'getndelim2' compatible with the module 'getline'.
33748
33749 2003-08-05  Paul Eggert  <eggert@twinsun.com>
33750
33751         * m4/regex.m4 (jm_INCLUDED_REGEX): Replace a single non-ASCII
33752         byte with "\201" to avoid glitches when editing that source file
33753         with multi-gnome-terminal.
33754
33755 2003-08-05  Paul Eggert  <eggert@twinsun.com>
33756
33757         * lib/bumpalloc.h: Remove.
33758
33759 2003-08-05  Paul Eggert  <eggert@twinsun.com>
33760
33761         * MODULES.html.sh (func_all_modules): Remove bumpalloc.
33762         * modules/bumpalloc: Remove.
33763
33764 2003-08-04  Paul Eggert  <eggert@twinsun.com>
33765
33766         * lib/getloadavg.c: Change copyright notice and spacing to conform to
33767         GNU coding style.
33768
33769         Merge from coreutils.
33770         * lib/error.c [!USE_IN_LIBIO]: Omit this case; assume USE_IN_LIBIO is
33771         1. From glibc.
33772         * lib/getdate.y (date): Also accept dates like May-23-2003; suggestion
33773         from Karl Berry, implemented by Jim Meyering.
33774         * lib/getgroups.c: Include "xalloc.h" instead of declaring xalloc fns;
33775         from Dmitry V. Levin.
33776         Remove anachronistic cast of xrealloc.
33777         * lib/fnmatch_.h (__const): Remove.  Use 'const'.
33778         * lib/fnmatch_loop.c (NEW_PATTERN): Cast alloca return value to proper
33779         type. Otherwise, it wouldn't compile with at least /bin/cc on
33780         ymp-cray-unicos9.0.2.X.
33781         Combine two mostly-identical uses of alloca into one.
33782         Thanks to the Cray-Cyber project for access to a Cray Y-MP.
33783
33784 2003-08-04  Dave Love  <d.love@dl.ac.uk>
33785
33786         [From Emacs.]
33787
33788         * lib/getloadavg.c: Check `__unix' as well as `unix'.  Use #ifdef, not
33789         #if.  Check HAVE_LIBKSTAT as well as LOAD_AVE_TYPE.  Check
33790         F_SETFD, not FD_SETFD.  Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not
33791         obsolete NLIST_NAME_UNION.
33792         [__GNU__]: Undef BSD and FSCALE.
33793         [!NLIST_STRUCT]: Remove conditional definition of NLIST_STRUCT.
33794
33795 2003-08-03  Paul Eggert  <eggert@twinsun.com>
33796
33797         * lib/stdbool_.h (_Bool): Make it signed char, instead of
33798         an enum type, so that it's guaranteed to promote to int.  See:
33799         <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00124.html>
33800
33801 2003-08-03  Karl Berry  <karl@gnu.org>
33802
33803         * config/depcomp: update from automake.
33804
33805 2003-07-31  Paul Eggert  <eggert@twinsun.com>
33806
33807         * lib/strerror.c: Include config.h, limits.h.  Declare sprintf.
33808         (strerror): Don't assume that a printable int fits in 14 bytes.
33809
33810 2003-07-31  Bruno Haible  <bruno@clisp.org>
33811
33812         * modules/getpass-gnu: New file.
33813         * MODULES.html.sh (func_all_modules): Add getpass-gnu.
33814
33815 2003-07-31  Bruno Haible  <bruno@clisp.org>
33816
33817         * m4/getpass.m4 (gl_FUNC_GETPASS_GNU): New macro.
33818
33819 2003-07-24  Karl Berry  <karl@gnu.org>
33820
33821         * config/missing: update from automake.
33822
33823 2003-07-24  Derek Robert Price  <derek@ximbiot.com>
33824             Bruno Haible  <bruno@clisp.org>
33825
33826         * lib/getline.h (getline, getdelim): Change return type to ssize_t.
33827         * lib/getline.c (getline, getdelim): Likewise.
33828         Remove _GNU_SOURCE define; now it's defined in config.h through
33829         m4/getline.m4.
33830
33831 2003-07-23  Karl Berry  <karl@gnu.org>
33832
33833         * config/config.sub: update from prep.
33834
33835 2003-07-22  Paul Eggert  <eggert@twinsun.com>
33836
33837         * modules/xalloc (Depends-on): Add exitfail.
33838         * modules/xmemcoll: Likewise.
33839
33840 2003-07-22  Paul Eggert  <eggert@twinsun.com>
33841
33842         * lib/xalloc.h (XCALLOC, XREALLOC, CCLONE): Fix under- and
33843         over-parenthesization in macros.
33844
33845         Sync with coreutils.
33846
33847         * lib/xalloc.h (XMALLOC, XCALLOC, XREALLOC): Remove casts not
33848         required by C99.
33849
33850         Use `exit_failure' for xalloc and xmemcoll instead of their own
33851         private exit-failure variables.
33852         * lib/xalloc.h (xalloc_exit_failure): Remove.
33853         * lib/xmalloc.c: Likewise.  Include exitfail.h.
33854         (xalloc_die): Use exit_failure instead of xalloc_exit_failure.
33855         * lib/xmemcoll.h (xmemcoll_exit_failure): Remove.
33856         * lib/xmemcoll.c: Likewise.  Include exitfail.h.
33857         (xmemcoll): Use exit_failure instead of xalloc_exit_failure.
33858
33859 2003-07-20  Jim Meyering  <jim@meyering.net>
33860
33861         * modules/closeout (Depends-on): Add exitfail.
33862         Suggestion from Bruno Haible.
33863
33864 2003-07-19  Karl Berry  <karl@gnu.org>
33865
33866         * config/config.sub: update from prep.
33867
33868 2003-07-18  Paul Eggert  <eggert@twinsun.com>
33869
33870         * lib/closeout.h (close_stdout_set_status, close_stdout_status):
33871         Remove.
33872         * lib/closeout.c: Likewise.  Include "closeout.h" right after config.h,
33873         to test that it can stand by itself.  Include "exitfail.h".
33874         Clients should set exit_failure instead.
33875         (EXIT_FAILURE): Remove; no longer needed.  Do not include <stdlib.h>.
33876
33877 2003-07-18  Bruno Haible  <bruno@clisp.org>
33878
33879         * modules/getndelim2: New file.
33880         * modules/getline: Share files with module getndelim2.
33881         * modules/getnline: Depend on getndelim2 instead of sharing files with
33882         it. Add getnline.c to lib_SOURCES.
33883         * MODULES.html.sh (func_all_modules): Add getndelim2.
33884
33885 2003-07-18  Bruno Haible  <bruno@clisp.org>
33886
33887         * m4/getndelim2.m4: New file.
33888         * m4/getline.m4 (AM_FUNC_GETLINE): Add AC_LIBOBJ of getndelim2.c and
33889         invoke gl_PREREQ_GETNDELIM2.
33890         (gl_PREREQ_GETLINE): Drop AC_HEADER_STDC, now done by
33891         gl_PREREQ_GETNDELIM2.
33892         * m4/getnline.m4 (gl_GETNLINE): Drop AC_HEADER_STDC, now done by
33893         gl_GETNDELIM2.
33894
33895 2003-07-18  Bruno Haible  <bruno@clisp.org>
33896
33897         * lib/getndelim2.h: New file.
33898         * lib/getndelim2.c: Make into a module of its own. Include config.h,
33899         getndelim2.h.
33900         (getndelim2): Make non-static. Change return type to ssize_t.
33901         * lib/getline.h: Change argument names.
33902         * lib/getline.c: Include getndelim2.h instead of getndelim2.c.
33903         * lib/getnline.c: Include getndelim2.h.
33904
33905 2003-07-18  Andreas Schwab  <schwab@suse.de>
33906
33907         * lib/memcoll.c (memcoll) [!HAVE_STRCOLL]: Clear errno.
33908
33909 2003-07-17  Karl Berry  <karl@gnu.org>
33910
33911         * config/config.sub: update from prep.
33912
33913 2003-07-17  Bruno Haible  <bruno@clisp.org>
33914
33915         * modules/getnline: New file.
33916         * modules/getline: Add lib/getndelim2.c to source file list.
33917         * MODULES.html.sh (func_all_modules): Add getnline.
33918
33919 2003-07-17  Bruno Haible  <bruno@clisp.org>
33920
33921         * m4/getnline.m4: New file.
33922
33923 2003-07-17  Bruno Haible  <bruno@clisp.org>
33924
33925         * m4/Makefile.am.in: Remove file.
33926         * m4/Makefile.am: Remove file.
33927         * m4/Makefile.in: Remove file.
33928
33929 2003-07-17  Bruno Haible  <bruno@clisp.org>
33930
33931         * lib/getnline.h: New file.
33932         * lib/getnline.c: New file.
33933         * lib/getndelim2.c: New file, extracted from getline.c.
33934         (getndelim2): Renamed from getdelim2, with added nmax argument.
33935         * lib/getline.c: Include getndelim2.c.
33936         (getdelim2): Moved out to getndelim2.c.
33937         (getline, getdelim): Update.
33938
33939 2003-07-17  Bruno Haible  <bruno@clisp.org>
33940
33941         * lib/Makefile.am: Remove file.
33942         * lib/Makefile.in: Remove file.
33943
33944 2003-07-17  Bruno Haible  <bruno@clisp.org>
33945
33946         * configure.in: Remove file.
33947         * Makefile.in: Remove file.
33948
33949 2003-07-17  Bruno Haible  <bruno@clisp.org>
33950
33951         * MODULES.html.sh: Put the </BODY> right before </HTML>.
33952
33953 2003-07-16  Karl Berry  <karl@gnu.org>
33954
33955         * config/srclist-update: was running fixlicense twice, which caused
33956                 texinfo.tex to be nullified for some reason.  Simplify,
33957                 $gplsrc is no longer needed as far as I can see?
33958
33959 2003-07-16  Jim Meyering  <jim@meyering.net>
33960
33961         * modules/save-cwd: Depend on xgetcwd.  From Derek Price.
33962
33963 2003-07-15  Paul Eggert  <eggert@twinsun.com>
33964
33965         * config/srclist.txt: Get the following files from gettext-runtime/intl
33966         instead: config.charset, localcharset.c, localcharset.h, ref-add.sin,
33967         ref-del.sin.  From Bruno Haible.
33968         * config/srclist-update (fixfile): Change grep pattern again, since the
33969         previous fix didn't work (there was another trailing $).  Use
33970         '[$]' to escape the $s.
33971
33972 2003-07-15  Karl Berry  <karl@gnu.org>
33973
33974         * lib/vasnprintf.c: update from gettext.
33975
33976 2003-07-15  Karl Berry  <karl@gnu.org>
33977
33978         * config/srclist-update (fixfile): Change grep pattern, since 'Id'
33979         gets expanded when surrounded by '$'.
33980
33981 2003-07-15  Jim Meyering  <jim@meyering.net>
33982
33983         * modules/save-cwd: Don't depend on error.  From Derek Price.
33984
33985 2003-07-15  Jim Meyering  <jim@meyering.net>
33986
33987         * lib/makepath.c (make_path): Enclose diagnostic in _(...).
33988
33989 2003-07-14  Simon Josefsson  <jas@extundo.com>
33990
33991         * modules/mempcpy: New file.
33992         * MODULES.html.sh (func_all_modules): Add mempcpy.
33993
33994 2003-07-14  Simon Josefsson  <jas@extundo.com>
33995
33996         * m4/mempcpy.m4: New file.
33997
33998 2003-07-14  Simon Josefsson  <jas@extundo.com>
33999
34000         * lib/mempcpy.h: New file.
34001         * lib/mempcpy.c: New file.
34002
34003 2003-07-14  Paul Eggert  <eggert@twinsun.com>
34004
34005         * modules/getdate, modules/posixtm: Depend on mktime.
34006
34007 2003-07-14  Paul Eggert  <eggert@twinsun.com>
34008
34009         * lib/ceill.c, expl.c, floorl.c, frexpl.c, ldexpl.c, mathl.h,
34010         sincosl.c, sqrtl.c, trigl.c, trigl.h, poll.c, poll_.h, mkstemp.c,
34011         unicodeio.c, unicodeio.h, unlocked-io.h:
34012         Switch from LGPL to GPL.
34013
34014 2003-07-14  Paul Eggert  <eggert@twinsun.com>
34015
34016         * lib/asnprintf.c, asprintf.c, config.charset, gettext.h,
34017         localcharset.c, localcharset.h, mkdtemp.c, printf-args.c,
34018         printf-args.h, printf-parse.c, printf-parse.h, ref-add.sin,
34019         ref-del.sin, setenv.c, unsetenv.c, vasnprintf.c, vasnprintf.h,
34020         vasprintf.c, vasprintf.h: Regenerate.  These files are now being
34021         updated automatically by ../config/srclist-update.  This changes
34022         their license from LPGL to GPL.
34023
34024 2003-07-14  Paul Eggert  <eggert@twinsun.com>
34025
34026         * config/srclist.txt: Add tons more gettext files.  $GETTEXT is now
34027         assumed to refer to the root of the most recent stable gettext version.
34028         * config/srclistvars.sh: Add defaults for eggert.
34029         * config/srclist-update: Convert LGPL to GPL in shell scripts, too.
34030         Match "This program" as well as "The program".  This is needed
34031         for gettext.
34032
34033 2003-07-14  Jim Meyering  <jim@meyering.net>
34034
34035         Don't emit diagnostics.  Let callers do that.
34036         * lib/save-cwd.c: Don't include "error.h".
34037         (save_cwd): Don't call error.  Ensure that errno is valid
34038         when returning nonzero.
34039
34040         * lib/save-cwd.h (restore_cwd): Update prototype.
34041         * lib/save-cwd.c (restore_cwd): Remove two parameters.
34042         Simplify.  Don't call error upon failure.  Let callers do that.
34043         (save_cwd): Mention that Irix 5.3 has the same problem as SunOS 4
34044         when auditing is enabled.  But don't bother updating the #if.
34045
34046 2003-07-11  Alexandre Duret-Lutz  <adl@gnu.org>
34047
34048         * lib/obstack.h (__INT_TO_PTR): Revert change of 2003-03-13;
34049         it breaks C++ compilation.
34050         [!__GNUC__ || !__STDC__] (obstack_finish): Cast result to void*.
34051
34052 2003-07-10  Simon Josefsson  <jas@extundo.com>
34053
34054         * modules/strchrnul (Makefile.am): Add strchrnul.h.
34055
34056 2003-07-10  Jim Meyering  <jim@meyering.net>
34057
34058         * m4/clock_time.m4: Remove trailing blank.
34059         * m4/intmax_t.m4: Likewise.
34060
34061 2003-07-10  Jim Meyering  <jim@meyering.net>
34062
34063         * lib/vasnprintf.c: Remove trailing blanks.
34064         Make cpp indentation consistent.
34065
34066 2003-07-09  Paul Eggert  <eggert@twinsun.com>
34067
34068         * lib/alloca_.h, euidaccess.c, getpass.c, memrchr.c, obstack.h,
34069         posixver.c, strftime.c, strnlen.c, strverscmp.c:
34070         Switch from LGPL to GPL.
34071
34072 2003-07-09  Paul Eggert  <eggert@twinsun.com>
34073
34074         * config/srclist.txt: Sort sublists.  Add
34075         $LIBCSRC/sysdeps/generic/strtoul.c. In comments, add more libc files
34076         that differ from gnulib for one reason or another; we'd like this list
34077         to be smaller but for now let's document what we have.
34078
34079 2003-07-08  Paul Eggert  <eggert@twinsun.com>
34080
34081         * config/srclist-update: Port to POSIX 1003.1-2001 hosts by avoiding
34082         the use of GNU extensions.  Change "x=`eval echo $x`" to the shorter
34083         and sweeter "eval x=$x".
34084         * config/srclist.txt: Get lib/argp* from glibc.
34085
34086 2003-07-07  Paul Eggert  <eggert@twinsun.com>
34087
34088         * lib/mktime.c: Fix some boundary cases and remove need for floating
34089         point.
34090
34091         Issue a compile-time diagnostic if time_t is floating point, or if
34092         two's complement arithmetic is not in effect, or if arithmetic
34093         right shift does not propagate the sign.  These assumptions were
34094         all in the original code but they weren't checked.
34095
34096         (TIME_T_MIDPOINT, verify): New macros.
34097         (__isleap): Remove; it has integer overflow problems.
34098         (leapyear): New function, without those problems.
34099         (ydhms_tm_diff): Remove; splitting into two parts.
34100         (ydhms_diff): New function, containing the arithmetic part of
34101         the old ydhms_tm_diff function.  Issue a compile-time
34102         diagnostic if we are not using C99 integer division.
34103         Avoid casts when possible.
34104         (guess_time_tm): New function, containing the checking part of
34105         the old ydhms_tm_diff function.  Return the new value, rather than
34106         the difference between it and the old.  Accept a new argument T
34107         so that *T specifies the old value.  Check for overflow in the result.
34108
34109         (__mktime_internal): Use a time_t offset, not a long int offset.
34110         This undoes the 2003-06-04 change, which is no longer needed now
34111         that we have better overflow checking.
34112         (localtime_offset): Likewise.
34113
34114         (__mktime_internal): Avoid harmful overflow on hosts where time_t
34115         and long are 64-bit but int is only 32-bit.
34116         (ydhms_diff): Use long int to store year1 and yday1.
34117         Issue a compile-time diagnostic if long int is not wide enough.
34118
34119         (__mktime_internal): Use long int to store adjusted year and yday.
34120         Use plain C rather than preprocessor commands, if that doesn't
34121         affect efficiency.
34122         Check for overflow (and try to repair) after each probe
34123         rather than checking only at the very end.  This avoids some bugs
34124         (e.g., southern hemisphere, behind GMT, and GMT offset at minimum time
34125         does not equal GMT offset at maximum time).
34126         Use integer to check for overflow rather than floating point; this
34127         is more portable to non-IEEE hosts, and is a tad faster.
34128         When we detect that we are oscillating between two values,
34129         don't check whether tm_isdst has the requested value, since
34130         we already know the answer.  When tm_isdst has the wrong value,
34131         use a different heuristic to find the right one, based on the
34132         extreme values actually observed in practice in tz2003a,
34133         rather than the (overly optimistic) "previous 3 calendar quarters".
34134
34135         (not_equal_tm, print_tm, check_result): Use "const T" rather than
34136         "T const" to accommodate glibc style.
34137         (check_result): Use less-confusing report format.  "long" -> "long int.
34138         (main): Likewise.
34139         Don't loop if the iteration overflows time_t.
34140         Allow a negative step in the iteration.
34141
34142 2003-07-06  Karl Berry  <karl@gnu.org>
34143
34144         * config/depcomp: update from automake.
34145         * config/config.sub: update from prep.
34146
34147 2003-07-03  Karl Berry  <karl@gnu.org>
34148
34149         * config/config.guess: update from prep.
34150
34151 2003-07-01  Paul Eggert  <eggert@twinsun.com>
34152
34153         * m4/xreadlink.m4 (gl_XREADLINK): Don't check for sys/types.h, since
34154         xreadlink.c now includes it unconditionally.
34155
34156 2003-07-01  Paul Eggert  <eggert@twinsun.com>
34157
34158         * lib/xreadlink.c: Include <sys/types.h> unconditionally, instead of
34159         having it depend on HAVE_SYS_TYPES_H.
34160
34161 2003-07-01  Bruno Haible  <bruno@clisp.org>
34162
34163         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Don't include <unistd.h>.
34164         <sys/types.h> should be sufficient.
34165         Reported by Paul Eggert.
34166
34167 2003-06-26  Karl Berry  <karl@gnu.org>
34168
34169         * config/depcomp: update from automake.
34170
34171 2003-06-26  Bruno Haible  <bruno@clisp.org>
34172
34173         * modules/human: Depend on module stdbool.
34174
34175 2003-06-25  Bruno Haible  <bruno@clisp.org>
34176
34177         * modules/readlink: New file.
34178         * modules/xreadlink: Depend on it.
34179         * MODULES.html.sh (func_all_modules): Add readlink.
34180
34181 2003-06-25  Bruno Haible  <bruno@clisp.org>
34182
34183         * m4/readlink.m4: New file.
34184
34185 2003-06-25  Bruno Haible  <bruno@clisp.org>
34186
34187         * lib/readlink.c: New file.
34188
34189 2003-06-22  Karl Berry  <karl@gnu.org>
34190
34191         * config/srclist.txt: update mkinstalldirs from automake.
34192         * config/mkinstalldirs: update.
34193
34194 2003-06-22  Bruno Haible  <bruno@clisp.org>
34195
34196         Portability to mingw32.
34197         * m4/ssize_t.m4: New file, from GNU gettext.
34198         * m4/safe-read.m4 (gl_PREREQ_SAFE_READ): Require gt_TYPE_SSIZE_T.
34199         * m4/xreadlink.m4 (gl_XREADLINK): Require gt_TYPE_SSIZE_T.
34200
34201 2003-06-22  Bruno Haible  <bruno@clisp.org>
34202
34203         * modules/safe-read: Add m4/ssize_t.m4.
34204         * modules/xreadlink: Add m4/ssize_t.m4.
34205
34206 2003-06-20  Bruno Haible  <bruno@clisp.org>
34207
34208         Assume C89, so PARAMS isn't needed.
34209         * lib/unicodeio.h (PARAMS): Remove.
34210         * lib/unicodeio.c: Don't use PARAMS.
34211
34212 2003-06-18  Karl Berry  <karl@gnu.org>
34213
34214         * config/config.{guess,sub}: update from prep.
34215
34216 2003-06-18  Jim Meyering  <jim@meyering.net>
34217
34218         Merge changes from coreutils.
34219         * lib/readutmp.c: Include <string.h> and <stdlib.h> unconditionally.
34220         Remove explicit declarations of xmalloc and realloc.
34221         Include xalloc.h.
34222         (read_utmp): Remove anachronistic cast of xmalloc.
34223
34224 2003-06-17  Paul Eggert  <eggert@twinsun.com>
34225
34226         Assume C89, so PARAMS isn't needed.
34227         * lib/backupfile.h (PARAMS): Remove.  All uses removed.
34228         * lib/closeout.h, lib/dirname.h, lib/filemode.h, lib/fsusage.h,
34229         lib/getdate.h, lib/getline.h, lib/group-member.h, lib/hard-locale.h,
34230         lib/hash.h, lib/linebuffer.h, lib/long-options.h, lib/makepath.h,
34231         lib/memcasecmp.h, lib/memcoll.h, lib/modechange.h, lib/mountlist.h,
34232         lib/path-concat.h, lib/physmem.h, lib/posixtm.h, lib/quote.h,
34233         lib/readutmp.h, lib/same.h, lib/save-cwd.h, lib/savedir.h,
34234         lib/stdio-safer.h, lib/strtoimax.c, lib/strverscmp.h,
34235         lib/unistd-safer.h, lib/version-etc.h, lib/xalloc.h, lib/xreadlink.h,
34236         lib/xstrtod.h, lib/xstrtol.h: Likewise.
34237         * lib/filemode.h, lib/hard-locale.h, lib/memcoll.h, lib/modechange.h,
34238         lib/physmem.h, lib/same.h, lib/strverscmp.h: Do not include config.h;
34239         no longer needed. Anyway, config.h should always be included before any
34240         other file.
34241
34242 2003-06-11  Simon Josefsson  <jas@extundo.com>
34243
34244         * modules/sysexits: New file.
34245         * MODULES.html.sh (func_all_modules): Add sysexits.
34246
34247 2003-06-11  Simon Josefsson  <jas@extundo.com>
34248
34249         * lib/sysexit_.h: New file.
34250
34251 2003-06-11  Derek Price  <derek@ximbiot.com>
34252
34253         * lib/stat.c [LSTAT]: Compile/use slash_aware_lstat only if it is
34254         necessary.
34255
34256 2003-06-11  Bruno Haible  <bruno@clisp.org>
34257
34258         * m4/sysexits.m4: New file.
34259
34260 2003-06-10  Simon Josefsson  <jas@extundo.com>
34261
34262         * lib/argp.h: New file, from glibc.
34263         * lib/argp-ba.c: New file, from glibc.
34264         * lib/argp-eexst.c: New file, from glibc.
34265         * lib/argp-fmtstream.c: New file, from glibc.
34266         * lib/argp-fmtstream.h: New file, from glibc.
34267         * lib/argp-fs-xinl.c: New file, from glibc.
34268         * lib/argp-help.c: New file, from glibc.
34269         * lib/argp-namefrob.h: New file, from glibc.
34270         * lib/argp-parse.c: New file, from glibc.
34271         * lib/argp-pv.c: New file, from glibc.
34272         * lib/argp-pvh.c: New file, from glibc.
34273         * lib/argp-xinl.c: New file, from glibc.
34274
34275 2003-06-10  Simon Josefsson  <jas@extundo.com>
34276
34277         * modules/strchrnul: New file.
34278
34279 2003-06-10  Simon Josefsson  <jas@extundo.com>
34280
34281         * modules/argp: New file.
34282
34283 2003-06-10  Simon Josefsson  <jas@extundo.com>
34284
34285         * m4/strchrnul.m4: New file.
34286
34287 2003-06-10  Simon Josefsson  <jas@extundo.com>
34288
34289         * lib/strchrnul.h: New file.
34290         * lib/strchrnul.c: New file.
34291
34292 2003-06-10  Bruno Haible  <bruno@clisp.org>
34293
34294         * MODULES.html.sh (func_all_modules): Add strchrnul and argp.
34295
34296 2003-06-07  Karl Berry  <karl@gnu.org>
34297
34298         * config/config.{guess,sub}: update from prep.
34299
34300 2003-06-07  Jim Meyering  <jim@meyering.net>
34301
34302         * modules/strtod: Use $(...) notation, not @...@ for
34303         AC_REPLACE'd variables.
34304         * modules/localcharset: Likewise.
34305
34306 2003-06-07  Jim Meyering  <jim@meyering.net>
34307
34308         * lib/readtokens.h: Put `Free Software Foundation, Inc.'
34309         in place of my name in the copyright comment.
34310         Remove definition and uses of __P.
34311
34312         From coreutils.
34313         * lib/stat.c: Don't declare xmalloc explicitly.
34314         Instead, include "xalloc.h".
34315         * lib/readtokens.c (readtokens): Remove anachronistic casts of xmalloc,
34316         xrealloc, and xcalloc return values.
34317         * lib/xgetcwd.c (xgetcwd): Include "xgetcwd.h".
34318         Improve comment.
34319         * lib/xgetcwd.h: Remove definition/uses of PARAMS.
34320
34321 2003-06-07  Bruno Haible  <bruno@clisp.org>
34322
34323         * modules/poll (Makefile.am): Use explicit creation rule for poll.h, to
34324         avoid AC_CONFIG_LINKS.
34325         * modules/fnmatch (Makefile.am): Use explicit creation rule for
34326         fnmatch.h, to avoid AC_CONFIG_LINKS.
34327         * modules/alloca (Makefile.am): Make creation of alloca.h Ctrl-C safe.
34328
34329 2003-06-07  Bruno Haible  <bruno@clisp.org>
34330
34331         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH, gl_FUNC_FNMATCH_POSIX,
34332         gl_FUNC_FNMATCH_GNU): Set FNMATCH_H instead of invoking
34333         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
34334         directory.
34335         * m4/poll.m4 (gl_FUNC_POLL): Set POLL_H instead of invoking
34336         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
34337         directory.
34338
34339 2003-06-06  Jim Meyering  <jim@meyering.net>
34340
34341         Merge from coreutils.
34342         * lib/same.c: (same_name): Declare *_basename locals to be `const'.
34343         Consolidate declarations and initializations of *_base* locals.
34344
34345         Merge from coreutils.
34346         This avoids a core dump on systems without GNU putenv,
34347         when running `env -u SOME_ALREADY_UNSET_VARIABLE'.
34348         * lib/putenv.c (__set_errno, LOCK, UNLOCK): Define.
34349         (unsetenv): New static function, from GNU libc.
34350         (rpl_putenv): Use it.
34351
34352         * lib/modechange.c: Remove trailing blanks.
34353
34354         Merge from coreutils.
34355         * lib/fsusage.c: Remove declaration of statfs.
34356         It conflicted with one from OSF/1 5.1 in <sys/mount.h>.
34357
34358         * lib/posixtm.c: Include <stdbool.h> unconditionally.
34359
34360 2003-06-06  Jim Meyering  <jim@meyering.net>
34361
34362         * lib/stdbool_.h: Renamed from stdbool.h.in.
34363
34364 2003-06-06  Jim Meyering  <jim@meyering.net>
34365             Bruno Haible  <bruno@clisp.org>
34366
34367         * modules/stdbool: Reflect renaming: stdbool.h.in -> stdbool_.h.
34368         Adjust Makefile.am snippet not to redirect directly to target.
34369         Use $(STDBOOL_H) notation, not @STDBOOL_H@ for AC_REPLACE'd variables.
34370
34371 2003-06-05  Paul Eggert  <eggert@twinsun.com>
34372
34373         * lib/mktime.c (__mktime_internal): When resolving a tm_isdst
34374         mismatch, look in future quarters as well as past.  This fixes a
34375         bug when processing fall-backwards gaps immediately after a long
34376         period of daylight-saving time.
34377
34378         * lib/mktime.c: Assume freestanding C89 or better.
34379         (HAVE_LIMITS_H): Remove.  Assume it's 1.
34380         (__P): Remove; not used.
34381         (CHAR_BIT, INT_MIN, INT_MAX): Remove; <limits.h> defines them.
34382         (mktime, not_equal_tm, print_tm, check_result,
34383         main): Use prototypes.  Use const * where appropriate.
34384         (main): Fix typo in testing code that uncovered by above changes.
34385         (Local Variables): Remove -DHAVE_LIMITS_H from compile-command.
34386
34387 2003-06-04  Paul Eggert  <eggert@twinsun.com>
34388
34389         * m4/human.m4 (gl_HUMAN): Require AM_STDBOOL_H.  Check for
34390         locale.h, localeconv.  This merges changes from coreutils.
34391
34392         * m4/mktime.m4 (AC_FUNC_MKTIME): New macro, taken from Autoconf CVS.
34393         It can be removed after the next Autoconf is released.
34394         * m4/exclude.m4 (gl_EXCLUDE): Don't check for sys/types.h; no loner
34395         needed.
34396
34397 2003-06-04  Paul Eggert  <eggert@twinsun.com>
34398
34399         * lib/mktime.c: Fix Debian bug 177940
34400         <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=177940>.
34401         (localtime_offset): Now long int, not time_t, because we want it
34402         to be guaranteed to be signed.  All uses changed.
34403         (__mktime_internal): If overflow would occur when adding offset,
34404         don't add it.
34405
34406         Merge 'human' changes from coreutils.  Rewrite to support
34407         locale-specific notations like thousands separators.
34408         * lib/human.c: Simplify authorship notice.
34409         Include human.h immediately after config.h.
34410         <sys/types.h>, <stdio.h>: Do not include; no longer needed.
34411         <limits.h>: Do not include, since human.h does.
34412         (SIZE_MAX, UINTMAX_MAX): New macros.
34413         <strings.h>: Include if HAVE_STRINGS_H, not if !HAVE_STRING_H.
34414         <locale.h>: Include if HAVE_LOCALE_H and HAVE_LOCALECONV.
34415         (HUMAN_READABLE_SUFFIX_LENGTH_MAX): New macro.
34416         (power_letter): Renamed from suffixes.
34417         (generate_suffix_backwards): Remove.
34418         (adjust_value): Now takes int style (because of human.h changes)
34419         and long double value (for greater precision on some platforms).
34420         (group_number): New function.
34421         (human_readable): Use it.  Use integer options, not enum.
34422         Put the options before the sizes in the arg list.
34423         Support all the new options.
34424         The old human_readable function has been removed;
34425         use inttostr.h instead.
34426         (human_readable, default_block_size, humblock):
34427         Use uintmax_t, not int, for block sizes.
34428         (human_readable_inexact, block_size_types): Remove.
34429         (block_size_opts): New constant.
34430         (human_options): Renamed from human_block_size, with new signature
34431         that allows block sizes up to UINTMAX_MAX.  All callers changed.
34432         * lib/human.h: Add copyright and authorship notice.
34433         Include <limits.h> and <stdbool.h> unconditionally.
34434         (PARAMS): Remove.  All uses removed.
34435         (LONGEST_HUMAN_READABLE): Add support for thousands separator.
34436         (enum human_inexact_style): Remove tag; now a nameless enum.
34437         (human_floor, human_ceiling, human_round_to_even): Now have
34438         values 2, 0, 1 rather than -1, 1, 0.
34439         (human_group_digits, human_suppress_point_zero, human_autoscale,
34440         human_base_1024, human_SI, human_B): New constants.
34441         (human_readable_inexact, human_block_size): Remove.
34442         (human_readable): Size args are now uintmax_t, not int.
34443         (human_options): New decl.
34444
34445         * lib/exclude.c: (new_exclude, add_exclude): Remove casts that are
34446         unnecessary now that we assume C89 or better.  This change
34447         imported from coreutils.
34448
34449         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
34450         arbitrarily.  This is the same patch as 2003-05-28, but it got lost
34451         in the 2003-05-30 sync from glibc.
34452
34453         .h files should stand alone, but we shouldn't include <sys/types.h>
34454         if we can get away with just <stddef.h>.
34455
34456         * lib/__fpending.h, addext.c, backupfile.c, exclude.c, getline.c,
34457         malloc.c, putenv.c, realloc.c, strcasecmp.c: Include <stddef.h>
34458         rather than <sys/types.h>, as we merely need size_t.
34459         * lib/dirname.h, memcoll.h, xalloc.h, xmemcoll.h: Include <stddef.h>,
34460         to get size_t.
34461         * lib/hash.h, linebuffer.h, readtokens.h, stdio-safer.h, version-etc.h:
34462         Include <stdio.h>, to get FILE.
34463         * lib/memcasecmp.c: Don't include <sys/types.h>, as we can assume
34464         memcasecmp.h has included <stddef.h> and all we need is size_t.
34465         * lib/memcoll.c: Include "memcoll.h", which gets us size_t and checks
34466         our interface, instead of including <sys/types.h>
34467
34468 2003-06-04  Paul Eggert  <eggert@twinsun.com>
34469
34470         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): Comment out for
34471         now, as glibc mktime is buggy on non-glibc systems.
34472
34473 2003-06-03  Karl Berry  <karl@gnu.org>
34474
34475         * config/config.sub: update from prep.
34476
34477 2003-06-02  Paul Eggert  <eggert@twinsun.com>
34478
34479         [from coreutils]
34480         Fix some minor time-related bugs with POSIX time arguments.
34481         Some valid time stamps were being rejected (notably -1, and
34482         time stamps before 1900 on 64-bit hosts).  And some invalid
34483         time stamps were being accepted, e.g. September 31.
34484
34485         * lib/posixtm.h (posixtime): Return bool instead of time_t, so
34486         that we can return (time_t) -1 successfully.
34487         * lib/posixtm.c: Likewise.
34488         [HAVE_STDBOOL_H]: Include <stdbool.h>.
34489         (bool, false, true) [!HAVE_STDBOOL_H]: New type.
34490         (t): Remove static var.
34491         (year, posix_time_parse): Now takes struct tm * arg to modify, instead
34492         of static var.  All uses changed.
34493         (year): Do not reject years before 1900; they can occur with
34494         64-bit time_t.
34495         (posix_time_parse): Do not check for out-of-range components;
34496         that is now the caller's responsibility, since our checks were
34497         only approximations.
34498         (posixtime): Use mktime to check for out-of-range components,
34499         since it knows them exactly.
34500         If mktime returns (time_t) -1, check whether an error actually occurred
34501         by invoking localtime on -1.
34502         (main) [TEST_POSIXTIME]: Check for input data errors, and report
34503         posixtime failures better.
34504         Improve the test data (in comments only).
34505
34506 2003-06-02  Karl Berry  <karl@gnu.org>
34507
34508         * config/mkinstalldirs (version): new variable.
34509         (--version): new option.
34510         (usage): improve message.
34511
34512 2003-05-30  Karl Berry  <karl@gnu.org>
34513
34514         * lib/mktime.c: update from libc.
34515
34516 2003-05-30  Bruno Haible  <bruno@clisp.org>
34517
34518         * modules/gettext: Add files m4/nls.m4 and m4/po.m4.
34519         * config/config.rpath: Upgrade to gettext-0.12.1.
34520
34521 2003-05-30  Bruno Haible  <bruno@clisp.org>
34522
34523         * m4/gettext.m4: Upgrade to gettext-0.12.1.
34524         * m4/nls.m4: New file, from gettext-0.12.1.
34525         * m4/po.m4: New file, from gettext-0.12.1.
34526         * m4/progtest.m4: Upgrade to gettext-0.12.1.
34527
34528 2003-05-30  Bruno Haible  <bruno@clisp.org>
34529
34530         * lib/config.charset: Upgrade to gettext-0.12.1 and libiconv-1.9.1.
34531         * lib/localcharset.h: Likewise.
34532         * lib/localcharset.c: Likewise.
34533
34534 2003-05-29  Karl Berry  <karl@gnu.org>
34535
34536         * config/config.rpath: update from gettext.
34537
34538 2003-05-28  Paul Eggert  <eggert@twinsun.com>
34539
34540         Assume the headers required for C89 freestanding compilers.
34541         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for limits.h.
34542         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Likewise.
34543         * m4/human.m4 (gl_HUMAN): Likewise.
34544         * m4/pathmax.m4 (gl_PATHMAX): Likewise.
34545         * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Likewise.
34546         * m4/userspec.m4 (gl_USERSPEC): Likewise.
34547         * m4/xreadlink.m4 (gl_XREADLINK): Likewise.
34548         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
34549         * m4/quote.m4 (gl_QUOTE): Don't check for stddef.h.
34550
34551 2003-05-28  Paul Eggert  <eggert@twinsun.com>
34552
34553         Assume the headers required for C89 freestanding compilers.
34554         * lib/addext.c, lib/backupfile.c, lib/fsusage.c, lib/human.c,
34555         lib/pathmax.h, lib/rpmatch.c, lib/userspec.c, lib/xreadlink.c,
34556         lib/xstrtol.c: Include <limits.h> without checking for HAVE_LIMITS_H.
34557         * lib/backupfile.c, lib/fsusage.c, lib/hash.c, lib/human.c,
34558         lib/safe-read.c, lib/userspec.c, lib/xstrtol.c (CHAR_BIT): Don't
34559         define, since <limits.h> is guaranteed to do that.
34560         * lib/fatal.c: Include <stdarg.h> without checking for __STDC__.
34561         * lib/exclude.c: Include <stdbool.h> unconditionally.
34562         * lib/tempname.c: Include <stddef.h> unconditionally.
34563         * lib/hash.c: Include <limits.h>, since we no longer define CHAR_BIT.
34564         * lib/modechange.c, rpmatch.c (NULL): Don't define, since
34565         <stddef.h> does that.
34566         * lib/quote.c: Dont include <stddef.h> or <sys/types.h>; not needed.
34567         * lib/safe-read.c (INT_MAX): Don't define, since <limits.h> does that.
34568         * lib/safe-read.c (TYPE_MINIMUM, TYPE_MAXIMUM): Remove; no longer
34569         needed.
34570         * lib/xstrtol.c: Likewise.
34571         * lib/safe-read.c: Remove TYPE_SIGNED; no longer needed.
34572         * lib/savedir.c: Include <stddef.h> instead of defining NULL.
34573
34574         * lib/addext.c (addext): Use assignment rather than cast, to avoid
34575         warnings on some platforms.
34576
34577         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
34578         arbitrarily.
34579
34580 2003-05-26  Jim Meyering  <jim@meyering.net>
34581
34582         Merge in a change from coreutils:
34583         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Test the cache variable, not one
34584         that is guaranteed to be `no'.  Use `no_such_member' to indicate
34585         that condition, rather than `-1' which is slightly misleading.
34586         Change the name of the cache variable to have the gl_ prefix.
34587         Prompted by a patch from Richard Dawe for DJGPP.
34588
34589 2003-05-24  Karl Berry  <karl@gnu.org>
34590
34591         * config/config.guess: update from prep.
34592
34593 2003-05-22  Karl Berry  <karl@gnu.org>
34594
34595         * gnulib-tool (func_usage): =LIBRARY not =libRARY in help msg.
34596
34597 2003-05-20  Karl Berry  <karl@gnu.org>
34598
34599         * config/config.guess: update from prep.
34600
34601 2003-05-18  Karl Berry  <karl@gnu.org>
34602
34603         * config/srclistvars.sh (TEXMF): use TEXMFROOT instead, since TEXMF
34604         might actually be set by the user.
34605
34606         * config/depcomp, install-sh, mdate-sh: update from automake.
34607
34608 2003-05-17  Bruno Haible  <bruno@clisp.org>
34609
34610         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Fix a quoting bug leading to an
34611         invalid expansion for AC_EGREP_CPP.
34612         * m4/strtoimax.m4 (gl_FUNC_STRTOIMAX): Likewise.
34613         * m4/strtoumax.m4 (gl_FUNC_STRTOUMAX): Likewise.
34614         Suggested by Akim Demaille <akim@epita.fr> in
34615         http://mail.gnu.org/archive/html/bug-autoconf/2003-05/threads.html
34616
34617 2003-05-12  Jim Meyering  <jim@meyering.net>
34618
34619         * lib/strftime.c (my_strftime): Let the `-' (no-pad) flag affect
34620         the space-padded-by-default conversion specifiers, %e, %k, %l.
34621
34622 2003-05-12  Bruno Haible  <bruno@clisp.org>
34623
34624         * lib/linebreak.c (iconv_string_length): Don't return -1 just because
34625         the string is longer than 4 KB.
34626
34627 2003-05-11  Karl Berry  <karl@gnu.org>
34628
34629         * config/config.{guess,sub}: update from prep.
34630
34631 2003-05-09  Bruno Haible  <bruno@clisp.org>
34632
34633         * modules/error: Add m4/strerror_r.m4 to file list.
34634
34635 2003-05-03  Bruno Haible  <bruno@clisp.org>
34636
34637         Upgrade to Unicode-4.0.
34638         * lib/linebreak.c (nonspacing_table_data): Change width of U+00AD,
34639         U+0350..U+0357, U+035D..U+035F, U+0600..U+0603, U+0610..U+0615,
34640         U+0656..U+0658, U+0A01, U+0AE2..U+0AE3, U+0CBC, U+17B4..U+17B5,
34641         U+17DD, U+1920..U+1922, U+1927..U+192B, U+1932, U+1939..U+193B
34642         from 1 to 0. Change width of U+0CBF, U+0CC6, U+180E from 0 to 1.
34643         (uc_width): Change width of U+4DC0..U+4DFF from 2 to 1. Change width
34644         of U+2A6D7..U+2F7FF, U+2FA1E..U+2FFFD, U+30000..U+3FFFD from 1 to 2.
34645         Change width of U+E0100..U+E01EF from 1 to 0.
34646
34647 2003-04-25  Jim Meyering  <jim@meyering.net>
34648
34649         * lib/copy-file.c (copy_file_preserving): Declare buf_size to be
34650         of type size_t, not int.
34651
34652 2003-04-25  Bruno Haible  <bruno@clisp.org>
34653
34654         * lib/copy-file.c: Include <stddef.h>, for size_t.
34655
34656 2003-04-21  Paul Eggert  <eggert@twinsun.com>
34657
34658         * m4/error.m4 (gl_ERROR): Do not put under dynamic conditions some
34659         code which expansion is under static control.  Patch imported from
34660         Akim Demaille's patch to Bison; see
34661         <http://mail.gnu.org/archive/html/bison-patches/2003-03/msg00057.html>.
34662
34663 2003-04-14  Bruno Haible  <bruno@clisp.org>
34664
34665         * m4/error.m4 (jm_PREREQ_ERROR): Use AC_FUNC_VPRINTF.
34666
34667 2003-04-11  Jim Meyering  <jim@meyering.net>
34668
34669         Merge changes from Coreutils.
34670
34671         2003-03-22  Jim Meyering  <jim@meyering.net>
34672
34673         * lib/strftime.c (widen): Cast alloca return value to proper type.
34674
34675         2003-01-19  Ulrich Drepper  <drepper@redhat.com>
34676
34677         From GNU libc.
34678         * lib/strftime.c (my_strftime): Handle very large width
34679         specifications for numeric values correctly.  Improve checks for
34680         overflow.
34681
34682         2003-01-19  Jim Meyering  <jim@meyering.net>
34683
34684         * lib/strftime.c (widen) [COMPILE_WIDE]: Merge nearly-identical
34685         definitions.
34686         (nl_get_alt_digit) [! defined my_strftime]: Define.
34687         (my_strftime) [_NL_CURRENT]: Merge nearly-identical uses of
34688         _nl_get_alt_digit and _nl_get_walt_digit.
34689
34690         * lib/strftime.c (my_strftime): Merge in locale-related changes from
34691         libc. These changes have no effect outside of _LIBC.
34692
34693 2003-04-10  Bruno Haible  <bruno@clisp.org>
34694
34695         * modules/findprog: New file.
34696         * MODULES.html.sh (func_all_modules): Add it.
34697
34698 2003-04-10  Bruno Haible  <bruno@clisp.org>
34699
34700         * m4/findprog.m4: New file.
34701         * m4/eaccess.m4: New file.
34702
34703 2003-04-10  Bruno Haible  <bruno@clisp.org>
34704
34705         * lib/findprog.h: New file, from GNU gettext.
34706         * lib/findprog.c: New file, from GNU gettext.
34707
34708 2003-04-05  Jim Meyering  <jim@meyering.net>
34709
34710         Merge changes from Coreutils.
34711
34712         * lib/exclude.h (PARAMS): Remove definition and uses.
34713         * lib/exclude.c: Remove uses of `PARAMS'.
34714
34715         * lib/dirname.c [TEST_DIRNAME]: Update build instructions for test.
34716         Add test-cases for DOS filenames. Declare program_name.
34717         (main): Set up program_name.  Patch by Rich Dawe.
34718
34719         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
34720         error from mntctl.
34721         Use mntctl's return value to drive the entry-processing loop, since
34722         we can't rely on the value of the vmt_length member in the last
34723         entry.  On some systems doing so could result in exhausting
34724         virtual memory.  Based in part on a patch from Mike Jetzer.
34725
34726 2003-04-04  Bruno Haible  <bruno@clisp.org>
34727
34728         * modules/linebreak: New file.
34729         * MODULES.html.sh (func_all_modules): Add it.
34730
34731 2003-04-04  Bruno Haible  <bruno@clisp.org>
34732
34733         * m4/linebreak.m4: New file.
34734
34735 2003-04-04  Bruno Haible  <bruno@clisp.org>
34736
34737         * lib/linebreak.h: New file, from GNU gettext.
34738         * lib/linebreak.c: New file, from GNU gettext with slight
34739         modifications.
34740         * lib/lbrkprop.h: New file, from GNU gettext.
34741
34742 2003-04-03  Bruno Haible  <bruno@clisp.org>
34743
34744         * modules/utf8-ucs4: New file.
34745         * modules/utf16-ucs4: New file.
34746         * modules/ucs4-utf8: New file.
34747         * modules/ucs4-utf16: New file.
34748         * MODULES.html.sh (func_all_modules): Add them.
34749
34750 2003-04-03  Bruno Haible  <bruno@clisp.org>
34751
34752         * m4/utf-ucs4.m4: New file.
34753         * m4/ucs4-utf.m4: New file.
34754
34755 2003-04-03  Bruno Haible  <bruno@clisp.org>
34756
34757         * lib/utf8-ucs4.h: New file, from GNU gettext.
34758         * lib/utf16-ucs4.h: New file, from GNU gettext.
34759         * lib/ucs4-utf8.h: New file, from GNU gettext.
34760         * lib/ucs4-utf16.h: New file, from GNU gettext.
34761
34762 2003-04-02  Bruno Haible  <bruno@clisp.org>
34763
34764         * modules/binary-io: New file.
34765         * MODULES.html.sh (func_all_modules): Add it.
34766
34767 2003-04-02  Bruno Haible  <bruno@clisp.org>
34768
34769         * lib/binary-io.h: New file, from GNU gettext.
34770
34771 2003-04-01  Bruno Haible  <bruno@clisp.org>
34772
34773         * modules/pathname: New file.
34774         * MODULES.html.sh (func_all_modules): Add it.
34775
34776 2003-04-01  Bruno Haible  <bruno@clisp.org>
34777
34778         * lib/pathname.h: New file, from GNU gettext.
34779         * lib/concatpath.c: New file, from GNU gettext.
34780
34781 2003-03-30  Bruno Haible  <bruno@clisp.org>
34782
34783         * m4/copy-file.m4 (gl_COPY_FILE): Add check for chown().
34784
34785 2003-03-30  Bruno Haible  <bruno@clisp.org>
34786
34787         * lib/copy-file.c (copy_file_preserving): Don't set owner if the
34788         function chown() doesn't exist.
34789
34790 2003-03-28  Bruno Haible  <bruno@clisp.org>
34791
34792         * modules/copy-file: New file.
34793         * MODULES.html.sh (func_all_modules): Add it.
34794
34795 2003-03-28  Bruno Haible  <bruno@clisp.org>
34796
34797         * m4/copy-file.m4: New file.
34798
34799 2003-03-28  Bruno Haible  <bruno@clisp.org>
34800
34801         * lib/copy-file.h: New file, from GNU gettext.
34802         * lib/copy-file.c: New file, from GNU gettext.
34803
34804 2003-03-18  Jim Meyering  <jim@meyering.net>
34805
34806         * lib/quote.c (quote_n): Fix typo in comment.
34807
34808 2003-03-18  Bruno Haible  <bruno@clisp.org>
34809
34810         * m4/onceonly.m4: Use m4_defn instead of defn, for better error
34811         checking.
34812         * m4/onceonly_2_57.m4: Likewise.
34813
34814 2003-03-17  Bruno Haible  <bruno@clisp.org>
34815
34816         * m4/onceonly.m4: Require autoconf 2.54 or newer.
34817         (m4_quote): Remove macro.
34818         * m4/onceonly_2_57.m4: Require autoconf 2.54 or newer.
34819
34820 2003-03-14  Jim Meyering  <jim@meyering.net>
34821
34822         Merge changes from Coreutils.
34823         * lib/obstack.h (obstack_object_size): Declare temporary, __o,
34824         to be const, in order to avoid warnings.
34825         (obstack_room): Likewise.
34826         (obstack_empty_p): Likewise.
34827
34828 2003-03-14  Bruno Haible  <bruno@clisp.org>
34829
34830         * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE,
34831         AC_CHECK_DECLS_ONCE): Quote AC_FOREACH variable-expansions properly.
34832
34833 2003-03-13  Paul Eggert  <eggert@twinsun.com>
34834
34835         Merge changes from Bison.
34836         * lib/obstack.h: (__INT_TO_PTR) [__STDC__]: Cast result to
34837         (void *) to avoid diagnostic with native c89 on SGI IRIX 6.5
34838         when compiling Bison 1.875's `bitset bset = obstack_alloc
34839         (bobstack, bytes);'.  Problem reported by Nelson H. F. Beebe.
34840         * lib/hash.c: Include <stdbool.h> unconditionally.
34841
34842 2003-03-13  Paul Eggert  <eggert@twinsun.com>
34843
34844         * m4/onceonly.m4 (m4_quote): New macro.
34845         (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE, AC_CHECK_DECLS_ONCE):
34846         Quote AC_FOREACH variable-expansions properly.
34847
34848 2003-03-13  Paul Eggert  <eggert@twinsun.com>
34849
34850         * doc/COPYING.DOC, fdl.texi: Sync with latest FSF version.
34851
34852 2003-03-09  Paul Eggert  <eggert@twinsun.com>
34853
34854         * lib/argmatch.c (EXIT_FAILURE): Define if the system doesn't.
34855         Reported by Bruce Becker; see:
34856         http://mail.gnu.org/archive/html/bug-bison/2003-03/msg00017.html
34857
34858 2003-03-03  Paul Eggert  <eggert@twinsun.com>
34859             Bruno Haible  <bruno@clisp.org>
34860
34861         * lib/mbswidth.h: Include <wchar.h>. Needed for UnixWare 7.1.1.
34862         Reported by John Hughes, see
34863         http://mail.gnu.org/archive/html/bug-bison/2003-02/msg00030.html
34864
34865 2003-02-20  Bruno Haible  <bruno@clisp.org>
34866
34867         * MODULES.html.sh (func_all_modules): Add poll.
34868
34869 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
34870
34871         * modules/poll: New file.
34872
34873 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
34874
34875         * lib/poll_.h: New file.
34876         * lib/poll.c: New file.
34877
34878 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
34879
34880         * m4/poll.m4: New file.
34881
34882 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
34883
34884         * modules/mathl: New file.
34885
34886 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
34887
34888         * lib/mathl.h: New file.
34889         * lib/acosl.c: New file.
34890         * lib/asinl.c: New file.
34891         * lib/atanl.c: New file.
34892         * lib/ceill.c: New file.
34893         * lib/cosl.c: New file.
34894         * lib/expl.c: New file.
34895         * lib/floorl.c: New file.
34896         * lib/frexpl.c: New file.
34897         * lib/ldexpl.c: New file.
34898         * lib/logl.c: New file.
34899         * lib/sincosl.c: New file.
34900         * lib/sinl.c: New file.
34901         * lib/sqrtl.c: New file.
34902         * lib/tanl.c: New file.
34903         * lib/trigl.c: New file.
34904         * lib/trigl.h: New file.
34905
34906 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
34907
34908         * m4/mathl.m4: New file.
34909
34910 2003-02-18  Bruno Haible  <bruno@clisp.org>
34911
34912         * MODULES.html.sh (func_all_modules): Add mathl.
34913
34914 2003-02-17  Bruno Haible  <bruno@clisp.org>
34915
34916         * modules/mkdtemp: New module.
34917         * MODULES.html.sh (func_all_modules): Add it.
34918
34919 2003-02-17  Bruno Haible  <bruno@clisp.org>
34920
34921         * m4/mkdtemp.m4: New file, from GNU gettext with modifications.
34922
34923 2003-02-17  Bruno Haible  <bruno@clisp.org>
34924
34925         * lib/mkdtemp.h: New file, from GNU gettext.
34926         * lib/mkdtemp.c: New file, from GNU gettext.
34927
34928 2003-02-02  Jim Meyering  <jim@meyering.net>
34929
34930         * m4/regex.m4 (jm_INCLUDED_REGEX): Detect broken re_search in
34931         e.g. glibc-2.2.93.
34932
34933 2003-01-31  Bruno Haible  <bruno@clisp.org>
34934
34935         * m4/rename.m4 (vb_FUNC_RENAME): Add a redirection from 'rename' to
34936         'rpl_rename'.
34937         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Add a redirection from 'strnlen' to
34938         'rpl_strnlen'.
34939         * m4/strtod.m4 (gl_FUNC_STRTOD): Add a redirection from 'strtod' to
34940         'rpl_strtod'.
34941         * m4/utime.m4 (jm_FUNC_UTIME): Add a redirection from 'utime' to
34942         'rpl_utime'.
34943
34944 2003-01-31  Bruno Haible  <bruno@clisp.org>
34945
34946         * lib/rename.c: #undef rename before defining rpl_rename.
34947         * lib/strnlen.c: #undef strnlen, define rpl_strnlen instead of strnlen.
34948
34949 2003-01-30  Bruno Haible  <bruno@clisp.org>
34950
34951         * modules/vasnprintf, modules/vasprintf: New modules.
34952         * MODULES.html.sh (func_all_modules): Add them.
34953
34954 2003-01-30  Bruno Haible  <bruno@clisp.org>
34955
34956         * m4/signed.m4: New file, from GNU gettext.
34957         * m4/longdouble.m4: New file, from GNU gettext.
34958         * m4/wchar_t.m4: New file, from GNU gettext.
34959         * m4/wint_t.m4: New file, from GNU gettext.
34960         * m4/vasnprintf.m4: New file.
34961         * m4/vasprintf.m4: New file.
34962
34963 2003-01-30  Bruno Haible  <bruno@clisp.org>
34964
34965         * lib/printf-args.h: New file, from GNU gettext.
34966         * lib/printf-args.c: New file, from GNU gettext.
34967         * lib/printf-parse.h: New file, from GNU gettext.
34968         * lib/printf-parse.c: New file, from GNU gettext.
34969         * lib/vasnprintf.h: New file, from GNU gettext.
34970         * lib/vasnprintf.c: New file, from GNU gettext.
34971         * lib/asnprintf.c: New file, from GNU gettext.
34972         * lib/vasprintf.h: New file, from GNU gettext with modifications.
34973         * lib/vasprintf.c: New file, from GNU gettext.
34974         * lib/asprintf.c: New file, from GNU gettext.
34975
34976 2003-01-29  Bruno Haible  <bruno@clisp.org>
34977
34978         * modules/stpncpy: New module.
34979         * MODULES.html.sh (func_all_modules): Add it.
34980
34981 2003-01-29  Bruno Haible  <bruno@clisp.org>
34982
34983         * m4/stpncpy.m4: New file.
34984
34985 2003-01-29  Bruno Haible  <bruno@clisp.org>
34986
34987         * lib/stpncpy.h: New file, from GNU gettext with modifications.
34988         * lib/stpncpy.c: New file, from GNU gettext with modifications.
34989
34990 2003-01-28  Bruno Haible  <bruno@clisp.org>
34991
34992         * modules/c-ctype: New module.
34993         * MODULES.html.sh (func_all_modules): Add it.
34994
34995 2003-01-28  Bruno Haible  <bruno@clisp.org>
34996
34997         * lib/c-ctype.h: New file, from GNU gettext, with changes suggested by
34998         Paul Eggert.
34999         * lib/c-ctype.c: New file, from GNU gettext, with changes suggested by
35000         Paul Eggert.
35001
35002 2003-01-27  Bruno Haible  <bruno@clisp.org>
35003
35004         * modules/xsetenv: New module.
35005         * MODULES.html.sh (func_all_modules): Add it.
35006
35007 2003-01-27  Bruno Haible  <bruno@clisp.org>
35008
35009         * lib/xsetenv.h: New file, from GNU gettext.
35010         * lib/xsetenv.c: New file, from GNU gettext.
35011
35012 2003-01-23  Jim Meyering  <jim@meyering.net>
35013
35014         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Correct typo: s/-1/no/ that kept this
35015         from working on systems without dirfd (at least Irix and OSF1/Tru64).
35016
35017 2003-01-23  Bruno Haible  <bruno@clisp.org>
35018
35019         * modules/minmax: New module.
35020         * MODULES.html.sh (func_all_modules): Add it.
35021
35022 2003-01-23  Bruno Haible  <bruno@clisp.org>
35023
35024         * lib/minmax.h: New file, from GNU gettext, with comments from Paul
35025         Eggert.
35026
35027 2003-01-22  Bruno Haible  <bruno@clisp.org>
35028
35029         * modules/exit: New module.
35030         * MODULES.html.sh (func_all_modules): Add it.
35031
35032 2003-01-22  Bruno Haible  <bruno@clisp.org>
35033
35034         * lib/exit.h: New file, from GNU gettext.
35035
35036 2003-01-19  Bruno Haible  <bruno@clisp.org>
35037
35038         * gnulib-tool: Recognize option --extract-maintainer.
35039         (func_get_maintainer): New function.
35040         * modules/*: Add Maintainer entry.
35041
35042 2003-01-16  Jim Meyering  <jim@meyering.net>
35043
35044         * m4/regex.m4: The `regex' struct is both input and output.
35045         Initialize it before each use.  Patch by Tim Waugh.
35046
35047 2003-01-16  Bruno Haible  <bruno@clisp.org>
35048
35049         * MODULES.html.sh: Add a table of contents. Add the module name as
35050         leftmost column. Add hyperlinks.
35051
35052 2003-01-15  Bruno Haible  <bruno@clisp.org>
35053
35054         * m4/md5.m4 (gl_MD5): Require AC_C_INLINE.
35055
35056 2003-01-15  Bruno Haible  <bruno@clisp.org>
35057
35058         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): Also test the LL suffix.
35059         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Also test the ULL
35060         suffix.
35061
35062 2003-01-15  Bruno Haible  <bruno@clisp.org>
35063
35064         * m4/alloca.m4 (gl_FUNC_ALLOCA): Invoke AC_EGREP_CPP prerequisites.
35065
35066 2003-01-15  Bruno Haible  <bruno@clisp.org>
35067
35068         * lib/stpcpy.h (stpcpy): Use ANSI C function declarations.
35069         * lib/strcase.h (strcasecmp, strncasecmp): Likewise.
35070
35071 2003-01-14  Jim Meyering  <jim@meyering.net>
35072
35073         * lib/same.c (same_name): Tweak a comment.
35074
35075 2003-01-14  Bruno Haible  <bruno@clisp.org>
35076
35077         * lib/same.c (same_name): Reorder tests so as to avoid calling stat()
35078         when a string comparison is sufficient.
35079
35080 2003-01-14  Bruno Haible  <bruno@clisp.org>
35081
35082         * lib/readtokens.c (readtoken): Cast character to 'unsigned char', not
35083         'unsigned int'.
35084
35085 2003-01-14  Bruno Haible  <bruno@clisp.org>
35086
35087         * lib/hash-pjw.c: Add comment about low quality of this function.
35088
35089 2003-01-13  Bruno Haible  <bruno@clisp.org>
35090
35091         * modules/stpcpy: Distribute lib/stpcpy.h.
35092         * modules/setenv: Depend on alloca. Distribute lib/setenv.h.
35093
35094 2003-01-13  Bruno Haible  <bruno@clisp.org>
35095
35096         * modules/*: Add a description.
35097         * modules/strpbrk: Fix Makefile.am snippet.
35098         * modules/strtoimax: Fix dependencies.
35099         * modules/strtoumax: Likewise.
35100
35101 2003-01-13  Bruno Haible  <bruno@clisp.org>
35102
35103         * gnulib-tool (func_create_testdir): Substitute lib_OBJECTS.
35104         * modules/alloca (Makefile.am): All object files depend on alloca.h.
35105         * modules/stdbool (Makefile.am): All object files depend on stdbool.h.
35106
35107 2003-01-13  Bruno Haible  <bruno@clisp.org>
35108
35109         * gnulib-tool (func_create_testdir): Store config/* files in the main
35110         directory.
35111         * config.rpath: Move to ...
35112         * config/config.rpath: ... here.
35113         * modules/gettext: Contains config/config.rpath, not config.rpath.
35114         * modules/iconv: Likewise.
35115
35116 2003-01-12  Paul Eggert  <eggert@twinsun.com>
35117
35118         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
35119         to avoid collisions with libcurses and libreadline.
35120
35121         * m4/getstr.m4: Remove.
35122         * m4/getline.m4 (gl_PREREQ_GETLINE): Require AC_HEADER_STDC.
35123
35124 2003-01-12  Paul Eggert  <eggert@twinsun.com>
35125
35126         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
35127         to avoid collisions with libcurses and libreadline.
35128
35129         * lib/Makefile.am (libfetish_a_SOURCES): Remove getstr.c, getstr.h.
35130         * lib/getstr.h, getstr.c: Remove.
35131         * lib/getline.c: Include "getline.h", to check interface.
35132         Move body of old getstr.c here: this defines MIN_CHUNK and
35133         declares getdelim2, which is renamed from getstr.
35134         (getline, getdelim): Adjust to renaming of getstr -> getdelim2.
35135
35136         * lib/linebuffer.c (readlinebuffer): Renamed from readline.
35137         All uses changed.
35138         * lib/linebuffer.h: Likewise.
35139         (readline): Remove backward-compatibility macro.
35140
35141 2003-01-12  Paul Eggert  <eggert@twinsun.com>
35142
35143         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
35144         to avoid collisions with libcurses and libreadline.
35145         * getstr: Remove.
35146         * MODULES.html.sh: Remove getstr.
35147         * modules/getline: Depend on unlocked-io, not getstr.
35148
35149 2003-01-12  Jim Meyering  <jim@meyering.net>
35150
35151         * lib/makepath.c: Don't test HAVE_ERRNO_H.  It's not necessary.
35152
35153 2003-01-10  Bruno Haible  <bruno@clisp.org>
35154
35155         * modules/alloca: Change Makefile.am requirements. Simplify Include
35156         requirements. Add lib/alloca_.h to file list.
35157
35158 2003-01-10  Bruno Haible  <bruno@clisp.org>
35159
35160         * m4/alloca.m4 (gl_FUNC_ALLOCA): Also define ALLOCA_H.
35161
35162 2003-01-10  Bruno Haible  <bruno@clisp.org>
35163
35164         * lib/alloca_.h: New file.
35165         * lib/getdate.y: Unconditionally include alloca.h.
35166         * lib/makepath.c: Likewise.
35167         * lib/setenv.c: Likewise.
35168         * lib/userspec.c: Likewise.
35169
35170 2003-01-09  Karl Berry  <karl@gnu.org>
35171
35172         * MODULES.html.sh: include `dirname $0` in PATH, to find
35173         gnulib-tool.
35174
35175 2003-01-09  Bruno Haible  <bruno@clisp.org>
35176
35177         * modules/stdbool: Change configure.ac, Makefile.am requirements.
35178         Simplify Include requirements. Add lib/stdbool.h.in to file list.
35179
35180 2003-01-09  Bruno Haible  <bruno@clisp.org>
35181
35182         * m4/stdbool.m4 (AM_STDBOOL_H): New macro.
35183
35184 2003-01-09  Bruno Haible  <bruno@clisp.org>
35185
35186         * lib/stdbool.h.in: New file.
35187
35188 2003-01-09  Bruno Haible  <bruno@clisp.org>
35189
35190         * gnulib-tool (func_all_modules): Ignore files ending in ~.
35191         * MODULES.html.sh: Likewise.
35192
35193 2003-01-08  Jim Meyering  <jim@meyering.net>
35194
35195         * lib/full-write.c: Undefine and define-away `const' after inclusion
35196         of errno.h, not before.  Suggestion from Bruno Haible.
35197
35198 2003-01-08  Bruno Haible  <bruno@clisp.org>
35199
35200         * modules/full-read: Depend on full-write.
35201
35202 2003-01-08  Bruno Haible  <bruno@clisp.org>
35203
35204         * lib/safe-read.c: Include specification header first, to ensure its
35205         selfcontainedness.
35206         * lib/full-write.c: Likewise.
35207
35208 2003-01-07  Jim Meyering  <jim@meyering.net>
35209
35210         * lib/full-write.c: Rework so that it may serve to define full_read,
35211         too.
35212         * lib/full-read.c: Simply #define FULL_READ and include full-write.c.
35213
35214 2003-01-07  Bruno Haible  <bruno@clisp.org>
35215
35216         * lib/strtoimax.c: Include <stdint.h> as an alternative to
35217         <inttypes.h>.
35218         * lib/xstrtol.h: Likewise.
35219         * lib/xstrtoimax.c: Likewise.
35220         * lib/xstrtoumax.c: Likewise.
35221         * lib/human.h: Likewise.
35222
35223         * lib/tempname.c: Include <inttypes.h> too. Avoids a compilation error
35224         on systems that have <inttypes.h> but not <stdint.h>.
35225
35226 2003-01-07  Bruno Haible  <bruno@clisp.org>
35227
35228         * MODULES.html.sh: Add copyright notice.
35229         (missed_files): Omit CVS directory entries.
35230         (func_module): Make it work with sed-3.02.
35231         * MODULES.txt: Remove file.
35232
35233 2003-01-06  Jim Meyering  <jim@meyering.net>
35234
35235         * lib/version-etc.c: Update year in translatable copyright string.
35236
35237 2003-01-03  Karl Berry  <karl@gnu.org>
35238
35239         * config/config.{guess,sub}: update from prep.
35240
35241 2003-01-02  Karl Berry  <karl@gnu.org>
35242
35243         * doc/COPYING.DOC: belatedly updated to 1.2.
35244
35245 2003-01-01  Karl Berry  <karl@gnu.org>
35246
35247         * gnulib-tool (func_verify_module): report module name $module in
35248         error message, not $1.
35249         * gnulib-tool (create-testdir): don't complain if destdir couldn't
35250         be created, only if it doesn't exist.
35251         * gnulib-tool (last_checkin_date): don't expand the $Date here.
35252
35253 2002-12-31  Paul Eggert  <eggert@twinsun.com>
35254
35255         * m4/memcoll.m4 (gl_MEMCOLL): Require AC_FUNC_MEMCMP.
35256
35257 2002-12-31  Paul Eggert  <eggert@twinsun.com>
35258
35259         * lib/memcoll.c (memcoll): Fall back on a simple algorithm using
35260         memcmp if strcoll doesn't work.
35261
35262 2002-12-31  Bruno Haible  <bruno@clisp.org>
35263
35264         * lib/utime.c (utime_null): No need to call ftruncate if the file was
35265         nonempty.
35266
35267 2002-12-31  Bruno Haible  <bruno@clisp.org>
35268
35269         * lib/memcoll.c (STRCOLL): New macro.
35270         (memcoll): Use it.
35271
35272 2002-12-31  Bruno Haible  <bruno@clisp.org>
35273
35274         * lib/localcharset.h: New file.
35275         * lib/localcharset.c: Include it.
35276         * lib/unicodeio.c: Likewise.
35277
35278 2002-12-31  Bruno Haible  <bruno@clisp.org>
35279
35280         * lib/getstr.h (getstr): Define, to avoid clash with libcurses.
35281         * lib/linebuffer.h (readline): Define, to avoid clash with libreadline.
35282
35283 2002-12-31  Bruno Haible  <bruno@clisp.org>
35284
35285         * lib/getline.h: Include <stddef.h>, for size_t.
35286
35287         * lib/unicodeio.h: Include <stddef.h>, for size_t.
35288         * lib/unicodeio.c: Don't include <stddef.h>.
35289
35290 2002-12-31  Bruno Haible  <bruno@clisp.org>
35291
35292         * lib/getdate.y (get_date): Test HAVE_STRUCT_TM_TM_ZONE, not
35293         HAVE_TM_ZONE.
35294
35295 2002-12-24  Karl Berry  <karl@gnu.org>
35296
35297         * config/config.guess: update from prep.
35298
35299 2002-12-24  Bruno Haible  <bruno@clisp.org>
35300
35301         General infrasructure.
35302         * m4/README: Rewritten.
35303         * m4/onceonly.m4: New file.
35304         * m4/onceonly_2_57.m4: New file.
35305
35306         Module atexit.
35307         * m4/atexit.m4: New file.
35308
35309         Module strtod.
35310         * m4/strtod.m4: New file.
35311
35312         Module strtol.
35313         * m4/strtol.m4: New file.
35314
35315         Module strtoul.
35316         * m4/strtoul.m4: New file.
35317
35318         Module memchr.
35319         * m4/memchr.m4: New file.
35320
35321         Module memcmp.
35322         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): New macro.
35323         (jm_FUNC_MEMCMP): Invoke it.
35324
35325         Module memcpy.
35326         * m4/memcpy.m4: New file.
35327
35328         Module memmove.
35329         * m4/memmove.m4: New file.
35330
35331         Module memset.
35332         * m4/memset.m4: New file.
35333
35334         Module strcspn.
35335         * m4/strcspn.m4: New file.
35336
35337         Module strpbrk.
35338         * m4/strpbrk.m4: New file.
35339
35340         Module strstr.
35341         * m4/strstr.m4: New file.
35342
35343         Module strerror.
35344         * m4/strerror.m4: New file.
35345
35346         Module mktime.
35347         * m4/mktime.m4: Renamed from jm-mktime.m4.
35348         (gl_PREREQ_MKTIME): New macro.
35349         (gl_FUNC_MKTIME): Renamed from jm_FUNC_MKTIME. Invoke gl_PREREQ_MKTIME.
35350
35351         Module malloc.
35352         * m4/malloc.m4 (gl_PREREQ_MALLOC): New macro.
35353         (jm_FUNC_MALLOC): Use AC_FUNC_MALLOC. Invoke gl_PREREQ_MALLOC.
35354         Don't define HAVE_DONE_WORKING_MALLOC_CHECK, since nothing uses it.
35355
35356         Module realloc.
35357         * m4/realloc.m4 (gl_PREREQ_REALLOC): New macro.
35358         (jm_FUNC_REALLOC): Use AC_FUNC_REALLOC. Invoke gl_PREREQ_REALLOC.
35359         Don't define HAVE_DONE_WORKING_REALLOC_CHECK, since nothing uses it.
35360
35361         Module strftime.
35362         * m4/tm_gmtoff.m4: New file, extracted from strftime.m4.
35363         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Use AC_FUNC_STRFTIME.
35364         Don't test for bcopy (we are not emacs). Invoke AC_TYPE_MBSTATE_T and
35365         gl_TM_GMTOFF.
35366         (_jm_STRFTIME_PREREQS, jm_FUNC_GNU_STRFTIME): Use onceonly macros.
35367
35368         Module xalloc.
35369         * m4/xalloc.m4: New file.
35370
35371         Module alloca.
35372         * m4/alloca.m4: New file.
35373
35374         Module putenv.
35375         * m4/putenv.m4 (gl_PREREQ_PUTENV): New macro.
35376         (jm_FUNC_PUTENV): Invoke it.
35377
35378         Module setenv.
35379         * m4/setenv.m4 (gt_FUNC_SETENV): New macro.
35380         (gt_CHECK_VAR_DECL): Fix quoting error that led to infinite loop in m4
35381         when invoked twice.
35382         (gt_PREREQ_SETENV, gt_PREREQ_UNSETENV): New macros, replacing old
35383         gt_FUNC_SETENV.
35384
35385         Module memrchr.
35386         * m4/memrchr.m4: New file.
35387
35388         Module stpcpy.
35389         * m4/stpcpy.m4: New file.
35390
35391         Module strcase.
35392         * m4/strcase.m4: New file.
35393
35394         Module strdup.
35395         * m4/strdup.m4: New file.
35396
35397         Module strnlen.
35398         * m4/strnlen.m4: New file.
35399
35400         Module strndup.
35401         * m4/strndup.m4: New file.
35402
35403         Module xstrtod.
35404         * m4/xstrtod.m4: New file.
35405
35406         Module xstrtol.
35407         * m4/xstrtol.m4: New file.
35408
35409         Module getdate.
35410         * m4/getdate.m4: New file.
35411
35412         Module unlocked-io.
35413         * m4/unlocked-io.m4: Renamed from jm-glibc-io.m4.
35414         (jm_FUNC_GLIBC_UNLOCKED_IO): Invoke AC_GNU_SOURCE. Use onceonly macros.
35415         * m4/jm-glibc-io.m4n: Remove file.
35416
35417         Module long-options.
35418         * m4/long-options.m4: New file.
35419
35420         Module md5.
35421         * m4/md5.m4: New file.
35422
35423         Module sha.
35424         * m4/sha.m4: New file.
35425
35426         Module getstr.
35427         * m4/getstr.m4: New file.
35428
35429         Module getline.
35430         * m4/getline.m4 (gl_PREREQ_GETLINE): New macro.
35431         (AM_FUNC_GETLINE): Invoke AC_GNU_SOURCE. Use <stdlib.h>, not
35432         <sys/types.h>, for size_t. Use the function name gnu_getline, not
35433         simply getline. Infoke gl_PREREQ_GETLINE.
35434
35435         Module obstack.
35436         * m4/obstack.m4: New file.
35437
35438         Module hash.
35439         * m4/hash.m4: New file.
35440
35441         Module readtokens.
35442         * m4/readtokens.m4: New file.
35443
35444         Module strverscmp.
35445         * m4/strverscmp.m4: New file.
35446
35447         Module stdbool.
35448         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Add test for _Bool. Needed for
35449         OSF/1.
35450
35451         Module strtoll.
35452         * m4/strtoll.m4: New file.
35453
35454         Module strtoull.
35455         * m4/strtoull.m4: New file.
35456
35457         Module strtoimax.
35458         * m4/strtoimax.m4: New file.
35459
35460         Module strtoumax.
35461         * m4/strtoumax.m4: New file.
35462
35463         Module xstrtoimax.
35464         * m4/xstrtoimax.m4 (jm_XSTRTOIMAX): Renamed from
35465         jm_AC_PREREQ_XSTRTOIMAX.
35466         Moved the strtol prerequisites to strtol.m4.
35467         Moved the strtoll prerequisites to strtoll.m4.
35468         Moved the strtoimax prerequisites to strtoimax.m4.
35469
35470         Module xstrtoumax.
35471         * m4/xstrtoumax.m4 (jm_XSTRTOUMAX): Renamed from
35472         jm_AC_PREREQ_XSTRTOUMAX.
35473         Moved the strtoul prerequisites to strtoul.m4.
35474         Moved the strtoull prerequisites to strtoull.m4.
35475         Moved the strtoumax prerequisites to strtoumax.m4.
35476
35477         Module chown.
35478         * m4/chown.m4 (gl_PREREQ_CHOWN): New macro.
35479         (jm_FUNC_CHOWN): Use AC_FUNC_CHOWN. Invoke gl_PREREQ_CHOWN.
35480
35481         Module dup2.
35482         * m4/dup2.m4: New file.
35483
35484         Module ftruncate.
35485         * m4/ftruncate.m4 (gl_PREREQ_FTRUNCATE): New macro.
35486         (jm_FUNC_FTRUNCATE): Use AC_REPLACE_FUNCS. Invoke gl_PREREQ_FTRUNCATE.
35487
35488         Module getgroups.
35489         * m4/getgroups.m4 (gl_PREREQ_GETGROUPS): New macro.
35490         (jm_FUNC_GETGROUPS): Use AC_FUNC_GETGROUPS. Invoke gl_PREREQ_GETGROUPS.
35491
35492         Module gettimeofday.
35493         * m4/gettimeofday.m4 (gl_PREREQ_GETTIMEOFDAY): New macro.
35494         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use onceonly macros. Invoke
35495         gl_PREREQ_GETTIMEOFDAY.
35496
35497         Module mkdir.
35498         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): New macro.
35499         (UTILS_FUNC_MKDIR_TRAILING_SLASH): Invoke gl_PREREQ_MKDIR.
35500
35501         Module mkstemp.
35502         * m4/mkstemp.m4 (gl_PREREQ_MKSTEMP): New macro.
35503         (jm_PREREQ_TEMPNAME): New macro, from prereq.m4. Also invoke
35504         jm_AC_TYPE_UINTMAX_T.
35505         (UTILS_FUNC_MKSTEMP): Invoke gl_PREREQ_MKSTEMP and jm_PREREQ_TEMPNAME.
35506
35507         Module stat.
35508         * m4/stat.m4 (gl_PREREQ_STAT): New macro.
35509         (jm_FUNC_STAT): Use AC_FUNC_STAT. Invoke gl_PREREQ_STAT.
35510
35511         Module lstat.
35512         * m4/lstat.m4 (gl_PREREQ_LSTAT): New macro.
35513         (jm_FUNC_LSTAT): Use AC_FUNC_LSTAT. Invoke gl_PREREQ_LSTAT.
35514
35515         Module timespec.
35516         * m4/timespec.m4 (gl_TIMESPEC): New macro.
35517         (jm_CHECK_TYPE_STRUCT_TIMESPEC): Add check for <sys/time.h>.
35518         * m4/st_mtim.m4: Indentation.
35519
35520         Module nanosleep.
35521         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): New macro.
35522         (jm_FUNC_NANOSLEEP): Add check for <sys/time.h>. Invoke
35523         gl_PREREQ_NANOSLEEP.
35524
35525         Module regex.
35526         * m4/regex.m4 (jm_PREREQ_REGEX): New macro.
35527         (jm_INCLUDED_REGEX): Invoke jm_PREREQ_REGEX.
35528         (gl_REGEX): New macro.
35529
35530         Module rename.
35531         * m4/rename.m4 (gl_PREREQ_RENAME): New macro.
35532         (vb_FUNC_RENAME): Invoke gl_PREREQ_RENAME.
35533
35534         Module rmdir.
35535         * m4/rmdir.m4: New file.
35536
35537         Module utime.
35538         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Use onceonly macros.
35539         * m4/utime.m4 (gl_PREREQ_UTIME): New macro.
35540         (jm_FUNC_UTIME): Invoke gl_PREREQ_UTIME.
35541
35542         Module dirname.
35543         * m4/dirname.m4: New file.
35544
35545         Module getopt.
35546         * m4/getopt.m4: New file.
35547
35548         Module unistd-safer.
35549         * m4/unistd-safer.m4: New file.
35550
35551         Module fnmatch.
35552         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Include <stdlib.h>, for exit()
35553         declaration.
35554         (gl_PREREQ_FNMATCH_EXTRA): New macro.
35555         (gl_FUNC_FNMATCH_POSIX): New macro.
35556         (gl_FUNC_FNMATCH_GNU): Renamed from AC_FUNC_FNMATCH_GNU. Invoke
35557         gl_PREREQ_FNMATCH_EXTRA. Use the function name gnu_fnmatch, not
35558         simply fnmatch.
35559
35560         Module exclude.
35561         * m4/exclude.m4: New file.
35562
35563         Module human.
35564         * m4/human.m4: New file.
35565
35566         Module acl.
35567         * m4/acl.m4: Nop.
35568
35569         Module backupfile.
35570         * m4/backupfile.m4: New file.
35571         * m4/d-ino.m4: Indentation.
35572
35573         Module fsusage.
35574         * m4/fsusage.m4 (gl_FSUSAGE): New macro.
35575         (jm_STATFS_TRUNCATES): New macro, from coreutils-4.5.4/configure.ac.
35576         (gl_PREREQ_FSUSAGE_EXTRA): New macro.
35577
35578         Module dirfd.
35579         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Invoke some AC_EGREP_CPP
35580         requirements.
35581
35582         Module euidaccess.
35583         * m4/euidaccess.m4: New file.
35584
35585         Module file-type.
35586         * m4/file-type.m4: New file.
35587
35588         Module fileblocks.
35589         * m4/fileblocks.m4: New file.
35590
35591         Module filemode.
35592         * m4/filemode.m4: New file.
35593
35594         Module isdir.
35595         * m4/isdir.m4: New file.
35596
35597         Module lchown.
35598         * m4/lchown.m4 (gl_PREREQ_LCHOWN): New macro.
35599         (jm_FUNC_LCHOWN): Invoke gl_PREREQ_LCHOWN.
35600
35601         Module makepath.
35602         * m4/makepath.m4: New file.
35603
35604         Module modechange.
35605         * m4/modechange.m4: New file.
35606
35607         Module mountlist.
35608         * m4/mountlist.m4: New file.
35609         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Use onceonly macros.
35610         Indentation.
35611
35612         Module path-concat.
35613         * m4/path-concat.m4: New file.
35614
35615         Module pathmax.
35616         * m4/pathmax.m4: New file.
35617
35618         Module same.
35619         * m4/same.m4: New file.
35620
35621         Module save-cwd.
35622         * m4/save-cwd.m4: New file.
35623
35624         Module savedir.
35625         * m4/savedir.m4: New file.
35626
35627         Module xgetcwd.
35628         * m4/xgetcwd.m4: New file.
35629         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Use onceonly macros.
35630
35631         Module xreadlink.
35632         * m4/xreadlink.m4: New file.
35633
35634         Module safe-read.
35635         * m4/safe-read.m4: New file.
35636
35637         Module safe-write.
35638         * m4/safe-write.m4: New file.
35639
35640         Module closeout.
35641         * m4/closeout.m4: New file.
35642
35643         Module stdio-safer.
35644         * m4/stdio-safer.m4: New file.
35645
35646         Module getpass.
35647         * m4/getpass.m4: New file.
35648
35649         Module getugroups.
35650         * m4/getugroups.m4: New file.
35651
35652         Module group-member.
35653         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): New macro.
35654         (jm_FUNC_GROUP_MEMBER): Invoke AC_GNU_SOURCE, gl_PREREQ_GROUP_MEMBER.
35655
35656         Module idcache.
35657         * m4/idcache.m4: New file.
35658
35659         Module userspec.
35660         * m4/userspec.m4: New file.
35661
35662         Module gettime.
35663         * m4/clock_time.m4: New file.
35664         * m4/gettime.m4: New file.
35665
35666         Module settime.
35667         * m4/settime.m4: New file.
35668
35669         Module posixtm.
35670         * m4/posixtm.m4: New file.
35671
35672         Module gethostname.
35673         * m4/gethostname.m4: New file.
35674
35675         Module canon-host.
35676         * m4/canon-host.m4: New file.
35677
35678         Module gettext.
35679         * m4/codeset.m4: New file, from gettext-0.11.5.
35680         * m4/gettext.m4: New file, from gettext-0.11.5.
35681         * m4/glibc21.m4: New file, from gettext-0.11.5.
35682         * m4/iconv.m4: New file, from gettext-0.11.5.
35683         * m4/intdiv0.m4: New file, from gettext-0.11.5.
35684         * m4/inttypes-pri.m4: New file, from gettext-0.11.5.
35685         * m4/inttypes.m4: New file, from gettext-0.11.5.
35686         * m4/inttypes_h.m4: New file, from gettext-0.11.5 with modifications.
35687         * m4/isc-posix.m4: New file, from gettext-0.11.5.
35688         * m4/lcmessage.m4: New file, from gettext-0.11.5.
35689         * m4/lib-ld.m4: New file, from gettext-0.11.5.
35690         * m4/lib-link.m4: New file, from gettext-0.11.5.
35691         * m4/lib-prefix.m4: New file, from gettext-0.11.5.
35692         * m4/progtest.m4: New file, from gettext-0.11.5.
35693         * m4/stdint_h.m4: New file, from gettext-0.11.5 with modifications.
35694         * m4/uintmax_t.m4: New file, from gettext-0.11.5 with modifications.
35695         * m4/ulonglong.m4: New file, from gettext-0.11.5 with modifications.
35696
35697         Module localcharset.
35698         * m4/localcharset.m4: New file.
35699
35700         Module hard-locale.
35701         * m4/hard-locale.m4: New file.
35702
35703         Module mbswidth.
35704         * m4/mbswidth.m4 (gl_MBSWIDTH): Renamed from jm_PREREQ_MBSWIDTH. Use
35705         onceonly macros.
35706         * m4/mbrtowc.m4: Add comment.
35707
35708         Module memcasecmp.
35709         * m4/memcasecmp.m4: New file.
35710
35711         Module memcoll.
35712         * m4/memcoll.m4: New file.
35713
35714         Module unicodeio.
35715         * m4/unicodeio.m4: New file.
35716
35717         Module rpmatch.
35718         * m4/rpmatch.m4: New file.
35719
35720         Module yesno.
35721         * m4/yesno.m4: New file.
35722
35723         Module exitfail.
35724         * m4/exitfail.m4: New file.
35725
35726         Module c-stack.
35727         * m4/c-stack.m4 (gl_C_STACK): New macro.
35728         (jm_PREREQ_C_STACK): Check for <sys/time.h>. Use onceonly macros.
35729
35730         Module error.
35731         * m4/error.m4 (gl_ERROR): New macro.
35732         (jm_PREREQ_ERROR): Use onceonly macros.
35733
35734         Module fatal.
35735         * m4/fatal.m4: New file.
35736
35737         Module getloadavg.
35738         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Use onceonly macros.
35739         (gl_FUNC_GETLOADAVG, gl_PREREQ_GETLOADAVG): New macros.
35740
35741         Module getpagesize.
35742         * m4/getpagesize.m4: New file.
35743
35744         Module getusershell.
35745         * m4/getusershell.m4: New file.
35746
35747         Module physmem.
35748         * m4/physmem.m4: New file.
35749
35750         Module posixver.
35751         * m4/posixver.m4: New file.
35752
35753         Module quotearg.
35754         * m4/quotearg.m4: New file.
35755
35756         Module quote.
35757         * m4/quote.m4: New file.
35758
35759         Module readutmp.
35760         * m4/readutmp.m4: New file, based on jm_PREREQ_READUTMP from prereq.m4.
35761
35762         Module sig2str.
35763         * m4/sig2str.m4: New file.
35764
35765         Other.
35766         * m4/longlong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Remove, moved to
35767         ulonglong.m4.
35768         * m4/intmax_t.m4: New file.
35769         * m4/d-type.m4: Indentation.
35770         * m4/jm-macros.m4: Update.
35771         * m4/prereq.m4 (jm_PREREQ): Update.
35772         (jm_PREREQ_ADDEXT): Remove, obsoleted by backupfile.m4.
35773         (jm_PREREQ_CANON_HOST): Remove, obsoleted by canon-host.m4.
35774         (jm_PREREQ_DIRNAME): Remove, obsoleted by dirname.m4.
35775         (jm_PREREQ_EXCLUDE): Remove, obsoleted by exclude.m4.
35776         (jm_PREREQ_GETPAGESIZE): Remove, obsoleted by getpagesize.m4.
35777         (jm_PREREQ_HARD_LOCALE): Remove, obsoleted by hard-locale.m4.
35778         (jm_PREREQ_HASH): Remove, obsoleted by hash.m4.
35779         (jm_PREREQ_HUMAN): Remove, obsoleted by human.m4.
35780         (jm_PREREQ_MEMCHR): Remove, obsoleted by memchr.m4.
35781         (jm_PREREQ_PHYSMEM): Remove, obsoleted by physmem.m4.
35782         (jm_PREREQ_POSIXVER): Remove, obsoleted by posixver.m4.
35783         (jm_PREREQ_QUOTEARG): Remove, obsoleted by quotearg.m4.
35784         (jm_PREREQ_READUTMP): Remove, obsoleted by readutmp.m4.
35785         (jm_PREREQ_REGEX): Remove, obsoleted by regex.m4.
35786         (jm_PREREQ_STRNLEN): Remove, obsoleted by strnlen.m4.
35787         (jm_PREREQ_TEMPNAME): Remove, obsoleted by mkstemp.m4.
35788         (jm_PREREQ_XGETCWD): Remove, obsoleted by xgetcwd.m4.
35789         (jm_PREREQ_XREADLINK): Remove, obsoleted by xreadlink.m4.
35790         * m4/readdir.m4 (jm_FUNC_READDIR): Use onceonly macros.
35791
35792 2002-12-24  Bruno Haible  <bruno@clisp.org>
35793
35794         * MODULES.txt: Update according to m4/ changes.
35795
35796         Module gettext.
35797         * config.rpath: New file, from gettext-0.11.5.
35798
35799         * modules/*: New module descriptions.
35800         * gnulib-tool: New file.
35801         * MODULES.html.sh: New file.
35802
35803 2002-12-21  Karl Berry  <karl@gnu.org>
35804
35805         * doc/fdl.texi: update to version 1.2.
35806
35807 2002-12-19  Karl Berry  <karl@gnu.org>
35808
35809         * config/config.guess: update from prep.
35810
35811 2002-12-18  Bruno Haible  <bruno@clisp.org>
35812
35813         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't test for localtime_r.
35814         * m4/jm-mktime.m4 (jm_FUNC_MKTIME): Likewise.
35815
35816 2002-12-17  Bruno Haible  <bruno@clisp.org>
35817
35818         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Remove checks for limits.h,
35819         stdlib.h, string.h.
35820
35821 2002-12-17  Bruno Haible  <bruno@clisp.org>
35822
35823         * lib/canon-host.c (strdup): Remove unused declaration.
35824
35825         * lib/fsusage.c: Include full_read.h.
35826         (get_fs_usage): Use full_read instead of safe_read.
35827
35828         * lib/utime.c (utime_null): Use SAFE_READ_ERROR.
35829
35830 2002-12-12  Karl Berry  <karl@gnu.org>
35831
35832         * config/config.guess: update from prep.
35833
35834 2002-12-11  Bruno Haible  <bruno@clisp.org>
35835
35836         * m4/setenv.m4: New file, from gettext-0.11.5.
35837
35838 2002-12-11  Bruno Haible  <bruno@clisp.org>
35839
35840         * lib/setenv.h: Rewritten to cope with systems that have setenv() but
35841         not unsetenv().
35842         * lib/setenv.c, unsetenv.c: Taken from glibc-2.2.4 with the following
35843         modifications:
35844
35845         2002-12-11  Bruno Haible  <bruno@clisp.org>
35846
35847                 * setenv.c (alloca): Fall back to malloc.
35848                 (freea): New macro.
35849                 (setenv): Use freea() to free memory allocated with alloca().
35850
35851         2002-11-13  Bruno Haible  <bruno@clisp.org>
35852
35853                 * setenv.c (compar_fn_t, __add_to_environ, setenv): Use ANSI C
35854                 function declarations.
35855                 * unsetenv.c (unsetenv): Likewise.
35856
35857         2002-03-04  Bruno Haible  <bruno@clisp.org>
35858
35859                 Portability to AIX 4.3.3.
35860                 * unsetenv.c: New file, extracted from setenv.c.
35861                 * setenv.c: Move the unsetenv() function to unsetenv.c.
35862
35863         2001-12-20  Bruno Haible  <bruno@clisp.org>
35864
35865                 * setenv.c (__add_to_environ): Don't call realloc(NULL,...),
35866                 use malloc instead. For SunOS 4.
35867
35868         2001-12-11  Bruno Haible  <bruno@clisp.org>
35869
35870                 * setenv.c: Declare alloca.
35871                 (compar_fn_t): New typedef.
35872                 (KNOWN_VALUE, STORE_VALUE): Use it.
35873
35874         * lib/Makefile.am (libfetish_a_SOURCES): Add setenv.c, unsetenv.c,
35875         setenv.h.
35876
35877 2002-12-10  Paul Eggert  <eggert@twinsun.com>
35878
35879         Port exclude.c and exclude.h to more non-GNU systems, e.g. Solaris 7.
35880         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE, EXCLUDE_WILDCARDS):
35881         Choose values that are less likely to collide with system fnmatch
35882         options.
35883         * lib/exclude.c (FNM_CASEFOLD, FNM_LEADING_DIR): Define to 0 if not
35884         defined (e.g., a pure POSIX system).
35885         (EXCLUDE_macros_do_not_collide_with_FNM_macros): Use FNM_PATHNAME
35886         instead of FNM_FILE_NAME, for compatibility with pure POSIX sytems.
35887
35888 2002-12-06  Paul Eggert  <eggert@twinsun.com>
35889
35890         Undo the 2001-07-02 change for jm-glibc-io, as it was too much of
35891         a pain in practice to deal with generated m4 files.  This change
35892         goes together with the 2002-12-04 unlocked-io.h change in ../lib.
35893
35894         * m4/Makefile.am.in (Makefile.am): Don't mention jm-glibc-io.m4n
35895         and jm-glibc-io.m4, as they are no longer a special case.
35896         * m4/jm-glibc-io.m4: Rename from jm-glibc-io.m4n, and remove the
35897         kludge and the auto-generation stuff.  Check only whether the
35898         functions are declared, not whether they exist, since older hosts
35899         that don't declare the functions can't use the optimization anyway.
35900
35901 2002-12-06  Jim Meyering  <jim@meyering.net>
35902
35903         * lib/error.c: Be consistent: change `#ifndef _LIBC' to `#if !_LIBC'.
35904
35905         Merge in changes from libc's misc/error.c, in preparation
35906         for the merge of gnulib's changes back into libc.
35907
35908         * lib/error.c (_): Define only if not already defined.
35909         Move definition to follow all #include directives.
35910         Include unlocked-io.h only if !_LIBC.
35911         [_LIBC]: Include <libio/libioP.h>.
35912         [USE_IN_LIBIO]: Include <libio/iolibio.h>
35913         (fflush): Tweak definition to use INTUSE.
35914         (putc): Define.
35915
35916 2002-12-05  Paul Eggert  <eggert@twinsun.com>
35917
35918         * lib/alloca.c [defined emacs]: Include "lisp.h".
35919         (xalloc_die) [defined emacs]: New macro.
35920         (free) [defined emacs && defined EMACS_FREE]: Define to EMACS_FREE.
35921         [! defined emacs]: Include <xalloc.h>.
35922         (POINTER_TYPE) [!defined POINTER_TYPE]: New macro.
35923         (pointer): Typedef to POINTER_TYPE *.
35924         (malloc): Remove decl; we now always use xmalloc.
35925         (alloca): Use old-style definition, since Emacs needs this.
35926         Check for arithmetic overflow when computing combined size.
35927
35928 2002-12-04  Paul Eggert  <eggert@twinsun.com>
35929
35930         Do not generate unlocked-io.h automatically, since it's easier to
35931         maintain it by hand.
35932
35933         * lib/unlocked-io.h: New file, from GNU diffutils,
35934         but with proper copyright notice and attribution.
35935         * lib/gen-uio: Remove.
35936         * lib/Makefile.am: Add copyright notice.
35937         (libfetish_a_SOURCES): Add unlocked-io.h.
35938         (BUILT_SOURCES, all-local): Remove unlocked-io.h.
35939         (DISTCLEANFILES, io_functions): Remove macros.
35940         (EXTRA_DIST): Remove gen_uio.
35941         (unlocked-io.h): Remove rule.
35942
35943 2002-12-04  Jim Meyering  <jim@meyering.net>
35944
35945         Reflect the fact that stat.c and lstat.c are no longer generated.
35946         * lib/Makefile.am (BUILT_SOURCES): Remove stat.c and lstat.c.
35947         (DISTCLEANFILES): Likewise.
35948         (EXTRA_DIST): Likewise.
35949         (all_local): Don't depend on stat.c or lstat.c.
35950         (stat.c, lstat.c): Remove rules.
35951         (EXTRA_DIST): Remove xstat.in.
35952
35953         * lib/xstat.in: Remove file.  Contents moved into stat.c.
35954         * lib/stat.c: New file.  Contents mostly from xstat.in.
35955         * lib/stat.c: Rework so that it may serve to define rpl_lstat, too.
35956         * lib/lstat.c: New file. Simply #define LSTAT and include stat.c.
35957
35958         * lib/safe-read.c: Rework so that it may serve to define safe_write,
35959         too.
35960         * lib/safe-write.c: Simply #define SAFE_WRITE and include safe-read.c.
35961
35962 2002-12-03  Jim Meyering  <jim@meyering.net>
35963
35964         * lib/safe-read.c, safe-write.c: Change variable names and comments,
35965         but not semantics, to minimize the differences between these two files.
35966         (safe_read): Change comment to mention SAFE_READ_ERROR.
35967
35968         * lib/safe-read.c (IS_EINTR): Define.
35969         (safe_read): Use IS_EINTR in place of in-function cpp directives.
35970
35971 2002-12-02  Jim Meyering  <jim@meyering.net>
35972
35973         * lib/safe-read.c (EINTR): Define.
35974         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
35975         (INT_MAX): Provide fallback.
35976         (safe_read): Rewrite to iterate IFF the read fails with EINTR.
35977
35978         * lib/safe-read.h (SAFE_READ_ERROR): Define.
35979
35980 2002-12-02  Bruno Haible  <bruno@clisp.org>
35981
35982         * lib/safe-write.c (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM):
35983         Define, taken from safe-read.c.
35984         (INT_MAX): Provide fallback.
35985         (safe_write): Rewrite to iterate IFF the write fails with EINTR.
35986         * lib/safe-write.h (SAFE_WRITE_ERROR): Define.
35987
35988         * lib/safe-read.c (EINTR): Remove definition.
35989         (safe_read): Don't use EINTR if it is absent.
35990
35991 2002-12-01  Jim Meyering  <jim@meyering.net>
35992
35993         * lib/safe-read.c: (safe_read): Also exit the loop when read returns
35994         zero.
35995         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM, INT_MAX): Define.
35996
35997 2002-11-27  Paul Eggert  <eggert@twinsun.com>
35998
35999         * lib/hash.c (hash_lookup, hash_get_first, hash_get_next,
36000         hash_find_entry, hash_rehash): Replace `if (limit <= value) abort ();'
36001         with `if (! (value < limit)) abort ();', for readability.
36002
36003 2002-11-26  Karl Berry  <karl@gnu.org>
36004
36005         * lib/strdup.c: copy from libc again, with jim's ok.
36006         * lib/.cppi-disable: re-add strdup.c
36007
36008 2002-11-25  Karl Berry  <karl@gnu.org>
36009
36010         * lib/strtoll.c: copy from libc, meaning we now #include <strtol.c>
36011         instead of "strtol.c".
36012
36013 2002-11-25  Karl Berry  <karl@gnu.org>
36014
36015         * config/install-sh: update from automake for variable quoting, $0 in
36016         error msgs, etc.
36017
36018         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): new entry.
36019         * config/srclist.txt ($LIBCSRC/sysdeps/generic/strtoll.c lib gpl): new
36020         entry.
36021
36022 2002-11-25  Jim Meyering  <jim@meyering.net>
36023
36024         * lib/mktime.c: Sync from libc, now that it has the latest fix.
36025
36026 2002-11-24  Karl Berry  <karl@gnu.org>
36027
36028         * lib/error.c, getopt.c, getopt.h, getopt1.c, obstack.c, regex.c,
36029         regex.h, strdup.c, strtoll.c, tempname.c: change license to gpl.
36030
36031 2002-11-24  Jim Meyering  <jim@meyering.net>
36032
36033         Update from coreutils:
36034
36035         * lib/mktime.c: Merge in changes from libc.
36036
36037         Avoid a link-time failure on some Linux systems.
36038         * lib/mktime.c (STATIC): Define to be empty (_LIBC) or `static'
36039         (otherwise).
36040         (__mon_yday): Declare with the STATIC attribute.
36041         (__mktime_internal): Likewise.
36042         Based on a report from Greg Schafer.
36043
36044 2002-11-23  Jim Meyering  <jim@meyering.net>
36045
36046         * lib/sig2str.c (str2signum, sig2str): Avoid a warning from gcc:
36047         Use `unsigned', not `int', as type of index.
36048
36049         * lib/xstat.in [@BEGIN_LSTAT_ONLY@]: Include <string.h>.
36050
36051         * lib/fsusage.c: Remove unneeded parentheses around operands of
36052         `defined'.
36053
36054 2002-11-22  Paul Eggert  <eggert@twinsun.com>
36055
36056         * lib/quotearg.h: Allow multiple inclusion by surrounding with
36057         "#ifndef QUOTEARG_H_".  Include <stddef.h>, for size_t,
36058         so that we can be included first.
36059         (PARAMS): Remove; we now assume C89 or later.  All uses removed.
36060         * lib/quotearg.c: Include quotearg.h immediately after config.h.
36061         No need to include stddef.h or sys/types.h any more.
36062         Surround local include files with "", not "<>".
36063         Assume HAVE_LIMITS_H unconditionally, as we assume C89.
36064         Similarly, assume HAVE_C_BACKSLASH_A, CHAR_BIT, UCHAR_MAX, UINT_MAX,
36065         HAVE_STDLIB_H, HAVE_STRING_H, STDC_HEADERS.
36066         (HAVE_MBSINIT): Undef if !HAVE_MBRTOWC.
36067         (mbsinit): Define to 1 if !defined mbsinit && !HAVE_MBSINIT.
36068         (ISPRINT): Remove; no longer needed now that we assume C89.
36069
36070         (clone_quoting_options, quotearg_buffer, quotearg_n_options):
36071         Preserve errno.
36072
36073         (quotearg_buffer_restyled, quotearg_n, quotearg_n_style,
36074         quotearg_char): Use SIZE_MAX rather than
36075         (size_t) -1 when we are talking about "infinity".
36076
36077         (quotearg_buffer_restyled): Fix bug when quoting trigraphs.
36078
36079 2002-11-22  Paul Eggert  <eggert@twinsun.com>
36080
36081         * lib/hash.c: Avoid use of <assert.h>, as the GNU Coding Standards
36082         hint that one should use `if (! x) abort ();' rather than `assert
36083         (x);', and anyway it's one less thing to worry about configuring.
36084         (hash_lookup, hash_get_first, hash_get_next, hash_find_entry,
36085         hash_rehash, hash_insert): Use abort rather than assert.
36086
36087 2002-11-22  Bruno Haible  <bruno@clisp.org>
36088
36089         * lib/safe-read.h: Assume C89. Add comments.
36090         (safe_read): Change return type to size_t.
36091         * lib/safe-read.c (safe_read): Change return type to size_t. Handle
36092         byte counts > SSIZE_MAX correctly.
36093         * lib/safe-write.h: New file.
36094         * lib/safe-write.c: New file.
36095         * lib/full-read.h: New file.
36096         * lib/full-read.c: New file.
36097         * lib/full-write.h: Assume C89. Add comments.
36098         * lib/full-write.c: Include safe-write.h.
36099         (full_write): Rewritten to use safe_write.
36100         Suggested by Jim Meyering and Paul Eggert.
36101
36102 2002-11-21  Jim Meyering  <jim@meyering.net>
36103
36104         * lib/strdup.c (strdup): Tweak comment and initial #if/#include.
36105
36106         Merge in changes from the coreutils.
36107
36108         2002-09-25  Paul Eggert  <eggert@twinsun.com>
36109         * lib/fsusage.c [! HAVE_INTTYPES_H && HAVE_STDINT_H] Include
36110         <stdint.h>.
36111         (UINTMAX_MAX) [!defined UINTMAX_MAX]: New macro.
36112         (PROPAGATE_ALL_ONES): Work even if X is unsigned and narrower than
36113         int.  Work more efficiently if X is the same width as uintmax_t.
36114         Do not compare X to -1, to avoid bogus compiler warning.
36115         (get_fs_usage): (uintmax_t) -1 -> UINTMAX_MAX to avoid a cast.
36116         Don't assume that f_frsize and f_bsize are the same type.
36117
36118         * lib/mountlist.c: #undef MNT_IGNORE before defining it, to avoid
36119         warning on FreeBSD.
36120
36121         * lib/makepath.c (make_path): Restore umask *before* creating the final
36122         component.
36123         (make_path): Minor reformatting.
36124
36125         * lib/xmalloc.c: Adjust to work with new autoconf macros,
36126         AC_FUNC_MALLOC and AC_FUNC_REALLOC: test #ifndef
36127         HAVE_MALLOC/HAVE_REALLOC.
36128
36129         * lib/mountlist.h (ME_DUMMY): Don't count entries of type `auto' as
36130         dummy ones.  At least on GNU/Linux systems, `auto' means something
36131         else.
36132         From Michael Stone.
36133
36134 2002-11-21  Bruno Haible  <bruno@clisp.org>
36135
36136         Remove case insensitive option matching.
36137         * lib/argmatch.h (argcasematch): Remove declaration.
36138         (ARGCASEMATCH): Remove macro.
36139         (__xargmatch_internal): Remove case_sensitive argument.
36140         (XARGMATCH): Update.
36141         (XARGCASEMATCH): Remove macro.
36142         * lib/argmatch.c (argmatch): Renamed from __argmatch_internal. Remove
36143         case_sensitive argument.
36144         (argcasematch): Remove function.
36145         (__xargmatch_internal): Remove case_sensitive argument.
36146         (main): Use XARGMATCH instead of XARGCASEMATCH.
36147
36148         * lib/xmalloc.c: Change compile-time error message. Add comment about
36149         required autoconf version.
36150
36151 2002-11-20  Paul Eggert  <eggert@twinsun.com>
36152
36153         Merge argmatch cleanups from Bison.  Assume C89.
36154
36155         * lib/argmatch.c: Include config.h here, not in argmatch.h.
36156         Include stdlib.h, for EXIT_FAILURE.
36157         Always include <string.h>, since we assume C89.
36158         (EXIT_FAILURE): Remove pre-C89 bug workaround.
36159         * lib/argmatch.h: Do not include <config.h> or <sys/types.h>.
36160         Include <stddef.h> instead, since it's all we need for size_t.
36161         (PARAMS): Remove.  All uses removed.
36162         (ARRAY_CARDINALITY): Do not bother to #undef.
36163         (ARRAY_CARDINALITY, ARGMATCH, ARGCASEMATCH, invalid_arg,
36164         ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
36165         Remove unnecessary parentheses.
36166         (ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
36167         Insert necessary parentheses.
36168         (ARGMATCH_CONSTRAINT, ARGMATCH_VERIFY): New macros.
36169         (ARGMATCH_ASSERT): Use ARGMATCH_CONSTRAINT.
36170
36171 2002-11-19  Bruno Haible  <bruno@clisp.org>
36172
36173         * lib/mbswidth.c: Include mbswidth.h right at the beginning.
36174         * lib/mbswidth.h: Include <stddef.h>, for size_t.
36175
36176         * lib/mbswidth.h (PARAMS): Remove macro.
36177         (mbswidth, mbsnwidth): Use ANSI C function declarations.
36178         * lib/mbswidth.c (mbswidth, mbsnwidth): Likewise.
36179
36180         * lib/gcd.h (PARAMS): Remove macro.
36181         (gcd): Use ANSI C function declarations.
36182         * lib/gcd.c (gcd): Likewise.
36183
36184 2002-11-15  Bruno Haible  <bruno@clisp.org>
36185
36186         * lib/strcspn.c: Include <stddef.h>.
36187         (strcspn): Use ANSI C function declaration. Change return type to
36188         size_t. Use NULL.
36189         * lib/strpbrk.c: Minimize diffs to glibc. Include <stddef.h>.
36190         (strpbrk): Use NULL.
36191         * lib/strpbrk.h (PARAMS): Remove macro.
36192         (strpbrk): Use ANSI C function declaration.
36193         * lib/strstr.c: Don't include <sys/types.h>.
36194         * lib/strstr.h (PARAMS): Remove macro.
36195         (strstr): Use ANSI C function declarations.
36196
36197 2002-11-14  Karl Berry  <karl@gnu.org>
36198
36199         * config/mkinstalldirs: `do' on separate line, instead of
36200         `for var; do'.
36201
36202 2002-11-06  Bruno Haible  <bruno@clisp.org>
36203
36204         * lib/gcd.h (gcd): Change argument type to 'unsigned long'.
36205         * lib/gcd.c (gcd): Likewise.
36206
36207 2002-11-05  Bruno Haible  <bruno@clisp.org>
36208
36209         * lib/gcd.h: New file, from gettext-0.11.5.
36210         * lib/gcd.c: New file, from gettext-0.11.5.
36211
36212 2002-11-05  Bruno Haible  <bruno@clisp.org>
36213
36214         * lib/error.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
36215         * lib/getopt.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
36216         * lib/obstack.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
36217         * lib/regex.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
36218
36219         * lib/argmatch.c: Include gettext.h instead of <locale.h> and
36220         <libintl.h>.
36221         * lib/makepath.c: Include gettext.h instead of <locale.h> and
36222         <libintl.h>.
36223
36224         * lib/closeout.c: Include gettext.h instead of <libintl.h>.
36225         * lib/human.c: Include gettext.h instead of <libintl.h>.
36226         * lib/quotearg.c: Include gettext.h instead of <libintl.h>.
36227         * lib/rpmatch.c: Include gettext.h instead of <libintl.h>.
36228         * lib/unicodeio.c: Include gettext.h instead of <libintl.h>.
36229         * lib/userspec.c: Include gettext.h instead of <libintl.h>.
36230         * lib/version-etc.c: Include gettext.h instead of <libintl.h>.
36231         * lib/xmalloc.c: Include gettext.h instead of <libintl.h>.
36232         (textdomain): Remove definition.
36233         * lib/xmemcoll.c: Include gettext.h instead of <libintl.h>.
36234
36235         * lib/long-options.c: Remove include of <libintl.h> and definition of
36236         _.
36237         * lib/same.c: Remove include of <libintl.h> and definition of _.
36238
36239 2002-11-04  Owen Taylor  <otaylor@redhat.com>
36240
36241         * lib/config.charset: A few additions for Solaris.
36242
36243 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
36244
36245         Make it possible to build libcharset with CC=gcc CFLAGS="-x c++".
36246         * lib/localcharset.c (locale_charset): Declare as extern "C".
36247
36248 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
36249
36250         * lib/config.charset: msdos in uk_UA uses CP1125.
36251
36252 2002-11-04  Bruno Haible  <bruno@clisp.org>
36253
36254         * lib/stpcpy.h: New file, from GNU gettext-0.11.5.
36255         * lib/strcase.h: New file, from GNU gettext-0.11.5.
36256         * lib/strpbrk.h: New file, from GNU gettext-0.11.5.
36257         * lib/strstr.h: New file, from GNU gettext-0.11.5.
36258         * lib/xgetcwd.h: New file, from GNU gettext-0.11.5.
36259
36260 2002-11-04  Bruno Haible  <bruno@clisp.org>
36261
36262         * lib/localcharset.c (locale_charset): Don't return an empty string.
36263
36264 2002-11-04  Bruno Haible  <bruno@clisp.org>
36265
36266         * lib/localcharset.c (get_charset_aliases): Add more Windows specific
36267         aliases.
36268
36269 2002-11-04  Bruno Haible  <bruno@clisp.org>
36270
36271         * lib/config.charset: Update for newest glibc. Add canonical names
36272         ISO-8859-14, KOI8-T, TCVN5712-1, GEORGIAN-PS.
36273
36274 2002-11-04  Bruno Haible  <bruno@clisp.org>
36275
36276         * lib/config.charset: Add support for NetBSD.
36277
36278 2002-11-04  Bruno Haible  <bruno@clisp.org>
36279
36280         * lib/config.charset [msdosdjgpp]: For Russian, use CP866.
36281
36282 2002-11-01  Bruno Haible  <bruno@clisp.org>
36283
36284         * configure.in: Add AC_CONFIG_AUX_DIR call.
36285         (AC_OUTPUT): Add m4/Makefile, lib/Makefile. Remove doc/Makefile,
36286         test/Makefile.
36287         * Makefile.in (subdirs): Add m4, lib. Remove doc, test.
36288
36289 2002-09-28  Karl Berry  <karl@gnu.org>
36290
36291         * config/srclist.txt: can't copy install-sh/mkinstalldirs from
36292         installed automake until the next release, since changes have been
36293         made.
36294
36295 2002-09-25  Karl Berry  <karl@gnu.org>
36296
36297         * lib/strdup.c: copy from libc/string (via ../config/srclist*).
36298         * lib/getopt*: copy from libc/posix.
36299         * lib/gettext.h: copy from gettext.
36300         * lib/.cppi-disable: add strdup.c, gettext.h.
36301
36302 2002-09-25  Karl Berry  <karl@gnu.org>
36303
36304         * config/srclist.txt: enable gettext.h check.
36305         * config/config.{guess,sub}: update from prep.
36306         * config/depcomp, install-sh, mdate-sh, missing, mkinstalldirs: update
36307                 from automake 1.6.3.
36308         See srclist*.
36309
36310 2002-08-23  Stefan Monnier  <monnier@cs.yale.edu>
36311
36312         * regex.c (PATFETCH): Remove the translating fetch.
36313         (PATFETCH_RAW): Rename to PATFETCH.
36314         (set_image_of_range): New fun.
36315         (SET_RANGE_TABLE_WORK_AREA): Use it.
36316         (regex_compile): Don't translate the pattern chars so eagerly.
36317         Only do it when inserting an `exactn' bytecode or when handling
36318         a char-range.
36319         (mutually_exclusive_p): Avoid empty statement.
36320
36321 2002-07-06  Jim Meyering  <meyering@lucent.com>
36322
36323         * m4/README: Don't mention Makefile.am.in.
36324         Outline how I've tested changes to .m4 files.  Yep, it's a pain.
36325
36326 2002-07-01  Jim Meyering  <meyering@lucent.com>
36327
36328         * lib/c-stack.c: Include sys/time.h.
36329         From Volker Borchert.
36330
36331 2002-06-26  Paul Eggert  <eggert@twinsun.com>
36332
36333         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for btowc.
36334
36335 2002-06-26  Paul Eggert  <eggert@twinsun.com>
36336
36337         * lib/fnmatch.c, fnmatch_loop.c (WIDE_CHAR_SUPPORT):
36338         New macro.  Use it uniformly instead of
36339         (defined HAVE_WCTYPE_H && defined HAVE_WCHAR_H).
36340         It also uses HAVE_BTOWC, to fix a porting bug on Solaris 2.5.1
36341         reported by Vin Shelton.
36342
36343 2002-06-22  Paul Eggert  <eggert@twinsun.com>
36344
36345         * lib/c-stack.h (segv_handler, c_stack_action) [! defined SA_SIGINFO]:
36346         Do not assume SA_SIGINFO behavior.
36347         Bug reported by Jim Meyering on NetBSD 1.5.2.
36348
36349 2002-06-22  Jim Meyering  <meyering@lucent.com>
36350
36351         * m4/c-stack.m4: New file, from diffutils-2.8.2.
36352         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_C_STACK.
36353
36354         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Don't require AC__GNU_SOURCE,
36355         now that configure.ac uses AC_GNU_SOURCE.
36356         (jm_MACROS): Rename: jm_FUNC_FNMATCH to AC_FUNC_FNMATCH_GNU.
36357         * m4/prereq.m4 (jm_PREREQ_EXCLUDE): Likewise, wrt jm_FUNC_FNMATCH.
36358
36359         Update to latest tools.  Suggestions from Paul Eggert.
36360         * m4/stdbool.m4: New file, from diffutils-2.8.2.
36361         * m4/gnu-source.m4: Update from diffutils-2.8.2.
36362         * m4/fnmatch.m4: Likewise.
36363         * m4/prereq.m4: Change each use of AC_CHECK_HEADERS(stdbool.h)
36364         to AC_HEADER_STDBOOL
36365
36366 2002-06-22  Jim Meyering  <meyering@lucent.com>
36367
36368         * lib/fnmatch.c (ISASCII, ISPRINT): Undefine, to avoid warning about
36369         redefinition due to Solaris 2.6's definition in /usr/include/sys/euc.h.
36370
36371 2002-06-22  Jim Meyering  <meyering@lucent.com>
36372
36373         * lib/c-stack.c, lib/c-stack.h: New files, from diffutils-2.8.2.
36374
36375         * lib/exitfail.c, exitfail.h: Likewise.
36376         * lib/Makefile.am (libfetish_a_SOURCES): Add exitfail.c and exitfail.h.
36377
36378         * lib/Makefile.am (libfetish_a_SOURCES): Add fnmatch_.h in place
36379         of fnmatch.h.
36380         (EXTRA_DIST): Add fnmatch_loop.c.
36381         (libfetish_a_SOURCES): Add c-stack.c and c-stack.h.
36382
36383         * lib/fnmatch_loop.c: New file, from diffutils-2.8.2.
36384         * lib/fnmatch.c: Update from diffutils-2.8.2.
36385         * lib/fnmatch_.h: New file.  From diffutils-2.8.2.
36386         * lib/fnmatch.h: Remove file.
36387
36388 2002-06-21  Jim Meyering  <meyering@lucent.com>
36389
36390         * m4/c-bs-a.m4: Add comment, from diffutils-2.8.2.
36391         * m4/mbrtowc.m4: Likewise.
36392
36393         * m4/mbstate_t.m4: Update from diffutils-2.8.2.
36394         * m4/mbswidth.m4: Reflect name change:
36395         s/AC_MBSTATE_T/AC_TYPE_MBSTATE_T.
36396         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
36397
36398         * m4/lib-link.m4: Update from gettext-0.11.2.
36399         * m4/gettext.m4: Likewise.
36400
36401         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for hurd.h.
36402         From Alfred M. Szmidt.
36403
36404 2002-06-18  Paul Eggert  <eggert@twinsun.com>
36405
36406         * lib/file-type.h: Report an error if neither S_ISREG nor
36407         S_IFREG is defined, instead of using a test specific to glibc
36408         2.2.  This should be safe, since POSIX requires S_ISREG and
36409         Unix Version 7 had S_IFREG.  We don't need to check for
36410         <sys/types.h> since we don't use any symbols that it defines.
36411
36412 2002-06-15  Richard Dawe  <richdawe@bigfoot.com>
36413
36414         * lib/Makefile.am (lstat.c, stat.c, .sin.sed): Use t-$@, rather than
36415         $@-t, so that each temporary file name is unique and valid in the first
36416         8 characters, for operation under DOS.
36417
36418 2002-06-15  Paul Eggert  <eggert@twinsun.com>
36419
36420         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for st_author.
36421
36422 2002-06-15  Jim Meyering  <meyering@lucent.com>
36423
36424         Work even with DJGPP 2.03, which lacks support for symlinks.
36425         From Richard Dawe.
36426         * lib/xstat.in (S_ISLNK): Define to 0 if neither S_ISLNK nor S_IFLNK
36427         is defined.
36428         * lib/lchown.c (S_ISLNK): Likewise.
36429
36430 2002-06-15  Jim Meyering  <meyering@lucent.com>
36431
36432         * lib/file-type.h (FILE_TYPE_H): Guard entire contents with #ifndef.
36433         For GNU libc 2.2 and newer, ensure that <sys/types.h> and <sys/stat.h>
36434         have been included before this file.
36435
36436 2002-06-14  Jim Meyering  <meyering@lucent.com>
36437
36438         * lib/file-type.h: Use the version from diffutils-2.8.2.
36439         * lib/file-type.c: Likewise.
36440
36441 2002-06-07  Jim Meyering  <meyering@lucent.com>
36442
36443         * m4/prereq.m4 (jm_PREREQ_STAT): Check for sys/param.h and sys/mount.h.
36444         They're needed at least for NetBSD 1.5.2.
36445         ($statxfs_includes): Include those same headers.
36446         ($statxfs_includes): Include sys/vfs.h if available.
36447         ($statxfs_includes): Likewise for sys/statvfs.h.
36448         Check for the following members in both structs statfs and statvfs:
36449         f_basetype, f_type, f_fsid.__val, f_namemax, f_namelen.
36450
36451 2002-06-01  Jim Meyering  <meyering@lucent.com>
36452
36453         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename macro:
36454         s/D_TYPE_IN_DIRENT/HAVE_STRUCT_DIRENT_D_TYPE/.
36455
36456 2002-05-28  Jim Meyering  <meyering@lucent.com>
36457
36458         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `mkdir', not `rmdir'.
36459         Reported by Volker Borchert.
36460
36461 2002-05-27  Jim Meyering  <meyering@lucent.com>
36462
36463         Fix a problem seen only on nonconforming systems whereby ls.c's
36464         use of localtime, and then of gettimeofday would cause trouble:
36465         the localtime call used to initialize rpl_gettimeofday's save
36466         mechanism would clobber ls's current local time information so
36467         that in any long listing the first file would always be listed
36468         with date 1970-01-01.  Analysis by Volker Borchert.
36469
36470         * lib/gettimeofday.c (localtime): Undefine.
36471         (rpl_localtime): New function.
36472
36473 2002-05-27  Jim Meyering  <meyering@lucent.com>
36474
36475         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Also replace
36476         localtime.
36477
36478         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `rmdir' so we don't try to
36479         use the replacement function; it wouldn't resolve at link time.
36480         Reported by Volker Borchert.
36481
36482 2002-05-22  Jim Meyering  <meyering@lucent.com>
36483
36484         * lib/Makefile.am (libfetish_a_SOURCES): Add file-type.c and
36485         file-type.h.
36486         * lib/file-type.h: New file.
36487         * lib/file-type.c (file_type): New file/function.  Extracted from
36488         diffutils.
36489
36490 2002-04-30  Jim Meyering  <meyering@lucent.com>
36491
36492         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_STAT.
36493
36494 2002-04-29  Paul Eggert  <eggert@twinsun.com>
36495
36496         * m4/prereq.m4 (jm_PREREQ_SIG2STR): Remove; all callers changed.
36497
36498 2002-04-29  Paul Eggert  <eggert@twinsun.com>
36499
36500         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): Check for stdlib.h.
36501         Do not check for alloca.h (no longer used) or stdbool.h (was never
36502         used?).  Add AM_C_PROTOTYPES since hard-locale.h uses it.
36503
36504 2002-04-29  Paul Eggert  <eggert@twinsun.com>
36505
36506         * lib/hard-locale.c: Upgrade to version used in GNU Diffutils 2.8.1.
36507
36508 2002-04-29  Jim Meyering  <meyering@lucent.com>
36509
36510         * m4/jm-macros.m4 (jm_MACROS): Remove use of AC_FUNC_STRNLEN.
36511         * m4/prereq.m4: Add jm_PREREQ_STRNLEN.
36512         Use AC_FUNC_STRNLEN here instead.
36513
36514         * m4/jm-macros.m4: Don't AC_REQUIRE([AC_PROG_CC_STDC]).
36515         With autoconf-2.53a, it's part of AC_PROG_CC.
36516
36517 2002-04-28  Paul Eggert  <eggert@twinsun.com>
36518
36519         * m4/jm-macros.m4 (jm_MACROS): Add AC_REPLACE_FUNCS(sig2str).
36520         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_SIG2STR.
36521
36522 2002-04-28  Paul Eggert  <eggert@twinsun.com>
36523
36524         * lib/sig2str.h, lib/sig2str.c: New files.
36525         * lib/Makefile.am (libfetish_a_SOURCES): Add sig2str.h.
36526
36527 2002-04-28  Paul Eggert  <eggert@twinsun.com>
36528
36529         * lib/sig2str.h (SIGNUM_BOUND): Do not use WTERMSIG, to avoid
36530         depending on <sys/wait.h> and WTERMSIG.  Default to 64 instead
36531         of 127, since 64 is the largest conceivable number for ancient
36532         nonstandard hosts.
36533         * lib/sig2str.c: Do not include <sys/wait.h>; no longer needed.
36534
36535 2002-04-28  Jim Meyering  <meyering@lucent.com>
36536
36537         * lib/sig2str.c (WTERMSIG): Remove definition (unused).
36538
36539 2002-04-24  Jim Meyering  <meyering@lucent.com>
36540
36541         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): New macro.
36542         (jm_PREREQ): Use it.
36543
36544         * m4/getloadavg.m4: Check for these headers: locale.h unistd.h
36545         mach/mach.h fcntl.h.
36546         Check for this function: setlocale.
36547
36548 2002-04-24  Jim Meyering  <meyering@lucent.com>
36549
36550         * lib/gettext.h: New file, from Gettext.
36551         * lib/Makefile.am (INCLUDES): Remove -I../intl.
36552         (libfetish_a_SOURCES): Add gettext.h.
36553
36554 2002-04-16  Jim Meyering  <meyering@lucent.com>
36555
36556         * m4/prereq.m4 (jm_PREREQ_READUTMP): Also check for these members:
36557         ut_pid, ut_id, ut_exit.
36558
36559 2002-04-16  Jim Meyering  <meyering@lucent.com>
36560
36561         * lib/readutmp.h (UT_TYPE): Remove definition (now in who.c).
36562         (HAVE_STRUCT_XTMP_UT_EXIT, HAVE_STRUCT_XTMP_UT_ID): Define.
36563         (HAVE_STRUCT_XTMP_UT_PID, HAVE_STRUCT_XTMP_UT_TYPE): Define.
36564
36565 2002-04-12  Jim Meyering  <meyering@lucent.com>
36566
36567         * m4/ls-mntd-fs.m4 (checking for getmntinfo function...): Remove
36568         now-bogus check for f_type in sys/mount.h.  Instead, just test for the
36569         existence of the getmntinfo function.  Needed for Darwin 5.3.
36570
36571         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Also detect when dirfd is a macro.
36572         This is necessary at least on Darwin 5.3.
36573
36574         * m4/jm-macros.m4: Don't AC_REPLACE(strnlen), now that we use
36575         AC_FUNC_STRNLEN.  Otherwise, we'd end up putting two copies of
36576         strnlen.o in the library, and that makes some versions of ranlib
36577         object.
36578
36579 2002-04-12  Jim Meyering  <meyering@lucent.com>
36580
36581         * lib/dirfd.h (dirfd): Elide prototype if dirfd is a macro.
36582
36583 2002-04-09  Jim Meyering  <meyering@lucent.com>
36584
36585         * m4/malloc.m4: (jm_FUNC_MALLOC): Change the `checking ...' message
36586         to be more precise.  Rather than saying we're checking whether the
36587         function `works', say what we're testing.
36588         * m4/realloc.m4 (jm_FUNC_REALLOC): Likewise.
36589         Reported by Bruno Haible.
36590
36591 2002-03-10  Jim Meyering  <meyering@lucent.com>
36592
36593         * lib/makepath.c (make_path): Remove a comma from a diagnostic.
36594         Suggestion from Santiago Vila.
36595
36596 2002-03-08  Jim Meyering  <meyering@lucent.com>
36597
36598         * lib/rename.c: Mention that this wrapper is needed also on
36599         mips-dec-ultrix4.4 systems.
36600
36601 2002-03-02  Jim Meyering  <meyering@lucent.com>
36602
36603         * lib/gettime.c (gettime): Test HAVE_CLOCK_GETTIME,
36604         not HAVE_CLOCK_SETTIME.
36605
36606 2002-02-27  Paul Eggert  <eggert@twinsun.com>
36607
36608         * m4/jm-macros.m4 (jm_MACROS): Do not replace stime; no longer used.
36609         Check for clock_settime.
36610
36611 2002-02-27  Paul Eggert  <eggert@twinsun.com>
36612
36613         * lib/nanosleep.h: Rename to....
36614         * lib/timespec.h: New name for nanosleep.h.  All uses changed.
36615
36616         * lib/gettime.c: New file.
36617         * lib/settime.c: New file.
36618         * lib/stime.c: Remove.
36619
36620         * lib/Makefile.am (libfetish_a_SOURCES): Add gettime.c, settime.c,
36621         timespec.h.  Remove nanosleep.h.
36622
36623 2002-02-25  Paul Eggert  <eggert@twinsun.com>
36624
36625         * m4/acl.m4: New file.
36626         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_ACL.
36627         Do not check for acl or sys/acl.h, as AC_FUNC_ACL does that now.
36628
36629 2002-02-25  Paul Eggert  <eggert@twinsun.com>
36630
36631         * lib/acl.c, lib/acl.h: New files.
36632         * lib/Makefile.am (libfetish_a_SOURCES): Add acl.h, acl.c.
36633
36634 2002-02-24  Jim Meyering  <meyering@lucent.com>
36635
36636         * lib/strnlen.c (strnlen): Define-away/undef so that an inconsistent
36637         prototype in string.h (on at least AIX4.3.2.0 w/gcc-2.95.3) doesn't
36638         cause trouble.  Reported by Nelson Beebe.
36639
36640 2002-02-23  Paul Eggert  <eggert@twinsun.com>
36641
36642         * lib/path-concat.c (xpath_concat): Reorder code to pacify
36643         compilers that don't know that xalloc_die never returns.
36644
36645 2002-02-20  Jim Meyering  <meyering@lucent.com>
36646
36647         * lib/getdate.c: Regenerate using bison-1.33.
36648
36649 2002-02-17  Jim Meyering  <meyering@lucent.com>
36650
36651         * config/config.guess (main): Don't use `head -1'; it's no longer
36652         portable. Use `sed 1q' instead.
36653
36654 2002-02-16  gettextize  <bug-gnu-gettext@gnu.org>
36655
36656         * m4/codeset.m4: Upgrade to gettext-0.11.
36657         * m4/gettext.m4: Upgrade to gettext-0.11.
36658         * m4/glibc21.m4: Upgrade to gettext-0.11.
36659         * m4/iconv.m4: Upgrade to gettext-0.11.
36660         * m4/isc-posix.m4: Upgrade to gettext-0.11.
36661         * m4/lcmessage.m4: Upgrade to gettext-0.11.
36662         * m4/lib-ld.m4: New file, from gettext-0.11.
36663         * m4/lib-link.m4: New file, from gettext-0.11.
36664         * m4/lib-prefix.m4: New file, from gettext-0.11.
36665         * m4/progtest.m4: Upgrade to gettext-0.11.
36666
36667 2002-02-15  Paul Eggert  <eggert@twinsun.com>
36668
36669         * m4/prereq.m4 (jm_PREREQ_POSIXVER): New macro.
36670         (jm_PREREQ): Use it.
36671
36672 2002-02-15  Paul Eggert  <eggert@twinsun.com>
36673
36674         * lib/posixver.c, lib/posixver.h: New files.
36675         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
36676
36677 2002-02-02  Paul Eggert  <eggert@twinsun.com>
36678             Bruno Haible  <bruno@clisp.org>
36679
36680         * lib/unicodeio.h (print_unicode_char): Add exit_on_error argument.
36681         (fwrite_success_callback): New declaration.
36682         * lib/unicodeio.c (unicode_to_mb): New function, extracted from
36683         print_unicode_char. Call failure callback instead of error.
36684         (fwrite_success_callback): New function.
36685         (exit_failure_callback): New function.
36686         (fallback_failure_callback): New function.
36687         (print_unicode_char): Call unicode_to_mb.
36688
36689 2002-01-26  Jim Meyering  <meyering@lucent.com>
36690
36691         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.52g.
36692         * m4/strnlen.m4: Remove file, now that it's part of autoconf.
36693
36694 2002-01-26  Jim Meyering  <meyering@lucent.com>
36695
36696         * lib/Makefile.am (getdate$U.o): Depend on unlocked-io.h.
36697
36698 2002-01-22  Paul Eggert  <eggert@twinsun.com>
36699
36700         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_FSEEKO.
36701
36702 2002-01-22  Jim Meyering  <meyering@lucent.com>
36703
36704         * lib/Makefile.am (Makefile): Don't depend on $(BUILT_SOURCES).
36705         Otherwise, some versions of automake would omit the rule that makes
36706         Makefile from Makefile.in.
36707
36708 2002-01-21  Paul Eggert  <eggert@twinsun.com>
36709
36710         * lib/xmemcoll.h, lib/xmemcoll.c: New files.
36711         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
36712         * lib/memcoll.c: Include errno.h, and declare errno if not defined.
36713         (memcoll): Set errno to zero if there is no error.
36714
36715         * lib/quotearg.c (quotearg_buffer_restyled):
36716         Fix bug with quoting buffers containing NUL when backslashing escapes.
36717         This bug was exposed by the other changes in this patch.
36718         (quotearg_n_options): New arg ARGSIZE.
36719         All callers changed.
36720         (quoting_options_from_style): New function.
36721         (quotearg_n_style): Use it.
36722         (quotearg_n_style_mem): New function.
36723
36724         * lib/quotearg.h (quotearg_n_style_mem): New function.
36725
36726 2002-01-19  Jim Meyering  <meyering@lucent.com>
36727
36728         * m4/jm-macros.m4 (jm_MACROS): Use AC_FUNC_STRNLEN.
36729         Remove useless quotes: DF_PROG="df".
36730         * m4/strnlen.m4: New file.
36731
36732 2002-01-16  Paul Eggert  <eggert@twinsun.com>
36733
36734         * lib/backupfile.c (ISDIGIT): Comment fix.
36735         * lib/getdate.y (ISDIGIT): Likewise.
36736         * lib/posixtm.c (ISDIGIT, year): Likewise.
36737         * lib/strverscmp.c (ISDIGIT): Likewise.
36738         * lib/userspec.c (ISDIGIT): Likewise.
36739
36740 2002-01-16  Jim Meyering  <meyering@lucent.com>
36741
36742         * lib/getdate.y: Add three semicolons, each just before a closing
36743         brace. Bison (as of version 1.31) no longer papers over that mistake.
36744
36745 2002-01-05  Jim Meyering  <meyering@lucent.com>
36746
36747         * lib/version-etc.c (version_etc_copyright): Update copyright year.
36748
36749 2001-12-19  Paul Eggert  <eggert@twinsun.com>
36750
36751         * lib/closeout.c (close_stdout_status): If ferror (stdout), do
36752         not silently exit merely because the output buffer happens to
36753         have nothing pending.
36754
36755 2001-12-18  Paul Eggert  <eggert@twinsun.com>
36756
36757         See the big note in ../ChangeLog.
36758         * lib/human.c (suffixes): Prefer K to k for 1024.
36759         (generate_suffix_backwards): New function.
36760         (human_readable_inexact): Use it.
36761         * lib/xstrtol.c (__xstrtol): If there is no number but there
36762         is a valid suffix, assume 1.  "MB" now means decimal, "MiB" binary.
36763         Accept 'K' as well as 'k'.
36764
36765 2001-12-15  Jim Meyering  <meyering@lucent.com>
36766
36767         * lib/regex.h (__restrict_arr): Update from libc.
36768
36769         * lib/mountlist.h (ME_REMOTE): Recognize file systems of type smbfs
36770         as `remote' if the name starts with `//'.  Suggested by Michael Stone.
36771         (STREQ): Define.
36772
36773 2001-12-14  Jim Meyering  <meyering@lucent.com>
36774
36775         * m4/jm-macros.m4 (jm_MACROS): Check for iswspace.
36776         Suggestion from Bruno Haible.
36777
36778 2001-12-10  Jim Meyering  <meyering@lucent.com>
36779
36780         * lib/linebuffer.c: Remove explicit declarations of xmalloc and
36781         xrealloc, Instead, include "xalloc.h".
36782         (initbuffer): Don't cast xmalloc return value to char*.
36783         (readline): Reword comment.
36784         Don't cast xrealloc return value to char*
36785         Return NULL, not 0.
36786
36787 2001-12-09  Jim Meyering  <meyering@lucent.com>
36788
36789         * lib/modechange.c (mode_compile): Add cast to avoid pedantic warning
36790         about `signed and unsigned type in conditional expression'.
36791         * lib/posixtm.c (posix_time_parse): Likewise.
36792
36793         * lib/xreadlink.c (xreadlink): Add cast to avoid a pedantic warning.
36794
36795         * lib/readtokens.c (readtoken): Declare an index to be of type unsigned
36796         to avoid a pedantic warning.
36797
36798         * lib/getstr.c: Don't include assert.h.
36799         (getstr): Remove warning-evoking assertions.
36800         Return -1 if offset parameter is out of bounds.
36801         Change the type of a local from int to size_t.
36802
36803         * lib/strftime.c (my_strftime_localtime_r): Include this function
36804         definition in the `#if ! HAVE_TM_GMTOFF' block.
36805
36806         * lib/xgethostname.c: Remove declarations of xmalloc and xrealloc.
36807         Include xalloc.h instead.
36808
36809 2001-12-02  Jim Meyering  <meyering@lucent.com>
36810
36811         * lib/tempname.c: Don't declare getenv, thus reverting the change of
36812         2001-11-18.  It's no longer necessary, now that stdlib.h is always
36813         included.
36814
36815         * lib/regex.c [!__BOUNDED_POINTERS__]: Define away __bounded,
36816         __unbounded, and __ptrvalue.  Reported by Uwe H. Steinfeld.
36817
36818 2001-11-30  Akim Demaille  <akim@epita.fr>
36819
36820         * lib/xstrdup.c: Include xalloc.h, so that xstrdup is declared
36821         before being defined.
36822
36823 2001-11-27  Paul Eggert  <eggert@twinsun.com>
36824
36825         * lib/quotearg.h (quotearg_n, quotearg_n_style):
36826         First arg is int, not unsigned.
36827         * lib/quotearg.c (quotearg_n, quotearg_n_style): Likewise.
36828         (SIZE_MAX, UINT_MAX): New macros.
36829         (quotearg_n_options): Abort if N is negative.
36830         Avoid overflow check on hosts where size_t is 64 bits and int
36831         is 32 bits, as overflow is impossible there.
36832         Fix off-by-one typo that caused unnecessary reallocation.
36833
36834 2001-11-27  Jim Meyering  <meyering@lucent.com>
36835
36836         * lib/tempname.c: Merge with version from libc.
36837         * lib/regex.c: Likewise.
36838
36839         * lib/tempname.c: Include stdlib.h unconditionally.  On some old
36840         systems for which STDC_HEADERS is 0, it was not included, resulting in
36841         a warning about an integer-to-pointer conversion problem with getenv.
36842         Reported by Volker Borchert.
36843
36844 2001-11-26  Jim Meyering  <meyering@lucent.com>
36845
36846         * lib/gtod.h: Remove file.
36847         * lib/Makefile.am (libfetish_a_SOURCES): Remove gtod.h.
36848         * lib/gettimeofday.c: Don't include gtod.h.
36849         (GTOD_init): Remove function.
36850         (rpl_gettimeofday): Do its job here instead, rather than aborting.
36851         Suggestion from Volker Borchert.
36852
36853 2001-11-23  Jim Meyering  <meyering@lucent.com>
36854
36855         * lib/hash.h (struct hash_table): Don't define here.  Merely declare
36856         it.
36857         * lib/hash.c (struct hash_table): Define it here instead.
36858
36859 2001-11-22  Jim Meyering  <meyering@lucent.com>
36860
36861         * lib/hash.h: Bracket contents of file with #ifndef HASH_H_ ... #endif.
36862
36863 2001-11-20  Jim Meyering  <meyering@lucent.com>
36864
36865         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Update comment to reflect that
36866         SunOS 4.1.4 and Solaris 2.5.1 lose, too.
36867
36868 2001-11-19  Jim Meyering  <meyering@lucent.com>
36869
36870         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Don't bother with a temporary
36871         directory.  Use "conftestXXXXXX" as the template.
36872         Suggestion from Paul Eggert.
36873
36874         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Close each descriptor
36875         immediately, so the test doesn't mistakenly hit the max-open-files
36876         limit.
36877
36878 2001-11-18  Paul Eggert  <eggert@twinsun.com>
36879
36880         * lib/tempname.c (TMP_MAX): Remove; no longer needed.
36881         (TEMPORARIES): New macro.
36882         (__gen_tempname): Use TEMPORARIES rather than TMP_MAX.  This
36883         removes an artificial limitation (e.g. HP-UX 10.20, where
36884         TMP_MAX is 17576).
36885
36886 2001-11-18  Jim Meyering  <meyering@lucent.com>
36887
36888         * m4/prereq.m4 (jm_PREREQ_TEMPNAME): Check for declaration of getenv.
36889
36890 2001-11-18  Jim Meyering  <meyering@lucent.com>
36891
36892         * lib/tempname.c [!HAVE_DECL_GETENV]: Declare getenv to avoid warning
36893         on SunOS 4.
36894
36895         * lib/Makefile.am (Makefile): Depend on $(BUILT_SOURCES), so those
36896         files will be created before anything else.
36897
36898 2001-11-17  Paul Eggert  <eggert@twinsun.com>
36899
36900         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): Do not define
36901         WINSIZE_IN_PTEM if <termios.h> defines struct winsize.
36902
36903 2001-11-17  Jim Meyering  <meyering@lucent.com>
36904
36905         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): New file and macro.
36906         Prompted by a report from Bob Proulx.
36907
36908         * m4/jm-macros.m4 (jm_MACROS): Don't test for mkstemp here.
36909         Instead, require UTILS_FUNC_MKSTEMP.
36910
36911 2001-11-17  Jim Meyering  <meyering@lucent.com>
36912
36913         * m4/jm-macros.m4 (jm_MACROS): Remove code to set POW_LIBM.
36914         Now, that's done as part of AC_FUNC_STRTOD.
36915
36916 2001-11-17  Jim Meyering  <meyering@lucent.com>
36917
36918         * lib/modechange.c (mode_adjust): Fix error introduced on 1999-04-26
36919         that made e.g., `chmod a=,o=w,g=o F' cause F to be group readable
36920         rather than group writable.  Patch by Juan F. Codagnone.
36921
36922         * lib/readtokens.c: Remove explicit declarations of xmalloc and
36923         xrealloc, Instead, include "xalloc.h".
36924
36925         * lib/mountlist.c: Include unlocked-io.h after all system headers.
36926         Remove explicit declarations of xmalloc, xrealloc,
36927         and xstrdup.  Instead, include "xalloc.h".
36928
36929         * lib/argmatch.c, closeout.c, error.c, exclude.c: Include
36930         unlocked-io.h.
36931         * lib/fatal.c, getdate.y, getpass.c, getstr.c, getusershell.c:
36932         Likewise.
36933         * lib/mountlist.c, posixtm.c, readtokens.c, readutmp.c: Likewise.
36934
36935         * lib/regex.c, sha.c, version-etc.c, yesno.c: Likewise.
36936         Reported by Padraig Brady.
36937
36938         * lib/mkstemp.c: #undef mkstemp.
36939         Include config.h.
36940         (rpl_mkstemp): Rename from mkstemp.
36941         Protoize.
36942
36943 2001-11-16  Jim Meyering  <meyering@lucent.com>
36944
36945         * lib/physmem.c [HAVE_SYS_PSTAT_H]: Include <sys/pstat.h>.
36946         (physmem_total) [HAVE_PSTAT_GETSTATIC]: If sysconf couldn't be used to
36947         determine the amount of total physical memory, use pstat_getstatic.
36948         HPUX-11 doesn't define _SC_PHYS_PAGES.
36949         (physmem_available) [HAVE_PSTAT_GETSTATIC && HAVE_PSTAT_GETDYNAMIC]:
36950         If sysconf couldn't be used to determine the amount of available
36951         physical memory, use both pstat_getstatic and pstat_getdynamic.
36952         Based on a patch from Bob Proulx.
36953
36954 2001-11-10  Jim Meyering  <meyering@lucent.com>
36955
36956         * m4/prereq.m4 (jm_PREREQ_PHYSMEM): New function.
36957         (jm_PREREQ): Use it.
36958
36959 2001-11-09  Jim Meyering  <meyering@lucent.com>
36960
36961         * m4/jm-macros.m4: Require autoconf-2.52f.
36962         (AC_FUNC_ERROR_AT_LINE, AC_FUNC_OBSTACK, AC_FUNC_STRTOD):
36963         Use these AC_-prefixed names, not the AM_-prefixed ones.
36964
36965         * m4/afs.m4 (jm_AFS): Quote the body.  Patch by Akim Demaille.
36966
36967 2001-11-05  Jim Meyering  <meyering@lucent.com>
36968
36969         * lib/xstat.in (slash_aware_lstat): Correct a misleading comment.
36970
36971 2001-11-04  Jim Meyering  <meyering@lucent.com>
36972
36973         * m4/fpending.m4: Remove unused cruft that saved, set, and restored
36974         $DEFS.
36975
36976 2001-11-03  Jim Meyering  <meyering@lucent.com>
36977
36978         * m4/jm-glibc-io.m4n (jm_FUNC_GLIBC_UNLOCKED_IO): Quote first arg
36979         of AC_DEFUN.
36980
36981         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Rework so dirfd.c doesn't have to
36982         know the name of the variable in the macro definition.
36983
36984 2001-11-03  Jim Meyering  <meyering@lucent.com>
36985
36986         * lib/argmatch.h (ARGMATCH_TO_ARGUMENT): Remove casts of first two args
36987         in argmatch_to_argument call.
36988
36989         * lib/dirfd.c (dirfd): Reflect the fact that DIR_TO_FD now takes an
36990         argument.
36991
36992         * lib/hash.c (hash_clear): Fix a bug that could lead to an infloop or
36993         e.g., a fault due to an attempt to free a NULL pointer.
36994
36995 2001-11-01  Jim Meyering  <meyering@lucent.com>
36996
36997         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): New macro.
36998         * m4/jm-macros.m4 (jm_MACROS): Require UTILS_FUNC_DIRFD.
36999
37000 2001-11-01  Jim Meyering  <meyering@lucent.com>
37001
37002         * lib/dirfd.c, lib/dirfd.h: New files.
37003         * lib/Makefile.am (libfetish_a_SOURCES): Add dirfd.h.
37004
37005         * lib/hash.c (hash_print) [TESTING]: Clean up.
37006
37007 2001-10-22  Paul Eggert  <eggert@twinsun.com>
37008
37009         * lib/hard-locale.c (alloca): Define to __builtin_alloca if __GNUC__,
37010         to avoid a warning if -Wall.
37011
37012 2001-10-22  Jeff Bailey  <jbailey@outpost.dnsalias.org>
37013
37014         * README: New file
37015         * doc/*: Add COPYING, COPYING.LIB, COPYING.DOC, fdl.texi
37016         (per RMS's instructions, this is now the canonical source)
37017         * lgpl/, gpl/: New directories.
37018
37019 2001-10-21  Paul Eggert  <eggert@twinsun.com>
37020
37021         * lib/regex.c (uintptr_t): Remove macro and decl; it's config.h's job.
37022
37023 2001-10-21  Jim Meyering  <meyering@lucent.com>
37024
37025         * lib/obstack.c (_): Honor the setting of ENABLE_NLS.  Otherwise,
37026         this code would end up calling gettext even in packages built
37027         with --disable-nls.
37028         * lib/getopt.c (_): Likewise.
37029         * lib/regex.c (_): Likewise.
37030
37031 2001-10-20  Paul Eggert  <eggert@twinsun.com>
37032
37033         * m4/error.m4 (jm_PREREQ_ERROR):
37034         Do not invoke AC_CHECK_FUNCS with strerror_r, as
37035         AC_FUNC_STRERROR_R does that.
37036         Check for strerror declaration.
37037
37038         * m4/strerror_r.m4: Add copyright notice, as nontrivial m4 files
37039         are supposed to have them these days.
37040         (AC_FUNC_STRERROR_R): Always do char* test, so that it gets cached.
37041         Merge changes from latest Autoconf CVS.
37042         Rename ac_cv_func_strerror_r_works to ac_cv_func_strerror_r_char_p,
37043         and rename HAVE_WORKING_STRERROR_R to STRERROR_R_CHAR_P, since
37044         POSIX decided to standardize on the int flavor of strerror_r.
37045
37046 2001-10-20  Paul Eggert  <eggert@twinsun.com>
37047
37048         * lib/error.c (strerror_r): Do not declare unless !_LIBC.
37049         Do not check for HAVE_DECL_STRERROR_R missing unless STRERROR_R_CHAR_P.
37050         Use strerror_r that is only a macro, even if it is not a function.
37051         (strerror): Check for HAVE_DECL_STRERROR before declaring.
37052         (private_strerror): Use prototypes, not old-style function definition.
37053         (print_errno_message): New function.
37054         Support the POSIX 'int'-flavored strerror_r, as well as the traditional
37055         char*-flavored one.
37056         (error_tail, error, error_at_line): Use it.
37057
37058 2001-10-11  Jim Meyering  <meyering@lucent.com>
37059
37060         * lib/argmatch.c (argmatch_invalid): Use quotearg_n_style (0, ...
37061         and quote_n (1, ... to avoid clobbering a buffer.
37062
37063 2001-10-05  Jim Meyering  <meyering@lucent.com>
37064
37065         * lib/Makefile.am: (libfetish_a_SOURCES): Add hash-pjw.c and
37066         hash-pjw.h.
37067         * lib/hash-pjw.c: New file (factored out of fileutils' remove.c).
37068         * lib/hash-pjw.h: New file.
37069
37070 2001-09-30  Jim Meyering  <meyering@lucent.com>
37071
37072         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): See if
37073         `struct fsstat' has the `f_fstypename' member.
37074         Use that to define FS_TYPE, which is now used to make
37075         the getfsstat link test tighter.
37076
37077 2001-09-30  Jim Meyering  <meyering@lucent.com>
37078
37079         * lib/mountlist.c [MOUNTED_GETFSSTAT]:
37080         Include <sys/ucred.h>, for Apple Darwin.
37081         Include sys/mount.h and sys/fs_types.h only if available.
37082         (FS_TYPE): Define.
37083         (read_filesystem_list): Use FS_TYPE.
37084
37085 2001-09-29  Paul Eggert  <eggert@twinsun.com>
37086
37087         * lib/exclude.c (excluded_filename): 0 -> false, since it's
37088         a boolean context.
37089
37090 2001-09-29  Jim Meyering  <meyering@lucent.com>
37091
37092         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
37093         [one-argument getmntent function]): Include stdio.h before mntent.h.
37094         SunOS 4.1.x needs it for the declaration of `FILE'.
37095         Patch by Volker Borchert.
37096
37097         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
37098         Check for these headers: sys/param.h sys/ucred.h sys/mount.h
37099         sys/fs_types.h, and make the link-test for getfsstat guard #include
37100         directives with appropriate #if HAVE_*_H tests so that we can
37101         detect getfsstat on Apple Darwin1.3.7 systems.
37102         Reported by Nelson Beebe.
37103         Fix harmless typo in cache variable name: s/getsstat/getfsstat/.
37104
37105 2001-09-28  Paul Eggert  <eggert@twinsun.com>
37106
37107         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
37108         #defines strtoimax.  Also treat the other strto* functions
37109         like strtoimax.
37110
37111         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
37112         Check for strtoul and strtoumax,
37113         as those declarations are made even in the signed case.
37114         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX):
37115         Likewise, for strtol and strtoimax.
37116
37117 2001-09-28  Paul Eggert  <eggert@twinsun.com>
37118
37119         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
37120         #defines strtoimax.  Also treat the other strto* functions
37121         like strtoimax.
37122
37123         * lib/xstrtol.c (strtol): Do not declare if HAVE_DECL_STRTOL.
37124         (strtoul): Do not declare if HAVE_DECL_STRTOUL.
37125         (strtoimax, strtoumax): Do not declare if already defined as a macro.
37126
37127 2001-09-26  Jim Meyering  <meyering@lucent.com>
37128
37129         Most macros in unlocked-io.h had the wrong number of arguments.
37130         * lib/gen-uio: New script.
37131         (USE_UNLOCKED_IO): Define to 1 if not already defined.
37132         * lib/unlocked-io.hin: Remove file.
37133         * lib/Makefile.am (unlocked-io.h): Rewrite to use a separate script,
37134         rather than trying to embed it here.
37135         (EXTRA_DIST): Add gen-uio.  Remove unlocked-io.hin
37136         Reported by Padraig Brady.
37137
37138 2001-09-25  Volker Borchert  <bt@teknon.de>
37139
37140         * lib/gettimeofday.c (rpl_gettimeofday): Declare local variable
37141         `result'.
37142
37143 2001-09-24  Jim Meyering  <meyering@lucent.com>
37144
37145         * m4/gettext.m4: Use the version from gettext-0.10.40, not CVS.
37146
37147 2001-09-23  Jim Meyering  <meyering@lucent.com>
37148
37149         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add a compile-test
37150         instead of the mere test for existence of mntent.h.  The latter
37151         would get a false-positive on AIX 3.4 systems.
37152         In the outer getmntent if-block, don't die if neither of the getmntent
37153         tests succeeds.  Instead, just fall through and continue with the
37154         remaining tests.
37155
37156 2001-09-23  Jim Meyering  <meyering@lucent.com>
37157
37158         * lib/mountlist.c: Remove useless parentheses in #if directives.
37159         (MOUNTED) [!defined MOUNTED]: Define to _PATH_MOUNTED, for when
37160         the deprecated MOUNTED symbol is no longer defined in mntent.h.
37161
37162 2001-09-22  Jim Meyering  <meyering@lucent.com>
37163
37164         * m4/gettext.m4: New file.  From gettext.
37165         * m4/lcmessage.m4: Sync with gettext -- this changes only comments.
37166         * m4/progtest.m4: Likewise
37167         * m4/isc-posix.m4: Decrement serial number to sync with gettext.
37168         * m4/glibc21.m4: Likewise.
37169
37170         * m4/libintl.m4: Remove.  No longer used.
37171
37172 2001-09-22  Jim Meyering  <meyering@lucent.com>
37173
37174         * lib/localcharset.c: Update from latest gettext.
37175         * lib/config.charset: Likewise.
37176
37177 2001-09-20  Jim Meyering  <meyering@lucent.com>
37178
37179         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX): Check for declaration of
37180         strtoimax.
37181         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check for declaration of
37182         strtoumax.
37183
37184 2001-09-20  Jim Meyering  <meyering@lucent.com>
37185
37186         * lib/xstrtol.c (strtoimax): Guard declaration with
37187         `#if !HAVE_DECL_STRTOIMAX', rather than just `#ifndef strtoimax'.
37188         The latter fails because some systems (at least rs6000-ibm-aix4.3.3.0)
37189         have their own, conflicting declaration of strtoimax in sys/inttypes.h.
37190         (strtoumax): Likewise, for completeness (it wasn't necessary).
37191
37192 2001-09-17  Paul Eggert  <eggert@twinsun.com>
37193
37194         * lib/strtoimax.c (HAVE_LONG_LONG):
37195         Redefine to HAVE_UNSIGNED_LONG_LONG if unsigned.
37196         (strtoimax): Use sizeof (long), not sizeof strtol (ptr, endptr, base),
37197         to work around bug in IBM C compiler.
37198
37199 2001-09-17  Jim Meyering  <meyering@lucent.com>
37200
37201         * m4/chown.m4, fstypename.m4, getgroups.m4, gettimeofday.m4,
37202         * m4/jm-mktime.m4, lstat.m4, malloc.m4, memcmp.m4, mkdir-slash.m4,
37203         * m4/nanosleep.m4, putenv.m4, readdir.m4, realloc.m4, rename.m4,
37204         * m4/st_dm_mode.m4, stat.m4, strerror_r.m4, timespec.m4, utimbuf.m4,
37205         * m4/utimes.m4: Use AC_DEFINE rather than AC_DEFINE_UNQUOTED,
37206         whenever the right hand side need not be expanded by the shell.
37207
37208 2001-09-16  Paul Eggert  <eggert@twinsun.com>
37209
37210         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): Remove test for GNU C
37211         library.  It's not correct, as some older glibcs are buggy.
37212         fnmatch wasn't fixed until glibc 2.2.
37213
37214         Use AC_DEFINE, not AC_DEFINE_UNQUOTED, as there's no
37215         special shell magic here.
37216
37217 2001-09-16  Jim Meyering  <meyering@lucent.com>
37218
37219         * m4/mkdir-slash.m4 (UTILS_FUNC_MKDIR_TRAILING_SLASH): New file/macro.
37220         * m4/jm-macros.m4: Require it.
37221
37222 2001-09-16  Jim Meyering  <meyering@lucent.com>
37223
37224         * lib/mkdir.c: New file.
37225
37226 2001-09-15  Jim Meyering  <meyering@lucent.com>
37227
37228         * m4/jm-macros.m4: Check for help2man.
37229
37230 2001-09-11  Jim Meyering  <meyering@lucent.com>
37231
37232         * m4/host-os.m4 (UTILS_HOST_OS): New file/macro.
37233         The body, by Paul Eggert, was moved here from configure.in.
37234         * m4/jm-macros.m4: Require UTILS_HOST_OS.
37235
37236 2001-09-04  Paul Eggert  <eggert@twinsun.com>
37237
37238         * m4/prereq.m4 (jm_PREREQ_XREADLINK): New macro.
37239         (jm_PREREQ): Use it.
37240
37241 2001-09-04  Paul Eggert  <eggert@twinsun.com>
37242
37243         * lib/xreadlink.c (xreadlink): Omit size_t* arg.  All uses changed.
37244         Use ssize_t, not int, to store result of readlink.
37245         Check for ssize_t overflow as well as size_t overflow,
37246         as POSIX says the result of readlink is implementation-defined
37247         when ssize_t overflows.
37248         Remove unnecessary cast to char*.
37249         Use free+malloc instead of realloc, as the storage doesn't need
37250         to be preserved and it's clearer and can be more efficient that way.
37251         (SIZE_MAX, SSIZE_MAX): New macros, if <limits.h> doesn't declare.
37252         * lib/xreadlink.h (xreadlink): Update prototype.
37253
37254 2001-09-04  Paul Eggert  <eggert@twinsun.com>
37255
37256         * lib/xgetcwd.c: Revert some of the previous change; intead,
37257         fix the HAVE_GETCWD_NULL code to behave more like the
37258         !HAVE_GETCWD_NULL code used to.
37259
37260         Include "xalloc.h".
37261         (xgetcwd): Do not return NULL when memory is exhausted; instead,
37262         invoke xalloc_die.
37263
37264 2001-09-03  Paul Eggert  <eggert@twinsun.com>
37265
37266         * m4/prereq.m4 (jm_PREREQ_XGETCWD): Check for limits.h and
37267         sys/param.h, as pathmax.h includes them.
37268
37269 2001-09-03  Paul Eggert  <eggert@twinsun.com>
37270
37271         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_XGETCWD.
37272         (jm_PREREQ_XGETCWD): New macro.
37273
37274         * m4/getcwd.m4: New file.
37275
37276 2001-09-03  Paul Eggert  <eggert@twinsun.com>
37277
37278         * lib/xgetcwd.c: Fix the !HAVE_GETCWD_NULL code to behave more
37279         like the HAVE_GETCWD_NULL code.
37280         Include pathmax.h if not HAVE_GETCWD.
37281         Do not include xalloc.h.
37282         (INITIAL_BUFFER_SIZE): New symbol.
37283         Do not use xmalloc / xrealloc, since the caller is responsible for
37284         handling errors.  Preserve errno around `free' during failure.
37285         Do not overrun buffer when using getwd.
37286
37287 2001-09-03  Paul Eggert  <eggert@twinsun.com>
37288
37289         * lib/xgetcwd.c (xgetcwd): Use HAVE_GETCWD_NULL, not (defined
37290         __GLIBC__ && __GLIBC__ >= 2), to decide whether to use
37291         getcwd (NULL, 0).
37292
37293 2001-09-03  Paul Eggert  <eggert@twinsun.com>
37294
37295         * lib/exclude.c (fnmatch_no_wildcards): Fix confusion between
37296         usage of FNM_CASEFOLD and FNM_LEADING_DIR.  The bug was
37297         spotted by Jim Meyering.
37298
37299 2001-09-03  Jim Meyering  <meyering@lucent.com>
37300
37301         * lib/xreadlink.c (xreadlink): Preserve errno around `free' during
37302         failure.
37303
37304 2001-09-02  Jim Meyering  <meyering@lucent.com>
37305
37306         * lib/error.c: Update from GNU libc.
37307
37308 2001-09-01  Jim Meyering  <meyering@lucent.com>
37309
37310         * m4/jm-macros.m4 (jm_MACROS): Check for canonicalize_file_name.
37311         Used by df.
37312
37313 2001-09-01  Jim Meyering  <meyering@lucent.com>
37314
37315         * lib/xreadlink.c: New file.
37316         * lib/xreadlink.h: New file.
37317         * lib/Makefile.am (libfetish_a_SOURCES): Add xreadlink.c and
37318         xreadlink.h.
37319
37320         * lib/regex.c (uintptr_t) [!_LIBC]: Define to private_uintptr_t, so it
37321         doesn't conflict with sparc Solaris 7's definition in
37322         /usr/include/sys/int_types.h.
37323
37324         * lib/exclude.c: Use `""', not `<>' to #include non-system header
37325         files.
37326         (fnmatch_no_wildcards): Rewrite not to use function names, strcasecmp
37327         and strncasecmp as r-values.  Unixware didn't have declarations.
37328
37329 2001-08-31  Paul Eggert  <eggert@twinsun.com>
37330
37331         * lib/xstrtol.h: Add copyright notice.
37332         (_DECLARE_XSTRTOL): Improve quality of diagnostic for
37333         LONGINT_INVALID_SUFFIX_CHAR.
37334
37335 2001-08-31  Paul Eggert  <eggert@twinsun.com>
37336
37337         * lib/xstrtol.c (strtoimax): New decl.
37338
37339 2001-08-31  Paul Eggert  <eggert@twinsun.com>
37340
37341         * lib/xgetcwd.c: Don't include pathmax.h.
37342         Include stdlib.h and unistd.h if available.
37343         Include xalloc.h.
37344         (xmalloc, xstrdup, free): Remove decls.
37345         (xgetcwd): Don't assume sizes fit in unsigned.
37346         Check for overflow when computing sizes.
37347         Simplify reallocation code.
37348
37349 2001-08-31  Paul Eggert  <eggert@twinsun.com>
37350
37351         * lib/savedir.c (savedir): Remove size parameter, as POSIX says that
37352         a directory's st_size can have an arbitrary value, so the old
37353         usage could waste an arbitrary amount of memory.  All uses
37354         changed.
37355         * lib/savedir.h: Update prototype.
37356
37357 2001-08-31  Paul Eggert  <eggert@twinsun.com>
37358
37359         * lib/Makefile.am (libfetish_a_SOURCES): Remove strtoxmax.c.
37360
37361         * lib/strtoimax.c: Renamed from strtoxmax.c, removing the
37362         old strtoimax.c.
37363
37364         Also, make the following further changes to make this file's
37365         configuration more similar to that of strtol.c:
37366         (UNSIGNED): Renamed from STRTOUXMAX_UNSIGNED.  All uses changed.
37367         (strtoumax, uintmax_t, strtoull, strtol): Remove.
37368         (intmax_t, strtoimax, strtol, strtoll): New macros, if UNSIGNED.
37369         (strtoimax): Renamed from strtoumax.  All uses of unsigned values
37370         changed to signed values.
37371
37372         And make the following changes as well:
37373         Fix copyright notice, as 1999 was missing.
37374         (verify): New macro.
37375         (strtoimax): Check sizes at compile-time, not run-time.
37376         Prefer strtol to strtoll if both work.
37377         (main): Remove; it was not that useful and was a pain to maintain.
37378
37379         * lib/strtoumax.c: Include strtoimax.c, not strtouxmax.c.
37380
37381 2001-08-31  Jim Meyering  <meyering@lucent.com>
37382
37383         * lib/xgetcwd.c (xgetcwd): Reorganize to avoid some duplication.
37384         Use an initial, malloc'd, buffer of length 128 rather than
37385         a statically allocated one of length 1024.
37386
37387 2001-08-30  Paul Eggert  <eggert@twinsun.com>
37388
37389         Simplify code, partly by assuming autoconf 2.52 semantics.
37390
37391         * m4/Makefile.am (EXTRA_DIST): Remove uintmax_t.m4.
37392
37393         * m4/inttypes.m4 (AC_PREREQ): Bump to 2.52.
37394         (jm_AC_HEADER_INTTYPES_H): Remove; now done by autoconf in 2.52.
37395         All uses removed.
37396         (jm_AC_TYPE_INTMAX_T, jm_AC_TYPE_UINTMAX_T):
37397         Move AC_REQUIRE to next-to-top level, to avoid confusion.
37398         Use 2.52's AC_CHECK_TYPE instead of merely looking for the header.
37399         * m4/prereq.m4 (jm_PREREQ_HUMAN): Don't require
37400         jm_AC_HEADER_INTTYPES_H.
37401         * m4/jm-macros.m4 (jm_MACROS): Likewise.
37402
37403         * m4/uintmax_t.m4: Remove, as it duplicates inttypes.m4.
37404
37405         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
37406         Quote first arg of AC_DEFUN.
37407         Require jm_AC_TYPE_UINTMAX_T and jm_AC_TYPE_UNSIGNED_LONG_LONG
37408         since they are needed to parse the include file even if we need
37409         only xstrtoimax.  Simplify logic behind the args to AC_REPLACE.
37410         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Likewise,
37411         but with opposite signedness.
37412
37413 2001-08-30  Paul Eggert  <eggert@twinsun.com>
37414
37415         Merge 'exclude' changes from tar 1.13.22.
37416         This fixes one or two unlikely storage allocation overflow bugs,
37417         but doesn't change user-visible behavior otherwise.
37418
37419 2001-08-30  Paul Eggert  <eggert@twinsun.com>
37420
37421         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_EXCLUDE.
37422         (jm_PREREQ_EXCLUDE): New macro.
37423
37424 2001-08-30  Paul Eggert  <eggert@twinsun.com>
37425
37426         * lib/quotearg.c: BSD/OS 4.1 wchar.h requires FILE and struct
37427         tm to be declared.
37428
37429 2001-08-30  Paul Eggert  <eggert@twinsun.com>
37430
37431         * lib/hash.c: Remove '2001' from copyright notice.
37432
37433 2001-08-30  Paul Eggert  <eggert@twinsun.com>
37434
37435         * lib/full-write.h: New file.
37436         * lib/Makefile.am (libfetish_a_SOURCES): Add full-write.h.
37437         * lib/full-write.c: Correct credits, as cccp.c no longer
37438         exists and anyway it was so heavily changed from the old cccp
37439         code as to be unrecognizable.  Include full-write.h.
37440         (full_write) Return size_t, with short writes meaning failure.
37441         All callers changed.  This fixes a bug with large buffers
37442         on 64-bit hosts.
37443         * lib/utime.c: Include full-write.h.
37444
37445 2001-08-30  Paul Eggert  <eggert@twinsun.com>
37446
37447         * lib/exclude.c (bool): Declare, perhaps by including stdbool.h.
37448         (<sys/types.h>): Include only if HAVE_SYS_TYPES_H.
37449         (<stdlib.h>, <string.h>, <strings.h>, <inttypes.h>, <stdint.h>):
37450         Include if available.
37451         (<xalloc.h>): Include
37452         (SIZE_MAX): Define if <stdint.h> or <inttypes.h> doesn't.
37453         (verify): New macro.  Use it to verify that EXCLUDE macros do not
37454         collide with FNM macros.
37455         (struct patopts): New struct.
37456         (struct exclude): Use it, as exclude patterns now come with options.
37457         (new_exclude): Support above changes.
37458         (new_exclude, add_exclude_file):
37459         Initial size must now be a power of two to simplify overflow checking.
37460         (free_exclude, fnmatch_no_wildcards): New function.
37461         (excluded_filename): No longer requires options arg, as the options
37462         are determined by add_exclude.  Now returns bool, not int.
37463         (excluded_filename, add_exclude):
37464         Add support for the fancy new exclusion options.
37465         (add_exclude, add_exclude_file): Now takes int options arg.
37466         Check for arithmetic overflow when computing sizes.
37467         (add_exclude_file): xrealloc might modify errno, so don't
37468         realloc until after errno might be used.
37469
37470         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE,EXCLUDE_WILDCARDS):
37471         New macros.
37472         (free_exclude): New decl.
37473         (add_exclude, add_exclude_file): Now takes int options arg.
37474         (excluded_filename): No longer requires options arg, as the options
37475         are determined by add_exclude.  Now returns bool, not int.
37476
37477 2001-08-30  Paul Eggert  <eggert@twinsun.com>
37478
37479         * lib/alloca.c (alloca): Arg is of type size_t, not unsigned.
37480
37481 2001-08-27  Jim Meyering  <meyering@lucent.com>
37482
37483         * lib/Makefile.am (libfetish_a_SOURCES): Add strtoxmax.c
37484
37485         * lib/version-etc.c (N_): Remove definition.
37486         Revert most of last change.
37487         Instead, simply don't mark the `Copyright...' string for translation.
37488         Based on advice from Paul Eggert.
37489
37490         * lib/strtoxmax.c: Tweak comment.
37491
37492 2001-08-26  Jim Meyering  <meyering@lucent.com>
37493
37494         * m4/jm-macros.m4: Require jm_AC_PREREQ_XSTRTOIMAX.
37495
37496         * m4/xstrtoimax.m4: New file.
37497         * m4/xstrtoumax.m4: Add comments explaining why we
37498         AC_REPLACE_FUNCS(strtol).
37499
37500 2001-08-26  Jim Meyering  <meyering@lucent.com>
37501
37502         * lib/version-etc.c (version_etc_copyright_fmt): Replace literal year
37503         of copyright with `%s' so translators don't get an untranslated
37504         message in 2002.
37505         (COPYRIGHT_YEAR): Define.
37506         (version_etc): Use fprintf rather than fputs.
37507         Suggestion from Ulrich Drepper.
37508
37509         * lib/Makefile.am (libfetish_a_SOURCES): Add xstrtoimax.c.
37510
37511         * lib/strtoll.c: New file, from GNU libc.
37512         * lib/xstrtoimax.c: New file.
37513
37514         * lib/xstrtol.h: Add xstrtoimax.
37515         * lib/strtoumax.c: New file.  Simply include "strtoumax.c".
37516         * lib/strtoimax.c: New file.  Likewise, but first define
37517         STRTOUXMAX_SIGNED.
37518
37519         * lib/strtoumax.c: Factor to work both for unsigned and signed types,
37520         ...
37521         * lib/strtoxmax.c: ... then renamed to this.
37522
37523 2001-08-18  Paul Eggert  <eggert@twinsun.com>
37524
37525         * m4/inttypes.m4: Add AC_PREREQ(2.13).
37526         (jm_AC_HEADER_INTTYPES_H): Test for intmax_t, too.
37527         (jm_AC_TYPE_INTMAX_T): New macro.
37528         (jm_AC_TYPE_UINTMAX_T): Moved here from uintmax_t.m4.
37529
37530         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): New macro.
37531
37532         * m4/longlong.m4: Renamed from ulonglong.m4.
37533         * m4/inttypes.m4: Renamed from inttypes_h.m4.
37534         * m4/uintmax_t.m4: Removed.
37535
37536 2001-08-13  Paul Eggert  <eggert@twinsun.com>
37537
37538         * lib/Makefile.am (unlocked-io.h): Do not append "_unlocked" twice.
37539         Port to Solaris 8, where 'sed' requires a space after the 'r'
37540         command, and where sh dislikes "$/".  Clean up the spacing a bit.
37541         Redirect output to $tmp just once.
37542
37543 2001-08-12  Paul Eggert  <eggert@sic.twinsun.com>
37544
37545         * lib/addext.c (<errno.h>): Include.
37546         (errno): Declare if not defined.
37547         (addext): Work correctly when pathconf returns -1 and leaves
37548         errno alone because there is no limit.  Also, work even if
37549         pathconf returns a value greater than SIZE_MAX.
37550
37551 2001-08-12  Jim Meyering  <meyering@lucent.com>
37552
37553         * m4/afs.m4, assert.m4, bison.m4, check-decl.m4, chown.m4, d-ino.m4,
37554         d-type.m4, dos.m4, error.m4, fnmatch.m4, fpending.m4, fstypename.m4,
37555         fsusage.m4, ftruncate.m4, getgroups.m4, glibc.m4, gnu-source.m4,
37556         group-member.m4, jm-glibc-io.m4, jm-macros.m4, jm-mktime.m4,
37557         jm-winsz1.m4, jm-winsz2.m4, lchown.m4, lib-check.m4, libintl.m4,
37558         link-follow.m4, ls-mntd-fs.m4, lstat.m4, malloc.m4, mbrtowc.m4,
37559         mbstate_t.m4, mbswidth.m4, memcmp.m4, nanosleep.m4, perl.m4,
37560         prereq.m4, putenv.m4, readdir.m4, realloc.m4, regex.m4, rename.m4,
37561         rmdir-errno.m4, search-libs.m4, st_dm_mode.m4, st_mtim.m4, stat.m4,
37562         strftime.m4, timespec.m4, unlink-busy.m4, uptime.m4, utimbuf.m4,
37563         utime.m4, utimes.m4, xstrtoumax.m4:
37564         Quote the first argument in each use of AC_DEFUN.
37565
37566 2001-08-12  Jim Meyering  <meyering@lucent.com>
37567
37568         * lib/xgetcwd.c (xgetcwd) [defined __GLIBC__ && __GLIBC__ >= 2]:
37569         Simply `return getcwd (NULL, 0);'.
37570         [! (defined __GLIBC__ && __GLIBC__ >= 2)]:
37571         Use 1300 as initial value for length, not PATH_MAX.
37572
37573         * lib/pathmax.h: Clean up cpp syntax.
37574
37575 2001-08-12  Jim Meyering  <meyering@lucent.com>
37576
37577         * lib/gettimeofday.c: New file.
37578         * lib/gtod.h: New file.
37579         * lib/Makefile.am (libfetish_a_SOURCES): Add gtod.h.
37580
37581 2001-08-05  Jim Meyering  <meyering@lucent.com>
37582
37583         * m4/jm-macros.m4: Require autoconf-2.52.
37584
37585 2001-08-04  Jim Meyering  <meyering@lucent.com>
37586
37587         * lib/error.h (__attribute__): Remove `|| __STRICT_ANSI__' from #if
37588         stmt, to get in sync with glibc.
37589
37590 2001-08-03  Paul Eggert  <eggert@twinsun.com>
37591
37592         The following changes are from gettext 0.10.39 as maintained by
37593         Bruno Haible.
37594
37595         * lib/mbswidth.h (MBSW_REJECT_UNPRINTABLE, MBSW_REJECT_INVALID):
37596         Renamed from MBSW_ACCEPT_UNPRINTABLE and MBSW_ACCEPT_INVALID
37597         with inverted sense.  All uses changed.
37598
37599         * lib/mbswidth.c: Don't include <limits.h>.
37600         Include <stdlib.h> and <string.h> unconditionally.
37601         (iswcntrl, mbsinit, ISCNTRL): New macros.
37602         (mbsnwidth): Use K&R style function declarations.
37603         Don't bother checking for MB_LEN_MAX == 1, since the compiler
37604         can optimize it when MB_CUR_MAX == 1.
37605         The width of control characters is zero, not 1.
37606
37607 2001-08-03  Paul Eggert  <eggert@twinsun.com>
37608
37609         The following changes are from gettext 0.10.39 as maintained by
37610         Bruno Haible, except that getline.m4 continues to use AC_LIBOBJ.
37611
37612         * m4/codeset.m4: Upgrade to serial AM1.
37613         (AM_LANGINFO_CODESET): Renamed from jm_LANGINFO_CODESET;
37614         all uses changed.  Quote first arg of AC_DEFUN.
37615         (am_cv_langinfo_codeset): Renamed from jm_cv_langinfo_codeset.
37616
37617         * m4/iconv.m4: Upgrade to serial AM2.
37618         (AM_ICONV): Renamed from jm_ICONV; all uses changed.
37619         Add --with-libconv-prefix.
37620         Quote first arg of AC_DEFUN.  Add description for ICONV_CONST.
37621         (am_cv_func_iconv): Renamed from jm_cv_func_iconv.
37622         (am_cv_lib_iconv): Renamed from jm_cv_lib_iconv.
37623         (am_cv_proto_iconv): Renamed from jm_cv_proto_iconv.
37624         * m4/jm-macros.m4 (jm_MACROS): Reflect s/jm_/AM_/ renamings.
37625
37626         * m4/c-bs-a.m4 (AC_C_BACKSLASH_A): Quote first arg of AC_DEFUN.
37627         * m4/getline.m4 (AM_FUNC_GETLINE): Likewise.
37628         * m4/glibc21.m4 (jm_GLIBC21): Likewise.
37629         * m4/inttypes_h.m4 (jm_AC_HEADER_INTTYPES_H): Likewise.
37630         * m4/isc-posix.m4 (AC_ISC_POSIX): Likewise.
37631         * m4/lcmessage.m4 (AM_LC_MESSAGES): Likewise.
37632         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): Likewise.
37633         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Likewise.
37634         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Likewise.
37635
37636         * m4/getline.m4 (AM_FUNC_GETLINE): Don't bother checking for
37637         string.h any more.
37638
37639         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): If not found, print "no",
37640         not the default value.
37641
37642         2001-06-25  Bruno Haible  <haible@clisp.cons.org>
37643         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Don't require AM_C_PROTOTYPES.
37644         Also check for mbsinit.  Needed for SCO 3.2v5.0.2.
37645         Also include <string.h>; this is where AIX 3.2.5 declares wcwidth.
37646         Also check for iswcntrl, used for wcwidth fallback.
37647         Use AC_TRY_COMPILE to emulate AC_CHECK_DECLS, for portability
37648         to Autoconf 2.13.
37649
37650 2001-08-03  Jim Meyering  <meyering@lucent.com>
37651
37652         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Use `#include', not `@%:@include',
37653         as it was in the original.  Reported by Paul Eggert.
37654
37655 2001-07-16  Jim Meyering  <meyering@lucent.com>
37656
37657         * m4/gettimeofday.m4: New file.
37658         Prompted by a report from Bernhard Baehr.
37659
37660 2001-07-15  Jim Meyering  <meyering@lucent.com>
37661
37662         * m4/Makefile.am.in (Makefile.am): Remove most of the unlocked-io.h
37663         stuff. Now it's in ../Makefile.cfg.
37664
37665 2001-07-15  Jim Meyering  <meyering@lucent.com>
37666
37667         * lib/Makefile.am (EXTRA_DIST): Add unlocked-io.hin.
37668         (BUILT_SOURCES): Add unlocked-io.h.
37669         (io_functions): Define.
37670         (unlocked-io.h): New rule.
37671         (DISTCLEANFILES): Add unlocked-io.h.
37672         (all-local): Depend on unlocked-io.h, to ensure it is created.
37673
37674         * lib/unlocked-io.hin: New file
37675
37676         * lib/regex.c: Update from glibc.
37677
37678 2001-07-05  Jim Meyering  <meyering@lucent.com>
37679
37680         * lib/Makefile.am (noinst_HEADERS): Remove definition, per new automake
37681         recommendation.
37682         (libfetish_a_SOURCES): Put all .h files here instead.
37683         Remove a thus-exposed (better checks in automake) duplicate and
37684         two unnecessary .h files.
37685
37686 2001-07-04  Jim Meyering  <meyering@lucent.com>
37687
37688         * m4/Makefile.am.in (glibc-io.struct): New target.  Rework the code
37689         that generates jm-glibc-io.m4 so that it doesn't trigger any make
37690         distcheck failure.
37691
37692 2001-07-02  Jim Meyering  <meyering@lucent.com>
37693
37694         The following changes were prompted by suggestions from Bruno Haible.
37695
37696         * m4/jm-glibc-io.m4n: New file, the template from which jm-glibc-io.m4
37697         is now generated.
37698         * m4/Makefile.am.in (Makefile.am): Include jm-glibc-io.m4n in emitted
37699         definition of EXTRA_DIST.
37700         (Makefile.am): Emit the dependency, `all-local: jm-glibc-io.m4' to
37701         ensure that the generated file is created/updated whenever the list
37702         of $(unlocked_functions) is changed.
37703         (jm-glibc-io.m4): New rule.
37704         (unlocked-io.h): New rule -- currently unused.
37705
37706 2001-06-24  Jim Meyering  <meyering@lucent.com>
37707
37708         * m4/regex.m4 (jm_INCLUDED_REGEX): Use a quadrigraph to represent an
37709         unmatched right bracket, rather than kludging it with an extra,
37710         falsely-matching quote in a comment.  Patch by Akim Demaille.
37711
37712 2001-06-11  Jim Meyering  <meyering@lucent.com>
37713
37714         * lib/regex.c: Update from GNU libc.
37715
37716 2001-05-27  Jim Meyering  <meyering@lucent.com>
37717
37718         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for ut_type in struct utmpx.
37719         Check for ut_type in struct utmp.
37720
37721 2001-05-27  Jim Meyering  <meyering@lucent.com>
37722
37723         * lib/readutmp.h (UT_TYPE): Define.
37724
37725 2001-05-24  Jim Meyering  <meyering@lucent.com>
37726
37727         * lib/argmatch.c: Include "quote.h".
37728         (argmatch_invalid): Remove explicit `' quotes.  Instead, use the
37729         quote function.  Reported by Göran Uddeborg.
37730
37731 2001-05-22  Jim Meyering  <meyering@lucent.com>
37732
37733         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't use AC_LIBOBJ(strftime),
37734         now that we use the package-supplied version unconditionally.
37735         (jm_FUNC_STRFTIME): Don't replace strftime, for the same reason.
37736
37737 2001-05-21  Jim Meyering  <meyering@lucent.com>
37738
37739         * m4/regex.m4: Change a couple backticks to single quotes to avoid
37740         shell syntax errors.
37741
37742 2001-05-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
37743
37744         * m4/dos.m4 (jm_AC_DOS): Check for _WIN32, __WIN32__, and __MSDOS__.
37745
37746 2001-05-20  Paul Eggert  <eggert@twinsun.com>
37747
37748         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME):
37749         Don't bother to check library strftime, since
37750         we'll be using our own my_strftime function anyway.
37751         Define my_strftime instead of strftime.
37752
37753 2001-05-20  Alexandre Duret-Lutz  <duret_g@epita.fr>
37754
37755         * lib/dirname.c (dir_name): Compute append_dot using path, not newpath
37756         which is not yet declared.
37757
37758 2001-05-15  Jim Meyering  <meyering@lucent.com>
37759
37760         * m4/regex.m4: Use proper quoting so brackets appear in the test
37761         program.
37762         Reported by, and with help from, Bruno Haible.
37763
37764 2001-05-13  Jim Meyering  <meyering@lucent.com>
37765
37766         * m4/jm-macros.m4 (major_t, minor_t): Define to unsigned int if
37767         undefined.
37768
37769 2001-05-11  Paul Eggert  <eggert@twinsun.com>
37770
37771         dirname code cleanup.  base_name now behaves more compatibly
37772         with POSIX basename when given file names that have trailing
37773         slashes, and similarly for dir_name.  Add new primitives
37774         base_len and dir_len.  Put the directory-name-related decls
37775         into dirname.h.
37776
37777         * lib/addext.c (ISSLASH, base_name): Remove; now in dirname.h.
37778         * lib/backupfile.c (base_name): Likewise.
37779         * lib/basename.c (FILESYSTEM_PREFIX_LEN, PARAMS, ISSLASH): Likewise.
37780         * lib/dirname.c (FILESYSTEM_PREFIX_LEN, ISSLASH): Likewise.
37781         * lib/makepath.c (strip_trailing_slashes): Likewise.
37782         * lib/path-concat.c (DIRECTORY_SEPARATOR, FILESYSTEM_PREFIX_LEN,
37783         ISSLASH): Likewise.
37784         * lib/rename.c (strip_trailing_slashes): Likewise.
37785         * lib/same.c (base_name): Likewise.
37786         * lib/stripslash.c (ISSLASH): Likewise.
37787
37788         * lib/addext.c: Include <dirname.h> after size_t is defined.
37789         * lib/backupfile.c: Likewise.
37790
37791         * lib/addext.c (addext): Use base_len to trim redundant
37792         trailing slashes instead of doing it ourselves.
37793         But do not trim the last slash if it is not redundant.
37794
37795         * lib/backupfile.c (find_backup_file_name,
37796         max_backup_version): Use base_len instead of rolling it ourselves.
37797         Handle the case of "" and (on DOS) "C:" correctly.
37798
37799         * lib/basename.c: Do not include <stdio.h>, <assert.h>; no longer
37800         needed. Include <string.h>, <dirname.h>.
37801         (base_name): Allow file names ending in slashes, other than names
37802         that are all slashes.  In this case, return the basename followed
37803         by the slashes.  This is more general, and can be used in places
37804         where the original base_name purposely had an assertion failure.
37805         (base_len): New function.
37806
37807         * lib/dirname.c: Include <string.h> instead of <stdlib.h>.
37808         Do not include <assert.h>; no longer needed.
37809         Include xalloc.h.
37810         (memrchr): Remove decl.
37811         (dir_name_r): Remove.
37812         (dir_len): Renamed from dirlen.  All callers changed.
37813         Rewrite in terms of base_name, for simplicity and consistency.
37814         (dir_name): Never return NULL.  All callers changed.
37815         Do not include <stdlib.h> in test program; no longer needed.
37816         return 0; is fine for test program.
37817
37818         * lib/dirname.h (DIRECTORY_SEPARATOR, ISSLASH, FILESYSTEM_PREFIX_LEN):
37819         New macros.
37820         (base_name, base_len, dir_len, strip_trailing_slashes): New decls.
37821
37822         * lib/path-concat.c (path_concat): Use base_len to compute
37823         base length, not strlen; this means we cannot rely on memcpy
37824         to null-terminate.
37825
37826         * lib/same.c (STREQ): Remove.
37827         (same_name): Handle the case where the basename ends in trailing '/'.
37828
37829         * lib/stripslash.c (strip_trailing_slashes): Return nonzero if
37830         a slash was stripped.  Do not strip the last slash after a
37831         file system prefix.
37832
37833 2001-05-11  Paul Eggert  <eggert@twinsun.com>
37834
37835         * lib/Makefile.am (libfetish_a_SOURCES):
37836         Add strftime.c, since we now compile it on all hosts.
37837
37838         * lib/strftime.c (my_strftime):
37839         Define to nstrftime if emacs, but only if my_strftime is not defined.
37840         (extra_args, extra_args_spec, extra_args_spec_iso): Rename from
37841         ut_argument, ut_argument_spec, ut_argument_spec_iso, respectively.
37842         Add one more extra argument: a nanoseconds value.
37843         All uses changed.
37844         (ns): New macro.
37845         (my_strftime function): Add %N format.
37846         (emacs_strftimeu): Renamed from emacs_strftime,
37847         with extra ut argument.
37848
37849 2001-05-09  Paul Eggert  <eggert@twinsun.com>
37850
37851         * m4/jm-macros.m4 (jm_MACROS): Do not check for fseeko; no longer used.
37852
37853 2001-04-21  Jim Meyering  <meyering@lucent.com>
37854
37855         * m4/rmdir-errno.m4: Write to a new file, so that a restrictive umask
37856         doesn't interfere.
37857
37858 2001-04-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
37859
37860         * m4/ftruncate.m4: Check for chsize.
37861         Link with ftruncate.o unconditionally if ftruncate is missing.
37862         This was required when cross-compiling to i586-mingw32msvc.
37863
37864 2001-04-08  Jim Meyering  <meyering@lucent.com>
37865
37866         * lib/getdate.y (get_date): Set tm_isdst to -1 to ensure that it is
37867         recomputed; that's necessary when the offset spans a DST transition.
37868         Patch by David J. MacKenzie.  Reported by Hon-Yin Kok.
37869
37870 2001-04-02  Jim Meyering  <meyering@lucent.com>
37871
37872         * lib/regex.h, regex.c: Update from GNU libc.
37873
37874 2001-03-24  Jim Meyering  <meyering@lucent.com>
37875
37876         * m4/jm-macros.m4: Require autoconf-2.49d.
37877
37878 2001-03-20  Bruno Haible  <haible@clisp.cons.org>
37879
37880         * m4/iconv.m4 (jm_ICONV): Recommend GNU libiconv.
37881
37882 2001-03-19  Paul Eggert  <eggert@twinsun.com>
37883
37884         * lib/version-etc.c (version_etc_copyright): Update to 2001.
37885
37886 2001-03-17  Jim Meyering  <meyering@lucent.com>
37887
37888         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Remove my copy of AC_FUNC_MEMCMP,
37889         now that the version in autoconf is equivalent.
37890         (jm_FUNC_MEMCMP): Adjust to use AC_FUNC_MEMCMP.
37891
37892         * m4/error.m4 (jm_PREREQ_ERROR): Invoke AC_FUNC_STRERROR_R.
37893         Suggestion from Akim Demaille.
37894
37895         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_TEMPNAME.
37896         (jm_PREREQ_TEMPNAME): New function.
37897
37898 2001-03-16  Paul Eggert  <eggert@twinsun.com>
37899
37900         * lib/tempname.c (uint64_t): Define to uintmax_t if
37901         not defined, and if UINT64_MAX is not defined.
37902         Required at least for Vax Ultrix4.3, which doesn't define uint64_t.
37903         Reported by John David Anglin.
37904
37905 2001-03-15  Bruno Haible  <haible@clisp.cons.org>
37906
37907         * lib/localcharset.c (locale_charset): Allow wildcard syntax. Also
37908         resolve alias if codeset is empty.
37909         * lib/config.charset (BeOS): Use wildcard syntax.
37910
37911 2001-03-13  Jim Meyering  <meyering@lucent.com>
37912
37913         * lib/path-concat.c (path_concat)
37914         [FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't insert a backslash when
37915         concatenating e.g., `C:' and `foo'.
37916         From Bruno Haible.
37917
37918 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
37919
37920         * lib/localcharset.c (locale_charset): Don't use
37921         setlocale(LC_CTYPE,NULL). Don't return NULL.
37922         * lib/unicodeio.c (print_unicode_char): Simplify accordingly.
37923
37924 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
37925
37926         * lib/config.charset: Update for FreeBSD 4.2 and OSF/1 5.1. Add
37927         support for DOS/DJGPP.
37928
37929 2001-03-01  Paul Eggert  <eggert@twinsun.com>
37930
37931         * m4/jm-macros.m4 (jm_MACROS): Use mkstemp replacement if the system
37932         lacks mkstemp.  Compile our own tempname.c if we compile our own
37933         mkstemp.c, as mkstemp relies on tempname.
37934
37935 2001-03-01  Jim Meyering  <meyering@lucent.com>
37936
37937         * m4/dos.m4 (jm_AC_DOS): Remove extra backslashes, now that
37938         AH_VERBATIM really does output its argument verbatim.
37939
37940 2001-02-28  Paul Eggert  <eggert@twinsun.com>
37941
37942         * lib/Makefile.am (libfetish_a_SOURCES):
37943         Add dup-safer.c, fopen-safer.c.
37944         (noinst_HEADERS): Add stdio-safer.h, unistd-safer.h.
37945
37946         * lib/dup-safer.c, lib/fopen-safer.c, lib/stdio-safer.h:
37947         * lib/unistd-safer.h: New files.
37948
37949 2001-02-25  Paul Eggert  <eggert@twinsun.com>
37950
37951         The mkstemp replacement is taken from glibc 2.2.2, with some
37952         portability fixes for use outside glibc, as follows:
37953
37954         * lib/tempname.c (struct_stat64): New macro.
37955         (direxists, __gen_tempname): Use it.
37956         This avoids a portability problem with Solaris 8.
37957
37958         * lib/tempname.c (<config.h>): Include if HAVE_CONFIG_H.
37959         (<stddef.h>, <stdint.h>, <string.h>):
37960         Include only if STDC_HEADERS || _LIBC.
37961         (<fcntl.h>): Include only if HAVE_FCNTL_H || _LIBC.
37962         (<unistd.h>): Include only if HAVE_UNISTD_H || _LIBC.
37963         (<sys/time.h>): Include only if HAVE_SYS_TIME_H || _LIBC.
37964         (__set_errno): Define this macro if <errno.h> doesn't.
37965         (P_tmpdir, TMP_MAX, __GT_FILE, __GT_BIGFILE, __GT_DIR, __GT_NOCREATE):
37966         Define these macros if <stdio.h> doesn't.
37967         (S_ISDIR, S_IRUSR, S_IWUSR, S_IXUSR):
37968         Define these macros if <sys/stat.h>
37969         doesn't.  Ignore <sys/stat.h> S_ISDIR if STAT_MACROS_BROKEN.
37970         (stat64, __getpid, __gettimeofday, __mkdir, __open, __open64, lxstat64,
37971         __xstat64): Define if not _LIBC.
37972         (__secure_getenv): Define if ! (HAVE___SECURE_GETENV || _LIBC).
37973         (__gen_tempname): Invoke gettimeofday only if
37974         HAVE_GETTIMEOFDAY || _LIBC;
37975         otherwise, fall back on plain "time".
37976         Use macros like S_IRUSR | S_IWUSR rather than octal values like 0600.
37977
37978         * lib/mkstemp.c (__GT_FILE): Define to zero if not defined.
37979
37980         * lib/mkstemp.c, lib/tempname.c: New files, taken from glibc 2.2.2.
37981
37982 2001-02-18  Paul Eggert  <eggert@twinsun.com>
37983
37984         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for sys/resource.h.
37985
37986 2001-02-17  Paul Eggert  <eggert@twinsun.com>
37987
37988         * m4/mbrtowc.m4: New file, defining jm_FUNC_MBRTOWC.
37989         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH):
37990         Use jm_FUNC_MBRTOWC, not AC_CHECK_FUNCS(mbrtowc).
37991         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
37992
37993 2001-02-17  Paul Eggert  <eggert@twinsun.com>
37994
37995         * lib/mbswidth.c, quotearg.c (mbrtowc, mbsinit):
37996         Remove workaround macros for hosts that have mbrtowc but not
37997         mbstate_t, as we now insist on proper declarations for both
37998         before using mbrtowc.
37999
38000 2001-02-17  Jim Meyering  <meyering@lucent.com>
38001
38002         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Don't check for
38003         getmntent via AC_CHECK_FUNCS, since that would get a `no' and disrupt
38004         further attempts by AC_FUNC_GETMNTENT to check with e.g., -lgen on
38005         UnixWare 7.1.1.
38006
38007         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Adapt to use AC_CACHE_CHECK etc.,
38008         rather than AC_CACHE_VAL.
38009
38010 2001-02-17  Jim Meyering  <meyering@lucent.com>
38011
38012         * lib/strtoul.c: Sync from GNU libc.  Use double quotes, not <...>
38013         around included file name.
38014
38015         * lib/strnlen.c (__strnlen): Merge in a change from GNU libc.
38016
38017         * lib/strftime.c: Update from GNU libc (the only changes were to
38018         comments).
38019
38020 2001-02-17  Jim Meyering  <meyering@lucent.com>
38021
38022         * lib/regex.c: Update from libc.
38023
38024 2001-02-17  Bruno Haible  <haible@clisp.cons.org>
38025
38026         * lib/mbswidth.h (mbswidth): Also define as macro, to avoid prototype
38027         clash.
38028
38029 2001-02-16  Paul Eggert  <eggert@twinsun.com>
38030
38031         * lib/alloca.c (malloc): Undef before defining, since stdlib.h
38032         may have defined it.  Needed for Encore Umax-3.0.9.16b systems.
38033         Reported by Mark Hounschell via Paul Eggert.
38034
38035 2001-02-07  Jim Meyering  <meyering@lucent.com>
38036
38037         * m4/regex.m4 (jm_INCLUDED_REGEX): Add a test for the latest bug.
38038
38039 2001-02-05  Jim Meyering  <meyering@lucent.com>
38040
38041         * m4/jm-macros.m4: Require autoconf-2.14d (not yet released), because
38042         it includes the patch required for `large file' support with at least
38043         HP-UX's 10.20 /bin/cc.
38044
38045 2001-02-03  Jim Meyering  <meyering@lucent.com>
38046
38047         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Restore prior use of
38048         AS_IF, now that it works once again (mysteriously).
38049         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
38050
38051 2001-01-30  Jim Meyering  <meyering@lucent.com>
38052
38053         Don't use filenames that are 8.3-equivalent to "conftest" on DOS.
38054         * m4/chown.m4: Rename conftestchown to conftest.chown.
38055         * m4/rename.m4: s/conftestdir/conftest.d1/ and
38056         s/conftestdir2/conftest.d2/.
38057         * m4/utimes.m4: s/conftestdata/conftest.data/
38058         Inspired by Pavel Roskin's change in autoconf.
38059
38060 2001-01-30  Bruno Haible  <haible@clisp.cons.org>
38061
38062         * lib/config.charset: Update for FreeBSD 4.2.
38063
38064 2001-01-27  Jim Meyering  <meyering@lucent.com>
38065
38066         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Open-code what was
38067         a use of AS_IF.
38068         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
38069
38070 2001-01-26  Jim Meyering  <meyering@lucent.com>
38071
38072         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Check for stddef.h, now that
38073         quotearg.c includes it.
38074
38075 2001-01-26  Jim Meyering  <meyering@lucent.com>
38076
38077         * lib/quotearg.c: Include stddef.h.
38078         * lib/quote.c: Include stddef.h.
38079         Reported by Axel Kittenberger.
38080
38081         * lib/xmalloc.c [HAVE_DONE_WORKING_MALLOC_CHECK]: Enclose error-evoking
38082         line in double quotes so that it evokes a better diagnostic.
38083         [HAVE_DONE_WORKING_REALLOC_CHECK]: Likewise.
38084         Reported by Axel Kittenberger.
38085
38086 2001-01-24  Stefan Monnier  <monnier@cs.yale.edu>
38087
38088         * regex.c (mutually_exclusive_p): Don't blindly handle `charset_not'
38089         as if it was a `charset'.
38090
38091 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
38092
38093         * m4/iconv.m4 (jm_ICONV): Also check whether the iconv declaration
38094         has const.
38095
38096 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
38097
38098         * lib/unicodeio.c (print_unicode_char): Cast the second iconv() arg,
38099         to avoid a warning.  Add back 'const' to inptr.
38100
38101 2001-01-20  Jim Meyering  <meyering@lucent.com>
38102
38103         Be sure that headers are checked before used in code compiled
38104         for the type checks.
38105         * m4/jm-macros.m4 (jm_MACROS): Remove all header checks.
38106         In place of that, invoke jm_CHECK_ALL_TYPES.
38107         (jm_CHECK_ALL_HEADERS): New functions with the above checks.
38108         (jm_CHECK_ALL_TYPES): Require jm_CHECK_ALL_HEADERS.
38109         Alan Iwi reported a build failure on an f300-fujitsu-uxpv4.1_ES;
38110         The check for ssize_t was mistakenly run before the test for unistd.h.
38111
38112         The configure-time check for stdbool.h was missing.
38113         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_HASH.
38114         (jm_PREREQ_HASH): New function.
38115
38116 2001-01-17  Jim Meyering  <meyering@lucent.com>
38117
38118         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use AS_IF, not AS_IFELSE,
38119         for autoconf-2.49c.
38120         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Likewise.
38121
38122 2001-01-16  Jim Meyering  <meyering@lucent.com>
38123
38124         * lib/basename.c: Include <stdio.h>, needed by assert on SunOS 4.
38125         From Bruno Haible.
38126
38127 2001-01-14  Jim Meyering  <meyering@lucent.com>
38128
38129         * m4/rename.m4: Use temporary directories named conftestdir{,2}, not
38130         foo and bar.  Create conftestdir/ in the script, not in the C code.
38131         Remove directories in the script, not in the C code.
38132         Remove conftestdir{,2} before trying to create the directory.
38133         Make the entire configure script fail if the mkdir fails.
38134
38135 2001-01-14  Jim Meyering  <meyering@lucent.com>
38136
38137         * lib/rename.c: New file.  From Volker Borchert.
38138         Include stdlib.h, string.h or strings.h, and xalloc.h.
38139         Use strip_trailing_slashes rather than open-coding it.
38140
38141 2001-01-03  Paul Eggert  <eggert@twinsun.com>
38142
38143         * lib/strftime.c: Sync with glibc time/strftime.c 1.81.
38144
38145 2001-01-03  Jim Meyering  <meyering@lucent.com>
38146
38147         * lib/unicodeio.c (print_unicode_char): Remove `const' from declaration
38148         of local `inptr' to avoid warning with some system declarations of
38149         iconv.
38150
38151 2001-01-02  Volker Borchert  <bt@teknon.de>
38152
38153         * m4/rename.m4: New file.
38154         * m4/jm-macros.m4 (jm_MACROS): Require vb_FUNC_RENAME.
38155
38156 2001-01-01  Jim Meyering  <meyering@lucent.com>
38157
38158         * m4/prereq.m4 (jm_PREREQ_READUTMP): Include utmp.h (if available),
38159         even on systems with utmpx.h.  It's necessary for the declaration of
38160         utmp's ut_user member.  Reported by Andreas Jaeger.
38161
38162         * m4/check-decl.m4 (jm_CHECK_DECLS): Include grp.h and pwd.h if
38163         available. They are required for the declarations of getgrgid and
38164         getpwuid resp.
38165         (_jm_DECL_HEADERS): Check for grp.h and pwd.h.
38166         Reported by Andreas Jaeger.
38167
38168 2001-01-01  Alexandre Duret-Lutz  <duret_g@epita.fr>
38169
38170         * m4/libintl.m4 (AM_GNU_GETTEXT): Define MKINSTALLDIRS by
38171         expanding the value of $ac_aux_dir, as in AM_MISSING_HAS_RUN,
38172         so `make install' also works in VPATH builds.
38173
38174 2000-12-31  Alexandre Duret-Lutz  <duret_g@epita.fr>
38175
38176         * m4/libintl.m4 (AM_WITH_NLS): When using AC_CONFIG_AUX_DIR,
38177         prepend $(top_srcdir) to the value of MKINSTALLDIRS so that it
38178         can be used in subdirectories.
38179
38180 2000-12-29  Paul Eggert  <eggert@twinsun.com>
38181
38182         * lib/modechange.c: Do not assume that mode_t uses the
38183         traditional octal encoding.  E.g. "chmod 1 FOO" should set
38184         the other-execute bit of FOO even if S_IXOTH != 1.
38185
38186         (SUID, SGID, SVTX, RUSR, WUSR, XUSR, RGRP, WGRP, XGRP, ROTH,
38187         WOTH, XOTH, ALLM): New macros.
38188         (S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR,
38189          S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH):
38190         Use them.
38191         (S_ISGID): Fix typo; it was defaulting to the same value as S_ISUID.
38192         (S_IRWXU, S_IRWXG, S_IRWXO): Specify defaults in terms of the above.
38193         (mode_compile):
38194         No need to use uintmax_t; unsigned long is long enough.
38195         Don't bother to get suffix since we don't use it.
38196
38197 2000-12-26  Jim Meyering  <meyering@lucent.com>
38198
38199         * m4/dos.m4 (jm_AC_DOS): Rewrite (though it's still a stub) to work
38200         better with autoheader.
38201
38202 2000-12-24  Jim Meyering  <meyering@lucent.com>
38203
38204         * lib/hash.c (is_prime): Return explicit boolean values.
38205         (hash_get_first): Return NULL to appease Irix5.6's 89.
38206         Reported by Nelson Beebe.
38207
38208 2000-12-19  Bruno Haible  <haible@clisp.cons.org>
38209
38210         * lib/localcharset.c (locale_charset): Add support for Win32.
38211
38212 2000-12-18  Paul Eggert  <eggert@twinsun.com>
38213
38214         * lib/physmem.h, lib/physmem.c: New files.
38215
38216         * lib/Makefile.am (libfetish_a_SOURCES): Add physmem.c.
38217         (noinst_HEADERS): Add physmem.h.
38218
38219         * lib/xstrtol.c (__xstrtol): Add undocumented suffixes 'g' and
38220         't' for compatibility with Solaris 8 sort.
38221
38222 2000-12-18  Bruno Haible  <haible@clisp.cons.org>
38223
38224         * lib/config.charset: Add support for BeOS.
38225
38226 2000-12-17  Jim Meyering  <meyering@lucent.com>
38227
38228         * m4/dos.m4 (jm_AC_DOS): New file and macro.
38229         * m4/jm-macros.m4 (jm_MACROS): Require jm_AC_DOS.
38230
38231 2000-12-16  Jim Meyering  <meyering@lucent.com>
38232
38233         This bug had a serious impact on chown: `chown N:M FILE' (for integer
38234         N and M) would have treated it like `chown N:N FILE'.
38235
38236         * lib/userspec.c (parse_user_spec): Fix typo: s/u/g/.
38237
38238 2000-12-16  Jim Meyering  <meyering@lucent.com>
38239
38240         * lib/getusershell.c [!SHELLS_FILE && __DJGPP__]: Define
38241         SHELLS_FILE to a file name that's useful on djgpp systems.
38242         Include stdlib.h.
38243         (ADDITIONAL_DEFAULT_SHELLS): Define.
38244         (default_shells): Prepend ADDITIONAL_DEFAULT_SHELLS.
38245         Based mostly on a patch from Prashant TR.
38246
38247 2000-12-16  Bruno Haible  <haible@clisp.cons.org>
38248
38249         * lib/config.charset: Add ISO-8859-3, BIG5HKSCS, GB18030, JOHAB,
38250         VISCII, CP874, CP949, CP950, CP1250, CP1253, CP1254, CP1255, CP1256,
38251         CP1257 to the list of canonical encodings. Rename EUC-CN to GB2312.
38252
38253 2000-12-08  Andreas Schwab  <schwab@suse.de>
38254
38255         * lib/mbswidth.c (mbsnwidth): Don't loop endlessly when called with an
38256         invalid mulitbyte sequence and with the MBSW_ACCEPT_INVALID flag set.
38257
38258 2000-12-07  Jim Meyering  <meyering@lucent.com>
38259
38260         * lib/stripslash.c (ISSLASH): Define.
38261         (strip_trailing_slashes): Use ISSLASH rather than comparing against
38262         `/'.
38263         From Prashant TR.
38264
38265         * lib/dirname.c (FILESYSTEM_PREFIX_LEN): Define.
38266         (dir_name_r): Declare this function as static.
38267         [BACKSLASH_IS_PATH_SEPARATOR]: Fix a bug that'd
38268         manifest itself on a name containing a mix of slashes and
38269         backslashes.
38270         Make this function work with names starting with a DOS-style
38271         drive letter and colon prefix.
38272         (dir_name): Append `.' if necessary.
38273         Based mostly on patches from Prashant TR and Eli Zaretskii.
38274
38275         * lib/dirname.h (dir_name_r): Remove prototype.
38276
38277 2000-12-06  Paul Eggert  <eggert@twinsun.com>
38278
38279         * m4/off_t-format.m4: Remove this file.
38280         * m4/jm-macros.m4 (jm_MACROS): Remove jm_SYS_OFF_T_PRINTF_FORMAT.
38281
38282 2000-12-06  Jim Meyering  <meyering@lucent.com>
38283
38284         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): If we need the
38285         replacement strtoull, we may well need the replacement strtoul, too.
38286         Check for declarations of strtoul and strtoull.
38287         Check for strtol.  Mainly as a cue to cause automake to include
38288         strtol.c -- that file is included by each of strtoul.c and strtoull.c.
38289         Check for limits.h -- strtol.c needs it.
38290
38291 2000-12-05  Jim Meyering  <meyering@lucent.com>
38292
38293         * lib/dirname.c (dir_name_r): Add `const' in a few local declarations.
38294
38295 2000-12-04  Jim Meyering  <meyering@lucent.com>
38296
38297         * lib/path-concat.c: [!HAVE_DECL_MALLOC]: Declare malloc.
38298         Also include memory.h, stdlib.h, unistd.h if appropriate.
38299         Reported by Andreas Jaeger (conflicting declaration of malloc).
38300
38301 2000-12-02  Jim Meyering  <meyering@lucent.com>
38302
38303         * m4/off_t-format.m4 (OFF_T_PRINTF_FORMAT_STRING): New file/macro.
38304         * m4/jm-macros.m4 (jm_MACROS): require it.
38305
38306 2000-12-02  Jim Meyering  <meyering@lucent.com>
38307
38308         * lib/closeout.h: Make idempotent, to avoid some obscure warnings.
38309
38310 2000-12-01  Paul Eggert  <eggert@twinsun.com>
38311
38312         * lib/memrchr.c: Include <config.h> before any system include file.
38313
38314 2000-11-30  Jim Meyering  <meyering@lucent.com>
38315
38316         * m4/jm-macros.m4 (jm_MACROS): Check for stdint.h.
38317
38318 2000-11-30  Jim Meyering  <meyering@lucent.com>
38319
38320         * m4/getloadavg.m4: s/ifval/m4_ifval/ to accommodate new autoconf.
38321
38322 2000-11-29  Paul Eggert  <eggert@twinsun.com>
38323
38324         * lib/dirname.c (dir_name_r): Fix typo: int -> size_t.
38325
38326 2000-11-26  Jim Meyering  <meyering@lucent.com>
38327
38328         * lib/memcoll.c: Include sys/types.h.  From Werner Almesberger.
38329
38330 2000-11-22  Paul Eggert  <eggert@twinsun.com>
38331
38332         * lib/strftime.c (my_strftime): Do not invoke mbrlen with a
38333         size of (size_t) -1; it's not portable.
38334
38335 2000-11-17  Jim Meyering  <meyering@lucent.com>
38336
38337         * lib/strstr.c: Update from GNU libc.
38338
38339 2000-11-17  Akim Demaille  <akim@epita.fr>
38340
38341         * lib/obstack.h: Formatting changes.
38342         (obstack_grow, obstack_grow0): Don't cast WHERE at all: that would
38343         prevent type checking.
38344         (obstack_ptr_grow, obstack_ptr_grow_fast): When assigning, don't
38345         cast the value to (void *): assigning a `foo *' to a `void *'
38346         variable is valid.
38347         (obstack_int_grow, obstack_int_grow_fast): Don't cast AINT to int.
38348
38349 2000-11-16  Jim Meyering  <meyering@lucent.com>
38350
38351         * lib/strverscmp.c: Incorporate weak-alias-related changes from glibc.
38352
38353 2000-11-11  Jim Meyering  <meyering@lucent.com>
38354
38355         * lib/error.c: Add a couple #includes, merging from GNU libc version.
38356
38357 2000-11-10  Jim Meyering  <meyering@lucent.com>
38358
38359         * lib/obstack.h: Update from GNU libc.
38360         * lib/obstack.c: Likewise.
38361
38362 2000-11-08  Bruno Haible  <haible@clisp.cons.org>
38363
38364         * m4/jm-macros.m4 (jm_MACROS): Add test for wcrtomb.
38365
38366 2000-11-06  Paul Eggert  <eggert@twinsun.com>
38367
38368         * lib/getusershell.c (setusershell): Use rewind rather than
38369         fseek/fseeko, to avoid configuration hassles with fseeko.
38370         Don't bother opening SHELLS_FILE if shellstream is NULL;
38371         it's not necessary.
38372
38373 2000-11-05  Jim Meyering  <meyering@lucent.com>
38374
38375         * lib/makepath.h (make_dir): Declare.
38376         * lib/makepath.c (make_dir): Remove `static' attribute.
38377         Tweak a comment.
38378
38379 2000-11-04  Jim Meyering  <meyering@lucent.com>
38380
38381         * m4/regex.m4: Use the `m4_' prefix on `syscmd' and `m4_sysval'.
38382
38383 2000-11-04  Alexandre Duret-Lutz  <duret_g@epita.fr>
38384
38385         * lib/hash.c (hash_get_next): Fix a thinko:  when ENTRY is the
38386         last one in a bucket, advance to the next bucket.
38387
38388 2000-11-02  Vesselin Atanasov  <vesselin@bgnet.bg>
38389
38390         * lib/fnmatch.c: Do not comment out all the code if we are using
38391         the GNU C library, because in some cases we are replacing buggy
38392         code in the GNU C library itself.
38393
38394 2000-10-30  Stefan Monnier  <monnier@cs.yale.edu>
38395
38396         * regex.c (re_iswctype, re_wctype_to_bit): Fix braino.
38397         (regex_compile): Catch bogus \(\1\).
38398
38399 2000-10-30  Paul Eggert  <eggert@twinsun.com>
38400
38401         * lib/fnmatch.c (FOLD): Do not assume that characters are unsigned.
38402         (fnmatch): Fix some FNM_FILE_NAME and FNM_LEADING_DIR bugs,
38403         e.g. fnmatch("d*/*1", "d/s/1", FNM_FILE_NAME) incorrectly yielded zero.
38404
38405 2000-10-30  Paul Eggert  <eggert@twinsun.com>
38406
38407         * lib/error.h, getline.h, modechange.h:
38408         Remove "2000" from Copyright line, as the file hasn't been
38409         changed this year other than in the copyright notice.
38410
38411         * lib/xalloc.h: Add "2000" to Copyright line, as this file
38412         was changed this year.
38413
38414 2000-10-29  Jim Meyering  <meyering@lucent.com>
38415
38416         * m4/fsusage.m4: s/AC_SHELL_IFELSE/AS_IFELSE/ to match autoconf
38417         renaming.
38418         * m4/ls-mntd-fs.m4: Likewise
38419
38420 2000-10-29  Jim Meyering  <meyering@lucent.com>
38421
38422         * lib/xstat.in: Fix grammar in comment.
38423
38424 2000-10-29  Greg Louis  <glouis@dynamicro.on.ca>
38425
38426         * lib/regex.h (__restrict_arr): Move definition out of #ifndef block.
38427         Required because egcs-2.91.66 (aka 1.1.2) defines __restrict, but
38428         doesn't define __restrict_arr.
38429
38430 2000-10-28  Jim Meyering  <meyering@lucent.com>
38431
38432         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_MEMCHR.
38433         (jm_PREREQ_MEMCHR): New function.
38434
38435 2000-10-28  Jim Meyering  <meyering@lucent.com>
38436
38437         * lib/memchr.c: Update from libc.
38438         Adjust for portability:
38439         [HAVE_STDLIB_H]: Include stdlib.h.
38440         [HAVE_BP_SYM_H || _LIBC]: Guard inclusion of bp-sym.h.
38441         Undef __memchr, too.
38442         [!weak_alias]: Define __memchr to memchr.
38443
38444         * lib/regex.c: Update from libc.
38445         * lib/regex.h: Likewise.
38446         * lib/getopt1.c: Likewise.
38447         * lib/memcmp.c: Likewise.
38448
38449         * lib/getusershell.c (setusershell) [HAVE_FSEEKO]: Use fseeko.
38450         Avoid using fseek, when possible -- it's broken by design.
38451         Patch by Ulrich Drepper.
38452
38453 2000-10-27  Stefan Monnier  <monnier@cs.yale.edu>
38454
38455         * regex.c (POP_FAILURE_REG_OR_COUNT, re_match_2_internal)
38456         (re_match_2_internal, re_match_2_internal, re_match_2_internal):
38457         Giving in to popular pressure to shut up the compiler with casts.
38458
38459 2000-10-26  Jim Meyering  <meyering@lucent.com>
38460
38461         * lib/strftime.c: Update from libc.
38462
38463 2000-10-25  Stefan Monnier  <monnier@cs.yale.edu>
38464
38465         * regex.c: More `unsigned char' -> `re_char' changes.
38466         Also change several `int' into `re_wchar_t'.
38467         (PATTERN_STACK_EMPTY, PUSH_PATTERN_OP, POP_PATTERN_OP): Remove.
38468         (PUSH_FAILURE_POINTER): Don't cast any more.
38469         (POP_FAILURE_REG_OR_COUNT): Remove the cast that strips `const'.
38470         We want GCC to complain, since this piece of code makes
38471         re_match non-reentrant, which *should* be fixed.
38472         (GET_BUFFER_SPACE): Use size_t rather than unsigned long.
38473         (EXTEND_BUFFER): Use RETALLOC.
38474         (SET_LIST_BIT): Don't cast.
38475         (re_wchar_t): New type.
38476         (re_iswctype, re_wctype_to_bit): Make it crystal clear to GCC
38477         that those two functions will always properly return.
38478         (IMMEDIATE_QUIT_CHECK): Cast to void.
38479         (analyse_first): Use recursion rather than an explicit stack.
38480         (re_compile_fastmap): Can't fail anymore.
38481         (re_search_2): Don't check re_compile_fastmap for failure.
38482         (PUSH_NUMBER): Renamed from PUSH_FAILURE_COUNT.
38483         Now also sets the new value (passed in a new argument).
38484         (re_match_2_internal): Use it.
38485         Also, use a new var `reg' of type size_t when looping through regs
38486         rather than reuse the inappropriate `mcnt'.
38487
38488 2000-10-25  Jim Meyering  <meyering@lucent.com>
38489
38490         * lib/obstack.c: Update from libc.
38491
38492 2000-10-24  Kenichi Handa  <handa@etl.go.jp>
38493
38494         * regex.c (regex_compile): Change the way of handling a range from
38495         a char less than 256 to a char not less than 256.
38496
38497 2000-10-24  Andrew Innes  <andrewi@gnu.org>
38498
38499         * regex.c (IMMEDIATE_QUIT_CHECK): New macro, which does QUIT on
38500         NT-Emacs only.
38501         (re_match_2_internal): Use IMMEDIATE_QUIT_CHECK instead of QUIT,
38502         so that re_search functions only quit when callers expect them to.
38503
38504 2000-10-23  Jim Meyering  <meyering@lucent.com>
38505
38506         * lib/hard-locale.c (hard_locale): Revert last change -- it was simply
38507         wrong.  That set_locale call must not have any side effects.
38508         From Paul Eggert.
38509
38510 2000-10-22  Jim Meyering  <meyering@lucent.com>
38511
38512         * lib/md5.c (md5_process_block) [OP]: Use `rol', not CYCLIC.
38513         [CYCLIC]: Remove now-unused definition.
38514
38515         * lib/save-cwd.c (O_DIRECTORY): Define, if needed.
38516         (save_cwd) [HAVE_FCHDIR]: Use O_DIRECTORY when opening ".".
38517         Suggestion from Ulrich Drepper.
38518
38519 2000-10-21  Jim Meyering  <meyering@lucent.com>
38520
38521         * m4/check-decl.m4 (jm_CHECK_DECLS): Also check for memrchr.
38522         * m4/prereq.m4 (jm_PREREQ_DIRNAME): New macro.
38523         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memrchr.
38524
38525 2000-10-21  Jim Meyering  <meyering@lucent.com>
38526
38527         * lib/dirname.c (memrchr): Declare if necessary.
38528         (dir_name): Remove the restriction that there be no
38529         trailing slashes.  Now, this code skips past them, effectively
38530         ignoring them.
38531         [TEST_DIRNAME] (main): New unit tests.
38532
38533         * lib/memrchr.c: New file from GNU libc.
38534         Undef __memrchr, too.
38535         [!weak_alias]: Define __memrchr to memrchr.
38536         Guard weak_alias use with `#ifdef weak_alias'.
38537
38538 2000-10-21  Jim Meyering  <meyering@lucent.com>
38539
38540         * lib/dirname.c (dir_name_r): New function, factored out of dir_name.
38541         (dir_name): Use dir_name_r.
38542         * lib/dirname.h (dir_name_r): Declare it.
38543
38544 2000-10-17  Jim Meyering  <meyering@lucent.com>
38545
38546         * lib/quote.h (PARAMS): Define and use.
38547         Reported by Akim Demaille.
38548
38549         * lib/getopt.c: Update from libc.
38550
38551 2000-10-16  Jim Meyering  <meyering@lucent.com>
38552
38553         * lib/hard-locale.c (hard_locale): Use "", not 0 as 2nd arg to
38554         setlocale.
38555         From Jan Fedak.
38556
38557 2000-10-15  Stefan Monnier  <monnier@cs.yale.edu>
38558
38559         * regex.c (WIDE_CHAR_SUPPORT): Define if _LIBC as well.
38560
38561 2000-09-25  Jim Meyering  <meyering@lucent.com>
38562
38563         * lib/md5.h (rol): Define (from GnuPG).
38564
38565         * lib/sha.c: Give credit (GnuPG) where due.
38566         (M): Use rol rather than open-coding it.
38567         Add a FIXME comment.
38568
38569 2000-09-21  Jim Meyering  <meyering@lucent.com>
38570
38571         * lib/userspec.c (parse_user_spec): Remove debugging printf I'd added.
38572         Reported by Michael Stone.
38573
38574 2000-09-20  Jim Meyering  <meyering@lucent.com>
38575
38576         * lib/Makefile.am (libfetish_a_SOURCES): Add sha.c.
38577         (noinst_HEADERS): Add sha.h.
38578         Based on code from Scott G. Miller and from GnuPG.
38579
38580 2000-09-18  Jim Meyering  <meyering@lucent.com>
38581
38582         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Restore the initial value of
38583         LIBS. Otherwise, everyone ends up linking with -lelf for some
38584         configurations.
38585         Reported by Mike Stone.
38586
38587 2000-09-15  Jim Meyering  <meyering@lucent.com>
38588
38589         * lib/regex.c: Update from libc.
38590
38591 2000-09-10  Jim Meyering  <meyering@lucent.com>
38592
38593         * lib/getopt.c (_getopt_internal): Update from glibc.
38594
38595 2000-09-09  Jim Meyering  <meyering@lucent.com>
38596
38597         * lib/quotearg.c: Rename ISASCII to IN_CTYPE_DOMAIN, so people don't
38598         think it should be used as a general replacement for isascii.
38599         * lib/fnmatch.c: Likewise.
38600         * lib/mbswidth.c: Likewise
38601         * lib/regex.c: Likewise.
38602
38603         Don't use atoi.
38604         * lib/userspec.c: Include sys/param.h and limits.h.
38605         Include xstrtol.h.
38606         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
38607         (UID_T_MAX, GID_T_MAX, MAXUID, MAXGID): Define.
38608         (parse_user_spec): Use xstrtoul, not atoi when converting numeric
38609         UID, GID.  Check range.
38610
38611 2000-09-06  Jim Meyering  <meyering@lucent.com>
38612
38613         * lib/getopt.c (_getopt_internal): Update from glibc.
38614
38615 2000-08-30  Jim Meyering  <meyering@lucent.com>
38616
38617         * lib/strftime.c: Merge in changes from GNU libc.
38618
38619 2000-08-26  Jim Meyering  <meyering@lucent.com>
38620
38621         * m4/jm-macros.m4: Use jm_FUNC_FPENDING.
38622         * m4/fpending.m4: New file.
38623
38624 2000-08-26  Jim Meyering  <meyering@lucent.com>
38625
38626         * lib/closeout.c: Include "__fpending.h".
38627         (close_stdout_status): Return right away if there's nothing to flush.
38628
38629         * lib/Makefile.am (noinst_HEADERS): Add __fpending.h.
38630         * lib/__fpending.c: New file.
38631         * lib/__fpending.h: New file.
38632
38633 2000-08-20  Jim Meyering  <meyering@lucent.com>
38634
38635         * m4/check-decl.m4: Include utmp.h `#if HAVE_UTMP_H', rather than
38636         `#if !HAVE_UTMPX_H'.  The latter would lose on systems with neither
38637         utmp.h nor utmpx.h.  Reported by Eli Zaretskii.
38638
38639 2000-08-11  J. David Anglin  <dave@hiauly1.hia.nrc.ca>
38640
38641         Improve fileutils installation on systems where running
38642         programs (like install) can't be unlinked.
38643         * m4/unlink-busy.m4 (jm_FUNC_UNLINK_BUSY_TEXT): New file/macro.
38644         * m4/jm-macros.m4: Use jm_FUNC_UNLINK_BUSY_TEXT.
38645
38646 2000-08-07  Paul Eggert  <eggert@twinsun.com>
38647
38648         Standardize on "memory exhausted" instead of "Memory exhausted"
38649         or "virtual memory exhausted".
38650         * lib/obstack.c (print_and_abort): Use "memory exhausted", not
38651         "virtual memory exhausted".
38652         * lib/same.c (same_name): Invoke xalloc_die instead of printing
38653         our own message.
38654         * lib/userspec.c (parse_user_spec): Likewise.
38655         * lib/bumpalloc.h: comment fix
38656         * lib/same.c, userspec.c: Include xalloc.h.
38657
38658         * lib/xalloc.h (xalloc_msg_memory_exhausted): Now char const[],
38659         not char *const and pointing to a constant array.
38660         * lib/xmalloc.c (xalloc_msg_memory_exhausted): Likewise.
38661         (xrealloc): Comment fix.
38662
38663         * lib/userspec.c (parse_user_spec):
38664         Don't translate a message until just before returning,
38665         to avoid unnecessary translation.
38666
38667 2000-08-07  Jim Meyering  <meyering@lucent.com>
38668
38669         * lib/addext.c, argmatch.c, argmatch.h, backupfile.h, bumpalloc.h,
38670         chown.c, diacrit.h, dirname.h, dup2.c, exclude.h, fileblocks.c,
38671         fnmatch.c, fnmatch.h, fsusage.c, fsusage.h, getdate.h,
38672         getgroups.c, gethostname.c, getopt.h, group-member.c,
38673         hard-locale.c, hash.h, isdir.c, lchown.c, linebuffer.c,
38674         linebuffer.h, long-options.h, malloc.c, md5.c, md5.h, memchr.c,
38675         memcmp.c, memcoll.c, memset.c, mktime.c, modechange.h, obstack.h,
38676         pathmax.h, realloc.c, rmdir.c, safe-read.c, save-cwd.c, stime.c,
38677         stpcpy.c, strcasecmp.c, strcspn.c, strdup.c, stripslash.c,
38678         strstr.c, strtod.c, strtol.c, strtoul.c, strtoull.c, strtoumax.c,
38679         utime.c, version-etc.h, xalloc.h, xstrdup.c, xstrtoumax.c,
38680         yesno.c: Back out Copyright date changes for each file with no change
38681         this year.  This eases coordination with other programs using the same
38682         source code modules.  From Paul Eggert.
38683
38684 2000-08-06  Paul Eggert  <eggert@twinsun.com>
38685
38686         * m4/mbstate_t.m4 (AC_MBSTATE_T): Define mbstate_t to be int,
38687         not char, for compatibility with glibc 2.1.3 strftime.c.
38688
38689 2000-08-03  Greg McGary  <greg@mcgary.org>
38690
38691         * lib/regex.c (SET_HIGH_BOUND, MOVE_BUFFER_POINTER,
38692         ELSE_EXTEND_BUFFER_HIGH_BOUND): New macros.
38693         (EXTEND_BUFFER): Use them.
38694
38695 2000-08-01  Jim Meyering  <meyering@lucent.com>
38696
38697         * lib/dirname.c (ISSLASH): Define.
38698         (BACKSLASH_IS_PATH_SEPARATOR): Define.
38699         (dir_name) [BACKSLASH_IS_PATH_SEPARATOR]: Handle the case in which
38700         both `\' and `/' may be use as path separators.
38701         Based on a patch from Prashant TR.
38702
38703 2000-07-31  Paul Eggert  <eggert@twinsun.com>
38704
38705         * lib/quotearg.c (quotearg_n_options): Don't make the initial
38706         slot vector a constant, since it might get modified.
38707
38708 2000-07-31  Jim Meyering  <meyering@lucent.com>
38709
38710         * lib/xmalloc.c: Use `virtual memory exhausted', not
38711         `Memory exhausted'.
38712         * lib/obstack.c (print_and_abort): Likewise.
38713
38714 2000-07-30  Paul Eggert  <eggert@twinsun.com>
38715
38716         * lib/quotearg.c (quotearg_n_options): Preallocate a slot 0
38717         buffer, so that the caller can always quote one small
38718         component of a "memory exhausted" message in slot 0.
38719         From a suggestion by Jim Meyering.
38720
38721 2000-07-30  Jim Meyering  <meyering@lucent.com>
38722
38723         * lib/makepath.c (make_path): Quote the other instance, too.
38724
38725         * lib/quotearg.c (N_STATIC_SLOTVECS): Define.
38726         (STATIC_BUF_SIZE): Define.
38727         (quotearg_n_options): Use only statically allocated storage when
38728         N < N_STATIC_SLOTVECS and the length of the quoted result is smaller
38729         than STATIC_BUF_SIZE.
38730
38731 2000-07-29  Jim Meyering  <meyering@lucent.com>
38732
38733         * lib/diacrit.c (diacrit_diac): Use __MSDOS__ in favor of MSDOS.
38734         * lib/dirname.c (dir_name): Likewise.
38735
38736         * lib/basename.c (base_name): Use ISSLASH rather than comparing against
38737         `/'.
38738
38739         * lib/dirname.c (dir_name) [MSDOS]: Declare `lim' to be const.
38740         (dir_name): Assert that there are no trailing slashes.
38741
38742 2000-07-29  Bruno Haible  <haible@clisp.cons.org>
38743
38744         * lib/mbswidth.h (mbswidth): Add a flags argument.
38745         (mbswidth): New declaration.
38746         (MBSW_ACCEPT_INVALID, MBSW_ACCEPT_UNPRINTABLE): New macros.
38747         * lib/mbswidth.c (mbswidth): Add a flags argument.
38748         (mbsnwidth): New function.
38749
38750 2000-07-24  Jim Meyering  <meyering@lucent.com>
38751
38752         * lib/mbswidth.c: Remove useless #else.  From Bruno Haible.
38753
38754 2000-07-23  Paul Eggert  <eggert@twinsun.com>
38755
38756         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Check for wcwidth declaration.
38757
38758 2000-07-23  Paul Eggert  <eggert@twinsun.com>
38759
38760         * lib/quotearg.c: Streamline by invoking multibyte code only if needed.
38761         <wchar.h>: Include only if HAVE_MBRTOWC && 1 < MB_LEN_MAX.
38762         (MB_CUR_MAX): Redefine to 1 if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX).
38763         (quotearg_buffer_restyled): If a unibyte locale, don't bother to
38764         invoke multibyte primitives.
38765
38766 2000-07-23  Paul Eggert  <eggert@twinsun.com>
38767
38768         * lib/quotearg.c:
38769         Include <wchar.h> even if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX),
38770         so that mbstate_t is always defined.
38771
38772         Do not inspect MB_LEN_MAX, since it's incorrectly defined to
38773         be 1 in at least one GCC installation, and this configuration
38774         error is likely to be common.  Ignoring MB_LEN_MAX hurts
38775         performance on hosts that have mbrtowc but have only unibyte
38776         locales, but I assume these hosts are rare.
38777
38778 2000-07-23  Paul Eggert  <eggert@twinsun.com>
38779
38780         * lib/mbswidth.c (_XOPEN_SOURCE):
38781         Don't define; this causes problems on Solaris 7.
38782         (wcwidth) [!HAVE_DECL_WCWIDTH]: Declare.
38783
38784 2000-07-23  Jim Meyering  <meyering@lucent.com>
38785
38786         * m4/check-decl.m4 (jm_CHECK_DECLS): Check for declarations of these,
38787         too: getgrgid, getpwuid, getuid.
38788
38789 2000-07-23  Jim Meyering  <meyering@lucent.com>
38790
38791         * lib/basename.c (base_name): Add an assertion.
38792
38793 2000-07-23  Bruno Haible  <haible@clisp.cons.org>
38794
38795         * lib/quotearg.c: When the system forces us to redefine mbstate_t,
38796         shadow its mbsinit function.
38797
38798 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
38799
38800         * lib/mbswidth.h: New file.
38801         * lib/mbswidth.c: New file.
38802         * lib/Makefile.am (libfetish_a_SOURCES): Add mbswidth.c.
38803         (noinst_HEADERS): Add mbswidth.h.
38804
38805 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
38806
38807         * lib/config.charset: Add support for FreeBSD. Improve support for
38808         HP-UX and IRIX 6.
38809
38810 2000-07-16  Bruno Haible  <haible@clisp.cons.org>
38811
38812         * m4/mbswidth.m4: New file.
38813         * m4/prereq.m4 (jm_PREREQ): Call jm_PREREQ_MBSWIDTH.
38814
38815 2000-07-15  Jim Meyering  <meyering@lucent.com>
38816
38817         * lib/makepath.c: Include quote.h.
38818         (make_path): Convert "`%s'" in format strings to "%s", and wrap each
38819         corresponding argument in a `quote (...)' call.
38820         Give better diagnostics.
38821
38822         * lib/Makefile.am (libfetish_a_SOURCES): Add quote.c.
38823         (noinst_HEADERS): Add quote.h.
38824
38825         * lib/quote.c (quote, quote_n): New file.  Two functions taken verbatim
38826         from tar's src/misc.c.
38827         * lib/quote.h: New file.  Prototypes for same.
38828
38829 2000-07-14  Paul Eggert  <eggert@twinsun.com>
38830
38831         From a suggestion by Bruno Haible.
38832         * lib/quotearg.c (mbrtowc): Do not use HAVE_WCHAR_H in the definition.
38833         Use defined mbstate_t, not HAVE_MBSTATE_T_OBJECT,
38834         to decide whether to define the BeOS workaround macro;
38835         this adjusts to the change to AC_MBSTATE_T.
38836
38837 2000-07-14  Jim Meyering  <meyering@lucent.com>
38838
38839         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Require
38840         jm_AC_TYPE_UINTMAX_T.
38841
38842 2000-07-13  Paul Eggert  <eggert@twinsun.com>
38843
38844         * lib/quotearg.h (enum quoting style): New enum clocale_quoting_style.
38845
38846         * lib/quotearg.c (quoting_style_args, quoting_style_vals,
38847         quotearg_buffer_restyled): Add support for
38848         clocale_quoting_style.  Undo previous change to
38849         locale_quoting_style behavior, and undo the "{LEFT QUOTATION MARK}"
38850         and "{RIGHT QUOTATION MARK}" msgids.
38851
38852 2000-07-10  Paul Eggert  <eggert@twinsun.com>
38853
38854         From a suggestion by Bruno Haible.
38855         * m4/mbstate_t.m4 (AC_MBSTATE_T):
38856         Renamed from AC_MBSTATE_T_OBJECT.  All uses changed.
38857         Change from a two-part test, which defines both HAVE_MBSTATE_T_OBJECT
38858         and mbstate_t, to a single-part test that simply defines mbstate_t.
38859         * m4/prereq.m4 (jm_PREREQ_QUOTEARG):
38860         s/AC_MBSTATE_T_OBJECT/AC_MBSTATE_T/.
38861
38862 2000-07-10  Jim Meyering  <meyering@lucent.com>
38863
38864         * m4/strerror_r.m4: Mirror the correction made in autoconf.
38865
38866         * m4/gnu-source.m4: Output to confdefs.h directly.
38867         Suggestion from Akim Demaille.
38868
38869 2000-07-09  Paul Eggert  <eggert@twinsun.com>
38870
38871         The old behavior of quoting `like this' doesn't look good with
38872         newer, ISO-style fonts.  See:
38873         http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html
38874
38875         Instead, quote "like this" by default.  Let the translator
38876         tailor the locale-specific quoting behavior by providing
38877         translations for {LEFT QUOTATION MARK} and {RIGHT QUOTATION MARK}.
38878
38879         * lib/quotearg.c (N_): New macro.
38880         (gettext_default): New function.
38881         (quotearg_buffer_restyled): Use
38882         gettext_default ("{LEFT QUOTATION MARK}", "\"") for left quote, and
38883         gettext_default ("{RIGHT QUOTATION MARK}", "\"") for right quote.
38884
38885 2000-07-09  Jim Meyering  <meyering@lucent.com>
38886
38887         * m4/jm-macros.m4 (jm_MACROS): Add a test to see if -lm is required
38888         to link seq.  If so, set SEQ_LIBM to -lm.  From Bruno Haible.
38889
38890         * m4/gnu-source.m4 (AC__GNU_SOURCE): New file/macro.
38891         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require it.
38892
38893 2000-07-09  Jim Meyering  <meyering@lucent.com>
38894
38895         * lib/Most files: Update copyright dates to include 2000.
38896
38897 2000-07-08  Jim Meyering  <meyering@lucent.com>
38898
38899         * lib/xgethostname.c (ENAMETOOLONG): Define to an unlikely value
38900         if not defined.
38901         (xgethostname): Remove now-unnecessary #ifdef.
38902         Move declaration of `err' into loop where it's used.
38903
38904 2000-07-05  Paul Eggert  <eggert@twinsun.com>
38905         and Bruno Haible  <haible@clisp.cons.org>
38906
38907         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Test for mbstate_t
38908         only if the test for an object-type mbstate_t fails.  This
38909         prevents us from mistakenly reporting that mbstate_t is a
38910         system object type after we "#define mbstate_t int" to work
38911         around its lack.
38912
38913 2000-07-05  Paul Eggert  <eggert@twinsun.com>
38914         and Bruno Haible  <haible@clisp.cons.org>
38915
38916         * lib/quotearg.c (mbrtowc): Declare returned type, since BeOS doesn't.
38917
38918 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
38919
38920         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Pass a reasonably large buffer
38921         to strerror_r.
38922         Include <ctype.h> for use of isalpha.
38923
38924 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
38925
38926         * lib/xgethostname.c (xgethostname): Protect against the SunOS 5.5 bug
38927         by allocating a larger buffer. Test the gethostname return value for
38928         being >= 0, not == 0, for BeOS.  Don't exhaust memory if gethostname
38929         returns an error and ENAMETOOLONG isn't defined.
38930
38931 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
38932
38933         * lib/quotearg.c (struct quoting_options): Simplify quote_these_too
38934         dimension.
38935
38936 2000-07-04  Jim Meyering  <meyering@lucent.com>
38937
38938         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use plain old `echo' instead
38939         of the deprecated AC_CHECKING.
38940
38941 2000-07-04  Jim Meyering  <meyering@lucent.com>
38942
38943         * lib/strndup.c: [!HAVE_DECL_STRNLEN]: Declare strnlen.
38944         Reported by Bruno Haible.
38945
38946 2000-07-04  Jim Meyering  <meyering@lucent.com>
38947
38948         * lib/quotearg.c: Make inclusion of <wchar.h> independent of whether
38949         HAVE_MBRTOWC is set.  Required at least for irix-5.6, which
38950         lacks mbrtowc.
38951
38952 2000-07-03  Paul Eggert  <eggert@twinsun.com>
38953
38954         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Port to autoconf 2.13.
38955         Add AC_CHECK_HEADERS(stdlib.h), since we use HAVE_STDLIB_H.
38956
38957 2000-07-03  Paul Eggert  <eggert@twinsun.com>
38958         and Bruno Haible  <haible@clisp.cons.org>
38959
38960         * lib/quotearg.c (mbrtowc):
38961         Assign to *pwc, and return 1 only if result is nonzero.
38962         (iswprint): Use ISPRINT when substituting our own mbrtowc.
38963
38964 2000-07-03  Jim Meyering  <meyering@lucent.com>
38965
38966         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strnlen.
38967
38968 2000-07-03  Jim Meyering  <meyering@lucent.com>
38969
38970         * lib/readutmp.h: [HAVE_UTMPX_H]: Include <utmp.h> if HAVE_UTMP_H.
38971         This is necessary to get a definition of e.g., UTMP_FILE on
38972         HP-UX 10.20.
38973         From Bob Proulx.
38974
38975 2000-07-02  Jim Meyering  <meyering@lucent.com>
38976
38977         * m4/mbstate_t.m4: Also define mbstate_t, if necessary.
38978
38979         * m4/chown.m4: Replace each use of AC_SUBST(LIBOBJS)/LIBOBJS=... with
38980         AC_LIBOBJ(function_name).
38981         * m4/chown.m4: Likewise.
38982         * m4/fnmatch.m4: Likewise.
38983         * m4/ftruncate.m4: Likewise.
38984         * m4/getgroups.m4: Likewise.
38985         * m4/getline.m4: Likewise.
38986         * m4/group-member.m4: Likewise.
38987         * m4/jm-macros.m4: Likewise.
38988         * m4/lstat.m4: Likewise.
38989         * m4/malloc.m4: Likewise.
38990         * m4/memcmp.m4: Likewise.
38991         * m4/nanosleep.m4: Likewise.
38992         * m4/putenv.m4: Likewise.
38993         * m4/realloc.m4: Likewise.
38994         * m4/regex.m4: Likewise.
38995         * m4/stat.m4: Likewise.
38996         * m4/strftime.m4: Likewise.
38997
38998 2000-07-02  Jim Meyering  <meyering@lucent.com>
38999
39000         * lib/quotearg.c (mbstate_t): Don't define here.
39001
39002 2000-07-02  Jim Meyering  <meyering@lucent.com>
39003
39004         * lib/nanosleep.c (SIGCONT): Define if not already defined.
39005
39006 2000-07-01  Jim Meyering  <meyering@lucent.com>
39007
39008         * m4/uptime.m4: Put double quotes around use of $cross_compiling.
39009
39010 2000-07-01  Jim Meyering  <meyering@lucent.com>
39011
39012         * m4/ls-mntd-fs.m4: Remove a `FIXME' comment and fix the associated
39013         problem.
39014
39015 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
39016
39017         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Rename BeOS specific
39018         macro from MOUNTED_NEXT_DEV to MOUNTED_FS_STAT_DEV.
39019
39020 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
39021
39022         * lib/mountlist.c: Use MOUNTED_FS_STAT_DEV instead of MOUNTED_NEXT_DEV,
39023         per change in ../m4/ls-mntd-fs.m4.
39024         (read_filesystem_list): Ignore symbolic links.
39025
39026 2000-06-29  Jim Meyering  <meyering@lucent.com>
39027
39028         * lib/same.c: Include <string.h> or <strings.h>, as appropriate,
39029         for declaration of strcmp.
39030
39031         * lib/long-options.c: Include <stdlib.h>, for declaration of exit.
39032
39033         * lib/mountlist.c (fsp_to_string) [HAVE_F_FSTYPENAME_IN_STATFS]:
39034         Avoid warning by casting result to `char *' to remove `const'.
39035
39036 2000-06-28  Jim Meyering  <meyering@lucent.com>
39037
39038         * m4/mbstate_t.m4: Use stdlib.h, not stdio.h.  The latter is not
39039         included by quotearg.c, for which we perform this test.  From
39040         Bruno Haible.
39041
39042 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
39043
39044         * m4/check-decl.m4 (_jm_DECL_HEADERS): Check for utmp.h as well.
39045         * m4/prereq.m4 (jm_PREREQ_READUTMP): Likewise. If either <utmp.h> or
39046         <utmpx.h> exists, put readutmp.o into LIBOBJS.
39047
39048 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
39049
39050         * lib/Makefile.am (libfetish_a_SOURCES): Remove readutmp.c.
39051
39052 2000-06-26  Paul Eggert  <eggert@twinsun.com>
39053
39054         savedir now sets errno on failure and invokes xmalloc to get memory.
39055         Fix a couple of other minor bugs while we're at it.
39056
39057         * lib/savedir.c (<unistd.h>): Do not include; there's no need.
39058         (NAMLEN): Remove macro.
39059         (malloc, realloc): Remove decls.
39060         (stpcpy): Likewise.
39061         ("xalloc.h"): Include.
39062         (NAME_SIZE_DEFAULT): New macro.
39063         (savedir): Use xmalloc / xrealloc to allocate memory.
39064         Use NAME_SIZE_DEFAULT if name_size is negative or overflows to zero.
39065         Skip "" directory entries.
39066         Use strlen to calculate directory entry length, since the old method
39067         is rarely used these days and isn't worth supporting.
39068         Don't use a pointer after freeing it.
39069         Check for integer overflow when calculating allocation size.
39070         Use memcpy to copy entries, instead of stpcpy.
39071         Set errno properly when returning NULL.
39072         Check for readdir error.
39073
39074 2000-06-26  Jim Meyering  <meyering@lucent.com>
39075
39076         * lib/posixtm.c [HAVE_STDLIB_H]: Include stdlib.h, for decl of abort.
39077
39078 2000-06-25  Jim Meyering  <meyering@lucent.com>
39079
39080         * m4/mbstate_t.m4: Include stdio.h before wchar.h to work around
39081         Linux header bug when _XOPEN_SOURCE is defined to 500.
39082
39083 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
39084
39085         * lib/unicodeio.c (print_unicode_char): Work around ansi2knr
39086         deficiency.
39087
39088 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
39089
39090         * lib/getusershell.c (xmalloc, xrealloc): Remove functions.
39091         Include xalloc.h.
39092         Don't include <stdlib.h>.  Don't declare malloc, realloc.
39093
39094 2000-06-24  Jim Meyering  <meyering@lucent.com>
39095
39096         * m4/strerror_r.m4: Revive this file -- to try out an experimental
39097         version of AC_FUNC_STRERROR_R that may work even on BeOS, a system
39098         for which strerror does return char*, but which lacks a conveniently
39099         accessible declaration of the function.  If the compile-test says
39100         strerror_r doesn't work, then resort to a `run'-test that works on
39101         BeOS and segfaults on DEC Unix.
39102
39103 2000-06-24  Jim Meyering  <meyering@lucent.com>
39104
39105         * lib/error.c [!HAVE_DECL_STRERROR_R]: Declare strerror_r.
39106
39107 2000-06-23  Paul Eggert  <eggert@twinsun.com>
39108
39109         * m4/mbstate_t.m4: New file, defining AC_MBSTATE_T_OBJECT.
39110         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Use it.  Add check for iswprint.
39111
39112 2000-06-23  Paul Eggert  <eggert@twinsun.com>
39113
39114         * lib/quotearg.c: Include <wctype.h> after <wchar.h>, for Solaris 2.5.
39115         (mbrtowc, mbstate_t): Define substitutes if
39116         HAVE_MBRTOWC && HAVE_WCHAR_H && !HAVE_MBSTATE_T_OBJECT.
39117         (iswprint): Define to 1 if !defined iswprint && !HAVE_ISWPRINT,
39118         not if ! (HAVE_MBRTOWC && HAVE_WCHAR_H).
39119
39120 2000-06-23  Jim Meyering  <meyering@lucent.com>
39121
39122         * m4/afs.m4: Add missing AC_MSG_RESULT.
39123         Reported by Bruno Haible.
39124
39125         * m4/fsusage.m4: s/AC_MSG_CHECKING/AC_CHECKING/.
39126         Suggestion from Bruno Haible.
39127
39128 2000-06-23  Jim Meyering  <meyering@lucent.com>
39129
39130         * lib/getpass.c: New file, from Bruno Haible.  Required for BeOS.
39131
39132 2000-06-21  Jim Meyering  <meyering@lucent.com>
39133
39134         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add getpass.
39135
39136 2000-06-21  Jim Meyering  <meyering@lucent.com>
39137
39138         * lib/Makefile.am (libfetish_a_SOURCES): Add getstr.c.
39139         (noinst_HEADERS): Add getstr.h.
39140
39141         * lib/getline.c (getstr): Move into a separate file.
39142         * lib/getstr.c (getstr): New file, extracted from getline.c, with
39143         the following changes: new parameter, delim2; both delim[12]
39144         parameters have type `int', not `char'.  The latter would lose
39145         with 8-bit delimiters.
39146         * lib/getstr.h: New file.
39147
39148 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
39149
39150         * lib/xgetcwd.c (xgetcwd): If the required pathname length is smaller
39151         than 1024, return a memory chunk of least possible size, instead
39152         of size PATH_MAX + 2. In the loop, increment the size proportionally.
39153         Use free/xmalloc instead of xrealloc to avoid copying for very long
39154         paths.
39155
39156 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
39157
39158         * lib/path-concat.c (path_concat): Don't access dir[-1] if dir is
39159         the empty string.
39160
39161 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
39162
39163         * lib/canon-host.c (canon_host): Use malloc and memcpy to copy an
39164         address, not strdup.  Include <stdlib.h> and don't declare free().
39165
39166 2000-06-19  Jim Meyering  <meyering@lucent.com>
39167
39168         * lib/getloadavg.c [HAVE_NLIST_H] (NLIST_STRUCT): Define.
39169
39170 2000-06-18  Jim Meyering  <meyering@lucent.com>
39171
39172         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Remove mkdir.
39173
39174         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): Change the
39175         `checking whether...' message to be consistent with that of the
39176         lstat test.
39177
39178 2000-06-18  Jim Meyering  <meyering@lucent.com>
39179
39180         * lib/mkdir.c: Remove file, due mainly to copyright incompatibility.
39181         Besides, these days every porting target provides a mkdir function.
39182
39183         * lib/strnlen.c: Include memory.h, string.h, and/or strings.h as
39184         needed. (this snippet comes from src/system.h).
39185
39186 2000-06-16  Bruno Haible  <haible@clisp.cons.org>
39187
39188         * m4/glibc21.m4 (jm_GLIBC21): Define GLIBC21 for Makefiles, not for C.
39189
39190 2000-06-15  Paul Eggert  <eggert@twinsun.com>
39191
39192         * lib/human.c (adjust_value): New function.
39193         (human_readable_inexact): Apply rounding style even when
39194         printing approximate values.
39195
39196 2000-06-14  Paul Eggert  <eggert@twinsun.com>
39197
39198         * lib/human.c (human_readable_inexact): Allow an input block
39199         size that is not a multiple of the output block size, and vice versa.
39200         Reported by Piergiorgio Sartor.
39201
39202 2000-06-14  Paul Eggert  <eggert@twinsun.com>
39203
39204         * lib/getdate.y (get_date): Apply relative times after time
39205         zone indicator, not before.  Reported by Todd A. Jacobs.
39206
39207 2000-06-13  Jim Meyering  <meyering@lucent.com>
39208
39209         * lib/Makefile.am (all-local): Depend on lstat.c and stat.c.
39210
39211         * lib/xstat.in [!HAVE_DECL_FREE]: Declare free in lstat.c.
39212
39213 2000-06-12  Paul Eggert  <eggert@twinsun.com>
39214
39215         * lib/xstat.in: Include <stdlib.h> in lstat, to declare "free".
39216
39217 2000-06-12  Jim Meyering  <meyering@lucent.com>
39218
39219         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Replace with
39220         AC_FUNC_GETLOADAVG from autoconf, and tweak the latter to accept an
39221         optional argument.
39222         * m4/jm-macros.m4: s/AM_FUNC_GETLOADAVG/AC_FUNC_GETLOADAVG/, and supply
39223         the optional argument, `lib'.
39224
39225 2000-06-08  Jim Meyering  <meyering@lucent.com>
39226
39227         * m4/largefile.m4: Remove file (now that it's part of autoconf).
39228
39229 2000-06-04  Paul Eggert  <eggert@twinsun.com>
39230
39231         Rewrite largefile configuration so that we don't need to run
39232         getconf and don't need AC_CANONICAL_HOST.  [I'm leaving the use of
39233         AC_CANONICAL_HOST in configure.in -- jmm]
39234
39235         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS,
39236         AC_SYS_LARGEFILE_SPACE_APPEND): Remove.
39237         (AC_SYS_LARGEFILE_TEST_INCLUDES): New macro.
39238         (AC_SYS_LARGEFILE_MACRO_VALUE): Change arguments from
39239         CODE-TO-SET-DEFAULT to VALUE, INCLUDES, FUNCTION-BODY.
39240         All uses changed.
39241         Instead of inspecting the output of getconf, try to compile the
39242         test program without and with the macro definition.
39243         (AC_SYS_LARGEFILE): Do not require AC_CANONICAL_HOST or check
39244         for getconf.  Instead, check for the needed flags by compiling
39245         test programs.
39246
39247 2000-06-04  Paul Eggert  <eggert@twinsun.com>
39248
39249         * lib/strnlen.c: Include <config.h> if HAVE_CONFIG_H.
39250
39251 2000-06-04  Jim Meyering  <meyering@lucent.com>
39252
39253         * lib/getugroups.c (getugroups): Cast -1 to gid_t, for systems like
39254         SunOS 4.1.4 for which gid_t is an unsigned type.
39255
39256 2000-06-03  Jim Meyering  <meyering@lucent.com>
39257
39258         * m4/prereq.m4 (jm_PREREQ_HUMAN): Use []-quoted list in AC_CHECK_DECLS,
39259         now that autoconf requires that.
39260
39261         * m4/jm-glibc-io.m4: Add a kludge to make autoheader emit the required
39262         #undefs.  E.g., #undef HAVE_DECL_FERROR_UNLOCKED.
39263         Use []-quoted list in AC_CHECK_DECLS, now that autoconf requires that.
39264
39265 2000-06-03  Jim Meyering  <meyering@lucent.com>
39266
39267         * lib/strnlen.c [!HAVE_DECL_MEMCHR]: Declare memchr.
39268
39269 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
39270
39271         * m4/glibc21.m4: New file.
39272         * m4/jm-macros.m4 (jm_MACROS): Call jm_GLIBC21.
39273
39274 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
39275
39276         * lib/Makefile.am (install-exec-local): On systems with glibc-2.1 or
39277         newer, don't install charset.alias.
39278         * lib/config.charset: Change the Linux/glibc rules so they become empty
39279         on glibc-2.1 or newer.
39280
39281 2000-06-02  Jim Meyering  <meyering@lucent.com>
39282
39283         * lib/mountlist.c: Back out last change.  Instead, do this...
39284         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Set the
39285         me_dummy member using the same `ignore'-testing code.
39286         * lib/mountlist.h (ME_DUMMY): Add `autofs' to the list of ignored
39287         fs_type strings.
39288         From Mark D. Roth.
39289
39290 2000-05-29  Jim Meyering  <meyering@lucent.com>
39291
39292         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Ignore
39293         mounts with the `ignore' attribute.  Based on a patch from
39294         Mark D. Roth.
39295
39296 2000-05-28  Jim Meyering  <meyering@lucent.com>
39297
39298         * m4/jm-macros.m4 (AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK): Rename from
39299         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
39300         * m4/stat.m4: Likewise.
39301         * m4/lstat.m4: Likewise.
39302         * m4/lstat-slash.m4: Remove file (absorbed into autoconf).
39303
39304         * m4/jm-macros.m4 (AC_FUNC_STRERROR_R): Rename from jm_FUNC_STRERROR_R.
39305         * m4/strerror_r.m4: Remove file (absorbed into autoconf).
39306
39307 2000-05-26  Jim Meyering  <meyering@lucent.com>
39308
39309         * m4/uptime.m4: Use `$cross_compiling', not `$ac_cv_prog_cc_cross'.
39310
39311 2000-05-24  Jim Meyering  <meyering@lucent.com>
39312
39313         * m4/prereq.m4: Use []-quoted list in AC_CHECK_MEMBERS, now that
39314         autoconf requires that.
39315         * m4/lib-check.m4: Likewise.
39316         * m4/jm-macros.m4: Likewise.
39317         * m4/strftime.m4: Likewise.
39318
39319         * m4/check-decl.m4 (jm_CHECK_DECLS): Use []-quoted list in
39320         AC_CHECK_DECLS, now that autoconf requires that.
39321
39322 2000-05-22  Jim Meyering  <meyering@lucent.com>
39323
39324         * m4/stat.m4: Require jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
39325         * m4/lstat.m4: Likewise.
39326
39327 2000-05-22  Jim Meyering  <meyering@lucent.com>
39328
39329         * lib/makepath.c: Remove old, now-unnecessary `#ifdef __MSDOS__' block.
39330
39331 2000-05-20  Jim Meyering  <meyering@lucent.com>
39332
39333         * m4/prereq.m4 (jm_PREREQ_HUMAN): New macro.
39334         (jm_PREREQ): Use it.
39335
39336 2000-05-18  Jim Meyering  <meyering@lucent.com>
39337
39338         * lib/hash.c (hash_rehash): Fix a nasty bug: copy the free entry list
39339         back, too, since it may have been modified by allocate_entry.
39340         (hash_delete): Rewrite to use neither the assignment operator
39341         nor the comma operator in an if-expression.
39342
39343 2000-05-15  Paul Eggert  <eggert@twinsun.com>
39344
39345         * lib/closeout.c:
39346         <sys/stat.h>, <sys/types.h>, <unistd.h>, (STDOUT_FILENO):
39347         Remove; no longer needed.
39348         "quotearg.h": Add include.
39349         (file_name): Do not bother to explicitly initialize to NULL; it's less
39350         efficient on some hosts.
39351         (close_stdout_status): Remove test as to whether stdout was already
39352         closed; it breaks for the case "echo x | sort >&-".
39353         Quote file name colons.
39354         Do not assume that _("write error") lacks format strings.
39355
39356 2000-05-15  Jim Meyering  <meyering@lucent.com>
39357
39358         * lib/version-etc.c (version_etc_copyright): Update the copyright
39359         string used in all --version output.
39360
39361 2000-05-14  Jim Meyering  <meyering@lucent.com>
39362
39363         * lib/closeout.c (close_stdout_set_file_name): New function.
39364         (close_stdout_status): Use new file-scoped global.
39365         Return right away if fstat says the stdout file descriptor is invalid.
39366         * lib/closeout.h (close_stdout_set_file_name): Declare.
39367
39368 2000-05-10  Jim Meyering  <meyering@lucent.com>
39369
39370         * lib/closeout.c [default_exit_status]: New file-scoped variable.
39371         (close_stdout_set_status): New function.
39372         * lib/closeout.h (close_stdout_set_status): Declare.
39373
39374 2000-05-09  Jim Meyering  <meyering@lucent.com>
39375
39376         * m4/gettext.m4: Rename this...
39377         * m4/libintl.m4: ...to this.
39378
39379 2000-05-08  Jim Meyering  <meyering@lucent.com>
39380
39381         * lib/long-options.c: Don't include closeout.h.
39382         (parse_long_options): Don't call close_stdout for --version.
39383
39384 2000-05-06  Paul Eggert  <eggert@twinsun.com>
39385
39386         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _XOPEN_SOURCE to
39387         be 500, instead of _GNU_SOURCE to be 1, to work around glibc
39388         2.1.3 bug.  This avoids a clash when files like regex.c define
39389         _GNU_SOURCE.
39390
39391 2000-05-06  Jim Meyering  <meyering@lucent.com>
39392
39393         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add atexit.
39394         (AC_REPLACE_FUNCS): Add strnlen.
39395
39396         * m4/rmdir-errno.m4 (fetish_FUNC_RMDIR_NOTEMPTY): New macro and file.
39397         * m4/jm-macros.m4: Require fetish_FUNC_RMDIR_NOTEMPTY.
39398
39399         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Save and restore LIBS around
39400         AC_SEARCH_LIBS call for nanosleep.
39401         (LIB_NANOSLEEP): Set and AC_SUBST.
39402
39403 2000-05-06  Jim Meyering  <meyering@lucent.com>
39404
39405         * lib/strnlen.c: Undefine __strnlen and strnlen.
39406         [!weak_alias]: Define __strnlen to strnlen.
39407
39408         * lib/atexit.c: New file, from libiberty.
39409
39410 2000-05-06  Jim Meyering  <meyering@lucent.com>
39411
39412         * lib/closeout.c (close_stdout_status): Also check for errors on the
39413         stderr stream.
39414
39415 2000-05-05  Jim Meyering  <meyering@lucent.com>
39416
39417         * m4/jm-macros.m4 (jm_MACROS): Save and restore LIBS around
39418         AC_SEARCH_LIBS call for clock_gettime.
39419         (LIB_CLOCK_GETTIME): Set and AC_SUBST.
39420
39421         * m4/search-libs.m4: Update from autoconf.
39422
39423         su doesn't work on Solaris 2.6.
39424         * m4/lib-check.m4: When checking for struct spwd.sp_pwdp, also include
39425         <shadow.h>.  Reported by Dragos Harabor.
39426
39427 2000-05-05  Bruno Haible  <haible@clisp.cons.org>
39428
39429         * lib/localcharset.c (get_charset_aliases): Use malloc, realloc and
39430         memcpy instead of xmalloc, xrealloc, path_concat.
39431         (locale_charset): Treat empty environment variables as absent.
39432         (DIRECTORY_SEPARATOR, ISSLASH): New macros.
39433
39434 2000-05-04  Jim Meyering  <meyering@lucent.com>
39435
39436         * lib/getopt.c: Update from glibc.
39437         * lib/obstack.c: Likewise.
39438         * lib/obstack.h: Likewise.
39439         * lib/regex.c: Likewise.  NB: K&R compiler support is dropped for this
39440         file
39441
39442         * lib/regex.h: Likewise.
39443         * lib/strndup.c: Likewise.
39444         * lib/strnlen.c: New file, from glibc.
39445
39446 2000-05-03  Jim Meyering  <meyering@lucent.com>
39447
39448         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strndup.
39449
39450 2000-05-02  Paul Eggert  <eggert@twinsun.com>
39451
39452         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _GNU_SOURCE if
39453         this is needed to make ftello visible (e.g. glibc 2.1.3).  Use
39454         compile-time test, rather than inspecting host and OS, to
39455         decide whether to define _LARGEFILE_SOURCE.
39456
39457 2000-05-01  Jim Meyering  <meyering@lucent.com>
39458
39459         * m4/fsusage.m4: Use AC_MSG_CHECKING instead of obsolete AC_CHECKING.
39460
39461         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add BeOS support.
39462         Based on a patch from Bruno Haible.
39463
39464 2000-05-01  Jim Meyering  <meyering@lucent.com>
39465
39466         * lib/full-write.c (full_write): Remove `FIXME' part of comment.
39467
39468 2000-04-29  Jim Meyering  <meyering@lucent.com>
39469
39470         * lib/path-concat.c: Declare strdup only if it's not defined.
39471         * lib/canon-host.c: Likewise.
39472
39473 2000-04-28  Jim Meyering  <meyering@lucent.com>
39474
39475         * lib/rpmatch.c [HAVE_LIMITS_H]: Include limits.h before regex.h to
39476         avoid redefinition warning on some systems (HPUX).  Otherwise, regex.h
39477         is included first, then limits.h is included by locale.h by libintl.h.
39478         From John David Anglin.
39479
39480 2000-04-25  Jim Meyering  <meyering@lucent.com>
39481
39482         * lib/makepath.c (S_IRWXUGO): Define.
39483         (make_path): Always perform explicit chmod if MODE specifies any
39484         of the `special' permission bits.  Prompted by a bug report against
39485         install from Mate Wierdl and Joost van Baal.
39486
39487 2000-04-18  Jim Meyering  <meyering@lucent.com>
39488
39489         * m4/prereq.m4 (jm_PREREQ_GETPAGESIZE): New macro.
39490         (jm_PREREQ): Use it.
39491
39492 2000-04-18  Jim Meyering  <meyering@lucent.com>
39493
39494         * lib/README: New file.
39495
39496         * lib/getpagesize.h [!getpagesize && HAVE_OS_H && B_PAGE_SIZE]: Define
39497         getpagesize.  For BeOS.  Based on a patch from Bruno Haible.
39498
39499 2000-04-17  Jim Meyering  <meyering@lucent.com>
39500
39501         Get it right :-)
39502         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Emit the
39503         actual #define via AH_VERBATIM.  Don't need separate AC_DEFINE.
39504         Suggestion from Akim Demaille.
39505
39506 2000-04-17  Jim Meyering  <meyering@lucent.com>
39507
39508         * lib/strftime.c (my_strftime) [strftime]: Declare strftime here, since
39509         the definition of it to rpl_strftime also defined-away the system's
39510         declaration.
39511
39512 2000-04-15  Jim Meyering  <meyering@lucent.com>
39513
39514         Use `C' to denote so-called `contiguous' files, the same way
39515         that tar does.
39516         * lib/filemode.c (S_ISCTG) [!S_ISCTG && S_IFCTG]: Define.
39517         (ftypelet): Use S_ISCTG.
39518         From Michael Deutschmann.
39519
39520 2000-04-14  Jim Meyering  <meyering@lucent.com>
39521
39522         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use the one-arg
39523         form of AC_DEFINE.  Otherwise, the #ifndef in AH_VERBATIM gets
39524         clobbered.
39525
39526 2000-04-14  Jim Meyering  <meyering@lucent.com>
39527
39528         * lib/strftime.c (my_strftime) [#ifdef strftime]: Declare strftime.
39529
39530 2000-04-13  Jim Meyering  <meyering@lucent.com>
39531
39532         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use new
39533         AH_VERBATIM to insert required #ifndef into config.h.in.
39534         Suggestion from Akim Demaille.
39535
39536 2000-04-12  Jim Meyering  <meyering@lucent.com>
39537
39538         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Use AC_CHECK_HEADERS, not
39539         `AC_CHECK_HEADER' to check for locale.h.  Thanks to a report from
39540         Christian Krackowizer.
39541
39542         More code moved from ../configure.in into (jm_CHECK_ALL_TYPES).
39543         * m4/jm-macros.m4 (_GNU_SOURCE): Define.
39544         (AC_SYS_LARGEFILE): Require.
39545         (AM_C_PROTOTYPES): Require.
39546
39547 2000-04-08  Jim Meyering  <meyering@lucent.com>
39548
39549         * lib/Makefile.am (charset.alias): Use t-$@, not $@-t so the DOS 8.3
39550         names don't conflict.  Reported by Eli Zaretskii.
39551
39552 2000-04-07  Jim Meyering  <meyering@lucent.com>
39553
39554         * lib/putenv.c: Move inclusion of errno.h so it follows that of
39555         sys/types.h, to work around system header problems on AIX 3.2.5.
39556         From Bruno Haible.
39557
39558 2000-04-07  Bruno Haible  <haible@clisp.cons.org>
39559
39560         * lib/unicodeio.c (print_unicode_char): Avoid triggering Solaris iconv
39561         bug.  Deal with the different error behavior of Irix iconv.
39562
39563 2000-04-05  Paul Eggert  <eggert@twinsun.com>
39564
39565         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Don't use -n32 on
39566         IRIX if the installer said otherwise.
39567
39568 2000-04-05  Jim Meyering  <meyering@lucent.com>
39569
39570         Portability tweaks required for ultrix4.3.
39571         * m4/check-decl.m4 [!HAVE_UTMPX_H] (headers): Include <utmp.h>.
39572         (jm_CHECK_DECLS): Add getutent to the list of functions.
39573         (_jm_DECL_HEADERS): Add utmpx.h.
39574         From John David Anglin.
39575
39576         * m4/strftime.m4: Back out the 2000-04-02 change.
39577         Instead of that change, simply undefine putenv in the test program.
39578
39579 2000-04-05  Jim Meyering  <meyering@lucent.com>
39580
39581         Portability tweaks required for ultrix4.3.
39582         * lib/readutmp.h [HAVE_UTMPX_H && !HAVE_DECL_GETUTENT]: Declare
39583         getutent.
39584         * lib/readutmp.c: Include sys/types.h before sys/stat.h.
39585         * lib/canon-host.c: Declare strdup.
39586         * lib/path-concat.c: Likewise.
39587         From John David Anglin.
39588
39589 2000-04-04  Jim Meyering  <meyering@lucent.com>
39590
39591         Be more DOS 8.3-friendly.
39592         * lib/ref-add.sin: Renamed from ref-add.sed.in.
39593         * lib/ref-del.sin: Renamed from ref-del.sed.in.
39594         * lib/Makefile.am: Reflect renaming.
39595         Reported by Eli Zaretskii.
39596
39597         Use a temporary file name that won't clash with `charset.alias'
39598         in the DOS 8.3 name space.
39599         * lib/Makefile.am (charset_tmp): Define.
39600         (install-exec-local): Use $(charset_tmp) instead of $(charset_alias)-t.
39601         (uninstall-local): Likewise.
39602         Reported by Eli Zaretskii.
39603
39604 2000-04-03  Jim Meyering  <meyering@lucent.com>
39605
39606         * m4/gettext.m4: Fix typo in comment.
39607
39608         * m4/codeset.m4 (AC_CHECK_HEADERS): Add langinfo.h (moved here from
39609         textutils/configure.in).  Suggestion from Paul Eggert.
39610         (AC_CHECK_FUNCS): Add nl_langinfo.  (also from textutils/configure.in)
39611
39612 2000-04-02  Paul Eggert  <eggert@twinsun.com>
39613
39614         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Set TZ environment
39615         variable in the shell rather than using putenv, which isn't
39616         portable.  This avoids the configure-time inter-test dependency
39617         on the potentially-renamed putenv function.
39618
39619 2000-03-30  Paul Eggert  <eggert@twinsun.com>
39620
39621         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Include <sys/stat.h>
39622         before checking struct stat.st_blksize, so that
39623         HAVE_STRUCT_STAT_ST_BLKSIZE is defined correctly.
39624
39625 2000-03-29  Paul Eggert  <eggert@twinsun.com>
39626
39627         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Check for strftime,
39628         since strftime.c uses HAVE_STRFTIME to decide whether to use
39629         the underlying strftime.
39630
39631 2000-03-29  Paul Eggert  <eggert@twinsun.com>
39632
39633         * lib/time/strftime.c (my_strftime): Make sure we call the system
39634         strftime, not ourselves, when invoking the underlying strftime.
39635
39636 2000-03-24  Jim Meyering  <meyering@lucent.com>
39637
39638         * lib/Makefile.am (EXTRA_DIST): Add ref-add.sed.in and ref-del.sed.in.
39639         (charset_alias): Define.
39640         (install-exec-local): Factor out common code.
39641         (uninstall-local): Split lines longer than 80.
39642         (ref-add.sed, ref-del.sed): Remove rules... (do the following instead)
39643         (SUFFIXES): Define.
39644         (.sed.in.sed): New rule.  Don't redirect directly to $@.
39645         (CLEANFILES): Add ref-add.sed and ref-del.sed.
39646
39647 2000-03-19  Bruno Haible  <haible@clisp.cons.org>
39648
39649         * lib/config.charset: Output a line containing "Packages using this
39650         file".
39651         * lib/ref-add.sed.in, lib/ref-del.sed.in: New files.
39652         * lib/Makefile.am (install-exec-local, uninstall-local, ref-add.sed,
39653         ref-del.sed): New rules.
39654
39655 2000-03-17  Jim Meyering  <meyering@lucent.com>
39656
39657         * lib/unicodeio.c (<string.h>): Include only #if HAVE_STRING_H.
39658         Otherwise, include <strings.h>
39659
39660 2000-03-17  Bruno Haible  <haible@clisp.cons.org>
39661
39662         * lib/unicodeio.c (utf8_wctomb): New function.
39663         (print_unicode_char): Pass the Unicode character to iconv in UTF-8
39664         format instead of in UCS-4 with platform dependent endianness.
39665
39666 2000-03-10  Jim Meyering  <meyering@lucent.com>
39667
39668         * m4/lib-check.m4: Look for getspnam in -lgen, too.
39669         From Marco Franzen.
39670
39671 2000-03-07  Paul Eggert  <eggert@twinsun.com>
39672
39673         * lib/savedir.c (savedir): Work even if directory size is
39674         negative; this can happen with some screwy NFS configurations.
39675
39676 2000-03-06  Jim Meyering  <meyering@lucent.com>
39677
39678         * lib/localcharset.c (get_charset_aliases): Don't try to free file_name
39679         if it's NULL (because we ran out of memory).  From Bruno Haible.
39680
39681 2000-03-05  Jim Meyering  <meyering@lucent.com>
39682
39683         * lib/localcharset.c ("path-concat.h"): Include.
39684         (get_charset_aliases): Use path_concat instead of ANSI string
39685         concatenation.
39686
39687         * lib/unicodeio.h (PARAMS): Define.
39688         Use it to guard prototype.
39689
39690 2000-03-04  Jim Meyering  <meyering@lucent.com>
39691
39692         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require AC_C_VOLATILE,
39693         for lib/localcharset.c.
39694
39695 2000-03-04  Jim Meyering  <meyering@lucent.com>
39696
39697         * lib/Makefile.am (install-exec-local): Create $(libdir) before
39698         installing into it.
39699         (uninstall-local): Uncomment this rule so `make distcheck' works
39700         once again.
39701
39702         * lib/unicodeio.c (<errno.h>): Include it.
39703         (errno): Declare if not defined.
39704
39705         * lib/localcharset.c: Add Bruno's comment justifying use of volatile.
39706
39707         * lib/config.charset: New version, incorporating remarks from a linux
39708         i18n mailing list.  From Bruno Haible.
39709
39710 2000-03-04  Bruno Haible  <haible@clisp.cons.org>
39711
39712         * m4/codeset.m4: New file.
39713         * m4/iconv.m4: New file.
39714         * m4/jm-macros.m4 (jm_MACROS): Call jm_LANGINFO_CODESET and jm_ICONV.
39715
39716 2000-03-03  Jim Meyering  <meyering@lucent.com>
39717
39718         * m4/regex.m4: Make sure re_compile_pattern accepts patterns like `{1'.
39719
39720 2000-03-02  Jim Meyering  <meyering@lucent.com>
39721
39722         * m4/timespec.m4: Require AC_HEADER_TIME before the cache check so
39723         the messages come out on separate lines.
39724
39725         * m4/jm-glibc-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO): Use AC_CHECK_DECLS,
39726         rather than jm_CHECK_DECLARATIONS.
39727         * m4/decl.m4: Remove now-unused file.
39728
39729         * m4/check-decl.m4 (AC_CHECK_DECLS): Add getlogin, ttyname, and
39730         geteuid.
39731
39732 2000-03-02  Jim Meyering  <meyering@lucent.com>
39733
39734         * lib/Makefile.am (EXTRA_DIST): Add config.charset.
39735
39736 2000-03-01  Jim Meyering  <meyering@lucent.com>
39737
39738         * lib/localcharset.c: Guard some #includes with `#if HAVE_...'.
39739         * lib/unicodeio.c: Likewise.
39740
39741 2000-03-01  Bruno Haible  <haible@clisp.cons.org>
39742
39743         * lib/config.charset: New file.
39744         * lib/localcharset.c: New file.
39745         * lib/unicodeio.h, lib/unicodeio.c: New files.
39746         * lib/Makefile.am (DEFS): Add -DLIBDIR=...
39747         (libfetish_a_SOURCES): Add localcharset.c and unicodeio.c.
39748         (noinst_HEADERS): Add unicodeio.h.
39749         (all-local, install-exec-local, charset.alias): New targets.
39750
39751 2000-02-28  Paul Eggert  <eggert@twinsun.com>
39752
39753         * lib/quotearg.c (ALERT_CHAR): New macro.
39754         (quotearg_buffer_restyled): Use it.
39755
39756 2000-02-27  Jim Meyering  <meyering@lucent.com>
39757
39758         * m4/check-decl.m4: Add getenv to the list.
39759
39760 2000-02-27  Jim Meyering  <meyering@lucent.com>
39761
39762         * lib/strtoumax.c: Fix typo in decl of strtoul: s/long long/long/.
39763         Guard declaration of strtoull also with `&& HAVE_UNSIGNED_LONG_LONG'.
39764
39765         * lib/backupfile.c: Guard inclusion of stdlib.h with
39766         `#if HAVE_STDLIB_H', not `#if STDC_HEADERS'.
39767         Declare malloc if needed.
39768
39769         * lib/backupfile.c: Use `#if !HAVE_DECL...' instead of
39770         `#ifndef HAVE_DECL..'
39771         now that autoconf always defines the HAVE_DECL_ symbols.
39772         * lib/human.c: Likewise.
39773         * lib/same.c: Likewise.
39774         * lib/strtoumax.c: Likewise.
39775
39776         * lib/backupfile.c: Arrange for cpp to fail if the configure-time
39777         declaration check was not run.
39778         * lib/hash.c: Likewise.
39779         * lib/human.c: Likewise.
39780         * lib/same.c: Likewise.
39781         * lib/strtoumax.c: Likewise.
39782
39783         * lib/userspec.c (parse_user_spec): If there is no `:' but there is a
39784         `.', then first look up the entire `.'-containing string as a login
39785         name.
39786
39787 2000-02-23  Jim Meyering  <meyering@lucent.com>
39788
39789         * m4/check-decl.m4: Now that we have the new AC_CHECK_DECLS, use it
39790         in place of my hack.
39791
39792 2000-02-18  Paul Eggert  <eggert@twinsun.com>
39793
39794         * lib/getdate.y: Handle two-digit years with leading zeros correctly.
39795         (textint): New typedef.
39796         (parser_control): Member year changed from int to textint.
39797         All uses changed.
39798         (YYSTYPE): Removed; replaced by %union with int and textint members.
39799         (tDAY, tDAY_UNIT, tDAYZONE, tHOUR_UNIT, tID, tLOCAL_ZONE, tMERIDIAN,
39800         tMINUTE_UNIT, tMONTH, tMONTH_UNIT tSEC_UNIT, tSNUMBER, tUNUMBER,
39801         tYEAR_UNIT, tZONE, o_merid): Now of type <intval>.
39802         (tSNUMBER, tUNUMBER): Now of type <textintval>.
39803         (date, number, to_year): Use width of number in digits, not its value,
39804         to determine whether it's a 2-digit year, or a 2-digit time.
39805         (yylex): Store number of digits of numeric tokens.
39806         Reported by John Kendall.
39807
39808         (parser_control): Changed from struct parser_control to typedef (for
39809         consistency).  All uses changed.
39810
39811         (tID): Removed; not used.
39812         (yylex): Return '?' for unknown identifiers, rather than (unused) tID.
39813
39814 2000-02-14  Paul Eggert  <eggert@twinsun.com>
39815
39816         * lib/getpagesize.h (getpagesize): Port to VMS for Alpha;
39817         adapted from changes to grep getpagesize.h by Martin P.J. Zinser.
39818
39819 2000-02-12  Jim Meyering  <meyering@lucent.com>
39820
39821         * lib/userspec.c (ISDIGIT): Define it.
39822         (isdigit): Remove definition.
39823         (is_number): Use ISDIGIT, not isdigit.
39824         <libintl.h>: Include.
39825         (_ and N_): Define.
39826         (parse_user_spec): Mark translatable strings.
39827
39828 2000-02-10  Jim Meyering  <meyering@lucent.com>
39829
39830         With these changes, nanosleep.[ch] are finally enough like the other
39831         lib/* replacement files to compile on a few more losing systems.
39832
39833         * lib/nanosleep.h: Don't include config.h.
39834         Remove prototype from declaration of nanosleep.
39835         (PARAMS): Remove now-unneeded definition.
39836         * lib/nanosleep.c: #undef nanosleep.
39837         (rpl_nanosleep): Rename from nanosleep.
39838
39839 2000-02-10  Jim Meyering  <meyering@lucent.com>
39840
39841         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Rename replacement function from
39842         gnu_nanosleep to rpl_nanosleep.
39843
39844 2000-02-09  Jim Meyering  <meyering@lucent.com>
39845
39846         * m4/lib-check.m4 (jm_LIB_CHECK): Fix typo: check for sp_pwdp in
39847         struct spwd, rather than in struct passwd.  Reported by Gaël Quéri.
39848
39849 2000-02-08  Akim Demaille  <akim@epita.fr>
39850
39851         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Quote square brackets with
39852         `[' and `]' and remove uses of `changequote'.
39853         (AC_SYS_LARGEFILE_MACRO_VALUE): Likewise.
39854         (AC_SYS_LARGEFILE): Likewise.
39855         * m4/gettext.m4 (AM_GNU_GETTEXT): Likewise.
39856         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Remove now-unnecessary use
39857         of changequote.
39858         * m4/regex.m4 (jm_INCLUDED_REGEX): Likewise.
39859         * m4/readdir.m4 (jm_FUNC_READDIR): Likewise
39860         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Likewise, and add `int' for main.
39861         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Likewise.
39862
39863 2000-02-05  Jim Meyering  <meyering@lucent.com>
39864
39865         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require most macros.
39866         Remove explicit use of AC_HEADER_TIME.  It is required by
39867         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Using AC_HEADER_TIME and
39868         `AC_REQUIRE'ing jm_CHECK_TYPE_STRUCT_TIMESPEC provoked a but
39869         in autoconf whereby the expansion of the latter ended up preceding
39870         the expansion of its prerequisite, AC_HEADER_TIME.
39871         Reported by Volker Borchert.
39872
39873 2000-02-03  Jim Meyering  <meyering@lucent.com>
39874
39875         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for utmpxname.
39876
39877 2000-02-03  Jim Meyering  <meyering@lucent.com>
39878
39879         * lib/readutmp.c (read_utmp): Guard with `#ifdef UTMP_NAME_FUNCTION',
39880         rather than with `#if HAVE_UTMPNAME'.
39881
39882 2000-02-02  Jim Meyering  <meyering@lucent.com>
39883
39884         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Fix typo that resulted in no
39885         definition of HAVE_PATHCONF: s/AC_CHECK_FUNC/AC_CHECK_FUNCS/.
39886         Reported by Eli Zaretskii.
39887
39888 2000-02-01  Jim Meyering  <meyering@lucent.com>
39889
39890         * lib/readutmp.h (UT_USER): Add parens.  From Andreas Schwab.
39891
39892 2000-01-31  Jim Meyering  <meyering@lucent.com>
39893
39894         * m4/check-decl.m4 (jm_CHECK_DECLS): Add nanosleep to the list of
39895         functions.  Add the time.h and sys/time.h headers along with the
39896         AC_REQUIRE'ment of AC_HEADER_TIME.
39897
39898 2000-01-31  Jim Meyering  <meyering@lucent.com>
39899
39900         * lib/nanosleep.h (nanosleep): Guard declaration with
39901         `#if ! HAVE_DECL_NANOSLEEP'.
39902         Without this, OFS gets a redeclaration error for rpl_nanosleep, due to
39903         the declaration in that vendor's sys/timers.h.
39904         Reported by Christian Krackowizer.
39905
39906         * lib/quotearg.c (ISASCII): Add #undef and move definition to follow
39907         inclusion of wctype.h to work around Solaris 2.6 namespace pollution.
39908         (ISPRINT): Likewise.
39909         Reported by Tom Tromey.
39910
39911 2000-01-30  Jim Meyering  <meyering@lucent.com>
39912
39913         * m4/lib-check.m4: Clean up some kludgy old shadow password tests.
39914
39915         * m4/prereq.m4 (utmp_includes): Define.
39916         Check for ut_user and ut_name members in both struct utmpx
39917         and struct utmp.
39918
39919 2000-01-30  Jim Meyering  <meyering@lucent.com>
39920
39921         * lib/readutmp.c (extract_trimmed_name): Use UT_USER instead of
39922         hard-coding uses of ->ut_name.  The latter doesn't work with new Linux
39923         header files where only utmpx.ut_user is declared.
39924
39925         * lib/readutmp.h (UT_USER): Define.
39926
39927 2000-01-29  Jim Meyering  <meyering@lucent.com>
39928
39929         * m4/lib-check.m4: New file containing library-related checks from
39930         fileutils and sh-utils (textutils had none).
39931
39932 2000-01-28  Jim Meyering  <meyering@lucent.com>
39933
39934         * m4/perl.m4: Change format of warning message to look more like that
39935         from the missing script.  Suggestion from François Pinard.
39936
39937 2000-01-25  Jim Meyering  <meyering@lucent.com>
39938
39939         * m4/timespec.m4: Require AC_HEADER_TIME, and include sys/time.h as
39940         well as time.h in the compile check.
39941         * m4/nanosleep.m4: Require AC_HEADER_TIME rather than simply using it.
39942         Fix typo in cross-compiling case: s/yes/no/.
39943
39944 2000-01-23  Jim Meyering  <meyering@lucent.com>
39945
39946         * m4/jm-macros.m4: Move df-related tests here from
39947         fileutils/configure.in
39948
39949         * m4/ls-mntd-fs.m4: s/list_mounted_fs/ac_list_mounted_fs/
39950         (jm_LIST_MOUNTED_FILESYSTEMS): Take two parameters.
39951
39952         * m4/fsusage.m4: New file.  Extracted from fileutils/configure.in.
39953         s/space/ac_fsusage_space/.
39954         (jm_FILE_SYSTEM_USAGE): Take two parameters.
39955
39956         * m4/ftruncate.m4: New file (derived from part of
39957         fileutils/configure.in).
39958         * m4/jm-macros.m4 (jm_FUNC_FTRUNCATE): AC_REQUIRE it.
39959         (jm_CHECK_ALL_TYPES): Require AC_HEADER_MAJOR and AC_HEADER_DIRENT.
39960
39961         * m4/jm-macros.m4 (OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, MAN):
39962         AC_SUBST these here, rather than just in sh-util/configure.in, so
39963         that the now-shared-by-fileutils-and-textutils lib/Makefile.am are
39964         all the same.
39965         (AM_FUNC_OBSTACK): Add (from fileutils/configure.in).
39966         (AC_CHECK_FUNCS): Merge all checks from fileutils, textutils, sh-utils.
39967         (AM_FUNC_STRTOD): Added (from textutils', sh-utils' configure.in).
39968         (AC_SUBST(POW_LIBM)): Likewise.
39969         (AC_SUBST(DF_PROG)): Moved from fileutils/configure.in.
39970
39971 2000-01-23  Jim Meyering  <meyering@lucent.com>
39972
39973         * lib/Makefile.am (libfetish_a_SOURCES): Remove explicit mention of
39974         obstack.c.
39975
39976 2000-01-22  Jim Meyering  <meyering@lucent.com>
39977
39978         * m4/jm-macros.m4: Call AC_PROG_CC_STDC just before AC_C_CONST.
39979
39980         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Add wctype.h.
39981
39982         * m4/jm-macros.m4 (AC_CHECK_HEADERS): Add checks from fileutils'
39983         configure.in
39984         (AC_CHECK_HEADERS): Likewise for sh-utils.
39985         (AC_CHECK_HEADERS): Likewise for textutils.
39986         Merge the three lists of headers.
39987
39988         * m4/prereq.m4 (jm_PREREQ_ADDEXT): New macro.  Parts moved here
39989         from fileutils' configure.in.
39990
39991         * m4/decl.m4: Remove kludgy `test -z $ac_...AC_CHECK_HEADERS(...)'
39992         code. Moved tests into their own function (_jm_DECL_HEADERS) in
39993         check-decl.m4.
39994
39995         * m4/check-decl.m4: Use #if rather than #ifdef.
39996         Add HAVE_DECL_STRTOUL and HAVE_DECL_STRTOULL.
39997         (jm_CHECK_DECLARATIONS): Add strtoul strtoull.
39998         (_jm_DECL_HEADERS): Define new function.
39999         (jm_CHECK_DECLARATIONS): Require it.
40000
40001 2000-01-22  Jim Meyering  <meyering@lucent.com>
40002
40003         * lib/strtoumax.c: [! HAVE_DECL_STRTOUL]: Declare strtoul.
40004         [! HAVE_DECL_STRTOULL]: Declare strtoull.
40005         Required for some AIX systems.  Reported by Christian Krackowizer.
40006         [TESTING] (main): New function.
40007
40008         1997-10-17  Eli Zaretskii  <eliz@is.elta.co.il>
40009         * lib/dirname.c (dir_name): Support for DOS-style file names with drive
40010         letters.
40011
40012         * lib/quotearg.c [HAVE_WCTYPE_H]: Include <wctype.h> for decl of
40013         iswprint.
40014
40015         * lib/strverscmp.c (ISDIGIT): Define.
40016         (strverscmp): Use ISDIGIT, not isdigit.
40017
40018 2000-01-19  Jim Meyering  <meyering@lucent.com>
40019
40020         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Include <sys/time.h>, too.
40021         Use AC_HEADER_TIME.  Volker Borchert reported that OpenBSD-2.3/sparc
40022         defines `struct timespec' in <sys/time.h>
40023
40024         * m4/c-bs-a.m4: Remove uses of changequote altogether.
40025         Thanks to Akim for explaining.
40026
40027 2000-01-17  Paul Eggert  <eggert@twinsun.com>
40028
40029         * lib/nanosleep.c (nanosleep):
40030         Don't use SA_INTERRUPT to decide whether to call sigaction, as
40031         POSIX.1 doesn't require SA_INTERRUPT and some systems
40032         (e.g. Solaris 7) don't define it.  Use SA_NOCLDSTOP instead;
40033         it's been part of POSIX.1 since day 1 (in 1988).
40034
40035 2000-01-17  Jim Meyering  <meyering@lucent.com>
40036
40037         * lib/interlock: Remove unused file.  Reported by François Pinard.
40038
40039 2000-01-16  Paul Eggert  <eggert@twinsun.com>
40040
40041         * lib/quotearg.c (quotearg_buffer_restyled): Do not quote
40042         alert, backslash, formfeed, and vertical tab unnecessarily in
40043         shell quoting style.
40044
40045 2000-01-16  Jim Meyering  <meyering@lucent.com>
40046
40047         * m4/jm-macros.m4: Require jm_FUNC_GROUP_MEMBER, jm_FUNC_PUTENV,
40048         AM_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, jm_FUNC_MKTIME,
40049         jm_FUNC_GETGROUPS AC_FUNC_VPRINTF, AC_FUNC_ALLOCA,
40050         AM_FUNC_GETLOADAVG, and jm_SYS_PROC_UPTIME.
40051
40052 2000-01-16  Jim Meyering  <meyering@lucent.com>
40053
40054         * m4/c-bs-a.m4: Use `changequote(<<,>>)', rather than `changequote(, )'
40055         because the latter didn't work.
40056
40057 2000-01-15  Jim Meyering  <meyering@lucent.com>
40058
40059         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add gethostname and getusershell.
40060         (AC_REPLACE_FUNCS): Add memcpy and memset.
40061         Add these, too: stime strcspn stpcpy strstr strtol strtoul.
40062         Add strpbrk.
40063         Add these: euidaccess memcmp mkdir rmdir rpmatch strndup strverscmp.
40064
40065 2000-01-12  Jim Meyering  <meyering@lucent.com>
40066
40067         * m4/prereq.m4 (jm_PREREQ_CANON_HOST): New macro.
40068         (jm_PREREQ): Use it.
40069         (jm_PREREQ_READUTMP): New macro.
40070         (jm_PREREQ): Use it.
40071
40072 2000-01-11  Paul Eggert  <eggert@twinsun.com>
40073
40074         Quote multibyte characters correctly.
40075         * m4/c-bs-a.m4: New file.
40076         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): New macro.
40077         (jm_PREREQ): Use it.
40078
40079 2000-01-11  Paul Eggert  <eggert@twinsun.com>
40080
40081         * m4/uintmax_t.m4: Port to autoconf 2.13.
40082
40083 2000-01-08  Jim Meyering  <meyering@ascend.com>
40084
40085         * m4/strerror_r.m4 (jm_FUNC_STRERROR_R): New file/macro.
40086         * m4/jm-macros.m4 (jm_FUNC_STRERROR_R): Require it.
40087
40088 2000-01-04  Jim Meyering  <meyering@ascend.com>
40089
40090         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename from
40091         jm_STRUCT_DIRENT_D_TYPE.
40092         * m4/d-ino.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_INO): Rename from
40093         jm_STRUCT_DIRENT_D_INO.
40094         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Rename from
40095         jm_STRUCT_UTIMBUF.
40096         * m4/jm-macros.m4: Reflect s/jm_STRUCT_/jm_CHECK_TYPE_STRUCT_/
40097         renamings.
40098         * m4/utime.m4: Likewise.
40099
40100         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): New file, macro.
40101         * m4/jm-macros.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): Require it.
40102
40103 2000-01-03  Paul Eggert  <eggert@twinsun.com>
40104
40105         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Search for nanosleep in -lrt
40106         (for Solaris 7) and in -lposix4 (for Solaris 2.5.1).
40107
40108 2000-01-02  Jim Meyering  <meyering@ascend.com>
40109
40110         * m4/search-libs.m4: Escape `$' in $3 of dnl comment.  I no longer
40111         remember if this is necessary.
40112
40113 1999-12-26  Jim Meyering  <meyering@ascend.com>
40114
40115         * m4/jm-macros.m4: Use it here.
40116         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): New file/macro.
40117
40118 1999-12-23  Jim Meyering  <meyering@ascend.com>
40119
40120         * m4/jm-macros.m4: Check for clock_gettime (moved from
40121         fileutils/configure.in)
40122         Check for gettimeofday.
40123
40124 1999-12-20  Jim Meyering  <meyering@ascend.com>
40125
40126         * m4/strftime.m4: Remove kludge, now that I'm using the fixed
40127         autoconf-2.14a-1999-12-20.
40128
40129 1999-12-19  Jim Meyering  <meyering@ascend.com>
40130
40131         * m4/lstat-slash.m4: New file.
40132         * m4/jm-macros.m4: Use the new macro:
40133         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
40134
40135 1999-12-07  Jim Meyering  <meyering@ascend.com>
40136
40137         * m4/perl.m4: Require that File::Compare be available, too.
40138         Too many systems seem to lack it.
40139
40140         * m4/strftime.m4: Add checks for most of the cpp macros tested in
40141         GNU's strftime.c.  Prompted by a patch from Paul Eggert.
40142
40143 1999-11-18  Paul Eggert  <eggert@twinsun.com>
40144
40145         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around a
40146         problem with the QNX 4.25 shell, which doesn't propagate exit
40147         status of failed commands inside shell assignments.
40148
40149 1999-11-17  Jim Meyering  <meyering@ascend.com>
40150
40151         * m4/gettext.m4: Use new AC_CONFIG_LINKS in place of AC_LINK_FILES.
40152
40153 1999-11-07  Jim Meyering  <meyering@ascend.com>
40154
40155         * m4/getloadavg.m4: Add `, 1, [FIXME]' to each use of AC_DEFINE.
40156
40157 1999-11-06  Jim Meyering  <meyering@ascend.com>
40158
40159         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): New file/macro.
40160         * m4/jm-macros.m4 (jm_MACROS): Use it here.
40161
40162 1999-11-05  Jim Meyering  <meyering@ascend.com>
40163
40164         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Move some tests from
40165         configure.in of textutils, fileutils, and sh-utils into this one
40166         (shared between those packages) file.
40167         Use `AC_CHECK_MEMBERS((struct stat.st_blksize))' instead of deprecated
40168         AC_STRUCT_ST_BLKSIZE.
40169
40170 1999-11-03  Jim Meyering  <meyering@ascend.com>
40171
40172         * m4/ssize_t.m4: Remove file.  No longer needed since the new version
40173         of AC_CHECK_TYPE checks includes unistd.h.
40174         * m4/jm-macros.m4: Use straight `AC_CHECK_TYPE(ssize_t, int)'.
40175         Suggestion from Akim Demaille.
40176
40177 1999-10-30  Jim Meyering  <meyering@ascend.com>
40178
40179         * m4/uintmax_t.m4: Require 2.14a.  Remove backslash before backtick in
40180         m4-quoted string.
40181         * m4/ls-mntd-fs.m4: Likewise.
40182         * m4/jm-macros.m4: Likewise.  Also, use AC_TYPE_SSIZE_T instead
40183         * m4/jm-winsz1.m4: Likewise.
40184
40185         * m4/const.m4: Remove file, since the fix made it into the experimental
40186         version of autoconf.
40187         * m4/mktime.m4: Likewise.
40188
40189         * m4/check-type.m4: Remove file, now that the latest version of
40190         AC_CHECK_TYPE takes a third arg to specify additional #includes.
40191
40192         * m4/ssize_t.m4: New file, requires experimental version of autoconf.
40193         * m4/jm-macros.m4: Use new AC_TYPE_SSIZE_T instead of my hacked
40194         AC_CHECK_TYPE.
40195
40196 1999-10-04  Jim Meyering  <meyering@ascend.com>
40197
40198         * m4/jm-macros.m4: Don't require autoconf-2.14.1.
40199
40200 1999-09-22  Paul Eggert  <eggert@twinsun.com>
40201
40202         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around GCC
40203         2.95.1 bug with HP-UX 10.20.
40204
40205 1999-09-17  Jim Meyering  <meyering@ascend.com>
40206
40207         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add strdup.
40208         Paul Nevai reported a link failure on a NeXT CUBE with NeXTSTEP 3.3
40209         due to missing strdup (against sh-utils-2.0).
40210
40211 1999-08-29  Jim Meyering  <meyering@ascend.com>
40212
40213         * m4/jm-macros.m4: Require jm_BISON.
40214         * m4/bison.m4: New file.
40215
40216 1999-08-17  Paul Eggert  <eggert@twinsun.com>
40217
40218         * m4/largefile.m4 (AC_SYS_LARGEFILE): Fix typo: missing comma
40219         in value for _FILE_OFFSET_BITS, which broke ports to HP-UX 10.20.
40220
40221 1999-08-05  Jim Meyering  <meyering@ascend.com>
40222
40223         * m4/getline.m4: Rename test file from conftestdata to conftest.data
40224         to avoid conflicts with `conftest' on 8+3 filesystems.
40225         Suggestion from Eli Zaretskii.
40226
40227 1999-08-04  Jim Meyering  <meyering@ascend.com>
40228
40229         * m4/jm-macros.m4: Move a 4-line block of code from the configure.in of
40230         fileutils and sh-utils (textutils's getline test was inadequate).
40231         (AM_FUNC_GETLINE): Run this test.
40232         (AC_CHECK_FUNCS): Check for getdelim.
40233         Reported by Bob Proulx.
40234
40235 1999-08-02  Jim Meyering  <meyering@ascend.com>
40236
40237         * m4/jm-macros.m4: Add a comment.
40238
40239 1999-08-01  Paul Eggert  <eggert@twinsun.com>
40240
40241         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check whether
40242         <inttypes.h> defines strtoumax as a macro (and not as a
40243         function).
40244
40245 1999-08-01  Paul Eggert  <eggert@twinsun.com>
40246
40247         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Make sure
40248         that we can shift, multiply and divide unsigned long long
40249         values; Ultrix cc can't do it.
40250
40251 1999-08-01  Paul Eggert  <eggert@twinsun.com>
40252
40253         * m4/mktime.m4: New file, which is a preview of what should appear
40254         in the next public autoconf release.
40255
40256 1999-08-01  Paul Eggert  <eggert@twinsun.com>
40257
40258         * m4/lfs.m4: Remove this file.
40259         * m4/largefile.m4: New file.  It contains the old contents of
40260         lfs.m4, except that all names with prefix AC_LFS have been
40261         changed to use the prefix AC_SYS_LARGEFILE instead, to be
40262         compatible with future autoconf versions.  Also, some minor m4
40263         quoting problems have been fixed.
40264
40265 1999-08-01  Paul Eggert  <eggert@twinsun.com>
40266
40267         * m4/gettext.m4 (AM_WITH_NLS): Remove unnecessary lines.
40268         Fix typo: $nls_cv_header_intl was misspelled as $nsl_cv_header_intl.
40269         (AM_GNU_GETTEXT): Fix problem with brackets and m4 quoting,
40270         and simplify the shell code.
40271
40272 1999-08-01  Jim Meyering  <meyering@ascend.com>
40273
40274         * m4/mktime.m4 (AC_FUNC_MKTIME): Undefine to avoid syntax errors from
40275         m4.
40276
40277 1999-07-20  Jim Meyering  <meyering@ascend.com>
40278
40279         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memmove.
40280
40281 1999-07-15  Jim Meyering  <meyering@ascend.com>
40282
40283         * m4/jm-macros.m4 (AC_CHECK_FUNCS): Check for getpagesize.
40284
40285 1999-05-22  Jim Meyering  <meyering@ascend.com>
40286
40287         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memchr.
40288
40289 1999-05-20  Jim Meyering  <meyering@ascend.com>
40290
40291         * m4/search-libs.m4 [AC_SEARCH_LIBS]: Quote name in undefine.
40292         Add a colon after each `then' in case $4 is empty.
40293
40294 1999-05-16  Jim Meyering  <meyering@ascend.com>
40295
40296         * m4/search-libs.m4: New file to override autoconf's AC_SEARCH_LIBS.
40297
40298 1999-05-10  Jim Meyering  <meyering@ascend.com>
40299
40300         * m4/jm-mktime.m4: Reflect renaming: AM_FUNC_MKTIME -> AC_FUNC_MKTIME.
40301
40302         * m4/jm-macros.m4: Require 2.14.1, since we use newly-renamed
40303         AC_FUNC_MKTIME.
40304
40305 1999-05-10  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
40306
40307         * m4/jm-mktime.m4, putenv.m4: Fix typos in config.h comments.
40308
40309 1999-05-04  Paul Eggert  <eggert@twinsun.com>
40310
40311         * m4/lfs.m4 (AC_LFS): -n32, -o32, and -n64 should be in CFLAGS,
40312         not CPPFLAGS, so that linking works correctly in IRIX.
40313
40314 1999-04-30  Paul Eggert  <eggert@twinsun.com>
40315
40316         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add dup2.
40317
40318 1999-04-20  Paul Eggert  <eggert@twinsun.com>
40319
40320         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Move unsigned long
40321         long check into new jm_AC_TYPE_UNSIGNED_LONG_LONG macro.
40322         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require
40323         jm_AC_TYPE_UNSIGNED_LONG_LONG.
40324         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): New file/macro.
40325
40326         * m4/lfs.m4: Port to AIX and HP-UX.  Support cross-compilation.
40327
40328 1999-04-20  Jim Meyering  <meyering@ascend.com>
40329
40330         * m4/xstrtoumax.m4: Require jm_AC_TYPE_UNSIGNED_LONG_LONG.
40331         AC_REPLACE xstroull if necessary.  From Paul Eggert.
40332         (AC_CHECK_FUNCS): Remove strtoull, strtoumax, strtouq.
40333
40334 1999-04-18  Jim Meyering  <meyering@ascend.com>
40335
40336         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): New file/macro.
40337         * m4/jm-macros.m4: Use it.
40338
40339 1999-04-06  Jim Meyering  <meyering@ascend.com>
40340
40341         * m4/strftime.m4: Remove test for %f.
40342
40343 1999-03-29  Jim Meyering  <meyering@ascend.com>
40344
40345         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): New macro, contains the
40346         superset of the AC_TYPE_* checks in the textutils, fileutils,
40347         and sh-utils, plus AC_TYPE_PID_T.  Paul Eggert suggested adding
40348         AC_TYPE_PID_T.
40349
40350 1999-03-28  Jim Meyering  <meyering@ascend.com>
40351
40352         * m4/jm-macros.m4: Define GNU_PACKAGE here.
40353         Be sure to AC_SUBST it, once again, so that @GNU_PACKAGE@ is
40354         replaced e.g., in the *.sh files of the sh-utils.
40355
40356 1999-03-20  Jim Meyering  <meyering@ascend.com>
40357
40358         * m4/jm-macros.m4: s/jm_WITH_REGEX/jm_INCLUDED_REGEX/.
40359         * m4/regex.m4 (jm_INCLUDED_REGEX): Rename from jm_WITH_REGEX.
40360         Don't depend on AM_GLIBC.  Suggestions from Alain Magloire.
40361
40362 1999-03-19  Jim Meyering  <meyering@ascend.com>
40363
40364         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): New macro.
40365
40366 1999-03-12  Jim Meyering  <meyering@ascend.com>
40367
40368         * m4/jm-macros.m4: Use AC_FUNC_SETVBUF_REVERSED.
40369
40370 1999-03-07  Jim Meyering  <meyering@ascend.com>
40371
40372         * m4/jm-glibc-io.m4: Use only those *_unlocked macros that are
40373         declared.
40374
40375 1999-02-17  Jim Meyering  <meyering@ascend.com>
40376
40377         * m4/gettext.m4 (AM_GNU_GETTEXT): Do `changequote' around use of
40378         brackets in macro definition.  From Eli Zaretskii and Alain Magloire.
40379
40380 1999-02-07  Jim Meyering  <meyering@ascend.com>
40381
40382         * m4/group-member.m4: New file -- extracted from sh-utils'
40383         configure.in.
40384
40385         1999-02-05  Eli Zaretskii  <eliz@is.elta.co.il>
40386         * m4/gettext.m4: Support DOS-style d:/foo/bar absolute file names.
40387
40388 1999-02-06  Jim Meyering  <meyering@ascend.com>
40389
40390         * m4/chown.m4: Use `AC_SUBST(LIBOBJS)' since we set LIBOBJS.
40391         * m4/fnmatch.m4: Likewise.
40392         * m4/getgroups.m4: Likewise.
40393         * m4/lstat.m4: Likewise.
40394         * m4/malloc.m4: Likewise.
40395         * m4/putenv.m4: Likewise.
40396         * m4/realloc.m4: Likewise.
40397         * m4/regex.m4: Likewise.
40398         * m4/stat.m4: Likewise.
40399         * m4/strftime.m4: Likewise.
40400         Suggestion from Alain Magloire.
40401
40402         * m4/chown.m4: Use `.$ac_objext', not `.o'.
40403         * m4/fnmatch.m4: Likewise.
40404         * m4/getgroups.m4: Likewise.
40405         * m4/getline.m4: Likewise.
40406         * m4/lstat.m4: Likewise.
40407         * m4/malloc.m4: Likewise.
40408         * m4/memcmp.m4: Likewise.
40409         * m4/putenv.m4: Likewise.
40410         * m4/realloc.m4: Likewise.
40411         * m4/regex.m4: Likewise.
40412         * m4/stat.m4: Likewise.
40413         * m4/strftime.m4: Likewise.
40414         Suggestion from Alain Magloire.
40415
40416         * m4/jm-macros.m4: Actually invoke jm_WITH_REGEX now that it requires
40417         an argument.
40418
40419         * m4/regex.m4: Add a run-time Test for proper operation of
40420         re_compile_pattern.
40421
40422 1999-01-31  Jim Meyering  <meyering@ascend.com>
40423
40424         * m4/getloadavg.m4: Check for locale.h and the function, setlocale.
40425
40426 1999-01-30  Jim Meyering  <meyering@ascend.com>
40427
40428         * m4/check-type.m4: Use 3-arg form of AC_DEFINE.
40429
40430         * m4/jm-mktime.m4: Make this a wrapper around the official
40431         AM_FUNC_MKTIME rather than my private copy, now that the official one
40432         is up to date.
40433         * m4/mktime.m4: Remove file.
40434
40435         * m4/getloadavg.m4: Use 3-arg form of AC_DEFINE.
40436         * m4/uptime.m4: Likewise.
40437         * m4/uintmax_t.m4: Likewise.
40438
40439 1999-01-28  Jim Meyering  <meyering@ascend.com>
40440
40441         * m4/jm-macros.m4: Use jm_AFS.
40442         * m4/afs.m4: New file (from fileutils' configure.in).
40443
40444         * m4/assert.m4: Use the 3-argument forms of AC_DEFINE* macros.
40445         * m4/chown.m4: Likewise.
40446         * m4/d-ino.m4: Likewise.
40447         * m4/d-type.m4: Likewise.
40448         * m4/fnmatch.m4: Likewise.
40449         * m4/getgroups.m4: Likewise.
40450         * m4/gettext.m4: Likewise.
40451         * m4/jm-mktime.m4: Likewise.
40452         * m4/jm-winsz2.m4: Likewise.
40453         * m4/lcmessage.m4: Likewise.
40454         * m4/ls-mntd-fs.m4: Likewise.
40455         * m4/malloc.m4: Likewise.
40456         * m4/memcmp.m4: Likewise.
40457         * m4/putenv.m4: Likewise.
40458         * m4/realloc.m4: Likewise.
40459         * m4/st_mtim.m4: Likewise.
40460         * m4/strftime.m4: Likewise.
40461
40462 1999-01-16  Jim Meyering  <meyering@ascend.com>
40463
40464         * m4/jm-macros.m4 (ARGMATCH_DIE): Define.
40465         (ARGMATCH_DIE_DECL): Define.
40466
40467 1999-01-12  Jim Meyering  <meyering@ascend.com>
40468
40469         * m4/Makefile.am.in: Rewrite to avoid using fmt.
40470         Reported by Lars Hecking.
40471
40472 1999-01-10  Jim Meyering  <meyering@ascend.com>
40473
40474         * m4/fstypename.m4: Use the new 3-arg form of AC_DEFINE instead of my
40475         gross kludge.
40476         * m4/inttypes_h.m4: Likewise.
40477         * m4/lstat.m4: Likewise.
40478         * m4/malloc.m4: Likewise.
40479         * m4/readdir.m4: Likewise.
40480         * m4/realloc.m4: Likewise.
40481         * m4/st_dm_mode.m4: Likewise.
40482         * m4/stat.m4: Likewise.
40483         * m4/utimbuf.m4: Likewise.
40484         * m4/utimes.m4: Likewise.
40485
40486         * m4/check-decl.m4: Use the new 3-arg form of AC_DEFINE instead of the
40487         AC_CHECK_FUNCS hack.  Now, it's still a hack, but at least the
40488         comments in config.h.in are meaningful.
40489
40490         * m4/jm-macros.m4: Require autoconf-2.13 here.
40491
40492         * m4/regex.m4: By default, don't use the included regex.c on systems
40493         with glibc 2.  Suggestion from Uli Drepper.
40494
40495 1999-01-02  Jim Meyering  <meyering@ascend.com>
40496
40497         * m4/jm-macros.m4: Replace strcasecmp and strncasecmp.
40498
40499 1998-12-18  Jim Meyering  <meyering@ascend.com>
40500
40501         * m4/Makefile.am.in (Makefile.am): Simplify rule.
40502         Based on a suggestion from Lars Hecking.
40503
40504 1998-11-16  Paul Eggert  <eggert@twinsun.com>
40505
40506         * m4/lfs.m4 (AC_LFS): Add support for HP-UX 10.20 and HP-UX 11.
40507
40508 1998-11-16  Jim Meyering  <meyering@ascend.com>
40509
40510         * m4/lfs.m4: Double-quote the `uname...` expression.
40511
40512 1998-11-14  Jim Meyering  <meyering@ascend.com>
40513
40514         * m4/lstat.m4: Correct comment.  POSIX does not permit it to succeed.
40515         * m4/stat.m4: Likewise.
40516
40517 1998-11-03  Jim Meyering  <meyering@ascend.com>
40518
40519         * m4/stat.m4: Rewrite to set HAVE_STAT_EMPTY_STRING_BUG.
40520         * m4/lstat.m4: Rewrite to set HAVE_LSTAT_EMPTY_STRING_BUG.
40521
40522 1998-10-18  Jim Meyering  <meyering@ascend.com>
40523
40524         * m4/check-decl.m4 (jm_CHECK_DECL_LOCALTIME_R): Remove macro.
40525
40526 1998-10-17  Jim Meyering  <meyering@ascend.com>
40527
40528         * m4/decl.m4 (jm_CHECK_DECLARATION): Don't hard-code which headers to
40529         include, though we still hard-code the `require'-like AC_CHECK_HEADERS
40530         calls for those previously hard-coded headers.  Instead, take a new
40531         parameter.
40532         (jm_CHECK_DECLARATIONS): Reflect interface change.
40533         * m4/check-decl.m4 (jm_CHECK_DECLS): Likewise.
40534         (jm_CHECK_DECL_LOCALTIME_R): New macro.
40535
40536         * m4/mktime.m4: Test for spring-forward gap before long-running test.
40537
40538 1998-10-14  Jim Meyering  <meyering@ascend.com>
40539
40540         * m4/mktime.m4: Use the more portable "TZ=PST8PDT,M4.1.0,M10.5.0"
40541         instead of "TZ=America/Vancouver".  From Paul Eggert.
40542
40543 1998-10-11  Jim Meyering  <meyering@ascend.com>
40544
40545         * m4/mktime.m4 (jm_AM_FUNC_MKTIME): New file and macro.
40546         This adds a test for a recently added compatibility fix for mktime.c.
40547         * m4/jm-mktime.m4: Require jm_AM_FUNC_MKTIME, not AM_FUNC_MKTIME.
40548
40549 1998-09-27  Jim Meyering  <meyering@ascend.com>
40550
40551         * m4/jm-macros.m4 (jm_MACROS): Require jm_FUNC_FNMATCH.
40552
40553         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): New file/macro.  Extracted from
40554         ../configure.in, including a change from Gordon Matzigkeit to allow
40555         cross-compiling for the Hurd.
40556
40557         * m4/glibc.m4: New file/macro to test for the GNU C Library
40558         versions 1 and 2.  From Gordon Matzigkeit.
40559         Indent.
40560
40561 1998-09-21  Jim Meyering  <meyering@ascend.com>
40562
40563         * m4/chown.m4: Declare locals: before, after.  From Andries Brouwer.
40564
40565 1998-08-18  Paul Eggert  <eggert@twinsun.com>
40566
40567         Port nanosecond-resolution times to UnixWare 2.1.2 and
40568         pedantic Solaris 2.6.
40569
40570         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC): Renamed from
40571         AC_STRUCT_ST_MTIM.
40572         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC):
40573         Generate name of ns member, instead of just 1 or undef.
40574         Allow for UnixWare 2.1.2 and Solaris 2.6 if in pedantic mode.
40575
40576 1998-08-15  Jim Meyering  <meyering@ascend.com>
40577
40578         * m4/ssize_t.m4 (jm_TYPE_SSIZE_T): Remove file.
40579         * m4/check-type.m4: New file.  Replacement for AC_CHECK_TYPE.
40580         * m4/jm-macros.m4: Use the new AC_CHECK_TYPE(ssize_t, int)
40581         instead of jm_TYPE_SSIZE_T.
40582
40583 1998-08-12  Jim Meyering  <meyering@ascend.com>
40584
40585         * m4/st_dm_mode.m4: New file.  From Johan Danielsson.
40586
40587 1998-08-02  Jim Meyering  <meyering@ascend.com>
40588
40589         * m4/st_mtim.m4: Use hack to avoid having to put #undef HAVE_ST_MTIM
40590         in acconfig.h manually.
40591
40592 1998-07-31  Paul Eggert  <eggert@twinsun.com>
40593
40594         * m4/st_mtim.m4: New file.
40595
40596 1998-07-28  Jim Meyering  <meyering@ascend.com>
40597
40598         * m4/utimes.m4: Undef stat.
40599
40600 1998-07-25  Jim Meyering  <meyering@ascend.com>
40601
40602         * m4/utime.m4 (jm_FUNC_UTIME): New file and macro.
40603         * m4/utimes.m4 (jm_FUNC_UTIMES_NULL): New file and macro.
40604
40605 1998-07-09  Manfred Hollstein  <manfred@s-direktnet.de>
40606
40607         * m4/chown.m4 (jm_FUNC_CHOWN): Add a check to verify that the
40608         uid and gid actually remain unchanged.
40609
40610 1998-07-07  Jim Meyering  <meyering@ascend.com>
40611
40612         * m4/jm-glibc-io.m4: Remove fclose_unlocked.
40613
40614 1998-07-04  Jim Meyering  <meyering@ascend.com>
40615
40616         * m4/regex.m4: Use syscmd, ifelse, and sysval.  Mainly as an exercise
40617         to prove that this macro can be used in packages without regex.c.
40618
40619 1998-07-04  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
40620
40621         * m4/gettext.m4 (AM_WITH_NLS): Remove intl/libintl.h if <libintl.h>
40622         is to be used.
40623
40624 1998-07-03  Jim Meyering  <meyering@ascend.com>
40625
40626         * m4/gettext.m4: Add -lintl if it's found to be necessary.
40627
40628         * m4/gettext.m4: New file -- from gettext-0.10.35.
40629         * m4/lcmessage.m4: Likewise.
40630         * m4/progtest.m4: Likewise.
40631
40632         * m4/regex.m4 (jm_WITH_REGEX): New file and macro.
40633         * m4/jm-macros.m4: Require the new macro.
40634
40635 1998-06-29  Jim Meyering  <meyering@ascend.com>
40636
40637         * m4/fstypename.m4: Include sys/param.h.  NetBSD 1.3.1 requires this
40638         for the definition of NGROUPS (used in a system header included
40639         by sys/mount.h).
40640
40641 1998-06-28  Jim Meyering  <meyering@ascend.com>
40642
40643         * m4/ls-mntd-fs.m4: New file.
40644         * m4/fstypename.m4: New file.
40645
40646         * m4/jm-macros.m4: Require the new macro.
40647         * m4/jm-glibc-io.m4: New file.
40648
40649 1998-05-19  Jim Meyering  <meyering@ascend.com>
40650
40651         * m4/jm-macros.m4: Add jm_FUNC_LCHOWN.
40652         * m4/lchown.m4: New file.
40653
40654         * m4/Makefile.am.in: New file.
40655         * m4/Makefile.am (Makefile.am): Depend on Makefile.am.in.
40656
40657 1998-05-14  Jim Meyering  <meyering@ascend.com>
40658
40659         * m4/Makefile.am (EXTRA_DIST): Add them.
40660         * m4/jm-macros.m4: New file.
40661         * m4/utimbuf.m4: New file.
40662
40663 1998-05-12  Jim Meyering  <meyering@ascend.com>
40664
40665         * m4/Makefile.am (EXTRA_DIST): Add isc-posix.m4.
40666
40667 1998-05-11  Jim Meyering  <meyering@ascend.com>
40668
40669         * m4/isc-posix.m4: New file.
40670
40671 1998-05-10  Jim Meyering  <meyering@ascend.com>
40672
40673         * m4/jm-mktime.m4: Use AM_FUNC_MKTIME, now that it's up to date.
40674
40675 1998-05-09  Jim Meyering  <meyering@ascend.com>
40676
40677         * m4/Makefile.am (EXTRA_DIST): Add ssize_t.m4.
40678         (EXTRA_DIST): Remove mktime.m4, now that the new version is included
40679         with automake.
40680
40681         * m4/ssize_t.m4: New file.
40682         * m4/mktime.m4: Remove file -- the new automake has this now.
40683
40684 1998-04-26  Jim Meyering  <meyering@ascend.com>
40685
40686         * m4/assert.m4: New file.
40687         * m4/Makefile.am (EXTRA_DIST): Add assert.m4.
40688
40689 1998-04-05  Jim Meyering  <meyering@ascend.com>
40690
40691         * m4/prereq.m4 (jm_PREREQ_REGEX): New macro.
40692         (jm_PREREQ): Use it here.
40693
40694 1998-03-23  Jim Meyering  <meyering@eng.ascend.com>
40695
40696         * m4/inttypes_h.m4: Kludges so I don't have to add HAVE_INTTYPES_H
40697         in acconfig.h.
40698
40699 1998-03-15  Jim Meyering  <meyering@eng.ascend.com>
40700
40701         * m4/prereq.m4: New file.
40702         * m4/error.m4: New file.
40703         * m4/Makefile.am (EXTRA_DIST): Add error.m4 and prereq.m4.
40704
40705 1998-02-07  Jim Meyering  <meyering@eng.ascend.com>
40706
40707         * m4/getline.m4: Don't set am_cv_func_working_getline before the
40708         cache-check for the same variable -- that defeated the purpose of
40709         the test; the test program was never run.  This was a problem only
40710         on systems with losing getline functions -- HP-UX 10.20 is one.
40711         Reported by Bjorn Helgaas.
40712
40713 1998-02-06  Jim Meyering  <meyering@eng.ascend.com>
40714
40715         * m4/Makefile.am (EXTRA_DIST): Add perl.m4.
40716
40717 1998-01-10  Jim Meyering  <meyering@na-net.ornl.gov>
40718
40719         * m4/Makefile.am (EXTRA_DIST): Add const.m4.
40720
40721         * m4/const.m4: New file.  Use an initializer in this declaration
40722         typedef int charset[2]; const charset x;
40723         Reported by Bob Glickstein.
40724
40725 1997-12-21  Jim Meyering  <meyering@na-net.ornl.gov>
40726
40727         * m4/chown.m4: Fix reversed types on -1 args to chown.
40728         From Kaveh Ghazi.
40729
40730 1997-12-14  Jim Meyering  <meyering@na-net.ornl.gov>
40731
40732         * m4/check-decl.m4: s/DECLARATION_/DECL_/g.
40733         Add lseek and memchr.
40734
40735         * m4/decl.m4: s/HAVE_DECLARATION_/HAVE_DECL_/g.
40736         T.E.Dickey <dickey@clark.net> said that some older preprocessors
40737         have a 20-character limit on names.
40738
40739 1997-11-30  Jim Meyering  <meyering@na-net.ornl.gov>
40740
40741         * m4/inttypes_h.m4: New file.
40742         * m4/uintmax_t.m4: New file.
40743         * m4/Makefile.am (EXTRA_DIST): Add inttypes_h.m4 and uintmax_t.m4.
40744
40745
40746         -----
40747
40748         Local Variables:
40749         coding: utf-8
40750         End:
40751
40752         Copyright (C) 1997-2008 Free Software Foundation, Inc.
40753
40754         Copying and distribution of this file, with or without
40755         modification, are permitted provided the copyright notice
40756         and this notice are preserved.