c-stack: avoid compiler optimizations when provoking overflow
[pspp] / ChangeLog
1 2008-09-23  Eric Blake  <ebb9@byu.net>
2
3         c-stack: avoid compiler optimizations when provoking overflow
4         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Make
5         recursion harder to optimize, to ensure a stack overflow occurs.
6         * tests/test-c-stack.c (recurse): Likewise.
7         Borrowed from libsigsegv.
8
9         c-stack: work around Irix sigaltstack bug
10         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Check
11         whether sigaltstack uses wrong end of stack_t (copied in part from
12         libsigsegv).
13         * lib/c-stack.c (c_stack_action) [!HAVE_LIBSIGSEGV]: Work around
14         Irix bug, without requiring an over-allocation.
15         * doc/posix-functions/sigaltstack.texi (sigaltstack): Document the
16         bug.
17
18         fopen: document mingw bug on directories
19         * doc/posix-functions/fopen.texi (fopen): Mention mingw bug for
20         not allowing a stream visiting a directory, even though reading
21         from such a stream is not portable.
22
23 2008-09-23  Paolo Bonzini  <bonzini@gnu.org>
24
25         * lib/poll.c: Rewrite.
26         * modules/poll: Depend on alloca.
27
28 2008-09-23  Paolo Bonzini  <bonzini@gnu.org>
29
30         * lib/sys_socket.in.h: Do not implement rpl_setsockopt here,
31         instead define prototypes for a full set of wrappers.  Ensure
32         that Cygwin does not use the compatibility code, which is only
33         for MinGW.
34         * lib/winsock.c: New.
35         * m4/sys_socket_h.m4: Compile lib/winsock.c if WinSock is being used.
36         * modules/sys_socket: Add lib/winsock.c.
37
38         * modules/poll-tests: Add errno and perror.
39         * tests/test-poll.c: Use ioctl, not ioctlsocket.
40
41 2008-09-23  Paolo Bonzini  <bonzini@gnu.org>
42
43         * tests/test-poll.c: Downgrade minimum needed Winsock version.
44
45 2008-09-23  Bruno Haible  <bruno@clisp.org>
46
47         * doc/posix-functions/*: Add info about functions missing on IRIX 5.3.
48         * doc/glibc-functions/*: Likewise.
49
50 2008-09-23  Simon Josefsson  <simon@josefsson.org>
51
52         * tests/test-perror.sh (tmpfiles): Cleanup temporary files on
53         success.
54
55 2008-09-22  Eric Blake  <ebb9@byu.net>
56             Bruno Haible  <bruno@clisp.org>
57
58         vasnprintf: fix x86/glibc regression on printf("%La", 0.0L)
59         * lib/vasnprintf.c (VASNPRINTF): Support 0.0 on platforms that
60         supply %A but mishandle pseudo-NaN.
61         Reported by Simon Josefsson.
62
63 2008-09-21  Bruno Haible  <bruno@clisp.org>
64
65         * tests/test-lock.c (main): Tweak skip message.
66         * tests/test-tls.c (main): Likewise.
67
68 2008-09-21  Bruno Haible  <bruno@clisp.org>
69
70         * m4/sigaction.m4 (gl_SIGACTION): Remove unnecessary AC_SUBST. Check
71         whether 'struct sigaction' has sa_sigaction here...
72         (gl_PREREQ_SIG_HANDLER_H): ... not here.
73         (gl_PREREQ_SIGACTION): Remove unnecessary AC_SUBST.
74
75 2008-09-21  Bruno Haible  <bruno@clisp.org>
76
77         * MODULES.html.sh (Support for obsolete systems lacking ANSI C 89): New
78         section.
79         (Support for systems lacking ANSI C 89): Move stdlib, exit, strtol,
80         strtoul, memchr, memcmp, memcpy, memmove, memset, strcspn, strpbrk to
81         the new section.
82         (Support for obsolete systems lacking POSIX:2001): New section.
83         (String handling <string.h>): Move strdup to the new section.
84         Suggested by Simon Josefsson and Paolo Bonzini.
85
86 2008-09-21  Bruno Haible  <bruno@clisp.org>
87
88         * tests/test-vasnprintf-posix.c (test_function): Allow 3-digit
89         exponents in %e and %g results on 'long double'. Needed for mingw's
90         improved *printf functions.
91         * tests/test-vasprintf-posix.c (test_function): Likewise.
92         * tests/test-snprintf-posix.h (test_function): Likewise.
93         * tests/test-sprintf-posix.h (test_function): Likewise.
94         Reported by Eric Blake.
95
96 2008-09-21  Bruno Haible  <bruno@clisp.org>
97
98         * tests/test-snprintf-posix.h (test_function): Remove useless ASSERTs.
99         * tests/test-sprintf-posix.h (test_function): Likewise.
100
101 2008-09-21  Bruno Haible  <bruno@clisp.org>
102
103         * modules/getpass (Depends-on): Add strdup-posix.
104
105         New module 'strdup-posix'.
106         * modules/strdup-posix: New file.
107         * m4/strdup.m4 (gl_FUNC_STRDUP_POSIX): New macro.
108         * lib/string.in.h (strdup): Replace if REPLACE_STRDUP is 1.
109         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
110         REPLACE_STRDUP.
111         * modules/string (Makefile.am): Substitute REPLACE_STRDUP.
112         * doc/posix-functions/strdup.texi: Mention module strdup-posix.
113         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
114         strdup-posix.
115
116         * modules/strdup (Depends-on): Remove malloc-posix.
117
118 2008-09-20  Bruno Haible  <bruno@clisp.org>
119
120         * lib/fstrcmp.c: Add data about branch probabilities, from Ralf
121         Wildenhues.
122
123 2008-09-20  Bruno Haible  <bruno@clisp.org>
124
125         Ensure that wint_t gets defined on IRIX 5.3.
126         * lib/wchar.in.h (wint_t): Define if not defined by the system.
127         * lib/wctype.in.h (wint_t): Likewise.
128         (__wctype_wint_t): Remove type.
129         (isw*): Use wint_t instead of __wctype_wint_t.
130         * m4/wchar.m4 (gl_WCHAR_H): Invoke gt_TYPE_WINT_T and set HAVE_WINT_T.
131         * modules/wchar (Files): Add m4/wint_t.m4.
132         (Makefile.am): Substitute HAVE_WINT_T.
133         * tests/test-wchar.c: Check that wchar_t and wint_t are defined.
134         * tests/test-wctype.c: Check that wint_t is defined.
135         * doc/posix-headers/wchar.texi: Mention the IRIX 5 problem.
136         * doc/posix-headers/wctype.texi: Likewise.
137         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
138
139 2008-09-18  Bruno Haible  <bruno@clisp.org>
140
141         * gnulib-tool (func_exit): Update comment.
142
143 2008-09-18  Simon Josefsson  <simon@josefsson.org>
144
145         * modules/getaddrinfo (Depends-on): Remove strdup, this module
146         assumes strdup exists and does not depend on strdup to return
147         ENOMEM on out of memory conditions.
148
149 2008-09-18  Bruno Haible  <bruno@clisp.org>
150
151         * lib/vasnprintf.c (VASNPRINTF): When printing ±0.0L in
152         NEED_PRINTF_INFINITE_LONG_DOUBLE case with 'e' format, always use two
153         digits for the exponent.
154
155 2008-09-18  Jim Meyering  <meyering@redhat.com>
156             Bruno Haible  <bruno@clisp.org>
157
158         * lib/vasnprintf.c (decimal_point_char): Define also if
159         NEED_PRINTF_INFINITE_LONG_DOUBLE.
160
161 2008-09-16  Bruno Haible  <bruno@clisp.org>
162         and Eric Blake  <ebb9@byu.net>
163
164         vasnprintf: support Irix 5.3
165         * lib/vasnprintf.c (VASNPRINTF): Also handle -0.0L on platforms
166         that mishandle long double infinity.
167         Reported by Tom G. Christensen.
168
169 2008-09-16  Bruno Haible  <bruno@clisp.org>
170
171         * doc/glibc-functions/scandir.texi: Mention the function is missing on
172         Solaris 9.
173         * doc/glibc-functions/alphasort.texi: Likewise.
174         Reported by Michael Haubenwallner <michael.haubenwallner@salomon.at>.
175
176 2008-09-16  Jim Meyering  <meyering@redhat.com>
177
178         posix-shell.m4: reject opensolaris's "sh (AT&T Research) 1993-12-28 s+"
179         * m4/posix-shell.m4 (gl_POSIX_SHELL): Reject a shell that lets
180         a umask modification leak out of a subshell.  Otherwise, the
181         opensolaris /bin/sh would be accepted and thus cause unwarranted
182         failures in the coreutils test suite.
183
184 2008-09-16  Paolo Bonzini  <bonzini@gnu.org>
185
186         * tests/test-poll.c (connect_to_socket): Allow non-blocking connect
187         to succeed.
188
189 2008-09-16  Jim Meyering  <meyering@redhat.com>
190
191         avoid spurious test failure when library is built without ACL support
192         * m4/acl.m4 (USE_ACL): Define as a shell variable, too, for...
193         * modules/acl-tests (Makefile.am) [TESTS_ENVIRONMENT]: Add USE_ACL.
194         * tests/test-file-has-acl.sh: Skip if USE_ACL == 0.
195         * tests/test-copy-acl.sh: Likewise.
196
197 2008-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
198
199         * lib/fstrcmp.c (fstrcmp_bounded): Use a second, less quick upper bound
200         based on character occurrence counts.
201
202 2008-09-15  Eric Blake  <ebb9@byu.net>
203
204         tests: avoid some compiler warnings
205         * tests/test-memchr.c (main): Pass NULL indirectly.
206         * tests/test-closein.c (main): Avoid unused variable.
207
208 2008-09-15  Bruno Haible  <bruno@clisp.org>
209
210         * m4/errno_h.m4 (gl_HEADER_ERRNO_H_BODY): Test for all the macros that
211         are missing on OpenBSD 4.0 individually.
212         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
213
214 2008-09-15  Bruno Haible  <bruno@clisp.org>
215
216         * doc/posix-headers/errno.texi: Mention the Cygwin problem.
217         * doc/posix-functions/strerror.texi: Mention also Cygwin.
218         * doc/posix-functions/perror.texi: Likewise.
219         * m4/errno_h.m4 (gl_HEADER_ERRNO_H_BODY): Test also whether ECANCELED
220         is missing.
221         Reported by Eric Blake.
222
223         * lib/errno.in.h: Use replacement values >= 2000.
224         Reported by Eric Blake.
225
226 2008-09-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
227
228         * lib/fstrcmp.c (EXTRA_CONTEXT_FIELDS): Add field 'edit_count_limit'.
229         (EARLY_ABORT): Return true when the edit_count has grown too beyond the
230         limit.
231         (fstrcmp_bounded): Initialize the edit_count_limit. Return 0 when
232         compareseq was aborted.
233
234 2008-09-14  Bruno Haible  <bruno@clisp.org>
235
236         * lib/fstrcmp.c (EXTRA_CONTEXT_FIELDS): Combine xvec_edit_count and
237         yvec_edit_count.
238         (NOTE_DELETE, NOTE_INSERT): Increment the combined edit count.
239         (fstrcmp_bounded): Simplify result computation accordingly.
240
241 2008-09-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
242
243         * lib/fstrcmp.h (fstrcmp_bounded): New declaration.
244         (fstrcmp): Define in terms of fstrcmp_bounded.
245         * lib/fstrcmp.c (fstrcmp_bounded): Renamed from fstrcmp. Add
246         lower_bound argument.
247         Return quickly if the result is certainly < lower_bound.
248         * tests/test-fstrcmp.c (check_fstrcmp): Test also fstrcmp_bounded.
249
250 2008-09-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
251
252         * lib/diffseq.h (EARLY_ABORT): New macro.
253         (compareseq): Change return type to bool. Return true when EARLY_ABORT
254         evaluates to true.
255
256 2008-09-14  Bruno Haible  <bruno@clisp.org>
257
258         * modules/perror-tests: New file.
259         * tests/test-perror.sh: New file.
260         * tests/test-perror.c: New file.
261
262         New module 'perror'.
263         * lib/stdio.in.h (perror): New declaration.
264         * lib/perror.c: New file.
265         * m4/perror.m4: New file.
266         * modules/perror: New file.
267         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add perror.
268         * doc/posix-functions/perror.texi: Mention the perror module.
269         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize GNULIB_PERROR,
270         REPLACE_PERROR.
271         * modules/stdio (Makefile.am): Substitute GNULIB_PERROR,
272         REPLACE_PERROR.
273
274 2008-09-14  Bruno Haible  <bruno@clisp.org>
275
276         * modules/stdio (Makefile.am): Reorder to match the order in
277         lib/stdio.in.h.
278         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
279
280 2008-09-13  Bruno Haible  <bruno@clisp.org>
281
282         * lib/sys_socket.in.h (EINPROGRESS, ...): Remove definitions.
283
284 2008-09-13  Bruno Haible  <bruno@clisp.org>
285
286         Extend strerror to cover the added errno values.
287         * lib/strerror.c: Include errno.h and winsock2.h if it exists.
288         (rpl_strerror): Provide error messages for the added errno values and
289         for the WSA* values.
290         * m4/strerror.m4 (gl_FUNC_STRERROR): Test REPLACE_STRERROR.
291         (gl_FUNC_STRERROR_SEPARATE): If errno.h is replaced, always replace
292         strerror.
293         (gl_PREREQ_STRERROR): Test whether winsock2.h exists.
294         * modules/strerror (Depends-on): Add errno.
295         * doc/posix-functions/strerror.texi: Document the change.
296         * tests/test-strerror.c (main): Check also the string for ETIMEDOUT
297         and EOVERFLOW.
298
299 2008-09-13  Bruno Haible  <bruno@clisp.org>
300
301         * modules/EOVERFLOW: Remove file.
302         * m4/eoverflow.m4: Remove file.
303         * modules/EOVERFLOW-tests: Remove file.
304         * tests/test-EOVERFLOW.c: Remove file.
305         * modules/fprintf-posix (Depends-on): Replace EOVERFLOW with errno.
306         * modules/ftell (Depends-on): Likewise.
307         * modules/getdelim (Depends-on): Likewise.
308         * modules/getugroups (Depends-on): Likewise.
309         * modules/poll (Depends-on): Likewise.
310         * modules/snprintf (Depends-on): Likewise.
311         * modules/sprintf-posix (Depends-on): Likewise.
312         * modules/vasnprintf (Depends-on): Likewise.
313         * modules/vasprintf (Depends-on): Likewise.
314         * modules/vfprintf-posix (Depends-on): Likewise.
315         * modules/vsnprintf (Depends-on): Likewise.
316         * modules/vsprintf-posix (Depends-on): Likewise.
317         * modules/xvasprintf (Depends-on): Likewise.
318         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
319         * modules/unistdio/u8-vasprintf (Depends-on): Likewise.
320         * modules/unistdio/u8-vsnprintf (Depends-on): Likewise.
321         * modules/unistdio/u8-vsprintf (Depends-on): Likewise.
322         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
323         * modules/unistdio/u8-u8-vasprintf (Depends-on): Likewise.
324         * modules/unistdio/u8-u8-vsnprintf (Depends-on): Likewise.
325         * modules/unistdio/u8-u8-vsprintf (Depends-on): Likewise.
326         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
327         * modules/unistdio/u16-u16-vasprintf (Depends-on): Likewise.
328         * modules/unistdio/u16-u16-vsnprintf (Depends-on): Likewise.
329         * modules/unistdio/u16-u16-vsprintf (Depends-on): Likewise.
330         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
331         * modules/unistdio/u16-vasprintf (Depends-on): Likewise.
332         * modules/unistdio/u16-vsnprintf (Depends-on): Likewise.
333         * modules/unistdio/u16-vsprintf (Depends-on): Likewise.
334         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
335         * modules/unistdio/u32-vasprintf (Depends-on): Likewise.
336         * modules/unistdio/u32-vsnprintf (Depends-on): Likewise.
337         * modules/unistdio/u32-vsprintf (Depends-on): Likewise.
338         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
339         * modules/unistdio/u32-u32-vasprintf (Depends-on): Likewise.
340         * modules/unistdio/u32-u32-vsnprintf (Depends-on): Likewise.
341         * modules/unistdio/u32-u32-vsprintf (Depends-on): Likewise.
342         * modules/unistdio/ulc-fprintf (Depends-on): Likewise.
343         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
344         * modules/unistdio/ulc-vasprintf (Depends-on): Likewise.
345         * modules/unistdio/ulc-vfprintf (Depends-on): Likewise.
346         * modules/unistdio/ulc-vsnprintf (Depends-on): Likewise.
347         * modules/unistdio/ulc-vsprintf (Depends-on): Likewise.
348         * MODULES.html.sh: Remove EOVERFLOW.
349         * NEWS: Mention the change.
350
351 2008-09-13  Bruno Haible  <bruno@clisp.org>
352
353         * modules/errno-tests: New file.
354         * tests/test-errno.c: New file, incorporating tests/test-EOVERFLOW.c.
355
356         * lib/errno.in.h: New file.
357         * m4/errno_h.m4: New file, borrowing from m4/eoverflow.m4.
358         * modules/errno: New file.
359         * doc/posix-headers/errno.texi: Update documentation.
360         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add errno.
361
362 2008-09-13  Bruno Haible  <bruno@clisp.org>
363
364         * tests/test-poll.c: Use #if for native Windows, rather than testing
365         __MSVCRT__.
366
367 2008-09-13  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
368             Bruno Haible  <bruno@clisp.org>
369
370         * lib/glob.c: Don't include <pwd.h> on native Windows.
371         (WINDOWS32): New macro.
372         (glob) [WINDOW32]: Provide a reasonable replacement for getenv("HOME").
373
374 2008-09-13  Bruno Haible  <bruno@clisp.org>
375
376         * lib/glthread/cond.h [USE_SOLARIS_THREADS]
377         (ETIMEDOUT): Remove macro.
378         (glthread_cond_timedwait_multithreaded): New declaration.
379         (glthread_cond_timedwait): Use it.
380         * lib/glthread/cond.c [USE_SOLARIS_THREADS]
381         (glthread_cond_timedwait_multithreaded): New function.
382
383 2008-09-12  Paolo Bonzini  <bonzini@gnu.org>
384
385         * modules/poll-tests: Do not check for io.h.
386         * tests/test-poll.c: Check for __MSVCRT__ instead.
387
388 2008-09-12  Paolo Bonzini  <bonzini@gnu.org>
389
390         * lib/sys_socket.in.h (EINPROGRESS): Define for Winsock case.
391         * modules/poll-tests: Add inet_pton, stdbool, sockets.
392         * tests/test-poll.c: Use them.  Use _pipe on Windows.
393
394 2008-09-12  Paolo Bonzini  <bonzini@gnu.org>
395
396         * modules/poll-tests: New.
397         * tests/test-poll.c: New.
398
399 2008-09-12  Eric Blake  <ebb9@byu.net>
400
401         frexp: test for NetBSD failure on -0.0
402         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Enhance test, since some, but
403         not all, bugs from NetBSD 3.0 have been fixed.
404         * doc/posix-functions/frexp.texi (frexp): Document bug.
405         Reported by Thomas Klausner.
406
407         signbit: work around bug of HP-UX 10.20 cc with -0.0 literal
408         * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): Rewrite test to avoid
409         literal -0.0.
410         Reported by Jonathan C. Patschke <jp@centtech.com>.
411
412 2008-09-11  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
413
414         * lib/glthread/cond.h: Use dummy implementation also if
415         USE_WIN32_THREADS.
416
417 2008-09-11  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
418
419         * modules/fnmatch-posix (License): Change to LGPLv2+.
420         * modules/fnmatch-gnu (License): Likewise.
421
422 2008-09-11  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
423
424         * lib/poll.c (poll): Fix polling unconnected server sockets on WIN32.
425
426 2008-09-11  Jim Meyering  <meyering@redhat.com>
427
428         * users.txt: Add gtk-vnc.
429
430 2008-09-08  Simon Josefsson  <simon@josefsson.org>
431
432         * tests/test-bitrotate.c: Test 8/16-bit rotates with 0 and maximum
433         rotate amounts.
434
435         * lib/bitrotate.h: Doc fix, mention that N can be wider than minimally
436         required for 16-bit and 8-bit rotates.
437         * lib/bitrotate.h (rotl64, rotr64, rotl32, rotl32, rotl16, rotr16,
438         rotl8, rotr8): Use UINT64_MAX, UINT32_MAX, UINT16_MAX, and
439         UINT8_MAX instead of hard-coded constants.
440         Suggested by Paul Eggert.
441
442 2008-09-07  Bruno Haible  <bruno@clisp.org>
443
444         * tests/test-striconveh.c (main): Check behaviour when converting from
445         UTF-7.
446
447         Make striconveh work better with stateful encodings.
448         * lib/striconveh.c (iconv_carefully, iconv_carefully_1): Don't assume
449         that iconv does not increment the inptr when returning -1/EINVAL.
450
451 2008-09-07  Bruno Haible  <bruno@clisp.org>
452
453         * build-aux/config.rpath: Update according to libtool-2.2.6.
454         * build-aux/config.libpath: Likewise.
455
456 2008-09-06  Bruno Haible  <bruno@clisp.org>
457
458         * lib/freadahead.c (freadahead): Add conditional for SLOW_BUT_NO_HACKS.
459         * lib/freadptr.c (freadptr): Likewise.
460         * lib/freadseek.c (freadptrinc): Likewise.
461         Reported by Simon Josefsson.
462
463 2008-09-06  Bruno Haible  <bruno@clisp.org>
464
465         * modules/freadptr (License): Change to LGPLv2+.
466         * modules/freadseek (License): Likewise.
467         Suggested by Eric Blake.
468
469         * modules/memchr2 (License): Change to LGPLv2+.
470         Approved by Eric Blake.
471
472 2008-09-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
473             Bruno Haible  <bruno@clisp.org>
474
475         Make gnulib-tool work with native 'sed' on AIX.
476         * gnulib-tool (sed_noop): New variable.
477         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am, func_import,
478         func_add_or_update, func_create_testdir): Use it to initialize sed
479         script variables.
480         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
481
482 2008-09-04  Albert Chin  <bug-gnulib@mlists.thewrittenword.com>
483             Bruno Haible  <bruno@clisp.org>
484
485         * m4/include_next.m4 (gl_INCLUDE_NEXT): Add check whether #include_next
486         also works after #include directives.
487
488 2008-09-04  Ondřej Vašík  <ovasik@redhat.com>
489
490         getdate.y: reject an out-of-range timezone value
491         * lib/getdate.y (time_zone_hhmm): Reject any TZ offset that is outside
492         the range [-24...+24].  When specified with only one or two digits,
493         * tests/test-getdate.c: Tests for the fix.
494         * doc/getdate.texi: Document this change.
495
496 2008-09-03  Bruno Haible  <bruno@clisp.org>
497
498         * doc/glibc-functions/strverscmp.texi: Mention the strverscmp module.
499
500 2008-09-02  Simon Josefsson  <simon@josefsson.org>
501
502         * lib/bitrotate.h (rotl64, rotr64): Add.  Suggested by Bruce Korb
503         <bruce.korb@gmail.com> with ideas from Ben Pfaff
504         <blp@cs.stanford.edu>, Bruno Haible <bruno@clisp.org> and Eric
505         Blake <ebb9@byu.net>.
506
507         * tests/test-bitrotate.c: Add more test vectors.
508
509 2008-09-02  Eric Blake  <ebb9@byu.net>
510
511         vasnprintf-posix: handle large precision via %.*d
512         * lib/vasnprintf.c (VASNPRINTF): Don't pass precision to snprintf
513         when handling it ourselves.
514         * tests/test-vasnprintf-posix.c (test_function): Add test.
515         * tests/test-snprintf-posix.h (test_function): Likewise.
516         * tests/test-sprintf-posix.h (test_function): Likewise.
517         * tests/test-vasprintf-posix.c (test_function): Likewise.
518         Reported by Alain Guibert.
519
520 2008-09-01  Eric Blake  <ebb9@byu.net>
521
522         c-stack: make configure-time check more robust
523         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Check for
524         successful sigaction call.
525         Reported by Tom G. Christensen.
526
527 2008-09-01  Bruno Haible  <bruno@clisp.org>
528
529         New module 'findprog-lgpl'.
530         * modules/findprog-lgpl: New file.
531         * lib/findprog-lgpl.c: New file.
532         * lib/findprog.c: Compile nothing in findprog.c if findprog-lgpl.c is
533         also compiled. Consider the possibly defined symbol IN_FINDPROG_LGPL
534         to decide whether to use strdup or xstrdup, concatenated_filename or
535         xconcatenated_filename.
536
537 2008-09-01  Bruno Haible  <bruno@clisp.org>
538
539         Split module 'concat-filename' into 'concat-filename' (LGPL) and
540         'xconcat-filename' (GPL).
541         * modules/concat-filename (Depends-on): Add malloc-posix, remove xalloc.
542         (License): Change to LGPLv2+.
543         * modules/xconcat-filename: New file.
544         * lib/concat-filename.h (concatenated_filename): Change specification.
545         (xconcatenated_filename): New declaration.
546         * lib/concat-filename.c: Include errno.h, stdlib.h, not xalloc.h.
547         (concatenated_filename): Use malloc instead of xalloc. Handle out-of-
548         memory situations.
549         * lib/xconcat-filename.c: New file.
550         * NEWS: Mention the change.
551         * lib/findprog.c: Include concat-filename.h, not filename.h.
552         (find_in_path): Use xconcatenated_filename instead of
553         concatenated_filename.
554         * lib/javacomp.c: Include concat-filename.h, not filename.h.
555         (is_envjavac_gcj43_usable, is_envjavac_oldgcj_14_14_usable,
556         is_envjavac_oldgcj_14_13_usable, is_envjavac_nongcj_usable,
557         is_gcj_present, is_gcj43_usable, is_oldgcj_14_14_usable,
558         is_oldgcj_14_13_usable, is_javac_usable): Use xconcatenated_filename
559         instead of concatenated_filename.
560         * lib/javaexec.c: Include concat-filename.h, not filename.h.
561         (execute_java_class): Use xconcatenated_filename instead of
562         concatenated_filename.
563         * modules/findprog (Depends-on): Add xconcat-filename, remove filename.
564         * modules/javacomp (Depends-on): Likewise.
565         * modules/javaexec (Depends-on): Likewise.
566
567 2008-09-01  Bruno Haible  <bruno@clisp.org>
568
569         Split module 'filename' into 'filename' and 'concat-filename'.
570         * modules/filename: Keep only lib/filename.h.
571         (License): Change to LGPLv2+.
572         * modules/concat-filename: New file, extracted from modules/filename.
573         * lib/filename.h (concatenated_filename): Remove declaration.
574         * lib/concat-filename.h: New file, extracted from lib/filename.h.
575         * lib/concat-filename.c: Include concat-filename.h.
576         * NEWS: Mention the change.
577
578 2008-09-01  Simon Josefsson  <simon@josefsson.org>
579
580         * lib/bitrotate.h (rotl8, rotr8): Add.
581
582         * modules/bitrotate (configure.ac): Need
583         AC_REQUIRE([AC_C_INLINE]).
584         (Description): Mention stdint.h.  Reported by Bruno Haible
585         <bruno@clisp.org>.
586
587         * lib/bitrotate.h (rotr16, rotl16): Fix mask value.  Reported by
588         Paolo Bonzini <bonzini@gnu.org>.
589
590 2008-08-31  Bruno Haible  <bruno@clisp.org>
591
592         Assume Solaris specific bi-arch conventions on Solaris systems.
593         * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): On Solaris in 64-bit
594         mode, set acl_libdirstem to lib/64. Also set acl_libdirstem2.
595         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): If acl_libdirstem does not
596         work, try acl_libdirstem2 as fallback. Otherwise treat acl_libdirstem2
597         like acl_libdirstem.
598         (AC_LIB_LINKFLAGS_FROM_LIBS): Treat acl_libdirstem2 like
599         acl_libdirstem.
600         * NEWS: Mention the change.
601         Reported by Ben Taylor <bentaylor.solx86@gmail.com>.
602
603 2008-08-31  Jim Meyering  <meyering@redhat.com>
604
605         * lib/strftime.h: Add comments describing the two added arguments.
606
607         remove duplicate #include directives
608         * lib/chdir-long.c [TEST_CHDIR]: Remove duplicate #include <stdio.h>.
609         * lib/putenv.c: Remove duplicate #include <stdlib.h>.
610
611 2008-08-31  Bruno Haible  <bruno@clisp.org>
612
613         New module 'sigpipe-die'.
614         * modules/sigpipe-die: New file.
615         * lib/sigpipe-die.h: New file.
616         * lib/sigpipe-die.c: New file.
617         * MODULES.html.sh (Signal handling): Add sigpipe-die.
618
619 2008-08-31  Bruno Haible  <bruno@clisp.org>
620
621         Don't override previously installed signal handlers.
622         * lib/fatal-signal.c (saved_sigactions): New variable.
623         (uninstall_handlers): Reset the signal to the saved handler, not
624         to SIG_DFL (except when ignored).
625         (install_handlers): Save the previous handlers.
626
627 2008-08-30  Bruno Haible  <bruno@clisp.org>
628
629         * gnulib-tool (func_reset_sigpipe): New function.
630         (func_get_automake_snippet, func_modules_transitive_closure,
631         func_import): Invoke it before a join command that reads from stdin,
632         to avoid "echo: write error: Broken pipe" error messages on stderr.
633         Reported by Sam Steingold <sds@gnu.org>.
634
635 2008-08-30  Bruno Haible  <bruno@clisp.org>
636
637         * m4/fopen.m4 (gl_FUNC_FOPEN): Test against bug with trailing slash.
638         Code copied from m4/open.m4.
639         * lib/fopen.c (rpl_fopen): Return NULL if the mode specifies write
640         access and the filename ends in a slash. Code copied from lib/open.c.
641         * doc/posix-functions/fopen.texi: Document bug with trailing slash.
642         * tests/test-fopen.c (main): Check against bug with trailing slash.
643
644 2008-08-29  Bruno Haible  <bruno@clisp.org>
645
646         Avoid some "gcc -pedantic" warnings.
647         * m4/include_next.m4 (gl_INCLUDE_NEXT): Set also PRAGMA_SYSTEM_HEADER.
648         * lib/arpa_inet.in.h: Use PRAGMA_SYSTEM_HEADER.
649         * lib/dirent.in.h: Likewise.
650         * lib/fcntl.in.h: Likewise.
651         * lib/float.in.h: Likewise.
652         * lib/iconv.in.h: Likewise.
653         * lib/inttypes.in.h: Likewise.
654         * lib/locale.in.h: Likewise.
655         * lib/math.in.h: Likewise.
656         * lib/netinet_in.in.h: Likewise.
657         * lib/search.in.h: Likewise.
658         * lib/signal.in.h: Likewise.
659         * lib/stdarg.in.h: Likewise.
660         * lib/stdint.in.h: Likewise.
661         * lib/stdio.in.h: Likewise.
662         * lib/stdlib.in.h: Likewise.
663         * lib/string.in.h: Likewise.
664         * lib/strings.in.h: Likewise.
665         * lib/sys_select.in.h: Likewise.
666         * lib/sys_socket.in.h: Likewise.
667         * lib/sys_stat.in.h: Likewise.
668         * lib/sys_time.in.h: Likewise.
669         * lib/sysexits.in.h: Likewise.
670         * lib/time.in.h: Likewise.
671         * lib/unistd.in.h: Likewise.
672         * lib/wchar.in.h: Likewise.
673         * lib/wctype.in.h: Likewise.
674         * modules/arpa_inet (Makefile.am): Also substitute PRAGMA_SYSTEM_HEADER.
675         * modules/fchdir (Makefile.am): Likewise.
676         * modules/fcntl (Makefile.am): Likewise.
677         * modules/float (Makefile.am): Likewise.
678         * modules/iconv_open (Makefile.am): Likewise.
679         * modules/inttypes (Makefile.am): Likewise.
680         * modules/locale (Makefile.am): Likewise.
681         * modules/math (Makefile.am): Likewise.
682         * modules/netinet_in (Makefile.am): Likewise.
683         * modules/search (Makefile.am): Likewise.
684         * modules/signal (Makefile.am): Likewise.
685         * modules/stdarg (Makefile.am): Likewise.
686         * modules/stdint (Makefile.am): Likewise.
687         * modules/stdio (Makefile.am): Likewise.
688         * modules/stdlib (Makefile.am): Likewise.
689         * modules/string (Makefile.am): Likewise.
690         * modules/strings (Makefile.am): Likewise.
691         * modules/sys_select (Makefile.am): Likewise.
692         * modules/sys_socket (Makefile.am): Likewise.
693         * modules/sys_stat (Makefile.am): Likewise.
694         * modules/sys_time (Makefile.am): Likewise.
695         * modules/sysexits (Makefile.am): Likewise.
696         * modules/time (Makefile.am): Likewise.
697         * modules/unistd (Makefile.am): Likewise.
698         * modules/wchar (Makefile.am): Likewise.
699         * modules/wctype (Makefile.am): Likewise.
700         Reported by Reuben Thomas <rrt@sc3d.org>.
701
702 2008-08-29  Bruno Haible  <bruno@clisp.org>
703
704         * m4/include_next.m4 (gl_INCLUDE_NEXT): Don't define HAVE_INCLUDE_NEXT
705         any more.
706
707 2008-08-29  Simon Josefsson  <simon@josefsson.org>
708
709         * MODULES.html.sh (Misc): Add bitrotate.
710
711         * modules/bitrotate: New file.
712
713         * lib/bitrotate.h: New file.
714
715         * modules/bitrotate-tests: New file.
716
717         * tests/test-bitrotate.c: New file.
718
719         * modules/crypto/gc-arctwo, modules/crypto/arctwo: Add dependency
720         on the bitrotate module.
721
722         * lib/arctwo.c: Use new bitrotate module.
723
724 2008-08-29  Jim Meyering  <meyering@redhat.com>
725
726         bootstrap: merge changes from coreutils
727         * build-aux/bootstrap (cp_mark_as_generated): Preserve perms
728         of copied files.  Remove a kludge, now that this is fixed.
729         * build-aux/bootstrap: Fix unportable expr usage. (by Ralf Wildenhues)
730         * build-aux/bootstrap: Remove $bt and $bt2 also when not using gettext.
731         * build-aux/bootstrap: Remove coreutils-specific SUBDIRS-related code.
732
733 2008-08-29  Bruno Haible  <bruno@clisp.org>
734
735         * MODULES.html.sh: Remove --cvs-urls option.
736
737 2008-08-28  Jose E. Marchesi  <jemarch@gnu.org>  (tiny change)
738
739         maint.mk: adjust to file name change
740         * top/maint.mk: s/Makefile.cfg/cfg.mk/.
741
742 2008-08-28  Jim Meyering  <meyering@redhat.com>
743
744         * modules/getndelim2 (License): Relicense to LGPLv2+.
745         Approved by Richard Stallman for the version of 1995, and by
746         Paul Eggert, Bruno Haible, Eric Blake for their contributions.
747
748 2008-08-27  Paolo Bonzini  <bonzini@gnu.org>
749
750         * lib/getdelim.c (flockfile, funlockfile): Make all of them
751         dummy if one is not available.  Do not touch them if
752         USE_UNLOCKED_IO, instead letting unlocked-io.h do that.
753         (getc_maybe_unlocked): New.
754         * m4/getdelim.m4 (gl_PREREQ_GETDELIM): Check for getc_unlocked.
755
756 2008-08-26  Eric Blake  <ebb9@byu.net>
757
758         doc/INSTALL: resync from autoconf
759         * doc/Makefile (INSTALL, INSTALL.ISO, INSTALL.UTF-8): Simplify.
760         (INSTALL_PRELUDE): Delete; this is done more efficiently by
761         moving...
762         * install.texi [!autoconf]: ...here.  Resync from autoconf.
763         * INSTALL: Regenerate.
764         * INSTALL.ISO: New file.
765         * INSTALL.UTF-8: Likewise.
766
767 2008-08-26  Jim Meyering  <meyering@redhat.com>
768
769         GNUmakefile: cfg.mk definitions override default autoreconf-rerun policy
770         * top/GNUmakefile (_is-dist-target, _is-install-target): Make
771         these definitions conditional, so that they may be overridden, too.
772
773 2008-08-26  Bruno Haible  <bruno@clisp.org>
774
775         Generate INSTALL file variants with prettier quotes.
776         * doc/Makefile (INSTALL_PRELUDE): New macro.
777         (INSTALL): Use it.
778         (INSTALL.ISO, INSTALL.UTF-8): New rules.
779
780 2008-08-26  Bruno Haible  <bruno@clisp.org>
781
782         Run makeinfo in an English locale.
783         * doc/Makefile (MAKEINFO): New variable.
784
785 2008-08-26  Bruno Haible  <bruno@clisp.org>
786
787         * doc/Makefile (INSTALL): Use --no-validate instead of --no-warn.
788         Suggested by Eric Blake.
789
790 2008-08-25  Bruno Haible  <bruno@clisp.org>
791
792         * doc/Makefile (INSTALL): Generate with @firstparagraphindent set.
793
794 2008-08-25  Eric Blake  <ebb9@byu.net>
795
796         c-stack: test that stack overflow can be caught
797         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Also check
798         that platform allows handling stack overflow; at least OS/2 EMX
799         has sigaltstack, but crashes before transferring control to
800         handler on stack overflow.
801         * lib/c-stack.c [HAVE_SIGALTSTACK]: Adjust conditions to also
802         check for HAVE_STACK_OVERFLOW_HANDLING.
803         Reported by Elbert Pol.
804
805 2008-08-25  Bruno Haible  <bruno@clisp.org>
806
807         * doc/posix-functions/strftime.texi: Fix description of strftime
808         module.
809
810 2008-08-24  Bruno Haible  <bruno@clisp.org>
811
812         * tests/uniwidth/test-uc_width2.c: New file.
813         * tests/uniwidth/test-uc_width2.sh: New file.
814         * modules/uniwidth/width-tests (Files): Add the new files.
815         (TESTS): Add uniwidth/test-uc_width2.sh.
816         (TESTS_ENVIRONMENT): New variable.
817         (check_PROGRAMS): Add test-uc_width2.
818         (test_uc_width2_SOURCES): New variable.
819
820         Fix uc_width(0x00AB) bug, introduced on 2007-07-08.
821         * lib/uniwidth/width.c (nonspacing_table_data): Set bit for 0x00AD,
822         not 0x00AB.
823         Reported by Alexander V. Lukyanov <lav@netis.ru>.
824
825 2008-08-22  Eric Blake  <ebb9@byu.net>
826
827         test-lock, test-tls: mention why a test is skipped
828         * tests/test-lock.c (main) [!USE_*_THREADS]: Print why test is
829         skipped.
830         * tests/test-tls.c (main) [!USE_*_THREADS]: Likewise.
831
832         count-one-bits: relax license
833         * modules/count-one-bits (License): Relicense to LGPLv2+.
834         Suggested by Ludovic Courtès, approved by Ben Pfaff.
835
836 2008-08-22  Andreas Schwab  <schwab@suse.de>
837
838         * m4/obstack-printf-posix.m4 (gl_FUNC_OBSTACK_PRINTF_POSIX):
839         Remove spurious space in assignment.
840
841 2008-08-21  Simon Josefsson  <simon@josefsson.org>
842
843         * m4/autobuild.m4: Use TZ=UTC0 instead of TZ=UTC.  Reported by
844         Paul Eggert <eggert@CS.UCLA.EDU>.
845
846 2008-08-20  Paolo Bonzini  <bonzini@gnu.org>
847
848         * modules/gettext: Add m4/threadlib.m4.
849
850 2008-08-19  Eric Blake  <ebb9@byu.net>
851
852         test-c-stack: fix compilation failure on FreeBSD 5.0
853         * tests/test-c-stack.c [HAVE_SETRLIMIT]: Include prerequisite
854         headers before <sys/resource.h>.
855         * doc/posix-headers/sys_resource.texi (sys/resource.h): Document
856         the bug.
857         Reported by Nelson H. F. Beebe.
858
859         strverscmp: migrate from "strverscmp.h" to <string.h>
860         * modules/string (Makefile.am): Add new hooks.
861         * modules/strverscmp (Files): Remove strverscmp.h.
862         (Depends-on): Add string.
863         (configure.ac): Add indicator.
864         (Include): Mention new header.
865         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Provide new
866         defaults.
867         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP): Inform string module of
868         results.
869         * lib/strverscmp.h: Delete.
870         * lib/string.in.h (strverscmp): Provide declaration, when needed.
871         * tests/test-strverscmp.c (includes): Adjust client.
872         * lib/check-version.c (includes): Likewise.
873         * NEWS: Document the change.
874
875         strverscmp: add unit test
876         * modules/strverscmp-tests: New file.
877         * tests/test-strverscmp.c: Likewise.
878
879 2008-08-19  Simon Josefsson  <simon@josefsson.org>
880
881         * lib/gc-gnulib.c: Indentation cleanup.  Add some comments
882         regarding Windows crypto stuff, from Mono.
883
884 2008-08-19  Adam Strzelecki <ono@java.pl>  (tiny change)
885
886         * lib/gc-gnulib.c: Use CRYPT_VERIFY_CONTEXT.  Try to use Intel CSP
887         if present, for intel RND.  Return error on failures.
888
889 2008-08-18  Ben Pfaff  <blp@gnu.org>
890
891         gitlog-to-changelog: give better diagnostic for failed pipe-open
892         * build-aux/gitlog-to-changelog: Improve error message: suggest
893         that the version of Git may be too old.
894
895 2008-08-18  Simon Josefsson  <simon@josefsson.org>
896
897         * m4/autobuild.m4: Use TZ=UTC to avoid time zone complexity.  Use
898         ISO 8601 format.  Suggested by Greg Troxel <gdt@ir.bbn.com>.
899
900 2008-08-18  Bruno Haible  <bruno@clisp.org>
901
902         * lib/glthread/thread.h [USE_SOLARIS_THREADS]: Use thread_in_use(), not
903         pthread_in_use().
904
905 2008-08-18  Bruno Haible  <bruno@clisp.org>
906
907         * lib/glthread/threadlib.c: Include <pthread.h>.
908
909 2008-08-18  Bruno Haible  <bruno@clisp.org>
910
911         * lib/glthread/lock.h [USE_SOLARIS_THREADS]: Fix
912         glthread_recursive_lock_* macros.
913         * lib/glthread/lock.c (glthread_recursive_lock_destroy_multithreaded):
914         Fix syntax error.
915
916 2008-08-18  Bruno Haible  <bruno@clisp.org>
917
918         * lib/glthread/thread.c: Avoid forcing a context switch right after
919         thread creation.
920
921 2008-08-17  Bruno Haible  <bruno@clisp.org>
922
923         * lib/glthread/thread.c: New file, based on code from tests/test-lock.c.
924         * lib/glthread/thread.h: Provide Win32 specific implementation.
925         * modules/thread (Files): Add lib/glthread/thread.c.
926         (Depends-on): Add lock.
927         (Makefile.am): Add glthread/thread.c to lib_SOURCES.
928
929 2008-08-17  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
930
931         New module 'yield'.
932         * modules/yield: New file.
933         * lib/glthread/yield.h: New file.
934         * m4/yield.m4: New file.
935         * MODULES.html.sh (Multithreading): Add yield.
936
937 2008-08-17  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
938
939         New module 'thread'.
940         * modules/thread: New file.
941         * lib/glthread/thread.h: New file.
942         * m4/thread.m4: New file.
943         * MODULES.html.sh (Multithreading): Add thread.
944
945 2008-08-17  Bruno Haible  <bruno@clisp.org>
946
947         * lib/glthread/lock.h: Include <stdlib.h> always.
948         * lib/glthread/tls.h: Likewise.
949         * lib/glthread/cond.h: Likewise.
950
951 2008-08-17  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
952
953         New module 'cond'.
954         * modules/cond: New file.
955         * lib/glthread/cond.h: New file.
956         * lib/glthread/cond.c: New file.
957         * m4/cond.m4: New file.
958         * MODULES.html.sh (Multithreading): Add cond.
959
960 2008-08-16  Eric Blake  <ebb9@byu.net>
961
962         c-stack: fix regression on Irix 5.3 from 2008-06-21
963         * m4/c-stack.m4 (gl_PREREQ_C_STACK): Move check for
964         sa_sigaction...
965         * m4/sigaction.m4 (gl_PREREQ_SIG_HANDLER_H): ...here.
966         (gl_PREREQ_SIGACTION): Depend on sig-handler.h prereq's.
967         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Set the default.
968         * modules/signal (Makefile.am): Use the value.
969         * lib/signal.in.h (sa_sigaction) [HAVE_SIGACTION
970         && !HAVE_STRUCT_SIGACTION_SA_SIGACTION]: Define.
971         * doc/posix-headers/signal.texi (signal.h): Document this
972         portability issue.
973         * doc/posix-functions/sigaction.texi (sigaction): Likewise.
974         Reported by Tom G. Christensen.
975
976 2008-08-17  Bruno Haible  <bruno@clisp.org>
977
978         New module 'threadlib'.
979         * modules/threadlib: New file.
980         * lib/glthread/threadlib.c: New file, extracted from
981         lib/glthread/lock.c.
982         * lib/glthread/lock.c (dummy_thread_func, glthread_in_use): Remove
983         functions.
984         * m4/threadlib.m4: New file, from m4/lock.m4, renaming gl_LOCK to
985         gl_THREADLIB and gl_LOCK_EARLY to gl_THREADLIB_EARLY.
986         * m4/lock.m4 (gl_LOCK_EARLY, gl_LOCK_EARLY_BODY, gl_LOCK_BODY): Remove
987         macros.
988         (gl_LOCK): Just require gl_THREADLIB and perform checks for lock.h.
989         (gl_DISABLE_THREADS): Remove macro.
990         * modules/lock (Files): Remove build-aux/config.rpath.
991         (Depends-on): Remove havelib. Add threadlib.
992         (configure.ac-early): Remove section.
993         * m4/tls.m4 (gl_TLS): Require gl_THREADLIB instead of gl_LOCK.
994         * modules/tls (Depends-on): Remove lock. Add threadlib.
995         (Link): New section, copied from threadlib.
996         * MODULES.html.sh (Multithreading): Add threadlib.
997
998 2008-08-14  Bruno Haible  <bruno@clisp.org>
999
1000         * lib/glthread/lock.h (glthread_lock_lock, glthread_lock_unlock,
1001         glthread_lock_destroy, glthread_rwlock_rdlock, glthread_rwlock_wrlock,
1002         glthread_rwlock_unlock, glthread_rwlock_destroy,
1003         glthread_recursive_lock_lock, glthread_recursive_lock_unlock,
1004         glthread_recursive_lock_destroy): Define as macros always.
1005         * lib/glthread/lock.c (glthread_lock_lock_func): Renamed from
1006         glthread_lock_lock.
1007         (glthread_lock_unlock_func): Renamed from glthread_lock_unlock.
1008         (glthread_lock_destroy_func): Renamed from glthread_lock_destroy.
1009         (glthread_rwlock_rdlock_func): Renamed from glthread_rwlock_rdlock.
1010         (glthread_rwlock_wrlock_func): Renamed from glthread_rwlock_wrlock.
1011         (glthread_rwlock_unlock_func): Renamed from glthread_rwlock_unlock.
1012         (glthread_rwlock_destroy_func): Renamed from glthread_rwlock_destroy.
1013         (glthread_recursive_lock_lock_func): Renamed from
1014         glthread_recursive_lock_lock.
1015         (glthread_recursive_lock_unlock_func): Renamed from
1016         glthread_recursive_lock_unlock.
1017         (glthread_recursive_lock_destroy_func): Renamed from
1018         glthread_recursive_lock_destroy.
1019
1020 2008-08-14  Bruno Haible  <bruno@clisp.org>
1021
1022         * lib/glthread/lock.h: Renamed from lib/lock.h.
1023         * lib/glthread/lock.c: Renamed from lib/lock.c. Update includes.
1024         * lib/glthread/tls.h: Renamed from lib/tls.h.
1025         * lib/glthread/tls.c: Renamed from lib/tls.c. Update includes.
1026         * lib/fstrcmp.c: Update includes.
1027         * lib/strsignal.c: Update includes.
1028         * modules/lock (Files, Makefile.am): Update.
1029         (Include): Change to "glthread/lock.h".
1030         * modules/tls (Files, Makefile.am): Update.
1031         (Include): Change to "glthread/tls.h".
1032         * tests/test-lock.c: Update includes.
1033         * tests/test-tls.c: Update includes.
1034         * NEWS: Mention the renamed header files.
1035
1036 2008-08-11  Jim Meyering  <meyering@redhat.com>
1037
1038         * lib/fts_.h: Fix grammar (insert a missing "is") in a comment.
1039
1040 2008-08-11  Eric Blake  <ebb9@byu.net>
1041
1042         test-c-stack: avoid C99-ism
1043         * tests/test-c-stack.c (main): Fix whitespace, move declaration
1044         before statement.
1045         Reported by Alain Guibert.
1046
1047 2008-08-10  Jim Meyering  <meyering@redhat.com>
1048
1049         ensure that return value of uinttostr et al are not ignored
1050         * lib/inttostr.h (__GNUC_PREREQ): Define.
1051         (__attribute_warn_unused_result__): Define.
1052         (offtostr, imaxtostr, umaxtostr, uinttostr): Apply the attribute.
1053
1054 2008-08-07  Paolo Bonzini  <bonzini@gnu.org>
1055
1056         * lib/lock.c (glthread_recursive_lock_init_multithreaded)
1057         [!PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: Fix typo.
1058
1059 2008-08-07  Jim Meyering  <meyering@redhat.com>
1060
1061         * m4/inet_pton.m4: Fix typo in comment: s/inet_ntop/inet_pton/.
1062
1063         * modules/mkstemp (License): Relicense under LGPLv2+.
1064         * modules/tempname (License): Likewise.
1065
1066 2008-08-06  Bruno Haible  <bruno@clisp.org>
1067
1068         * lib/poll.c (poll): Further micro-optimization.
1069
1070 2008-08-06  Jim Meyering  <meyering@redhat.com>
1071
1072         inet_pton.c: use locale-independent tolower
1073         * lib/inet_pton.c: Include <c-ctype.h> rather than <ctype.h>.
1074         (inet_pton6): Use c_tolower rather than tolower.
1075         * modules/inet_pton (Depends-on): Add c-ctype.
1076
1077 2008-08-06  Paolo Bonzini  <bonzini@gnu.org>
1078
1079         * lib/poll.c (poll): Avoid division when timeout is 0, cache
1080         _SC_OPEN_MAX, avoid repeated access to errno.  Check for nfd < 0.
1081
1082 2008-08-06  Jim Meyering  <meyering@redhat.com>
1083
1084         * modules/inet_pton (License): Relicense under LGPLv2+.
1085
1086 2008-08-03  Bruno Haible  <bruno@clisp.org>
1087
1088         Additional non-aborting API for lock and tls.
1089         * lib/lock.h: Include <errno.h>.
1090         (glthread_lock_init): New macro/function.
1091         (gl_lock_init): Define as wrapper around glthread_lock_init.
1092         (glthread_lock_lock): New macro/function.
1093         (gl_lock_lock): Define as wrapper around glthread_lock_lock.
1094         (glthread_lock_unlock): New macro/function.
1095         (gl_lock_unlock): Define as wrapper around glthread_lock_unlock.
1096         (glthread_lock_destroy): New macro/function.
1097         (gl_lock_destroy): Define as wrapper around glthread_lock_destroy.
1098         (glthread_rwlock_init): New macro/function.
1099         (gl_rwlock_init): Define as wrapper around glthread_rwlock_init.
1100         (glthread_rwlock_rdlock): New macro/function.
1101         (gl_rwlock_rdlock): Define as wrapper around glthread_rwlock_rdlock.
1102         (glthread_rwlock_wrlock): New macro/function.
1103         (gl_rwlock_wrlock): Define as wrapper around glthread_rwlock_wrlock.
1104         (glthread_rwlock_unlock): New macro/function.
1105         (gl_rwlock_unlock): Define as wrapper around glthread_rwlock_unlock.
1106         (glthread_rwlock_destroy): New macro/function.
1107         (gl_rwlock_destroy): Define as wrapper around glthread_rwlock_destroy.
1108         (glthread_recursive_lock_init): New macro/function.
1109         (gl_recursive_lock_init): Define as wrapper around
1110         glthread_recursive_lock_init.
1111         (glthread_recursive_lock_lock): New macro/function.
1112         (gl_recursive_lock_lock): Define as wrapper around
1113         glthread_recursive_lock_lock.
1114         (glthread_recursive_lock_unlock): New macro/function.
1115         (gl_recursive_lock_unlock): Define as wrapper around
1116         glthread_recursive_lock_unlock.
1117         (glthread_recursive_lock_destroy): New macro/function.
1118         (gl_recursive_lock_destroy): Define as wrapper around
1119         glthread_recursive_lock_destroy.
1120         (glthread_once): New macro/function.
1121         (gl_once): Define as wrapper around glthread_once.
1122         Update function declarations.
1123         * lib/lock.c (glthread_rwlock_init_multithreaded): Renamed from
1124         glthread_rwlock_init. Return error code.
1125         (glthread_rwlock_rdlock_multithreaded): Renamed from
1126         glthread_rwlock_rdlock. Return error code.
1127         (glthread_rwlock_wrlock_multithreaded): Renamed from
1128         glthread_rwlock_wrlock. Return error code.
1129         (glthread_rwlock_unlock_multithreaded): Renamed from
1130         glthread_rwlock_unlock. Return error code.
1131         (glthread_rwlock_destroy_multithreaded): Renamed from
1132         glthread_rwlock_destroy. Return error code.
1133         (glthread_recursive_lock_init_multithreaded): Renamed from
1134         glthread_recursive_lock_init. Return error code.
1135         (glthread_recursive_lock_lock_multithreaded): Renamed from
1136         glthread_recursive_lock_lock. Return error code.
1137         (glthread_recursive_lock_unlock_multithreaded): Renamed from
1138         glthread_recursive_lock_unlock. Return error code.
1139         (glthread_recursive_lock_destroy_multithreaded): Renamed from
1140         glthread_recursive_lock_destroy. Return error code.
1141         (glthread_once_call): Make static.
1142         (glthread_once_multithreaded): Renamed from glthread_once.
1143         * lib/tls.h: Include <errno.h>.
1144         (glthread_tls_key_init): New macro/function.
1145         (gl_tls_key_init): Define as wrapper around glthread_tls_key_init.
1146         (glthread_tls_set): New macro/function.
1147         (gl_tls_set): Define as wrapper around glthread_tls_set.
1148         (glthread_tls_key_destroy): New macro/function.
1149         (gl_tls_key_destroy): Define as wrapper around glthread_tls_key_destroy.
1150         Update function declarations.
1151         * lib/tls.c (glthread_tls_get_multithreaded): Renamed from
1152         glthread_tls_get.
1153         Suggested by Yoann Vandoorselaere <yoann@prelude-ids.org>.
1154
1155 2008-08-04  Eric Blake  <ebb9@byu.net>
1156
1157         gnumakefile: use space, not TAB, outside of targets
1158         * top/GNUmakefile (_dummy): Fix whitespace error in prior edit.
1159
1160 2008-08-02  Jim Meyering  <meyering@redhat.com>
1161
1162         getdate.y: avoid locale-dependent date parsing failure
1163         In Turkish locales, getdate would fail to recognize keywords
1164         containing a lowercase "i".  The solution is not to rely on
1165         locale-sensitive case-conversion.
1166         * lib/getdate.y: Include <c-ctype.h> rather than <ctype.h>.
1167         (lookup_word): Use c_toupper in place of toupper.
1168         (yylex, get_date): Use c_ prefixed variants of isspace and isalpha, too.
1169         Reported by Vefa Bicakci <bicave@superonline.com> in
1170         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/14184>.
1171         * modules/getdate (Depends-on): Add c-ctype.
1172
1173 2008-08-02  Bruno Haible  <bruno@clisp.org>
1174
1175         * gnulib-tool (func_import): When updating or creating a .gitignore
1176         file, prepend each added line with a slash, and ignore leading slashes
1177         from the existing lines.
1178         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
1179
1180 2008-08-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1181
1182         Portability fix for GNU make 3.79.1.
1183         * top/GNUmakefile: Avoid 'else COND', which older GNU make
1184         versions do not understand.
1185
1186 2008-08-01  Bruno Haible  <bruno@clisp.org>
1187
1188         Work around bug of HP-UX 10.20 cc with -0.0 literal.
1189         * tests/test-isnanf.h (zero): New variable.
1190         (main): Avoid literal -0.0f.
1191         * tests/test-isnand.h (zero): New variable.
1192         (main): Avoid literal -0.0.
1193         * tests/test-isnanl.h (zero): New variable.
1194         (main): Avoid literal -0.0L.
1195         * tests/test-isnan.c (zerof, zerod, zerol): New variables.
1196         (test_float, test_double, test_long_double): Avoid literals -0.0f,
1197         -0.0, -0.0L.
1198         * tests/test-signbit.c (test_signbitf): Avoid literal -0.0f.
1199         (test_signbitd): Avoid literal -0.0.
1200         (test_signbitl): Avoid literal -0.0L.
1201         * tests/test-ceilf1.c (zero): New variable.
1202         (main): Avoid literal -0.0f.
1203         * tests/test-ceill.c (zero): New variable.
1204         (main): Avoid literal -0.0L.
1205         * tests/test-floorf1.c (zero): New variable.
1206         (main): Avoid literal -0.0f.
1207         * tests/test-floorl.c (zero): New variable.
1208         (main): Avoid literal -0.0L.
1209         * tests/test-roundf1.c (zero): New variable.
1210         (main): Avoid literal -0.0f.
1211         * tests/test-round1.c (zero): New variable.
1212         (main): Avoid literal -0.0.
1213         * tests/test-roundl.c (zero): New variable.
1214         (main): Avoid literal -0.0L.
1215         * tests/test-truncf1.c (zero): New variable.
1216         (main): Avoid literal -0.0f.
1217         * tests/test-trunc1.c (zero): New variable.
1218         (main): Avoid literal -0.0.
1219         * tests/test-truncl.c (zero): New variable.
1220         (main): Avoid literal -0.0L.
1221         * tests/test-frexp.c (zero): New variable.
1222         (main): Avoid literal -0.0.
1223         * tests/test-frexpl.c (zero): New variable.
1224         (main): Avoid literal -0.0L.
1225         * tests/test-ldexpl.c (zero): New variable.
1226         (main): Avoid literal -0.0L.
1227         * tests/test-snprintf-posix.h (have_minus_zero): Avoid literal -0.0.
1228         (zerod, zerol): New variables.
1229         (test_function): Avoid literals -0.0, -0.0L.
1230         * tests/test-sprintf-posix.h (have_minus_zero): Avoid literal -0.0.
1231         (zerod, zerol): New variables.
1232         (test_function): Avoid literals -0.0, -0.0L.
1233         * tests/test-vasnprintf-posix.c (have_minus_zero): Avoid literal -0.0.
1234         (zerod, zerol): New variables.
1235         (test_function): Avoid literals -0.0, -0.0L.
1236         * tests/test-vasprintf-posix.c (have_minus_zero): Avoid literal -0.0.
1237         (zerod, zerol): New variables.
1238         (test_function): Avoid literals -0.0, -0.0L.
1239         * tests/test-strtod.c (zero): New variable.
1240         (main): Avoid literal -0.0.
1241         Reported by Jonathan C. Patschke <jp@centtech.com>.
1242
1243 2008-07-31  Jim Meyering  <meyering@redhat.com>
1244
1245         sha256.h: correct definition of SHA224_DIGEST_SIZE
1246         * lib/sha256.h (SHA224_DIGEST_SIZE): Define to 28, not 24.
1247         Reported by Paulie Pena IV <paulie4@gmail.com>.
1248         Define as 224 / 8, rather than as a literal.
1249         (SHA256_DIGEST_SIZE): Define as 256/8 rather than equivalent literal.
1250         * lib/sha512.h (SHA384_DIGEST_SIZE): Likewise, define as equiv: 384/8.
1251         (SHA512_DIGEST_SIZE): Likewise, define as equivalent quotient: 512/8.
1252
1253 2008-07-31  Bruno Haible  <bruno@clisp.org>
1254
1255         * lib/regex_internal.h (BITSET_WORD_BITS): Make first conditional work
1256         on HP-UX 10.20 with "cc -Ae". Fix second conditional.
1257         Reported by Jonathan Patschke <jp@centtech.com>.
1258
1259 2008-07-31  Bruno Haible  <bruno@clisp.org>
1260
1261         * gnulib-tool (func_import): Make change from 2008-06-23 more robust.
1262         Reported by Paolo Bonzini <bonzini@gnu.org>.
1263
1264 2008-07-30  Eric Blake  <ebb9@byu.net>
1265
1266         test-strtod: allow compilation without -lm
1267         * tests/test-strtod.c (main): Avoid link dependence on fabs.
1268         Reported by Dennis Clarke <blastwave@gmail.com>.
1269
1270 2008-07-28  Jim Meyering  <meyering@redhat.com>
1271
1272         bootstrap: work also when there are no .po files in po/
1273         * build-aux/bootstrap (update_po_files): Complete the change
1274         that I began in bc960df8c789c878f1c1c54a28a3c2648dead8d9.
1275
1276 2008-07-27  Jim Meyering  <meyering@redhat.com>
1277
1278         * users.txt: Add zile.
1279
1280 2008-07-26  Ben Pfaff  <blp@gnu.org>
1281
1282         Add missing dependencies on new m4/exponent[fdl].m4 files.
1283         * modules/isnanf-nolibm: Add m4/exponentf.m4.
1284         * modules/isnand-nolibm: Add m4/exponentd.m4.
1285         * modules/isnanl-nolibm: Add m4/exponentl.m4.
1286         * modules/signbit-tests: Use m4/exponent[fdl].m4 instead of
1287         m4/isnan[fdl].m4, because the macros actually used moved.
1288         Reported by Jim Meyering.
1289
1290 2008-07-14  Ben Pfaff  <blp@gnu.org>
1291
1292         Add isinf module.
1293         * lib/isinf.c: New file.
1294         * lib/math.in.h: Define isinf macro if we have decided to replace
1295         it.
1296         * m4/isinf.m4: New file.
1297         * m4/math_h.m4: Initialize and substitute variables for isinf
1298         module.
1299         * modules/isinf: New file.
1300         * modules/isinf-tests: New file.
1301         * modules/math: Add substitutions for new module.
1302         * tests/test-isinf.c: New file.
1303         * doc/posix-functions/isinf.texi: Mention new module.
1304         * MODULES.html.sh: Mention new module.
1305
1306 2008-07-14  Ben Pfaff  <blp@gnu.org>
1307
1308         Factor out some macros for use by additional modules.
1309         * m4/isnanf.m4 (gl_FLOAT_EXPONENT_LOCATION): Move into new file
1310         exponentf.m4.
1311         * m4/isnand.m4 (gl_DOUBLE_EXPONENT_LOCATION): Move into new file
1312         exponentd.m4.
1313         * m4/isnanl.m4 (gl_LONG_DOUBLE_EXPONENT_LOCATION): Move into new
1314         file exponentl.m4.
1315         * m4/exponentf.m4: New file.
1316         * m4/exponentd.m4: New file.
1317         * m4/exponentl.m4: New file.
1318         * modules/isnanf: Use new file m4/exponentf.m4.
1319         * modules/isnand: Use new file m4/exponentd.m4.
1320         * modules/isnanl: Use new file m4/exponentl.m4.
1321
1322 2008-07-23  Ulrich Drepper  <drepper@redhat.com>
1323
1324         mktime.c: normalize tp->tm_isdst value to -1/0/1.
1325         * lib/mktime.c (__mktime_internal): Normalize tp->tm_isdst value.
1326         Reported by Michael Ringe <Michael.Ringe@gmx.de> in
1327         <http://sourceware.org/bugzilla/show_bug.cgi?id=6723>.
1328
1329         * lib/canonicalize-lgpl.c (__realpath): Avoid buffer overflow after
1330         readlink on platforms without PATH_MAX.
1331
1332 2008-07-21  Eric Blake  <ebb9@byu.net>
1333
1334         Warn, not fail, on stale version.
1335         * top/GNUmakefile (_curr-ver): Tone down previous patch.
1336
1337         Don't allow installation with stale devel version number.
1338         * top/GNUmakefile (_is-install-target): New macro.
1339         (_curr-ver): Forbid installation with stale version number.
1340
1341 2008-07-20  Bruno Haible  <bruno@clisp.org>
1342
1343         * modules/c-stack-tests (Makefile.am): Add LIBSIGSEGV to
1344         TESTS_ENVIRONMENT.
1345         * tests/test-c-stack2.sh: React differently if LIBSIGSEGV is in use.
1346
1347 2008-07-20  Bruno Haible  <bruno@clisp.org>
1348
1349         * lib/c-stack.h (c_stack_action): Add documentation.
1350         * lib/c-stack.c (c_stack_action): Remove incomplete documentation.
1351
1352 2008-07-20  Bruno Haible  <bruno@clisp.org>
1353
1354         * modules/canonicalize-lgpl (License): Relicense under LGPLv2+.
1355         * modules/readlink (License): Likewise.
1356
1357 2008-07-17  Eric Blake  <ebb9@byu.net>
1358
1359         * modules/c-stack (Link): Fix typo.
1360
1361         Make c-stack use libsigsegv, when available.
1362         * modules/c-stack (Depends-on): Add libsigsegv.
1363         * modules/c-stack-tests (Makefile.am): Link with libsigsegv, if
1364         needed.
1365         * lib/c-stack.c (SIGSTKSZ): Define fallback.
1366         (segv_handler, overflow_handler, c_stack_action)
1367         [HAVE_LIBSIGSEGV && !HAVE_XSI_STACK_OVERFLOW_HEURISTIC]: Add new
1368         implementation when libsigsegv is available, but only when using
1369         the library is necessary.
1370         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Add
1371         comment, explaining why XSI check fails on Linux.
1372         (gl_PREREQ_C_STACK): Supply LIBCSTACK, LTLIBCSTACK.
1373         * tests/test-c-stack2.sh: Tweak skip message.
1374         * NEWS: Document new link-time requirements.
1375
1376 2008-07-16  Eric Blake  <ebb9@byu.net>
1377
1378         c-stack: Expose false positives when not using libsigsegv.
1379         * modules/c-stack-tests (Files): Expand test.
1380         * tests/test-c-stack.c (main): Add means to conditionally trigger
1381         non-overflow SIGSEGV.
1382         * tests/test-c-stack2.sh: New file.
1383
1384 2008-07-14  Bruno Haible  <bruno@clisp.org>
1385
1386         * m4/libsigsegv.m4: Remove unneeded AC_PREREQ.
1387         Reported by Eric Blake.
1388
1389 2008-07-14  Sam Steingold  <sds@gnu.org>
1390             Bruno Haible  <bruno@clisp.org>
1391
1392         New module libsigsegv.
1393         * modules/libsigsegv: New file.
1394         * m4/libsigsegv.m4: New file, from GNU clisp sigsegv.m4 with
1395         modifications.
1396         * MODULES.html.sh (Signal handling): New section.
1397
1398 2008-07-14  Bruno Haible  <bruno@clisp.org>
1399
1400         * modules/unictype/ctype-* (Description): Add the word "function".
1401         Improves the resulting doc in MODULES.html.
1402
1403 2008-07-12  Ben Pfaff  <blp@gnu.org>
1404
1405         Add longlong module.
1406         * modules/longlong: New file.
1407
1408 2008-07-12  Bruno Haible  <bruno@clisp.org>
1409
1410         * m4/isnan.m4 (gl_ISNAN): When the replacement is used, set ISNAN_LIBM
1411         to empty.
1412
1413 2008-07-10  Ben Pfaff  <blp@gnu.org>
1414
1415         Add isnan module.
1416         * doc/posix-functions/isnan.texi: Mention new module.
1417         * lib/math.in.h: Define isnan macro if we have decided to replace
1418         it.
1419         * m4/isnan.m4: New file.
1420         * m4/isnanl.m4 (gl_FUNC_ISNANL): Factor out some code into new
1421         macro gl_BUILD_ISNANL so that isnan.m4 can use that functionality
1422         also.
1423         (gl_FUNC_ISNANL_NO_LIBM): Factor out same code, to reduce
1424         redundancy.
1425         * m4/math_h.m4: Initialize and substitute variables for isnan
1426         module.
1427         * modules/isnan: New file.
1428         * modules/isnan-tests: New file.
1429         * modules/math: Add substitutions for new module.
1430         * tests/test-isnan.c: New file.
1431         * MODULES.html.sh: Mention new module.
1432
1433 2008-07-10  Ben Pfaff  <blp@gnu.org>
1434
1435         Add isnanf module.
1436         * lib/isnanf.m4: New file.
1437         * m4/isnanf.m4 (gl_FUNC_ISNANF): New macro.
1438         (gl_HAVE_ISNANF_IN_LIBM): New macro.
1439         (gl_BUILD_ISNANF): New macro used by gl_FUNC_ISNANF,
1440         gl_FUNC_ISNANF_NO_LIBM, and gl_FUNC_ISNAN.
1441         * modules/isnanf: New file.
1442         * modules/isnanf-tests: New file.
1443         * modules/isnanf-nolibm-tests: Add tests/test-isnanf.h to list of
1444         files.
1445         * tests/test-isnanf-nolibm.c: factored most of its contents into
1446         new file tests/test-isnanf.h.
1447         * tests/test-isnanf.h: New file.
1448         * tests/test-isnanf.c: New file.
1449         * MODULES.html.sh: Mention new module.
1450         * doc/glibc-functions/isnanf.texi: Mention new module.
1451
1452 2008-07-10  Ben Pfaff  <blp@gnu.org>
1453
1454         Add isnand module.
1455         * lib/isnand.h: New file.
1456         * m4/isnand.m4 (gl_FUNC_ISNAND): New macro.
1457         (gl_FUNC_ISNAND_NO_LIBM): Split partially into new macro
1458         gl_HAVE_ISNAND_NO_LIBM so that gl_FUNC_ISNAND can use that
1459         functionality also.
1460         (gl_BUILD_ISNAND): New macro used by gl_FUNC_ISNAND,
1461         gl_FUNC_ISNAND_NO_LIBM, and gl_FUNC_ISNAN.
1462         (gl_HAVE_ISNAND_IN_LIBM): New macro.
1463         * modules/isnand: New file.
1464         * modules/isnand-tests: New file.
1465         * modules/isnand-nolibm-tests: Add tests/test-isnand.h to list of
1466         files.
1467         * tests/test-isnand-nolibm.c: factored most of its contents into
1468         new file tests/test-isnand.h.
1469         * tests/test-isnand.h: New file.
1470         * tests/test-isnand.c: New file.
1471         * MODULES.html.sh: Mention new module.
1472
1473 2008-07-10  Ben Pfaff  <blp@gnu.org>
1474
1475         * lib/isnanf.h: Rename lib/isnanf-nolibm.h.
1476         * lib/isnand.h: Rename lib/isnand-nolibm.h.
1477         * tests/test-isnanf.c: Rename tests/test-isnanf-nolibm.c.
1478         * tests/test-isnand.c: Rename tests/test-isnand-nolibm.c.
1479         * modules/isnanf-nolibm: Update references to renamed files.
1480         * modules/isnand-nolibm: Likewise.
1481         * modules/isnanf-nolibm-tests: Likewise.
1482         * modules/isnand-nolibm-tests: Likewise.
1483         * lib/frexp.c: Likewise.
1484         * lib/isfinite.c: Likewise.
1485         * lib/signbitd.c: Likewise.
1486         * lib/signbitf.c: Likewise.
1487         * lib/vasnprintf.c: Likewise.
1488         * tests/test-ceilf1.c: Likewise.
1489         * tests/test-ceilf2.c: Likewise.
1490         * tests/test-floorf1.c: Likewise.
1491         * tests/test-floorf2.c: Likewise.
1492         * tests/test-frexp.c: Likewise.
1493         * tests/test-round1.c: Likewise.
1494         * tests/test-round2.c: Likewise.
1495         * tests/test-roundf1.c: Likewise.
1496         * tests/test-strtod.c: Likewise.
1497         * tests/test-trunc1.c: Likewise.
1498         * tests/test-trunc2.c: Likewise.
1499         * tests/test-truncf1.c: Likewise.
1500         * tests/test-truncf2.c: Likewise.
1501         * NEWS: Mention the renamed header files.
1502
1503 2008-07-11  Jim Meyering  <meyering@redhat.com>
1504
1505         vc-list-files: make the last-resort awk code more portable
1506         * build-aux/vc-list-files: Don't rely on awk's "sub" command.
1507         /bin/awk from OpenSolaris 11's SUNWesu version 2008.03.22.10.56
1508         does not support it.
1509
1510 2008-07-10  Eric Blake  <ebb9@byu.net>
1511
1512         Work with tar's bootstrap.
1513         * gnulib-tool (func_emit_initmacro_end): Use m4_defn in the case
1514         where LIBSOURCES_DIR contains .#bootmp but must not be treated as
1515         an m4 comment.
1516
1517 2008-07-09  Jim Meyering  <meyering@redhat.com>
1518
1519         posix-shell.m4: fix typo that made this test malfunction
1520         * m4/posix-shell.m4: Remove capitalization in variable name.
1521
1522 2008-07-08  Bruno Haible  <bruno@clisp.org>
1523
1524         * m4/onceonly.m4: Update comments.
1525         Reported by Ben Pfaff <blp@cs.stanford.edu>.
1526
1527 2008-07-04  Jim Meyering  <meyering@redhat.com>
1528
1529         * users.txt: Add vc-dwim.
1530         (bison, coreutils): Use the gitweb URL.
1531
1532 2008-07-03  Jim Meyering  <meyering@redhat.com>
1533
1534         * users.txt: Add libffcall.  From Sam Steingold.
1535
1536 2008-07-03  Ondřej Vašík  <ovasik@redhat.com>
1537
1538         getdate.y: do not ignore TZ with relative day, month or year offset
1539         * lib/getdate.y (get_date): Move the tz-handling block to follow the
1540         relative-date-handling, since otherwise, the latter would clobber the
1541         sole output (an updated Start value) of the tz-handling block.
1542         * tests/test-getdate.c: Tests for the fix
1543
1544 2008-07-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1545
1546         Recognize 'foo_LIBRARIES += libgnu.a'.
1547         * gnulib-tool (func_emit_lib_Makefile_am): Recognize if a
1548         makefile snippet has already specified an installation location,
1549         also using '+='.
1550
1551 2008-07-02  Ondřej Vašík  <ovasik@redhat.com>
1552
1553         getdate.y: factor out common actions
1554         * lib/getdate.y (apply_relative_time, set_hhmmss): New functions.
1555         Use them in place of open-coded actions.
1556
1557 2008-07-01  Simon Josefsson  <simon@josefsson.org>
1558
1559         Add self-test for getdate module.
1560         * modules/getdate-tests: New file.
1561         * tests/test-getdate.c: New file.
1562
1563 2008-06-29  Bruno Haible  <bruno@clisp.org>
1564
1565         * gnulib-tool (func_import): Put gnulib-comp.m4 into .cvsignore or
1566         .gitignore.
1567         Reported by Sylvain Beucler <beuc@beuc.net>.
1568
1569 2008-06-29  Bruno Haible  <bruno@clisp.org>
1570
1571         * doc/gnulib-tool.texi (VCS Issues): Mention --no-vc-files option.
1572         * m4/gnulib-tool.m4: Update to match current gnulib-tool.
1573
1574 2008-06-29  Bruno Haible  <bruno@clisp.org>
1575
1576         * gnulib-tool (func_import): Recommend to put gnulib-cache.m4 into
1577         EXTRA_DIST.
1578         Reported by Sylvain Beucler <beuc@beuc.net>.
1579
1580 2008-06-26  Jim Meyering  <meyering@redhat.com>
1581
1582         make several modules depend on the "open" module
1583         This provides slightly increased consistency when opening-for-write
1584         the name of a non-directory spelled with a trailing slash.
1585         * modules/chdir-safer: Likewise.
1586         * modules/chown: Likewise.
1587         * modules/clean-temp: Likewise.
1588         * modules/copy-file: Likewise.
1589         * modules/fchdir: Likewise.
1590         * modules/fcntl-safer: Likewise.
1591         * modules/pipe: Likewise.
1592         * modules/utime: Likewise.
1593         Prompted by Eric Blake and Bruno Haible.
1594
1595 2008-06-24  Andreas Schwab  <schwab@suse.de>
1596
1597         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Don't test whether compound
1598         literals can be used as initializers for global variables.
1599
1600 2008-06-23  Eric Blake  <ebb9@byu.net>
1601
1602         Make gnulib-cache.m4 easier to diff.
1603         * gnulib-tool (func_import): Allow newlines when reading cached
1604         gl_MODULES, and generate newlines when creating gnulib-cache.m4.
1605
1606 2008-06-23  Bruno Haible  <bruno@clisp.org>
1607
1608         * m4/signalblocking.m4 (gl_PREREQ_SIG_HANDLER_H): Remove macro.
1609         (gl_PREREQ_SIGPROCMASK): Don't invoke it.
1610         * m4/sigaction.m4 (gl_PREREQ_SIG_HANDLER_H): New macro, moved here from
1611         m4/signalblocking.m4.
1612         (gl_PREREQ_SIGACTION): Don't invoke it.
1613         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Invoke
1614         gl_PREREQ_SIG_HANDLER_H.
1615         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Likewise.
1616         Don't check for sigaction here.
1617
1618 2008-06-23  Bruno Haible  <bruno@clisp.org>
1619
1620         * lib/fatal-signal.c (fatal_signal_handler): Update comment.
1621         (install_handlers): Don't set the SA_RESETHAND flag.
1622
1623 2008-06-23  Bruno Haible  <bruno@clisp.org>
1624
1625         * m4/sigaction.m4: Comment fixes.
1626         * lib/signal.in.h: Likewise.
1627
1628 2008-06-23  Eric Blake  <ebb9@byu.net>
1629
1630         Fix typo.
1631         * tests/test-sigaction.c (MASK_SA_FLAGS): Add missing operator.
1632
1633         Avoid SA_ namespace.
1634         * tests/test-sigaction.c (MASK_SA_FLAGS): Rename from SA_MASK.
1635         Reported by Ralf Wildenhues.
1636
1637         Avoid test failure due to SA_RESTORER.
1638         * tests/test-sigaction.c (SA_MASK): New macro.
1639         (main): Avoid failing due to extension flags being set.
1640         Reported by Jim Meyering.
1641
1642         Revert use of sig-handler.h in sigprocmask.c.
1643         * modules/sigprocmask (Files): Don't rely on sig-handler.h, since
1644         it requires the existence of struct sigaction.
1645         * lib/sigprocmask.c (handler_t): Restore typedef.
1646         (rpl_signal, old_handlers): Use local type.
1647
1648 2008-06-22  Bruno Haible  <bruno@clisp.org>
1649
1650         * tests/test-stdint.c: Disable the INTMAX_MAX preprocessor test
1651         conditionally.
1652         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
1653
1654 2008-06-22  Bruno Haible  <bruno@clisp.org>
1655
1656         * doc/posix-functions/siginterrupt.texi: Move note.
1657
1658         * lib/signal.in.h (SA_RESTART): New macro.
1659         * lib/sigaction.c: Update comment.
1660
1661         * m4/sigaction.m4 (gl_SIGACTION): Require gl_SIGNAL_H_DEFAULTS.
1662
1663         * m4/signalblocking.m4 (gl_PREREQ_SIG_HANDLER_H): New macro.
1664         (gl_PREREQ_SIGPROCMASK): Invoke it.
1665         * m4/sigaction.m4 (gl_PREREQ_SIGACTION): Likewise.
1666
1667         * lib/nanosleep.c (rpl_nanosleep): Setup newact only when it is needed.
1668
1669         * lib/sigprocmask.c: Update a comment.
1670
1671 2008-06-21  Eric Blake  <ebb9@byu.net>
1672
1673         Use sigaction module rather than signal().
1674         * modules/c-stack (Depends-on): Add sigaction.
1675         * modules/fatal-signal (Depends-on): Likewise.
1676         * modules/nanosleep (Depends-on): Likewise.
1677         * modules/sigprocmask (Files): Add sig-handler.h.
1678         * modules/sigaction (Files): Likewise.
1679         * lib/sig-handler.h (get_handler): New file, suggested by Paul
1680         Eggert.
1681         * lib/c-stack.c (SIGACTION_WORKS): Simplify conditions.
1682         (c_stack_action) [!SIGACTION_WORKS]: Use sigaction, not signal.
1683         * lib/fatal-signal.c (uninstall_handlers, install_handlers)
1684         (init_fatal_signals): Likewise.
1685         * lib/nanosleep.c (rpl_nanosleep): Likewise.
1686         (siginterrupt): Delete fallback.
1687         * lib/sigprocmask.c (handler_t, old_handlers): Use sa_handler_t
1688         instead.
1689         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Drop check for
1690         siginterrupt.
1691
1692         New module sigaction, for mingw.
1693         * modules/sigaction: New module...
1694         * modules/sigaction-tests: ...and its test.
1695         * m4/sigaction.m4: New file.
1696         * lib/sigaction.c: Likewise.
1697         * tests/test-sigaction.c: Likewise.
1698         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Add sigaction variables.
1699         * modules/signal (Makefile.am): Likewise.
1700         * lib/signal.in.h (!@HAVE_SIGACTION@): Define replacements when
1701         needed.
1702         * doc/posix-headers/signal.texi (signal.h): Mention provided
1703         types.
1704         * doc/posix-functions/siginterrupt.texi (siginterrupt): Mention
1705         that sigaction is preferable.
1706         * doc/posix-functions/sigaction.texi (sigaction): Mention new
1707         module.
1708         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
1709         sigaction.
1710
1711         Improve robustness of sigprocmask by overriding signal.
1712         * lib/signal.in.h (rpl_signal): Override signal when sigprocmask
1713         is in use.
1714         * lib/sigprocmask.c (blocked_handler): Reinstall block handler.
1715         (SIGKILL, SIGSTOP): Provide fallbacks.
1716         (rpl_signal): Implement.
1717         (old_handlers, blocked_set): Mark volatile, since sigprocmask and
1718         signal can be called inside handlers.
1719
1720         Fix nanosleep module on mingw.
1721         * modules/nanosleep (Depends-on): Add sys_select.
1722         * lib/nanosleep.c (HAVE_SYS_SELECT_H): Rely on gnulib module.
1723
1724         Fix licensing of sigprocmask.
1725         * modules/raise (License): Relicense as LGPL.
1726
1727 2008-06-21  Bruno Haible  <bruno@clisp.org>
1728
1729         * lib/propername.c (proper_name_utf8): Don't use the transliterated
1730         result if it contains question marks.
1731         Reported by Michael Geng <linux@michaelgeng.de>.
1732
1733 2008-06-19  Bruno Haible  <bruno@clisp.org>
1734
1735         Fix CVS-ism.
1736         * doc/gnulib.texi: Include updated-stamp.texi.
1737         * doc/Makefile (GNULIB_TEXI_FILES): New variable.
1738         (updated-stamp.texi): New rule.
1739         (gnulib.info): Depend on it.
1740         * doc/.gitignore: Add updated-stamp.texi.
1741         Based on a patch by Thien-Thi Nguyen <ttn@gnuvola.org>.
1742
1743 2008-06-19  Bruno Haible  <bruno@clisp.org>
1744
1745         * doc/Makefile (gnulib.info): Update and simplify dependencies.
1746         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
1747
1748 2008-06-19  Eric Blake  <ebb9@byu.net>
1749
1750         Fix VPATH 'make dist' with GNU make and non-VCS tarball.
1751         * top/GNUmakefile (_curr-ver): Don't use $(srcdir) unnecessarily.
1752         Reported by Stepan Kasal.
1753
1754 2008-06-18  Bruno Haible  <bruno@clisp.org>
1755
1756         * lib/fatal-signal.c (init_fatal_signals): Add comment.
1757         Reported by Eric Blake.
1758
1759 2008-06-18  Eric Blake  <ebb9@byu.net>
1760
1761         Work around cygwin 1.5.25 strsignal bug.
1762         * tests/test-strsignal.c: Allow for const char *.
1763         * doc/glibc-functions/strsignal.texi (strsignal): Document the bug.
1764
1765 2008-06-18  Simon Josefsson  <simon@josefsson.org>
1766
1767         * users.txt: Update URL to article and add author/date
1768         information.
1769
1770 2008-06-17  Bruno Haible  <bruno@clisp.org>
1771
1772         New macro gl_DISABLE_THREADS.
1773         * m4/lock.m4 (gl_LOCK_EARLY_BODY): Use value gl_use_threads_default
1774         if the user did not pass --enable-threads or --disable-threads option.
1775         (gl_DISABLE_THREADS): New macro.
1776         Reported by Eric Blake <ebb9@byu.net>.
1777
1778 2008-06-17  Bruno Haible  <bruno@clisp.org>
1779
1780         * lib/tls.h (gl_tls_key_init): Evaluate the destructor argument also
1781         when the macro ignores it.
1782         Based on a patch by Eric Blake <ebb9@byu.net>.
1783
1784 2008-06-17  Bruno Haible  <bruno@clisp.org>
1785
1786         * modules/tls (License): Change to LGPLv2+.
1787         Reported by Eric Blake.
1788
1789 2008-06-17  Eric Blake  <ebb9@byu.net>
1790
1791         Simplify c-stack prerequisites.
1792         * lib/c-stack.c (includes): Remove unused <sys/resource.h>.
1793         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Posix 200x
1794         no longer requires <ucontext.h> to exist.  Optimize setrlimit
1795         check.
1796         (gl_PREREQ_C_STACK): Remove check for unused getcontext and
1797         <sys/resource.h>.
1798
1799         Move c-stack test into testsuite.
1800         * modules/c-stack-tests: New file.
1801         * lib/c-stack.c [DEBUG]: Move test program...
1802         * tests/test-c-stack.c: ...into this new file.  Skip rather than
1803         fail test if sigaltstack is lacking.
1804         * tests/test-c-stack.sh: New driver file.
1805
1806 2008-06-16  Eric Blake  <ebb9@byu.net>
1807
1808         Use raise module consistently.
1809         * modules/fatal-signal (Depends-on): Add raise.
1810         * modules/sigprocmask (Depends-on): Likewise.
1811         * lib/fatal-signal.c (fatal_signal_handler): Rely on raise.
1812         * lib/sigprocmask.c (sigprocmask): Likewise.
1813         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Likewise.
1814         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Likewise.
1815
1816         Fix compliance bug in sigpending.
1817         * lib/sigprocmask.c (sigpending): Return pending array via
1818         parameter, not return value.
1819
1820 2008-06-14  Eric Blake  <ebb9@byu.net>
1821
1822         Improve obstack-printf test code.
1823         * tests/test-obstack-printf.c (test_function): Fix comment, and
1824         simplify usage of obstack_* in macros.  Add a test for coverage.
1825         Reported by Bruno Haible.
1826
1827 2008-06-14  Bruno Haible  <bruno@clisp.org>
1828
1829         * lib/obstack_printf.c (obstack_vprintf): Define the stack-allocated
1830         array size as a constant, not as a const variable.
1831         * m4/obstack-printf.m4 (gl_FUNC_OBSTACK_PRINTF): Require
1832         AC_USE_SYSTEM_EXTENSIONS.
1833         * m4/obstack-printf-posix.m4 (gl_FUNC_OBSTACK_PRINTF_POSIX): Likewise.
1834         Test whether the obstack_printf function actually exists.
1835         * modules/obstack-printf (Depends-on): Add extensions.
1836         (Include): Remove obstack.h.
1837         * modules/obstack-printf-posix (Depends-on): Add extensions.
1838         (Include): Remove obstack.h.
1839
1840 2008-06-13  Eric Blake  <ebb9@byu.net>
1841
1842         Add obstack-printf and obstack-printf-posix modules.
1843         * modules/obstack-printf: New file.
1844         * modules/obstack-printf-posix: Likewise.
1845         * MODULES.html.sh (Misc): Mention them.
1846         * doc/glibc-functions/obstack_printf.texi (obstack_printf):
1847         Likewise.
1848         * doc/glibc-functions/obstack_vprintf.texi (obstack_vprintf):
1849         Likewise.
1850         * modules/stdio (Makefile.am): Accomodate new modules.
1851         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
1852         * lib/stdio.in.h (rpl_obstack_printf, rpl_obstack_vprintf):
1853         Declare.
1854         * lib/obstack_printf.c (obstack_printf, obstack_vprintf): New
1855         functions.
1856         * m4/obstack-printf.m4 (gl_OBSTACK_PRINTF)
1857         (gl_REPLACE_OBSTACK_PRINTF): New macros
1858         * m4/obstack-printf-posix.m4 (gl_OBSTACK_PRINTF_POSIX): Likewise.
1859         * tests/test-obstack-printf.c: New file.
1860         * modules/obstack-printf-tests: Likewise.
1861         * modules/obstack-printf-posix-tests: Likewise.
1862
1863 2008-06-11  Bruno Haible  <bruno@clisp.org>
1864
1865         * m4/open.m4 (gl_FUNC_OPEN): Add test against trailing slash bug.
1866         * lib/open.c: Include errno.h.
1867         (open): Fail when attempting to write to a file that has a trailing
1868         slash.
1869         * tests/test-open.c (main): Test against trailing slash bug.
1870         * doc/posix-functions/open.texi: Mention the trailing slash bug.
1871
1872 2008-06-10  Bruno Haible  <bruno@clisp.org>
1873
1874         * tests/test-vc-list-files-git.sh: Make double use of 'exit'. Needed
1875         for $? to work inside the trap command, with various /bin/sh-s.
1876         * tests/test-vc-list-files-cvs.sh: Likewise.
1877
1878 2008-06-10  Bruno Haible  <bruno@clisp.org>
1879
1880         * lib/acl-internal.h: Don't include gettext.h here.
1881         * lib/set-mode-acl.c: Include gettext.h here.
1882         * lib/copy-acl.c: Likewise.
1883
1884 2008-06-10  Bruno Haible  <bruno@clisp.org>
1885
1886         * lib/wait-process.h (wait_subprocess): Add termsigp argument.
1887         * lib/wait-process.c (wait_subprocess): Likewise.
1888         * lib/execute.h (execute): Add termsigp argument.
1889         * lib/execute.c (execute): Likewise.
1890         * lib/csharpcomp.c (compile_csharp_using_pnet,
1891         compile_csharp_using_mono, compile_csharp_using_sscli): Update.
1892         * lib/csharpexec.c (execute_csharp_using_pnet,
1893         execute_csharp_using_mono, execute_csharp_using_sscli): Update.
1894         * lib/javacomp.c (compile_using_envjavac, compile_using_gcj,
1895         compile_using_javac, compile_using_jikes, is_envjavac_gcj,
1896         is_envjavac_gcj43, is_gcj_present, is_gcj_43, is_javac_present,
1897         is_jikes_present): Update.
1898         * lib/javaexec.c (execute_java_class): Update.
1899         * lib/javaversion.c (execute_and_read_line): Update.
1900         * NEWS: Document the changes.
1901         Reported by Eric Blake.
1902
1903 2008-06-10  Eric Blake  <ebb9@byu.net>
1904
1905         Add missing include.
1906         * tests/test-strstr.c (includes): Add <signal.h>.
1907         * tests/test-strcasestr.c (includes): Likewise.
1908         * tests/test-memmem.c (includes): Likewise.
1909
1910 2008-06-10  Bruno Haible  <bruno@clisp.org>
1911
1912         * lib/wait-process.c (wait_subprocess): Add an assertion.
1913
1914 2008-06-10  Bruno Haible  <bruno@clisp.org>
1915
1916         * lib/wait-process.c (wait_subprocess): Try to fix waitid() based code.
1917
1918 2008-06-10  Bruno Haible  <bruno@clisp.org>
1919
1920         * tests/test-memmem.c (main): Reset SIGALRM to default handling before
1921         using alarm().
1922         * tests/test-strcasestr.c (main): Likewise.
1923         * tests/test-strstr.c (main): Likewise.
1924
1925 2008-06-09  Bruno Haible  <bruno@clisp.org>
1926
1927         Work around the Solaris 10 ACE ACLs ABI change.
1928         * lib/acl-internal.h (acl_nontrivial, acl_ace_nontrivial): Don't
1929         declare if ACL_NO_TRIVIAL is present.
1930         (ACE_ACCESS_ALLOWED_ACE_TYPE, ACE_ACCESS_DENIED_ACE_TYPE,
1931         NEW_ACE_OWNER, NEW_ACE_GROUP, NEW_ACE_IDENTIFIER_GROUP, ACE_EVERYONE,
1932         NEW_ACE_READ_DATA, NEW_ACE_WRITE_DATA, NEW_ACE_EXECUTE): New macros.
1933         * lib/file-has-acl.c (acl_nontrivial, acl_ace_nontrivial): Don't
1934         define if ACL_NO_TRIVIAL is present.
1935         (acl_ace_nontrivial): Detect whether the old or new ABI is in use,
1936         and use the current ABI.
1937         (file_has_acl): Use same #if condition as elsewhere.
1938         * lib/set-mode-acl.c (qset_acl): Detect whether the old or new ABI is
1939         in use, and use the current ABI.
1940         * doc/acl-resources.txt: More doc about newer Solaris 10 versions.
1941         Reported by Jim Meyering.
1942
1943 2008-06-09  Eric Blake  <ebb9@byu.net>
1944
1945         Work around environments that (stupidly) ignore SIGALRM.
1946         * m4/strstr.m4 (gl_FUNC_STRSTR): Reset SIGALRM to default handling
1947         before using alarm().
1948         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
1949         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
1950         Reported by Ian Beckwith <ianb@erislabs.net>.
1951
1952         Produce autobuild blurb earlier in log.
1953         * modules/autobuild (configure.ac-early): Move AB_INIT here.
1954
1955 2008-06-09  Jim Meyering  <meyering@redhat.com>
1956         and Ondřej Vašík  <ovasik@redhat.com>
1957
1958         utimens.c: correct kernel bug work-around
1959         Ondřej Vašík found that the invalid return value of 280 indicates
1960         failure, not success, and the kernel bug we're trying to work
1961         around affects not just the utimensat call, but also the fallback
1962         futimens call.
1963         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT]: Simulate failure,
1964         not success.
1965         [HAVE_FUTIMENS]: Use the same work-around, here.
1966
1967 2008-06-09  Jim Meyering  <meyering@redhat.com>
1968
1969         add more guards around definition of ACE_-related code
1970         * lib/file-has-acl.c (acl_ace_nontrivial): Define only if
1971         ALLOW and ACE_OWNER are also defined.
1972
1973 2008-06-08  Bruno Haible  <bruno@clisp.org>
1974
1975         * lib/acl-internal.h: Add me as co-author.
1976         * lib/file-has-acl.c: Likewise.
1977         * lib/set-mode-acl.c: Likewise.
1978         * lib/copy-acl.c: Likewise.
1979
1980 2008-06-08  Bruno Haible  <bruno@clisp.org>
1981
1982         Add support for AIX ACLs.
1983         * lib/acl-internal.h (acl_nontrivial): New declaration.
1984         * lib/file-has-acl.c (acl_nontrivial): New function.
1985         (file_has_acl): Add implementation using AIX 4 ACL API.
1986         * lib/set-mode-acl.c (qset_acl): Likewise.
1987         * lib/copy-acl.c (qcopy_acl): Likewise.
1988
1989 2008-06-08  Bruno Haible  <bruno@clisp.org>
1990
1991         Add support for HP-UX ACLs.
1992         * lib/acl-internal.h (acl_nontrivial): New declaration.
1993         * lib/file-has-acl.c (acl_nontrivial): New function.
1994         (file_has_acl): Add implementation using HP-UX 11 ACL API.
1995         * lib/set-mode-acl.c (qset_acl): Likewise.
1996         * lib/copy-acl.c (qcopy_acl): Likewise.
1997
1998 2008-06-08  Bruno Haible  <bruno@clisp.org>
1999
2000         Add support for Cygwin ACLs.
2001         * lib/acl-internal.h (MODE_INSIDE_ACL): New macro for Solaris-like API.
2002         * lib/set-mode-acl.c (qset_acl) [!MODE_INSIDE_ACL]: Don't optimize away
2003         the chmod_or_fchmod call.
2004         * lib/copy-acl.c (qcopy_acl) [!MODE_INSIDE_ACL]: Likewise.
2005
2006 2008-06-08  Bruno Haible  <bruno@clisp.org>
2007
2008         Fix bug with setuid modes in Solaris 10+ code.
2009         * lib/set-mode-acl.c (qset_acl): Call chmod_or_fchmod when acl_set
2010         succeeded, when the mode contains some special bits.
2011
2012 2008-06-08  Bruno Haible  <bruno@clisp.org>
2013
2014         Add support for Solaris 7..10 ACLs.
2015         * lib/acl-internal.h (acl_nontrivial, acl_ace_nontrivial): New
2016         declarations.
2017         * lib/file-has-acl.c (acl_nontrivial, acl_ace_nontrivial): New
2018         functions.
2019         (file_has_acl): Add implementation using Solaris 7..10 ACL API.
2020         * lib/set-mode-acl.c (qset_acl): Likewise.
2021         * lib/copy-acl.c (qcopy_acl): Likewise.
2022
2023 2008-06-08  Bruno Haible  <bruno@clisp.org>
2024
2025         * lib/acl-internal.h (acl_extended_nontrivial) [MacOS X]: New
2026         declaration.
2027         * lib/file-has-acl.c (acl_extended_nontrivial) [MacOS X]: New function.
2028         (acl_access_nontrivial): Remove MacOS X case.
2029         (file_has_acl): Use acl_extended_nontrivial.
2030         * lib/copy-acl.c (qcopy_acl): Likewise.
2031
2032 2008-06-08  Bruno Haible  <bruno@clisp.org>
2033
2034         * lib/set-mode-acl.c (qset_acl): Trivial code simplifications.
2035
2036 2008-06-08  Jim Meyering  <meyering@redhat.com>
2037
2038         * modules/acl (Maintainer): Add Bruno Haible.
2039
2040 2008-06-07  Bruno Haible  <bruno@clisp.org>
2041
2042         Improve support for Tru64 ACLs.
2043         * lib/file-has-acl.c (file_has_acl): Don't test the ACL_TYPE_DEFAULT
2044         ACL on OSF/1.
2045
2046 2008-06-07  Bruno Haible  <bruno@clisp.org>
2047
2048         Add support for MacOS X ACLs.
2049         * lib/file-has-acl.c (file_has_acl): Use ACL_TYPE_EXTENDED instead of
2050         ACL_TYPE_ACCESS and ACL_TYPE_DEFAULT.
2051         * lib/set-mode-acl.c (qset_acl): Likewise.
2052         * lib/copy-acl.c (qcopy_acl): Likewise.
2053
2054 2008-06-07  Bruno Haible  <bruno@clisp.org>
2055
2056         Fix memory leak introduced on 2008-05-22.
2057         * lib/set-mode-acl.c (qset_acl) [!MODE_INSIDE_ACL]: Free ACLs after
2058         use.
2059
2060 2008-06-07  Bruno Haible  <bruno@clisp.org>
2061
2062         * lib/set-mode-acl.c (qset_acl): Use acl_init(), not acl_from_text(),
2063         to construct an empty ACL.
2064
2065 2008-06-07  Bruno Haible  <bruno@clisp.org>
2066
2067         * lib/set-mode-acl.c (chmod_or_fchmod): Document return value
2068         precisely.
2069         * lib/copy-acl.c (qcopy_acl): Trivial code simplifications.
2070
2071 2008-06-07  Bruno Haible  <bruno@clisp.org>
2072
2073         * lib/copy-acl.c (qcopy_acl): Make the #if branches independent.
2074         * lib/set-mode-acl.c (qset_acl): Choose better local variable names.
2075
2076 2008-06-07  Bruno Haible  <bruno@clisp.org>
2077
2078         * doc/posix-functions/_setjmp.texi: Explain the use of this function
2079         regardless of POSIX.
2080         * doc/posix-functions/_longjmp.texi: Likewise.
2081         * doc/posix-functions/setjmp.texi: Mention HP-UX as not counting as a
2082         SystemV platform in this case.
2083
2084 2008-06-06  Eric Blake  <ebb9@byu.net>
2085
2086         Document abort() bugs.
2087         * doc/posix-functions/abort.texi (abort): Mention anomalies.
2088
2089         * doc/posix-functions/setjmp.texi (setjmp): Mingw has setjmp.
2090         * doc/posix-functions/sigsetjmp.texi (sigsetjmp): Cygwin has
2091         sigsetjmp.
2092         * doc/posix-functions/siglongjmp.texi (siglongjmp): Cygwin has
2093         siglongjmp, but only as a macro.
2094         * doc/posix-functions/_longjmp.texi (_longjmp): Mention that this
2095         is obsolete.
2096         * doc/posix-functions/_setjmp.texi (_setjmp): Likewise.
2097
2098         Tweak documentation to cover cygwin argz bugs.
2099         * m4/argz.m4 (gl_FUNC_ARGZ): Mention date of last known cygwin
2100         argz bug fix; no code change needed since no cygwin releases
2101         occurred between the last fix and the bug being tested.
2102         * doc/glibc-functions/argz_add.texi (argz_add): Document the argz
2103         module and recently fixed cygwin bugs.
2104         * doc/glibc-functions/argz_add_sep.texi (argz_add_sep): Likewise.
2105         * doc/glibc-functions/argz_append.texi (argz_append): Likewise.
2106         * doc/glibc-functions/argz_count.texi (argz_count): Likewise.
2107         * doc/glibc-functions/argz_create.texi (argz_create): Likewise.
2108         * doc/glibc-functions/argz_create_sep.texi (argz_create_sep):
2109         Likewise.
2110         * doc/glibc-functions/argz_delete.texi (argz_delete): Likewise.
2111         * doc/glibc-functions/argz_extract.texi (argz_extract): Likewise.
2112         * doc/glibc-functions/argz_insert.texi (argz_insert): Likewise.
2113         * doc/glibc-functions/argz_next.texi (argz_next): Likewise.
2114         * doc/glibc-functions/argz_replace.texi (argz_replace): Likewise.
2115         * doc/glibc-functions/argz_stringify.texi (argz_stringify):
2116         Likewise.
2117
2118         Avoid gcc warning on cygwin.
2119         * lib/copy-acl.c (qcopy_acl) [!HAVE_ACL_GET_FILE &&
2120         !ACL_NO_TRIVIAL]: Avoid unused variable.
2121
2122 2008-06-05  Eric Blake  <ebb9@byu.net>
2123
2124         Be tolerant of UNKNOWN version in gnulib-tool test dir.
2125         * top/GNUmakefile (_dummy): Warn rather than reconfigure if
2126         git-version-gen fails to come up with a version.
2127         Reported by Simon Josefsson.
2128
2129 2008-06-05  Jim Meyering  <meyering@redhat.com>
2130             Paul Eggert  <eggert@cs.ucla.edu>
2131
2132         utimens.c: work around a probable Linux kernel bug
2133         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT]: Work around what
2134         appears to be a kernel bug that causes utimensat to return 280
2135         instead of 0, indicating success.
2136
2137 2008-06-04  Bruno Haible  <bruno@clisp.org>
2138
2139         * lib/copy-acl.c (qcopy_acl): Call qset_acl, not set_acl. Fixes
2140         2008-06-01 commit.
2141
2142 2008-06-04  Bruno Haible  <bruno@clisp.org>
2143
2144         * lib/acl-internal.h (acl_access_nontrivial): New declaration.
2145         * lib/file-has-acl.c (acl_access_nontrivial): New function.
2146         (file_has_acl): Use it. Save errno afterwards.
2147         * lib/copy-acl.c (qcopy_acl): Use acl_access_nontrivial.
2148
2149 2008-06-03  Bruno Haible  <bruno@clisp.org>
2150
2151         * lib/file-has-acl.c (file_has_acl): Put Solaris 10 code after POSIX-
2152         draft code. Simplify #ifs.
2153         * lib/set-mode-acl.c (qset_acl): Don't test for symlink if !USE_ACL.
2154         Put Solaris code after POSIX-draft code. Fix comments regarding
2155         Solaris 10, HP-UX. Mention Cygwin.
2156         * lib/copy-acl.c (qcopy_acl): Simplify #ifs.
2157
2158 2008-06-03  Eric Blake  <ebb9@byu.net>
2159
2160         Provide fallback for older kernels.
2161         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT, HAVE_FUTIMENS]:
2162         Provide runtime fallback if kernel lacks support.
2163         Reported by Mike Frysinger.
2164
2165 2008-06-02  Bruno Haible  <bruno@clisp.org>
2166
2167         * lib/acl-internal.h (ACL_NOT_WELL_SUPPORTED): Include EOPNOTSUPP if
2168         it exists.
2169
2170 2008-06-02  Bruno Haible  <bruno@clisp.org>
2171
2172         * lib/acl_entries.c (acl_entries): Rewrite to use acl_get_entry.
2173         * lib/copy-acl.c (qcopy_acl): Update comment.
2174
2175 2008-06-02  Bruno Haible  <bruno@clisp.org>
2176
2177         * lib/acl-entries.h: Enclose most definitions in #ifs for POSIX-draft
2178         like ACL APIs.
2179
2180 2008-06-02  Bruno Haible  <bruno@clisp.org>
2181
2182         * tests/test-file-has-acl.sh: Use different code for Cygwin.
2183         * tests/test-set-mode-acl.sh: Likewise.
2184         * tests/test-copy-acl.sh: Likewise.
2185         * tests/test-copy-file.sh: Likewise.
2186
2187 2008-06-02  Bruno Haible  <bruno@clisp.org>
2188
2189         * tests/test-file-has-acl.sh: Remove unused code.
2190
2191 2008-06-01  Bruno Haible  <bruno@clisp.org>
2192
2193         * lib/copy-acl.c (qcopy_acl): New function, extracted from copy_acl.
2194         (copy_acl): Just a wrapper around qcopy_acl that emits the error
2195         messages.
2196         * lib/set-mode-acl.c (qset_acl): Document return value precisely.
2197
2198 2008-06-01  Bruno Haible  <bruno@clisp.org>
2199
2200         * m4/acl.m4 (gl_FUNC_ACL): Separate the POSIX-like and the Solaris
2201         tests. Test for libpacl, needed for OSF/1. Test for extended ACLs,
2202         needed for MacOS X. Test for HP-UX API. Test for newer and older AIX
2203         APIs.
2204         * modules/acl-tests (configure.ac): Remove tests now contained in
2205         m4/acl.m4.
2206
2207 2008-06-02  Jim Meyering  <meyering@redhat.com>
2208
2209         announce-gen: use a better key-server host name
2210         * build-aux/announce-gen (main): Recommend keys.gnupg.net, since
2211         it may be more consistently reliable.  Suggested by Werner Koch
2212         in <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/13717>.
2213
2214 2008-06-01  Bruno Haible  <bruno@clisp.org>
2215
2216         * lib/stdio-impl.h (fp_ub): Use fp_. Needed for DragonFly BSD.
2217         Reported by Voroskoi Andras <voroskoi@gmail.com>.
2218
2219 2008-06-01  Voroskoi Andras  <voroskoi@gmail.com>  (tiny change)
2220
2221         * lib/stdio-impl.h [__DragonFly__]: Fix typo.
2222
2223 2008-06-01  Bruno Haible  <bruno@clisp.org>
2224
2225         New ACL tests.
2226         * tests/test-file-has-acl.sh: New file.
2227         * tests/test-file-has-acl.c: New file.
2228         * tests/test-set-mode-acl.sh: New file.
2229         * tests/test-set-mode-acl.c: New file.
2230         * tests/test-copy-acl.sh: New file, based on tests/test-copy-file.sh.
2231         * tests/test-copy-acl.c: New file.
2232         * modules/acl-tests: New file, based on modules/copy-file-tests.
2233         * modules/copy-file-tests (Files): Remove tests/test-sameacls.c.
2234         (Depends-on): Add acl-tests.
2235         (configure.ac): Remove checks.
2236         (Makefile.am): Don't create test-sameacls program here any more.
2237
2238 2008-06-01  Bruno Haible  <bruno@clisp.org>
2239
2240         * tests/test-copy-file.sh: Portability fixes for Solaris, HP-UX, IRIX.
2241         * tests/test-sameacls.c: Include progname.h.
2242         (main): Invoke set_program_name. Portability fixes for MacOS X,
2243         Solaris, HP-UX.
2244
2245 2008-06-01  Bruno Haible  <bruno@clisp.org>
2246
2247         * lib/freadahead.c (freadahead) [__DragonFly__]: Use the __sreadahead
2248         function.
2249         Reported by VOROSKOI Andras <voroskoi@gmail.com>.
2250
2251 2008-06-01  Bruno Haible  <bruno@clisp.org>
2252
2253         * modules/rpmatch (Depends-on): Add strdup.
2254
2255 2008-06-01  Bruno Haible  <bruno@clisp.org>
2256
2257         * lib/pipe.c: Include unistd-safer.h.
2258         (create_pipe): Ensure the returned file descriptors are not in {0,1,2}.
2259         * modules/pipe (Depends-on): Add unistd-safer.
2260
2261 2008-05-30  Simon Josefsson  <simon@josefsson.org>
2262
2263         * modules/autobuild (configure.ac): Call AB_INIT.
2264
2265 2008-05-30  Simon Josefsson  <simon@josefsson.org>
2266
2267         * tests/test-getaddrinfo.c: Don't print debug messages by default.
2268         Suggested by Bruno Haible <bruno@clisp.org>.
2269
2270 2008-05-30  Simon Josefsson  <simon@josefsson.org>
2271
2272         * tests/test-base64.c: Cast size_t to unsigned long when invoking
2273         printf.  Use %lu instead of %d.  Reported by Bruno Haible
2274         <bruno@clisp.org>.
2275
2276 2008-05-29  Eric Blake  <ebb9@byu.net>
2277
2278         Prefer new POSIX 200x interfaces over futimesat.
2279         * m4/utimens.m4 (gl_UTIMENS): Check for futimens, utimensat.
2280         * lib/utimens.c (gl_futimens): Use them for nanosecond resolution
2281         when available.
2282         [HAVE_BUGGY_NFS_TIME_STAMPS]: Allow C89 compilation.
2283
2284 2008-05-28  Bruno Haible  <bruno@clisp.org>
2285
2286         * modules/stpcpy (License): Change to LGPLv2+.
2287         Requested by David Lutterkort <dlutter@redhat.com>.
2288
2289 2008-05-27  Bruno Haible  <bruno@clisp.org>
2290
2291         * lib/localename.c (SUBLANG_TIBETAN_BHUTAN): Force value 2. Needed for
2292         current mingw.
2293         Reported by Jose E. Marchesi <jemarch@gnu.org>.
2294
2295 2008-05-27  Bruno Haible  <bruno@clisp.org>
2296
2297         * modules/iconv_open (Link): New section, from module 'iconv'.
2298         * modules/striconv (Link): Likewise.
2299         * modules/striconveh (Link): Likewise.
2300         * modules/xstriconv (Link): Likewise.
2301         * modules/unicodeio (Link): Likewise.
2302         * modules/propername (Link): Likewise.
2303         Reported by Jim Meyering.
2304
2305 2008-05-26  Jim Meyering  <meyering@redhat.com>
2306
2307         sha256: do not artificially restrict buffer length to be < 2^32
2308         * lib/sha256.h (struct sha256_ctx) [buflen]: Change type from
2309         uint32_t to size_t.
2310         * lib/sha256.c (sha256_conclude_ctx): Change type of a local
2311         to match.
2312
2313         avoid unaligned access errors, e.g., on sparc
2314         * lib/sha512.c (sha512_conclude_ctx): Use set_uint64 rather than
2315         direct access through a possibly-unaligned uint64* pointer.
2316         * lib/sha256.c (sha256_conclude_ctx): Use set_uint32 rather than
2317         direct access through a possibly-unaligned uint32* pointer.
2318         Prompted by this patch from Tom "spot" Callaway:
2319         http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/13638
2320
2321         sha512.c: fix typo in comment
2322         * lib/sha512.c (sha512_conclude_ctx): Length is 128-bit, not 64-bit.
2323
2324 2008-05-25  Bruno Haible  <bruno@clisp.org>
2325
2326         * lib/set-mode-acl.c: Renamed from lib/acl.c.
2327         * modules/acl (Files): Add lib/set-mode-acl.c, remove lib/acl.c.
2328         (Makefile.am): Update lib_SOURCES.
2329
2330 2008-05-25  Bruno Haible  <bruno@clisp.org>
2331
2332         * m4/acl.m4 (gl_FUNC_ACL): Don't set LIB_ACL_TRIVIAL.
2333
2334 2008-05-25  Jim Meyering  <meyering@redhat.com>
2335
2336         useless-if-before-free: freed expr may have white-space differences
2337         * build-aux/useless-if-before-free: Recognize cases in which the
2338         freed expression differs from the tested one in embedded white
2339         space, e.g., if (p[i + 1]) free(p[i+1]).  Correct thinko in prev:
2340         $1 was used, so we can't make any regexp shy.  Improved tests now
2341         detect this.
2342
2343         useless-if-before-free: accept white space in the expression.
2344         * build-aux/useless-if-before-free: For now, any white space
2345         in the expression must be identical in the free argument.
2346
2347         useless-if-before-free: efficiency tweak
2348         * build-aux/useless-if-before-free: Make the expression-matching
2349         regexp "shy".
2350         Make the *outer* regexp shy, not the expr-matching one.
2351
2352         update code-in-comment to accept cast of free arg
2353         * build-aux/useless-if-before-free: Update regexp.
2354
2355 2008-05-25  Bruno Haible  <bruno@clisp.org>
2356
2357         * tests/test-sameacls.c: Renamed from tests/test-copy-file-sameacls.c.
2358         * modules/copy-file-tests (Files, Makefile.am): Update.
2359         * tests/test-copy-file.c (func_test_copy): Update.
2360
2361 2008-05-24  Andreas Färber  <andreas.faerber@web.de>  (tiny change)
2362
2363         * lib/stdbool.in.h [__HAIKU__]: Disable __BEOS__ workarounds.
2364
2365 2008-05-23  Bruno Haible  <bruno@clisp.org>
2366
2367         Improve support for ACLs on OSF/1.
2368         * lib/acl.c (qset_acl): For OSF/1, use a string that ends in a comma.
2369         Remove fallback for unknown flavors of ACLs.
2370
2371 2008-05-22  Bruno Haible  <bruno@clisp.org>
2372
2373         Add support for ACLs on OSF/1.
2374         * lib/acl-internal.h (acl_get_fd, acl_set_fd): New inline function
2375         replacements.
2376         (acl_free_text): New macro fallback.
2377         * lib/acl_entries.c (acl_entries): Use acl_free_text instead of
2378         acl_free.
2379         * m4/acl.m4 (gl_FUNC_ACL): Look also in libpacl library. Test for
2380         acl_free_text function. Require AC_C_INLINE.
2381
2382 2008-05-22  Bruno Haible  <bruno@clisp.org>
2383
2384         Make copy_acl work on MacOS X 10.5.
2385         * lib/acl-internal.h (MODE_INSIDE_ACL): New macro.
2386         (ACL_NOT_WELL_SUPPORTED): On MacOS X, also handle ENOENT.
2387         * lib/acl.c (qset_acl): Add different code branch for !MODE_INSIDE_ACL.
2388         If MODE_INSIDE_ACL, don't assume that every system has the same text
2389         representation for ACLs as FreeBSD.
2390         * lib/copy-acl.c (copy_acl): Add support for platforms with
2391         !MODE_INSIDE_ACL.
2392         * lib/file-has-acl.c (file_has_acl): Likewise.
2393         * m4/acl.m4 (gl_FUNC_ACL): Test for some functions that are witness of
2394         FreeBSD, MacOS X, or IRIX, respectively.
2395
2396 2008-05-22  Bruno Haible  <bruno@clisp.org>
2397
2398         * lib/acl.h: Don't include <sys/acl.h>.
2399         (GETACLCNT): Move fallback to lib/acl-internal.h.
2400         * lib/acl-internal.h: Include <sys/acl.h> here.
2401         (GETACLCNT): New macro fallback, moved here from lib/acl.h.
2402
2403 2008-05-22  Bruno Haible  <bruno@clisp.org>
2404
2405         Split off copy_acl function to separate file.
2406         * lib/copy-acl.c: New file, extracted from lib/acl.c.
2407         * lib/acl.c (copy_acl): Moved function to separate file.
2408         * m4/acl.m4 (gl_FUNC_ACL): Remove unconditional AC_LIBOBJs.
2409         * modules/acl (Files): Add lib/copy-acl.c.
2410         (Makefiles.am): Augment lib_SOURCES.
2411
2412 2008-05-22  Bruno Haible  <bruno@clisp.org>
2413
2414         * modules/copy-file-tests: New file.
2415         * tests/test-copy-file.sh: New file.
2416         * tests/test-copy-file.c: New file.
2417         * tests/test-copy-file-sameacls.c: New file.
2418
2419 2008-05-22  Eric Blake  <ebb9@byu.net>
2420
2421         Avoid gcc warning.
2422         * tests/test-memcmp.c (main): Pass NULL indirectly.
2423
2424 2008-05-21  Bruno Haible  <bruno@clisp.org>
2425
2426         Add reference doc about ACLs.
2427         * doc/acl-resources.txt: New file.
2428         * doc/acl-cygwin.txt: New file.
2429
2430 2008-05-21  Bruno Haible  <bruno@clisp.org>
2431
2432         Avoid one more warning from gcc.
2433         * lib/vasnprintf.c (IF_LINT): Update comments.
2434         (VASNPRINTF): Use it also for the 'prefix' array initializer.
2435
2436 2008-05-21  Jim Meyering  <meyering@redhat.com>
2437
2438         avoid a warning from gcc
2439         * lib/vasnprintf.c (IF_LINT): Define.
2440         (scale10_round_decimal_long_double):
2441         Use it to avoid a "may be used uninitialized" warning.
2442         (scale10_round_decimal_double): Likewise.
2443
2444 2008-05-21  Simon Josefsson  <simon@josefsson.org>
2445
2446         * m4/memcmp.m4: When cross-compiling, assume memcmp works if it is
2447         declared.
2448
2449 2008-05-20  Bruno Haible  <bruno@clisp.org>
2450
2451         * tests/test-memcmp.c (main): Test also the sign of the result. Test
2452         against two known bugs; code taken from autoconf's AC_FUNC_MEMCMP.
2453
2454 2008-05-20  Simon Josefsson  <simon@josefsson.org>
2455
2456         * modules/memcmp-tests: New file.
2457         * tests/test-memcmp.c: New file.
2458
2459 2008-05-19  Bruno Haible  <bruno@clisp.org>
2460
2461         * modules/propername (Notice, configure.ac): Put quoted "..." into
2462         --keyword option.
2463         * lib/propername.h: Update comments accordingly.
2464         Reported by Eric Blake.
2465
2466 2008-05-19  Martin Lambers  <marlam@marlam.de>  (tiny change)
2467
2468         * modules/getpass-gnu (Depends-on): Add fseeko.
2469
2470 2008-05-19  Simon Josefsson  <simon@josefsson.org>
2471
2472         * modules/base64-tests: New file.
2473
2474 2008-05-19  Bo Borgerson <gigabo@gmail.com>
2475
2476         * lib/base64.c (base64_decode_ctx): If a decode context structure
2477         was passed in use it to ignore newlines.  If a context structure
2478         was _not_ passed in, continue to treat newlines as garbage (this
2479         is the historical behavior).  Formerly base64_decode.
2480         (base64_decode_alloc_ctx): Formerly base64_decode_alloc.  Now
2481         takes a decode context structure.
2482         * lib/base64.h (base64_decode): Macro for four-argument calls.
2483         (base64_decode_alloc): Likewise.
2484         * lib/base64.c (base64_decode_ctx): If a decode context structure
2485         was passed in use it to ignore newlines.  If a context structure
2486         was _not_ passed in, continue to treat newlines as garbage (this
2487         is the historical behavior).  Formerly base64_decode.
2488         (base64_decode_alloc_ctx): Formerly base64_decode_alloc.  Now
2489         takes a decode context structure.
2490         * lib/base64.h (base64_decode): Macro for four-argument calls.
2491         (base64_decode_alloc): Likewise.
2492
2493 2008-05-19  Jim Meyering  <meyering@redhat.com>
2494
2495         avoid a warning from gcc
2496         * lib/trim.c (IF_LINT): Define.
2497         (trim2): Use it to avoid a "may be used uninitialized" warning.
2498
2499         Fix doc typo.
2500         * doc/glibc-functions/getpass.texi (getpass): s/PATH_MAX/PASS_MAX/.
2501
2502 2008-05-19  Bruno Haible  <bruno@clisp.org>
2503
2504         * doc/glibc-functions/getpass.texi: Document limits of other
2505         implementations.
2506
2507 2008-05-19  Simon Josefsson  <simon@josefsson.org>
2508             Bruno Haible <bruno@clisp.org>
2509
2510         * doc/glibc-functions/getpass.texi: Document gnulib implementation.
2511
2512 2008-05-18  Bruno Haible  <bruno@clisp.org>
2513
2514         * modules/propername: New file, from GNU gettext.
2515         * lib/propername.h: New file, from GNU gettext.
2516         * lib/propername.c: New file, from GNU gettext.
2517         * MODULES.html.sh (Internationalization functions): Add propername.
2518
2519 2008-05-16  Jim Meyering  <meyering@redhat.com>
2520             Bruno Haible  <bruno@clisp.org>
2521
2522         Avoid some warnings from "gcc -Wshadow".
2523         * lib/vasnprintf.c (exp, remainder): Define to different identifiers.
2524
2525 2008-05-15  Eric Blake  <ebb9@byu.net>
2526
2527         Extend previous patch to cygwin 1.7.0.
2528         * m4/memmem.m4 (gl_FUNC_MEMMEM): When cross-compiling, assume a
2529         fast implementation in cygwin >= 1.7.0.
2530         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
2531         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
2532
2533 2008-05-15  Bruno Haible  <bruno@clisp.org>
2534
2535         * m4/memmem.m4 (gl_FUNC_MEMMEM): When cross-compiling, assume a fast
2536         implementation in glibc >= 2.9.
2537         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
2538         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
2539
2540 2008-05-15  Bruno Haible  <bruno@clisp.org>
2541
2542         * MODULES.html.sh (Internationalization functions): Remove linebreak.
2543         (Unicode string functions): Add unilbrk/*.
2544         Reported by Karl Berry.
2545
2546 2008-05-15  Eric Blake  <ebb9@byu.net>
2547
2548         Fix violation of <stdbool.h> replacement in regex.
2549         * lib/regcomp.c (re_compile_internal): Avoid implicit cast to bool.
2550         * lib/regexec.c (re_search_internal): Likewise.
2551         Reported by Heinrich Mislik <Heinrich.Mislik@univie.ac.at>.
2552
2553 2008-05-15  Jim Meyering  <meyering@redhat.com>
2554
2555         avoid distracting test output when git or cvs is not found
2556         * tests/test-vc-list-files-cvs.sh: Suppress 'init' error output.
2557         * tests/test-vc-list-files-git.sh: Likewise.
2558
2559 2008-05-15  Eric Blake  <ebb9@byu.net>
2560
2561         Glibc finally accepted the memmem speedup code, bugzilla #5514.
2562         * doc/glibc-functions/memmem.texi (memmem): Mention last broken
2563         glibc version.
2564         * doc/glibc-functions/strcasestr.texi (strcasestr): Likewise.
2565         * doc/posix-functions/strstr.texi (strstr): Likewise.
2566         * lib/str-two-way.h (MAX): Sychronize with glibc.
2567
2568 2008-05-15  Paolo Bonzini  <bonzini@gnu.org>
2569
2570         * lib/regcomp.c (optimize_utf8): Add a note on why we test
2571         opr.ctx_type.
2572         (calc_first): Initialize constraint field.
2573         (duplicate_node_closure): Use it instead of special casing ANCHORS.
2574         Fix grammar.
2575         (duplicate_node): Merge constraint field for all node types.
2576         (calc_eclosure_iter): Look at constraint field for all node types.
2577         * lib/regex_internal.c (create_cd_newstate): Don't look at
2578         opr.ctx_type.
2579
2580 2008-05-14  Bruno Haible  <bruno@clisp.org>
2581
2582         Help GCC to do better code generation.
2583         * lib/eealloc.h (eemalloc) [GCC >= 3]: Declare with attribute 'malloc'.
2584         * lib/pagealign_alloc.h (pagealign_alloc, pagealign_xalloc): Likewise.
2585         * lib/xalloc.h (ATTRIBUTE_MALLOC): New macro.
2586         (xmalloc, xzalloc, xcalloc, xmemdup, xstrdup, xnmalloc, xcharalloc):
2587         Declare with attribute 'malloc' if supported.
2588
2589 2008-05-14  Lasse Collin  <lasse.collin@tukaani.org>
2590
2591         use "echo STR|wc -c" rather than unportable "expr length STR"
2592         * build-aux/mktempd (mktempd): Vendor-supplied expr from at least
2593         OpenBSD 4.3 and Solaris 10 do not honor expr's "length" function.
2594
2595 2008-05-14  Jim Meyering  <meyering@redhat.com>
2596
2597         use dd ibs=$n count=1 ... rather than less-portable head -c$n
2598         * build-aux/mktempd (rand_bytes): head's -cN option is not accepted
2599         by Solaris 10's /bin/head or by the one from HP-UX 11.x.
2600         Reported in http://sourceforge.net/forum/message.php?msg_id=4960334
2601         via Collin Lasse.
2602
2603 2008-05-14  Eric Blake  <ebb9@byu.net>
2604
2605         Avoid quadratic growth in gl_LIBSOURCES.
2606         * gnulib-tool (func_emit_initmacro_done): s/\(m4_append\)_uniq/\1/.
2607         Suggested by Bruno Haible.
2608
2609         Test xmemdup0.
2610         * modules/xmemdup0-tests: New file.
2611         * tests/test-xmemdup0.c: Likewise.
2612
2613 2008-05-13  Eric Blake  <ebb9@byu.net>
2614
2615         Split xmemdup0 into its own module.
2616         * modules/xmemdup0: New file.
2617         * lib/xmemdup0.h: Likewise.
2618         * lib/xmemdup0.c: Likewise.
2619         * MODULES.html.sh (Memory management functions): Add xmemdup0.
2620         * lib/xalloc.h (xmemdup0): Remove.
2621         * lib/xmalloc.c (xmemdup0): Likewise.
2622
2623 2008-05-13  Eric Blake  <ebb9@byu.net>
2624             Bruno Haible  <bruno@clisp.org>
2625
2626         Reduce number of forks required during autoconf.
2627         * gnulib-tool (func_emit_initmacro_start): Prepare gl_LIBSOURCES_LIST
2628         and gl_LIBSOURCES_DIR.
2629         (func_emit_initmacro_end): Use them here in a single m4_syscmd...
2630         (func_emit_initmacro_done) <gl_LIBSOURCES>: ...rather than in one
2631         m4_syscmd per file.
2632         <m4_foreach_w>: Move...
2633         * m4/gnulib-common.m4 (m4_foreach_w): ...here.
2634
2635 2008-05-13  Eric Blake  <ebb9@byu.net>
2636
2637         * gnulib-tool: Fix various comment typos.
2638
2639 2008-05-12  Bruno Haible  <bruno@clisp.org>
2640
2641         Tailor the linebreaking algorithm.
2642         * lib/unilbrk/tables.c (unilbrk_table): Change (IS,AL) entry.
2643
2644 2008-05-12  Bruno Haible  <bruno@clisp.org>
2645
2646         Update to Unicode 5.0.0.
2647         * lib/unilbrk/tables.h (LBP_*): Add LBP_WJ, LBP_H2, LBP_H3, LBP_JL,
2648         LBP_JV, LBP_JT. Redistribute values.
2649         (unilbrk_table): Change size.
2650         * lib/unilbrk/tables.c (unilbrk_table): Change size. Update to match
2651         Unicode TR#14 rev. 22.
2652         * lib/unilbrk/gen-lbrk.c (LBP_*): Add LBP_WJ, LBP_H2, LBP_H3, LBP_JL,
2653         LBP_JV, LBP_JT. Redistribute values.
2654         (get_lbp): Update to match Unicode TR#14 rev. 21/22 and Unicode 5.0.0.
2655         (debug_output_lbp, fill_org_lbp, debug_output_org_lbp, output_lbp):
2656         Update.
2657         * lib/unilbrk/lbrkprop1.h: Regenerated.
2658         * lib/unilbrk/lbrkprop2.h: Regenerated.
2659         * lib/unilbrk/u8-possible-linebreaks.c (u8_possible_linebreaks):
2660         Change handling of LBP_CM after LBP_ZW. Update for new value of LBP_BK.
2661         * lib/unilbrk/u16-possible-linebreaks.c (u16_possible_linebreaks):
2662         Likewise.
2663         * lib/unilbrk/u32-possible-linebreaks.c (u32_possible_linebreaks):
2664         Likewise.
2665         * tests/unilbrk/test-u8-possible-linebreaks.c (main): Update expected
2666         result.
2667         * tests/unilbrk/test-u16-possible-linebreaks.c (main): Likewise.
2668         * tests/unilbrk/test-u32-possible-linebreaks.c (main): Likewise.
2669         * tests/unilbrk/test-ulc-possible-linebreaks.c (main): Likewise.
2670         * tests/unilbrk/test-u8-width-linebreaks.c (main): Likewise.
2671         * tests/unilbrk/test-u16-width-linebreaks.c (main): Likewise.
2672         * tests/unilbrk/test-u32-width-linebreaks.c (main): Likewise.
2673
2674 2008-05-11  Bruno Haible  <bruno@clisp.org>
2675
2676         * lib/unilbrk/gen-lbrk.c (output_lbp): Fix whitespace.
2677
2678 2008-05-11  Bruno Haible  <bruno@clisp.org>
2679
2680         * lib/unilbrk/gen-lbrk.c: New file, from GNU gettext (gen-lbrkprop.c).
2681         * modules/unilbrk/gen-lbrk: New file.
2682
2683 2008-05-11  Bruno Haible  <bruno@clisp.org>
2684
2685         * m4/sha256.m4 (gl_SHA256): Require AC_C_INLINE.
2686         * m4/sha512.m4 (gl_SHA512): Likewise.
2687
2688 2008-05-11  Jim Meyering  <meyering@redhat.com>
2689
2690         New modules: crypto/sha256, crypto/sha512 (from coreutils)
2691         * modules/crypto/sha256: New file.
2692         * modules/crypto/sha512: Likewise.
2693         * lib/sha256.c: Likewise.
2694         * lib/sha256.h: Likewise.
2695         * lib/sha512.c: Likewise.
2696         * lib/sha512.h: Likewise.
2697         * lib/u64.h: Likewise.
2698         * m4/sha256.m4: Likewise.
2699         * m4/sha512.m4: Likewise.
2700         * MODULES.html.sh (Cryptographic computations (low-level)): List them.
2701
2702 2008-05-10  Bruno Haible  <bruno@clisp.org>
2703
2704         * MODULES.html.sh (Environment variables <stdlib.h>): Add unsetenv.
2705         (Input/Output <stdio.h>): Add xprintf.
2706         (Signal handling <signal.h>): Add strsignal.
2707         (Cryptographic computations (high-level)): Add crypto/gc-camellia.
2708         (Core language properties): Add func.
2709         (Mathematics <math.h>): Add ceil, floor, frexp-nolibm.
2710         (Support for systems lacking POSIX:2001): Add environ, EOVERFLOW,
2711         strings.
2712         (Enhancements for POSIX:2001 functions): Add iconv_open-utf.
2713         (Input/output): New section.
2714         (File system functions): Add openat-die, stat-macros.
2715         (Networking functions): Add sockets.
2716         (Unicode string functions): Add unictype/*.
2717         (Support for building libraries and executables): Add gperf.
2718         (Support for building documentation): Add agpl-3.0.
2719         (Misc): Add nocrash.
2720
2721 2008-05-10  Bruno Haible  <bruno@clisp.org>
2722
2723         * modules/unictype/gen-ctype: New file.
2724
2725 2008-05-10  Jim Meyering  <meyering@redhat.com>
2726
2727         Make chdir-safer.c more efficient on a system with no symlinks.
2728         * lib/chdir-safer.c (chdir_no_follow): Skip lstat and fstat calls
2729         also if ELOOP is zero.  Suggested by Bruno Haible.
2730
2731         Make chdir-safer.c slightly safer.
2732         * lib/chdir-safer.c (chdir_no_follow): Test HAVE_WORKING_O_NOFOLLOW,
2733         not O_NOFOLLOW, in case the latter is nonzero and open ignores it.
2734
2735         Avoid compile failure on systems without ELOOP (like mingw).
2736         * lib/chdir-safer.c (ELOOP): Define if not already defined.
2737         Reported by Bruno Haible.
2738
2739 2008-05-10  Bruno Haible  <bruno@clisp.org>
2740
2741         * lib/unilbrk/ulc-common.c: Include c-strcaseeq.h instead of streq.h.
2742         (is_utf8_encoding): Use a case-insensitive comparison.
2743         * modules/unilbrk/ulc-common (Depends-on): Add c-strcaseeq. Remove
2744         streq.
2745
2746 2008-05-10  Bruno Haible  <bruno@clisp.org>
2747
2748         * lib/unilbrk/ulc-common.c: Don't include <stdlib.h>.
2749         (iconv_string_length, iconv_string_keeping_offsets): Remove functions.
2750         * lib/unilbrk/ulc-common.h (iconv_string_length,
2751         iconv_string_keeping_offsets): Remove declarations.
2752         * lib/unilbrk/ulc-possible-linebreaks.c: Include <string.h>, uniconv.h.
2753         Don't include <iconv.h>, streq.h, xsize.h.
2754         (ulc_possible_linebreaks): Use u8_conv_from_encoding for doing the
2755         conversion.
2756         * lib/unilbrk/ulc-width-linebreaks.c: Include uniconv.h. Don't include
2757         <iconv.h>, streq.h, xsize.h.
2758         (ulc_width_linebreaks): Use u8_conv_from_encoding for doing the
2759         conversion.
2760         * modules/unilbrk/ulc-common (Depends-on): Remove iconv.
2761         * modules/unilbrk/ulc-possible-linebreaks (Depends-on): Add
2762         uniconv/u8-conv-from-enc. Remove iconv_open, streq, xsize.
2763         * modules/unilbrk/ulc-width-linebreaks (Depends-on): Likewise.
2764
2765 2008-05-10  Bruno Haible  <bruno@clisp.org>
2766
2767         * modules/unilbrk/ulc-width-linebreaks-tests: New file.
2768         * tests/unilbrk/test-ulc-width-linebreaks.c: New file.
2769
2770         * modules/unilbrk/u32-width-linebreaks-tests: New file.
2771         * tests/unilbrk/test-u32-width-linebreaks.c: New file.
2772
2773         * modules/unilbrk/u16-width-linebreaks-tests: New file.
2774         * tests/unilbrk/test-u16-width-linebreaks.c: New file.
2775
2776         * modules/unilbrk/u8-width-linebreaks-tests: New file.
2777         * tests/unilbrk/test-u8-width-linebreaks.c: New file.
2778
2779         * modules/unilbrk/ulc-possible-linebreaks-tests: New file.
2780         * tests/unilbrk/test-ulc-possible-linebreaks.c: New file.
2781
2782         * modules/unilbrk/u32-possible-linebreaks-tests: New file.
2783         * tests/unilbrk/test-u32-possible-linebreaks.c: New file.
2784
2785         * modules/unilbrk/u16-possible-linebreaks-tests: New file.
2786         * tests/unilbrk/test-u16-possible-linebreaks.c: New file.
2787
2788         * modules/unilbrk/u8-possible-linebreaks-tests: New file.
2789         * tests/unilbrk/test-u8-possible-linebreaks.c: New file.
2790
2791 2008-05-10  Bruno Haible  <bruno@clisp.org>
2792
2793         Split up 'linebreak' module.
2794         * lib/unilbrk.h: New file, based on lib/linebreak.h.
2795         * lib/unilbrk/lbrkprop1.h: New file, extracted from lib/lbrkprop.h.
2796         * lib/unilbrk/lbrkprop2.h: New file, renamed from lib/lbrkprop.h with
2797         modifications.
2798         * lib/unilbrk/tables.h: New file, extracted from lib/linebreak.c.
2799         * lib/unilbrk/tables.c: New file, extracted from lib/linebreak.c.
2800         * lib/unilbrk/u8-possible-linebreaks.c: New file, extracted from
2801         lib/linebreak.c.
2802         * lib/unilbrk/u16-possible-linebreaks.c: New file, extracted from
2803         lib/linebreak.c.
2804         * lib/unilbrk/u32-possible-linebreaks.c: New file, extracted from
2805         lib/linebreak.c.
2806         * lib/unilbrk/ulc-common.h: New file, extracted from lib/linebreak.c.
2807         * lib/unilbrk/ulc-common.c: New file, extracted from lib/linebreak.c.
2808         * lib/unilbrk/ulc-possible-linebreaks.c: New file, extracted from
2809         lib/linebreak.c.
2810         * lib/unilbrk/u8-width-linebreaks.c: New file, extracted from
2811         lib/linebreak.c.
2812         * lib/unilbrk/u16-width-linebreaks.c: New file, extracted from
2813         lib/linebreak.c.
2814         * lib/unilbrk/u32-width-linebreaks.c: New file, extracted from
2815         lib/linebreak.c.
2816         * lib/unilbrk/ulc-width-linebreaks.c: New file, extracted from
2817         lib/linebreak.c.
2818         * modules/unilbrk/base: New file.
2819         * modules/unilbrk/tables: New file.
2820         * modules/unilbrk/u8-possible-linebreaks: New file.
2821         * modules/unilbrk/u16-possible-linebreaks: New file.
2822         * modules/unilbrk/u32-possible-linebreaks: New file.
2823         * modules/unilbrk/ulc-common: New file.
2824         * modules/unilbrk/ulc-possible-linebreaks: New file.
2825         * modules/unilbrk/u8-width-linebreaks: New file.
2826         * modules/unilbrk/u16-width-linebreaks: New file.
2827         * modules/unilbrk/u32-width-linebreaks: New file.
2828         * modules/unilbrk/ulc-width-linebreaks: New file.
2829         * lib/linebreak.h: Remove file.
2830         * lib/linebreak.c: Remove file.
2831         * m4/linebreak.m4: Remove file.
2832         * modules/linebreak: Remove file.
2833         * NEWS: Mention the changes.
2834
2835 2008-05-09  Eric Blake  <ebb9@byu.net>
2836
2837         Add xmemdup0.
2838         * lib/xalloc.h (xmemdup0): New prototype and C++ typesafe
2839         implementation.
2840         * lib/xmalloc.c (xmemdup0): New C implementation.
2841
2842 2008-05-08  Bruno Haible  <bruno@clisp.org>
2843
2844         * m4/wctype.m4 (gl_WCTYPE_H): Correct indentation.
2845
2846 2008-05-07  Eric Blake  <ebb9@byu.net>
2847
2848         Support cross-compilation of <wctype.h>.
2849         * m4/wctype.m4 (gl_WCTYPE_H): Fix improper nesting in
2850         AC_CACHE_CHECK.
2851
2852 2008-05-06  Soren Hansen  <soren@ubuntu.com>  (tiny change)
2853
2854         * build-aux/vc-list-files: Add support for bzr.
2855
2856 2008-05-03  Jim Meyering  <meyering@redhat.com>
2857
2858         avoid failed assertion with tight malloc
2859         * tests/test-getndelim2.c: Correct an off-by-one assertion.
2860
2861 2008-05-03  Simon Josefsson  <simon@josefsson.org>
2862
2863         * m4/inet_pton.m4: Set HAVE_DECL_INET_PTON to 0 when declarations
2864         are needed from arpa/inet.h.
2865         * m4/inet_ntop.m4: Likewise, for HAVE_DECL_INET_NTOP.
2866         Reported by Bruno Haible.
2867
2868 2008-05-02  Jim Meyering  <meyering@redhat.com>
2869
2870         avoid compilation error on FreeBSD 6
2871         * tests/test-getaddrinfo.c [!defined EAI_NODATA] (EAI_NODATA): Define.
2872
2873 2008-05-01  Jim Meyering  <meyering@redhat.com>
2874
2875         useless-if-before-free: correct --help's exit status description
2876         * build-aux/useless-if-before-free (usage): Like grep, exit 0
2877         for one or more matches, etc.  Reported by Bruno Haible.
2878
2879         vc-list-files: make the stand-alone gnulib test work
2880         * modules/vc-list-files-tests (configure.ac):
2881         Define and AC_SUBST abs_aux_dir.
2882         (Makefile.am) [TESTS_ENVIRONMENT]: Rather than passing
2883         $(abs_top_srcdir) to each script and having each of them
2884         duplicate the work of setting PATH, set PATH here, using
2885         the new variable, abs_aux_dir instead.
2886         * tests/test-vc-list-files-cvs.sh: Don't set PATH here.
2887         * tests/test-vc-list-files-git.sh: Likewise.
2888         Reported by Bruno Haible.
2889
2890 2008-05-01  Bruno Haible  <bruno@clisp.org>
2891
2892         * lib/getndelim2.c (getndelim2): Fix newsize computation during
2893         reallocation. Rename 'done' to 'found_delimiter'.
2894
2895 2008-05-01  Jim Meyering  <meyering@redhat.com>
2896
2897         vc-list-files: accommodate /bin/sh like the one from Solaris 10
2898         * build-aux/vc-list-files: Use `...`, not $(...).
2899
2900 2008-04-30  Jim Meyering  <meyering@redhat.com>
2901
2902         add tests for vc-list-files
2903         * modules/vc-list-files-tests: New module.
2904         * tests/test-vc-list-files-cvs.sh: New file.
2905         * tests/test-vc-list-files-git.sh: New file.
2906
2907         avoid a warning from gcc
2908         * lib/getndelim2.c (IF_LINT): Define.
2909         (getndelim2): Use it to avoid a "may be used uninitialized" warning.
2910
2911         vc-list-files: work properly with build-aux/cvsu, too
2912         * build-aux/vc-list-files: Hoist the "./"-removing code to apply
2913         to all cvs-based clauses.
2914
2915         vc-list-files: work properly in the CVS+awk case, too
2916         * build-aux/vc-list-files: In the CVS+awk case, remove "./" prefix.
2917
2918         vc-list-files: avoid use of ${*-*} that fails when /bin/sh is dash
2919         * build-aux/vc-list-files: Simplify ${*-*} to $dir, since we no longer
2920         take more than one file argument, so .  Add quotes, just in case $dir
2921         ever contains a shell meta-character.  Prompted by Soren Hansen in
2922         <http://thread.gmane.org/gmane.comp.emulators.libvirt/6221/focus=6240>.
2923
2924 2008-04-29  Eric Blake  <ebb9@byu.net>
2925
2926         Optimize getndelim2 to use block operations when possible.
2927         * modules/getndelim2 (Depends-on): Add stdbool, freadptr,
2928         freadseek, and memchr2.
2929         * lib/getndelim2.c (getndelim2): Use them for block reads.
2930
2931 2008-04-29  Bruno Haible  <bruno@clisp.org>
2932
2933         * m4/inet_ntop.m4 (gl_INET_NTOP): Require gl_USE_SYSTEM_EXTENSIONS.
2934         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
2935         * modules/inet_ntop (Depends-on): Add extensions.
2936         * modules/inet_pton (Depends-on): Likewise.
2937         Reported by Simon Josefsson.
2938
2939 2008-04-29  Jim Meyering  <meyering@redhat.com>
2940
2941         When the is more than one match in a block, match all of them.
2942         * build-aux/useless-if-before-free: Iterate through each block
2943         until there are no more matches.
2944
2945         Fix broken useless-if-before-free script.
2946         * build-aux/useless-if-before-free: Fix typo: missing "?" after
2947         the expression to match cast of argument to free-like function.
2948
2949 2008-04-29  Eric Blake  <ebb9@byu.net>
2950
2951         Use new header.
2952         * lib/getaddrinfo.c (includes): s/"inet_ntop.h"/<arpa/inet.h>/.
2953
2954 2008-04-29  Jim Meyering  <meyering@redhat.com>
2955
2956         Avoid test segfault on x86_64 due to lack of inet_ntop declaration.
2957         * tests/test-getaddrinfo.c: Include <arpa/inet.h>, now guaranteed
2958         by gnulib to exist and to declare e.g., inet_ntop.
2959         Don't include "inet_ntop.h", now removed.
2960
2961         * m4/arpa_inet_h.m4: Remove trailing blanks.
2962
2963 2008-04-29  Eric Blake  <ebb9@byu.net>
2964
2965         Silence valgrind on safe reads beyond potential array bounds.
2966         * lib/rawmemchr.valgrind: New file.
2967         * lib/strchrnul.valgrind: Likewise.
2968         * modules/rawmemchr (Files): Distribute new file.
2969         * modules/strchrnul (Files): Likewise.
2970         Suggested by Bruno Haible.
2971
2972 2008-04-29  Bruno Haible  <bruno@clisp.org>
2973
2974         * lib/arpa_inet.in.h: Include system's <arpa/inet.h> if it exists.
2975         (inet_ntop, inet_pton): Change portability warning's wording.
2976         * m4/arpa_inet_h.m4 (gl_HEADER_ARPA_INET): Set HAVE_ARPA_INET_H.
2977         Invoke gl_CHECK_NEXT_HEADERS.
2978         (gl_ARPA_INET_H_DEFAULTS): Initialize ARPA_INET_H.
2979         * m4/inet_ntop.m4 (gl_INET_NTOP): Require gl_ARPA_INET_H_DEFAULTS and
2980         set ARPA_INET_H.
2981         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
2982         * modules/arpa_inet (Description): No longer only for systems that
2983         lack it.
2984         (Depends-on): Add include_next.
2985         (Makeile.am): Substitute INCLUDE_NEXT, NEXT_ARPA_INET_H,
2986         HAVE_ARPA_INET_H.
2987
2988 2008-04-29  Jim Meyering  <meyering@redhat.com>
2989
2990         * modules/mkdir (License): Re-license as LGPLv2+.
2991
2992 2008-04-29  Bruno Haible  <bruno@clisp.org>
2993
2994         * modules/rawmemchr (Maintainer): Set to Eric.
2995         * modules/strchrnul (Maintainer): Likewise.
2996
2997 2008-04-29  Simon Josefsson  <simon@josefsson.org>
2998
2999         * m4/arpa_inet_h.m4 (gl_ARPA_INET_H_DEFAULTS): Set
3000         HAVE_DECL_INET_NTOP and HAVE_DECL_INET_PTON.
3001
3002         * modules/arpa_inet (arpa/inet.h): Use them.
3003
3004 2008-04-28  Eric Blake  <ebb9@byu.net>
3005
3006         Test getndelim2.
3007         * modules/getndelim2-tests: New file.
3008         * tests/test-getndelim2.c: Likewise.
3009         * lib/getndelim2.c (getndelim2): Never return 0.  Lock the
3010         stream.
3011         * m4/getndelim2.m4 (gl_GETNDELIM2): Check for lock functions.
3012
3013         * MODULES.html.sh: Document new module.
3014
3015 2008-04-20  Bruno Haible  <bruno@clisp.org>
3016
3017         * lib/c-stack.c (die): Use raise.
3018         * modules/c-stack (Depends-on): Add raise.
3019
3020 2008-04-28  Bruno Haible  <bruno@clisp.org>
3021
3022         Expect rpmatch to be declared.
3023         * lib/yesno.c (rpmatch): Remove declaration.
3024
3025         Declare rpmatch.
3026         * lib/stdlib.in.h (rpmatch): New declaration.
3027         * lib/rpmatch.c: Include <stdlib.h> first.
3028         * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Require AC_USE_SYSTEM_EXTENSIONS and
3029         gl_STDLIB_H_DEFAULTS. Set HAVE_RPMATCH.
3030         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_RPMATCH,
3031         HAVE_RPMATCH.
3032         * modules/rpmatch (Depends-on): Add stdlib, extensions.
3033         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
3034         (Include): Set to <stdlib.h>.
3035         * modules/stdlib (Makefile.am): Substitute GNULIB_RPMATCH and
3036         HAVE_RPMATCH.
3037         * NEWS: Document the change.
3038
3039 2008-04-28  Bruno Haible  <bruno@clisp.org>
3040
3041         Change rpmatch to use nl_langinfo when appropriate.
3042         * lib/rpmatch.c: Include stdbool.h, string.h, langinfo.h.
3043         (N_): New macro.
3044         (localized_pattern): New function/macro.
3045         (try): Remove match, nomatch arguments. Copy the pattern into safe
3046         memory before caching it.
3047         (rpmatch): Use localized_pattern. Add translator comments.
3048         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Test for nl_langinfo and YESEXPR.
3049         Suggested by Eric Blake.
3050         * modules/rpmatch (Depends-on): Add stdbool.
3051
3052 2008-04-28  Eric Blake  <ebb9@byu.net>
3053
3054         Add rawmemchr module, matching glibc.
3055         * modules/string (Makefile.am): New indicator.
3056         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Set it.
3057         * lib/string.in.h (rawmemchr): Declare when appropriate.
3058         * modules/rawmemchr: New file.
3059         * m4/rawmemchr.m4: Likewise.
3060         * lib/rawmemchr.c: Likewise.
3061         * modules/rawmemchr-tests: Likewise.
3062         * tests/test-rawmemchr.c: Likewise.
3063         * doc/glibc-functions/rawmemchr.texi (rawmemchr): Document
3064         module.
3065         * modules/strchrnul (Depends-on): Add rawmemchr.
3066         * lib/strchrnul.c (strchrnul): Optimize a corner case.
3067
3068         Whitespace cleanup.
3069         * tests/test-strchrnul.c: Reindent.
3070         * lib/strchrnul.c: Likewise.
3071
3072         Optimize and test strchrnul.
3073         * lib/strchrnul.c (strchrnul): Rewrite to do parallel search.
3074         * modules/strchrnul-tests: New file.
3075         * tests/test-strchrnul.c: Likewise.
3076
3077         Remove intprops dependency.
3078         * modules/memchr (Depends-on): Remove intprops.
3079         * modules/memrchr (Depends-on): Likewise.
3080         * modules/memchr2 (Depends-on): Likewise.
3081         * lib/memchr.c (__memchr): Hand-inline the TYPE_MAXIMUM check.
3082         * lib/memrchr.c (__memrchr): Likewise.
3083         * lib/memrchr2.c (memchr2): Likewise.
3084         Reported by Simon Josefsson.
3085
3086 2008-04-28  Simon Josefsson  <simon@josefsson.org>
3087
3088         * m4/sys_socket_h.m4: Move AC_REQUIRE([AC_C_INLINE]) to top.
3089         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
3090
3091 2008-04-28  Simon Josefsson  <simon@josefsson.org>
3092
3093         * lib/inet_ntop.h, lib/inet_pton.h: Remove files.
3094
3095         * lib/inet_ntop.c: Include arpa/inet.h instead of inet_ntop.h.
3096
3097         * lib/inet_pton.c: Include arpa/inet.h instead of inet_pton.h.
3098
3099         * lib/arpa_inet.in.h [@GNULIB_INET_NTOP@]: Inline inet_ntop.h
3100         declarations.
3101         [@GNULIB_INET_PTON@]: Inline inet_pton.h declarations.
3102
3103         * m4/inet_pton.m4: Don't check for header files.
3104
3105         * m4/inet_ntop.m4: Don't check for header files.
3106
3107 2008-04-28  Simon Josefsson  <simon@josefsson.org>
3108
3109         * m4/sys_socket_h.m4: Require AC_C_INLINE when necessary.
3110         * lib/sys_socket.in.h (setsockopt): Use proper win32 tests (don't
3111         trigger for cygwin).
3112         Reported by Bruno Haible  <bruno@clisp.org>.
3113
3114 2008-04-28  Bruno Haible  <bruno@clisp.org>
3115
3116         * doc/posix-functions/strdup.texi: Mention mingw problem.
3117
3118 2008-04-27  Bruno Haible  <bruno@clisp.org>
3119
3120         * modules/stat-time-tests (Depends-on): Add sleep.
3121         * tests/test-stat-time.c (force_unlink): New function.
3122         (cleanup): Use it.
3123         (test_mtime): Remove the ctime related tests.
3124         (test_ctime): New function, containing the ctime related tests.
3125         (main): Call test_ctime, except on native Windows platforms.
3126
3127 2008-04-27  Bruno Haible  <bruno@clisp.org>
3128
3129         * lib/rpmatch.c (rpmatch): Add some comments.
3130         Reported by James Youngman <jay@gnu.org>.
3131
3132 2008-04-27  Bruno Haible  <bruno@clisp.org>
3133
3134         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Also test the behaviour on
3135         quiet NaNs.
3136
3137 2008-04-27  Bruno Haible  <bruno@clisp.org>
3138
3139         Make test-yesno.sh work on mingw.
3140         * tests/test-yesno.sh: Postprocess the output to convert CR/LF to LF.
3141         * tests/test-yesno.c: Include yesno.h first. Include binary-io.h.
3142         (main): Set stdin to binary mode.
3143         * modules/yesno-tests (Depends-on): Add binary-io.
3144
3145 2008-04-27  Bruno Haible  <bruno@clisp.org>
3146
3147         Fix 'isfinite' on x86, x86_64, ia64 platforms.
3148         * tests/test-isfinite.c (test_isfinitel): Also test the behavior on
3149         argument that lie outside the IEEE 854 domain.
3150         * m4/isfinite.m4 (gl_ISFINITEL_WORKS): New macro.
3151         (gl_ISFINITE): Use it.
3152         * doc/posix-functions/isfinite.texi: Document the fixed bugs.
3153
3154 2008-04-27  Bruno Haible  <bruno@clisp.org>
3155
3156         Allow local renaming in config.h.
3157         * lib/memrchr.c (memrchr): Don't undefine outside libc.
3158
3159 2008-04-27  Bruno Haible  <bruno@clisp.org>
3160
3161         * lib/memchr.c (__memchr): Change type of 'i'.
3162         * lib/memchr2.c (memchr2): Likewise.
3163
3164 2008-04-26  Eric Blake  <ebb9@byu.net>
3165         and Bruno Haible  <bruno@clisp.org>
3166
3167         Optimize and test memrchr.
3168         * modules/memrchr (Depends-on): Add intprops.
3169         * lib/memrchr.c (__memrchr): Avoid false positives in loop.
3170         * modules/memrchr-tests: New file.
3171         * tests/test-memrchr.c: New file.
3172
3173 2008-04-26  Bruno Haible  <bruno@clisp.org>
3174
3175         Add tentative support for DragonFly BSD.
3176         * lib/stdio-impl.h: Add macros for DragonFly BSD.
3177         * lib/fbufmode.c (fbufmode): Update conditionals. Use fp_ instead of
3178         fp.
3179         * lib/fflush.c (clear_ungetc_buffer, disable_seek_optimization,
3180         restore_seek_optimization, update_fpos_cache, rpl_fflush: Likewise.
3181         * lib/fpurge.c (fpurge): Likewise.
3182         * lib/freadable.c (freaadable): Likewise.
3183         * lib/freadahead.c (freadahead): Likewise.
3184         * lib/freading.c (freading): Likewise.
3185         * lib/freadptr.c (freadptr): Likewise.
3186         * lib/freadseek.c (freadptrinc): Likewise.
3187         * lib/fseeko.c (fseeko): Likewise.
3188         * lib/fseterr.c (fseterr): Likewise.
3189         * lib/fwritable.c (fwritable): Likewise.
3190         * lib/fwriting.c (fwriting): Likewise.
3191
3192 2008-04-26  Bruno Haible  <bruno@clisp.org>
3193
3194         * lib/stdio-impl.h: New file.
3195         * lib/fbufmode.c: Include stdio-impl.h.
3196         (fbufmode): Use fp_, remove redundant #defines.
3197         * lib/fflush.c: Include stdio-impl.h.
3198         (clear_ungetc_buffer): Remove redundant #defines.
3199         * lib/fpurge.c: Include stdio-impl.h.
3200         (fpurge): Remove redundant #defines.
3201         * lib/freadable.c: Include stdio-impl.h.
3202         (freadable): Remove redundant #defines.
3203         * lib/freadahead.c: Include stdio-impl.h.
3204         (freadahead): Remove redundant #defines.
3205         * lib/freading.c: Include stdio-impl.h.
3206         (freading): Remove redundant #defines.
3207         * lib/freadptr.c: Include stdio-impl.h.
3208         (freadptr): Remove redundant #defines.
3209         * lib/freadseek.c: Include stdio-impl.h.
3210         (freadptrinc): Remove redundant #defines.
3211         * lib/fseeko.c: Include stdio-impl.h.
3212         (rpl_fseeko): Remove redundant #defines.
3213         * lib/fseterr.c: Include stdio-impl.h.
3214         (fseterr): Remove redundant #defines.
3215         * lib/fwritable.c: Include stdio-impl.h.
3216         (fwritable: Remove redundant #defines.
3217         * lib/fwriting.c: Include stdio-impl.h.
3218         (fwriting): Remove redundant #defines.
3219         * modules/fbufmode (Files): Add lib/stdio-impl.h.
3220         * modules/fflush (Files): Likewise.
3221         * modules/fpurge (Files): Likewise.
3222         * modules/freadable (Files): Likewise.
3223         * modules/freadahead (Files): Likewise.
3224         * modules/freading (Files): Likewise.
3225         * modules/freadptr (Files): Likewise.
3226         * modules/freadseek (Files): Likewise.
3227         * modules/fseeko (Files): Likewise.
3228         * modules/fseterr (Files): Likewise.
3229         * modules/fwritable (Files): Likewise.
3230         * modules/fwriting (Files): Likewise.
3231
3232 2008-04-26  Bruno Haible  <bruno@clisp.org>
3233
3234         * lib/fflush.c (clear_ungetc_buffer, disable_seek_optimization,
3235         restore_seek_optimization, update_fpos_cache): New functions, extracted
3236         from rpl_fflush.
3237         (rpl_fflush): Use them.
3238         * m4/fflush.m4 (gl_PREREQ_FFLUSH): New macro.
3239         (gl_REPLACE_FFLUSH): Use it.
3240
3241 2008-04-26  Bruno Haible  <bruno@clisp.org>
3242
3243         * tests/test-xstrtol.sh: Work around limitation of an old 'tr' program
3244         on Solaris.
3245         * tests/test-xstrtoimax.sh: Likewise.
3246         * tests/test-xstrtoumax.sh: Likewise.
3247         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
3248
3249 2008-04-26  Bruno Haible  <bruno@clisp.org>
3250
3251         * modules/memchr-tests: New file.
3252         * tests/test-memchr.c; New file, based on tests/test-memchr2.c.
3253
3254 2008-04-26  Eric Blake  <ebb9@byu.net>
3255             Bruno Haible  <bruno@clisp.org>
3256
3257         * lib/memchr.c: Include intprops.h.
3258         (__memchr): Optimize parallel detection of matching bytes. Rename local
3259         variables. Add explanatory comments.
3260
3261 2008-04-26  Bruno Haible  <bruno@clisp.org>
3262
3263         Fix module 'memchr', broken since 2000-10-28.
3264         * lib/memchr.c: Outside glibc, define memchr, not __memchr.
3265
3266 2008-04-26  Bruno Haible  <bruno@clisp.org>
3267
3268         * lib/memchr2.c (memchr2): Rename local variables. Add explanatory
3269         comments.
3270
3271 2008-04-25  Eric Blake  <ebb9@byu.net>
3272
3273         Use native fstatat on cygwin 1.7.0.
3274         * m4/openat.m4 (gl_FUNC_OPENAT): Make sure lstat check is made
3275         first.
3276
3277 2008-04-23  Eric Blake  <ebb9@byu.net>
3278
3279         Improve memchr2 performance.
3280         * lib/memchr2.c (memchr2): Further optimize parallel detection of
3281         NUL bytes.
3282         * modules/memchr2 (Depends-on): Use intprops.h.
3283
3284 2008-04-23  Simon Josefsson  <simon@josefsson.org>
3285
3286         * lib/sys_socket.in.h (setsockopt): Be more type safe by declaring
3287         an inline function instead of a CPP macro.  Patch by Ben Pfaff
3288         <blp@cs.stanford.edu>.
3289
3290 2008-04-23  Simon Josefsson  <simon@josefsson.org>
3291
3292         * lib/arpa_inet.in.h: New file.
3293
3294         * modules/arpa_inet (Files): Add lib/arpa_inet.in.h.
3295         (Makefile.am): Sed in substitute header file.
3296
3297         * m4/arpa_inet_h.m4: Add gl_ARPA_INET_H_DEFAULTS and
3298         gl_ARPA_INET_MODULE_INDICATOR.  Use them.
3299
3300         * modules/inet_ntop (configure.ac): Use
3301         gl_ARPA_INET_MODULE_INDICATOR.
3302
3303         * modules/inet_pton (configure.ac): Use
3304         gl_ARPA_INET_MODULE_INDICATOR.
3305
3306 2008-04-22  Jim Meyering  <meyering@redhat.com>
3307
3308         * modules/verify (License): Re-license as LGPLv2+.
3309
3310 2008-04-22  Simon Josefsson  <simon@josefsson.org>
3311
3312         * lib/sys_socket.in.h: Define setsockopt macro to cast fourth
3313         parameter to void* as per POSIX standard (MinGW uses char*).
3314
3315 2008-04-21  Bruno Haible  <bruno@clisp.org>
3316
3317         * lib/wctype.in.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
3318         iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit):
3319         Define to replacements if REPLACE_ISWCNTRL is 1.
3320         * m4/wctype.m4 (gl_WCTYPE_H): Test whether the isw* functions work.
3321         If not, set WCTYPE_H to nonempty and REPLACE_ISWCNTRL to 1.
3322         * modules/wctype (Makefile.am): Substitute REPLACE_ISWCNTRL.
3323         * doc/posix-functions/iswalnum.texi: Mention the 'wctype' module and
3324         what it fixes.
3325         * doc/posix-functions/iswalpha.texi: Likewise.
3326         * doc/posix-functions/iswblank.texi: Likewise.
3327         * doc/posix-functions/iswcntrl.texi: Likewise.
3328         * doc/posix-functions/iswdigit.texi: Likewise.
3329         * doc/posix-functions/iswgraph.texi: Likewise.
3330         * doc/posix-functions/iswlower.texi: Likewise.
3331         * doc/posix-functions/iswprint.texi: Likewise.
3332         * doc/posix-functions/iswpunct.texi: Likewise.
3333         * doc/posix-functions/iswspace.texi: Likewise.
3334         * doc/posix-functions/iswupper.texi: Likewise.
3335         * doc/posix-functions/iswxdigit.texi: Likewise.
3336         Reported by Alain Guibert.
3337
3338 2008-04-21  Bruno Haible  <bruno@clisp.org>
3339
3340         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Fix typo in last commit.
3341         Patch by Alain Guibert.
3342
3343 2008-04-21  Bruno Haible  <bruno@clisp.org>
3344
3345         Fix test failures on mingw.
3346         * tests/test-xstrtol.c (print_no_progname): New function.
3347         (main): Install it in error_print_progname hook.
3348         * tests/test-xstrtol.sh: Convert CR/LF to NL in output.
3349         * tests/test-xstrtoimax.sh: Likewise.
3350         * tests/test-xstrtoumax.sh: Likewise.
3351
3352 2008-04-21  Bruno Haible  <bruno@clisp.org>
3353
3354         Fix test failure on mingw.
3355         * tests/test-argp-2.sh (func_compare): Remove CRs from sed's output.
3356
3357 2008-04-21  Bruno Haible  <bruno@clisp.org>
3358
3359         * lib/localename.c (SUBLANG_TIBETAN_PRC, SUBLANG_TIBETAN_BHUTAN):
3360         Actually assign a value.
3361
3362 2008-04-20  Bruno Haible  <bruno@clisp.org>
3363
3364         Fix conflict between modules 'canonicalize' and 'canonicalize-lgpl',
3365         take 2.
3366         * lib/canonicalize.c (canonicalize_file_name): Elide if the
3367         'canonicalize-lgpl' module is also used.
3368         * lib/canonicalize-lgpl.c: Undo last change.
3369         * modules/canonicalize-lgpl (configure.ac): Invoke gl_MODULE_INDICATOR.
3370
3371 2008-04-20  Bruno Haible  <bruno@clisp.org>
3372
3373         * lib/mkdir.c (mkdir): Undefine after the includes, not right after
3374         config.h. Provide _mkdir based fallback for mingw.
3375         * lib/sys_stat.in.h (mkdir): Define through an 'extern' declaration
3376         if REPLACE_MKDIR is 1. Otherwise, test for mingw directly.
3377         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Require
3378         gl_SYS_STAT_H_DEFAULTS. When doing the replacement, set REPLACE_MKDIR
3379         rather than defining mkdir in config.h.
3380         * m4/sys_stat_h.m4 (gl_SYS_STAT_MODULE_INDICATOR): New macro.
3381         (gl_SYS_STAT_H_DEFAULTS): New macro.
3382         (gl_HEADER_SYS_STAT_H): Require it. Don't set HAVE_DECL_MKDIR and
3383         HAVE_IO_H any more.
3384         * modules/sys_stat (Makefile.am): Substitute REPLACE_MKDIR instead of
3385         HAVE_DECL_MKDIR and HAVE_IO_H.
3386
3387 2008-04-20  Bruno Haible  <bruno@clisp.org>
3388
3389         * lib/isapipe.c: Port to native Windows platforms.
3390
3391 2008-04-20  Bruno Haible  <bruno@clisp.org>
3392
3393         * lib/gc-gnulib.c: Include <windows.h> before <wincrypt.h>.
3394
3395 2008-04-21  Eric Blake  <ebb9@byu.net>
3396
3397         Work around preprocessors that don't handle UINTMAX_MAX.
3398         * lib/memchr2.c (memchr2): Avoid embedded #if.
3399         Reported by Alain Guibert, fix suggested by Bruno Haible.
3400
3401 2008-04-21  Simon Josefsson  <simon@josefsson.org>
3402
3403         * doc/posix-functions/strftime.texi (strftime): Explain better
3404         Windows incompatibility.  Suggested by Micah Cowan
3405         <micah@cowan.name>.
3406
3407 2008-04-20  Bruno Haible  <bruno@clisp.org>
3408
3409         * modules/uniconv/u32-conv-to-enc (Depends-on): Add unistr/u32-mblen,
3410         unistr/u8-mblen.
3411
3412 2008-04-20  Bruno Haible  <bruno@clisp.org>
3413
3414         Fix test failure on platforms with non-GNU iconv.
3415         * lib/uniconv/u16-conv-to-enc.c (u16_to_u8_lenient): New function.
3416         (U_TO_U8): Use it, rather than u16_to_u8.
3417         * lib/uniconv/u-conv-to-enc.h (FUNC): Allow an incomplete sequence of
3418         units at the end of the input string.
3419         * modules/uniconv/u16-conv-to-enc (Depends-on): Update.
3420
3421 2008-04-20  Bruno Haible  <bruno@clisp.org>
3422
3423         * tests/uniconv/test-u8-conv-to-enc.c (main): Accept result == NULL
3424         when the resulting length is 0.
3425         * tests/uniconv/test-u16-conv-to-enc.c (main): Likewise.
3426
3427 2008-04-20  Bruno Haible  <bruno@clisp.org>
3428
3429         * m4/roundf.m4 (gl_FUNC_ROUNDF): Add test whether roundf actually
3430         works.
3431         * doc/posix-functions/roundf.texi: Mention roundf bug on mingw.
3432
3433 2008-04-20  Bruno Haible  <bruno@clisp.org>
3434
3435         * tests/test-tsearch.c (main): Don't use initstate if it is missing.
3436         * modules/tsearch-tests (configure.ac): Test for initstate function.
3437
3438 2008-04-20  Bruno Haible  <bruno@clisp.org>
3439
3440         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Also provided a substitute
3441         for nlink_t if missing.
3442         * tests/test-sys_stat.c: Check the existence of the nlink_t type.
3443
3444 2008-04-19  Bruno Haible  <bruno@clisp.org>
3445
3446         Work around snprintf bug on Linux libc5.
3447         * m4/printf.m4 (gl_SNPRINTF_SIZE1): New macro.
3448         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
3449         gl_SNPRINTF_SIZE1.
3450         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
3451         * m4/snprintf.m4 (gl_FUNC_SNPRINTF): Likewise. Replace snprintf if
3452         that test failed.
3453         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Likewise.
3454         * lib/vasnprintf.c (USE_SNPRINTF): Set to 0 on Linux libc5 systems.
3455         * modules/snprintf (Files): Add m4/printf.m4.
3456         * modules/vsnprintf (Files): Likewise.
3457         * doc/posix-functions/snprintf.texi: Document Linux libc5 problem.
3458         * doc/posix-functions/vsnprintf.texi: Likewise.
3459
3460 2008-04-19  Bruno Haible  <bruno@clisp.org>
3461
3462         * lib/vasnprintf.c (floorlog10l, floorlog10): Reduce maximum error
3463         from 0.0058 to less than 10^-7.
3464
3465 2008-04-19  Bruno Haible  <bruno@clisp.org>
3466
3467         Fix rounding when a precision is given.
3468         * lib/vasnprintf.c (is_borderline): New function.
3469         (VASNPRINTF): For %e and %g, consider replacing the digits 10....0 with
3470         9...9x.
3471         * tests/test-vasnprintf-posix.c (test_function): Test rounding with %f,
3472         %e, %g.
3473         * tests/test-vasprintf-posix.c (test_function): Likewise.
3474         * tests/test-snprintf-posix.h (test_function): Likewise.
3475         * tests/test-sprintf-posix.h (test_function): Likewise.
3476         * tests/test-fprintf-posix.h (test_function): Test rounding with %f.
3477         * tests/test-printf-posix.h (test_function): Likewise.
3478         * tests/test-printf-posix.output: Update.
3479         Reported by John Darrington <john@darrington.wattle.id.au> via
3480         Ben Pfaff <blp@cs.stanford.edu>.
3481
3482 2008-04-18  Simon Josefsson  <simon@josefsson.org>
3483
3484         * doc/posix-functions/strftime.texi (strftime): Clarify platform.
3485         Suggested by Bruno Haible <bruno@clisp.org>.
3486
3487 2008-04-17  Bruno Haible  <bruno@clisp.org>
3488
3489         * lib/lock.h (gl_lock_destroy, gl_rwlock_destroy,
3490         gl_recursive_lock_destroy): Provide no-op definitions for the dummy
3491         implementation.
3492         Patch by Bruce Merry <bmerry@gmail.com>.
3493
3494 2008-04-17  Simon Josefsson  <simon@josefsson.org>
3495
3496         * doc/posix-functions/strftime.texi (strftime): Mention that %e
3497         doesn't work under Windows.
3498
3499 2008-04-16  Bruno Haible  <bruno@clisp.org>
3500
3501         * lib/localename.c (LANG_MAORI, LANG_QUECHUA, LANG_SOTHO, LANG_UIGHUR):
3502         New macros.
3503         (SUBLANG_BOSNIAN_BOSNIA_HERZEGOVINA_LATIN,
3504         SUBLANG_BOSNIAN_BOSNIA_HERZEGOVINA_CYRILLIC,
3505         SUBLANG_CROATIAN_CROATIA, SUBLANG_CROATIAN_BOSNIA_HERZEGOVINA_LATIN,
3506         SUBLANG_MONGOLIAN_CYRILLIC_MONGOLIA, SUBLANG_MONGOLIAN_PRC,
3507         SUBLANG_QUECHUA_BOLIVIA, SUBLANG_QUECHUA_ECUADOR, SUBLANG_QUECHUA_PERU,
3508         SUBLANG_RUSSIAN_RUSSIA, SUBLANG_RUSSIAN_MOLDAVIA, SUBLANG_SPANISH_US,
3509         SUBLANG_TIBETAN_PRC, SUBLANG_TIBETAN_BHUTAN, SUBLANG_UIGHUR_PRC): New
3510         macros.
3511         (gl_locale_name_from_win32_LANGID): Refine code for Croatian/Bosnian,
3512         Mongolian, Russian, Spanish, Tibetan. Add code for Maori, Quechua,
3513         Northern Sotho, Uighur.
3514
3515 2008-04-16  Bruno Haible  <bruno@clisp.org>
3516
3517         * lib/localename.c (SUBLANG_SINDHI_INDIA): New macro.
3518         (SUBLANG_SINDHI_PAKISTAN): Change value from 1 to 2.
3519         (gl_locale_name_from_win32_LANGID): Fix code for Sindhi.
3520         Reported by Daniel Bergström <daniel@octocode.com>.
3521
3522 2007-12-25  KJK::Hyperion  <hackbunny@reactos.com>
3523             Bruno Haible  <bruno@clisp.org>
3524
3525         * lib/localename.c (gl_locale_name_canonicalize) [WIN32_NATIVE]: New
3526         function.
3527         (gl_locale_name_from_win32_LANGID, gl_locale_name_from_win32_LCID):
3528         New functions, mostly extracted from gl_locale_name_default.
3529         (gl_locale_name_default): Use gl_locale_name_from_win32_LCID.
3530
3531 2008-04-16  Eric Blake  <ebb9@byu.net>
3532
3533         Adjust strtod detection to catch glibc 2.7 bug.
3534         * m4/strtod.m4 (gl_FUNC_STRTOD): Test "nan()" behavior.
3535         Reported by John Gatewood Ham.
3536
3537 2008-04-16  Bruno Haible  <bruno@clisp.org>
3538
3539         Add tentative support for Linux libc5.
3540         * lib/fbufmode.c (fbufmode) [__GNU_LIBRARY__==1]: Reuse glibc2 code.
3541         * lib/fpurge.c (fpurge): Likewise.
3542         * lib/freadable.c (freadable): Likewise.
3543         * lib/freadahead.c (freadahead): Likewise.
3544         * lib/freading.c (freading): Likewise.
3545         * lib/freadptr.c (freadptr): Likewise.
3546         * lib/freadseek.c (freadptrinc): Likewise.
3547         * lib/fseeko.c (rpl_fseeko): Likewise.
3548         * lib/fseterr.c (fseterr): Likewise.
3549         * lib/fwritable.c (fwritable): Likewise.
3550         * lib/fwriting.c (fwriting): Likewise.
3551         Reported by Alain Guibert <alguibert+bts@free.fr>.
3552
3553 2008-04-15  Bruno Haible  <bruno@clisp.org>
3554
3555         * modules/mathl (configure.ac): Define module indicator.
3556
3557 2008-04-15  Bruno Haible  <bruno@clisp.org>
3558
3559         * lib/logl.c (logl): Remove unused variables.
3560
3561 2008-04-15  Bruno Haible  <bruno@clisp.org>
3562
3563         * lib/uniconv/u-conv-to-enc.h (FUNC): Fix return value when U_TO_U8
3564         fails.
3565
3566 2008-04-15  Bruno Haible  <bruno@clisp.org>
3567
3568         * lib/trim.c (trim2): Fix argument of isspace() macro.
3569
3570 2008-04-15  Paolo Bonzini  <bonzini@gnu.org>
3571
3572         * lib/tanl.c (kernel_tanl): Rename flag to invert, initialize it
3573         to 0.
3574         * lib/trigl.c (ieee754_rem_pio2l): Fix range checks.
3575
3576 2008-04-14  Bruno Haible  <bruno@clisp.org>
3577
3578         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Fix underquoting of
3579         AC_LANG_PROGRAM argument.
3580         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Likewise.
3581         * m4/gethrxtime.m4 (gl_ARITHMETIC_HRTIME_T): Likewise.
3582         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Likewise.
3583         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
3584         * m4/math_h.m4 (gl_MATH_H): Likewise.
3585         * m4/mbstate_t.m4 (AC_TYPE_MBSTATE_T): Likewise.
3586         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
3587         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Likewise.
3588         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Likewise.
3589         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
3590         * m4/regex.m4 (gl_REGEX): Likewise.
3591         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Likewise.
3592         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET): Likewise.
3593         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
3594         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): Likewise.
3595         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
3596         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
3597         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
3598         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
3599
3600 2008-04-14  Jim Meyering  <meyering@redhat.com>
3601
3602         test-strtod: fix typos: s/abs/fabs/
3603         * tests/test-strtod.c (main): Use fabs, not narrowing-to-int "abs".
3604
3605 2008-04-13  Bruno Haible  <bruno@clisp.org>
3606
3607         Fix conflict between modules 'canonicalize' and 'canonicalize-lgpl'.
3608         * lib/canonicalize-lgpl.c: Elide the contents if the 'canonicalize'
3609         module is also used and while not building the reloc-wrapper.
3610
3611 2008-04-13  Bruno Haible  <bruno@clisp.org>
3612
3613         * tests/test-getaddrinfo.c (simple): Ignore EAI_NODATA error.
3614
3615 2008-04-13  Bruno Haible  <bruno@clisp.org>
3616
3617         Fix AIX compilation failure introduced on 2008-04-02.
3618         * tests/test-frexp.c (exp): Undefine before redefining.
3619         * tests/test-frexpl.c (exp): Likewise.
3620
3621 2008-04-13  Bruno Haible  <bruno@clisp.org>
3622
3623         Work around a HP-UX stdio bug.
3624         * tests/test-ftell.c (main): Disable the fseek/ftell test on HP-UX.
3625         * tests/test-ftello.c (main): Likewise.
3626         * doc/posix-functions/ftell.texi: Mention HP-UX bug.
3627         * doc/posix-functions/ftello.texi: Likewise.
3628
3629 2008-04-13  Bruno Haible  <bruno@clisp.org>
3630
3631         Make test-signbit pass on HP-UX/hppa.
3632         * tests/test-signbit.c (minus_zerol): New variable.
3633         (test_signbitl): Use it.
3634
3635 2008-04-13  Bruno Haible  <bruno@clisp.org>
3636
3637         Make truncl work on OSF/1 4.0.
3638         * m4/truncl.m4 (gl_FUNC_TRUNCL): Test whether truncl actually works.
3639         Set REPLACE_TRUNCL, not HAVE_DECL_TRUNCL.
3640         * lib/math.in.h (truncl): Test REPLACE_TRUNCL, not HAVE_DECL_TRUNCL.
3641         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_TRUNCL, not
3642         HAVE_DECL_TRUNCL.
3643         * modules/math (Makefile.am): Substitute REPLACE_TRUNCL, not
3644         HAVE_DECL_TRUNCL.
3645         * doc/posix-functions/truncl.texi: Document the OSF/1 4.0 problem.
3646
3647 2008-04-13  Bruno Haible  <bruno@clisp.org>
3648
3649         * lib/unictype.h: Remove trailing comma from enumeration definitions.
3650
3651 2008-04-13  Bruno Haible  <bruno@clisp.org>
3652
3653         * lib/count-one-bits.h (COUNT_ONE_BITS): Rewrite verification
3654         expression, so as to avoid HP-UX 11 cc compiler bug.
3655
3656 2008-04-13  Bruno Haible  <bruno@clisp.org>
3657
3658         * m4/regex.m4 (gl_PREREQ_REGEX): Also check for <libintl.h>.
3659
3660 2008-04-13  Bruno Haible  <bruno@clisp.org>
3661
3662         * lib/git-merge-changelog.c: Remove empty declaration outside of
3663         functions.
3664
3665 2008-04-13  Bruno Haible  <bruno@clisp.org>
3666
3667         * modules/quotearg-tests (Makefile.am): Define test_quotearg_LDADD.
3668
3669 2008-04-13  Bruno Haible  <bruno@clisp.org>
3670
3671         * doc/posix-headers/sys_socket.texi: Document the problem on EMX.
3672         * lib/sys_socket.in.h (SHUT_RD, SHUT_WR, SHUT_RDWR): Define if missing.
3673         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Replace <sys/socket.h>
3674         also if it exists but lacks definitions of the SHUT_* macros.
3675         * modules/sys_socket (Description): Update.
3676         Reported by Elbert Pol <e.pol@chello.nl>.
3677
3678 2008-04-13  Bruno Haible  <bruno@clisp.org>
3679
3680         * lib/localcharset.c (OS2): Don't redefine if already defined.
3681         Reported by Elbert Pol <e.pol@chello.nl>.
3682
3683 2008-04-13  Bruno Haible  <bruno@clisp.org>
3684
3685         * lib/binary-io.h [__EMX__]: Include <io.h>.
3686         Reported by Elbert Pol <e.pol@chello.nl>.
3687
3688 2008-04-12  Bruno Haible  <bruno@clisp.org>
3689
3690         * lib/fpucw.h: Enable the definitions also for x86_64.
3691         Needed for NetBSD/x86_64.
3692         Reported by Thomas Klausner <tk@giga.or.at>.
3693
3694 2008-04-12  Bruno Haible  <bruno@clisp.org>
3695
3696         * tests/test-strtod.c: Include isnand.h.
3697         (main): Use isnand instead of isnan.
3698         Reported by Jim Meyering.
3699
3700 2008-04-12  Bruno Haible  <bruno@clisp.org>
3701
3702         * m4/isnanf.m4 (gl_ISNANF_WORKS): Add a test for a special NaN.
3703         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
3704
3705 2008-04-12  Jim Meyering  <meyering@redhat.com>
3706
3707         * m4/math_h.m4 (gl_MATH_H): Fix typos.
3708
3709 2008-04-12  Bruno Haible  <bruno@clisp.org>
3710
3711         * lib/freadptr.c (freadptr) [__EMX__]: Fix wrong assertion.
3712         Reported by Elbert Pol <e.pol@chello.nl>.
3713
3714 2008-04-12  Eric Blake  <ebb9@byu.net>
3715
3716         Work around Solaris 10 math.h bug.
3717         * m4/math_h.m4 (gl_MATH_H): Check for bug.
3718         (gl_MATH_H_DEFAULTS): Set up default.
3719         * modules/math (Makefile.am): Replace new indicators.
3720         * lib/math.in.h (NAN, HUGE_VAL): Provide replacements.
3721         * tests/test-math.c (main): Test this.
3722         * m4/strtod.m4 (gl_FUNC_STRTOD): Don't rely on HUGE_VAL.
3723         * doc/posix-headers/math.texi (math.h): Mention bug.
3724         Reported by Nelson H. F. Beebe and Jim Meyering.
3725
3726 2008-04-11  Bruno Haible  <bruno@clisp.org>
3727
3728         Adapt to future versions of Apple GCC.
3729         * lib/argp-fmtstream.h (ARGP_FS_EI): Don't test __GNUC_GNU_INLINE__.
3730         Reported by Peter O'Gorman <peter@pogma.com>.
3731
3732 2008-04-11  Bruno Haible  <bruno@clisp.org>
3733
3734         * tests/test-getaddrinfo.c (simple): Ignore EAI_NONAME error.
3735
3736 2008-04-11  Bruno Haible  <bruno@clisp.org>
3737
3738         * modules/strsignal-tests (Makefile.am): Define test_strsignal_LDADD.
3739
3740         * modules/getaddrinfo-tests (Makefile.am): Define
3741         test_getaddrinfo_LDADD.
3742
3743 2008-04-11  Bruno Haible  <bruno@clisp.org>
3744
3745         * lib/strsignal.c (_sys_siglist): Don't declare if already declared.
3746         (init): Fix syntax error.
3747         * m4/strsignal.m4 (gl_PREREQ_STRSIGNAL): Check whether _sys_siglist
3748         is declared.
3749
3750 2008-04-11  Bruno Haible  <bruno@clisp.org>
3751
3752         * lib/glob.c: Include <stdbool.h>. Needed at least with IRIX cc.
3753         * modules/glob (Depends-on): Add stdbool.
3754
3755 2008-04-11  Bruno Haible  <bruno@clisp.org>
3756
3757         * lib/trim.c: Include <string.h>.
3758
3759 2008-04-11  Eric Blake  <ebb9@byu.net>
3760
3761         Avoid compile failure on OS/2.
3762         * lib/regex_internal.h (internal_function): Disable optimization
3763         on OS/2 (__EMX__), where it caused compiler error.
3764         Reported by Elbert Pol.
3765
3766 2008-04-11  Bruno Haible  <bruno@clisp.org>
3767
3768         Flush the standard error stream before aborting. Needed on mingw.
3769         * tests/test-argmatch.c (ASSERT): Call fflush(stderr) before abort().
3770         * tests/test-array_list.c (ASSERT): Likewise.
3771         * tests/test-array_oset.c (ASSERT): Likewise.
3772         * tests/test-avltree_list.c (ASSERT): Likewise.
3773         * tests/test-avltree_oset.c (ASSERT): Likewise.
3774         * tests/test-avltreehash_list.c (ASSERT): Likewise.
3775         * tests/test-binary-io.c (ASSERT): Likewise.
3776         * tests/test-byteswap.c (ASSERT): Likewise.
3777         * tests/test-c-ctype.c (ASSERT): Likewise.
3778         * tests/test-c-strcasecmp.c (ASSERT): Likewise.
3779         * tests/test-c-strcasestr.c (ASSERT): Likewise.
3780         * tests/test-c-strncasecmp.c (ASSERT): Likewise.
3781         * tests/test-c-strstr.c (ASSERT): Likewise.
3782         * tests/test-canonicalize-lgpl.c (ASSERT): Likewise.
3783         * tests/test-canonicalize.c (ASSERT): Likewise.
3784         * tests/test-carray_list.c (ASSERT): Likewise.
3785         * tests/test-ceilf1.c (ASSERT): Likewise.
3786         * tests/test-ceilf2.c (ASSERT): Likewise.
3787         * tests/test-ceill.c (ASSERT): Likewise.
3788         * tests/test-count-one-bits.c (ASSERT): Likewise.
3789         * tests/test-fbufmode.c (ASSERT): Likewise.
3790         * tests/test-fflush2.c (ASSERT): Likewise.
3791         * tests/test-floorf1.c (ASSERT): Likewise.
3792         * tests/test-floorf2.c (ASSERT): Likewise.
3793         * tests/test-floorl.c (ASSERT): Likewise.
3794         * tests/test-fopen.c (ASSERT): Likewise.
3795         * tests/test-fpending.c (ASSERT): Likewise.
3796         * tests/test-fprintf-posix.c (ASSERT): Likewise.
3797         * tests/test-fpurge.c (ASSERT): Likewise.
3798         * tests/test-freadable.c (ASSERT): Likewise.
3799         * tests/test-freadahead.c (ASSERT): Likewise.
3800         * tests/test-freading.c (ASSERT): Likewise.
3801         * tests/test-freadptr.c (ASSERT): Likewise.
3802         * tests/test-freadptr2.c (ASSERT): Likewise.
3803         * tests/test-freadseek.c (ASSERT): Likewise.
3804         * tests/test-freopen.c (ASSERT): Likewise.
3805         * tests/test-frexp.c (ASSERT): Likewise.
3806         * tests/test-frexpl.c (ASSERT): Likewise.
3807         * tests/test-fseek.c (ASSERT): Likewise.
3808         * tests/test-fseeko.c (ASSERT): Likewise.
3809         * tests/test-fstrcmp.c (ASSERT): Likewise.
3810         * tests/test-ftell.c (ASSERT): Likewise.
3811         * tests/test-ftello.c (ASSERT): Likewise.
3812         * tests/test-func.c (ASSERT): Likewise.
3813         * tests/test-fwritable.c (ASSERT): Likewise.
3814         * tests/test-fwriting.c (ASSERT): Likewise.
3815         * tests/test-getdelim.c (ASSERT): Likewise.
3816         * tests/test-getline.c (ASSERT): Likewise.
3817         * tests/test-i-ring.c (ASSERT): Likewise.
3818         * tests/test-iconv-utf.c (ASSERT): Likewise.
3819         * tests/test-iconv.c (ASSERT): Likewise.
3820         * tests/test-isfinite.c (ASSERT): Likewise.
3821         * tests/test-isnand.c (ASSERT): Likewise.
3822         * tests/test-isnanf.c (ASSERT): Likewise.
3823         * tests/test-isnanl.h (ASSERT): Likewise.
3824         * tests/test-ldexpl.c (ASSERT): Likewise.
3825         * tests/test-linked_list.c (ASSERT): Likewise.
3826         * tests/test-linkedhash_list.c (ASSERT): Likewise.
3827         * tests/test-localename.c (ASSERT): Likewise.
3828         * tests/test-lseek.c (ASSERT): Likewise.
3829         * tests/test-mbscasecmp.c (ASSERT): Likewise.
3830         * tests/test-mbscasestr1.c (ASSERT): Likewise.
3831         * tests/test-mbscasestr2.c (ASSERT): Likewise.
3832         * tests/test-mbscasestr3.c (ASSERT): Likewise.
3833         * tests/test-mbscasestr4.c (ASSERT): Likewise.
3834         * tests/test-mbschr.c (ASSERT): Likewise.
3835         * tests/test-mbscspn.c (ASSERT): Likewise.
3836         * tests/test-mbsncasecmp.c (ASSERT): Likewise.
3837         * tests/test-mbspbrk.c (ASSERT): Likewise.
3838         * tests/test-mbspcasecmp.c (ASSERT): Likewise.
3839         * tests/test-mbsrchr.c (ASSERT): Likewise.
3840         * tests/test-mbsspn.c (ASSERT): Likewise.
3841         * tests/test-mbsstr1.c (ASSERT): Likewise.
3842         * tests/test-mbsstr2.c (ASSERT): Likewise.
3843         * tests/test-mbsstr3.c (ASSERT): Likewise.
3844         * tests/test-memchr2.c (ASSERT): Likewise.
3845         * tests/test-memmem.c (ASSERT): Likewise.
3846         * tests/test-open.c (ASSERT): Likewise.
3847         * tests/test-printf-frexp.c (ASSERT): Likewise.
3848         * tests/test-printf-frexpl.c (ASSERT): Likewise.
3849         * tests/test-printf-posix.c (ASSERT): Likewise.
3850         * tests/test-quotearg.c (ASSERT): Likewise.
3851         * tests/test-rbtree_list.c (ASSERT): Likewise.
3852         * tests/test-rbtree_oset.c (ASSERT): Likewise.
3853         * tests/test-rbtreehash_list.c (ASSERT): Likewise.
3854         * tests/test-round1.c (ASSERT): Likewise.
3855         * tests/test-roundf1.c (ASSERT): Likewise.
3856         * tests/test-roundl.c (ASSERT): Likewise.
3857         * tests/test-signbit.c (ASSERT): Likewise.
3858         * tests/test-sleep.c (ASSERT): Likewise.
3859         * tests/test-snprintf-posix.c (ASSERT): Likewise.
3860         * tests/test-snprintf.c (ASSERT): Likewise.
3861         * tests/test-sprintf-posix.c (ASSERT): Likewise.
3862         * tests/test-stat-time.c (ASSERT): Likewise.
3863         * tests/test-strcasestr.c (ASSERT): Likewise.
3864         * tests/test-strerror.c (ASSERT): Likewise.
3865         * tests/test-striconv.c (ASSERT): Likewise.
3866         * tests/test-striconveh.c (ASSERT): Likewise.
3867         * tests/test-striconveha.c (ASSERT): Likewise.
3868         * tests/test-strsignal.c (ASSERT): Likewise.
3869         * tests/test-strstr.c (ASSERT): Likewise.
3870         * tests/test-strtod.c (ASSERT): Likewise.
3871         * tests/test-trunc1.c (ASSERT): Likewise.
3872         * tests/test-trunc2.c (ASSERT): Likewise.
3873         * tests/test-truncf1.c (ASSERT): Likewise.
3874         * tests/test-truncf2.c (ASSERT): Likewise.
3875         * tests/test-truncl.c (ASSERT): Likewise.
3876         * tests/test-vasnprintf-posix.c (ASSERT): Likewise.
3877         * tests/test-vasnprintf-posix2.c (ASSERT): Likewise.
3878         * tests/test-vasnprintf.c (ASSERT): Likewise.
3879         * tests/test-vasprintf-posix.c (ASSERT): Likewise.
3880         * tests/test-vasprintf.c (ASSERT): Likewise.
3881         * tests/test-vfprintf-posix.c (ASSERT): Likewise.
3882         * tests/test-vprintf-posix.c (ASSERT): Likewise.
3883         * tests/test-vsnprintf-posix.c (ASSERT): Likewise.
3884         * tests/test-vsnprintf.c (ASSERT): Likewise.
3885         * tests/test-vsprintf-posix.c (ASSERT): Likewise.
3886         * tests/test-wcwidth.c (ASSERT): Likewise.
3887         * tests/test-xfprintf-posix.c (ASSERT): Likewise.
3888         * tests/test-xprintf-posix.c (ASSERT): Likewise.
3889         * tests/test-xvasprintf.c (ASSERT): Likewise.
3890         * tests/uniconv/test-u16-conv-from-enc.c (ASSERT): Likewise.
3891         * tests/uniconv/test-u16-conv-to-enc.c (ASSERT): Likewise.
3892         * tests/uniconv/test-u16-strconv-from-enc.c (ASSERT): Likewise.
3893         * tests/uniconv/test-u16-strconv-to-enc.c (ASSERT): Likewise.
3894         * tests/uniconv/test-u32-conv-from-enc.c (ASSERT): Likewise.
3895         * tests/uniconv/test-u32-conv-to-enc.c (ASSERT): Likewise.
3896         * tests/uniconv/test-u32-strconv-from-enc.c (ASSERT): Likewise.
3897         * tests/uniconv/test-u32-strconv-to-enc.c (ASSERT): Likewise.
3898         * tests/uniconv/test-u8-conv-from-enc.c (ASSERT): Likewise.
3899         * tests/uniconv/test-u8-conv-to-enc.c (ASSERT): Likewise.
3900         * tests/uniconv/test-u8-strconv-from-enc.c (ASSERT): Likewise.
3901         * tests/uniconv/test-u8-strconv-to-enc.c (ASSERT): Likewise.
3902         * tests/unictype/test-bidi_byname.c (ASSERT): Likewise.
3903         * tests/unictype/test-bidi_name.c (ASSERT): Likewise.
3904         * tests/unictype/test-bidi_of.c (ASSERT): Likewise.
3905         * tests/unictype/test-bidi_test.c (ASSERT): Likewise.
3906         * tests/unictype/test-block_list.c (ASSERT): Likewise.
3907         * tests/unictype/test-block_of.c (ASSERT): Likewise.
3908         * tests/unictype/test-block_test.c (ASSERT): Likewise.
3909         * tests/unictype/test-categ_and.c (ASSERT): Likewise.
3910         * tests/unictype/test-categ_and_not.c (ASSERT): Likewise.
3911         * tests/unictype/test-categ_byname.c (ASSERT): Likewise.
3912         * tests/unictype/test-categ_name.c (ASSERT): Likewise.
3913         * tests/unictype/test-categ_none.c (ASSERT): Likewise.
3914         * tests/unictype/test-categ_of.c (ASSERT): Likewise.
3915         * tests/unictype/test-categ_or.c (ASSERT): Likewise.
3916         * tests/unictype/test-categ_test_withtable.c (ASSERT): Likewise.
3917         * tests/unictype/test-combining.c (ASSERT): Likewise.
3918         * tests/unictype/test-decdigit.c (ASSERT): Likewise.
3919         * tests/unictype/test-digit.c (ASSERT): Likewise.
3920         * tests/unictype/test-mirror.c (ASSERT): Likewise.
3921         * tests/unictype/test-numeric.c (ASSERT): Likewise.
3922         * tests/unictype/test-pr_byname.c (ASSERT): Likewise.
3923         * tests/unictype/test-pr_test.c (ASSERT): Likewise.
3924         * tests/unictype/test-predicate-part1.h (ASSERT): Likewise.
3925         * tests/unictype/test-scripts.c (ASSERT): Likewise.
3926         * tests/unictype/test-sy_c_ident.c (ASSERT): Likewise.
3927         * tests/unictype/test-sy_java_ident.c (ASSERT): Likewise.
3928         * tests/unistdio/test-u16-asnprintf1.c (ASSERT): Likewise.
3929         * tests/unistdio/test-u16-vasnprintf1.c (ASSERT): Likewise.
3930         * tests/unistdio/test-u16-vasnprintf2.c (ASSERT): Likewise.
3931         * tests/unistdio/test-u16-vasnprintf3.c (ASSERT): Likewise.
3932         * tests/unistdio/test-u16-vasprintf1.c (ASSERT): Likewise.
3933         * tests/unistdio/test-u16-vsnprintf1.c (ASSERT): Likewise.
3934         * tests/unistdio/test-u16-vsprintf1.c (ASSERT): Likewise.
3935         * tests/unistdio/test-u32-asnprintf1.c (ASSERT): Likewise.
3936         * tests/unistdio/test-u32-vasnprintf1.c (ASSERT): Likewise.
3937         * tests/unistdio/test-u32-vasnprintf2.c (ASSERT): Likewise.
3938         * tests/unistdio/test-u32-vasnprintf3.c (ASSERT): Likewise.
3939         * tests/unistdio/test-u32-vasprintf1.c (ASSERT): Likewise.
3940         * tests/unistdio/test-u32-vsnprintf1.c (ASSERT): Likewise.
3941         * tests/unistdio/test-u32-vsprintf1.c (ASSERT): Likewise.
3942         * tests/unistdio/test-u8-asnprintf1.c (ASSERT): Likewise.
3943         * tests/unistdio/test-u8-vasnprintf1.c (ASSERT): Likewise.
3944         * tests/unistdio/test-u8-vasnprintf2.c (ASSERT): Likewise.
3945         * tests/unistdio/test-u8-vasnprintf3.c (ASSERT): Likewise.
3946         * tests/unistdio/test-u8-vasprintf1.c (ASSERT): Likewise.
3947         * tests/unistdio/test-u8-vsnprintf1.c (ASSERT): Likewise.
3948         * tests/unistdio/test-u8-vsprintf1.c (ASSERT): Likewise.
3949         * tests/unistdio/test-ulc-asnprintf1.c (ASSERT): Likewise.
3950         * tests/unistdio/test-ulc-vasnprintf1.c (ASSERT): Likewise.
3951         * tests/unistdio/test-ulc-vasnprintf2.c (ASSERT): Likewise.
3952         * tests/unistdio/test-ulc-vasnprintf3.c (ASSERT): Likewise.
3953         * tests/unistdio/test-ulc-vasprintf1.c (ASSERT): Likewise.
3954         * tests/unistdio/test-ulc-vsnprintf1.c (ASSERT): Likewise.
3955         * tests/unistdio/test-ulc-vsprintf1.c (ASSERT): Likewise.
3956         * tests/uniwidth/test-u16-strwidth.c (ASSERT): Likewise.
3957         * tests/uniwidth/test-u16-width.c (ASSERT): Likewise.
3958         * tests/uniwidth/test-u32-strwidth.c (ASSERT): Likewise.
3959         * tests/uniwidth/test-u32-width.c (ASSERT): Likewise.
3960         * tests/uniwidth/test-u8-strwidth.c (ASSERT): Likewise.
3961         * tests/uniwidth/test-u8-width.c (ASSERT): Likewise.
3962         * tests/uniwidth/test-uc_width.c (ASSERT): Likewise.
3963         Reported by Eric Blake.
3964
3965 2008-04-11  Bruno Haible  <bruno@clisp.org>
3966
3967         * lib/wchar.in.h: Tweak comment.
3968
3969 2008-04-11  Bruno Haible  <bruno@clisp.org>
3970
3971         Fix __GNUC_STDC_INLINE__ predefine with Apple GCC on MacOS X 10.5.
3972         * gnulib-tool (func_emit_initmacro_start): Emit an invocation of
3973         gl_COMMON.
3974         * m4/gnulib-common.m4 (gl_COMMON, gl_COMMON_BODY): New macros.
3975
3976 2008-04-11  Bruno Haible  <bruno@clisp.org>
3977
3978         * modules/git-merge-changelog (git_merge_changelog_LDADD): Add LIBINTL.
3979
3980 2008-04-11  Simon Josefsson  <simon@josefsson.org>
3981
3982         * lib/gc-gnulib.c: On Windows, use CryptGenRandom from CSP instead
3983         of attempting to use non-existing /dev/*random.  Based on patch
3984         from Adam Strzelecki <ono@java.pl> in
3985         <http://lists.gnu.org/archive/html/help-gsasl/2008-02/msg00000.html>.
3986
3987 2008-04-08  Bruno Haible  <bruno@clisp.org>
3988
3989         Add tentative support for emx+gcc.
3990         * lib/fbufmode.c (fbufmode) [__EMX__]: Add conditional code.
3991         * lib/fpurge.c (fpurge): Likewise.
3992         * lib/freadable.c (freadable): Likewise.
3993         * lib/freadahead.c (freadahead): Likewise.
3994         * lib/freading.c (freading): Likewise.
3995         * lib/freadptr.c (freadptr): Likewise.
3996         * lib/freadseek.c (freadptrinc): Likewise.
3997         * lib/fseeko.c (rpl_fseeko): Likewise.
3998         * lib/fseterr.c (fseterr): Likewise.
3999         * lib/fwritable.c (fwritable): Likewise.
4000         * lib/fwriting.c (fwriting): Likewise.
4001         * m4/fpending.m4 (gl_FUNC_FPENDING): Add a variant for emx+gcc.
4002
4003 2008-04-09  Eric Blake  <ebb9@byu.net>
4004
4005         Avoid some autoconf warnings.
4006         * m4/regex.m4 (gl_REGEX): s/AC_HELP_STRING/AS_HELP_STRING/.
4007         * m4/acl.m4 (gl_FUNC_ACL): Likewise.
4008         * m4/afs.m4 (gl_AFS): Likewise.
4009         * m4/gc-random.m4 (gl_GC_RANDOM): Likewise.
4010         * m4/include_next.m4 (gl_INCLUDE_NEXT): s/AC_FOREACH/m4_foreach_w/.
4011         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
4012         * m4/stdint.m4 (gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED)
4013         (gl_INTEGER_TYPE_SUFFIX): Likewise.
4014         * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE)
4015         (AC_CHECK_DECLS_ONCE): Likewise.
4016         Rename file...
4017         * m4/onceonly.m4: ...to this, and delete 2.54 variant, now that
4018         gnulib-tool requires autoconf 2.59 or better.
4019         * gnulib-tool (func_get_filelist): s/\(onceonly\)_2_57.m4/\1.m4/.
4020
4021 2008-04-08  Eric Blake  <ebb9@byu.net>
4022
4023         Use 'git describe --match' if present (added in git 1.5.5).
4024         * build-aux/git-version-gen: Limit result to tags that match 'v*'
4025         if possible.
4026
4027 2008-04-08  Bruno Haible  <bruno@clisp.org>
4028
4029         Add tentative support for OpenServer.
4030         * lib/fbufmode.c (fbufmode): Add conditional define for _flag, _base,
4031         _ptr, _cnt.
4032         * lib/fpurge.c (fpurge): Likewise.
4033         * lib/freadable.c (freadable): Likewise.
4034         * lib/freadahead.c (freadahead): Likewise.
4035         * lib/freading.c (freading): Likewise.
4036         * lib/freadptr.c (freadptr): Likewise.
4037         * lib/freadseek.c (freadptrinc): Likewise.
4038         * lib/fseeko.c (rpl_fseeko): Likewise.
4039         * lib/fseterr.c (fseterr): Likewise.
4040         * lib/fwritable.c (fwritable): Likewise.
4041         * lib/fwriting.c (fwriting): Likewise.
4042         Reported by Roger Cornelius <rac@tenzing.org> and
4043         Brian K. White <brian@aljex.com>.
4044
4045 2008-04-06  Jim Meyering  <meyering@redhat.com>
4046
4047         * gnulib-tool (func_add_or_update): s/backuped/backed up/ in diagnostic
4048
4049 2008-04-06  Bruno Haible  <bruno@clisp.org>
4050
4051         Avoid possible error with non-ASCII bytes in UTF-8 locales.
4052         * tests/test-fprintf-posix.sh: Use "LC_ALL=C tr" instead of "tr".
4053         * tests/test-printf-posix.sh: Likewise.
4054         * tests/test-vfprintf-posix.sh: Likewise.
4055         * tests/test-vprintf-posix.sh: Likewise.
4056         * tests/test-xprintf-posix.sh: Likewise.
4057
4058 2008-04-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4059
4060         * m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT): Fix quoting,
4061         hide error from 'ls', needed on OS/2.
4062         Report by Elbert Pol <elbert.pol@gmail.com>.
4063
4064 2008-04-04  Eric Blake  <ebb9@byu.net>
4065
4066         Make test-fseeko.c failures meaningful.
4067         * tests/test-fseeko.c: Print line number on failure.
4068         * tests/test-fseek.c: Likewise.
4069         Reported by Nelson H. F. Beebe.
4070
4071         Improve strtod bug detection check.
4072         * m4/strtod.m4 (gl_FUNC_STRTOD): Also check for hex-float parsing,
4073         required for Solaris 10.
4074         Reported by Bob Friesenhahn and Nelson H. F. Beebe.
4075
4076 2008-04-04  Bruno Haible  <bruno@clisp.org>
4077
4078         * modules/relocatable-prog-wrapper (Files): Add m4/environ.m4. Needed
4079         by m4/setenv.m4.
4080
4081 2008-04-03  Eric Blake  <ebb9@byu.net>
4082
4083         Ensure sane .version contents.
4084         * top/GNUmakefile (_dummy): Also delete .version when rebuilding
4085         version string.
4086         * build-aux/git-version-gen: Improve documentation.
4087
4088         Make GNU make output nicer.
4089         * top/GNUmakefile [!_have-Makefile]: Add dependency on
4090         MAKECMDGOALS to enforce message for all command line targets.  Set
4091         srcdir for use in maint.mk.
4092
4093         Another maintainer tweak.
4094         * top/GNUmakefile (_is-dist-target): Allow maintainer-distcheck as
4095         a target that regenerates version.
4096
4097 2008-04-03  Jim Meyering  <meyering@redhat.com>
4098
4099         vc-list-files: don't cause coreutils "make po-check" failure
4100         * build-aux/vc-list-files: Skip postprocessing when $2 is '.'
4101
4102 2008-04-03  Eric Blake  <ebb9@byu.net>
4103
4104         Allow VPATH usage of vc-list-files.
4105         * build-aux/vc-list-files (scriptversion): Add timestamp.
4106         (options): Add --help, --version, -C.
4107         (CVS): Support installed cvsu.
4108
4109 2008-04-02  Bruno Haible  <bruno@clisp.org>
4110
4111         Avoid some "statement with no effect" warnings from gcc.
4112         * tests/test-wctype.c (main): Explicitly ignore unused values.
4113         Reported by Jim Meyering.
4114
4115 2008-04-02  Jim Meyering  <meyering@redhat.com>
4116
4117         Avoid some warnings from "gcc -Wshadow".
4118         * tests/test-frexp.c (exp): Define to a different identifier.
4119         * tests/test-frexpl.c (exp): Likewise.
4120
4121 2008-04-03  Jim Meyering  <meyering@redhat.com>
4122
4123         bootstrap: remove dangling *.[ch] symlinks from lib
4124         * build-aux/bootstrap [dangling symlink removal]: Move find's
4125         -depth option to precede all others, to avoid a warning.
4126         Remove *.[ch] files too, and from "$source_base" (usually lib/).
4127
4128 2008-04-02  Bruno Haible  <bruno@clisp.org>
4129
4130         Avoid some warnings from "gcc -Wshadow".
4131         * tests/tests-vfprintf-posix.c (my_fprintf): Move after test_function.
4132         * tests/tests-vprintf-posix.c (my_printf): Move after test_function.
4133         * tests/tests-vsnprintf-posix.c (my_snprintf): Move after test_function.
4134         * tests/tests-vsprintf-posix.c (my_sprintf): Move after test_function.
4135         Reported by Jim Meyering.
4136
4137 2008-04-01  Bruno Haible  <bruno@clisp.org>
4138
4139         Fix test to work on IRIX 6.5 with cc.
4140         * tests/test-math.c (numeric_equal): New function.
4141         (main): Use it.
4142
4143 2008-04-01  Bruno Haible  <bruno@clisp.org>
4144
4145         * doc/posix-headers/math.texi: Refine documentation of NAN problem.
4146
4147 2008-04-01  Bruno Haible  <bruno@clisp.org>
4148
4149         * tests/test-vasnprintf-posix.c: Include nan.h instead of <math.h>.
4150         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
4151         * modules/vasnprintf-posix-tests (Files): Add tests/nan.h.
4152         (Depends-on): Remove math.
4153
4154         * tests/test-vasprintf-posix.c: Include nan.h instead of <math.h>.
4155         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
4156         * modules/vasprintf-posix-tests (Files): Add tests/nan.h.
4157         (Depends-on): Remove math.
4158
4159         * tests/test-snprintf-posix.h: Include nan.h instead of <math.h>.
4160         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
4161         * modules/snprintf-posix-tests (Files): Add tests/nan.h.
4162         (Depends-on): Remove math.
4163         * modules/vsnprintf-posix-tests (Files): Add tests/nan.h.
4164         (Depends-on): Remove math.
4165
4166         * tests/test-sprintf-posix.h: Include nan.h instead of <math.h>.
4167         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
4168         * modules/sprintf-posix-tests (Files): Add tests/nan.h.
4169         (Depends-on): Remove math.
4170         * modules/vsprintf-posix-tests (Files): Add tests/nan.h.
4171         (Depends-on): Remove math.
4172
4173         * tests/test-round1.c: Include nan.h.
4174         (main): Use NaNd instead of NAN.
4175         * modules/round-tests (Files): Add tests/nan.h.
4176
4177         * tests/test-trunc1.c: Include nan.h.
4178         (main): Use NaNd instead of NAN.
4179         * modules/trunc-tests (Files): Add tests/nan.h.
4180
4181         * tests/test-roundf1.c: Include nan.h.
4182         (main): Use NaNf instead of NAN.
4183         * modules/roundf-tests (Files): Add tests/nan.h.
4184
4185         * tests/test-truncf1.c: Include nan.h.
4186         (main): Use NaNf instead of NAN.
4187         * modules/truncf-tests (Files): Add tests/nan.h.
4188
4189         * tests/test-ceilf1.c: Include nan.h.
4190         (main): Use NaNf instead of NAN.
4191         * modules/ceilf-tests (Files): Add tests/nan.h.
4192
4193         * tests/test-floorf1.c: Include nan.h.
4194         (main): Use NaNf instead of NAN.
4195         * modules/floorf-tests (Files): Add tests/nan.h.
4196
4197         * tests/test-isnanf.c: Include nan.h instead of <math.h>.
4198         (main): Use NaNf instead of NAN.
4199         * modules/isnanf-nolibm-tests (Files): Add tests/nan.h.
4200
4201         * tests/test-isnand.c: Include nan.h instead of <math.h>.
4202         (main): Use NaNd instead of NAN.
4203         * modules/isnand-nolibm-tests (Files): Add tests/nan.h.
4204
4205         * tests/test-frexp.c: Include nan.h.
4206         (main): Use NaNd instead of NAN.
4207         * modules/frexp-tests (Files): Add tests/nan.h.
4208
4209         * lib/isnan.c: Don't include <math.h>.
4210         (FUNC): Don't use NAN macro.
4211         * modules/isnand-nolibm (Depends-on): Remove math.
4212         * modules/isnanf-nolibm (Depends-on): Remove math.
4213         * modules/isnanl (Depends-on): Remove math.
4214         * modules/isnanl-nolibm (Depends-on): Remove math.
4215
4216         * tests/nan.h: New file.
4217
4218 2008-04-01  Eric Blake  <ebb9@byu.net>
4219
4220         Fix typos.
4221         * tests/test-strtod.c (main): s/FLT_/DBL_/ for minimum and epsilon
4222         values to be the right type.
4223
4224         For now, cater to gnulib strtod inaccuracies.
4225         * tests/test-strtod.c (main): Allow 1-ulp error on expected
4226         fractional results.  While not as nice from a QoI perspective, it
4227         is a quicker patch than correctly implementing decimal to binary
4228         rounding.
4229
4230 2008-03-31  Eric Blake  <ebb9@byu.net>
4231
4232         Guarantee a definition of NAN.
4233         * lib/math.in.h (NAN): Define if missing.
4234         * tests/test-math.c (main): Test it.
4235         * doc/posix-headers/math.texi (math.h): Document this.
4236         * lib/isnan.c (rpl_isnand): Use it.
4237         * tests/test-ceilf1.c (NaN): Delete, and use NAN instead.
4238         * tests/test-floorf1.c (NaN): Likewise.
4239         * tests/test-frexp.c (NaN): Likewise.
4240         * tests/test-isnand.c (NaN): Likewise.
4241         * tests/test-isnanf.c (NaN): Likewise.
4242         * tests/test-round1.c (NaN): Likewise.
4243         * tests/test-roundf1.c (NaN): Likewise.
4244         * tests/test-snprintf-posix.h (NaN): Likewise.
4245         * tests/test-sprintf-posix.h (NaN): Likewise.
4246         * tests/test-trunc1.c (NaN): Likewise.
4247         * tests/test-truncf1.c (NaN): Likewise.
4248         * tests/test-vasnprintf-posix.c (NaN): Likewise.
4249         * tests/test-vasprintf-posix.c (NaN): Likewise.
4250         * modules/isnand-nolibm (Depends-on): Add math.
4251         * modules/isnanf-nolibm (Depends-on): Likewise.
4252         * modules/isnanl (Depends-on): Likewise.
4253         * modules/isnanl-nolibm (Depends-on): Likewise.
4254         * modules/snprintf-posix-tests (Depends-on): Likewise.
4255         * modules/sprintf-posix-tests (Depends-on): Likewise.
4256         * modules/vsnprintf-posix-tests (Depends-on): Likewise.
4257         * modules/vsprintf-posix-tests (Depends-on): Likewise.
4258         * modules/vasnprintf-posix-tests (Depends-on): Likewise.
4259         * modules/vasprintf-posix-tests (Depends-on): Likewise.
4260
4261 2008-03-31  Bruno Haible  <bruno@clisp.org>
4262
4263         * tests/test-strtod.c (main): Update results for OSF/1 platforms.
4264         * doc/posix-functions/strtod.texi: Likewise.
4265
4266 2008-03-31  Bruno Haible  <bruno@clisp.org>
4267
4268         * tests/test-strtod.c (main): Don't use C99 syntax.
4269
4270 2008-03-31  Bruno Haible  <bruno@clisp.org>
4271
4272         * tests/test-strtod.c (main): Don't test NAN macro. Needed for Solaris.
4273         Reported by Eric Blake.
4274
4275 2008-03-31  Jim Meyering  <meyering@redhat.com>
4276
4277         Don't compare actual signbit return values.
4278         * tests/test-strtod.c (main): Rather, compare only their
4279         zero/non-zero nature.
4280
4281 2008-03-31  Eric Blake  <ebb9@byu.net>
4282
4283         More strtod documentation.
4284         * doc/posix-functions/strtod.texi (strtod): Interpret more test
4285         failures as distinct bugs.
4286
4287 2008-03-30  Paul Eggert  <eggert@cs.ucla.edu>
4288
4289         * lib/wchar.in.h [defined __need_mbstate_t]: Just include <wchar.h>.
4290         Problem reported by Erik Benada in
4291         <http://lists.gnu.org/archive/html/bug-gnulib/2008-03/msg00249.html>.
4292
4293 2008-03-30  Bruno Haible  <bruno@clisp.org>
4294
4295         * tests/test-strtod.c: Add comments about which assertion fails on which
4296         platform.
4297         * doc/posix-functions/strtod.texi: Add info about many more platforms.
4298
4299 2008-03-30  Eric Blake  <ebb9@byu.net>
4300
4301         Test signbit behavior on zeros.
4302         * tests/test-signbit.c (test_signbitf): Add tests for zero.
4303         (test_signbitd, test_signbitl): Likewise.
4304
4305         More strtod touchups.
4306         * tests/test-strtod.c (main): Ignore tests for signbit on NaN, and
4307         sign of negative underflow, for now.  Use .5, not .1.
4308         * doc/posix-functions/strtod.texi (strtod): Mention these
4309         limitations.
4310         Reported by Jim Meyering.
4311
4312 2008-03-30  Bruno Haible  <bruno@clisp.org>
4313
4314         * lib/striconveh.h (mem_iconveh, str_iconveh): Optimize the conversion
4315         from UTF-8 to UTF-8//TRANSLIT in the same way as from UTF-8 to UTF-8.
4316
4317 2008-03-30  Bruno Haible  <bruno@clisp.org>
4318
4319         Avoid failure when attempting to return empty iconv results on some
4320         platforms.
4321         * lib/striconveh.c (mem_cd_iconveh_internal): In the final memory
4322         allocation, don't report ENOMEM when the resulting string is empty.
4323
4324 2008-03-30  Bruno Haible  <bruno@clisp.org>
4325
4326         Fix buffer overrun.
4327         * lib/vasnprintf.c (VASNPRINTF): If !USE_SNPRINTF && pad_ourselves:
4328         Don't consider the width for tmp_length. Check count against tmp_length
4329         before doing the padding. Ensure enough allocation during padding.
4330
4331 2008-03-30  Eric Blake  <ebb9@byu.net>
4332
4333         strtod touchups.
4334         * lib/strtod.c (strtod): Avoid compiler warnings.
4335         Reported by Jim Meyering.
4336
4337 2008-03-30  Bruno Haible  <bruno@clisp.org>
4338
4339         * lib/unistdio/u-vsprintf.h (EOVERFLOW): Remove fallback.
4340         * modules/unistdio/ulc-vsprintf (Depends-on): Add EOVERFLOW.
4341         * modules/unistdio/u8-vsprintf (Depends-on): Add EOVERFLOW.
4342         * modules/unistdio/u8-u8-vsprintf (Depends-on): Add EOVERFLOW.
4343         * modules/unistdio/u16-vsprintf (Depends-on): Add EOVERFLOW.
4344         * modules/unistdio/u16-u16-vsprintf (Depends-on): Add EOVERFLOW.
4345         * modules/unistdio/u32-vsprintf (Depends-on): Add EOVERFLOW.
4346         * modules/unistdio/u32-u32-vsprintf (Depends-on): Add EOVERFLOW.
4347
4348         * lib/unistdio/u-vsnprintf.h (EOVERFLOW): Remove fallback.
4349         * modules/unistdio/ulc-vsnprintf (Depends-on): Add EOVERFLOW.
4350         * modules/unistdio/u8-vsnprintf (Depends-on): Add EOVERFLOW.
4351         * modules/unistdio/u8-u8-vsnprintf (Depends-on): Add EOVERFLOW.
4352         * modules/unistdio/u16-vsnprintf (Depends-on): Add EOVERFLOW.
4353         * modules/unistdio/u16-u16-vsnprintf (Depends-on): Add EOVERFLOW.
4354         * modules/unistdio/u32-vsnprintf (Depends-on): Add EOVERFLOW.
4355         * modules/unistdio/u32-u32-vsnprintf (Depends-on): Add EOVERFLOW.
4356
4357         * lib/unistdio/u-vasprintf.h (EOVERFLOW): Remove fallback.
4358         * modules/unistdio/ulc-vasprintf (Depends-on): Add EOVERFLOW.
4359         * modules/unistdio/u8-vasprintf (Depends-on): Add EOVERFLOW.
4360         * modules/unistdio/u8-u8-vasprintf (Depends-on): Add EOVERFLOW.
4361         * modules/unistdio/u16-vasprintf (Depends-on): Add EOVERFLOW.
4362         * modules/unistdio/u16-u16-vasprintf (Depends-on): Add EOVERFLOW.
4363         * modules/unistdio/u32-vasprintf (Depends-on): Add EOVERFLOW.
4364         * modules/unistdio/u32-u32-vasprintf (Depends-on): Add EOVERFLOW.
4365
4366         * lib/unistdio/ulc-vfprintf.c (EOVERFLOW): Remove fallback.
4367         * modules/unistdio/ulc-vfprintf (Depends-on): Add EOVERFLOW.
4368
4369         * lib/unistdio/ulc-fprintf.c (EOVERFLOW): Remove fallback.
4370         * modules/unistdio/ulc-fprintf (Depends-on): Add EOVERFLOW.
4371
4372         * lib/xvasprintf.c (EOVERFLOW): Remove fallback.
4373         * modules/xvasprintf (Depends-on): Add EOVERFLOW.
4374
4375         * lib/vsprintf.c (EOVERFLOW): Remove fallback.
4376         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Drop gl_EOVERFLOW.
4377         * modules/vsprintf-posix (Depends-on): Add EOVERFLOW.
4378
4379         * lib/vsnprintf.c (EOVERFLOW): Remove fallback.
4380         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Drop gl_EOVERFLOW.
4381         * modules/vsnprintf (Depends-on): Add EOVERFLOW.
4382
4383         * lib/vfprintf.c (EOVERFLOW): Remove fallback.
4384         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Drop gl_EOVERFLOW.
4385         * modules/vfprintf-posix (Depends-on): Add EOVERFLOW.
4386
4387         * lib/vasprintf.c (EOVERFLOW): Remove fallback.
4388         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Drop gl_EOVERFLOW.
4389         * modules/vasprintf (Depends-on): Add EOVERFLOW.
4390
4391         * lib/vasnprintf.c (EOVERFLOW): Remove fallback.
4392         * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Drop gl_EOVERFLOW.
4393         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Drop gl_EOVERFLOW.
4394         * modules/vasnprintf (Files): Remove m4/eoverflow.m4.
4395         (Depends-on): Add EOVERFLOW.
4396         * modules/unistdio/ulc-vasnprintf (Files): Remove m4/eoverflow.m4.
4397         (Depends-on): Add EOVERFLOW.
4398         * modules/unistdio/u8-vasnprintf (Files): Remove m4/eoverflow.m4.
4399         (Depends-on): Add EOVERFLOW.
4400         * modules/unistdio/u8-u8-vasnprintf (Files): Remove m4/eoverflow.m4.
4401         (Depends-on): Add EOVERFLOW.
4402         * modules/unistdio/u16-vasnprintf (Files): Remove m4/eoverflow.m4.
4403         (Depends-on): Add EOVERFLOW.
4404         * modules/unistdio/u16-u16-vasnprintf (Files): Remove m4/eoverflow.m4.
4405         (Depends-on): Add EOVERFLOW.
4406         * modules/unistdio/u32-vasnprintf (Files): Remove m4/eoverflow.m4.
4407         (Depends-on): Add EOVERFLOW.
4408         * modules/unistdio/u32-u32-vasnprintf (Files): Remove m4/eoverflow.m4.
4409         (Depends-on): Add EOVERFLOW.
4410
4411         * lib/sprintf.c (EOVERFLOW): Remove fallback.
4412         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Drop gl_EOVERFLOW.
4413         * modules/sprintf-posix (Depends-on): Add EOVERFLOW.
4414
4415         * lib/snprintf.c (EOVERFLOW): Remove fallback.
4416         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Drop gl_EOVERFLOW.
4417         * modules/snprintf (Depends-on): Add EOVERFLOW.
4418
4419         * lib/poll.c (EOVERFLOW): Remove fallback.
4420         * modules/poll (Depends-on): Add EOVERFLOW.
4421
4422         * lib/getugroups.c (EOVERFLOW): Remove fallback.
4423         * modules/getugroups (Depends-on): Add EOVERFLOW.
4424
4425         * lib/getdelim.c (EOVERFLOW): Remove fallback.
4426         * modules/getdelim (Depends-on): Add EOVERFLOW.
4427
4428         * lib/ftell.c (EOVERFLOW): Remove fallback.
4429         * modules/ftell (Depends-on): Add EOVERFLOW.
4430
4431         * lib/fprintf.c (EOVERFLOW): Remove fallback.
4432         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Drop gl_EOVERFLOW.
4433         * modules/fprintf-posix (Depends-on): Add EOVERFLOW.
4434
4435         * lib/c-stack.c (EOVERFLOW): Remove unused fallback.
4436
4437         * modules/EOVERFLOW-tests: New file.
4438         * tests/test-EOVERFLOW.c: New file.
4439
4440         * modules/EOVERFLOW: New file.
4441         * doc/posix-headers/errno.texi: Mention EOVERFLOW portability problem.
4442
4443 2008-03-30  Bruno Haible  <bruno@clisp.org>
4444
4445         Fix bug introduced on 2007-06-10.
4446         * lib/vasnprintf.c (VASNPRINTF): When performing zero-padding, use
4447         spaces instead of 0 digits for 's' also when ENABLE_UNISTDIO.
4448
4449 2008-03-30  Bruno Haible  <bruno@clisp.org>
4450
4451         Improve freadseek's efficiency after ungetc.
4452         * lib/freadseek.c: Include freadahead.h.
4453         (freadptrinc): New function, extracted from freadseek.
4454         (freadseek): Use it in a loop. Use freadahead to determine the number
4455         of loop iterations.
4456         * modules/freadseek (Depends-on): Add freadahead.
4457         (configure.ac): Require AC_C_INLINE.
4458
4459 2008-03-30  Bruno Haible  <bruno@clisp.org>
4460
4461         * lib/freadseek.c (freadseek): Don't ignore the return value of
4462         freadptr.
4463
4464 2008-03-29  Eric Blake  <ebb9@byu.net>
4465
4466         Add hex float support.
4467         * modules/strtod (Depends-on): Add c-ctype.
4468         (Link): Mention POW_LIB.
4469         * lib/strtod.c (strtod): Recognize hex floats.  Don't allow
4470         whitespace between 'e' and exponent.
4471         * tests/test-strtod.c (main): Enable hex float tests.
4472         * doc/posix-functions/strtod.texi (strtod): Document what gnulib
4473         now provides.
4474
4475         Document various strtod bugs, with some fixes.
4476         * doc/posix-functions/strtod.texi (strtod): Document bugs with
4477         "-0x", "inf", "nan", and hex constants.
4478         * doc/posix-functions/atof.texi (atof): Likewise.
4479         * modules/stdlib (Makefile.am): Support strtod.
4480         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Likewise.
4481         * m4/strtod.m4 (gl_FUNC_STRTOD): Fit in stdlib framework, and
4482         detect additional strtod bugs.
4483         * lib/stdlib.in.h (rpl_strtod): Add declarations.
4484         * lib/strtod.c (strtod): Return -0.0 on negative underflow.  Use
4485         bool where appropriate.  Parse 'inf' and 'nan'.
4486         * tests/test-strtod.c: New file.
4487         * modules/strtod (Depends-on): Add stdbool, stdlib.
4488         (configure.ac): Turn on module indicator.
4489         * modules/strtod-tests: New module.
4490
4491 2008-03-29  Eric Blake  <ebb9@byu.net>
4492
4493         Fix ftell on mingw.
4494         * lib/ftell.c (EOVERFLOW): Define if the system lacks it.
4495         * modules/ftell-tests (Depends-on): Add binary-io.
4496         * modules/ftello-tests (Depends-on): Likewise.
4497         * tests/test-ftell.c (main): Enhance test to cover behavior after
4498         ungetc.  Enforce binary mode.
4499         * tests/test-ftello.c (main): Likewise.
4500
4501         Pass test-freadseek on cygwin.
4502         * modules/freadseek (Depends-on): Use freadptr, not freadahead.
4503         * lib/freadseek.c (freadseek): Don't increment beyond bounds of
4504         ungetc buffer.
4505
4506         * tests/test-fflush2.c (main): Fix typo.
4507
4508 2008-03-29  Bruno Haible  <bruno@clisp.org>
4509
4510         * tests/test-fflush2.c (main): Temporarily disable the contents of
4511         this test.
4512         * m4/fflush.m4 (gl_FUNC_FFLUSH): Add a TODO.
4513         Reported by Eric Blake.
4514
4515 2008-03-28  Simon Josefsson  <simon@josefsson.org>
4516
4517         * lib/gc.h (enum Gc_hash): Add GC_SHA224.
4518         (GC_SHA224_DIGEST_SIZE): Add.
4519
4520         * lib/gc-libgcrypt.c (gc_hash_open): Handle SHA-224.
4521         (gc_hash_digest_length): Likewise.
4522         (gc_hash_buffer): Likewise.
4523
4524 2008-03-25  Bruno Haible  <bruno@clisp.org>
4525
4526         * doc/gnulib-tool.texi (gettextize and autopoint): Explain in more
4527         detail which gettext release to use.
4528         Reported by Simon Josefsson.
4529
4530 2008-03-26  Jim Meyering  <meyering@redhat.com>
4531
4532         gnumakefile: remove file from $(top_builddir), not from $(top_srcdir)
4533         * modules/gnumakefile (clean-GNUmakefile): Also, use
4534         test ... && ... || : syntax rather than if-then ... fi.
4535
4536         gnumakefile: Don't double-quote-expand $(VPATH) value.
4537         * modules/gnumakefile (clean-GNUmakefile): Use single quotes.
4538
4539 2008-03-24  Eric Blake  <ebb9@byu.net>
4540
4541         Alter GNUmakefile to install into top directory.
4542         * modules/maintainer-makefile: Split, and add dependency...
4543         * modules/gnumakefile: to this new module.
4544         * build-aux/GNUmakefile: Move...
4545         * top/GNUmakefile: ...here.
4546         * build-aux/maint.mk: Move...
4547         * top/maint.mk: ...here.
4548         * MODULES.html.sh (Support for maintaining...): Document new
4549         module.
4550
4551 2008-03-23  Bruno Haible  <bruno@clisp.org>
4552
4553         * gnulib-tool: New options --vc-files, --no-vc-files.
4554         (func_usage): Document them.
4555         (vc_files): New variable.
4556         (func_import): Consider vc_files.
4557         (func_create_testdir): Set vc_files to empty.
4558         Suggested by Jim Meyering and Karl Berry.
4559
4560 2008-03-23  Bruno Haible  <bruno@clisp.org>
4561
4562         Fix regex compilation error on HP-UX 11.
4563         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_TYPE_MBSTATE_T.
4564         * modules/regex (Files): Add m4/mbstate_t.m4.
4565         Reported by Ton Voon <ton.voon@altinity.com>.
4566
4567 2008-03-23  Bruno Haible  <bruno@clisp.org>
4568
4569         * doc/gnulib-tool.texi (gettextize and autopoint): New section.
4570
4571 2008-03-23  Eric Blake  <ebb9@byu.net>
4572             Bruno Haible  <bruno@clisp.org>
4573
4574         Install files from top/ in the destination directory.
4575         * gnulib-tool (func_get_automake_snippet): Synthesize an EXTRA_DIST
4576         augmentation also for the files from top/.
4577         (func_import, func_create_testdir): Rewrite file names:
4578         top/filename -> filename.
4579
4580 2008-03-23  Bruno Haible  <bruno@clisp.org>
4581
4582         Tweak "gnulib --version" output.
4583         * gnulib-tool (func_version): Replace "-dirty" suffix with "-modified".
4584
4585 2008-03-23  Bruno Haible  <bruno@clisp.org>
4586
4587         Tweak "gnulib --version" output.
4588         * gnulib-tool (func_version): Use date of last commit to ChangeLog,
4589         rather than contents of ChangeLog, when possible.
4590
4591 2008-03-21  Eric Blake  <ebb9@byu.net>
4592
4593         More --version tweaks.
4594         * gnulib-tool (func_version): Obey GNU Coding Standards.  Output
4595         date of last ChangeLog entry.
4596
4597 2008-03-21  Jim Meyering  <meyering@redhat.com>
4598
4599         * build-aux/GNUmakefile (_have-git-version-gen): Split long line.
4600
4601 2008-03-20  Eric Blake  <ebb9@byu.net>
4602
4603         VPATH fix.
4604         * build-aux/GNUmakefile (_have_git-version-gen): Look in correct dir.
4605
4606 2008-03-20  Simon Josefsson  <simon@josefsson.org>
4607
4608         * build-aux/GNUmakefile: Make git-version-gen optional.  Add
4609         _build-aux variable.  Suggested by Eric Blake <ebb9@byu.net>.
4610
4611 2008-03-20  Eric Blake  <ebb9@byu.net>
4612
4613         Sync GNUmakefile with coreutils.
4614         * build-aux/GNUmakefile (have-Makefile): Rename...
4615         (_have-Makefile): ...to this, for namespace consideration.
4616         (GNUmakefile.cfg): Include, if present.
4617         (_autoreconf): Define a default.
4618         (_is-dist-target): New rule for rebuilds to pick up intra-release
4619         version.
4620         (maint-cfg.mk): Rename...
4621         (cfg.mk): ...to this.
4622
4623 2008-03-18  Jim Meyering  <meyering@redhat.com>
4624
4625         New script and module: mktempd
4626         * MODULES.html.sh (maint+release support): Add mktempd.
4627         * build-aux/mktempd: New file.
4628         * modules/mktempd: New file.
4629
4630 2008-03-15  Jim Meyering  <meyering@redhat.com>
4631
4632         Undo last change.
4633         * lib/sha1.c, lib/md5.c: 63 != ~63.
4634         Reported by Andreas Schwab.
4635
4636         sha1.c, md5.c: Hoist a redundant expression.
4637         * lib/sha1.c (sha1_process_bytes): AND-off the low bits in
4638         "ctx->buflen" only once, before calling *_process_block.
4639         * lib/md5.c (md5_process_bytes): Likewise.
4640
4641 2008-03-14  Eric Blake  <ebb9@byu.net>
4642
4643         Bump copyright year in files generated by gnulib-tool.
4644         * gnulib-tool (func_emit_copyright_notice): Extract copyright from
4645         gnulib-tool, rather than hard-coding it.
4646
4647         Fix 'gnulib-tool --version' output to work with git.
4648         * gnulib-tool (func_gnulib_dir): New function, extracted from...
4649         (startup): ...here.
4650         (func_version): Use it to invoke git-version-gen, rather than
4651         relying on CVS keyword expansion.  Modernize wording.
4652         (cvsdatestamp, last_checkin_date, version): Kill unused
4653         variables.
4654
4655 2008-03-12  Jim Meyering  <meyering@redhat.com>
4656
4657         Recognize optional cast of the argument to free.
4658         * build-aux/useless-if-before-free: Update regexps.
4659
4660         * build-aux/bootstrap (gnulib_tool): Remove trailing blanks.
4661
4662 2008-03-11  Bruno Haible  <bruno@clisp.org>
4663
4664         Extend AC_LIB_LINKFLAGS to the situation of several libraries provided
4665         by a single package.
4666         * m4/lib-link.m4 (AC_LIB_FROMPACKAGE): New macro.
4667         (AC_LIB_LINKFLAGS_BODY): Use the information stored by
4668         AC_LIB_FROMPACKAGE. Use AC_ARG_WITH instead of AC_LIB_ARG_WITH.
4669         Reported by Sam Steingold <sds@gnu.org>.
4670
4671 2008-03-12  Sergey Poznyakoff  <gray@gnu.org.ua>
4672
4673         * build-aux/bootstrap (version_controlled_file): Adapt for SVN
4674         repositories.
4675
4676 2008-03-11  Bruno Haible  <bruno@clisp.org>
4677
4678         Avoid conflicts between local macro definitions.
4679         * m4/lib-link.m4 (AC_LIB_LINKFLAGS, AC_LIB_HAVE_LINKFLAGS,
4680         AC_LIB_LINKFLAGS_BODY): Use pushdef/popdef instead of define/undefine.
4681
4682 2008-03-10  Peter O'Gorman  <bug-gnulib@mlists.thewrittenword.com>
4683             Bruno Haible  <bruno@clisp.org>
4684
4685         Make va_copy work with some version of xlc on AIX 5.1.
4686         * lib/stdarg.in.h: New file.
4687         * m4/stdarg.m4 (gl_STDARG_H): Initialize STDARG_H and NEXT_STDARG_H.
4688         On AIX, use a <stdarg.h> file substitute.
4689         * modules/stdarg (Files): Add lib/stdarg.in.h.
4690         (Depends-on): Add include_next.
4691         (Makefile.am): Build a stdarg.h substitute if requested.
4692         * doc/posix-functions/va_copy.texi: Document the platforms lacking it.
4693
4694 2008-03-10  Bruno Haible  <bruno@clisp.org>
4695
4696         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Document a restriction.
4697         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
4698         Reported by Peter O'Gorman <bug-gnulib@mlists.thewrittenword.com>.
4699
4700 2008-03-10  Bruno Haible  <bruno@clisp.org>
4701
4702         * modules/stdlib (Depends-on): Add include_next, remove
4703         absolute-header.
4704
4705 2008-03-09  Bruno Haible  <bruno@clisp.org>
4706
4707         * lib/freadahead.h (freadahead): Document more precisely.
4708         * lib/freadahead.c (freadahead): When an ungetc is in effect, return
4709         the sum of both buffer sizes.
4710         * tests/test-freadahead.c (main): Also test behaviour after ungetc.
4711         * NEWS: Document the change.
4712
4713 2008-03-09  Bruno Haible  <bruno@clisp.org>
4714
4715         Extend freadptr to return also the buffer size.
4716         * lib/freadptr.h (freadptr): Add sizep argument.
4717         * lib/freadptr.c: Include freadptr.h, not freadahead.h.
4718         (freadptr): Add sizep argument. Determine buffer size like freadahead
4719         does.
4720         * tests/test-freadptr.c: Don't include freadahead.h.
4721         (main): Adapt for new calling convention of freadptr.
4722         * tests/test-freadptr2.c: New file, based on tests/test-freadahead.c.
4723         * tests/test-freadptr2.sh: New file, based on tests/test-freadahead.sh.
4724         * modules/freadptr-tests (Files): Add tests/test-freadptr2.c,
4725         tests/test-freadptr2.sh.
4726         (Depends): Remove freadahead.
4727         (TESTS): Add test-freadptr2.sh.
4728         (check_PROGRAMS): Add test-freadptr2.
4729
4730 2008-03-09  Bruno Haible  <bruno@clisp.org>
4731
4732         * doc/Makefile (%.pdf): Explain how to remedy the save_size error.
4733         Report and solution by Simon Josefsson.
4734
4735 2008-03-06  Bruno Haible  <bruno@clisp.org>
4736
4737         Make fflush after ungetc work on BSD platforms.
4738         * lib/fflush.c (rpl_fflush): Discard ungetc buffer if possible.
4739         * tests/test-fflush2.c: New file.
4740         * tests/test-fflush2.sh: New file.
4741         * modules/fflush-tests (Files): Add tests/test-fflush2.sh,
4742         tests/test-fflush2.c.
4743         (Makefile.am): Build test-fflush2 and run test-fflush2.sh.
4744         * doc/posix-functions/fflush.texi: Document fflush after ungetc bug.
4745
4746 2008-03-06  Eric Blake  <ebb9@byu.net>
4747
4748         Likewise for ftello.
4749         * modules/ftello (Dependencies): Add extensions.
4750         * m4/ftello.m4 (gl_FUNC_FTELLO): Require AC_USE_SYSTEM_EXTENSIONS.
4751
4752 2008-03-06  Bruno Haible  <bruno@clisp.org>
4753
4754         * modules/fseeko (Dependencies): Add extensions.
4755         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Require AC_USE_SYSTEM_EXTENSIONS.
4756         Needed on glibc systems.
4757
4758 2008-03-06  Bruno Haible  <bruno@clisp.org>
4759
4760         * doc/gnulib-tool.texi (@nosuchmodulenote): Avoid line break inside
4761         email address.
4762         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
4763
4764 2008-03-06  Bruno Haible  <bruno@clisp.org>
4765
4766         * users.txt: Add libgnupdf.
4767
4768 2008-03-06  Thien-Thi Nguyen  <ttn@gnuvola.org>  (tiny change)
4769
4770         * doc/gnulib-tool.texi (@nosuchmodulenote): New macro.
4771         (Header File Substitutes, Function Substitutes,
4772         Glibc Header File Substitutes, Glibc Function Substitutes): Use it.
4773         (Build robot for gnulib): Fix typo.
4774
4775 2008-03-06  Bruno Haible  <bruno@clisp.org>
4776
4777         * doc/gnulib-tool.texi (VCS Issues): Small updates.
4778         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
4779
4780 2008-03-06  Bruno Haible  <bruno@clisp.org>
4781
4782         * doc/func.texi: New file, extracted from doc/gnulib.texi.
4783         * doc/gnulib.texi: Include it.
4784
4785 2008-03-06  Simon Josefsson  <simon@josefsson.org>
4786
4787         * modules/func (License): Change license to unlimited; there was
4788         no LGPL parts in the module anyway.
4789
4790 2008-03-06  Simon Josefsson  <simon@josefsson.org>
4791
4792         * modules/__func__: Renamed to modules/func.
4793         * modules/__func__-tests: Renamed to modules/func-tests.
4794         * tests/test-__func__.c: Renamed to tests/test-func.c.
4795         * m4/__func__.m4: Renamed to m4/func.m4.
4796         * doc/gnulib.texi (__func__): Section renamed to func.
4797         Suggested by Eric Blake <ebb9@byu.net>.
4798
4799 2008-03-06  Simon Josefsson  <simon@josefsson.org>
4800
4801         * doc/gnulib.texi (__func__): Use C99 terminology when talking
4802         about __func__.  Make example self-contained.  Suggested by Eric
4803         Blake <ebb9@byu.net>.
4804
4805         * tests/test-__func__.c (main): Avoid extraneous () around __func.
4806         Suggested by Eric Blake <ebb9@byu.net>.
4807
4808 2008-03-06  Simon Josefsson  <simon@josefsson.org>
4809
4810         * modules/__func__: New file.
4811         * modules/__func__-tests: New file.
4812         * tests/test-__func__.c: New file.
4813         * m4/__func__.m4: New file.
4814         * doc/gnulib.texi (__func__): Document __func__ module.
4815
4816 2008-03-05  Simon Josefsson  <simon@josefsson.org>
4817
4818         * modules/byteswap (License): Re-license as LGPLv2+.
4819
4820 2008-03-05  Simon Josefsson  <simon@josefsson.org>
4821
4822         * doc/Makefile: Add pdf target.
4823
4824 2008-03-05  Simon Josefsson  <simon@josefsson.org>
4825
4826         * modules/inline (License): Use 'unlimited', since there are only
4827         *.m4 files in this module.
4828
4829 2008-03-03  John E. Malmberg  <wb8tyw@qsl.net>  (tiny change)
4830             Bruno Haible  <bruno@clisp.org>
4831
4832         Add support for HP C 7.1 on OpenVMS 8.3.
4833         * lib/alloca.in.h (alloca): Define as alias for DEC C on VMS.
4834
4835 2008-03-03  John E. Malmberg  <wb8tyw@qsl.net>  (tiny change)
4836
4837         Update VMS specifics.
4838         * lib/getopt.c [VMS]: Remove include of unixlib.h.
4839
4840 2008-03-02  Jim Meyering  <meyering@redhat.com>
4841
4842         Remove the last dependency on the "free" module.
4843         * m4/readutmp.m4 (gl_READUTMP): Don't require gl_FUNC_FREE.
4844         Reported by Bob Proulx.
4845
4846         * lib/getdelim.c (getdelim): Don't leak memory upon failed realloc.
4847
4848         Remove useless "if" tests before free.  Deprecate "free" module.
4849         * doc/posix-functions/free.texi: Mention that this
4850         module is no longer useful.
4851         * modules/free (Notice): Say this module is obsolete.
4852         * modules/readutmp (Depends-on): Remove free.
4853         * lib/save-cwd.c (free_cwd): Remove useless "if" before free.
4854         * lib/putenv.c (putenv): Likewise.
4855         * lib/gc-gnulib.c (gc_cipher_close): Likewise.
4856         * lib/getaddrinfo.c (freeaddrinfo): Likewise.
4857         * tests/test-c-strcasestr.c (main): Likewise.
4858         * tests/test-c-strstr.c (main): Likewise.
4859         * tests/test-mbscasestr1.c (main): Likewise.
4860         * tests/test-mbscasestr2.c (main): Likewise.
4861         * tests/test-mbsstr1.c (main): Likewise.
4862         * tests/test-mbsstr2.c (main): Likewise.
4863         * tests/test-memmem.c (main): Likewise.
4864         * tests/test-strcasestr.c (main): Likewise.
4865         * tests/test-striconv.c (main): Likewise.
4866         * tests/test-striconveh.c (main): Likewise.
4867         * tests/test-striconveha.c (main): Likewise.
4868         * tests/test-strstr.c (main): Likewise.
4869
4870         * build-aux/git-version-gen: Adjust a comment and the Usage string.
4871
4872         bootstrap: sync from coreutils again
4873         * build-aux/bootstrap: Remove dangling m4/*.m4 symlinks.
4874
4875 2008-03-01  Jim Meyering  <meyering@redhat.com>
4876
4877         bootstrap: sync from coreutils
4878         * build-aux/bootstrap (update_po_files): Copy a .po file into place
4879         also when the target doesn't exist.
4880
4881 2008-03-01  Eric Blake  <ebb9@byu.net>
4882
4883         Fix bugs in last patch.
4884         * lib/memchr2.c (memchr2): Fix typo.
4885         * tests/test-memchr2.c: Test previous bug, and don't use GNU
4886         extension.
4887         Reported by Bruce Korb.
4888
4889         New module 'memchr2'.
4890         * modules/memchr2: New file.
4891         * modules/memchr2-tests: Likewise.
4892         * lib/memchr2.h: Likewise.
4893         * lib/memchr2.c: Likewise, based on memchr.c.
4894         * tests/test-memchr2.c: New test.
4895         * MODULES.html.sh (String handling): Add memchr2.
4896
4897 2008-02-29  Bruno Haible  <bruno@clisp.org>
4898
4899         * modules/freadseek-tests: New file.
4900         * tests/test-freadseek.sh: New file.
4901         * tests/test-freadseek.c: New file.
4902
4903         New module 'freadseek'.
4904         * modules/freadseek: New file.
4905         * lib/freadseek.h: New file.
4906         * lib/freadseek.c: New file.
4907         * MODULES.html.sh (File stream based Input/Output): Add freadseek.
4908
4909 2008-02-29  Sergey Poznyakoff  <gray@gnu.org.ua>
4910
4911         * users.txt: Add anubis, cpio, mailfromd, mailutils, radius,
4912         wydawca.
4913
4914         * m4/argp.m4 (gl_ARGP): Use AC_TRY_LINK to test if
4915         program_invocation_name and program_invocation_short_name are
4916         present.
4917
4918 2008-02-28  Bruno Haible  <bruno@clisp.org>
4919
4920         * tests/test-freadptr.c: Add a test for behaviour after ungetc.
4921         * tests/test-freadptr.sh: Also test non-seekable stdin.
4922
4923 2008-02-28  Sergey Poznyakoff  <gray@gnu.org.ua>
4924
4925         * build-aux/bootstrap (source_base, m4_base)
4926         (doc_base, tests_base): New variables.
4927         (gnulib_tool_options): Do not hardcode base directories, use
4928         the above variables instead.
4929
4930 2008-02-28  Atsushi SAKAI  <sakaia@jp.fujitsu.com>
4931
4932         * lib/xsize.h: Fix typo in comment: s/tupe/type/.
4933
4934 2008-02-28  Bruno Haible  <bruno@clisp.org>
4935
4936         * modules/freadptr-tests: New file.
4937         * tests/test-freadptr.sh: New file.
4938         * tests/test-freadptr.c: New file.
4939
4940         New module 'freadptr'.
4941         * modules/freadptr: New file.
4942         * lib/freadptr.h: New file.
4943         * lib/freadptr.c: New file.
4944         * MODULES.html.sh (File stream based Input/Output): Add freadptr.
4945
4946 2008-02-26  Karl Berry  <karl@freefriends.org>
4947
4948         Sync from Libtool:
4949         * libltdl/argz.c (argz_add, argz_count): New functions.
4950         * libltdl/argz.in.h: Declare them.
4951         Report by Juan Manuel Guerrero <juan.guerrero@gmx.de>.
4952
4953 2008-02-22  Bruno Haible  <bruno@clisp.org>
4954
4955         * m4/time_r.m4 (gl_TIME_R): Also check that localtime_r's return type
4956         is a pointer type.  Needed for HP-UX 10.
4957         * doc/posix-functions/localtime_r.texi: Mention HP-UX 10.
4958         * doc/posix-functions/gmtime_r.texi: Likewise.
4959         Reported by Peter O'Gorman <bug-gnulib@mlists.thewrittenword.com>.
4960
4961 2008-02-24  Bruno Haible  <bruno@clisp.org>
4962
4963         * modules/environ-tests: New file.
4964         * tests/test-environ.c: New file.
4965
4966         New module 'environ'.
4967         * modules/environ: New file.
4968         * lib/unistd.in.h (environ): New declaration.
4969         * m4/environ.m4: New file.
4970         (gt_CHECK_VAR_DECL): Moved here from m4/setenv.m4. Undefine gt_cv_var
4971         after use.
4972         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_ENVIRON and
4973         HAVE_DECL_ENVIRON.
4974         * modules/unistd (Makefile.am): Substitute also GNULIB_ENVIRON and
4975         HAVE_DECL_ENVIRON.
4976         * doc/posix-functions/environ.texi: Mention module 'environ'. Remove
4977         wrong claim that 'environ' is missing on some systems.
4978         * modules/execute (Depends-on): Add environ.
4979         * lib/execute.c (environ): Remove fallback declaration.
4980         * modules/pipe (Depends-on): Add environ.
4981         * lib/pipe.c (environ): Remove fallback declaration.
4982         * modules/setenv (Depends-on): Add environ.
4983         * lib/setenv.c (environ): Remove fallback declaration.
4984         * modules/unsetenv (Depends-on): Add environ.
4985         * lib/unsetenv.c (environ): Remove fallback declaration.
4986         * m4/setenv.m4 (gt_CHECK_VAR_DECL): Remove macro. Moved to
4987         m4/environ.m4.
4988         (gl_PREREQ_SETENV): Require gl_ENVIRON instead of testing for environ.
4989         (gl_PREREQ_UNSETENV): Likewise.
4990
4991 2008-02-24  Bruno Haible  <bruno@clisp.org>
4992
4993         * doc/posix-functions/environ.texi: Document the MacOS X problem.
4994
4995 2008-02-20  Bob Proulx  <bob@proulx.com>
4996
4997         Enable use of older two part flavor 'git describe'.
4998         * build-aux/git-version-gen: If using the older two part flavor of
4999         git version then recreate the third part now present in the
5000         newer three part flavor of git describe.
5001
5002 2008-02-20  Martin Buchholz  <martin@xemacs.org>  (tiny change)
5003
5004         * lib/fts.c (fts_build): Typo correction to comment.
5005
5006 2008-02-17  Bruno Haible  <bruno@clisp.org>
5007
5008         * lib/git-merge-changelog.c (main) [split_merged_entry]: Avoid
5009         generating no-op conflicts.
5010
5011 2008-02-17  Bruno Haible  <bruno@clisp.org>
5012
5013         Speed up by 10%.
5014         * lib/git-merge-changelog.c (main): Use the iterator to iterate through
5015         result_entries, rather than an index-based loop.
5016
5017 2008-02-17  Bruno Haible  <bruno@clisp.org>
5018
5019         Speed up by 25%.
5020         * lib/git-merge-changelog.c (struct entry): New fields 'hashcode',
5021         'hashcode_cached'.
5022         (entry_create): New function.
5023         (entry_hashcode): Use the cached hashcode if possible.
5024         (read_changelog_file, try_split_merged_entry): Use entry_create.
5025
5026 2008-02-17  Bruno Haible  <bruno@clisp.org>
5027
5028         Speed up from O(n^2) to O(n) for long ChangeLog files.
5029         * lib/git-merge-changelog.c: Include gl_rbtreehash_list.h.
5030         (read_changelog_file): Change implementation of entries_reversed list
5031         to rbtreehash.
5032         * modules/git-merge-changelog (Depends-on): Add rbtreehash-list.
5033
5034 2008-02-17  Bruno Haible  <bruno@clisp.org>
5035
5036         New option --split-merged-entry.
5037         * lib/git-merge-changelog.c (FSTRCMP_STRICTER_THRESHOLD): New macro.
5038         (find_paragraph_end, try_split_merged_entry): New functions.
5039         (long_options): Add option --split-merged-entry.
5040         (usage): Document option --split-merged-entry.
5041         (main): Implement option --split-merged-entry.
5042         Reported by Eric Blake.
5043
5044 2008-02-17  Bruno Haible  <bruno@clisp.org>
5045
5046         * lib/git-merge-changelog.c: Include c-strstr.h.
5047         (main): Support the "git pull --rebase" situation.
5048         * modules/git-merge-changelog (Depends-on): Add c-strstr.
5049         Reported by Eric Blake.
5050
5051 2008-02-16  Eric Blake  <ebb9@byu.net>
5052
5053         Avoid doubling \ in common case of "c-maybe" quoting style.
5054         * lib/quotearg.c (quotearg_buffer_restyled): Don't escape \ when
5055         eliding outer quotes.
5056         * lib/quotearg.h: Document this.
5057         * tests/test-quotearg.c (result_strings, inputs, results_g)
5058         (flag_results, locale_results): Test it by adding a new string to
5059         each test group.
5060         (compare_strings): Test new string.
5061
5062 2008-02-13  Eric Blake  <ebb9@byu.net>
5063
5064         Avoid trigraph quoting in default output.
5065         * lib/quotearg.h (enum quoting_flags): Add QA_SPLIT_TRIGRAPHS.
5066         * lib/quotearg.c (quotearg_buffer_restyled): Don't quote trigraphs
5067         unless explicitly requested.
5068         * tests/test-quotearg.c (flag_results, main): Add additional tests.
5069
5070 2008-02-13  Lasse Collin  <lasse.collin@tukaani.org>
5071
5072         Don't rely on signed integer overflowing to negative value.
5073         * lib/getugroups.c (getugroups): Include <limits.h>.
5074         Instead, compare against INT_MAX, and increment only if the test passes.
5075
5076 2008-02-13  Jim Meyering  <meyering@redhat.com>
5077         and Eric Blake  <ebb9@byu.net>
5078
5079         Avoid shadowing warning and compile errors on Linux.
5080         * tests/test-quotearg.c [ENABLE_NLS]: Disable <libintl.h>
5081         forwarding macros on Linux.
5082         (dcgettext): Define a stub, for Linux.
5083         (results_g, main): Avoid warnings.
5084
5085 2008-02-12  Eric Blake  <ebb9@byu.net>
5086
5087         Silence warning in last patch.
5088         * lib/quotearg.c (quotearg_buffer_restyled): Add missing const.
5089
5090         Quotearg part 4: add tests, fix c-maybe colon quoting.
5091         * lib/quotearg.h: Improve documentation.
5092         * lib/quotearg.c (quotearg_buffer_restyled): Don't add extra
5093         escapes when adding outer quotes.  When quoting trigraphs, use
5094         valid C notation.  When quoting NUL, omit extra characters if next
5095         character is not digit.  Alter prototype.
5096         (quotearg_buffer, quotearg_alloc_mem, quotearg_n_options): Adjust
5097         callers.
5098         * modules/quotearg-tests: New module.
5099         * tests/test-quotearg.c: New test.
5100
5101 2008-02-07  Eric Blake  <ebb9@byu.net>
5102
5103         Quotearg part 3: add flag to control outer quote elision.
5104         * lib/quotearg.h (c_maybe_quoting_style): New style.
5105         (enum quoting_flags): Better documentation of flags.
5106         * lib/quotearg.c (quoting_style_args, quoting_style_vals): Add
5107         c-maybe style.
5108         (quotearg_buffer_restyled): Handle new flag to elide outer
5109         quotes.
5110
5111         Quotearg part 2: add flag that can control NUL elision.
5112         * lib/quotearg.h (set_quoting_flags): New prototype.
5113         * lib/quotearg.c (struct quoting_options): Add flag field.
5114         (set_quoting_flags): New function.
5115         (quotearg_buffer_restyled): Add flags parameter.
5116         (quotearg_alloc_mem): Set the flag if length cannot be returned.
5117         (quotearg_n_options): Set the flag, since length cannot be
5118         returned.
5119         (quoting_options_from_style): Default flags correctly.
5120
5121         Quotearg part 1: more wrappers, restore quotearg_char state.
5122         * lib/quotearg.h (quotearg_alloc_mem, quotearg_n_mem)
5123         (quotearg_mem, quotearg_style_mem, quotearg_char_mem)
5124         (quotearg_colon_mem): New wrappers.
5125         * lib/quotearg.c (quotearg_alloc, quotearg_char): Rewrite...
5126         (quotearg_alloc_mem, quotearg_char_mem): ...in terms of these new
5127         functions.
5128         (quotearg_n_mem, quotearg_mem, quotearg_style_mem)
5129         (quotearg_colon_mem): New functions.
5130
5131 2008-02-11  Bruno Haible  <bruno@clisp.org>
5132
5133         * modules/git-merge-changelog (Makefile.am): Don't use -L and -l for a
5134         library in the current directory: it does not work with parallel make.
5135         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
5136
5137 2008-02-11  Bruno Haible  <bruno@clisp.org>
5138
5139         * .gitattributes: New file.
5140
5141 2008-02-11  Jim Meyering  <meyering@redhat.com>
5142
5143         useless-if-before-free: Fix reversed exit values.
5144         * build-aux/useless-if-before-free: Use correct values
5145         for EXIT_MATCH and EXIT_NO_MATCH.
5146
5147         * build-aux/useless-if-before-free: Close stdout carefully.
5148
5149 2008-02-10  Bruno Haible  <bruno@clisp.org>
5150
5151         New module 'git-merge-changelog'.
5152         * modules/git-merge-changelog: New file.
5153         * lib/git-merge-changelog.c: New file.
5154
5155 2008-02-10  Jim Meyering  <meyering@redhat.com>
5156
5157         useless-if-before-free: New option: --list (-l).
5158
5159         useless-if-before-free: Don't exit immediately upon open failure.
5160         * build-aux/useless-if-before-free: Exit 2 for errors.
5161         Upon failure to open a file, don't exit immediately.
5162         Rather, just warn and continue with any remaining files.
5163
5164 2008-02-10  Bruno Haible  <bruno@clisp.org>
5165
5166         New abstract list operation 'node_set_value'.
5167         * lib/gl_list.h (gl_list_node_set_value): New function.
5168         (struct gl_list_implementation): New field node_set_value.
5169         * lib/gl_list.c (gl_list_node_set_value): New function.
5170         * lib/gl_array_list.c (gl_array_node_set_value): New function.
5171         (gl_array_list_implementation): Update.
5172         * lib/gl_carray_list.c (gl_carray_node_set_value): New function.
5173         (gl_carray_list_implementation): Update.
5174         * lib/gl_anylinked_list2.h (gl_linked_node_set_value): New function.
5175         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
5176         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
5177         * lib/gl_anytree_list2.h (gl_tree_node_set_value): New function.
5178         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
5179         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
5180         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
5181         Update.
5182         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
5183         * lib/gl_sublist.c (gl_sublist_node_set_value): New function.
5184         (gl_sublist_list_implementation): Update.
5185
5186 2008-02-10  Bruno Haible  <bruno@clisp.org>
5187
5188         * lib/diffseq.h: Write "ELEMENT const" instead of "const ELEMENT".
5189         Needed when ELEMENT is #defined to 'some_type *'.
5190
5191 2008-02-10  Jim Meyering  <meyering@redhat.com>
5192
5193         New script and module: useless-if-before-free
5194         * MODULES.html.sh (maint+release support): Add useless-if-before-free.
5195         * build-aux/useless-if-before-free: New file.
5196         * modules/useless-if-before-free: New file.
5197
5198         * build-aux/gitlog-to-changelog: Use committer date, not author date.
5199
5200         xstrtol_error: Fix typo.
5201         * lib/xstrtol-error.c (xstrtol_error): The parameter was unused:
5202         s/exit_failure/exit_status/.
5203
5204 2008-02-09  Jim Meyering  <meyering@redhat.com>
5205
5206         New script and module: gitlog-to-changelog
5207         * MODULES.html.sh (maint+release support): Add gitlog-to-changelog.
5208         * modules/gitlog-to-changelog: New file.
5209         * build-aux/gitlog-to-changelog: New file.
5210
5211 2008-02-08  Jim Meyering  <meyering@redhat.com>
5212
5213         Avoid two "parameter unused" warnings.
5214         * lib/stat-time.h (get_stat_birthtime_ns, get_stat_birthtime):
5215         Mark "st" as used.
5216
5217         Use "git COMMAND", not "git-COMMAND".
5218         * build-aux/bootstrap (version_controlled_file): s/git-rm/git-rm/.
5219         * build-aux/announce-gen (get_tool_versions): Correct a diagnostic.
5220         * build-aux/git-version-gen: Use "git status", not "git-status".
5221
5222 2008-02-07  Bruno Haible  <bruno@clisp.org>
5223
5224         * lib/vasnprintf.c (VASNPRINTF): Don't use %n on native Woe32 systems.
5225         Avoids a crash on Windows Vista.
5226         Reported by Adam Strzelecki <ono@java.pl> via
5227         Simon Josefsson <simon@josefsson.org>.
5228
5229 2008-02-06  Bruno Haible  <bruno@clisp.org>
5230
5231         Fix *printf behaviour regarding the left-adjust flag on HP-UX 10.20.
5232         * m4/printf.m4 (gl_PRINTF_FLAG_LEFTADJUST): New macro.
5233         * lib/vasnprintf.c (VASNPRINTF): Handle NEED_PRINTF_FLAG_LEFTADJUST.
5234         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_LEFTADJUST): New macro.
5235         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
5236         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
5237         gl_PRINTF_FLAG_LEFTADJUST and test its result. Invoke
5238         gl_PREREQ_VASNPRINTF_FLAG_LEFTADJUST.
5239         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
5240         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
5241         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
5242         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
5243         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
5244         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
5245         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
5246         * tests/test-vasnprintf-posix.c (test_function): Add testcases for the
5247         left-adjust flag.
5248         * tests/test-snprintf-posix.h (test_function): Likewise.
5249         * tests/test-sprintf-posix.h (test_function): Likewise.
5250         * tests/test-vasprintf-posix.c (test_function): Likewise.
5251         * doc/posix-functions/fprintf.texi: Update.
5252         * doc/posix-functions/printf.texi: Update.
5253         * doc/posix-functions/snprintf.texi: Update.
5254         * doc/posix-functions/sprintf.texi: Update.
5255         * doc/posix-functions/vfprintf.texi: Update.
5256         * doc/posix-functions/vprintf.texi: Update.
5257         * doc/posix-functions/vsnprintf.texi: Update.
5258         * doc/posix-functions/vsprintf.texi: Update.
5259         Reported by Peter Fales <psfales@alcatel-lucent.com>.
5260
5261 2008-02-06  Bruno Haible  <bruno@clisp.org>
5262
5263         Fix bug introduced on 2008-01-26.
5264         * lib/isnan.c (FUNC): Set to rpl_isnand, not rpl_isnan.
5265
5266 2008-02-06  Bruno Haible  <bruno@clisp.org>
5267
5268         Fix bug introduced on 2007-06-10.
5269         * lib/vasnprintf.c (VASNPRINTF): Perform zero-padding also if
5270         !NEED_PRINTF_FLAG_ZERO.
5271
5272 2008-02-05  Peter O'Gorman <pogma@thewrittenword.com>
5273
5274         getloadavg: use libperfstat on AIX5
5275         * lib/getloadavg.c, m4/getloadavg.m4 [aix]: Use libperfstat
5276
5277 2008-02-03  Bruno Haible  <bruno@clisp.org>
5278
5279         * lib/diffseq.h: Add comments about required #includes.
5280         Reported by Michael Biggs <gnulib@doubleplum.net>.
5281
5282 2008-02-01  Bruno Haible  <bruno@clisp.org>
5283
5284         * users.txt: Add gnuit.
5285
5286 2008-01-31  Bruno Haible  <bruno@clisp.org>
5287
5288         * lib/md4.c (set_uint32): Mark as inline.
5289         * lib/md5.c (set_uint32): Likewise.
5290         * lib/sha1.c (set_uint32): Likewise.
5291         * m4/md4.m4 (gl_MD4): Require AC_C_INLINE.
5292         * m4/md5.m4 (gl_MD5): Likewise.
5293         * m4/sha1.m4 (gl_SHA1): Likewise.
5294
5295 2008-01-31  Jim Meyering  <meyering@redhat.com>
5296
5297         Use "sizeof VAR", rather than a literal "4".
5298         * lib/md5.c (md5_read_ctx): Use sizeof ctx->A, not 4.
5299         * lib/md4.c (md4_read_ctx): Likewise.
5300         * lib/sha1.c (sha1_read_ctx): Likewise.
5301
5302 2008-01-31  Simon Josefsson  <simon@josefsson.org>
5303
5304         * tests/test-sha1.c: New file, based on test-md5.c.
5305
5306         * modules/crypto/sha1-tests: New file.
5307
5308 2008-01-31  Simon Josefsson  <simon@josefsson.org>
5309
5310         * lib/sha1.h (SHA1_DIGEST_SIZE): Define.
5311
5312 2008-01-31  Jim Meyering  <meyering@redhat.com>
5313
5314         Prefer "sizeof v" over the equivalent "4".
5315         * lib/md4.c (set_uint32): Use "sizeof v" as memcpy length, not 4.
5316         * lib/md5.c (set_uint32): Likewise.
5317         * lib/sha1.c (set_uint32): Likewise.
5318
5319 2008-01-31  Simon Josefsson  <simon@josefsson.org>
5320
5321         * lib/sha1.c (set_uint32): Mark function as static.
5322
5323 2008-01-31  Simon Josefsson  <simon@josefsson.org>
5324
5325         md2: clarify comments to say that alignment is not required.
5326         * lib/md2.h: Remove warning about alignment in comment.
5327         * lib/md2.c (md2_read_ctx, md2_finish_ctx): Doc fix, alignment has
5328         never been required.
5329
5330 2008-01-31  Simon Josefsson  <simon@josefsson.org>
5331
5332         md4: adapt alignment constraint fix from sha1.
5333         * lib/md4.c (set_uint32): New function, from sha1.c
5334         (md4_read_ctx): Use it.
5335         (md4_finish_ctx): Doc fix.
5336         * lib/md4.h: Doc fix.
5337
5338 2008-01-31  Simon Josefsson  <simon@josefsson.org>
5339
5340         md5: adapt alignment constraint fix from sha1.
5341         * lib/md5.c (set_uint32): New function, from sha1.c
5342         (md5_read_ctx): Use it.
5343         (md5_finish_ctx): Doc fix.
5344         * lib/md5.h: Doc fix.
5345
5346 2008-01-30  Peter Palfrader  <weasel@debian.org>
5347
5348         sha1: remove the result buffer alignment constraint
5349         * lib/sha1.c (set_uint32): New function.
5350         (sha1_read_ctx): Rewrite to remove the result buffer alignment
5351         constraint.
5352         (sha1_finish_ctx): Remove comment warning about alignment constraint.
5353         * lib/sha1.h: Likewise.
5354
5355 2008-01-30  Andreas Schwab  <schwab@suse.de>
5356             Bruno Haible  <bruno@clisp.org>
5357
5358         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Include <float.h> and ensure a
5359         correct definition of LDBL_MIN_EXP.
5360
5361 2008-01-30  Karl Berry  <karl@gnu.org>
5362
5363         * config/srclist-update: try to preserve x bit on updates.
5364         * config/srclistvars.sh: update for karl.
5365
5366 2008-01-29  Jim Meyering  <meyering@redhat.com>
5367
5368         vasnprintf.c: Avoid warning about unused label
5369         * lib/vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Guard the
5370         "overflow" label definition and associated code with the
5371         same cpp condition that guards the sole use of that label.
5372
5373 2008-01-26  Bruno Haible  <bruno@clisp.org>
5374
5375         * m4/isnanl.m4 (gl_HAVE_ISNANL_NO_LIBM, gl_HAVE_ISNANL_IN_LIBM,
5376         gl_FUNC_ISNANL_WORKS): Test the GCC >= 4.0 built-in.
5377         * lib/isnanl.h (isnanl): Use the GCC >= 4.0 built-in.
5378         * lib/isnanl-nolibm.h (isnanl): Likewise.
5379         Reported by Paul Eggert <eggert@cs.ucla.edu>.
5380
5381 2008-01-26  Bruno Haible  <bruno@clisp.org>
5382
5383         * m4/isnand.m4 (gl_FUNC_ISNAND_NO_LIBM): Test the GCC >= 4.0 built-in.
5384         * lib/isnand.h (isnand): Use the GCC >= 4.0 built-in.
5385
5386 2008-01-26  Bruno Haible  <bruno@clisp.org>
5387
5388         * m4/isnanf.m4 (gl_HAVE_ISNANF_NO_LIBM, gl_ISNANF_WORKS): Test the
5389         GCC >= 4.0 built-in.
5390         * lib/isnanf.h (isnanf): Use the GCC >= 4.0 built-in.
5391
5392 2008-01-26  Bruno Haible  <bruno@clisp.org>
5393
5394         Rename isnan, applicable to 'double' only, to isnand.
5395         * modules/isnand-nolibm: Renamed from modules/isnan-nolibm.
5396         (Files): Add lib/isnand.h, lib/isnand.c. Remove lib/isnan.h.
5397         (configure.ac): Update.
5398         (Include): Replace "isnan.h" with "isnand.h".
5399         * m4/isnand.m4: Renamed from m4/isnan.m4.
5400         (gl_FUNC_ISNAND_NO_LIBM): Renamed from gl_FUNC_ISNAN_NO_LIBM. Set
5401         HAVE_ISNAND_IN_LIBC instead of HAVE_ISNAN_IN_LIBC. Build isnand.c
5402         instead of isnan.c.
5403         * lib/isnand.h: Renamed from lib/isnan.h. Test HAVE_ISNAND_IN_LIBC
5404         instead of HAVE_ISNAN_IN_LIBC.
5405         (isnand): Renamed from isnan.
5406         * lib/isnand.c: New file.
5407         * modules/isnand-nolibm-tests: Renamed from modules/isnan-nolibm-tests.
5408         (Files): Add tests/test-isnand.c. Remove tests/test-isnan.c.
5409         (Makefile.am): Update.
5410         * tests/test-isnand.c: Renamed from tests/test-isnan.c.
5411         Include isnand.h instead of isnan.h.
5412         (main): Test isnand instead of isnan.
5413         * modules/fprintf-posix (Depends-on): Add isnand-nolibm, remove
5414         isnan-nolibm.
5415         * modules/frexp (Depends-on): Likewise.
5416         * modules/frexp-tests (Depends-on): Likewise.
5417         * modules/frexp-nolibm (Depends-on): Likewise.
5418         * modules/frexp-nolibm-tests (Depends-on): Likewise.
5419         * modules/isfinite (Depends-on): Likewise.
5420         * modules/round-tests (Depends-on): Likewise.
5421         * modules/signbit (Depends-on): Likewise.
5422         * modules/signbit-tests (Depends-on): Likewise.
5423         * modules/snprintf-posix (Depends-on): Likewise.
5424         * modules/sprintf-posix (Depends-on): Likewise.
5425         * modules/trunc-tests (Depends-on): Likewise.
5426         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
5427         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
5428         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
5429         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
5430         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
5431         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
5432         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
5433         * modules/vasnprintf-posix (Depends-on): Likewise.
5434         * modules/vasprintf-posix (Depends-on): Likewise.
5435         * modules/vfprintf-posix (Depends-on): Likewise.
5436         * modules/vsnprintf-posix (Depends-on): Likewise.
5437         * modules/vsprintf-posix (Depends-on): Likewise.
5438         * lib/frexp.c: Include isnand.h instead of isnan.h.
5439         (ISNAN): Set to isnand instead of isnan.
5440         * lib/isfinite.c: Include isnand.h instead of isnan.h.
5441         (gl_isfinited): Use isnand instead of isnan.
5442         * lib/signbitd.c: Include isnand.h instead of isnan.h.
5443         (gl_signbitd): Use isnand instead of isnan.
5444         * lib/vasnprintf.c: Include isnand.h instead of isnan.h.
5445         (is_infinite_or_zero, VASNPRINTF): Use isnand instead of isnan.
5446         * tests/test-frexp.c: Include isnand.h instead of isnan.h.
5447         (main): Use isnand instead of isnan.
5448         * tests/test-round1.c: Include isnand.h.
5449         (main): Use isnand instead of isnan.
5450         * tests/test-round2.c: Include isnand.h instead of isnan.h.
5451         (ISNAN): Set to isnand instead of isnan.
5452         * tests/test-trunc1.c: Include isnand.h.
5453         (main): Use isnand instead of isnan.
5454         * tests/test-trunc2.c: Include isnand.h instead of isnan.h.
5455         (equal): Use isnand instead of isnan.
5456         * MODULES.html.sh (Mathematics <math.h>): Replace isnan-nolibm with
5457         isnand-nolibm.
5458         * NEWS: Mention the change.
5459
5460 2008-01-25  Paul Eggert  <eggert@cs.ucla.edu>
5461             Bruno Haible  <bruno@clisp.org>
5462
5463         * m4/signbit.m4 (gl_SIGNBIT): Require a macro definition. Test whether
5464         the GCC builtins for signbits are present and set
5465         REPLACE_SIGNBIT_USING_GCC if so.
5466         * lib/math.in.h (signbit): Define using GCC builtins if
5467         REPLACE_SIGNBIT_USING_GCC is set.
5468         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize
5469         REPLACE_SIGNBIT_USING_GCC.
5470         * modules/math (Makefile.am): Substitute REPLACE_SIGNBIT_USING_GCC.
5471
5472 2008-01-25  Jim Meyering  <meyering@redhat.com>
5473
5474         Prefer <config.h> over "config.h".  See autoconf doc for explanation.
5475         * lib/poll.c: Include <config.h>, not "config.h".
5476         * tests/test-getaddrinfo.c: Likewise.
5477
5478 2008-01-25  Simon Josefsson  <simon@josefsson.org>
5479
5480         * modules/sockets-tests: New file.
5481
5482 2008-01-24  Simon Josefsson  <simon@josefsson.org>
5483
5484         * modules/sockets: New module, can be used to call WSA_Startup and
5485         WSA_Cleanup when needed.
5486
5487         * lib/sockets.h, lib/sockets.c: New files.
5488
5489         * m4/sockets.m4: New file.
5490
5491         * tests/test-sockets.c: New file.
5492
5493 2008-01-19  Bruno Haible  <bruno@clisp.org>
5494
5495         * doc/posix-headers: Renamed from doc/headers.
5496         * doc/posix-functions: Renamed from doc/functions.
5497         * doc/gnulib.texi: Update.
5498
5499 2008-01-19  Bruno Haible  <bruno@clisp.org>
5500
5501         * doc/glibc-functions/strcasestr.texi: Include contents of
5502         doc/functions/strcasestr.texi, fixing the list of platforms.
5503         * doc/functions/strcasestr.texi: Remove file.
5504
5505 2008-01-19  Bruno Haible  <bruno@clisp.org>
5506
5507         * doc/glibc-functions/memmem.texi: Include contents of
5508         doc/functions/memmem.texi.
5509         * doc/functions/memmem.texi: Remove file.
5510
5511 2008-01-18  Bruno Haible  <bruno@clisp.org>
5512
5513         * doc/glibc-functions/*.texi: New files.
5514         * doc/gnulib.texi (Glibc Function Substitutes): Completely rewritten
5515         to use the new files.
5516
5517 2008-01-17  Bruno Haible  <bruno@clisp.org>
5518
5519         * tests/test-gethostname.c (main): Fix printf statement.
5520
5521 2008-01-17  Simon Josefsson  <simon@josefsson.org>
5522
5523         * modules/gethostname-tests: New file.
5524
5525         * tests/test-gethostname.c: New file.
5526
5527 2008-01-17  Simon Josefsson  <simon@josefsson.org>
5528
5529         * lib/gethostname.c: Include string.h unconditionally, strncpy is
5530         used by the UNAME case.  Reported by Bruno Haible
5531         <bruno@clisp.org>.
5532
5533 2008-01-17  Eric Blake  <ebb9@byu.net>
5534
5535         Convert c-strcasestr to be more efficient.
5536         * modules/c-strcasestr (Files): Use Two-Way, not KMP.
5537         (Depends-on): Add c-strcase, remove malloca, strnlen.
5538         * tests/test-c-strcasestr.c (main): Enhance test.
5539         * lib/c-strcasestr.c (c_strcasestr): Rewrite to new algorithm.
5540
5541 2007-01-16  Paolo Bonzini  <bonzini@gnu.org>
5542
5543         * build-aux/bootstrap (MSGID_BUGS_ADDRESS): New overridable variable.
5544         Use it in creating po/Makevars.
5545
5546 2008-01-15  Simon Josefsson  <simon@josefsson.org>
5547
5548         * lib/gc-libgcrypt.c (gc_init): Disable secure memory by default.
5549         Applications that requires it should initialize libgcrypt
5550         manually.
5551
5552 2008-01-16  Simon Josefsson  <simon@josefsson.org>
5553
5554         * lib/gethostname.c [!HAVE_UNAME]: Need string.h for strcpy.
5555
5556 2008-01-15  Paul Eggert  <eggert@cs.ucla.edu>
5557
5558         Fix problem with getdate on mingw32 reported by Simon Josefsson
5559         in <http://lists.gnu.org/archive/html/bug-gnulib/2008-01/msg00192.html>.
5560         * lib/getdate.y (get_date): Check "HAVE_DECL_TZNAME", not "defined
5561         tzname", when deciding whether to declare tzname.
5562         * lib/strftime.c (tzname): Likewise.
5563
5564 2008-01-15  Bruno Haible  <bruno@clisp.org>
5565
5566         Work around a MacOS X 10.5 bug in frexpl().
5567         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Also check denormalized numbers.
5568         * doc/functions/frexpl.texi: Document the bug.
5569         Reported by Elias Pipping <pipping@gentoo.org>.
5570
5571 2008-01-14  Eric Blake  <ebb9@byu.net>
5572
5573         Touch up previous patch.
5574         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR_SIMPLE): Fix typo.
5575         * doc/functions/strcasestr.texi (strcasestr): Document OpenBSD bug.
5576
5577         Convert strcasestr module to use Two-Way algorithm.
5578         * modules/strcasestr-simple: New module, based on the old
5579         strcasestr, but with Two-Way rather than KMP.
5580         * modules/strcasestr (Depends-on): Change to strcasestr-simple.
5581         * lib/string.in.h (rpl_strcasestr): Declare.
5582         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Check for linear
5583         performance.
5584         * lib/strcasestr.c (strcasestr): Simplify, and avoid malloc.
5585         * modules/string (Makefile.am): Support strcasestr.
5586         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Likewise.
5587         * modules/strcasestr-tests (Depends-on): Check for alarm.
5588         * tests/test-strcasestr.c: Augment test.
5589         * lib/str-two-way.h: Clean up stray macro.
5590         * NEWS: Document new module.
5591         * MODULES.html.sh (string handling): Likewise.
5592         * doc/functions/strcasestr.texi: New file.
5593         * doc/gnulib.texi (Function Substitutes): New node.  Move memmem
5594         here, since it is not a POSIX function.
5595
5596 2008-01-14  Colin Watson  <cjwatson@debian.org>
5597             Bruno Haible  <bruno@clisp.org>
5598
5599         * m4/strsignal.m4 (gl_FUNC_STRSIGNAL): Also check whether strsignal
5600         works fine; if not, set REPLACE_STRSIGNAL.
5601         (gl_PREREQ_STRSIGNAL): Require AC_DECL_SYS_SIGLIST.
5602         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
5603         REPLACE_STRSIGNAL.
5604         * lib/string.in.h (strsignal): Consider REPLACE_STRSIGNAL.
5605         * modules/string (Makefile.am): Substitute REPLACE_STRSIGNAL.
5606         * tests/test-strsignal.c (main): Check out-of-range signal numbers.
5607
5608 2008-01-14  Bruno Haible  <bruno@clisp.org>
5609
5610         * modules/strsignal (Include): Change to <string.h>.
5611
5612 2008-01-14  Colin Watson  <cjwatson@debian.org>
5613
5614         * modules/argp (Notice): Add a notice recommending to change
5615         XGETTEXT_OPTIONS.
5616         (configure.ac): Invoke AM_XGETTEXT_OPTION if it exists.
5617
5618 2008-01-13  Colin Watson  <cjwatson@debian.org>
5619
5620         * modules/strsignal-tests: New file.
5621         * tests/test-strsignal.c: New file.
5622
5623         * lib/strsignal.c: New file, from glibc with modifications.
5624         * lib/siglist.h: New file, from glibc with modifications.
5625         * lib/string.in.h (strsignal): New declaration.
5626         * m4/strsignal.m4: New file.
5627         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
5628         GNULIB_STRSIGNAL and HAVE_DECL_STRSIGNAL.
5629         * modules/strsignal: New file.
5630         * modules/string (Makefile.am): Substitute GNULIB_STRSIGNAL and
5631         HAVE_DECL_STRSIGNAL.
5632
5633 2008-01-13  Bruno Haible  <bruno@clisp.org>
5634
5635         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Check that the
5636         locale encoding is not ASCII. Needed for OpenBSD 4.0.
5637         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Likewise.
5638         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
5639
5640 2008-01-13  Bruno Haible  <bruno@clisp.org>
5641
5642         * lib/argp-fmtstream.h (__attribute__): Don't redefine if
5643         __STRICT_ANSI__ is set: it's not needed by any version of gcc.
5644         * lib/argp.h (__attribute__): Likewise.
5645         * lib/c-stack.c (__attribute__): Likewise.
5646         * lib/error.h (__attribute__): Likewise.
5647         * lib/fts.c (__attribute__): Likewise.
5648         * lib/openat.h (__attribute__): Likewise.
5649         * lib/stdio.in.h (__attribute__): Likewise.
5650         * lib/string.in.h (__attribute__): Likewise.
5651         * lib/utimens.c (__attribute__): Likewise.
5652         * lib/vasnprintf.h (__attribute__): Likewise.
5653         * lib/xalloc.h (__attribute__): Likewise.
5654         * lib/xprintf.h (__attribute__): Likewise.
5655         * lib/xstrtol.h (__attribute__): Likewise.
5656         * lib/xvasprintf.h (__attribute__): Likewise.
5657
5658 2008-01-12  Bruno Haible  <bruno@clisp.org>
5659
5660         * doc/gnulib.texi (Glibc Header File Substitutes): New chapter.
5661         * doc/glibc-headers/a.out.texi: New file.
5662         * doc/glibc-headers/aliases.texi: New file.
5663         * doc/glibc-headers/alloca.texi: New file.
5664         * doc/glibc-headers/ar.texi: New file.
5665         * doc/glibc-headers/argp.texi: New file.
5666         * doc/glibc-headers/argz.texi: New file.
5667         * doc/glibc-headers/byteswap.texi: New file.
5668         * doc/glibc-headers/crypt.texi: New file.
5669         * doc/glibc-headers/endian.texi: New file.
5670         * doc/glibc-headers/envz.texi: New file.
5671         * doc/glibc-headers/err.texi: New file.
5672         * doc/glibc-headers/error.texi: New file.
5673         * doc/glibc-headers/execinfo.texi: New file.
5674         * doc/glibc-headers/fpu_control.texi: New file.
5675         * doc/glibc-headers/fstab.texi: New file.
5676         * doc/glibc-headers/fts.texi: New file.
5677         * doc/glibc-headers/getopt.texi: New file.
5678         * doc/glibc-headers/ieee754.texi: New file.
5679         * doc/glibc-headers/ifaddrs.texi: New file.
5680         * doc/glibc-headers/libintl.texi: New file.
5681         * doc/glibc-headers/mcheck.texi: New file.
5682         * doc/glibc-headers/mntent.texi: New file.
5683         * doc/glibc-headers/obstack.texi: New file.
5684         * doc/glibc-headers/paths.texi: New file.
5685         * doc/glibc-headers/printf.texi: New file.
5686         * doc/glibc-headers/pty.texi: New file.
5687         * doc/glibc-headers/resolv.texi: New file.
5688         * doc/glibc-headers/shadow.texi: New file.
5689         * doc/glibc-headers/sysexits.texi: New file.
5690         * doc/glibc-headers/ttyent.texi: New file.
5691
5692 2008-01-12  Jim Meyering  <meyering@redhat.com>
5693
5694         announce-gen: emit Gnulib's git-based version string.
5695         * build-aux/announce-gen: Remove option: --gnulib-snapshot-time-stamp=S.
5696         New option --gnulib-version=V, where V is expected to be
5697         the output of running git describe in the gnulib directory.
5698         (get_tool_versions): Request feedback on xdelta.  I suspect it's
5699         not useful, and plan to stop publishing an xdelta file with each
5700         coreutils release.
5701
5702         * build-aux/announce-gen: Also check for lzma-compressed files.
5703
5704 2008-01-11  Bruno Haible  <bruno@clisp.org>
5705
5706         * tests/test-memmem.c (main): Increase maximum allowed time.
5707         * tests/test-strstr.c (main): Likewise.
5708
5709 2008-01-11  Bruno Haible  <bruno@clisp.org>
5710
5711         * doc/functions/memmem.texi: Add more precisions about platforms.
5712         * doc/functions/strstr.texi: Likewise.
5713
5714 2008-01-10  Eric Blake  <ebb9@byu.net>
5715
5716         * m4/strstr.m4: Delete cruft from copy-n-paste.
5717         Reported by Bruno Haible.
5718
5719 2008-01-10  Bruno Haible  <bruno@clisp.org>
5720
5721         Make c-strstr rely on strstr.
5722         * lib/c-strstr.c: Don't include str-kmp.h.
5723         (c_strstr): Define in terms of strstr.
5724         * modules/c-strstr (Files): Remove lib/str-kmp.h.
5725         (Depends-on): Remove stdbool, malloca, strnlen. Add strstr.
5726
5727 2008-01-10  Bruno Haible  <bruno@clisp.org>
5728
5729         * doc/gnulib.texi (String Functions in C Locale): New section.
5730         * doc/c-ctype.texi: New file.
5731         * doc/c-strcase.texi: New file.
5732         * doc/c-strcaseeq.texi: New file.
5733         * doc/c-strcasestr.texi: New file.
5734         * doc/c-strstr.texi: New file.
5735         * doc/c-strtod.texi: New file.
5736         * doc/c-strtold.texi: New file.
5737
5738 2008-01-10  Eric Blake  <ebb9@byu.net>
5739
5740         * lib/relocatable.h: Fix a comment.
5741
5742 2008-01-10  Eric Blake  <ebb9@byu.net>
5743
5744         Share two-way algorithm.
5745         * lib/str-two-way.h: New file, merged from...
5746         * lib/memmem.c: ...here...
5747         * lib/strstr.c: ...and here.
5748         * modules/memmem (Files): Use it.
5749         * modules/strstr (Files): Likewise.
5750
5751         Avoid quadratic strstr implementations.
5752         * lib/strstr.c: New file.
5753         * m4/strstr.m4: Likewise.
5754         * modules/strstr: Likewise.
5755         * modules/strstr-tests: Likewise.
5756         * tests/test-strstr.c: Likewise.
5757         * lib/string.in.h (rpl_strstr): Declare.
5758         (memmem) [GNULIB_POSIXCHECK]: Document speed issue.
5759         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Support strstr.
5760         * modules/string (Makefile.am): Likewise.
5761         * MODULES.html.sh (string handling): Mention new module.
5762         * doc/functions/strstr.texi (strstr): Document the bug.
5763
5764 2008-01-10  Bruno Haible  <bruno@clisp.org>
5765
5766         * lib/relocatable.h (relocate): State whether result is freshly
5767         allocated or not.
5768         * lib/relocatable.c (relocate): Return a freshly allocated string
5769         instead of a pointer to a privately held string.
5770         Reported by Sylvain Beucler <beuc@gnu.org>.
5771
5772 2008-01-10  Colin Watson  <cjwatson@debian.org>
5773
5774         * lib/canonicalize-lgpl.c [!_LIBC]: Fix typo in #if directive:
5775         s/S_ISNLK/S_ISLNK/.
5776
5777 2008-01-09  Bruno Haible  <bruno@clisp.org>
5778
5779         * doc/functions/memmem.texi: Use the same structure as snprintf.texi
5780         and other files.
5781         * m4/memmem.m4 (gl_FUNC_MEMMEM): Say "guessing no" instead of "no"
5782         if it's only a guess.
5783         * modules/memmem: Simplify by depending on memmem-simple.
5784
5785 2008-01-09  Bruno Haible  <bruno@clisp.org>
5786
5787         Work around OpenBSD 4.0 tdelete() bug.
5788         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Also check tdelete's return value.
5789         * lib/search.in.h: If REPLACE_TSEARCH is 1, define tsearch etc. as
5790         macros and don't redefine the enum values.
5791         * m4/search_h.m4 (gl_SEARCH_H_DEFAULTS): Initialize REPLACE_TSEARCH.
5792         * modules/search (Makefile.am): Also substitute REPLACE_TSEARCH.
5793         * doc/functions/tdelete.texi: Document the OpenBSD 4.0 bug.
5794
5795 2008-01-09  Bruno Haible  <bruno@clisp.org>
5796
5797         * tests/test-wcwidth.c: Include <string.h> and localcharset.h.
5798         (main): Don't perform the tests if setlocale did not install a UTF-8
5799         locale. Needed on OpenBSD 4.0.
5800         * modules/wcwidth-tests (Depends-on): Add localcharset.
5801
5802 2008-01-09  Paul Eggert  <eggert@cs.ucla.edu>
5803
5804         gl_FUNC_ALLOCA no longer defines HAVE_ALLOCA_H unconditionally.
5805         See <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00149.html>.
5806         * NEWS: announce this.
5807         * m4/alloca.m4 (gl_FUNC_ALLOCA): Don't define HAVE_ALLOCA_H.
5808
5809 2008-01-09  Simon Josefsson  <simon@josefsson.org>
5810         and Eric Blake  <ebb9@byu.net>
5811
5812         Add memmem-simple module.
5813         * m4/memmem.m4 (gl_FUNC_MEMMEM_SIMPLE): New macro.
5814         (gl_FUNC_MEMMEM): Separate performance from presence checks.
5815         * modules/memmem-simple: New file.
5816         * modules/memmem (Description): Tweak.
5817         * MODULES.html.sh (string handling): Mention new module.
5818         * doc/functions/memmem.texi (memmem): Distinguish which flaws are
5819         addressed by memmem-simple.
5820         * NEWS: Document the difference.
5821
5822 2008-01-09  Eric Blake  <ebb9@byu.net>
5823
5824         Give gcc some memmem optimization hints.
5825         * lib/string.in.h (memmem, memrchr, strchrnul, strnlen, strpbrk)
5826         (strcasestr): Declare as pure.
5827         * modules/memmem (Maintainer): Claim my implementation.
5828
5829 2008-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5830
5831         Support AIX 6.1 and higher.
5832         * build-aux/config.libpath: Likewise.
5833         * build-aux/config.rpath: Likewise.
5834
5835 2008-01-08  Jim Meyering  <meyering@redhat.com>
5836             Bruno Haible  <bruno@clisp.org>
5837
5838         * lib/printf-parse.c (PRINTF_PARSE): Handle a size specifier "q"
5839         on MacOS X and a size specifier "I64" on mingw. Needed for PRIdMAX.
5840         Reported by Peter Fales in
5841         <http://lists.gnu.org/archive/html/bug-coreutils/2007-12/msg00148.html>.
5842
5843 2008-01-08  Bruno Haible  <bruno@clisp.org>
5844
5845         * modules/unictype/category-of (Depends-on): Add
5846         unictype/category-none.
5847         * modules/unictype/category-and-tests (Depends-on): Add
5848         unictype/category-{L,N,Lu,Nd}.
5849         * modules/unictype/category-and-not-tests (Depends-on): Likewise.
5850         * modules/unictype/category-or-tests (Depends-on): Add
5851         unictype/category-{L,N}.
5852         * modules/unictype/category-name-tests (Depends-on): Add
5853         unictype/category-{Z,Nl}.
5854         Reported by Simon Josefsson.
5855
5856 2008-01-08  Bruno Haible  <bruno@clisp.org>
5857
5858         * lib/str-kmp.h (knuth_morris_pratt_unibyte): Document the calling
5859         convention better.
5860         * lib/mbsstr.c (knuth_morris_pratt_multibyte): Likewise.
5861         * lib/mbscasestr.c (knuth_morris_pratt_multibyte): Likewise.
5862         Reported by Peter Miller <millerp@canb.auug.org.au>.
5863
5864 2008-01-08  Eric Blake  <ebb9@byu.net>
5865
5866         Rewrite memmem to guarantee linear complexity without malloc.
5867         * lib/memmem.c (memmem): Use Two-Way rather than
5868         Knuth-Morris-Pratt, to allow O(1) space usage.
5869         (critical_factorization, two_way_short_needle)
5870         (two_way_long_needle): New functions.
5871         (knuth_morris_pratt): Delete.
5872         * modules/memmem (Depends-on): No longer need malloca or stdbool.
5873         Add stdint.
5874         * tests/test-memmem.c (main): Add tests for periodic needle and
5875         sublinear performance.
5876         * doc/functions/memmem.texi (memmem): Document other deficiencies
5877         in cygwin and older glibc.
5878
5879 2008-01-08  Bruno Haible  <bruno@clisp.org>
5880
5881         * modules/memmem-tests (Makefile.am): Remove TESTS_ENVIRONMENT
5882         augmentation.
5883
5884 2008-01-08  Mike Frysinger  <vapier@gentoo.org>
5885
5886         Add a configure time option: --disable-acl.
5887         * m4/acl.m4 (gl_FUNC_ACL): Wrap all ACL logic in a call to
5888         AC_ARG_ENABLE(acl).
5889
5890 2008-01-06  Simon Josefsson  <simon@josefsson.org>
5891
5892         * tests/test-localename.c: Don't include obsolete "setenv.h".
5893
5894         * modules/localename-tests (Depends-on): Need unsetenv.
5895
5896 2008-01-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5897
5898         * DEPENDENCIES: Require Texinfo version 4.6 or newer.
5899
5900 2008-01-06  Colin Watson  <cjwatson@debian.org>
5901
5902         * users.txt: Add man-db.
5903
5904 2008-01-07  Bruno Haible  <bruno@clisp.org>
5905
5906         * doc/gnulib-intro.texi (Library vs Reusable Code): Restore the
5907         previous section name.
5908
5909 2008-01-07  Bruno Haible  <bruno@clisp.org>
5910
5911         * lib/progname.c (set_program_name): Don't strip off a leading
5912         "lt-" prefix outside a .libs directory.
5913         Suggested by Paul Eggert.
5914
5915 2008-01-01  Sylvain Beucler  <beuc@gnu.org>
5916             Bruno Haible  <bruno@clisp.org>
5917
5918         Improve memory cleanup in 'relocatable' module.
5919         * lib/relocatable.h (compute_curr_prefix): Change return type to
5920         'char *'.
5921         * lib/relocatable.c (compute_curr_prefix): Change return type to
5922         'char *'. Free curr_installdir after use.
5923         (relocate): Free curr_prefix_better after use.
5924         * lib/progreloc.c (prepare_relocate): Free curr_prefix after use.
5925
5926 2008-01-01  Bruno Haible  <bruno@clisp.org>
5927
5928         * tests/test-wcwidth.c (main): Relax test of U+2060. Avoids a test
5929         failure on older glibc systems.
5930         Reported by Peter Fales <psfales@alcatel-lucent.com>.
5931
5932 2008-01-05  Eric Blake  <ebb9@byu.net>
5933
5934         Avoid quadratic system memmem.
5935         * m4/memmem.m4 (gl_FUNC_MEMMEM): Check for quadratic memmem.
5936         Reported by Ralf Wildenhues.
5937
5938         Fix memmem test for mingw.
5939         * modules/memmem-tests (configure.ac): Check for alarm.
5940         * tests/test-memmem.c (main): Avoid alarm on platforms that lack
5941         it.
5942         * doc/functions/memmem.texi: New file.
5943         * doc/gnulib.texi (Function Substitutes): Add memmem.
5944         Reported by Bruno Haible.
5945
5946 2008-01-04  Bruno Haible  <bruno@clisp.org>
5947
5948         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP):
5949         Require gl_HEADER_STRINGS_H_DEFAULTS, not
5950         gl_HEADER_STRING_H_DEFAULTS.
5951
5952 2008-01-04  Eric Blake  <ebb9@byu.net>
5953
5954         Shorten duration of memmem test.
5955         * tests/test-memmem.c (main): Use alarm to declare failure if test
5956         is taking too long.
5957         Reported by Ralf Wildenhues.
5958
5959 2007-12-21  Simon Josefsson  <simon@josefsson.org>
5960
5961         * modules/relocatable-prog-wrapper (Depends-on): Add intprops and
5962         string, needed by strerror.
5963
5964 2008-01-03  Colin Watson  <cjwatson@debian.org>
5965             Bruno Haible  <bruno@clisp.org>
5966
5967         * doc/gnulib-tool.texi (Localization): New section.
5968
5969 2008-01-02  Bruno Haible  <bruno@clisp.org>
5970
5971         * lib/memmem.c (knuth_morris_pratt, memmem): Change all 'char *'
5972         variables to 'unsigned char *' type.
5973         Reported by Paul Eggert.
5974
5975 2008-01-02  Jim Meyering  <jim@meyering.net>
5976
5977         * lib/version-etc.c (COPYRIGHT_YEAR): Increase for new year.
5978
5979 2007-12-31  Jim Meyering  <jim@meyering.net>
5980
5981         Avoid use of private FTS type name.
5982         * lib/fts.c (fts_sort): Use FTSENT rather than "struct _ftsent".
5983
5984 2007-12-30  Karl Berry  <karl@gnu.org>
5985
5986         * doc/gnulib.texi (Library vs. Reusable Code): remove period, to
5987         work around defect in Texinfo and/or the standalone Info browser.
5988
5989 2007-12-30  Bruno Haible  <bruno@clisp.org>
5990
5991         Unify 5 copies of the KMP code.
5992         * lib/str-kmp.h: New file.
5993         * lib/c-strcasestr.c: Include str-kmp.h.
5994         (knuth_morris_pratt): Remove function.
5995         (c_strcasestr): Update.
5996         * lib/c-strstr.c: Include str-kmp.h.
5997         (knuth_morris_pratt): Remove function.
5998         (c_strcasestr): Update.
5999         * lib/mbscasestr.c: Include str-kmp.h.
6000         (knuth_morris_pratt_unibyte): Remove function.
6001         * lib/mbsstr.c: Include str-kmp.h.
6002         (knuth_morris_pratt_unibyte): Remove function.
6003         * lib/strcasestr.c: Include str-kmp.h.
6004         (knuth_morris_pratt): Remove function.
6005         (strcasestr): Update.
6006         * modules/c-strcasestr (Files): Add lib/str-kmp.h.
6007         * modules/c-strstr (Files): Likewise.
6008         * modules/mbscasestr (Files): Likewise.
6009         * modules/mbsstr (Files): Likewise.
6010         * modules/strcasestr (Files): Likewise.
6011         Suggested by Paul Eggert.
6012
6013 2007-12-30  Bruno Haible  <bruno@clisp.org>
6014
6015         * lib/xmalloca.c (xmmalloca): Don't define if HAVE_ALLOCA is not
6016         defined.
6017
6018 2007-12-30  Bruno Haible  <bruno@clisp.org>
6019
6020         * lib/xmalloca.h: Include xalloc.h.
6021         (xnmalloca): New macro.
6022
6023 2007-12-30  Bruno Haible  <bruno@clisp.org>
6024
6025         * lib/malloca.h (nmalloca): New macro.
6026         * lib/c-strcasestr.c (knuth_morris_pratt): Use it.
6027         * lib/c-strstr.c (knuth_morris_pratt): Likewise.
6028         * lib/mbscasestr.c (knuth_morris_pratt_unibyte,
6029         knuth_morris_pratt_multibyte): Likewise.
6030         * lib/mbsstr.c (knuth_morris_pratt_unibyte,
6031         knuth_morris_pratt_multibyte): Likewise.
6032         * lib/memmem.c (knuth_morris_pratt): Likewise.
6033         * lib/strcasestr.c (knuth_morris_pratt): Likewise.
6034
6035 2007-12-25  Bruno Haible  <bruno@clisp.org>
6036
6037         Fixup after 2007-10-17 commit. Ensure that 'glob' stays under LGPLv2+.
6038         * lib/glob.c: Don't include openat.h.
6039         (link_exists2_p): Add back the code that deals with the
6040         !GLOB_ALTDIRFUNC case.
6041         (link_exists_p) [!_LIBC && !HAVE_FSTATAT]: Just call link_exists2_p and
6042         let it do the filename concatenation.
6043         * m4/glob.m4 (gl_PREREQ_GLOB): Add check for fstatat.
6044         * modules/glob (Depends-on): Remove openat.
6045
6046 2007-12-31  Bruno Haible  <bruno@clisp.org>
6047
6048         * modules/dirfd (License): Change to LGPLv2+.
6049         Approved by Jim Meyering.
6050
6051 2007-12-29  Paul Eggert  <eggert@cs.ucla.edu>
6052
6053         * lib/memmem.c (knuth_morris_pratt): Check for size_t overflow
6054         when multiplying M by sizeof (size_t).
6055
6056 2007-12-10  Martin Lambers  <marlam@marlam.de>
6057
6058         Override getpagesize on mingw.
6059         * lib/getpagesize.c: New file.
6060         * m4/getpagesize.m4 (gl_FUNC_GETPAGESIZE): Enable replacement on mingw.
6061         * modules/getpagesize (Files): Add lib/getpagesize.c.
6062         * lib/unistd.in.h (getpagesize): Declare if we are using a replacement.
6063         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
6064         REPLACE_GETPAGESIZE.
6065         * modules/unistd (Makefile.am): Substitute REPLACE_GETPAGESIZE.
6066
6067 2007-12-25  Bruno Haible  <bruno@clisp.org>
6068
6069         * modules/localcharset (Notice): New field.
6070         (configure.ac): Define LOCALCHARSET_TESTS_ENVIRONMENT.
6071         Suggested by Ben Pfaff <blp@cs.stanford.edu>.
6072
6073 2007-12-25  Paul Eggert  <eggert@cs.ucla.edu>
6074             Bruno Haible  <bruno@clisp.org>
6075
6076         Avoid using the syntax symbol() in formatted documentation.
6077         * MODULES.html.sh (func_module): When replacing symbol() with a
6078         hyperlink, remove the parentheses. Show an error if some remain.
6079         Recognize and render the '...' syntax.
6080         * doc/alloca-opt.texi: Remove parentheses from symbol reference.
6081         Rework. Add paragraph about GCC's inlining.
6082         * doc/alloca.texi: Likewise.
6083         * doc/error.texi: Remove parentheses from symbol reference.
6084         * doc/gnulib-intro.texi: Likewise.
6085         * doc/gnulib.texi (alloca, alloca-opt): New nodes.
6086         * modules/fnmatch (Description): Reword to say "the ... function".
6087         * modules/full-read (Description): Likewise.
6088         * modules/full-write (Description): Likewise.
6089         * modules/safe-read (Description): Likewise.
6090         * modules/safe-write (Description): Likewise.
6091         * modules/strchrnul (Description): Likewise.
6092         * modules/trim (Description): Likewise.
6093         * modules/error (Description): Remove parentheses from symbol
6094         references.
6095         * modules/verror (Description): Likewise.
6096         Reported by Karl Berry.
6097
6098 2007-12-25  Bruno Haible  <bruno@clisp.org>
6099
6100         Fixup after 2007-10-16 commit.
6101         * lib/glob.c (glob_in_dir): Don't use ISO C99 syntax.
6102
6103 2007-12-24  Bruno Haible  <bruno@clisp.org>
6104
6105         Make --enable-relocatable work with DESTDIR.
6106         * build-aux/install-reloc: Accept another argument 'destdir'. Use it
6107         to compute installdir from destprog.
6108         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): In INSTALL_PROGRAM_ENV,
6109         also set the RELOC_DESTDIR variable.
6110         Reported by Левашев Иван <octagram@bluebottle.com>.
6111
6112 2007-12-24  Bruno Haible  <bruno@clisp.org>
6113
6114         Fix link error due to xalloc_die().
6115         * lib/progreloc.c: When NO_XMALLOC is defined, use areadlink instead
6116         of xreadlink.
6117         * lib/relocwrapper.c: Update comments.
6118         * build-aux/install-reloc: Remove xreadlink.c from file list.
6119         * modules/relocatable-prog-wrapper (Files): Remove xreadlink.h and
6120         xreadlink.c.
6121         Reported by Левашев Иван <octagram@bluebottle.com>.
6122
6123 2007-12-24  Bruno Haible  <bruno@clisp.org>
6124
6125         Split setenv module into setenv and unsetenv. Get rid of setenv.h.
6126         * lib/setenv.h: Remove file.
6127         * lib/stdlib.in.h (setenv, unsetenv): New declarations, moved here from
6128         lib/setenv.h.
6129         * modules/setenv (Files): Remove lib/setenv.h, lib/unsetenv.c.
6130         (Depends-on): Add stdlib.
6131         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR. Don't invoke
6132         gl_FUNC_UNSETENV.
6133         (Include): Replace setenv.h with <stdlib.h>.
6134         * modules/unsetenv: New file.
6135         * lib/setenv.c: Include <stdlib.h> first, after alloca.h.
6136         * lib/unsetenv.c: Include <stdlib.h> first.
6137         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_SETENV_SEPARATE): Require
6138         gl_STDLIB_H_DEFAULTS. Conditionally set HAVE_SETENV to 0.
6139         (gl_FUNC_UNSETENV): Require gl_STDLIB_H_DEFAULTS. Conditionally set
6140         HAVE_UNSETENV to 0. Set VOID_UNSETENV as an AC_SUBSTed variable.
6141         * modules/stdlib (Makefile.am): Substitute also GNULIB_SETENV,
6142         HAVE_SETENV, GNULIB_UNSETENV, HAVE_UNSETENV, VOID_UNSETENV.
6143         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_SETENV,
6144         HAVE_SETENV, GNULIB_UNSETENV, HAVE_UNSETENV, VOID_UNSETENV.
6145         * doc/functions/unsetenv.texi: Update.
6146         * modules/xsetenv (Depends-on): Add unsetenv.
6147         * modules/getdate (Depends-on): Likewise.
6148         * lib/xsetenv.h: Include <stdlib.h> instead of setenv.h.
6149         * lib/xsetenv.c: Don't include setenv.h.
6150         * lib/getdate.y: Likewise.
6151         * lib/relocwrapper.c: Likewise.
6152         * modules/relocatable-prog-wrapper (Files): Remove lib/setenv.h.
6153         (Depends-on): Add stdlib.
6154         * NEWS: Mention the changes.
6155         Reported by Левашев Иван <octagram@bluebottle.com>.
6156
6157 2007-12-23  Bruno Haible  <bruno@clisp.org>
6158
6159         * lib/memmem.c (memmem): Use lowercase variable names. Tab
6160         indentation.
6161
6162 2007-12-23  Bruno Haible  <bruno@clisp.org>
6163
6164         * lib/c-strcasestr.c: Add more comments.
6165         * lib/c-strstr.c: Likewise.
6166         * lib/mbscasestr.c: Likewise.
6167         * lib/mbsstr.c: Likewise.
6168         * lib/strcasestr.c: Likewise.
6169         * lib/memmem.c: Likewise.
6170
6171 2007-12-23  Bruno Haible  <bruno@clisp.org>
6172
6173         * tests/test-memmem.c: Include <string.h> first.
6174
6175 2007-12-22  Bruno Haible  <bruno@clisp.org>
6176
6177         * gnulib-tool (func_create_testdir): Change $auxdir while generating
6178         the contents of $testsbase.
6179         Reported by Ralf Wildenhues.
6180
6181 2007-12-22  Bruno Haible  <bruno@clisp.org>
6182
6183         * gnulib-tool (func_emit_tests_Makefile_am): Replace local_ldadd with
6184         two variables local_ldadd_before, local_ldadd_last.
6185
6186 2007-12-20  Eric Blake  <ebb9@byu.net>
6187
6188         Work around circular library issue when cross-compiling.
6189         * lib/progname.c (set_program_name): Use strncmp, not memcmp, so
6190         that progname.o does not need to pull in rpl_memcmp.
6191
6192 2007-12-19  Eric Blake  <ebb9@byu.net>
6193
6194         Fix memmem to avoid O(n^2) worst-case complexity.
6195         * lib/memmem.c (knuth_morris_pratt): New function.
6196         (memmem): Use it if first few naive iterations fail.
6197         * m4/memmem.m4 (gl_FUNC_MEMMEM): Detect cygwin bug.
6198         * modules/memcmp (License): Set to LGPLv2+, not LGPL.
6199         * modules/memchr (License): Likewise.
6200         * modules/memmem (Depends-on): Add memcmp, memchr, stdbool, and
6201         malloca.
6202         * tests/test-memmem.c: Rewrite, borrowing ideas from
6203         test-mbsstr1.c; the old version wouldn't even compile!
6204         * modules/memmem-tests: New file.
6205         * lib/string.in.h (rpl_memmem): Add declaration.
6206         * modules/string (Makefile.am): Substitute REPLACE_MEMMEM.
6207         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Default for
6208         REPLACE_MEMMEM.
6209
6210 2007-12-18  Paul Eggert  <eggert@cs.ucla.edu>
6211
6212         Fix problem with _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H on VMS.
6213         * lib/stdint.in.h (_GL_JUST_INCLUDE_SYSTEM_INTTYPES_H): Define
6214         before any system include files, and undef after them all.  This
6215         should fix a problem on VMS reported by John E. Malmberg in
6216         <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00118.html>.
6217
6218 2007-12-17  Eric Blake  <ebb9@byu.net>
6219
6220         Revert addition of verify, for BSD/OS.
6221         * lib/fseeko.c [!HAVE_FSEEKO]: Allow off_t > long, even though it
6222         can't handle large files, for the sake of obsolete platforms.
6223         * modules/fseeko (Depends-on): Remove verify.
6224         * doc/functions/fseeko.texi (fseeko): Document BSD/OS limitation.
6225         * doc/functions/ftello.texi (ftello): Likewise.
6226         * doc/functions/fgetpos.texi (fgetpos): Likewise.
6227         Reported by Larry Jones.
6228
6229 2007-12-17  Petr Salinger  <Petr.Salinger@seznam.cz>
6230
6231         getcwd.c: Use a more readable witness: HAVE_OPENAT_SUPPORT
6232         * lib/getcwd.c: Define and use HAVE_OPENAT_SUPPORT, in place of AT_FDCWD.
6233
6234 2007-12-17  Jim Meyering  <meyering@redhat.com>
6235
6236         Port to GNU/kFreeBSD - FreeBSD kernel + GNU libc,
6237         which has no openat syscall, yet <fcntl.h> does define AT_FDCWD.
6238         * lib/getcwd.c: Undef AT_FDCWD if there is no openat function.
6239         * modules/getcwd (Depends-on): Add openat.
6240         Reported by Petr Salinger.
6241
6242 2007-12-17  Bruno Haible  <bruno@clisp.org>
6243
6244         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Use GL_NOCRASH to
6245         avoid a segmentation fault of the configure test on x86_64 systems.
6246
6247 2007-12-15  Jim Meyering  <meyering@redhat.com>
6248
6249         * build-aux/gnupload (GPG): Don't hard-code absolute name of gpg binary.
6250
6251 2007-12-13  Eric Blake  <ebb9@byu.net>
6252
6253         Another fseek test.
6254         * tests/test-fseek.c (main): Also test ungetc handling.
6255         * tests/test-fseeko.c (main): Likewise.
6256         * modules/fseeko (Depends-on): Add verify.
6257         * lib/fseeko.c [!HAVE_FSEEKO]: Verify that off_t is not too
6258         large.
6259         Reported by Larry Jones.
6260
6261         Fix fseeko on mingw.
6262         * lib/fseeko.c (rpl_fseeko) [_IOERR]: Reset EOF flag on successful
6263         seek.
6264
6265         Beef up fseek tests.
6266         * tests/test-fseek.c (main): Also test eof handling.
6267         * tests/test-fseeko.c (main): Likewise.
6268         Reported by Larry Jones.
6269
6270 2007-12-13  Larry Jones  <lawrence.jones@siemens.com>  (tiny change)
6271
6272         Fix fseeko on BSD-based platforms.
6273         * lib/fseeko.c (rpl_fseeko) [__sferror]: Reset EOF flag on
6274         successful seek.
6275
6276 2007-12-12  Eric Blake  <ebb9@byu.net>
6277
6278         Allow circular dependency of separate libtests.a
6279         * gnulib-tool (func_emit_tests_Makefile_am): Add AM_LIBTOOLFLAGS
6280         when use_libtests.
6281
6282 2007-12-11  Eric Blake  <ebb9@byu.net>
6283
6284         Fix bug with -0.0L in previous patch.
6285         * lib/isnan.c (rpl_isnanl): Make robust to -0.0L and pad bits.
6286         * tests/test-isnan.c (main): Also test on zeroes.
6287         * tests/test-isnanf.c (main): Likewise.
6288         * tests/test-isnanl.h (main): Likewise.
6289
6290         Detect pseudo-denormals on x86 even when cross-compiling.
6291         * lib/isnan.c (rpl_isnanl) [!KNOWN_EXPBIT0_LOCATION
6292         && USE_LONG_DOUBLE && x86]: Add one more check to filter out
6293         invalid bit patterns that happen to satisfy ==.
6294
6295         Avoid link failures with separate libtests.a.
6296         * gnulib-tool (func_emit_tests_Makefile_am): Also list local_ldadd
6297         last, to satisfy circular dependencies.
6298
6299 2007-12-11  Eric Blake  <ebb9@byu.net>
6300         and Bruno Haible  <bruno@clisp.org>
6301
6302         Fix OpenBSD 4.0 <float.h> handling of long double.
6303         * m4/float_h.m4 (gl_FLOAT_H): Also claim OpenBSD is broken.
6304         * lib/float.in.h [__OpenBSD__]: Add fixes for OpenBSD.
6305         * doc/headers/float.texi (float.h): Document OpenBSD bug.
6306
6307 2007-12-11  Jim Meyering  <meyering@redhat.com>
6308
6309         * users.txt: Add libvirt.
6310
6311         Support versions of autoconf prior to 2.59c.
6312         * gnulib-tool (func_emit_initmacro_done): Define m4_foreach_w
6313         if it is not already defined.
6314
6315 2007-12-09  Bruno Haible  <bruno@clisp.org>
6316
6317         Let 'gnulib-tool --import' collect sources needed for the tests in
6318         tests/ rather than in lib/.
6319         * gnulib-tool (func_emit_tests_Makefile_am): Accept use_libtests
6320         argument. If true, add rules to generate libtests.a, and put libtests.a
6321         into $(LDADD). Consider source files in subdirectories and set
6322         uses_subdirs.
6323         (func_emit_initmacro_start, func_emit_initmacro_end,
6324         func_emit_initmacro_done): Pass all arguments explicitly.
6325         (func_import): Determine two module lists main_modules,
6326         testsrelated_modules. Determine use_libtests. Determine two variables
6327         sed_transform_main_lib_file, sed_transform_testsrelated_lib_file
6328         instead of just sed_transform_lib_file. Determine two variables
6329         main_files and testsrelated_files. Compute 'files' as the union of
6330         both. Adjust sed_rewrite_old_files, sed_rewrite_new_files,
6331         func_add_or_update. In the generated gnulib-comp.m4, collect the
6332         object files for tests/ in different variables than those for lib/.
6333         Substitute LIBTESTS_LIBDEPS.
6334         (func_create_testdir): Combine the uses_subdirs results from
6335         func_emit_lib_Makefile_am and from func_emit_tests_Makefile_am.
6336
6337 2007-12-09  Bruno Haible  <bruno@clisp.org>
6338
6339         * gnulib-tool (func_emit_tests_Makefile_am): Expand references to
6340         the build-aux directory.
6341
6342 2007-12-09  Bruno Haible  <bruno@clisp.org>
6343
6344         * gnulib-tool (func_emit_tests_Makefile_am): Remove redundant code
6345         introduced on 2006-09-09.
6346
6347 2007-12-07  Jim Meyering  <meyering@redhat.com>
6348
6349         Let these macros work also with autoconf-2.59.
6350         * m4/getline.m4 (gl_FUNC_GETLINE): Require only autoconf-2.59.  2.60
6351         is not needed, since gnulib now permits use of AC_CHECK_DECLS_ONCE.
6352         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
6353
6354 2007-12-06  Jim Meyering  <meyering@redhat.com>
6355
6356         Avoid a configure-time syntax error in gl_FUNC_ACL.
6357         * m4/acl.m4 (gl_FUNC_ACL): Be careful to check for the acl_trivial
6358         function in each branch, before testing the cache variable.
6359
6360 2007-12-04  Eric Blake  <ebb9@byu.net>
6361
6362         Make scripts executable.
6363         * build-aux/config.guess: Add execute permissions.
6364         * build-aux/config.sub: Likewise.
6365         * build-aux/gendocs.sh: Likewise.
6366
6367         Fix frexp on mingw.
6368         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Detect mingw bug when
6369         cross-compiling.
6370         * doc/functions/frexp.texi (frexp): Document the bug.
6371
6372         Make cygwin fseeko check more reliable.
6373         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET) [__CYGWIN__]: Use cygwin
6374         version numbers, rather than unrelated feature check.
6375         * doc/functions/fseeko.texi (fseeko): Tweak failure report.
6376         * doc/functions/ftello.texi (ftello): Likewise.
6377         Reported by Bruno Haible.
6378
6379         * m4/strerror.m4: Bump version number.
6380
6381 2007-12-03  Bruno Haible  <bruno@clisp.org>
6382
6383         * doc/functions/mprotect.texi: Mention the mingw problem.
6384
6385 2007-12-03  Eric Blake  <ebb9@byu.net>
6386
6387         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): Ensure
6388         REPLACE_STRERROR is initialized before this macro.
6389
6390 2007-12-03  Paul Eggert  <eggert@cs.ucla.edu>
6391
6392         Add support for Solaris 10 ACLs.  Also, ACLs are Gnulib, not Autoconf.
6393         * modules/acl (configure.ac): Rename AC_FUNC_ACL to gl_FUNC_ACL.
6394         * m4/acl.m4 (gl_FUNC_ACL): Renamed from AC_FUNC_ACL.  On Solaris,
6395         put -lsec in even for programs other than 'ls'.  This fixes a problem
6396         for gettext reported by Bruno Haible in
6397         <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00007.html>.
6398         * lib/acl.c (copy_acl, qset_acl) [USE_ACL && defined ACL_NO_TRIVIAL]:
6399         Add support for Solaris 10.  This isn't efficient, but should get the
6400         job done for now.
6401
6402 2007-12-03  James Youngman  <jay@gnu.org>
6403
6404         * doc/regexprops-generic.texi: change "an close-group" to "a
6405         close-group" and "illegal" to "not allowed".
6406
6407 2007-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6408
6409         * lib/unictype/pr_byname.c: Include unictype/pr_byname.h instead of
6410         pr_byname.h. Needed for the rare case when the maintainer has done
6411         "make maintainer-clean" in the source directory and then attempts a
6412         build outside the source directory.
6413         * lib/unictype/scripts.c: Include unictype/scripts_byname.h instead of
6414         scripts_byname.h.
6415
6416 2007-12-02  Martin Lambers <marlam@marlam.de>
6417             Bruno Haible  <bruno@clisp.org>
6418
6419         * lib/getpagesize.h: Remove file.
6420         * lib/unistd.in.h: Include declaration of getpagesize here.
6421         * m4/getpagesize.m4 (gl_FUNC_GETPAGESIZE): Renamed from gl_GETPAGESIZE.
6422         Invoke gl_UNISTD_H_DEFAULTS. Set HAVE_GETPAGESIZE, HAVE_OS_H,
6423         HAVE_SYS_PARAM_H.
6424         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_GETPAGESIZE,
6425         HAVE_GETPAGESIZE, HAVE_OS_H, HAVE_SYS_PARAM_H.
6426         * modules/getpagesize (Files): Remove lib/getpagesize.h.
6427         (Depends-on): Add unistd.
6428         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
6429         (Include): Use <unistd.h> instead of getpagesize.h.
6430         * modules/unistd (Makefile.am): Substitute also GNULIB_GETPAGESIZE,
6431         HAVE_GETPAGESIZE, HAVE_OS_H, HAVE_SYS_PARAM_H.
6432         * m4/pagealign_alloc.m4 (gl_PREREQ_PAGEALIGN_ALLOC): Remove
6433         gl_GETPAGESIZE invocation, already handled by module dependency.
6434         * lib/pagealign_alloc.c: Don't include getpagesize.h.
6435
6436 2007-12-02  Bruno Haible  <bruno@clisp.org>
6437
6438         * modules/strings-tests: New file.
6439         * tests/test-strings.c: New file.
6440
6441         Move declarations of str{,n}casecmp from <string.h> to <strings.h>.
6442         * lib/strings.in.h: New file.
6443         * lib/string.in.h (strcasecmp, strncasecmp): Remove declarations.
6444         * m4/strings_h.m4: New file.
6445         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Remove initialization
6446         of HAVE_STRCASECMP, HAVE_DECL_STRNCASECMP.
6447         * modules/strings: New file.
6448         * modules/string (Makefile.am): Update.
6449         * modules/strcase (Include): Mention <strings.h>, not <string.h>.
6450         Reported by Karl Berry.
6451
6452 2007-12-01  Eric Blake  <ebb9@byu.net>
6453
6454         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET) [__CYGWIN__]: Rewrite to
6455         accomodate fix in cygwin 1.5.25.
6456
6457 2007-12-01  Jim Meyering  <meyering@redhat.com>
6458
6459         Fix a bug that inhibited much of the utf8-optimization in regcomp.c.
6460         * lib/regcomp.c (optimize_utf8): Fix a typo, s/idx/ctx_type/,
6461         that would inhibit utf8-optimization of a regexp containing line-
6462         or buffer-anchors, e.g., `^', `$'.
6463
6464 2007-11-30  Bruno Haible  <bruno@clisp.org>
6465
6466         * lib/lock.h (gl_recursive_lock_init) [PTHREAD &&
6467         PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: Call
6468         glthread_recursive_lock_init.
6469         * lib/lock.c (glthread_recursive_lock_init)
6470         [PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: New function.
6471         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
6472
6473 2007-11-28  Paul Eggert  <eggert@cs.ucla.edu>
6474
6475         New function qset_acl, like set_acl but with syscall semantics.
6476         * lib/acl.h (qset_acl): New decl.
6477         * lib/acl.c (qset_acl): New function.
6478         (set_acl): Use new function.  Use more-consistent diagnostics.
6479
6480 2007-11-28  Jim Meyering  <meyering@redhat.com>
6481
6482         * modules/physmem (License): Change from GPL to LGPLv2+.
6483
6484 2007-11-26  Bruno Haible  <bruno@clisp.org>
6485
6486         * lib/vasnprintf.c (decode_long_double): Don't abort if the
6487         'long double' type has excess precision.
6488         Reported by Jim Meyering in
6489         <http://lists.gnu.org/archive/html/bug-gnulib/2007-11/msg00120.html>.
6490
6491 2007-11-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6492
6493         * doc/fdl.texi, doc/gpl-3.0.texi, doc/lgpl-3.0.texi:
6494         Sync from <http://gnu.org/licenses>.
6495         * modules/agpl-3.0, doc/agpl-3.0.texi: New module,
6496         with license text from same location.
6497         * doc/maintain.texi, doc/standards.texi:  Sync from
6498         <http://savannah.gnu.org/projects/gnustandards>.
6499
6500 2007-11-22  Ondřej Vašík  <ovasik@redhat.com>
6501         and Jim Meyering  <meyering@redhat.com>
6502
6503         Adjust getdate' grammar to accept a slightly more regular language.
6504         E.g., accept "YYYYMMDD +N days" as well as "YYYYMMDD N days".
6505         Before, the former was rejected.
6506         * lib/getdate.y (digits_to_date_time): New function, factored
6507         out of ...
6508         (number): ...here.  Just call digits_to_date_time.
6509         (hybrid): New non-terminal to handle an <unsigned number,
6510         signed relative offset> sequence consistently.
6511
6512 2007-11-18  Jim Meyering  <meyering@redhat.com>
6513
6514         Pull my changes from coreutils:
6515         bootstrap: fix typo to enable use of $gnulib_tool_option_extras.
6516         * build-aux/bootstrap (gnulib_tool_options): Add a space before the
6517         use of $gnulib_tool_option_extras, so that it's separated from the
6518         preceding argument.
6519
6520         Fix bootstrap failure to handle files like lib/uniwidth/cjk.h.
6521         * build-aux/bootstrap (cp_mark_as_generated): Create any required
6522         parent destination directories before copying a file into place.
6523
6524 2007-11-18  Sergey Poznyakoff  <gray@gnu.org.ua>
6525
6526         bootstrap: work also with 4-argument variant of AC_INIT
6527         * build-aux/bootstrap (gnulib_extra_files): Adjust sed command.
6528
6529 2007-11-16  Paul Eggert  <eggert@cs.ucla.edu>
6530
6531         Port test-getaddrinfo to Solaris.
6532         Problem reported by Bruno Haible in
6533         <http://lists.gnu.org/archive/html/bug-gnulib/2007-03/msg00171.html>.
6534         * tests/test-getaddrinfo.c (simple): Add a comment asking for an
6535         explanation of setting 'hints'.
6536         Don't reject an implementation merely because it returns EAI_SERVICE.
6537         (EAI_SERVICE): Define to 0 if not defined.
6538
6539 2007-11-15  Paul Eggert  <eggert@cs.ucla.edu>
6540
6541         The license of gnu-make and posix-shell is now "GPLed build tool".
6542         * modules/gnu-make (License): Likewise.
6543         * modules/posix-shell (License): Likewise.
6544
6545         New module posix-shell, for determining a POSIX shell
6546         or perhaps something that is close enough to a POSIX shell.
6547         * m4/posix-shell.m4: New file.
6548         * modules/posix-shell: New file.
6549
6550         * MODULES.html.sh: Mention new module.
6551
6552         New module gnu-make, for determining whether we're using GNU Make.
6553         * m4/gnu-make.m4: New file.
6554         * modules/gnu-make: New file.
6555         * MODULES.html.sh: Mention new module.
6556
6557 2007-11-14  Jim Meyering  <meyering@redhat.com>
6558
6559         Define a sometimes-link-required function using ARGMATCH_DIE_DECL.
6560         * tests/test-argmatch.c (ARGMATCH_DIE_DECL): When defined,
6561         use this macro to create a function _definition_.
6562         Remove useless "#undef ARGMATCH_DIE".
6563
6564 2007-11-14  Bruno Haible  <bruno@clisp.org>
6565
6566         * lib/config.charset: Update for OpenBSD 4.1.
6567         Reported and helped by Ben Pfaff <blp@cs.stanford.edu>.
6568
6569 2007-11-12  Paul Eggert  <eggert@cs.ucla.edu>
6570
6571         Document 64-bit #if problems in stdint.texi.
6572         * doc/headers/stdint.texi (stdint.h): Mention problems with
6573         64-bit-#if, and how to work around them.
6574
6575         Don't insist on 'long long int' support in the preprocessor.  It
6576         breaks too many things.  For example, PRIdMAX still uses a 'long
6577         long int' format with the latest Sun compiler, even though
6578         HAVE_LONG_LONG_INT isn't defined due to that compiler's
6579         preprocessor problem.  This causes the latest coreutils to dump
6580         core on Solaris 10 sparc with the Sun C compiler.
6581         Instead, fix the 2007-10-16 problem in a different way, by evaluating
6582         the troublesome expressions at configure-time, not at #if-time.
6583         * m4/longlong.m4 (_AC_TYPE_LONG_LONG_SNIPPET): Don't test the
6584         preprocessor.
6585         * m4/inttypes.m4 (gl_INTTYPES_H): Move the #if checks into
6586         compile-time C checks, done at 'configure'-time.
6587         (gl_INTTYPES_CHECK_LONG_LONG_INT_CONDITION): New macro.
6588         * modules/inttypes (Makefile): Substitute the new symbols that
6589         gl_INTTYPES_H now generates.
6590         * lib/inttypes.in.h: Don't use constants wider than 'long' in #if.
6591
6592 2007-11-12  Bruno Haible  <bruno@clisp.org>
6593
6594         Tests for Unicode character classification functions.
6595
6596         * modules/unictype/bidicategory-byname-tests: New file.
6597         * modules/unictype/bidicategory-name-tests: New file.
6598         * modules/unictype/bidicategory-of-tests: New file.
6599         * modules/unictype/bidicategory-test-tests: New file.
6600         * modules/unictype/block-list-tests: New file.
6601         * modules/unictype/block-of-tests: New file.
6602         * modules/unictype/block-test-tests: New file.
6603         * modules/unictype/category-C-tests: New file.
6604         * modules/unictype/category-Cc-tests: New file.
6605         * modules/unictype/category-Cf-tests: New file.
6606         * modules/unictype/category-Cn-tests: New file.
6607         * modules/unictype/category-Co-tests: New file.
6608         * modules/unictype/category-Cs-tests: New file.
6609         * modules/unictype/category-L-tests: New file.
6610         * modules/unictype/category-Ll-tests: New file.
6611         * modules/unictype/category-Lm-tests: New file.
6612         * modules/unictype/category-Lo-tests: New file.
6613         * modules/unictype/category-Lt-tests: New file.
6614         * modules/unictype/category-Lu-tests: New file.
6615         * modules/unictype/category-M-tests: New file.
6616         * modules/unictype/category-Mc-tests: New file.
6617         * modules/unictype/category-Me-tests: New file.
6618         * modules/unictype/category-Mn-tests: New file.
6619         * modules/unictype/category-N-tests: New file.
6620         * modules/unictype/category-Nd-tests: New file.
6621         * modules/unictype/category-Nl-tests: New file.
6622         * modules/unictype/category-No-tests: New file.
6623         * modules/unictype/category-P-tests: New file.
6624         * modules/unictype/category-Pc-tests: New file.
6625         * modules/unictype/category-Pd-tests: New file.
6626         * modules/unictype/category-Pe-tests: New file.
6627         * modules/unictype/category-Pf-tests: New file.
6628         * modules/unictype/category-Pi-tests: New file.
6629         * modules/unictype/category-Po-tests: New file.
6630         * modules/unictype/category-Ps-tests: New file.
6631         * modules/unictype/category-S-tests: New file.
6632         * modules/unictype/category-Sc-tests: New file.
6633         * modules/unictype/category-Sk-tests: New file.
6634         * modules/unictype/category-Sm-tests: New file.
6635         * modules/unictype/category-So-tests: New file.
6636         * modules/unictype/category-Z-tests: New file.
6637         * modules/unictype/category-Zl-tests: New file.
6638         * modules/unictype/category-Zp-tests: New file.
6639         * modules/unictype/category-Zs-tests: New file.
6640         * modules/unictype/category-and-not-tests: New file.
6641         * modules/unictype/category-and-tests: New file.
6642         * modules/unictype/category-byname-tests: New file.
6643         * modules/unictype/category-name-tests: New file.
6644         * modules/unictype/category-none-tests: New file.
6645         * modules/unictype/category-of-tests: New file.
6646         * modules/unictype/category-or-tests: New file.
6647         * modules/unictype/category-test-withtable-tests: New file.
6648         * modules/unictype/combining-class-tests: New file.
6649         * modules/unictype/ctype-alnum-tests: New file.
6650         * modules/unictype/ctype-alpha-tests: New file.
6651         * modules/unictype/ctype-blank-tests: New file.
6652         * modules/unictype/ctype-cntrl-tests: New file.
6653         * modules/unictype/ctype-digit-tests: New file.
6654         * modules/unictype/ctype-graph-tests: New file.
6655         * modules/unictype/ctype-lower-tests: New file.
6656         * modules/unictype/ctype-print-tests: New file.
6657         * modules/unictype/ctype-punct-tests: New file.
6658         * modules/unictype/ctype-space-tests: New file.
6659         * modules/unictype/ctype-upper-tests: New file.
6660         * modules/unictype/ctype-xdigit-tests: New file.
6661         * modules/unictype/decimal-digit-tests: New file.
6662         * modules/unictype/digit-tests: New file.
6663         * modules/unictype/mirror-tests: New file.
6664         * modules/unictype/numeric-tests: New file.
6665         * modules/unictype/property-alphabetic-tests: New file.
6666         * modules/unictype/property-ascii-hex-digit-tests: New file.
6667         * modules/unictype/property-bidi-arabic-digit-tests: New file.
6668         * modules/unictype/property-bidi-arabic-right-to-left-tests: New file.
6669         * modules/unictype/property-bidi-block-separator-tests: New file.
6670         * modules/unictype/property-bidi-boundary-neutral-tests: New file.
6671         * modules/unictype/property-bidi-common-separator-tests: New file.
6672         * modules/unictype/property-bidi-control-tests: New file.
6673         * modules/unictype/property-bidi-embedding-or-override-tests: New file.
6674         * modules/unictype/property-bidi-eur-num-separator-tests: New file.
6675         * modules/unictype/property-bidi-eur-num-terminator-tests: New file.
6676         * modules/unictype/property-bidi-european-digit-tests: New file.
6677         * modules/unictype/property-bidi-hebrew-right-to-left-tests: New file.
6678         * modules/unictype/property-bidi-left-to-right-tests: New file.
6679         * modules/unictype/property-bidi-non-spacing-mark-tests: New file.
6680         * modules/unictype/property-bidi-other-neutral-tests: New file.
6681         * modules/unictype/property-bidi-pdf-tests: New file.
6682         * modules/unictype/property-bidi-segment-separator-tests: New file.
6683         * modules/unictype/property-bidi-whitespace-tests: New file.
6684         * modules/unictype/property-byname-tests: New file.
6685         * modules/unictype/property-combining-tests: New file.
6686         * modules/unictype/property-composite-tests: New file.
6687         * modules/unictype/property-currency-symbol-tests: New file.
6688         * modules/unictype/property-dash-tests: New file.
6689         * modules/unictype/property-decimal-digit-tests: New file.
6690         * modules/unictype/property-default-ignorable-code-point-tests: New file.
6691         * modules/unictype/property-deprecated-tests: New file.
6692         * modules/unictype/property-diacritic-tests: New file.
6693         * modules/unictype/property-extender-tests: New file.
6694         * modules/unictype/property-format-control-tests: New file.
6695         * modules/unictype/property-grapheme-base-tests: New file.
6696         * modules/unictype/property-grapheme-extend-tests: New file.
6697         * modules/unictype/property-grapheme-link-tests: New file.
6698         * modules/unictype/property-hex-digit-tests: New file.
6699         * modules/unictype/property-hyphen-tests: New file.
6700         * modules/unictype/property-id-continue-tests: New file.
6701         * modules/unictype/property-id-start-tests: New file.
6702         * modules/unictype/property-ideographic-tests: New file.
6703         * modules/unictype/property-ids-binary-operator-tests: New file.
6704         * modules/unictype/property-ids-trinary-operator-tests: New file.
6705         * modules/unictype/property-ignorable-control-tests: New file.
6706         * modules/unictype/property-iso-control-tests: New file.
6707         * modules/unictype/property-join-control-tests: New file.
6708         * modules/unictype/property-left-of-pair-tests: New file.
6709         * modules/unictype/property-line-separator-tests: New file.
6710         * modules/unictype/property-logical-order-exception-tests: New file.
6711         * modules/unictype/property-lowercase-tests: New file.
6712         * modules/unictype/property-math-tests: New file.
6713         * modules/unictype/property-non-break-tests: New file.
6714         * modules/unictype/property-not-a-character-tests: New file.
6715         * modules/unictype/property-numeric-tests: New file.
6716         * modules/unictype/property-other-alphabetic-tests: New file.
6717         * modules/unictype/property-other-default-ignorable-code-point-tests: New file.
6718         * modules/unictype/property-other-grapheme-extend-tests: New file.
6719         * modules/unictype/property-other-id-continue-tests: New file.
6720         * modules/unictype/property-other-id-start-tests: New file.
6721         * modules/unictype/property-other-lowercase-tests: New file.
6722         * modules/unictype/property-other-math-tests: New file.
6723         * modules/unictype/property-other-uppercase-tests: New file.
6724         * modules/unictype/property-paired-punctuation-tests: New file.
6725         * modules/unictype/property-paragraph-separator-tests: New file.
6726         * modules/unictype/property-pattern-syntax-tests: New file.
6727         * modules/unictype/property-pattern-white-space-tests: New file.
6728         * modules/unictype/property-private-use-tests: New file.
6729         * modules/unictype/property-punctuation-tests: New file.
6730         * modules/unictype/property-quotation-mark-tests: New file.
6731         * modules/unictype/property-radical-tests: New file.
6732         * modules/unictype/property-sentence-terminal-tests: New file.
6733         * modules/unictype/property-soft-dotted-tests: New file.
6734         * modules/unictype/property-space-tests: New file.
6735         * modules/unictype/property-terminal-punctuation-tests: New file.
6736         * modules/unictype/property-test-tests: New file.
6737         * modules/unictype/property-titlecase-tests: New file.
6738         * modules/unictype/property-unassigned-code-value-tests: New file.
6739         * modules/unictype/property-unified-ideograph-tests: New file.
6740         * modules/unictype/property-uppercase-tests: New file.
6741         * modules/unictype/property-variation-selector-tests: New file.
6742         * modules/unictype/property-white-space-tests: New file.
6743         * modules/unictype/property-xid-continue-tests: New file.
6744         * modules/unictype/property-xid-start-tests: New file.
6745         * modules/unictype/property-zero-width-tests: New file.
6746         * modules/unictype/scripts-tests: New file.
6747         * modules/unictype/syntax-c-ident-tests: New file.
6748         * modules/unictype/syntax-c-whitespace-tests: New file.
6749         * modules/unictype/syntax-java-ident-tests: New file.
6750         * modules/unictype/syntax-java-whitespace-tests: New file.
6751         * tests/unictype/test-bidi_byname.c: New file.
6752         * tests/unictype/test-bidi_name.c: New file.
6753         * tests/unictype/test-bidi_of.c: New file.
6754         * tests/unictype/test-bidi_test.c: New file.
6755         * tests/unictype/test-block_list.c: New file.
6756         * tests/unictype/test-block_of.c: New file.
6757         * tests/unictype/test-block_test.c: New file.
6758         * tests/unictype/test-categ_and.c: New file.
6759         * tests/unictype/test-categ_and_not.c: New file.
6760         * tests/unictype/test-categ_byname.c: New file.
6761         * tests/unictype/test-categ_name.c: New file.
6762         * tests/unictype/test-categ_none.c: New file.
6763         * tests/unictype/test-categ_of.c: New file.
6764         * tests/unictype/test-categ_or.c: New file.
6765         * tests/unictype/test-categ_test_withtable.c: New file.
6766         * tests/unictype/test-combining.c: New file.
6767         * tests/unictype/test-decdigit.c: New file.
6768         * tests/unictype/test-digit.c: New file.
6769         * tests/unictype/test-mirror.c: New file.
6770         * tests/unictype/test-numeric.c: New file.
6771         * tests/unictype/test-pr_byname.c: New file.
6772         * tests/unictype/test-pr_test.c: New file.
6773         * tests/unictype/test-predicate-part1.h: New file.
6774         * tests/unictype/test-predicate-part2.h: New file.
6775         * tests/unictype/test-scripts.c: New file.
6776         * tests/unictype/test-sy_c_ident.c: New file.
6777         * tests/unictype/test-sy_java_ident.c: New file.
6778
6779         * tests/unictype/test-categ_C.c: New file, generated by gen-ctype.c
6780         for Unicode 5.0.0.
6781         * tests/unictype/test-categ_Cc.c: Likewise.
6782         * tests/unictype/test-categ_Cf.c: Likewise.
6783         * tests/unictype/test-categ_Cn.c: Likewise.
6784         * tests/unictype/test-categ_Co.c: Likewise.
6785         * tests/unictype/test-categ_Cs.c: Likewise.
6786         * tests/unictype/test-categ_L.c: Likewise.
6787         * tests/unictype/test-categ_Ll.c: Likewise.
6788         * tests/unictype/test-categ_Lm.c: Likewise.
6789         * tests/unictype/test-categ_Lo.c: Likewise.
6790         * tests/unictype/test-categ_Lt.c: Likewise.
6791         * tests/unictype/test-categ_Lu.c: Likewise.
6792         * tests/unictype/test-categ_M.c: Likewise.
6793         * tests/unictype/test-categ_Mc.c: Likewise.
6794         * tests/unictype/test-categ_Me.c: Likewise.
6795         * tests/unictype/test-categ_Mn.c: Likewise.
6796         * tests/unictype/test-categ_N.c: Likewise.
6797         * tests/unictype/test-categ_Nd.c: Likewise.
6798         * tests/unictype/test-categ_Nl.c: Likewise.
6799         * tests/unictype/test-categ_No.c: Likewise.
6800         * tests/unictype/test-categ_P.c: Likewise.
6801         * tests/unictype/test-categ_Pc.c: Likewise.
6802         * tests/unictype/test-categ_Pd.c: Likewise.
6803         * tests/unictype/test-categ_Pe.c: Likewise.
6804         * tests/unictype/test-categ_Pf.c: Likewise.
6805         * tests/unictype/test-categ_Pi.c: Likewise.
6806         * tests/unictype/test-categ_Po.c: Likewise.
6807         * tests/unictype/test-categ_Ps.c: Likewise.
6808         * tests/unictype/test-categ_S.c: Likewise.
6809         * tests/unictype/test-categ_Sc.c: Likewise.
6810         * tests/unictype/test-categ_Sk.c: Likewise.
6811         * tests/unictype/test-categ_Sm.c: Likewise.
6812         * tests/unictype/test-categ_So.c: Likewise.
6813         * tests/unictype/test-categ_Z.c: Likewise.
6814         * tests/unictype/test-categ_Zl.c: Likewise.
6815         * tests/unictype/test-categ_Zp.c: Likewise.
6816         * tests/unictype/test-categ_Zs.c: Likewise.
6817         * tests/unictype/test-ctype_alnum.c: Likewise.
6818         * tests/unictype/test-ctype_alpha.c: Likewise.
6819         * tests/unictype/test-ctype_blank.c: Likewise.
6820         * tests/unictype/test-ctype_cntrl.c: Likewise.
6821         * tests/unictype/test-ctype_digit.c: Likewise.
6822         * tests/unictype/test-ctype_graph.c: Likewise.
6823         * tests/unictype/test-ctype_lower.c: Likewise.
6824         * tests/unictype/test-ctype_print.c: Likewise.
6825         * tests/unictype/test-ctype_punct.c: Likewise.
6826         * tests/unictype/test-ctype_space.c: Likewise.
6827         * tests/unictype/test-ctype_upper.c: Likewise.
6828         * tests/unictype/test-ctype_xdigit.c: Likewise.
6829         * tests/unictype/test-decdigit.h: Likewise.
6830         * tests/unictype/test-digit.h: Likewise.
6831         * tests/unictype/test-numeric.h: Likewise.
6832         * tests/unictype/test-pr_alphabetic.c: Likewise.
6833         * tests/unictype/test-pr_ascii_hex_digit.c: Likewise.
6834         * tests/unictype/test-pr_bidi_arabic_digit.c: Likewise.
6835         * tests/unictype/test-pr_bidi_arabic_right_to_left.c: Likewise.
6836         * tests/unictype/test-pr_bidi_block_separator.c: Likewise.
6837         * tests/unictype/test-pr_bidi_boundary_neutral.c: Likewise.
6838         * tests/unictype/test-pr_bidi_common_separator.c: Likewise.
6839         * tests/unictype/test-pr_bidi_control.c: Likewise.
6840         * tests/unictype/test-pr_bidi_embedding_or_override.c: Likewise.
6841         * tests/unictype/test-pr_bidi_eur_num_separator.c: Likewise.
6842         * tests/unictype/test-pr_bidi_eur_num_terminator.c: Likewise.
6843         * tests/unictype/test-pr_bidi_european_digit.c: Likewise.
6844         * tests/unictype/test-pr_bidi_hebrew_right_to_left.c: Likewise.
6845         * tests/unictype/test-pr_bidi_left_to_right.c: Likewise.
6846         * tests/unictype/test-pr_bidi_non_spacing_mark.c: Likewise.
6847         * tests/unictype/test-pr_bidi_other_neutral.c: Likewise.
6848         * tests/unictype/test-pr_bidi_pdf.c: Likewise.
6849         * tests/unictype/test-pr_bidi_segment_separator.c: Likewise.
6850         * tests/unictype/test-pr_bidi_whitespace.c: Likewise.
6851         * tests/unictype/test-pr_combining.c: Likewise.
6852         * tests/unictype/test-pr_composite.c: Likewise.
6853         * tests/unictype/test-pr_currency_symbol.c: Likewise.
6854         * tests/unictype/test-pr_dash.c: Likewise.
6855         * tests/unictype/test-pr_decimal_digit.c: Likewise.
6856         * tests/unictype/test-pr_default_ignorable_code_point.c: Likewise.
6857         * tests/unictype/test-pr_deprecated.c: Likewise.
6858         * tests/unictype/test-pr_diacritic.c: Likewise.
6859         * tests/unictype/test-pr_extender.c: Likewise.
6860         * tests/unictype/test-pr_format_control.c: Likewise.
6861         * tests/unictype/test-pr_grapheme_base.c: Likewise.
6862         * tests/unictype/test-pr_grapheme_extend.c: Likewise.
6863         * tests/unictype/test-pr_grapheme_link.c: Likewise.
6864         * tests/unictype/test-pr_hex_digit.c: Likewise.
6865         * tests/unictype/test-pr_hyphen.c: Likewise.
6866         * tests/unictype/test-pr_id_continue.c: Likewise.
6867         * tests/unictype/test-pr_id_start.c: Likewise.
6868         * tests/unictype/test-pr_ideographic.c: Likewise.
6869         * tests/unictype/test-pr_ids_binary_operator.c: Likewise.
6870         * tests/unictype/test-pr_ids_trinary_operator.c: Likewise.
6871         * tests/unictype/test-pr_ignorable_control.c: Likewise.
6872         * tests/unictype/test-pr_iso_control.c: Likewise.
6873         * tests/unictype/test-pr_join_control.c: Likewise.
6874         * tests/unictype/test-pr_left_of_pair.c: Likewise.
6875         * tests/unictype/test-pr_line_separator.c: Likewise.
6876         * tests/unictype/test-pr_logical_order_exception.c: Likewise.
6877         * tests/unictype/test-pr_lowercase.c: Likewise.
6878         * tests/unictype/test-pr_math.c: Likewise.
6879         * tests/unictype/test-pr_non_break.c: Likewise.
6880         * tests/unictype/test-pr_not_a_character.c: Likewise.
6881         * tests/unictype/test-pr_numeric.c: Likewise.
6882         * tests/unictype/test-pr_other_alphabetic.c: Likewise.
6883         * tests/unictype/test-pr_other_default_ignorable_code_point.c: Likewise.
6884         * tests/unictype/test-pr_other_grapheme_extend.c: Likewise.
6885         * tests/unictype/test-pr_other_id_continue.c: Likewise.
6886         * tests/unictype/test-pr_other_id_start.c: Likewise.
6887         * tests/unictype/test-pr_other_lowercase.c: Likewise.
6888         * tests/unictype/test-pr_other_math.c: Likewise.
6889         * tests/unictype/test-pr_other_uppercase.c: Likewise.
6890         * tests/unictype/test-pr_paired_punctuation.c: Likewise.
6891         * tests/unictype/test-pr_paragraph_separator.c: Likewise.
6892         * tests/unictype/test-pr_pattern_syntax.c: Likewise.
6893         * tests/unictype/test-pr_pattern_white_space.c: Likewise.
6894         * tests/unictype/test-pr_private_use.c: Likewise.
6895         * tests/unictype/test-pr_punctuation.c: Likewise.
6896         * tests/unictype/test-pr_quotation_mark.c: Likewise.
6897         * tests/unictype/test-pr_radical.c: Likewise.
6898         * tests/unictype/test-pr_sentence_terminal.c: Likewise.
6899         * tests/unictype/test-pr_soft_dotted.c: Likewise.
6900         * tests/unictype/test-pr_space.c: Likewise.
6901         * tests/unictype/test-pr_terminal_punctuation.c: Likewise.
6902         * tests/unictype/test-pr_titlecase.c: Likewise.
6903         * tests/unictype/test-pr_unassigned_code_value.c: Likewise.
6904         * tests/unictype/test-pr_unified_ideograph.c: Likewise.
6905         * tests/unictype/test-pr_uppercase.c: Likewise.
6906         * tests/unictype/test-pr_variation_selector.c: Likewise.
6907         * tests/unictype/test-pr_white_space.c: Likewise.
6908         * tests/unictype/test-pr_xid_continue.c: Likewise.
6909         * tests/unictype/test-pr_xid_start.c: Likewise.
6910         * tests/unictype/test-pr_zero_width.c: Likewise.
6911         * tests/unictype/test-sy_c_whitespace.c: Likewise.
6912         * tests/unictype/test-sy_java_whitespace.c: Likewise.
6913
6914 2007-11-12  Bruno Haible  <bruno@clisp.org>
6915
6916         Unicode character classification functions.
6917         * lib/unictype.h: New file.
6918         * modules/unictype/base: New file.
6919         * modules/unictype/category-L: New file.
6920         * modules/unictype/category-Lu: New file.
6921         * modules/unictype/category-Ll: New file.
6922         * modules/unictype/category-Lt: New file.
6923         * modules/unictype/category-Lm: New file.
6924         * modules/unictype/category-Lo: New file.
6925         * modules/unictype/category-M: New file.
6926         * modules/unictype/category-Mn: New file.
6927         * modules/unictype/category-Mc: New file.
6928         * modules/unictype/category-Me: New file.
6929         * modules/unictype/category-N: New file.
6930         * modules/unictype/category-Nd: New file.
6931         * modules/unictype/category-Nl: New file.
6932         * modules/unictype/category-No: New file.
6933         * modules/unictype/category-P: New file.
6934         * modules/unictype/category-Pc: New file.
6935         * modules/unictype/category-Pd: New file.
6936         * modules/unictype/category-Ps: New file.
6937         * modules/unictype/category-Pe: New file.
6938         * modules/unictype/category-Pi: New file.
6939         * modules/unictype/category-Pf: New file.
6940         * modules/unictype/category-Po: New file.
6941         * modules/unictype/category-S: New file.
6942         * modules/unictype/category-Sm: New file.
6943         * modules/unictype/category-Sc: New file.
6944         * modules/unictype/category-Sk: New file.
6945         * modules/unictype/category-So: New file.
6946         * modules/unictype/category-Z: New file.
6947         * modules/unictype/category-Zs: New file.
6948         * modules/unictype/category-Zl: New file.
6949         * modules/unictype/category-Zp: New file.
6950         * modules/unictype/category-C: New file.
6951         * modules/unictype/category-Cc: New file.
6952         * modules/unictype/category-Cf: New file.
6953         * modules/unictype/category-Cs: New file.
6954         * modules/unictype/category-Co: New file.
6955         * modules/unictype/category-Cn: New file.
6956         * modules/unictype/category-or: New file.
6957         * modules/unictype/category-of: New file.
6958         * modules/unictype/category-test: New file.
6959         * modules/unictype/category-test-withtable: New file.
6960         * modules/unictype/category-byname: New file.
6961         * modules/unictype/category-none: New file.
6962         * modules/unictype/category-and: New file.
6963         * modules/unictype/category-and-not: New file.
6964         * modules/unictype/category-name: New file.
6965         * modules/unictype/combining-class: New file.
6966         * modules/unictype/category-all: New file.
6967         * modules/unictype/bidicategory-all: New file.
6968         * modules/unictype/bidicategory-byname: New file.
6969         * modules/unictype/bidicategory-name: New file.
6970         * modules/unictype/bidicategory-of: New file.
6971         * modules/unictype/bidicategory-test: New file.
6972         * modules/unictype/decimal-digit: New file.
6973         * modules/unictype/digit: New file.
6974         * modules/unictype/numeric: New file.
6975         * modules/unictype/mirror: New file.
6976         * modules/unictype/property-white-space: New file.
6977         * modules/unictype/property-alphabetic: New file.
6978         * modules/unictype/property-other-alphabetic: New file.
6979         * modules/unictype/property-not-a-character: New file.
6980         * modules/unictype/property-default-ignorable-code-point: New file.
6981         * modules/unictype/property-other-default-ignorable-code-point: New
6982         file.
6983         * modules/unictype/property-deprecated: New file.
6984         * modules/unictype/property-logical-order-exception: New file.
6985         * modules/unictype/property-variation-selector: New file.
6986         * modules/unictype/property-private-use: New file.
6987         * modules/unictype/property-unassigned-code-value: New file.
6988         * modules/unictype/property-uppercase: New file.
6989         * modules/unictype/property-other-uppercase: New file.
6990         * modules/unictype/property-lowercase: New file.
6991         * modules/unictype/property-other-lowercase: New file.
6992         * modules/unictype/property-titlecase: New file.
6993         * modules/unictype/property-soft-dotted: New file.
6994         * modules/unictype/property-id-start: New file.
6995         * modules/unictype/property-other-id-start: New file.
6996         * modules/unictype/property-id-continue: New file.
6997         * modules/unictype/property-other-id-continue: New file.
6998         * modules/unictype/property-xid-start: New file.
6999         * modules/unictype/property-xid-continue: New file.
7000         * modules/unictype/property-pattern-white-space: New file.
7001         * modules/unictype/property-pattern-syntax: New file.
7002         * modules/unictype/property-join-control: New file.
7003         * modules/unictype/property-grapheme-base: New file.
7004         * modules/unictype/property-grapheme-extend: New file.
7005         * modules/unictype/property-other-grapheme-extend: New file.
7006         * modules/unictype/property-grapheme-link: New file.
7007         * modules/unictype/property-bidi-control: New file.
7008         * modules/unictype/property-bidi-left-to-right: New file.
7009         * modules/unictype/property-bidi-hebrew-right-to-left: New file.
7010         * modules/unictype/property-bidi-arabic-right-to-left: New file.
7011         * modules/unictype/property-bidi-european-digit: New file.
7012         * modules/unictype/property-bidi-eur-num-separator: New file.
7013         * modules/unictype/property-bidi-eur-num-terminator: New file.
7014         * modules/unictype/property-bidi-arabic-digit: New file.
7015         * modules/unictype/property-bidi-common-separator: New file.
7016         * modules/unictype/property-bidi-block-separator: New file.
7017         * modules/unictype/property-bidi-segment-separator: New file.
7018         * modules/unictype/property-bidi-whitespace: New file.
7019         * modules/unictype/property-bidi-non-spacing-mark: New file.
7020         * modules/unictype/property-bidi-boundary-neutral: New file.
7021         * modules/unictype/property-bidi-pdf: New file.
7022         * modules/unictype/property-bidi-embedding-or-override: New file.
7023         * modules/unictype/property-bidi-other-neutral: New file.
7024         * modules/unictype/property-hex-digit: New file.
7025         * modules/unictype/property-ascii-hex-digit: New file.
7026         * modules/unictype/property-ideographic: New file.
7027         * modules/unictype/property-unified-ideograph: New file.
7028         * modules/unictype/property-radical: New file.
7029         * modules/unictype/property-ids-binary-operator: New file.
7030         * modules/unictype/property-ids-trinary-operator: New file.
7031         * modules/unictype/property-zero-width: New file.
7032         * modules/unictype/property-space: New file.
7033         * modules/unictype/property-non-break: New file.
7034         * modules/unictype/property-iso-control: New file.
7035         * modules/unictype/property-format-control: New file.
7036         * modules/unictype/property-dash: New file.
7037         * modules/unictype/property-hyphen: New file.
7038         * modules/unictype/property-punctuation: New file.
7039         * modules/unictype/property-line-separator: New file.
7040         * modules/unictype/property-paragraph-separator: New file.
7041         * modules/unictype/property-quotation-mark: New file.
7042         * modules/unictype/property-sentence-terminal: New file.
7043         * modules/unictype/property-terminal-punctuation: New file.
7044         * modules/unictype/property-currency-symbol: New file.
7045         * modules/unictype/property-math: New file.
7046         * modules/unictype/property-other-math: New file.
7047         * modules/unictype/property-paired-punctuation: New file.
7048         * modules/unictype/property-left-of-pair: New file.
7049         * modules/unictype/property-combining: New file.
7050         * modules/unictype/property-composite: New file.
7051         * modules/unictype/property-decimal-digit: New file.
7052         * modules/unictype/property-numeric: New file.
7053         * modules/unictype/property-diacritic: New file.
7054         * modules/unictype/property-extender: New file.
7055         * modules/unictype/property-ignorable-control: New file.
7056         * modules/unictype/property-test: New file.
7057         * modules/unictype/property-byname: New file.
7058         * modules/unictype/property-all: New file.
7059         * modules/unictype/scripts: New file.
7060         * modules/unictype/scripts-all: New file.
7061         * modules/unictype/block-of: New file.
7062         * modules/unictype/block-test: New file.
7063         * modules/unictype/block-list: New file.
7064         * modules/unictype/block-all: New file.
7065         * modules/unictype/syntax-c-whitespace: New file.
7066         * modules/unictype/syntax-java-whitespace: New file.
7067         * modules/unictype/syntax-c-ident: New file.
7068         * modules/unictype/syntax-java-ident: New file.
7069         * modules/unictype/ctype-alnum: New file.
7070         * modules/unictype/ctype-alpha: New file.
7071         * modules/unictype/ctype-cntrl: New file.
7072         * modules/unictype/ctype-digit: New file.
7073         * modules/unictype/ctype-graph: New file.
7074         * modules/unictype/ctype-lower: New file.
7075         * modules/unictype/ctype-print: New file.
7076         * modules/unictype/ctype-punct: New file.
7077         * modules/unictype/ctype-space: New file.
7078         * modules/unictype/ctype-upper: New file.
7079         * modules/unictype/ctype-xdigit: New file.
7080         * modules/unictype/ctype-blank: New file.
7081         * lib/unictype/bidi_byname.c: New file.
7082         * lib/unictype/bidi_name.c: New file.
7083         * lib/unictype/bidi_of.c: New file.
7084         * lib/unictype/bidi_test.c: New file.
7085         * lib/unictype/bitmap.h: New file.
7086         * lib/unictype/block_test.c: New file.
7087         * lib/unictype/blocks.c: New file.
7088         * lib/unictype/categ_C.c: New file.
7089         * lib/unictype/categ_Cc.c: New file.
7090         * lib/unictype/categ_Cf.c: New file.
7091         * lib/unictype/categ_Cn.c: New file.
7092         * lib/unictype/categ_Co.c: New file.
7093         * lib/unictype/categ_Cs.c: New file.
7094         * lib/unictype/categ_L.c: New file.
7095         * lib/unictype/categ_Ll.c: New file.
7096         * lib/unictype/categ_Lm.c: New file.
7097         * lib/unictype/categ_Lo.c: New file.
7098         * lib/unictype/categ_Lt.c: New file.
7099         * lib/unictype/categ_Lu.c: New file.
7100         * lib/unictype/categ_M.c: New file.
7101         * lib/unictype/categ_Mc.c: New file.
7102         * lib/unictype/categ_Me.c: New file.
7103         * lib/unictype/categ_Mn.c: New file.
7104         * lib/unictype/categ_N.c: New file.
7105         * lib/unictype/categ_Nd.c: New file.
7106         * lib/unictype/categ_Nl.c: New file.
7107         * lib/unictype/categ_No.c: New file.
7108         * lib/unictype/categ_P.c: New file.
7109         * lib/unictype/categ_Pc.c: New file.
7110         * lib/unictype/categ_Pd.c: New file.
7111         * lib/unictype/categ_Pe.c: New file.
7112         * lib/unictype/categ_Pf.c: New file.
7113         * lib/unictype/categ_Pi.c: New file.
7114         * lib/unictype/categ_Po.c: New file.
7115         * lib/unictype/categ_Ps.c: New file.
7116         * lib/unictype/categ_S.c: New file.
7117         * lib/unictype/categ_Sc.c: New file.
7118         * lib/unictype/categ_Sk.c: New file.
7119         * lib/unictype/categ_Sm.c: New file.
7120         * lib/unictype/categ_So.c: New file.
7121         * lib/unictype/categ_Z.c: New file.
7122         * lib/unictype/categ_Zl.c: New file.
7123         * lib/unictype/categ_Zp.c: New file.
7124         * lib/unictype/categ_Zs.c: New file.
7125         * lib/unictype/categ_and.c: New file.
7126         * lib/unictype/categ_and_not.c: New file.
7127         * lib/unictype/categ_byname.c: New file.
7128         * lib/unictype/categ_name.c: New file.
7129         * lib/unictype/categ_none.c: New file.
7130         * lib/unictype/categ_of.c: New file.
7131         * lib/unictype/categ_or.c: New file.
7132         * lib/unictype/categ_test.c: New file.
7133         * lib/unictype/combining.c: New file.
7134         * lib/unictype/ctype_alnum.c: New file.
7135         * lib/unictype/ctype_alpha.c: New file.
7136         * lib/unictype/ctype_blank.c: New file.
7137         * lib/unictype/ctype_cntrl.c: New file.
7138         * lib/unictype/ctype_digit.c: New file.
7139         * lib/unictype/ctype_graph.c: New file.
7140         * lib/unictype/ctype_lower.c: New file.
7141         * lib/unictype/ctype_print.c: New file.
7142         * lib/unictype/ctype_punct.c: New file.
7143         * lib/unictype/ctype_space.c: New file.
7144         * lib/unictype/ctype_upper.c: New file.
7145         * lib/unictype/ctype_xdigit.c: New file.
7146         * lib/unictype/decdigit.c: New file.
7147         * lib/unictype/digit.c: New file.
7148         * lib/unictype/identsyntaxmap.h: New file.
7149         * lib/unictype/mirror.c: New file.
7150         * lib/unictype/numeric.c: New file.
7151         * lib/unictype/pr_alphabetic.c: New file.
7152         * lib/unictype/pr_ascii_hex_digit.c: New file.
7153         * lib/unictype/pr_bidi_arabic_digit.c: New file.
7154         * lib/unictype/pr_bidi_arabic_right_to_left.c: New file.
7155         * lib/unictype/pr_bidi_block_separator.c: New file.
7156         * lib/unictype/pr_bidi_boundary_neutral.c: New file.
7157         * lib/unictype/pr_bidi_common_separator.c: New file.
7158         * lib/unictype/pr_bidi_control.c: New file.
7159         * lib/unictype/pr_bidi_embedding_or_override.c: New file.
7160         * lib/unictype/pr_bidi_eur_num_separator.c: New file.
7161         * lib/unictype/pr_bidi_eur_num_terminator.c: New file.
7162         * lib/unictype/pr_bidi_european_digit.c: New file.
7163         * lib/unictype/pr_bidi_hebrew_right_to_left.c: New file.
7164         * lib/unictype/pr_bidi_left_to_right.c: New file.
7165         * lib/unictype/pr_bidi_non_spacing_mark.c: New file.
7166         * lib/unictype/pr_bidi_other_neutral.c: New file.
7167         * lib/unictype/pr_bidi_pdf.c: New file.
7168         * lib/unictype/pr_bidi_segment_separator.c: New file.
7169         * lib/unictype/pr_bidi_whitespace.c: New file.
7170         * lib/unictype/pr_byname.c: New file.
7171         * lib/unictype/pr_byname.gperf: New file.
7172         * lib/unictype/pr_combining.c: New file.
7173         * lib/unictype/pr_composite.c: New file.
7174         * lib/unictype/pr_currency_symbol.c: New file.
7175         * lib/unictype/pr_dash.c: New file.
7176         * lib/unictype/pr_decimal_digit.c: New file.
7177         * lib/unictype/pr_default_ignorable_code_point.c: New file.
7178         * lib/unictype/pr_deprecated.c: New file.
7179         * lib/unictype/pr_diacritic.c: New file.
7180         * lib/unictype/pr_extender.c: New file.
7181         * lib/unictype/pr_format_control.c: New file.
7182         * lib/unictype/pr_grapheme_base.c: New file.
7183         * lib/unictype/pr_grapheme_extend.c: New file.
7184         * lib/unictype/pr_grapheme_link.c: New file.
7185         * lib/unictype/pr_hex_digit.c: New file.
7186         * lib/unictype/pr_hyphen.c: New file.
7187         * lib/unictype/pr_id_continue.c: New file.
7188         * lib/unictype/pr_id_start.c: New file.
7189         * lib/unictype/pr_ideographic.c: New file.
7190         * lib/unictype/pr_ids_binary_operator.c: New file.
7191         * lib/unictype/pr_ids_trinary_operator.c: New file.
7192         * lib/unictype/pr_ignorable_control.c: New file.
7193         * lib/unictype/pr_iso_control.c: New file.
7194         * lib/unictype/pr_join_control.c: New file.
7195         * lib/unictype/pr_left_of_pair.c: New file.
7196         * lib/unictype/pr_line_separator.c: New file.
7197         * lib/unictype/pr_logical_order_exception.c: New file.
7198         * lib/unictype/pr_lowercase.c: New file.
7199         * lib/unictype/pr_math.c: New file.
7200         * lib/unictype/pr_non_break.c: New file.
7201         * lib/unictype/pr_not_a_character.c: New file.
7202         * lib/unictype/pr_numeric.c: New file.
7203         * lib/unictype/pr_other_alphabetic.c: New file.
7204         * lib/unictype/pr_other_default_ignorable_code_point.c: New file.
7205         * lib/unictype/pr_other_grapheme_extend.c: New file.
7206         * lib/unictype/pr_other_id_continue.c: New file.
7207         * lib/unictype/pr_other_id_start.c: New file.
7208         * lib/unictype/pr_other_lowercase.c: New file.
7209         * lib/unictype/pr_other_math.c: New file.
7210         * lib/unictype/pr_other_uppercase.c: New file.
7211         * lib/unictype/pr_paired_punctuation.c: New file.
7212         * lib/unictype/pr_paragraph_separator.c: New file.
7213         * lib/unictype/pr_pattern_syntax.c: New file.
7214         * lib/unictype/pr_pattern_white_space.c: New file.
7215         * lib/unictype/pr_private_use.c: New file.
7216         * lib/unictype/pr_punctuation.c: New file.
7217         * lib/unictype/pr_quotation_mark.c: New file.
7218         * lib/unictype/pr_radical.c: New file.
7219         * lib/unictype/pr_sentence_terminal.c: New file.
7220         * lib/unictype/pr_soft_dotted.c: New file.
7221         * lib/unictype/pr_space.c: New file.
7222         * lib/unictype/pr_terminal_punctuation.c: New file.
7223         * lib/unictype/pr_test.c: New file.
7224         * lib/unictype/pr_titlecase.c: New file.
7225         * lib/unictype/pr_unassigned_code_value.c: New file.
7226         * lib/unictype/pr_unified_ideograph.c: New file.
7227         * lib/unictype/pr_uppercase.c: New file.
7228         * lib/unictype/pr_variation_selector.c: New file.
7229         * lib/unictype/pr_white_space.c: New file.
7230         * lib/unictype/pr_xid_continue.c: New file.
7231         * lib/unictype/pr_xid_start.c: New file.
7232         * lib/unictype/pr_zero_width.c: New file.
7233         * lib/unictype/scripts.c: New file.
7234         * lib/unictype/sy_c_ident.c: New file.
7235         * lib/unictype/sy_c_whitespace.c: New file.
7236         * lib/unictype/sy_java_ident.c: New file.
7237         * lib/unictype/sy_java_whitespace.c: New file.
7238
7239         * lib/unictype/bidi_of.h: New file, generated by gen-ctype.c for
7240         Unicode 5.0.0.
7241         * lib/unictype/blocks.h: Likewise.
7242         * lib/unictype/categ_C.h: Likewise.
7243         * lib/unictype/categ_Cc.h: Likewise.
7244         * lib/unictype/categ_Cf.h: Likewise.
7245         * lib/unictype/categ_Cn.h: Likewise.
7246         * lib/unictype/categ_Co.h: Likewise.
7247         * lib/unictype/categ_Cs.h: Likewise.
7248         * lib/unictype/categ_L.h: Likewise.
7249         * lib/unictype/categ_Ll.h: Likewise.
7250         * lib/unictype/categ_Lm.h: Likewise.
7251         * lib/unictype/categ_Lo.h: Likewise.
7252         * lib/unictype/categ_Lt.h: Likewise.
7253         * lib/unictype/categ_Lu.h: Likewise.
7254         * lib/unictype/categ_M.h: Likewise.
7255         * lib/unictype/categ_Mc.h: Likewise.
7256         * lib/unictype/categ_Me.h: Likewise.
7257         * lib/unictype/categ_Mn.h: Likewise.
7258         * lib/unictype/categ_N.h: Likewise.
7259         * lib/unictype/categ_Nd.h: Likewise.
7260         * lib/unictype/categ_Nl.h: Likewise.
7261         * lib/unictype/categ_No.h: Likewise.
7262         * lib/unictype/categ_P.h: Likewise.
7263         * lib/unictype/categ_Pc.h: Likewise.
7264         * lib/unictype/categ_Pd.h: Likewise.
7265         * lib/unictype/categ_Pe.h: Likewise.
7266         * lib/unictype/categ_Pf.h: Likewise.
7267         * lib/unictype/categ_Pi.h: Likewise.
7268         * lib/unictype/categ_Po.h: Likewise.
7269         * lib/unictype/categ_Ps.h: Likewise.
7270         * lib/unictype/categ_S.h: Likewise.
7271         * lib/unictype/categ_Sc.h: Likewise.
7272         * lib/unictype/categ_Sk.h: Likewise.
7273         * lib/unictype/categ_Sm.h: Likewise.
7274         * lib/unictype/categ_So.h: Likewise.
7275         * lib/unictype/categ_Z.h: Likewise.
7276         * lib/unictype/categ_Zl.h: Likewise.
7277         * lib/unictype/categ_Zp.h: Likewise.
7278         * lib/unictype/categ_Zs.h: Likewise.
7279         * lib/unictype/categ_of.h: Likewise.
7280         * lib/unictype/combining.h: Likewise.
7281         * lib/unictype/ctype_alnum.h: Likewise.
7282         * lib/unictype/ctype_alpha.h: Likewise.
7283         * lib/unictype/ctype_blank.h: Likewise.
7284         * lib/unictype/ctype_cntrl.h: Likewise.
7285         * lib/unictype/ctype_digit.h: Likewise.
7286         * lib/unictype/ctype_graph.h: Likewise.
7287         * lib/unictype/ctype_lower.h: Likewise.
7288         * lib/unictype/ctype_print.h: Likewise.
7289         * lib/unictype/ctype_punct.h: Likewise.
7290         * lib/unictype/ctype_space.h: Likewise.
7291         * lib/unictype/ctype_upper.h: Likewise.
7292         * lib/unictype/ctype_xdigit.h: Likewise.
7293         * lib/unictype/decdigit.h: Likewise.
7294         * lib/unictype/digit.h: Likewise.
7295         * lib/unictype/mirror.h: Likewise.
7296         * lib/unictype/numeric.h: Likewise.
7297         * lib/unictype/pr_alphabetic.h: Likewise.
7298         * lib/unictype/pr_ascii_hex_digit.h: Likewise.
7299         * lib/unictype/pr_bidi_arabic_digit.h: Likewise.
7300         * lib/unictype/pr_bidi_arabic_right_to_left.h: Likewise.
7301         * lib/unictype/pr_bidi_block_separator.h: Likewise.
7302         * lib/unictype/pr_bidi_boundary_neutral.h: Likewise.
7303         * lib/unictype/pr_bidi_common_separator.h: Likewise.
7304         * lib/unictype/pr_bidi_control.h: Likewise.
7305         * lib/unictype/pr_bidi_embedding_or_override.h: Likewise.
7306         * lib/unictype/pr_bidi_eur_num_separator.h: Likewise.
7307         * lib/unictype/pr_bidi_eur_num_terminator.h: Likewise.
7308         * lib/unictype/pr_bidi_european_digit.h: Likewise.
7309         * lib/unictype/pr_bidi_hebrew_right_to_left.h: Likewise.
7310         * lib/unictype/pr_bidi_left_to_right.h: Likewise.
7311         * lib/unictype/pr_bidi_non_spacing_mark.h: Likewise.
7312         * lib/unictype/pr_bidi_other_neutral.h: Likewise.
7313         * lib/unictype/pr_bidi_pdf.h: Likewise.
7314         * lib/unictype/pr_bidi_segment_separator.h: Likewise.
7315         * lib/unictype/pr_bidi_whitespace.h: Likewise.
7316         * lib/unictype/pr_combining.h: Likewise.
7317         * lib/unictype/pr_composite.h: Likewise.
7318         * lib/unictype/pr_currency_symbol.h: Likewise.
7319         * lib/unictype/pr_dash.h: Likewise.
7320         * lib/unictype/pr_decimal_digit.h: Likewise.
7321         * lib/unictype/pr_default_ignorable_code_point.h: Likewise.
7322         * lib/unictype/pr_deprecated.h: Likewise.
7323         * lib/unictype/pr_diacritic.h: Likewise.
7324         * lib/unictype/pr_extender.h: Likewise.
7325         * lib/unictype/pr_format_control.h: Likewise.
7326         * lib/unictype/pr_grapheme_base.h: Likewise.
7327         * lib/unictype/pr_grapheme_extend.h: Likewise.
7328         * lib/unictype/pr_grapheme_link.h: Likewise.
7329         * lib/unictype/pr_hex_digit.h: Likewise.
7330         * lib/unictype/pr_hyphen.h: Likewise.
7331         * lib/unictype/pr_id_continue.h: Likewise.
7332         * lib/unictype/pr_id_start.h: Likewise.
7333         * lib/unictype/pr_ideographic.h: Likewise.
7334         * lib/unictype/pr_ids_binary_operator.h: Likewise.
7335         * lib/unictype/pr_ids_trinary_operator.h: Likewise.
7336         * lib/unictype/pr_ignorable_control.h: Likewise.
7337         * lib/unictype/pr_iso_control.h: Likewise.
7338         * lib/unictype/pr_join_control.h: Likewise.
7339         * lib/unictype/pr_left_of_pair.h: Likewise.
7340         * lib/unictype/pr_line_separator.h: Likewise.
7341         * lib/unictype/pr_logical_order_exception.h: Likewise.
7342         * lib/unictype/pr_lowercase.h: Likewise.
7343         * lib/unictype/pr_math.h: Likewise.
7344         * lib/unictype/pr_non_break.h: Likewise.
7345         * lib/unictype/pr_not_a_character.h: Likewise.
7346         * lib/unictype/pr_numeric.h: Likewise.
7347         * lib/unictype/pr_other_alphabetic.h: Likewise.
7348         * lib/unictype/pr_other_default_ignorable_code_point.h: Likewise.
7349         * lib/unictype/pr_other_grapheme_extend.h: Likewise.
7350         * lib/unictype/pr_other_id_continue.h: Likewise.
7351         * lib/unictype/pr_other_id_start.h: Likewise.
7352         * lib/unictype/pr_other_lowercase.h: Likewise.
7353         * lib/unictype/pr_other_math.h: Likewise.
7354         * lib/unictype/pr_other_uppercase.h: Likewise.
7355         * lib/unictype/pr_paired_punctuation.h: Likewise.
7356         * lib/unictype/pr_paragraph_separator.h: Likewise.
7357         * lib/unictype/pr_pattern_syntax.h: Likewise.
7358         * lib/unictype/pr_pattern_white_space.h: Likewise.
7359         * lib/unictype/pr_private_use.h: Likewise.
7360         * lib/unictype/pr_punctuation.h: Likewise.
7361         * lib/unictype/pr_quotation_mark.h: Likewise.
7362         * lib/unictype/pr_radical.h: Likewise.
7363         * lib/unictype/pr_sentence_terminal.h: Likewise.
7364         * lib/unictype/pr_soft_dotted.h: Likewise.
7365         * lib/unictype/pr_space.h: Likewise.
7366         * lib/unictype/pr_terminal_punctuation.h: Likewise.
7367         * lib/unictype/pr_titlecase.h: Likewise.
7368         * lib/unictype/pr_unassigned_code_value.h: Likewise.
7369         * lib/unictype/pr_unified_ideograph.h: Likewise.
7370         * lib/unictype/pr_uppercase.h: Likewise.
7371         * lib/unictype/pr_variation_selector.h: Likewise.
7372         * lib/unictype/pr_white_space.h: Likewise.
7373         * lib/unictype/pr_xid_continue.h: Likewise.
7374         * lib/unictype/pr_xid_start.h: Likewise.
7375         * lib/unictype/pr_zero_width.h: Likewise.
7376         * lib/unictype/scripts.h: Likewise.
7377         * lib/unictype/scripts_byname.gperf: Likewise.
7378         * lib/unictype/sy_c_ident.h: Likewise.
7379         * lib/unictype/sy_c_whitespace.h: Likewise.
7380         * lib/unictype/sy_java_ident.h: Likewise.
7381         * lib/unictype/sy_java_whitespace.h: Likewise.
7382
7383         * lib/unictype/Makefile: New file.
7384         * lib/unictype/gen-ctype.c: New file, based on gen-unicode-ctype.c in
7385         glibc.
7386         * lib/unictype/3level.h: New file, copied from glibc.
7387         * lib/unictype/3levelbit.h: New file.
7388
7389 2007-11-11  Bruno Haible  <bruno@clisp.org>
7390
7391         * modules/gperf: New file.
7392         * modules/iconv_open (Depends-on): Add it.
7393         (Makefile.am): Remove the GPERF definition.
7394
7395 2007-11-11  Bruno Haible  <bruno@clisp.org>
7396
7397         * m4/round.m4 (gl_FUNC_ROUND): Test against NetBSD 3.0 bug.
7398         * doc/functions/round.texi: Mention the NetBSD 3.0 bug.
7399
7400 2007-11-11  Bruno Haible  <bruno@clisp.org>
7401
7402         * tests/test-argmatch.c (ARGMATCH_DIE): Undefine.
7403         (usage): Remove function.
7404
7405 2007-11-11  Bruno Haible  <bruno@clisp.org>
7406
7407         * m4/roundf.m4 (gl_FUNC_ROUNDF): Use gl_FUNC_FLOORF_LIBS and
7408         gl_FUNC_CEILF_LIBS.
7409         * m4/round.m4 (gl_FUNC_ROUND): Use gl_FUNC_FLOOR_LIBS and
7410         gl_FUNC_CEIL_LIBS.
7411         * m4/roundl.m4 (gl_FUNC_ROUNDL): Use gl_FUNC_FLOORL_LIBS and
7412         gl_FUNC_CEILL_LIBS.
7413         * modules/roundf (Files): Add m4/floorf.m4, m4/ceilf.m4.
7414         * modules/round (Files): Add m4/floor.m4, m4/ceil.m4.
7415         * modules/roundl (Files): Add m4/floorl.m4, m4/ceill.m4.
7416
7417 2007-11-11  Bruno Haible  <bruno@clisp.org>
7418
7419         * m4/roundf.m4 (gl_FUNC_ROUNDF): Handle the case that floorf and
7420         roundf were declared but do not exist on functions.
7421         * m4/roundl.m4 (gl_FUNC_ROUNDL): Handle the case that floorl and
7422         roundl were declared but do not exist on functions.
7423         * lib/round.c (HAVE_FLOOR_AND_CEIL): Use HAVE_FLOORF_AND_CEILF and
7424         HAVE_FLOORL_AND_CEILL, respectively.
7425         Needed for Sun C on Solaris 10.
7426
7427 2007-11-11  Bruno Haible  <bruno@clisp.org>
7428
7429         * m4/roundf.m4 (gl_FUNC_ROUNDF): Set REPLACE_ROUNDF instead of
7430         HAVE_DECL_ROUNDF. Remove redundant AC_SUBST.
7431         * m4/round.m4 (gl_FUNC_ROUND): Set REPLACE_ROUND instead of
7432         HAVE_DECL_ROUND. Remove redundant AC_SUBST.
7433         * m4/roundl.m4 (gl_FUNC_ROUNDL): Set REPLACE_ROUNDL instead of
7434         HAVE_DECL_ROUNDL. Remove redundant AC_SUBST.
7435         * lib/math.in.h (roundf): Use REPLACE_ROUNDF instead of
7436         HAVE_DECL_ROUNDF.
7437         (round): Use REPLACE_ROUND instead of HAVE_DECL_ROUND.
7438         (roundl): Use REPLACE_ROUNDL instead of HAVE_DECL_ROUNDL.
7439         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_ROUND* instead
7440         of HAVE_DECL_ROUND*.
7441         * modules/math (Makefile.am): Update.
7442
7443 2007-11-10  Bruno Haible  <bruno@clisp.org>
7444
7445         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Use same check for
7446         ptrdiff_t as m4/intl.m4.
7447
7448 2007-11-10  Jim Meyering  <meyering@redhat.com>
7449
7450         Avoid link failure for the argmatch test.
7451         * tests/test-argmatch.c (usage): Define function to avoid a link
7452         failure: argmatch_die requires a usage function.
7453
7454 2007-11-09  Bruno Haible  <bruno@clisp.org>
7455
7456         * doc/functions/snprintf.texi: Mention BeOS deficiency.
7457         * doc/functions/vsnprintf.texi: Likewise.
7458         * lib/vasnprintf.c (VASNPRINTF): Ensure that we never call snprintf
7459         with a size argument < 2.
7460
7461 2007-11-09  Bruno Haible  <bruno@clisp.org>
7462
7463         * lib/vasnprintf.c (VASNPRINTF): Increase reallocation of snprintf
7464         buffer. Fixes an inefficiency introduced on 2007-11-03.
7465
7466 2007-11-09  Bruno Haible  <bruno@clisp.org>
7467
7468         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8) [BeOS]: Make this test return
7469         none instead of tr_TR. Fixes a failure of test-c-strcasecmp.c.
7470
7471 2007-11-08  Jim Meyering  <meyering@redhat.com>
7472
7473         Change cache variable name prefix "jm_" to "gl_" everywhere.
7474         * m4/d-type.m4, m4/jm-winsz1.m4, m4/jm-winsz2.m4, m4/link-follow.m4:
7475         * m4/putenv.m4, m4/strtoimax.m4, m4/strtoumax.m4, m4/unlink-busy.m4:
7476         * m4/uptime.m4: s/gl_/jm_/
7477
7478 2007-11-07  Bruno Haible  <bruno@clisp.org>
7479
7480         Update to GNU gettext 0.17.
7481         * m4/intl.m4: Update to GNU gettext 0.17.
7482         * m4/po.m4: Likewise.
7483         * modules/gettext (Files): Remove m4/ulonglong.m4.
7484         (configure.ac): Require gettext infrastructure from version 0.17.
7485
7486 2007-11-06  Bruno Haible  <bruno@clisp.org>
7487
7488         * lib/fbufmode.c (fbufmode) [QNX]: Use numerical values for flags; the
7489         symbolic values are not defined in a public header.
7490         * lib/freadable.c (freadable) [QNX]: Likewise.
7491         * lib/freadahead.c (freadahead) [QNX]: Likewise.
7492         * lib/freading.c (freading) [QNX]: Likewise.
7493         * lib/fseterr.c (fseterr) [QNX]: Likewise.
7494         * lib/fwritable.c (fwritable) [QNX]: Likewise.
7495         * lib/fwriting.c (fwriting) [QNX]: Likewise.
7496         * lib/fpurge.c (fpurge) [QNX]: Likewise. Add a return statement.
7497         Reported by Alain Magloire.
7498
7499         * m4/fpending.m4 (gl_FUNC_FPENDING): Add a variant for QNX.
7500
7501 2007-11-05  Bruno Haible  <bruno@clisp.org>
7502
7503         * lib/vasnprintf.c (VASNPRINTF): Expand the NEED_PRINTF_DIRECTIVE_A
7504         code when NEED_PRINTF_LONG_DOUBLE or NEED_PRINTF_DOUBLE is set.
7505         Needed on Cygwin, where !NEED_PRINTF_DIRECTIVE_A && NEED_PRINTF_DOUBLE.
7506         Reported by Eric Blake.
7507
7508 2007-10-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7509             Bruno Haible  <bruno@clisp.org>
7510
7511         * modules/malloc (configure.ac): Define GNULIB_MALLOC_GNU always.
7512         * modules/realloc (configure.ac): Define GNULIB_REALLOC_GNU always.
7513         * lib/realloc.c (SYSTEM_MALLOC_GLIBC_COMPATIBLE): New macro.
7514         (malloc): Undefine also before including <stdlib.h>.
7515         (rpl_realloc): Turn malloc(0) into malloc(1) if necessary.
7516         Needed on OSF/1 4.0.
7517
7518 2007-11-05  Jim Meyering  <meyering@redhat.com>
7519
7520         git-version-gen: sync from coreutils.
7521         * build-aux/git-version-gen: Add comments.
7522         Change the first '-' to '.' in the snapshot version string,
7523         e.g., 6.9-377-08144 -> 6.9.377-08144
7524         Remove first parameter.
7525         Don't declare a version "-dirty" merely because a time
7526         stamp has changed.
7527
7528 2007-11-04  Bruno Haible  <bruno@clisp.org>
7529
7530         * lib/lock.h: Protect all macro definitions containing an 'if'
7531         statement through a "do { ... } while (0)".
7532         * lib/tls.h: Likewise.
7533
7534 2007-11-04  Bruno Haible  <bruno@clisp.org>
7535
7536         * lib/vasnprintf.c (DCHAR_IS_TCHAR, DCHAR_CPY): Undefine at the end.
7537
7538 2007-11-04  Bruno Haible  <bruno@clisp.org>
7539
7540         * m4/printf.m4 (gl_PRINTF_ENOMEM): Use GL_NOCRASH.
7541         * modules/fprintf-posix (Depends-on): Add nocrash.
7542         * modules/snprintf-posix (Depends-on): Likewise.
7543         * modules/sprintf-posix (Depends-on): Likewise.
7544         * modules/vasnprintf-posix (Depends-on): Likewise.
7545         * modules/vasprintf-posix (Depends-on): Likewise.
7546         * modules/vfprintf-posix (Depends-on): Likewise.
7547         * modules/vsnprintf-posix (Depends-on): Likewise.
7548         * modules/vsprintf-posix (Depends-on): Likewise.
7549         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
7550         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
7551         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
7552         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
7553         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
7554         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
7555         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
7556
7557 2007-11-04  Bruno Haible  <bruno@clisp.org>
7558
7559         * modules/nocrash: New file.
7560         * m4/nocrash.m4: New file, taken from GNU clisp. Code taken from
7561         GNU libsigsegv, with permission of GNU libsigsegv's copyright holders.
7562
7563 2007-11-04  Bruno Haible  <bruno@clisp.org>
7564
7565         * tests/test-vasnprintf-posix.c (test_function): Add some tests of
7566         precision handling.
7567         * tests/test-vasprintf-posix.c (test_function): Likewise.
7568         * tests/test-snprintf-posix.h (test_function): Likewise.
7569         * tests/test-sprintf-posix.h (test_function): Likewise.
7570
7571         Fix *printf behaviour for large precisions on mingw and BeOS.
7572         * m4/printf.m4 (gl_PRINTF_PRECISION): New macro.
7573         * lib/vasnprintf.c (VASNPRINTF): Handle NEED_PRINTF_UNBOUNDED_PRECISION.
7574         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_PRECISION): New macro.
7575         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
7576         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
7577         gl_PRINTF_PRECISION and test its result. Invoke
7578         gl_PREREQ_VASNPRINTF_PRECISION.
7579         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
7580         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
7581         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
7582         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
7583         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
7584         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
7585         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
7586         * doc/functions/fprintf.texi: Update.
7587         * doc/functions/printf.texi: Update.
7588         * doc/functions/snprintf.texi: Update.
7589         * doc/functions/sprintf.texi: Update.
7590         * doc/functions/vfprintf.texi: Update.
7591         * doc/functions/vprintf.texi: Update.
7592         * doc/functions/vsnprintf.texi: Update.
7593         * doc/functions/vsprintf.texi: Update.
7594
7595 2007-11-04  Bruno Haible  <bruno@clisp.org>
7596
7597         * lib/vasnprintf.c (scale10_round_decimal_decoded): Fix shift loop.
7598
7599 2007-11-04  Bruno Haible  <bruno@clisp.org>
7600
7601         * modules/relocatable-prog (Files): Add m4/lib-ld.m4.
7602         Reported by Sylvain Beucler <beuc@gnu.org>.
7603
7604 2007-11-03  Bruno Haible  <bruno@clisp.org>
7605
7606         * tests/test-fprintf-posix2.sh: New file.
7607         * tests/test-fprintf-posix2.c: New file.
7608         * modules/fprintf-posix-tests (Files): Add them.
7609         (TESTS): Add test-fprintf-posix2.sh.
7610         (configure.ac): Check for getrlimit and setrlimit.
7611         (check_PROGRAMS): Add test-fprintf-posix2.
7612
7613         * tests/test-printf-posix2.sh: New file.
7614         * tests/test-printf-posix2.c: New file.
7615         * modules/printf-posix-tests (Files): Add them.
7616         (TESTS): Add test-printf-posix2.sh.
7617         (configure.ac): Check for getrlimit and setrlimit.
7618         (check_PROGRAMS): Add test-printf-posix2.
7619
7620         Fix *printf behaviour in out-of-memory situations on MacOS X and *BSD.
7621         * m4/printf.m4 (gl_PRINTF_ENOMEM): New macro.
7622         * lib/vasnprintf.c: Implement NEED_PRINTF_DOUBLE.
7623         (decode_double): New function, copied from decode_long_double.
7624         (scale10_round_decimal_decoded): New function, extracted from
7625         scale10_round_decimal_long_double.
7626         (scale10_round_decimal_long_double): Use it.
7627         (scale10_round_decimal_double): New function.
7628         (floorlog10): New function.
7629         (VASNPRINTF): Handle NEED_PRINTF_DOUBLE case.
7630         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_ENOMEM): New macro.
7631         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
7632         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
7633         gl_PRINTF_ENOMEM and test its result. Invoke
7634         gl_PREREQ_VASNPRINTF_ENOMEM.
7635         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
7636         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
7637         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
7638         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
7639         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
7640         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
7641         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
7642         * modules/fprintf-posix (Depends-on): Add frexp-nolibm.
7643         * modules/snprintf-posix (Depends-on): Likewise.
7644         * modules/sprintf-posix (Depends-on): Likewise.
7645         * modules/vasnprintf-posix (Depends-on): Likewise.
7646         * modules/vasprintf-posix (Depends-on): Likewise.
7647         * modules/vfprintf-posix (Depends-on): Likewise.
7648         * modules/vsnprintf-posix (Depends-on): Likewise.
7649         * modules/vsprintf-posix (Depends-on): Likewise.
7650         * doc/functions/fprintf.texi: Update.
7651         * doc/functions/printf.texi: Update.
7652         * doc/functions/snprintf.texi: Update.
7653         * doc/functions/sprintf.texi: Update.
7654         * doc/functions/vfprintf.texi: Update.
7655         * doc/functions/vprintf.texi: Update.
7656         * doc/functions/vsnprintf.texi: Update.
7657         * doc/functions/vsprintf.texi: Update.
7658
7659 2007-11-03  Bruno Haible  <bruno@clisp.org>
7660
7661         * modules/frexp-nolibm-tests: New file.
7662
7663         * modules/frexp-nolibm: New file.
7664         * m4/frexp.m4 (gl_FUNC_FREXP_NO_LIBM): New macro.
7665
7666 2007-11-03  Bruno Haible  <bruno@clisp.org>
7667
7668         * lib/vasnprintf.c (VASNPRINTF): Don't assume that snprintf's return
7669         value is C99 compliant.
7670         Needed for OSF/1 5.1.
7671
7672 2007-11-03  Bruno Haible  <bruno@clisp.org>
7673
7674         Fix out-of-memory handling of vasnprintf.
7675         * lib/printf-parse.c: Include <errno.h>.
7676         (PRINTF_PARSE): When failing, set errno to EINVAL or ENOMEM.
7677         * lib/vasnprintf.c (VASNPRINTF): When PRINTF_PARSE fails, assume errno
7678         is already set.
7679
7680 2007-11-02  Eric Blake  <ebb9@byu.net>
7681
7682         Fix tests on cygwin.
7683         * modules/xprintf-posix-tests (Makefile.am): Link against -lintl.
7684
7685 2007-11-01  Bruno Haible  <bruno@clisp.org>
7686
7687         * lib/stdlib.in.h (putenv): Remove the "not POSIX compliant everywhere"
7688         warning.
7689         * doc/functions/putenv.texi: Clarify that the 'putenv' module is not
7690         needed for POSIX compatibility.
7691
7692 2007-11-01  Paul Eggert  <eggert@cs.ucla.edu>
7693
7694         * m4/putenv.m4 (gl_FUNC_PUTENV): Also mention that we're checking
7695         for compatibility with GNU.
7696
7697 2007-11-01  Bruno Haible  <bruno@clisp.org>
7698
7699         * lib/putenv.c: Include <stdlib.h>. Remove rpl_putenv declaration.
7700         (putenv): Renamed from rpl_putenv. Change argument type from
7701         'const char *' to 'char *'.
7702         * m4/putenv.m4 (gl_FUNC_PUTENV): Require gl_STDLIB_H_DEFAULTS. Instead
7703         of defining putenv in config.h, just set REPLACE_PUTENV.
7704         * modules/putenv (Depends-on): Add stdlib.
7705         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
7706         (Include): Use <stdlib.h>.
7707         * lib/stdlib.in.h (putenv): New declaration.
7708         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_PUTENV and
7709         REPLACE_PUTENV.
7710         * modules/stdlib (Makefile.am): Substitute GNULIB_PUTENV and
7711         REPLACE_PUTENV.
7712         Needed for MacOS X 10.5.0.
7713         Reported by Peter O'Gorman <peter@pogma.com>.
7714
7715 2007-11-01  Jim Meyering  <meyering@redhat.com>
7716
7717         Treat an empty date string exactly like "0".
7718         * lib/getdate.y (get_date): Once any isspace or TZ= prefix is consumed,
7719         if the remaining date string (to be parsed) is empty, use "0".
7720         Reported by Mischa Molhoek and discussed in this thread:
7721         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/11726>.
7722
7723 2007-10-31  Bruno Haible  <bruno@clisp.org>
7724
7725         * m4/intmax_t.m4 (gl_AC_TYPE_INTMAX_T, gt_AC_TYPE_INTMAX_T): Use
7726         AC_TYPE_LONG_LONG_INT instead of gl_AC_TYPE_LONG_LONG.
7727         * m4/uintmax_t.m4 (gl_AC_TYPE_UINTMAX_T): Use
7728         AC_TYPE_UNSIGNED_LONG_LONG_INT instead of gl_AC_TYPE_UNSIGNED_LONG_LONG.
7729         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Remove macro.
7730         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG): Remove macro.
7731
7732 2007-10-31  Bruno Haible  <bruno@clisp.org>
7733
7734         * m4/longlong.m4 (_AC_TYPE_LONG_LONG_SNIPPET): New macro, extracted
7735         from AC_TYPE_LONG_LONG_INT and AC_TYPE_UNSIGNED_LONG_LONG_INT.
7736         (AC_TYPE_LONG_LONG_INT): Use it.
7737         (AC_TYPE_UNSIGNED_LONG_LONG_INT): Moved here from m4/ulonglong.m4. Use
7738         it as well.
7739         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Remove macro; moved
7740         to m4/longlong.m4.
7741         * modules/stdint (Files): Remove m4/ulonglong.m4.
7742         * modules/strtoull (Files): Use m4/longlong.m4 instead of
7743         m4/ulonglong.m4.
7744         * modules/strtoumax (Files): Likewise.
7745
7746 2007-10-30  Bruno Haible  <bruno@clisp.org>
7747
7748         * modules/xvasprintf-posix: New file.
7749         Suggested by Eric Blake.
7750
7751 2007-10-30  Bruno Haible  <bruno@clisp.org>
7752
7753         * modules/xprintf-posix-tests: New file.
7754         * tests/test-xprintf-posix.sh: New file.
7755         * tests/test-xprintf-posix.c: New file.
7756         * tests/test-xfprintf-posix.c: New file.
7757
7758         * modules/xprintf-posix: New file.
7759
7760 2007-10-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7761
7762         * modules/fbufmode-tests (MOSTLYCLEANFILES): Remove temp files.
7763         * modules/freadable-tests (MOSTLYCLEANFILES): Likewise.
7764         * modules/fwritable-tests (MOSTLYCLEANFILES): Likewise.
7765
7766 2007-10-29  Bruno Haible  <bruno@clisp.org>
7767
7768         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): Rename the cache variable to
7769         contain the special marker '_cv_'.
7770         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): Likewise.
7771         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): Likewise.
7772         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): Likewise.
7773         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): Likewise.
7774         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): Likewise.
7775         Reported by Ralf Wildenhues.
7776
7777 2007-10-29  Bruno Haible  <bruno@clisp.org>
7778
7779         * gnulib-tool (func_import): When --lgpl is not specified, set
7780         sed_transform_lib_file to convert LGPL and GPLv2+ copyright headers to
7781         GPLv3.
7782         Reported by Simon Josefsson.
7783
7784 2007-10-28  Bruno Haible  <bruno@clisp.org>
7785
7786         * lib/math.in.h: Test REPLACE_ISFINITE instead of HAVE_DECL_ISFINITE.
7787         * m4/isfinite.m4 (gl_ISFINITE): Initialize REPLACE_ISFINITE instead of
7788         HAVE_DECL_ISFINITE.
7789         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Update.
7790         * modules/math (Makefile.am): Substitute REPLACE_ISFINITE instead of
7791         HAVE_DECL_ISFINITE.
7792
7793 2007-10-28  Bruno Haible  <bruno@clisp.org>
7794
7795         * lib/stdint.in.h (_STDINT_MAX): Subtract 1 from an unused signed
7796         integer shift in the signed case. Fixes warnings with OSF/1 5.1 cc.
7797
7798 2007-10-28  Bruno Haible  <bruno@clisp.org>
7799
7800         Fix link errors with Sun C 5.0 on Solaris 10.
7801         * m4/floorf.m4 (gl_FUNC_FLOORF): Consider also the case that the
7802         function is declared but not present in the compiler's libm.
7803         * m4/floorl.m4 (gl_FUNC_FLOORL): Likewise.
7804         * m4/ceilf.m4 (gl_FUNC_CEILF): Likewise.
7805         * m4/ceill.m4 (gl_FUNC_CEILL: Likewise.
7806         * lib/math.in.h: Test REPLACE_CEILF instead of HAVE_DECL_CEILF.
7807         Test REPLACE_CEILL instead of HAVE_DECL_CEILL.
7808         Test REPLACE_FLOORF instead of HAVE_DECL_FLOORF.
7809         Test REPLACE_FLOORL instead of HAVE_DECL_FLOORL.
7810         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Update.
7811         * modules/math (Makefile.am): Substitute REPLACE_CEILF instead of
7812         HAVE_DECL_CEILF, REPLACE_CEILL instead of HAVE_DECL_CEILL,
7813         REPLACE_FLOORF instead of HAVE_DECL_FLOORF, REPLACE_FLOORL instead of
7814         HAVE_DECL_FLOORL.
7815
7816 2007-10-28  Bruno Haible  <bruno@clisp.org>
7817
7818         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): New macro, extracted from
7819         gl_FUNC_FLOORL. Cache the result.
7820         (gl_FUNC_FLOORL): Use it.
7821         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): New macro, extracted from
7822         gl_FUNC_CEILL. Cache the result.
7823         (gl_FUNC_CEILL): Use it.
7824
7825         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): New macro, extracted from
7826         gl_FUNC_FLOOR. Cache the result.
7827         (gl_FUNC_FLOOR): Use it.
7828         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): New macro, extracted from
7829         gl_FUNC_CEIL. Cache the result.
7830         (gl_FUNC_CEIL): Use it.
7831
7832         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): New macro, extracted from
7833         gl_FUNC_FLOORF. Cache the result.
7834         (gl_FUNC_FLOORF): Use it.
7835         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): New macro, extracted from
7836         gl_FUNC_CEILF. Cache the result.
7837         (gl_FUNC_CEILF): Use it.
7838
7839 2007-10-28  Bruno Haible  <bruno@clisp.org>
7840
7841         * gnulib-tool: Allow specifying the LGPL version number through
7842         --lgpl=2 or --lgpl=3.
7843         (func_usage): Document --lgpl with argument.
7844         Handle --lgpl=... arguments.
7845         (func_import): Recognize also gl_LGPL calls with an argument. When
7846         --lgpl=2 is used and the module's license is just LGPL, report an
7847         error. Set sed_transform_lib_file according to the lgpl variable. In
7848         the generated files, use --lgpl or gl_LGPL invocations with argument,
7849         if necessary.
7850         * doc/gnulib-intro.texi (Copyright): Explain how to get modules under
7851         an LGPv2+ license.
7852         * doc/gnulib-tool.texi (Modified imports): Update explanation of
7853         gl_LGPL macro.
7854
7855 2007-10-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7856             Bruno Haible  <bruno@clisp.org>
7857
7858         * lib/unistr.h (u8_uctomb_aux): Declare also if !HAVE_INLINE.
7859         (u16_uctomb_aux): Likewise.
7860         * lib/unistr/u8-uctomb-aux.c (u8_uctomb_aux): Define also if
7861         !HAVE_INLINE.
7862         * lib/unistr/u16-uctomb-aux.c (u16_uctomb_aux): Likewise
7863
7864 2007-10-28  Bruno Haible  <bruno@clisp.org>
7865
7866         * modules/error: Add a notice recommending to change XGETTEXT_OPTIONS.
7867         Invoke AM_GETTEXT_OPTION if it exists.
7868         * modules/vasprintf: Likewise.
7869         * modules/verror: Likewise.
7870         * modules/xprintf: Likewise.
7871         * modules/xvasprintf: Likewise.
7872
7873 2007-10-27  Ben Pfaff  <blp@gnu.org>
7874
7875         * lib/math.in.h: Define isfinite macro and prototypes for
7876         gl_isfinitef, gl_isfinited, gl_isfinitel if we are providing
7877         implementations.
7878         * m4/math_h.m4: New substitutions for isfinite module.
7879         * lib/isfinite.c: New file.
7880         * m4/isfinite.m4: New file.
7881         * modules/math: Replace isfinite-related @VARS@ in math.in.h.
7882         * modules/isfinite: New file.
7883         * modules/isfinite-tests: New file.
7884         * tests/tests-isfinite.c: New file.
7885         * doc/functions/isfinite.texi: Mention isfinite module.
7886         * MODULES.html.sh: Mention new module.
7887
7888 2007-10-27  Ben Pfaff  <blp@gnu.org>
7889
7890         Ralf Wildenhues reported that Tru64 4.0D declares the round
7891         functions but does not have definitions.
7892         * m4/check-math-lib.m4 (gl_CHECK_MATH_LIB): If the target function
7893         cannot be found in any library, set the output variable to
7894         "missing" instead of "".
7895         * m4/round.m4: Also use our substitute if we cannot find round in
7896         any library, even if it is declared.
7897         * m4/roundf.m4: Likewise for roundf.
7898         * m4/roundl.m4: Likewise for roundl.
7899         * lib/math.in.h: Undefine roundf, round, roundl before defining
7900         their replacements, to allow for hypothetical systems where these
7901         may be defined as macros but not available in libraries.
7902
7903 2007-10-27  Bruno Haible  <bruno@clisp.org>
7904
7905         * doc/gnulib.texi: Invoke @firstparagraphindent.
7906         * doc/gnulib-tool.texi (Simple update): Mention possible incompatible
7907         changes in gnulib.
7908         (Source changes): New section.
7909
7910 2007-10-26  Bruno Haible  <bruno@clisp.org>
7911
7912         * m4/gnulib-common.m4 (AC_C_RESTRICT): New overriding definition,
7913         borrowed from autoconf.
7914
7915 2007-10-26  Bruno Haible  <bruno@clisp.org>
7916
7917         * lib/strerror.c (rpl_strerror): Return "Unknown error ..." also if
7918         strerror returned the empty string. Needed on HP-UX 11.00.
7919
7920 2007-10-24  Micah Cowan  <micah@cowan.name>
7921
7922         Remove vestiges of cvs-gnulib-checkout process.  Now we use git.
7923         * build-aux/bootstrap: Remove support for now-unnecessary option,
7924         --cvs-user, and envvars CVS_USER, CVS_RSH.
7925
7926 2007-10-24  Jim Meyering  <meyering@redhat.com>
7927
7928         Avoid diagnostics from sha1sum when there is no cached checksum.
7929         * build-aux/bootstrap (update_po_files): Skip the sha1sum check
7930         if the po.s1 file hasn't been created yet.
7931
7932         * build-aux/bootstrap: Sync from coreutils:
7933         2007-10-24  Jim Meyering  <meyering@redhat.com>
7934         Get gnulib from the git repository, not from an obsolete cvs one.
7935         * build-aux/bootstrap: Suggestion from Micah Cowan.
7936         2007-10-04  Jim Meyering  <jim@meyering.net>
7937         * build-aux/bootstrap (slurp): Adapt to _.h -> .in.h name change.
7938         (update_po_files): Work also when there are no .po files in po/.
7939
7940 2007-10-24  Paul Eggert  <eggert@cs.ucla.edu>
7941
7942         * README: Append ".git" to git and cg examples.
7943         Problem reported by Benoit Sigoure.
7944
7945 2007-10-23  Micah Cowan  <micah@cowan.name>
7946
7947         * users.txt: Add wget.
7948
7949 2007-10-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7950
7951         Fix linking of some unistdio tests on FreeBSD.
7952         * modules/unistdio/u16-vsnprintf-tests
7953         (test_u16_vsprintf1_LDADD): Add @LIBINTL@.
7954         * modules/unistdio/u16-vsprintf-tests
7955         (test_u16_vsnprintf1_LDADD): Likewise.
7956         * modules/unistdio/u32-vsnprintf-tests
7957         (test_u32_vsnprintf1_LDADD): Likewise.
7958         * modules/unistdio/u32-vsprintf-tests
7959         (test_u32_vsprintf1_LDADD): Likewise.
7960         * modules/unistdio/u8-vsnprintf-tests
7961         (test_u8_vsnprintf1_LDADD): Likewise.
7962         * modules/unistdio/u8-vsprintf-tests
7963         (test_u8_vsprintf1_LDADD): Likewise.
7964         * modules/unistdio/ulc-vsnprintf-tests
7965         (test_ulc_vsnprintf1_LDADD): Likewise.
7966         * modules/unistdio/ulc-vsprintf-tests
7967         (test_ulc_vsprintf1_LDADD): Likewise.
7968
7969         Fix linking of some uniconv tests on FreeBSD.
7970         * modules/uniconv/u16-conv-from-enc-tests
7971         (test_u16_conv_from_enc_LDADD): Link $(LDADD) before @LIBICONV@.
7972         * modules/uniconv/u16-conv-to-enc-tests
7973         (test_u16_conv_to_enc_LDADD): Likewise.
7974         * modules/uniconv/u16-strconv-from-enc-tests
7975         (test_u16_strconv_from_enc_LDADD): Likewise.
7976         * modules/uniconv/u16-strconv-to-enc-tests
7977         (test_u16_strconv_to_enc_LDADD): Likewise.
7978         * modules/uniconv/u32-conv-from-enc-tests
7979         (test_u32_conv_from_enc_LDADD): Likewise.
7980         * modules/uniconv/u32-conv-to-enc-tests
7981         (test_u32_conv_to_enc_LDADD): Likewise.
7982         * modules/uniconv/u32-strconv-from-enc-tests
7983         (test_u32_strconv_from_enc_LDADD): Likewise.
7984         * modules/uniconv/u32-strconv-to-enc-tests
7985         (test_u32_strconv_to_enc_LDADD): Likewise.
7986         * modules/uniconv/u8-conv-from-enc-tests
7987         (test_u8_conv_from_enc_LDADD): Likewise.
7988         * modules/uniconv/u8-conv-to-enc-tests
7989         (test_u8_conv_to_enc_LDADD): Likewise.
7990         * modules/uniconv/u8-strconv-from-enc-tests
7991         (test_u8_strconv_from_enc_LDADD): Likewise.
7992         * modules/uniconv/u8-strconv-to-enc-tests
7993         (test_u8_strconv_to_enc_LDADD): Likewise.
7994
7995 2007-10-22  Bruno Haible  <bruno@clisp.org>
7996
7997         * lib/stdint.in.h: Add check that intmax_t and uintmax_t have the same
7998         size.
7999
8000 2007-10-22  Eric Blake  <ebb9@byu.net>
8001
8002         Tweak x*printf documentation.
8003         * lib/xprintf.c (xprintf, xvprintf, xfprintf, xvfprintf): Adjust
8004         variable name and comments.
8005         Suggested by Bruno Haible.
8006
8007 2007-10-22  Bruno Haible  <bruno@clisp.org>
8008
8009         * lib/acl.c (copy_acl): Fix file name in comment.
8010
8011 2007-10-22  Paul Eggert  <eggert@cs.ucla.edu>
8012
8013         Fix Tru64 problem with stdbool.h.
8014         * lib/stdbool.in.h (false, true):
8015         [! (defined __cplusplus || defined __BEOS__) && !defined __GNUC__]:
8016         Don't declare as an enum in this situation; it runs afoul of Tru64.
8017         Problem reported by Steven M. Schweda in
8018         <http://lists.gnu.org/archive/html/bug-autoconf/2007-10/msg00019.html>.
8019
8020 2007-10-22  Eric Blake  <ebb9@byu.net>
8021
8022         Also wrap vf?printf.
8023         * lib/xprintf.h (xvprintf, xvfprintf): New declarations.
8024         * lib/xprintf.c (xprintf, xfprintf): Work for C89.
8025         (xvprintf, xvfprintf): New functions.
8026
8027 2007-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8028
8029         * modules/fstrcmp-tests (test_fstrcmp_LDADD): New, add
8030         @LIBINTL@ for FreeBSD 6.2, $(LIBTHREAD) for AIX 4.3.3.
8031
8032         * lib/uniconv/u16-conv-to-enc.c (U_MBLEN): Define.
8033         * lib/uniconv/u32-conv-to-enc.c (U_MBLEN): Likewise.
8034
8035 2007-10-22  Paul Eggert  <eggert@cs.ucla.edu>
8036
8037         * lib/acl.c (copy_acl): Adjust to IRIX 6.5.  Problem reported
8038         by Bruno Haible.
8039
8040 2007-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8041
8042         * lib/getloadavg.c
8043         [defined (__osf__) && (defined (__alpha) || defined (__alpha__)]:
8044         Undef `sys' after including sys/table.h, for Tru64 4.0D.
8045
8046         * tests/test-i-ring.c: Work for C89.
8047
8048 2007-10-22  Bruno Haible  <bruno@clisp.org>
8049
8050         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Use -1ull, not
8051         -1u, in preprocessor expression, so that we don't test for the bug
8052         in HP-UX 11.00 cpp.  Testing for this bug caused problems; see
8053         <http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00329.html>.
8054
8055 2007-10-22  Eric Blake  <ebb9@byu.net>
8056
8057         * tests/test-yesno.sh: Silence stderr during test.
8058
8059 2007-10-22  Simon Josefsson  <simon@josefsson.org>
8060
8061         * modules/crypto/gc-camellia: New file.
8062
8063         * m4/gc-camellia.m4: New file.
8064
8065         * lib/gc-libgcrypt.c (gc_cipher_open): Support Camellia.
8066
8067         * lib/gc.h (enum Gc_cipher): Add GC_CAMELLIA128, GC_CAMELLIA256.
8068
8069 2007-10-22  Simon Josefsson  <simon@josefsson.org>
8070
8071         * build-aux/maint.mk (gzip_rsyncable): Don't fail if gzip sends
8072         --help to stdout.  Reported by sms@antinode.org (Steven
8073         M. Schweda).
8074
8075 2007-10-22  Simon Josefsson  <simon@josefsson.org>
8076
8077         * users.txt: Fix link to libksba.
8078
8079 2007-10-21  Ben Pfaff  <blp@gnu.org>
8080
8081         * modules/roundf-tests: Add dependency on floorf, ceilf to allow
8082         round.c roundf implementation that depends on floorf and ceilf to
8083         be tested unconditionally.
8084
8085 2007-10-21  Ben Pfaff  <blp@gnu.org>
8086
8087         * m4/check-libm-func.m4: Removed.
8088         * m4/check-math-lib.m4: New file.
8089         * m4/round.m4: Rewrite to use gl_CHECK_MATH_LIB.
8090         * m4/roundf.m4: Ditto, and fix lack of HAVE_DECL_ROUNDF
8091         definition and lack of AC_LIBOBJ([roundf]).
8092         * m4/roundl.m4: Ditto, and similarly for roundl.
8093         * modules/round: Reference new m4 file.
8094         * modules/roundf: Ditto.
8095         * modules/roundl: Ditto.
8096         * tests/test-round2.c (main): Use ROUND instead of round.
8097         Bug report from Bruno Haible.
8098
8099 2007-10-21  Bruno Haible  <bruno@clisp.org>
8100
8101         * lib/printf-parse.c: Don't assume <stdint.h> exists in IN_LIBASPRINTF
8102         context.
8103
8104 2007-10-21  Bruno Haible  <bruno@clisp.org>
8105
8106         * tests/test-wcwidth.c (main): Allow negative result for some control
8107         characters.
8108
8109         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Check also the width of U+200B.
8110         Needed on OSF/1 5.1.
8111
8112 2007-10-21  Bruno Haible  <bruno@clisp.org>
8113
8114         * tests/test-floorf1.c: Include isnanf.h.
8115         (main): Use isnanf() instead of isnan().
8116         * tests/test-ceilf1.c: Include isnanf.h.
8117         (main): Use isnanf() instead of isnan().
8118         * tests/test-truncf1.c: Include isnanf.h.
8119         (main): Use isnanf() instead of isnan().
8120         * tests/test-roundf1.c: Include isnanf.h.
8121         (main): Use isnanf() instead of isnan().
8122
8123 2007-10-21  Eric Blake  <ebb9@byu.net>
8124
8125         * users.txt: Update URL for m4.
8126
8127 2007-10-21  Bruno Haible  <bruno@clisp.org>
8128
8129         * users.txt: Add clisp. Update URLs to Simon Josefsson's projects.
8130
8131 2007-10-21  Bruno Haible  <bruno@clisp.org>
8132
8133         * gnulib-tool (func_create_megatestdir): Determine the cvsdate from
8134         Git's management files if the CVS files are not present.
8135
8136 2007-10-20  Bruno Haible  <bruno@clisp.org>
8137
8138         * lib/count-one-bits.h (COUNT_ONE_BITS): Use the builtin also for
8139         gcc-3.4.x.
8140
8141 2007-10-20  Ben Pfaff  <blp@gnu.org>
8142
8143         * lib/math.in.h: Declare round, roundf, roundl if we are providing
8144         implementations.
8145         * m4/math_h.m4: New substitutions for round, roundf, roundl modules.
8146         * lib/round.c: New file.
8147         * lib/roundf.c: New file.
8148         * lib/roundl.c: New file.
8149         * m4/round.m4: New file.
8150         * m4/roundf.m4: New file.
8151         * m4/roundl.m4: New file.
8152         * m4/check-libm-func-m4: New file.
8153         * modules/math: Replace round, roundf, roundl related @VARS@ in
8154         math.in.h.
8155         * modules/round: New file.
8156         * modules/round-tests: New file.
8157         * modules/roundf: New file.
8158         * modules/roundf-tests: New file.
8159         * modules/roundl: New file.
8160         * modules/roundl-tests: New file.
8161         * tests/test-round1.c: New file.
8162         * tests/test-round2.c: New file.
8163         * tests/test-roundf1.c: New file.
8164         * tests/test-roundf2.c: New file.
8165         * tests/test-roundl.c: New file.
8166         * doc/functions/round.texi: Mention round module.
8167         * doc/functions/roundf.texi: Mention roundf module.
8168         * doc/functions/roundl.texi: Mention roundl module.
8169         * MODULES.html.sh: Mention new modules.
8170         Thanks to Bruno Haible for suggestions.
8171
8172 2007-10-20  Jim Meyering  <meyering@redhat.com>
8173
8174         * lib/xprintf.c: Include <config.h> unconditionally.
8175
8176         Change xprintf's license to GPL.
8177         * modules/xprintf (License): s/LGPL/GPL/, since this module
8178         depends on modules (exit and exitfail) which are GPL.
8179         Suggestion from Bruno Haible.
8180
8181         xprintf fixes.
8182         * lib/xprintf.c (xprintf, xfprintf): Use va_end.
8183         Use a clearer diagnostic.
8184         Patch from Bruno Haible.
8185
8186 2007-10-20  Bruno Haible  <bruno@clisp.org>
8187
8188         * lib/vasnprintf.c (VASNPRINTF): Don't report overflow if the available
8189         length is INT_MAX and sizeof (DCHAR_T) > sizeof (TCHAR_T).
8190         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
8191
8192 2007-10-20  Bruno Haible  <bruno@clisp.org>
8193
8194         * tests/test-floorf2.c (correct_result_p): Don't rely on excess
8195         precision in the comparison result > x - 1 or similar.
8196         * tests/test-ceilf2.c (correct_result_p): Likewise.
8197         * tests/test-truncf2.c (correct_result_p): Likewise.
8198         * tests/test-trunc2.c (correct_result_p): Likewise.
8199         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
8200
8201 2007-10-20  Bruno Haible  <bruno@clisp.org>
8202
8203         * modules/ceil: New file.
8204         * m4/ceil.m4: New file.
8205         * doc/functions/ceil.texi: Mention the 'ceil' module.
8206
8207 2007-10-20  Bruno Haible  <bruno@clisp.org>
8208
8209         * modules/floor: New file.
8210         * m4/floor.m4: New file.
8211         * doc/functions/floor.texi: Mention the 'floor' module.
8212
8213 2007-10-20  Bruno Haible  <bruno@clisp.org>
8214
8215         * modules/ceilf-tests (Depends-on): Add fprintf-posix. Needed for use
8216         of %a.
8217         * modules/floorf-tests (Depends-on): Likewise.
8218         * modules/truncf-tests (Depends-on): Likewise.
8219         * modules/trunc-tests (Depends-on): Likewise.
8220         Reported by Ben Pfaff.
8221
8222 2007-10-19  Jim Meyering  <meyering@redhat.com>
8223
8224         * lib/xprintf.c (xprintf, xfprintf): Test err < 0, not just "err".
8225         Don't bother testing specific errno values.  Just test ferror.
8226
8227         New module: xprintf
8228         * modules/xprintf, lib/xprintf.c, lib/xprintf.h: New files.
8229
8230 2007-10-19  Bruno Haible  <bruno@clisp.org>
8231
8232         * modules/csharpexec (Makefile.am): Use @FOO@ syntax instead of $(FOO)
8233         syntax.
8234         * modules/javaexec (Makefile.am): Likewise.
8235         * modules/relocatable-prog (Makefile.am): Likewise.
8236         Suggested by Jim Meyering.
8237
8238 2007-10-18  Bruno Haible  <bruno@clisp.org>
8239
8240         * lib/vasnprintf.c (VASNPRINTF): Don't use %n on glibc >= 2.3 systems.
8241         Reported by Jim Meyering.
8242
8243 2007-10-18  Eric Blake  <ebb9@byu.net>
8244
8245         * modules/filenamecat-tests (Makefile.am): Link against -lintl.
8246
8247 2007-10-18  Bruno Haible  <bruno@clisp.org>
8248
8249         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_N, gl_SNPRINTF_DIRECTIVE_N): Put
8250         the format string into writable memory. Needed in Fortify conditions.
8251
8252 2007-10-18  Colin Watson <cjwatson@debian.org>  (tiny change)
8253             Bruno Haible  <bruno@clisp.org>
8254
8255         * lib/trim.c: Include config.h unconditionally. Include trim.h always.
8256         Include ctype.h always. Include stdlib.h, not mbuiter.h, for MB_CUR_MAX.
8257         * modules/trim (Depends-on): Add mbchar.
8258         (configure.ac): Add gl_FUNC_MBRTOWC.
8259         (Makefile.am): Augment lib_SOURCES.
8260
8261 2007-10-17  Paul Eggert  <eggert@cs.ucla.edu>
8262
8263         Modify glob.c to use fstatat and dirfd, to simplify it.
8264         Suggested by Eric Blake.
8265         * lib/glob.c (__fxstatat64) [!_LIBC]: New macro.
8266         Don't include <stdbool.h>; not used.
8267         (link_exists2_p, glob_in_dir) [!_LIBC]: No longer a special case.
8268         (link_exists_p): Simplify implementation, since we can now assume
8269         dirfd and fstatat.
8270         * modules/glob (Depends-on): Add dirfd, openat.  Remove stdbool.
8271
8272 2007-10-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8273
8274         * gnulib-tool (func_get_dependencies): Fix sed script to
8275         match only tests.
8276
8277 2007-10-17  Bruno Haible  <bruno@clisp.org>
8278
8279         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): On Cygwin, don't
8280         allow locale names without encoding suffix.
8281         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Likewise.
8282         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
8283
8284 2007-10-16  Bruno Haible  <bruno@clisp.org>
8285
8286         * lib/getcwd.c (__getcwd): Define with explicit rpl_ prefix.
8287         * lib/getgroups.c (getgroups): Likewise.
8288         * lib/gettimeofday.c (localtime, gmtime, tzset): Likewise.
8289
8290 2007-10-16  Bruno Haible  <bruno@clisp.org>
8291
8292         * modules/absolute-header (License): Change from LGPL to LGPLv2+.
8293         * modules/malloc-posix (License): Likewise.
8294         * modules/realloc-posix (License): Likewise.
8295         * modules/calloc-posix (License): Likewise.
8296         * modules/intprops (License): Change from GPL to LGPL, with
8297         Paul Eggert's approval.
8298
8299 2007-10-16  Paul Eggert  <eggert@cs.ucla.edu>
8300
8301         Merge glibc changes into lib/glob.c.
8302
8303         * lib/glob.c (glob_in_dir): Sync with glibc/posix/glob.c, dated
8304         2007-10-15 04:59:03 UTC.  Here are the changes:
8305
8306         2007-10-14  Ulrich Drepper  <drepper@redhat.com>
8307
8308         * lib/glob.c: Reimplement link_exists_p to use fstatat64.
8309
8310         * lib/glob.c: Add some branch prediction throughout.
8311
8312         2007-10-07  Ulrich Drepper  <drepper@redhat.com>
8313
8314         [BZ #5103]
8315         * lib/glob.c (glob): Recognize patterns starting \/.
8316
8317         2007-02-14  Jakub Jelinek  <jakub@redhat.com>
8318
8319         [BZ #3996]
8320         * lib/glob.c (attribute_hidden): Define if not defined.
8321         (glob): Unescape dirname, filename or username when needed and not
8322         GLOB_NOESCAPE.  Handle \/ correctly.  Handle GLOB_MARK if filename
8323         is NULL.  Handle unescaped [ in pattern without closing ].
8324         Don't pass GLOB_CHECK down to recursive glob for directories.
8325         (__glob_pattern_type): New function.
8326         (__glob_pattern_p): Implement using __glob_pattern_type.
8327         (glob_in_dir): Handle GLOB_NOCHECK patterns containing no meta
8328         characters and backslashes if not GLOB_NOESCAPE or unterminated [.
8329         Remove unreachable code.
8330
8331         2006-09-30  Ulrich Drepper  <drepper@redhat.com>
8332
8333         * lib/glob.c (glob_in_dir): Add some comments and asserts to
8334         explain why there are no leaks.
8335
8336         2006-09-25  Jakub Jelinek  <jakub@redhat.com>
8337
8338         [BZ #3253]
8339         * lib/glob.c (glob_in_dir): Don't alloca one struct globlink at a
8340         time, rather allocate increasingly bigger arrays of pointers, if
8341         possible with alloca, if too large with malloc.
8342
8343 2007-10-16  Paul Eggert  <eggert@cs.ucla.edu>
8344
8345         Check for 64-bit int errors in HP-UX 10.20 preprocessor.
8346         Problem reported by H.Merijn Brand in
8347         <http://lists.gnu.org/archive/html/bug-tar/2007-10/msg00018.html>.
8348         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Check preprocessor too.
8349         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
8350
8351 2007-10-15  Bruno Haible  <bruno@clisp.org>
8352
8353         * lib/fchdir.c (close, open, closedir, opendir, dup, dup2): Define
8354         with explicit rpl_ prefix.
8355         * lib/fopen.c (fopen): Likewise.
8356         * lib/freopen.c (freopen): Likewise.
8357         * lib/iconv.c (iconv): Likewise.
8358         * lib/iconv_close.c (iconv_close): Likewise.
8359
8360 2007-10-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8361
8362         * m4/iconv_open (gl_FUNC_ICONV_OPEN_UTF): Fix cache variable name.
8363
8364 2007-10-15  Bruno Haible  <bruno@clisp.org>
8365
8366         * m4/getaddrinfo.m4 (gl_GETADDRINFO, gl_PREREQ_GETADDRINFO): Use
8367         <stddef.h> instead of <stdlib.h> since we only need NULL.
8368         Reported by Ben Pfaff <blp@cs.stanford.edu>.
8369
8370 2007-10-15  Bruno Haible  <bruno@clisp.org>
8371
8372         * doc/gnulib-tool.texi (Initial import): Swap order of -I directives.
8373         Replace paragraph talking about LIBOBJS.
8374         Reported by Colin Watson <cjwatson@debian.org>.
8375
8376 2007-10-15  Bruno Haible  <bruno@clisp.org>
8377
8378         * m4/getaddrinfo.m4 (gl_GETADDRINFO, gl_PREREQ_GETADDRINFO): Include
8379         <stdlib.h> before using NULL.
8380
8381 2007-10-15  Simon Josefsson  <simon@josefsson.org>
8382
8383         * m4/getaddrinfo.m4: Use NULL rather than 0 for pointers.
8384         Reported by Albert Chin <china@thewrittenword.com>.
8385
8386 2007-10-14  Bruno Haible  <bruno@clisp.org>
8387
8388         * modules/iconv_open-utf-tests: New file.
8389         * tests/test-iconv-utf.c: New file.
8390
8391         Enhance iconv_open to support UTF-16BE, UTF-16LE, UTF-32BE, UTF-32LE.
8392         * modules/iconv_open-utf: New file.
8393         * lib/iconv.in.h (_ICONV_UTF8_UTF*, _ICONV_UTF*_UTF8): New macros.
8394         (iconv, iconv_close): New declarations.
8395         * lib/iconv_open.c: Include c-strcase.h. Don't require ICONV_FLAVOR to
8396         be defined.
8397         (iconv_open): Add special handling of conversion between UTF-8 and
8398         UTF-{16,32}{BE,LE}.
8399         * lib/iconv.c: New file, incorporating code from GNU libiconv 1.11.
8400         * lib/iconv_close.c: New file.
8401         * m4/iconv_open.m4 (gl_REPLACE_ICONV_OPEN): New macro, extracted from
8402         gl_FUNC_ICONV_OPEN.
8403         (gl_FUNC_ICONV_OPEN): Use it.
8404         (gl_FUNC_ICONV_OPEN_UTF): New macro.
8405         * m4/iconv_h.m4 (gl_ICONV_H_DEFAULTS): Initialize also REPLACE_ICONV
8406         and REPLACE_ICONV_UTF.
8407         * modules/iconv_open (Depends-on): Add c-strcase.
8408         (Makefile.am): Substitute also REPLACE_ICONV, REPLACE_ICONV_UTF,
8409         ICONV_CONST.
8410         * doc/functions/iconv_open.texi: Mention the iconv_open-utf module.
8411
8412 2007-10-13  Albert Chin  <china@thewrittenword.com>
8413             Bruno Haible  <bruno@clisp.org>
8414
8415         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Perform the test for getaddrinfo
8416         through a link check that includes <netdb.h>. Needed for OSF/1 5.1.
8417
8418 2007-10-13  Bruno Haible  <bruno@clisp.org>
8419
8420         * lib/argp-fmtstream.h (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is
8421         defined, use the ISO C99 inline semantics.
8422         * lib/argp.h (ARGP_EI): Likewise.
8423
8424 2007-10-13  Bruno Haible  <bruno@clisp.org>
8425
8426         Handle 'inline' change in gcc 4.3.0.
8427         * lib/argp-fmtstream.h (argp_fmtstream_putc, argp_fmtstream_puts,
8428         argp_fmtstream_write, argp_fmtstream_set_lmargin,
8429         argp_fmtstream_set_rmargin, argp_fmtstream_set_wmargin,
8430         argp_fmtstream_point): Disable 'extern' declaration if the function
8431         definition is going to be provided inline.
8432         (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is defined, use the GNU C inline
8433         semantics, not the ISO C99 inline semantics.
8434         * lib/argp.h (argp_usage, _option_is_short, _option_is_end): Disable
8435         'extern' declaration if the function definition is going to be provided
8436         inline.
8437         (ARGP_EI): Don't assume GNU C. If __GNUC_STDC_INLINE__ is defined, use
8438         the GNU C inline semantics, not the ISO C99 inline semantics. With
8439         GCC 4.2, avoid a warning.
8440
8441 2007-10-13  Bruno Haible  <bruno@clisp.org>
8442
8443         * lib/freading.h (freading): Enable the use of __freading for
8444         glibc >= 2.7.
8445         * lib/freading.c (freading): Likewise.
8446
8447 2007-10-12  Paul Eggert  <eggert@cs.ucla.edu>
8448
8449         * lib/argp-fmtstream.h (ARGP_FS_EI): Work around GCC 4.2.1 diagnostic
8450         "warning: C99 inline functions are not supported; using GNU89".
8451
8452 2007-10-12  Bruno Haible  <bruno@clisp.org>
8453
8454         * lib/ceil.c (FUNC): Avoid rounding errors for values near a power
8455         of 2.
8456         * tests/test-ceilf2.c: New file.
8457         * modules/ceilf-tests: (Files, Depends-on, Makefile.am): Add new test.
8458
8459         * tests/test-ceilf1.c: Renamed from tests/test-ceilf.c.
8460         * modules/ceilf-tests: Update.
8461
8462 2007-10-12  Bruno Haible  <bruno@clisp.org>
8463
8464         * lib/floor.c (FUNC): Avoid rounding errors for values near a power
8465         of 2.
8466         * tests/test-floorf2.c: New file.
8467         * modules/floorf-tests: (Files, Depends-on, Makefile.am): Add new test.
8468
8469         * tests/test-floorf1.c: Renamed from tests/test-floorf.c.
8470         * modules/floorf-tests: Update.
8471
8472 2007-10-12  Bruno Haible  <bruno@clisp.org>
8473
8474         * tests/test-trunc2.c: New file.
8475         * modules/trunc-tests: (Files, Depends-on, Makefile.am): Add new test.
8476
8477         * tests/test-trunc1.c: Renamed from tests/test-trunc.c.
8478         * modules/trunc-tests: Update.
8479
8480 2007-10-12  Bruno Haible  <bruno@clisp.org>
8481
8482         * lib/trunc.c (FUNC): Avoid rounding errors for values near a power
8483         of 2.
8484         * tests/test-truncf2.c: New file.
8485         * modules/truncf-tests: (Files, Depends-on, Makefile.am): Add new test.
8486
8487         * tests/test-truncf1.c: Renamed from tests/test-truncf.c.
8488         * modules/truncf-tests: Update.
8489
8490 2007-10-11  Eric Blake  <ebb9@byu.net>
8491
8492         Don't claim strerror is broken on Interix.
8493         * doc/functions/strerror.texi (strerror): Known broken systems are
8494         now Solaris 8, and not Interix.
8495         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): No longer filter out
8496         Interix on cross-compile.
8497         Reported by Martin Koeppe in
8498         http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00005.html.
8499
8500 2007-10-11  Bruno Haible  <bruno@clisp.org>
8501
8502         * modules/i-ring-tests: New file.
8503         * tests/test-i-ring.c: Renamed from lib/i-ring-test.c. Use ASSERT
8504         instead of assert.
8505
8506 2007-10-11  Bruno Haible  <bruno@clisp.org>
8507
8508         * modules/filenamecat-tests: New file.
8509         * tests/test-filenamecat.c: New file, extracted from lib/filenamecat.c.
8510         * lib/filenamecat.c: Remove test code.
8511
8512 2007-10-11  Paul Eggert  <eggert@cs.ucla.edu>
8513
8514         Simplify and modernize strerror substitute, partly to fix Solaris 8 bug.
8515
8516         * lib/strerror.c: Include <string.h> always, to test interface,
8517         and to remove the need for the dummy.
8518         Include intprops.h to compute width instead of doing it ourselves
8519         and missing a CHAR_BIT declaration, which broke tar 1.19 on Solaris 8.
8520         (strerror): Define it to return NULL if there's no system strerror.
8521         (rpl_strerror): Use INT_STRLEN_BOUND to compute bound.
8522         Omit !HAVE_STRERROR code.  We don't need to worry about supporting
8523         ancient pre-strerror Unix systems well any more.  Saying "unknown
8524         system error" is enough.
8525         * lib/string.in.h (strerror): Simplify the ifdef to reflect the
8526         simpler strerror.c implementation.
8527         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE, gl_PREREQ_STDERROR):
8528         Simplify the tests to reflect the simpler strerror implementation.
8529         * modules/strerror (Depends-on): Add intprops.
8530
8531 2007-10-09  Eric Blake  <ebb9@byu.net>
8532
8533         Silence test-fpending.
8534         * modules/fpending-tests (Files): Add wrapper script.
8535         * tests/test-fpending.sh: New file.
8536
8537 2007-10-09  Bruno Haible  <bruno@clisp.org>
8538
8539         * MODULES.html.sh (func_module): Don't create a hyperlink for
8540         function names like 'printf_frexp'.
8541         (Misc): Add crc, memxor.
8542         (Characteristics of floating types): New section.
8543         (Mathematics): Add ceilf, ceill, floorf, floorl, frexpl-nolibm,
8544         isnanf-nolibm, signbit, trunc, truncf, truncl.
8545         (Enhancements for ISO C 99 functions): New subsection Input/output.
8546         (Support for systems lacking POSIX:2001): Add arpa_inet, calloc-posix,
8547         fcntl, fopen, freopen, fseek, fseeko, ftell, ftello, iconv_open,
8548         locale, malloc-posix, netinet_in, open, realloc-posix, signal, sleep.
8549         (Compatibility checks for POSIX:2001 functions): Add clock-time.
8550         (Enhancements for POSIX:2001 functions): Add chdir-long.
8551         (File system functions): Add areadlink, chdir-safer, read-file.
8552         Remove cycle-check.
8553         (File system as inode set): New section.
8554         (Date and time): Add gethrxtime.
8555         (Multithreading): Add openmp.
8556         (Internationalization functions): Add localename.
8557         (Unicode string functions): Add unistr/u*-mbsnlen.
8558         (Support for maintaining and releasing projects): Add git-version-gen.
8559         (Lone files): Remove directories.
8560
8561 2007-10-08  Ben Pfaff  <blp@gnu.org>
8562
8563         * lib/xmalloca.h: Fix typo in comment.
8564
8565 2007-10-08  Paul Eggert  <eggert@cs.ucla.edu>
8566
8567         * lib/xnanosleep.c (xnanosleep): Don't assume GCC 4.3.0 behavior
8568         when avoiding problems with integer overflow.  Use a portable test
8569         instead.
8570
8571 2007-10-08  Simon Josefsson  <simon@josefsson.org>
8572
8573         * modules/dummy (License): Change to LGPLv2+.
8574         * modules/float (License): Likewise
8575         * modules/realloc (License): Likewise
8576         * modules/stdlib (License): Likewise
8577
8578 2007-10-07  Bruno Haible  <bruno@clisp.org>
8579
8580         * trunc.c (TWO_MANT_DIG): Change type to DOUBLE.
8581         * floor.c (TWO_MANT_DIG): Likewise.
8582         * ceil.c (TWO_MANT_DIG): Likewise.
8583         Reported by Ben Pfaff.
8584
8585 2007-10-07  Bruno Haible  <bruno@clisp.org>
8586
8587         Avoid gcc warnings "declaration of 'exp' shadows a global declaration".
8588         * lib/math.in.h (frexp, frexpl): Change parameter name to 'expptr'.
8589         * lib/frexp.c (FUNC): Likewise.
8590         * lib/printf-frexp.h (printf_frexp): Likewise.
8591         * lib/printf-frexpl.h (printf_frexpl): Likewise.
8592         * lib/printf-frexp.c (FUNC): Likewise.
8593         Suggested by Jim Meyering.
8594
8595 2007-10-07  Jim Meyering  <meyering@redhat.com>
8596
8597         Make xnanosleep's integer overflow test more robust.
8598         * lib/xnanosleep.c (xnanosleep): Declare a temporary to be "volatile",
8599         so that gcc-4.3.0 doesn't optimize away this test for overflow.
8600
8601 2007-10-07  Bruno Haible  <bruno@clisp.org>
8602
8603         * NEWS: Mention the license change.
8604
8605         * doc/gnulib-intro.texi (Copyright): Update the meaning of the license
8606         abbreviations in the modules files.
8607
8608         Change copyright notice from GPLv2+ to GPLv3+.
8609         * README: Change copyright notice.
8610         * MODULES.html.sh: Likewise.
8611         * build-aux/bootstrap.conf: Likewise.
8612         * build-aux/config.libpath: Likewise.
8613         * build-aux/csharpcomp.sh.in: Likewise.
8614         * build-aux/csharpexec.sh.in: Likewise.
8615         * build-aux/install-reloc: Likewise.
8616         * build-aux/javacomp.sh.in: Likewise.
8617         * build-aux/javaexec.sh.in: Likewise.
8618         * build-aux/ldd.sh.in: Likewise.
8619         * build-aux/reloc-ldflags: Likewise.
8620         * build-aux/relocatable.sh.in: Likewise.
8621         * build-aux/x-to-1.in: Likewise.
8622         * check-module: Likewise.
8623         * config/srclistvars.sh: Likewise.
8624         * gnulib-tool: Likewise.
8625         * lib/acl-internal.h: Likewise.
8626         * lib/acl.c: Likewise.
8627         * lib/acl.h: Likewise.
8628         * lib/acl_entries.c: Likewise.
8629         * lib/areadlink-with-size.c: Likewise.
8630         * lib/areadlink.c: Likewise.
8631         * lib/areadlink.h: Likewise.
8632         * lib/argmatch.c: Likewise.
8633         * lib/argmatch.h: Likewise.
8634         * lib/argp-ba.c: Likewise.
8635         * lib/argp-eexst.c: Likewise.
8636         * lib/argp-fmtstream.c: Likewise.
8637         * lib/argp-fmtstream.h: Likewise.
8638         * lib/argp-fs-xinl.c: Likewise.
8639         * lib/argp-help.c: Likewise.
8640         * lib/argp-namefrob.h: Likewise.
8641         * lib/argp-parse.c: Likewise.
8642         * lib/argp-pin.c: Likewise.
8643         * lib/argp-pv.c: Likewise.
8644         * lib/argp-pvh.c: Likewise.
8645         * lib/argp-xinl.c: Likewise.
8646         * lib/argp.h: Likewise.
8647         * lib/at-func.c: Likewise.
8648         * lib/atanl.c: Likewise.
8649         * lib/backupfile.c: Likewise.
8650         * lib/backupfile.h: Likewise.
8651         * lib/basename.c: Likewise.
8652         * lib/binary-io.h: Likewise.
8653         * lib/byteswap.in.h: Likewise.
8654         * lib/c-stack.c: Likewise.
8655         * lib/c-stack.h: Likewise.
8656         * lib/c-strcasestr.c: Likewise.
8657         * lib/c-strcasestr.h: Likewise.
8658         * lib/c-strstr.c: Likewise.
8659         * lib/c-strstr.h: Likewise.
8660         * lib/c-strtod.c: Likewise.
8661         * lib/calloc.c: Likewise.
8662         * lib/canon-host.c: Likewise.
8663         * lib/canon-host.h: Likewise.
8664         * lib/canonicalize-lgpl.c: Likewise.
8665         * lib/canonicalize.c: Likewise.
8666         * lib/canonicalize.h: Likewise.
8667         * lib/ceil.c: Likewise.
8668         * lib/ceilf.c: Likewise.
8669         * lib/ceill.c: Likewise.
8670         * lib/chdir-long.c: Likewise.
8671         * lib/chdir-long.h: Likewise.
8672         * lib/chdir-safer.c: Likewise.
8673         * lib/chdir-safer.h: Likewise.
8674         * lib/chown.c: Likewise.
8675         * lib/classpath.c: Likewise.
8676         * lib/classpath.h: Likewise.
8677         * lib/clean-temp.c: Likewise.
8678         * lib/clean-temp.h: Likewise.
8679         * lib/cloexec.c: Likewise.
8680         * lib/close-stream.c: Likewise.
8681         * lib/closein.c: Likewise.
8682         * lib/closein.h: Likewise.
8683         * lib/closeout.c: Likewise.
8684         * lib/closeout.h: Likewise.
8685         * lib/concat-filename.c: Likewise.
8686         * lib/copy-file.c: Likewise.
8687         * lib/copy-file.h: Likewise.
8688         * lib/count-one-bits.h: Likewise.
8689         * lib/crc.c: Likewise.
8690         * lib/crc.h: Likewise.
8691         * lib/creat-safer.c: Likewise.
8692         * lib/csharpcomp.c: Likewise.
8693         * lib/csharpcomp.h: Likewise.
8694         * lib/csharpexec.c: Likewise.
8695         * lib/csharpexec.h: Likewise.
8696         * lib/cycle-check.c: Likewise.
8697         * lib/cycle-check.h: Likewise.
8698         * lib/diacrit.c: Likewise.
8699         * lib/diacrit.h: Likewise.
8700         * lib/diffseq.h: Likewise.
8701         * lib/dirchownmod.c: Likewise.
8702         * lib/dirent.in.h: Likewise.
8703         * lib/dirfd.c: Likewise.
8704         * lib/dirfd.h: Likewise.
8705         * lib/dirname.c: Likewise.
8706         * lib/dirname.h: Likewise.
8707         * lib/dummy.c: Likewise.
8708         * lib/dup-safer.c: Likewise.
8709         * lib/dup2.c: Likewise.
8710         * lib/eealloc.h: Likewise.
8711         * lib/error.c: Likewise.
8712         * lib/error.h: Likewise.
8713         * lib/euidaccess.c: Likewise.
8714         * lib/exclude.c: Likewise.
8715         * lib/exclude.h: Likewise.
8716         * lib/execute.c: Likewise.
8717         * lib/execute.h: Likewise.
8718         * lib/exitfail.c: Likewise.
8719         * lib/exitfail.h: Likewise.
8720         * lib/expl.c: Likewise.
8721         * lib/fatal-signal.c: Likewise.
8722         * lib/fatal-signal.h: Likewise.
8723         * lib/fbufmode.c: Likewise.
8724         * lib/fbufmode.h: Likewise.
8725         * lib/fchdir.c: Likewise.
8726         * lib/fchmodat.c: Likewise.
8727         * lib/fchownat.c: Likewise.
8728         * lib/fcntl--.h: Likewise.
8729         * lib/fcntl-safer.h: Likewise.
8730         * lib/fcntl.in.h: Likewise.
8731         * lib/fd-safer.c: Likewise.
8732         * lib/fflush.c: Likewise.
8733         * lib/file-has-acl.c: Likewise.
8734         * lib/file-set.c: Likewise.
8735         * lib/file-type.c: Likewise.
8736         * lib/file-type.h: Likewise.
8737         * lib/fileblocks.c: Likewise.
8738         * lib/filemode.c: Likewise.
8739         * lib/filemode.h: Likewise.
8740         * lib/filename.h: Likewise.
8741         * lib/filenamecat.c: Likewise.
8742         * lib/filenamecat.h: Likewise.
8743         * lib/findprog.c: Likewise.
8744         * lib/findprog.h: Likewise.
8745         * lib/float.in.h: Likewise.
8746         * lib/floor.c: Likewise.
8747         * lib/floorf.c: Likewise.
8748         * lib/floorl.c: Likewise.
8749         * lib/fopen-safer.c: Likewise.
8750         * lib/fopen.c: Likewise.
8751         * lib/fpending.c: Likewise.
8752         * lib/fpending.h: Likewise.
8753         * lib/fprintf.c: Likewise.
8754         * lib/fprintftime.h: Likewise.
8755         * lib/fpucw.h: Likewise.
8756         * lib/fpurge.c: Likewise.
8757         * lib/fpurge.h: Likewise.
8758         * lib/freadable.c: Likewise.
8759         * lib/freadable.h: Likewise.
8760         * lib/freadahead.c: Likewise.
8761         * lib/freadahead.h: Likewise.
8762         * lib/freading.c: Likewise.
8763         * lib/freading.h: Likewise.
8764         * lib/free.c: Likewise.
8765         * lib/freopen.c: Likewise.
8766         * lib/frexp.c: Likewise.
8767         * lib/frexpl.c: Likewise.
8768         * lib/fseek.c: Likewise.
8769         * lib/fseterr.c: Likewise.
8770         * lib/fseterr.h: Likewise.
8771         * lib/fstatat.c: Likewise.
8772         * lib/fstrcmp.c: Likewise.
8773         * lib/fstrcmp.h: Likewise.
8774         * lib/fsusage.c: Likewise.
8775         * lib/fsusage.h: Likewise.
8776         * lib/ftell.c: Likewise.
8777         * lib/ftello.c: Likewise.
8778         * lib/fts-cycle.c: Likewise.
8779         * lib/fts.c: Likewise.
8780         * lib/fts_.h: Likewise.
8781         * lib/full-read.c: Likewise.
8782         * lib/full-read.h: Likewise.
8783         * lib/full-write.c: Likewise.
8784         * lib/full-write.h: Likewise.
8785         * lib/fwritable.c: Likewise.
8786         * lib/fwritable.h: Likewise.
8787         * lib/fwriteerror.c: Likewise.
8788         * lib/fwriteerror.h: Likewise.
8789         * lib/fwriting.c: Likewise.
8790         * lib/fwriting.h: Likewise.
8791         * lib/gcd.c: Likewise.
8792         * lib/gcd.h: Likewise.
8793         * lib/getcwd.c: Likewise.
8794         * lib/getdate.h: Likewise.
8795         * lib/getdate.y: Likewise.
8796         * lib/getdomainname.c: Likewise.
8797         * lib/getdomainname.h: Likewise.
8798         * lib/getgroups.c: Likewise.
8799         * lib/gethostname.c: Likewise.
8800         * lib/gethrxtime.c: Likewise.
8801         * lib/gethrxtime.h: Likewise.
8802         * lib/getloadavg.c: Likewise.
8803         * lib/getndelim2.c: Likewise.
8804         * lib/getndelim2.h: Likewise.
8805         * lib/getnline.c: Likewise.
8806         * lib/getnline.h: Likewise.
8807         * lib/getopt.c: Likewise.
8808         * lib/getopt.in.h: Likewise.
8809         * lib/getopt1.c: Likewise.
8810         * lib/getopt_int.h: Likewise.
8811         * lib/getpagesize.h: Likewise.
8812         * lib/getsubopt.c: Likewise.
8813         * lib/gettime.c: Likewise.
8814         * lib/getugroups.c: Likewise.
8815         * lib/getugroups.h: Likewise.
8816         * lib/getusershell.c: Likewise.
8817         * lib/gl_anyavltree_list1.h: Likewise.
8818         * lib/gl_anyavltree_list2.h: Likewise.
8819         * lib/gl_anyhash_list1.h: Likewise.
8820         * lib/gl_anyhash_list2.h: Likewise.
8821         * lib/gl_anylinked_list1.h: Likewise.
8822         * lib/gl_anylinked_list2.h: Likewise.
8823         * lib/gl_anyrbtree_list1.h: Likewise.
8824         * lib/gl_anyrbtree_list2.h: Likewise.
8825         * lib/gl_anytree_list1.h: Likewise.
8826         * lib/gl_anytree_list2.h: Likewise.
8827         * lib/gl_anytree_oset.h: Likewise.
8828         * lib/gl_anytreehash_list1.h: Likewise.
8829         * lib/gl_anytreehash_list2.h: Likewise.
8830         * lib/gl_array_list.c: Likewise.
8831         * lib/gl_array_list.h: Likewise.
8832         * lib/gl_array_oset.c: Likewise.
8833         * lib/gl_array_oset.h: Likewise.
8834         * lib/gl_avltree_list.c: Likewise.
8835         * lib/gl_avltree_list.h: Likewise.
8836         * lib/gl_avltree_oset.c: Likewise.
8837         * lib/gl_avltree_oset.h: Likewise.
8838         * lib/gl_avltreehash_list.c: Likewise.
8839         * lib/gl_avltreehash_list.h: Likewise.
8840         * lib/gl_carray_list.c: Likewise.
8841         * lib/gl_carray_list.h: Likewise.
8842         * lib/gl_linked_list.c: Likewise.
8843         * lib/gl_linked_list.h: Likewise.
8844         * lib/gl_linkedhash_list.c: Likewise.
8845         * lib/gl_linkedhash_list.h: Likewise.
8846         * lib/gl_list.c: Likewise.
8847         * lib/gl_list.h: Likewise.
8848         * lib/gl_oset.c: Likewise.
8849         * lib/gl_oset.h: Likewise.
8850         * lib/gl_rbtree_list.c: Likewise.
8851         * lib/gl_rbtree_list.h: Likewise.
8852         * lib/gl_rbtree_oset.c: Likewise.
8853         * lib/gl_rbtree_oset.h: Likewise.
8854         * lib/gl_rbtreehash_list.c: Likewise.
8855         * lib/gl_rbtreehash_list.h: Likewise.
8856         * lib/gl_sublist.c: Likewise.
8857         * lib/gl_sublist.h: Likewise.
8858         * lib/group-member.c: Likewise.
8859         * lib/group-member.h: Likewise.
8860         * lib/hard-locale.c: Likewise.
8861         * lib/hard-locale.h: Likewise.
8862         * lib/hash-pjw.c: Likewise.
8863         * lib/hash-pjw.h: Likewise.
8864         * lib/hash-triple.c: Likewise.
8865         * lib/hash.c: Likewise.
8866         * lib/hash.h: Likewise.
8867         * lib/human.c: Likewise.
8868         * lib/human.h: Likewise.
8869         * lib/i-ring.c: Likewise.
8870         * lib/i-ring.h: Likewise.
8871         * lib/idcache.c: Likewise.
8872         * lib/imaxabs.c: Likewise.
8873         * lib/imaxdiv.c: Likewise.
8874         * lib/inet_pton.c: Likewise.
8875         * lib/inet_pton.h: Likewise.
8876         * lib/intprops.h: Likewise.
8877         * lib/inttostr.c: Likewise.
8878         * lib/inttostr.h: Likewise.
8879         * lib/inttypes.in.h: Likewise.
8880         * lib/isapipe.c: Likewise.
8881         * lib/isdir.c: Likewise.
8882         * lib/isnan.c: Likewise.
8883         * lib/isnan.h: Likewise.
8884         * lib/isnanf.c: Likewise.
8885         * lib/isnanf.h: Likewise.
8886         * lib/isnanl-nolibm.h: Likewise.
8887         * lib/isnanl.c: Likewise.
8888         * lib/isnanl.h: Likewise.
8889         * lib/javacomp.c: Likewise.
8890         * lib/javacomp.h: Likewise.
8891         * lib/javaexec.c: Likewise.
8892         * lib/javaexec.h: Likewise.
8893         * lib/javaversion.c: Likewise.
8894         * lib/javaversion.h: Likewise.
8895         * lib/javaversion.java: Likewise.
8896         * lib/lbrkprop.h: Likewise.
8897         * lib/lchmod.h: Likewise.
8898         * lib/lchown.c: Likewise.
8899         * lib/ldexpl.c: Likewise.
8900         * lib/linebreak.c: Likewise.
8901         * lib/linebreak.h: Likewise.
8902         * lib/linebuffer.c: Likewise.
8903         * lib/linebuffer.h: Likewise.
8904         * lib/locale.in.h: Likewise.
8905         * lib/logl.c: Likewise.
8906         * lib/long-options.c: Likewise.
8907         * lib/long-options.h: Likewise.
8908         * lib/lstat.c: Likewise.
8909         * lib/lstat.h: Likewise.
8910         * lib/math.in.h: Likewise.
8911         * lib/mbchar.c: Likewise.
8912         * lib/mbchar.h: Likewise.
8913         * lib/mbfile.h: Likewise.
8914         * lib/mbiter.h: Likewise.
8915         * lib/mbscasecmp.c: Likewise.
8916         * lib/mbscasestr.c: Likewise.
8917         * lib/mbschr.c: Likewise.
8918         * lib/mbscspn.c: Likewise.
8919         * lib/mbslen.c: Likewise.
8920         * lib/mbsncasecmp.c: Likewise.
8921         * lib/mbsnlen.c: Likewise.
8922         * lib/mbspbrk.c: Likewise.
8923         * lib/mbspcasecmp.c: Likewise.
8924         * lib/mbsrchr.c: Likewise.
8925         * lib/mbssep.c: Likewise.
8926         * lib/mbsspn.c: Likewise.
8927         * lib/mbsstr.c: Likewise.
8928         * lib/mbstok_r.c: Likewise.
8929         * lib/mbswidth.c: Likewise.
8930         * lib/mbswidth.h: Likewise.
8931         * lib/mbuiter.h: Likewise.
8932         * lib/memcasecmp.c: Likewise.
8933         * lib/memcasecmp.h: Likewise.
8934         * lib/memchr.c: Likewise.
8935         * lib/memcmp.c: Likewise.
8936         * lib/memcoll.c: Likewise.
8937         * lib/memcoll.h: Likewise.
8938         * lib/memcpy.c: Likewise.
8939         * lib/memrchr.c: Likewise.
8940         * lib/mkancesdirs.c: Likewise.
8941         * lib/mkdir-p.c: Likewise.
8942         * lib/mkdir-p.h: Likewise.
8943         * lib/mkdir.c: Likewise.
8944         * lib/mkdirat.c: Likewise.
8945         * lib/mkdtemp.c: Likewise.
8946         * lib/mkstemp-safer.c: Likewise.
8947         * lib/mkstemp.c: Likewise.
8948         * lib/modechange.c: Likewise.
8949         * lib/modechange.h: Likewise.
8950         * lib/mountlist.c: Likewise.
8951         * lib/mountlist.h: Likewise.
8952         * lib/mpsort.c: Likewise.
8953         * lib/nanosleep.c: Likewise.
8954         * lib/obstack.c: Likewise.
8955         * lib/obstack.h: Likewise.
8956         * lib/open-safer.c: Likewise.
8957         * lib/open.c: Likewise.
8958         * lib/openat-die.c: Likewise.
8959         * lib/openat-priv.h: Likewise.
8960         * lib/openat-proc.c: Likewise.
8961         * lib/openat.c: Likewise.
8962         * lib/openat.h: Likewise.
8963         * lib/pagealign_alloc.c: Likewise.
8964         * lib/pagealign_alloc.h: Likewise.
8965         * lib/physmem.c: Likewise.
8966         * lib/physmem.h: Likewise.
8967         * lib/pipe-safer.c: Likewise.
8968         * lib/pipe.c: Likewise.
8969         * lib/pipe.h: Likewise.
8970         * lib/posixtm.c: Likewise.
8971         * lib/posixtm.h: Likewise.
8972         * lib/posixver.c: Likewise.
8973         * lib/printf-frexp.c: Likewise.
8974         * lib/printf-frexp.h: Likewise.
8975         * lib/printf-frexpl.c: Likewise.
8976         * lib/printf-frexpl.h: Likewise.
8977         * lib/printf.c: Likewise.
8978         * lib/progname.c: Likewise.
8979         * lib/progname.h: Likewise.
8980         * lib/progreloc.c: Likewise.
8981         * lib/putenv.c: Likewise.
8982         * lib/quote.c: Likewise.
8983         * lib/quote.h: Likewise.
8984         * lib/quotearg.c: Likewise.
8985         * lib/quotearg.h: Likewise.
8986         * lib/raise.c: Likewise.
8987         * lib/readline.c: Likewise.
8988         * lib/readline.h: Likewise.
8989         * lib/readlink.c: Likewise.
8990         * lib/readtokens.c: Likewise.
8991         * lib/readtokens.h: Likewise.
8992         * lib/readtokens0.c: Likewise.
8993         * lib/readtokens0.h: Likewise.
8994         * lib/readutmp.c: Likewise.
8995         * lib/readutmp.h: Likewise.
8996         * lib/realloc.c: Likewise.
8997         * lib/relocwrapper.c: Likewise.
8998         * lib/rename-dest-slash.c: Likewise.
8999         * lib/rename.c: Likewise.
9000         * lib/rmdir.c: Likewise.
9001         * lib/rpmatch.c: Likewise.
9002         * lib/safe-read.c: Likewise.
9003         * lib/safe-read.h: Likewise.
9004         * lib/safe-write.c: Likewise.
9005         * lib/safe-write.h: Likewise.
9006         * lib/same-inode.h: Likewise.
9007         * lib/same.c: Likewise.
9008         * lib/same.h: Likewise.
9009         * lib/save-cwd.c: Likewise.
9010         * lib/save-cwd.h: Likewise.
9011         * lib/savedir.c: Likewise.
9012         * lib/savedir.h: Likewise.
9013         * lib/savewd.c: Likewise.
9014         * lib/savewd.h: Likewise.
9015         * lib/search.in.h: Likewise.
9016         * lib/setenv.c: Likewise.
9017         * lib/setenv.h: Likewise.
9018         * lib/settime.c: Likewise.
9019         * lib/sh-quote.c: Likewise.
9020         * lib/sh-quote.h: Likewise.
9021         * lib/sig2str.c: Likewise.
9022         * lib/sig2str.h: Likewise.
9023         * lib/signal.in.h: Likewise.
9024         * lib/signbitd.c: Likewise.
9025         * lib/signbitf.c: Likewise.
9026         * lib/signbitl.c: Likewise.
9027         * lib/sigprocmask.c: Likewise.
9028         * lib/sincosl.c: Likewise.
9029         * lib/sleep.c: Likewise.
9030         * lib/sprintf.c: Likewise.
9031         * lib/sqrtl.c: Likewise.
9032         * lib/stat-time.h: Likewise.
9033         * lib/stdio--.h: Likewise.
9034         * lib/stdio-safer.h: Likewise.
9035         * lib/stdlib--.h: Likewise.
9036         * lib/stdlib-safer.h: Likewise.
9037         * lib/stdlib.in.h: Likewise.
9038         * lib/stpcpy.c: Likewise.
9039         * lib/stpncpy.c: Likewise.
9040         * lib/strchrnul.c: Likewise.
9041         * lib/strcspn.c: Likewise.
9042         * lib/strerror.c: Likewise.
9043         * lib/strftime.c: Likewise.
9044         * lib/strftime.h: Likewise.
9045         * lib/striconveh.c: Likewise.
9046         * lib/striconveh.h: Likewise.
9047         * lib/striconveha.c: Likewise.
9048         * lib/striconveha.h: Likewise.
9049         * lib/stripslash.c: Likewise.
9050         * lib/strnlen1.c: Likewise.
9051         * lib/strnlen1.h: Likewise.
9052         * lib/strtod.c: Likewise.
9053         * lib/strtoimax.c: Likewise.
9054         * lib/strtok_r.c: Likewise.
9055         * lib/strtol.c: Likewise.
9056         * lib/strtoll.c: Likewise.
9057         * lib/strtoul.c: Likewise.
9058         * lib/strtoull.c: Likewise.
9059         * lib/sysexits.in.h: Likewise.
9060         * lib/tempname.c: Likewise.
9061         * lib/tempname.h: Likewise.
9062         * lib/timespec.h: Likewise.
9063         * lib/tls.c: Likewise.
9064         * lib/tls.h: Likewise.
9065         * lib/tmpdir.c: Likewise.
9066         * lib/tmpdir.h: Likewise.
9067         * lib/tmpfile-safer.c: Likewise.
9068         * lib/tmpfile.c: Likewise.
9069         * lib/trigl.c: Likewise.
9070         * lib/trigl.h: Likewise.
9071         * lib/trim.c: Likewise.
9072         * lib/trim.h: Likewise.
9073         * lib/trunc.c: Likewise.
9074         * lib/truncf.c: Likewise.
9075         * lib/truncl.c: Likewise.
9076         * lib/tsearch.c: Likewise.
9077         * lib/unicodeio.c: Likewise.
9078         * lib/unicodeio.h: Likewise.
9079         * lib/unistd--.h: Likewise.
9080         * lib/unistd-safer.h: Likewise.
9081         * lib/unistdio/ulc-fprintf.c: Likewise.
9082         * lib/unistdio/ulc-vfprintf.c: Likewise.
9083         * lib/unlinkdir.c: Likewise.
9084         * lib/unlinkdir.h: Likewise.
9085         * lib/unlocked-io.h: Likewise.
9086         * lib/unsetenv.c: Likewise.
9087         * lib/userspec.c: Likewise.
9088         * lib/utime.c: Likewise.
9089         * lib/utimecmp.c: Likewise.
9090         * lib/utimecmp.h: Likewise.
9091         * lib/utimens.c: Likewise.
9092         * lib/verify.h: Likewise.
9093         * lib/verror.c: Likewise.
9094         * lib/verror.h: Likewise.
9095         * lib/version-etc-fsf.c: Likewise.
9096         * lib/version-etc.c: Likewise.
9097         * lib/version-etc.h: Likewise.
9098         * lib/vfprintf.c: Likewise.
9099         * lib/vprintf.c: Likewise.
9100         * lib/vsprintf.c: Likewise.
9101         * lib/w32spawn.h: Likewise.
9102         * lib/wait-process.c: Likewise.
9103         * lib/wait-process.h: Likewise.
9104         * lib/wcwidth.c: Likewise.
9105         * lib/write-any-file.c: Likewise.
9106         * lib/xalloc-die.c: Likewise.
9107         * lib/xalloc.h: Likewise.
9108         * lib/xasprintf.c: Likewise.
9109         * lib/xgetcwd.c: Likewise.
9110         * lib/xgetcwd.h: Likewise.
9111         * lib/xgetdomainname.c: Likewise.
9112         * lib/xgetdomainname.h: Likewise.
9113         * lib/xgethostname.c: Likewise.
9114         * lib/xmalloc.c: Likewise.
9115         * lib/xmalloca.c: Likewise.
9116         * lib/xmalloca.h: Likewise.
9117         * lib/xmemcoll.c: Likewise.
9118         * lib/xnanosleep.c: Likewise.
9119         * lib/xreadlink.c: Likewise.
9120         * lib/xreadlink.h: Likewise.
9121         * lib/xsetenv.c: Likewise.
9122         * lib/xsetenv.h: Likewise.
9123         * lib/xstriconv.c: Likewise.
9124         * lib/xstriconv.h: Likewise.
9125         * lib/xstrndup.c: Likewise.
9126         * lib/xstrndup.h: Likewise.
9127         * lib/xstrtod.c: Likewise.
9128         * lib/xstrtod.h: Likewise.
9129         * lib/xstrtol-error.c: Likewise.
9130         * lib/xstrtol.c: Likewise.
9131         * lib/xstrtol.h: Likewise.
9132         * lib/xtime.h: Likewise.
9133         * lib/xvasprintf.c: Likewise.
9134         * lib/xvasprintf.h: Likewise.
9135         * lib/yesno.c: Likewise.
9136         * lib/yesno.h: Likewise.
9137         * posix-modules: Likewise.
9138         * tests/test-alloca-opt.c: Likewise.
9139         * tests/test-arcfour.c: Likewise.
9140         * tests/test-arctwo.c: Likewise.
9141         * tests/test-argmatch.c: Likewise.
9142         * tests/test-argp-2.sh: Likewise.
9143         * tests/test-argp.c: Likewise.
9144         * tests/test-arpa_inet.c: Likewise.
9145         * tests/test-array_list.c: Likewise.
9146         * tests/test-array_oset.c: Likewise.
9147         * tests/test-atexit.c: Likewise.
9148         * tests/test-avltree_list.c: Likewise.
9149         * tests/test-avltree_oset.c: Likewise.
9150         * tests/test-avltreehash_list.c: Likewise.
9151         * tests/test-base64.c: Likewise.
9152         * tests/test-binary-io.c: Likewise.
9153         * tests/test-byteswap.c: Likewise.
9154         * tests/test-c-ctype.c: Likewise.
9155         * tests/test-c-strcasecmp.c: Likewise.
9156         * tests/test-c-strcasestr.c: Likewise.
9157         * tests/test-c-strncasecmp.c: Likewise.
9158         * tests/test-c-strstr.c: Likewise.
9159         * tests/test-canonicalize-lgpl.c: Likewise.
9160         * tests/test-canonicalize.c: Likewise.
9161         * tests/test-carray_list.c: Likewise.
9162         * tests/test-ceilf.c: Likewise.
9163         * tests/test-ceill.c: Likewise.
9164         * tests/test-count-one-bits.c: Likewise.
9165         * tests/test-crc.c: Likewise.
9166         * tests/test-dirname.c: Likewise.
9167         * tests/test-fbufmode.c: Likewise.
9168         * tests/test-fcntl.c: Likewise.
9169         * tests/test-fflush.c: Likewise.
9170         * tests/test-floorf.c: Likewise.
9171         * tests/test-floorl.c: Likewise.
9172         * tests/test-fopen.c: Likewise.
9173         * tests/test-fprintf-posix.c: Likewise.
9174         * tests/test-fprintf-posix.h: Likewise.
9175         * tests/test-fpurge.c: Likewise.
9176         * tests/test-freadable.c: Likewise.
9177         * tests/test-freadahead.c: Likewise.
9178         * tests/test-freading.c: Likewise.
9179         * tests/test-freopen.c: Likewise.
9180         * tests/test-frexp.c: Likewise.
9181         * tests/test-frexpl.c: Likewise.
9182         * tests/test-fseek.c: Likewise.
9183         * tests/test-fseeko.c: Likewise.
9184         * tests/test-fseterr.c: Likewise.
9185         * tests/test-fstrcmp.c: Likewise.
9186         * tests/test-ftell.c: Likewise.
9187         * tests/test-ftello.c: Likewise.
9188         * tests/test-fwritable.c: Likewise.
9189         * tests/test-fwriting.c: Likewise.
9190         * tests/test-getaddrinfo.c: Likewise.
9191         * tests/test-getpass.c: Likewise.
9192         * tests/test-gettimeofday.c: Likewise.
9193         * tests/test-hmac-md5.c: Likewise.
9194         * tests/test-hmac-sha1.c: Likewise.
9195         * tests/test-iconv.c: Likewise.
9196         * tests/test-iconvme.c: Likewise.
9197         * tests/test-inttypes.c: Likewise.
9198         * tests/test-isnan.c: Likewise.
9199         * tests/test-isnanf.c: Likewise.
9200         * tests/test-isnanl-nolibm.c: Likewise.
9201         * tests/test-isnanl.c: Likewise.
9202         * tests/test-isnanl.h: Likewise.
9203         * tests/test-ldexpl.c: Likewise.
9204         * tests/test-linked_list.c: Likewise.
9205         * tests/test-linkedhash_list.c: Likewise.
9206         * tests/test-locale.c: Likewise.
9207         * tests/test-localename.c: Likewise.
9208         * tests/test-lock.c: Likewise.
9209         * tests/test-lseek.c: Likewise.
9210         * tests/test-malloca.c: Likewise.
9211         * tests/test-math.c: Likewise.
9212         * tests/test-mbscasecmp.c: Likewise.
9213         * tests/test-mbscasestr1.c: Likewise.
9214         * tests/test-mbscasestr2.c: Likewise.
9215         * tests/test-mbscasestr3.c: Likewise.
9216         * tests/test-mbscasestr4.c: Likewise.
9217         * tests/test-mbschr.c: Likewise.
9218         * tests/test-mbscspn.c: Likewise.
9219         * tests/test-mbsncasecmp.c: Likewise.
9220         * tests/test-mbspbrk.c: Likewise.
9221         * tests/test-mbspcasecmp.c: Likewise.
9222         * tests/test-mbsrchr.c: Likewise.
9223         * tests/test-mbsspn.c: Likewise.
9224         * tests/test-mbsstr1.c: Likewise.
9225         * tests/test-mbsstr2.c: Likewise.
9226         * tests/test-mbsstr3.c: Likewise.
9227         * tests/test-md5.c: Likewise.
9228         * tests/test-memmem.c: Likewise.
9229         * tests/test-netinet_in.c: Likewise.
9230         * tests/test-open.c: Likewise.
9231         * tests/test-printf-frexp.c: Likewise.
9232         * tests/test-printf-frexpl.c: Likewise.
9233         * tests/test-printf-posix.c: Likewise.
9234         * tests/test-printf-posix.h: Likewise.
9235         * tests/test-rbtree_list.c: Likewise.
9236         * tests/test-rbtree_oset.c: Likewise.
9237         * tests/test-rbtreehash_list.c: Likewise.
9238         * tests/test-read-file.c: Likewise.
9239         * tests/test-rijndael.c: Likewise.
9240         * tests/test-search.c: Likewise.
9241         * tests/test-signbit.c: Likewise.
9242         * tests/test-sleep.c: Likewise.
9243         * tests/test-snprintf-posix.c: Likewise.
9244         * tests/test-snprintf-posix.h: Likewise.
9245         * tests/test-snprintf.c: Likewise.
9246         * tests/test-sprintf-posix.c: Likewise.
9247         * tests/test-sprintf-posix.h: Likewise.
9248         * tests/test-stat-time.c: Likewise.
9249         * tests/test-stdbool.c: Likewise.
9250         * tests/test-stdint.c: Likewise.
9251         * tests/test-stdio.c: Likewise.
9252         * tests/test-stdlib.c: Likewise.
9253         * tests/test-stpncpy.c: Likewise.
9254         * tests/test-strcasestr.c: Likewise.
9255         * tests/test-striconv.c: Likewise.
9256         * tests/test-striconveh.c: Likewise.
9257         * tests/test-striconveha.c: Likewise.
9258         * tests/test-string.c: Likewise.
9259         * tests/test-sys_select.c: Likewise.
9260         * tests/test-sys_socket.c: Likewise.
9261         * tests/test-sys_stat.c: Likewise.
9262         * tests/test-sys_time.c: Likewise.
9263         * tests/test-sysexits.c: Likewise.
9264         * tests/test-time.c: Likewise.
9265         * tests/test-tls.c: Likewise.
9266         * tests/test-trunc.c: Likewise.
9267         * tests/test-truncf.c: Likewise.
9268         * tests/test-truncl.c: Likewise.
9269         * tests/test-unistd.c: Likewise.
9270         * tests/test-vasnprintf-posix.c: Likewise.
9271         * tests/test-vasnprintf-posix2.c: Likewise.
9272         * tests/test-vasnprintf.c: Likewise.
9273         * tests/test-vasprintf-posix.c: Likewise.
9274         * tests/test-vasprintf.c: Likewise.
9275         * tests/test-verify.c: Likewise.
9276         * tests/test-vfprintf-posix.c: Likewise.
9277         * tests/test-vprintf-posix.c: Likewise.
9278         * tests/test-vsnprintf-posix.c: Likewise.
9279         * tests/test-vsnprintf.c: Likewise.
9280         * tests/test-vsprintf-posix.c: Likewise.
9281         * tests/test-wchar.c: Likewise.
9282         * tests/test-wctype.c: Likewise.
9283         * tests/test-wcwidth.c: Likewise.
9284         * tests/test-xstrtol.c: Likewise.
9285         * tests/test-xvasprintf.c: Likewise.
9286         * tests/uniconv/test-u16-conv-from-enc.c: Likewise.
9287         * tests/uniconv/test-u16-conv-to-enc.c: Likewise.
9288         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
9289         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
9290         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
9291         * tests/uniconv/test-u32-conv-to-enc.c: Likewise.
9292         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
9293         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
9294         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
9295         * tests/uniconv/test-u8-conv-to-enc.c: Likewise.
9296         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
9297         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
9298         * tests/uniname/test-uninames.c: Likewise.
9299         * tests/unistdio/test-u16-asnprintf1.c: Likewise.
9300         * tests/unistdio/test-u16-asnprintf1.h: Likewise.
9301         * tests/unistdio/test-u16-printf1.h: Likewise.
9302         * tests/unistdio/test-u16-vasnprintf1.c: Likewise.
9303         * tests/unistdio/test-u16-vasnprintf2.c: Likewise.
9304         * tests/unistdio/test-u16-vasnprintf3.c: Likewise.
9305         * tests/unistdio/test-u16-vasprintf1.c: Likewise.
9306         * tests/unistdio/test-u16-vsnprintf1.c: Likewise.
9307         * tests/unistdio/test-u16-vsprintf1.c: Likewise.
9308         * tests/unistdio/test-u32-asnprintf1.c: Likewise.
9309         * tests/unistdio/test-u32-asnprintf1.h: Likewise.
9310         * tests/unistdio/test-u32-printf1.h: Likewise.
9311         * tests/unistdio/test-u32-vasnprintf1.c: Likewise.
9312         * tests/unistdio/test-u32-vasnprintf2.c: Likewise.
9313         * tests/unistdio/test-u32-vasnprintf3.c: Likewise.
9314         * tests/unistdio/test-u32-vasprintf1.c: Likewise.
9315         * tests/unistdio/test-u32-vsnprintf1.c: Likewise.
9316         * tests/unistdio/test-u32-vsprintf1.c: Likewise.
9317         * tests/unistdio/test-u8-asnprintf1.c: Likewise.
9318         * tests/unistdio/test-u8-asnprintf1.h: Likewise.
9319         * tests/unistdio/test-u8-printf1.h: Likewise.
9320         * tests/unistdio/test-u8-vasnprintf1.c: Likewise.
9321         * tests/unistdio/test-u8-vasnprintf2.c: Likewise.
9322         * tests/unistdio/test-u8-vasnprintf3.c: Likewise.
9323         * tests/unistdio/test-u8-vasprintf1.c: Likewise.
9324         * tests/unistdio/test-u8-vsnprintf1.c: Likewise.
9325         * tests/unistdio/test-u8-vsprintf1.c: Likewise.
9326         * tests/unistdio/test-ulc-asnprintf1.c: Likewise.
9327         * tests/unistdio/test-ulc-asnprintf1.h: Likewise.
9328         * tests/unistdio/test-ulc-printf1.h: Likewise.
9329         * tests/unistdio/test-ulc-vasnprintf1.c: Likewise.
9330         * tests/unistdio/test-ulc-vasnprintf2.c: Likewise.
9331         * tests/unistdio/test-ulc-vasnprintf3.c: Likewise.
9332         * tests/unistdio/test-ulc-vasprintf1.c: Likewise.
9333         * tests/unistdio/test-ulc-vsnprintf1.c: Likewise.
9334         * tests/unistdio/test-ulc-vsprintf1.c: Likewise.
9335         * tests/uniwidth/test-u16-strwidth.c: Likewise.
9336         * tests/uniwidth/test-u16-width.c: Likewise.
9337         * tests/uniwidth/test-u32-strwidth.c: Likewise.
9338         * tests/uniwidth/test-u32-width.c: Likewise.
9339         * tests/uniwidth/test-u8-strwidth.c: Likewise.
9340         * tests/uniwidth/test-u8-width.c: Likewise.
9341         * tests/uniwidth/test-uc_width.c: Likewise.
9342         * config/srclist-update: Likewise.
9343         (fixlicense): Update to GPLv3+.
9344
9345         Change copyright notice from LGPLv2.1+ to LGPLv3+.
9346         * tests/test-tsearch.c: Change copyright notice.
9347
9348         Change copyright notice from LGPLv2.0+ to LGPLv3+.
9349         * lib/c-strcaseeq.h: Change copyright notice.
9350         * lib/streq.h: Likewise.
9351         * lib/uniconv.h: Likewise.
9352         * lib/uniconv/u-conv-from-enc.h: Likewise.
9353         * lib/uniconv/u-conv-to-enc.h: Likewise.
9354         * lib/uniconv/u-strconv-from-enc.h: Likewise.
9355         * lib/uniconv/u-strconv-to-enc.h: Likewise.
9356         * lib/uniconv/u16-conv-from-enc.c: Likewise.
9357         * lib/uniconv/u16-conv-to-enc.c: Likewise.
9358         * lib/uniconv/u16-strconv-from-enc.c: Likewise.
9359         * lib/uniconv/u16-strconv-from-locale.c: Likewise.
9360         * lib/uniconv/u16-strconv-to-enc.c: Likewise.
9361         * lib/uniconv/u16-strconv-to-locale.c: Likewise.
9362         * lib/uniconv/u32-conv-from-enc.c: Likewise.
9363         * lib/uniconv/u32-conv-to-enc.c: Likewise.
9364         * lib/uniconv/u32-strconv-from-enc.c: Likewise.
9365         * lib/uniconv/u32-strconv-from-locale.c: Likewise.
9366         * lib/uniconv/u32-strconv-to-enc.c: Likewise.
9367         * lib/uniconv/u32-strconv-to-locale.c: Likewise.
9368         * lib/uniconv/u8-conv-from-enc.c: Likewise.
9369         * lib/uniconv/u8-conv-to-enc.c: Likewise.
9370         * lib/uniconv/u8-strconv-from-enc.c: Likewise.
9371         * lib/uniconv/u8-strconv-from-locale.c: Likewise.
9372         * lib/uniconv/u8-strconv-to-enc.c: Likewise.
9373         * lib/uniconv/u8-strconv-to-locale.c: Likewise.
9374         * lib/uniname.h: Likewise.
9375         * lib/uniname/uniname.c: Likewise.
9376         * lib/unistdio.h: Likewise.
9377         * lib/unistdio/u-asnprintf.h: Likewise.
9378         * lib/unistdio/u-asprintf.h: Likewise.
9379         * lib/unistdio/u-printf-args.c: Likewise.
9380         * lib/unistdio/u-printf-args.h: Likewise.
9381         * lib/unistdio/u-printf-parse.h: Likewise.
9382         * lib/unistdio/u-snprintf.h: Likewise.
9383         * lib/unistdio/u-sprintf.h: Likewise.
9384         * lib/unistdio/u-vasprintf.h: Likewise.
9385         * lib/unistdio/u-vsnprintf.h: Likewise.
9386         * lib/unistdio/u-vsprintf.h: Likewise.
9387         * lib/unistdio/u16-asnprintf.c: Likewise.
9388         * lib/unistdio/u16-asprintf.c: Likewise.
9389         * lib/unistdio/u16-printf-parse.c: Likewise.
9390         * lib/unistdio/u16-snprintf.c: Likewise.
9391         * lib/unistdio/u16-sprintf.c: Likewise.
9392         * lib/unistdio/u16-u16-asnprintf.c: Likewise.
9393         * lib/unistdio/u16-u16-asprintf.c: Likewise.
9394         * lib/unistdio/u16-u16-snprintf.c: Likewise.
9395         * lib/unistdio/u16-u16-sprintf.c: Likewise.
9396         * lib/unistdio/u16-u16-vasnprintf.c: Likewise.
9397         * lib/unistdio/u16-u16-vasprintf.c: Likewise.
9398         * lib/unistdio/u16-u16-vsnprintf.c: Likewise.
9399         * lib/unistdio/u16-u16-vsprintf.c: Likewise.
9400         * lib/unistdio/u16-vasnprintf.c: Likewise.
9401         * lib/unistdio/u16-vasprintf.c: Likewise.
9402         * lib/unistdio/u16-vsnprintf.c: Likewise.
9403         * lib/unistdio/u16-vsprintf.c: Likewise.
9404         * lib/unistdio/u32-asnprintf.c: Likewise.
9405         * lib/unistdio/u32-asprintf.c: Likewise.
9406         * lib/unistdio/u32-printf-parse.c: Likewise.
9407         * lib/unistdio/u32-snprintf.c: Likewise.
9408         * lib/unistdio/u32-sprintf.c: Likewise.
9409         * lib/unistdio/u32-u32-asnprintf.c: Likewise.
9410         * lib/unistdio/u32-u32-asprintf.c: Likewise.
9411         * lib/unistdio/u32-u32-snprintf.c: Likewise.
9412         * lib/unistdio/u32-u32-sprintf.c: Likewise.
9413         * lib/unistdio/u32-u32-vasnprintf.c: Likewise.
9414         * lib/unistdio/u32-u32-vasprintf.c: Likewise.
9415         * lib/unistdio/u32-u32-vsnprintf.c: Likewise.
9416         * lib/unistdio/u32-u32-vsprintf.c: Likewise.
9417         * lib/unistdio/u32-vasnprintf.c: Likewise.
9418         * lib/unistdio/u32-vasprintf.c: Likewise.
9419         * lib/unistdio/u32-vsnprintf.c: Likewise.
9420         * lib/unistdio/u32-vsprintf.c: Likewise.
9421         * lib/unistdio/u8-asnprintf.c: Likewise.
9422         * lib/unistdio/u8-asprintf.c: Likewise.
9423         * lib/unistdio/u8-printf-parse.c: Likewise.
9424         * lib/unistdio/u8-snprintf.c: Likewise.
9425         * lib/unistdio/u8-sprintf.c: Likewise.
9426         * lib/unistdio/u8-u8-asnprintf.c: Likewise.
9427         * lib/unistdio/u8-u8-asprintf.c: Likewise.
9428         * lib/unistdio/u8-u8-snprintf.c: Likewise.
9429         * lib/unistdio/u8-u8-sprintf.c: Likewise.
9430         * lib/unistdio/u8-u8-vasnprintf.c: Likewise.
9431         * lib/unistdio/u8-u8-vasprintf.c: Likewise.
9432         * lib/unistdio/u8-u8-vsnprintf.c: Likewise.
9433         * lib/unistdio/u8-u8-vsprintf.c: Likewise.
9434         * lib/unistdio/u8-vasnprintf.c: Likewise.
9435         * lib/unistdio/u8-vasprintf.c: Likewise.
9436         * lib/unistdio/u8-vsnprintf.c: Likewise.
9437         * lib/unistdio/u8-vsprintf.c: Likewise.
9438         * lib/unistdio/ulc-asnprintf.c: Likewise.
9439         * lib/unistdio/ulc-asprintf.c: Likewise.
9440         * lib/unistdio/ulc-printf-parse.c: Likewise.
9441         * lib/unistdio/ulc-snprintf.c: Likewise.
9442         * lib/unistdio/ulc-sprintf.c: Likewise.
9443         * lib/unistdio/ulc-vasnprintf.c: Likewise.
9444         * lib/unistdio/ulc-vasprintf.c: Likewise.
9445         * lib/unistdio/ulc-vsnprintf.c: Likewise.
9446         * lib/unistdio/ulc-vsprintf.c: Likewise.
9447         * lib/unistr.h: Likewise.
9448         * lib/unistr/u-cpy-alloc.h: Likewise.
9449         * lib/unistr/u-cpy.h: Likewise.
9450         * lib/unistr/u-endswith.h: Likewise.
9451         * lib/unistr/u-move.h: Likewise.
9452         * lib/unistr/u-set.h: Likewise.
9453         * lib/unistr/u-startswith.h: Likewise.
9454         * lib/unistr/u-stpcpy.h: Likewise.
9455         * lib/unistr/u-stpncpy.h: Likewise.
9456         * lib/unistr/u-strcat.h: Likewise.
9457         * lib/unistr/u-strcpy.h: Likewise.
9458         * lib/unistr/u-strcspn.h: Likewise.
9459         * lib/unistr/u-strdup.h: Likewise.
9460         * lib/unistr/u-strlen.h: Likewise.
9461         * lib/unistr/u-strncat.h: Likewise.
9462         * lib/unistr/u-strncpy.h: Likewise.
9463         * lib/unistr/u-strnlen.h: Likewise.
9464         * lib/unistr/u-strpbrk.h: Likewise.
9465         * lib/unistr/u-strspn.h: Likewise.
9466         * lib/unistr/u-strstr.h: Likewise.
9467         * lib/unistr/u-strtok.h: Likewise.
9468         * lib/unistr/u16-check.c: Likewise.
9469         * lib/unistr/u16-chr.c: Likewise.
9470         * lib/unistr/u16-cmp.c: Likewise.
9471         * lib/unistr/u16-cpy-alloc.c: Likewise.
9472         * lib/unistr/u16-cpy.c: Likewise.
9473         * lib/unistr/u16-endswith.c: Likewise.
9474         * lib/unistr/u16-mblen.c: Likewise.
9475         * lib/unistr/u16-mbsnlen.c: Likewise.
9476         * lib/unistr/u16-mbtouc-aux.c: Likewise.
9477         * lib/unistr/u16-mbtouc-unsafe-aux.c: Likewise.
9478         * lib/unistr/u16-mbtouc-unsafe.c: Likewise.
9479         * lib/unistr/u16-mbtouc.c: Likewise.
9480         * lib/unistr/u16-mbtoucr.c: Likewise.
9481         * lib/unistr/u16-move.c: Likewise.
9482         * lib/unistr/u16-next.c: Likewise.
9483         * lib/unistr/u16-prev.c: Likewise.
9484         * lib/unistr/u16-set.c: Likewise.
9485         * lib/unistr/u16-startswith.c: Likewise.
9486         * lib/unistr/u16-stpcpy.c: Likewise.
9487         * lib/unistr/u16-stpncpy.c: Likewise.
9488         * lib/unistr/u16-strcat.c: Likewise.
9489         * lib/unistr/u16-strchr.c: Likewise.
9490         * lib/unistr/u16-strcmp.c: Likewise.
9491         * lib/unistr/u16-strcpy.c: Likewise.
9492         * lib/unistr/u16-strcspn.c: Likewise.
9493         * lib/unistr/u16-strdup.c: Likewise.
9494         * lib/unistr/u16-strlen.c: Likewise.
9495         * lib/unistr/u16-strmblen.c: Likewise.
9496         * lib/unistr/u16-strmbtouc.c: Likewise.
9497         * lib/unistr/u16-strncat.c: Likewise.
9498         * lib/unistr/u16-strncmp.c: Likewise.
9499         * lib/unistr/u16-strncpy.c: Likewise.
9500         * lib/unistr/u16-strnlen.c: Likewise.
9501         * lib/unistr/u16-strpbrk.c: Likewise.
9502         * lib/unistr/u16-strrchr.c: Likewise.
9503         * lib/unistr/u16-strspn.c: Likewise.
9504         * lib/unistr/u16-strstr.c: Likewise.
9505         * lib/unistr/u16-strtok.c: Likewise.
9506         * lib/unistr/u16-to-u32.c: Likewise.
9507         * lib/unistr/u16-to-u8.c: Likewise.
9508         * lib/unistr/u16-uctomb-aux.c: Likewise.
9509         * lib/unistr/u16-uctomb.c: Likewise.
9510         * lib/unistr/u32-check.c: Likewise.
9511         * lib/unistr/u32-chr.c: Likewise.
9512         * lib/unistr/u32-cmp.c: Likewise.
9513         * lib/unistr/u32-cpy-alloc.c: Likewise.
9514         * lib/unistr/u32-cpy.c: Likewise.
9515         * lib/unistr/u32-endswith.c: Likewise.
9516         * lib/unistr/u32-mblen.c: Likewise.
9517         * lib/unistr/u32-mbsnlen.c: Likewise.
9518         * lib/unistr/u32-mbtouc-unsafe.c: Likewise.
9519         * lib/unistr/u32-mbtouc.c: Likewise.
9520         * lib/unistr/u32-mbtoucr.c: Likewise.
9521         * lib/unistr/u32-move.c: Likewise.
9522         * lib/unistr/u32-next.c: Likewise.
9523         * lib/unistr/u32-prev.c: Likewise.
9524         * lib/unistr/u32-set.c: Likewise.
9525         * lib/unistr/u32-startswith.c: Likewise.
9526         * lib/unistr/u32-stpcpy.c: Likewise.
9527         * lib/unistr/u32-stpncpy.c: Likewise.
9528         * lib/unistr/u32-strcat.c: Likewise.
9529         * lib/unistr/u32-strchr.c: Likewise.
9530         * lib/unistr/u32-strcmp.c: Likewise.
9531         * lib/unistr/u32-strcpy.c: Likewise.
9532         * lib/unistr/u32-strcspn.c: Likewise.
9533         * lib/unistr/u32-strdup.c: Likewise.
9534         * lib/unistr/u32-strlen.c: Likewise.
9535         * lib/unistr/u32-strmblen.c: Likewise.
9536         * lib/unistr/u32-strmbtouc.c: Likewise.
9537         * lib/unistr/u32-strncat.c: Likewise.
9538         * lib/unistr/u32-strncmp.c: Likewise.
9539         * lib/unistr/u32-strncpy.c: Likewise.
9540         * lib/unistr/u32-strnlen.c: Likewise.
9541         * lib/unistr/u32-strpbrk.c: Likewise.
9542         * lib/unistr/u32-strrchr.c: Likewise.
9543         * lib/unistr/u32-strspn.c: Likewise.
9544         * lib/unistr/u32-strstr.c: Likewise.
9545         * lib/unistr/u32-strtok.c: Likewise.
9546         * lib/unistr/u32-to-u16.c: Likewise.
9547         * lib/unistr/u32-to-u8.c: Likewise.
9548         * lib/unistr/u32-uctomb.c: Likewise.
9549         * lib/unistr/u8-check.c: Likewise.
9550         * lib/unistr/u8-chr.c: Likewise.
9551         * lib/unistr/u8-cmp.c: Likewise.
9552         * lib/unistr/u8-cpy-alloc.c: Likewise.
9553         * lib/unistr/u8-cpy.c: Likewise.
9554         * lib/unistr/u8-endswith.c: Likewise.
9555         * lib/unistr/u8-mblen.c: Likewise.
9556         * lib/unistr/u8-mbsnlen.c: Likewise.
9557         * lib/unistr/u8-mbtouc-aux.c: Likewise.
9558         * lib/unistr/u8-mbtouc-unsafe-aux.c: Likewise.
9559         * lib/unistr/u8-mbtouc-unsafe.c: Likewise.
9560         * lib/unistr/u8-mbtouc.c: Likewise.
9561         * lib/unistr/u8-mbtoucr.c: Likewise.
9562         * lib/unistr/u8-move.c: Likewise.
9563         * lib/unistr/u8-next.c: Likewise.
9564         * lib/unistr/u8-prev.c: Likewise.
9565         * lib/unistr/u8-set.c: Likewise.
9566         * lib/unistr/u8-startswith.c: Likewise.
9567         * lib/unistr/u8-stpcpy.c: Likewise.
9568         * lib/unistr/u8-stpncpy.c: Likewise.
9569         * lib/unistr/u8-strcat.c: Likewise.
9570         * lib/unistr/u8-strchr.c: Likewise.
9571         * lib/unistr/u8-strcmp.c: Likewise.
9572         * lib/unistr/u8-strcpy.c: Likewise.
9573         * lib/unistr/u8-strcspn.c: Likewise.
9574         * lib/unistr/u8-strdup.c: Likewise.
9575         * lib/unistr/u8-strlen.c: Likewise.
9576         * lib/unistr/u8-strmblen.c: Likewise.
9577         * lib/unistr/u8-strmbtouc.c: Likewise.
9578         * lib/unistr/u8-strncat.c: Likewise.
9579         * lib/unistr/u8-strncmp.c: Likewise.
9580         * lib/unistr/u8-strncpy.c: Likewise.
9581         * lib/unistr/u8-strnlen.c: Likewise.
9582         * lib/unistr/u8-strpbrk.c: Likewise.
9583         * lib/unistr/u8-strrchr.c: Likewise.
9584         * lib/unistr/u8-strspn.c: Likewise.
9585         * lib/unistr/u8-strstr.c: Likewise.
9586         * lib/unistr/u8-strtok.c: Likewise.
9587         * lib/unistr/u8-to-u16.c: Likewise.
9588         * lib/unistr/u8-to-u32.c: Likewise.
9589         * lib/unistr/u8-uctomb-aux.c: Likewise.
9590         * lib/unistr/u8-uctomb.c: Likewise.
9591         * lib/unitypes.h: Likewise.
9592         * lib/uniwidth.h: Likewise.
9593         * lib/uniwidth/cjk.h: Likewise.
9594         * lib/uniwidth/u16-strwidth.c: Likewise.
9595         * lib/uniwidth/u16-width.c: Likewise.
9596         * lib/uniwidth/u32-strwidth.c: Likewise.
9597         * lib/uniwidth/u32-width.c: Likewise.
9598         * lib/uniwidth/u8-strwidth.c: Likewise.
9599         * lib/uniwidth/u8-width.c: Likewise.
9600         * lib/uniwidth/width.c: Likewise.
9601
9602 2007-10-07  Bruno Haible  <bruno@clisp.org>
9603
9604         * lib/inttypes.in.h: Change copyright notice from LGPL to GPL.
9605         The file is still under LGPL (see modules/inttypes).
9606
9607 2007-10-06  Bruno Haible  <bruno@clisp.org>
9608
9609         * modules/trunc (Dependencies): Add 'extensions'.
9610         * m4/trunc.m4 (gl_FUNC_TRUNC): Require gl_USE_SYSTEM_EXTENSIONS.
9611         Reported by Ben Pfaff <blp@gnu.org>.
9612
9613 2007-10-06  Bruno Haible  <bruno@clisp.org>
9614
9615         * modules/freopen-tests: New file.
9616         * tests/test-freopen.c: New file.
9617
9618         * modules/fopen-tests: New file.
9619         * tests/test-fopen.c: New file.
9620
9621         * modules/fopen: New file.
9622         * lib/fopen.c: New file.
9623         * m4/fopen.m4: New file.
9624         * modules/freopen: New file.
9625         * lib/freopen.c: New file.
9626         * m4/freopen.m4: New file.
9627         * lib/stdio.in.h (fopen, freopen): New declarations.
9628         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize also GNULIB_FOPEN,
9629         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
9630         * modules/stdio (Makefile.am): Substitute also GNULIB_FOPEN,
9631         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
9632         * doc/functions/fopen.texi: Mention the 'fopen' module.
9633         * doc/functions/freopen.texi: Mention the 'freopen' module.
9634
9635 2007-10-06  Bruno Haible  <bruno@clisp.org>
9636
9637         * modules/open-tests: New file.
9638         * tests/test-open.c: New file.
9639
9640         * modules/open: New file.
9641         * lib/open.c: New file.
9642         * m4/open.m4: New file.
9643         * lib/fchdir.c (open): If the gnulib module 'open' is used, do what
9644         lib/open.c does.
9645         * lib/fcntl.in.h (open): Declare also if replaced by the 'open' module.
9646         * m4/fcntl_h.m4 (gl_FCNTL_MODULE_INDICATOR, gl_FCNTL_H_DEFAULTS): New
9647         macros.
9648         (gl_FCNTL_H): Require gl_FCNTL_H_DEFAULTS.
9649         * modules/fcntl (Makefile.am): Also substitute GNULIB_OPEN and
9650         REPLACE_OPEN.
9651         * doc/functions/open.texi: Mention the 'open' module.
9652
9653 2007-10-04  Bruno Haible  <bruno@clisp.org>
9654
9655         * modules/ceill-tests: New file.
9656         * tests/test-ceill.c: New file.
9657
9658         * modules/ceill: New file.
9659         * lib/ceill.c: Replace entire file.
9660         * m4/ceill.m4: New file.
9661         * lib/math.in.h (ceill): Replace declaration.
9662         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILL.
9663         * modules/math (Makefile.am): Substitute also GNULIB_CEILL.
9664         * doc/functions/ceill.texi: Mention the 'ceill' module.
9665         * modules/mathl (Files): Remove lib/ceill.c.
9666         (Depends-on): Add ceill.
9667
9668 2007-10-04  Bruno Haible  <bruno@clisp.org>
9669
9670         * modules/ceilf-tests: New file.
9671         * tests/test-ceilf.c: New file.
9672
9673         * modules/ceilf: New file.
9674         * lib/ceil.c: New file.
9675         * lib/ceilf.c: New file.
9676         * m4/ceilf.m4: New file.
9677         * lib/math.in.h (ceilf): New declaration.
9678         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILF and
9679         HAVE_DECL_CEILF.
9680         * modules/math (Makefile.am): Substitute also GNULIB_CEILF and
9681         HAVE_DECL_CEILF.
9682         * doc/functions/ceilf.texi: Mention the 'ceilf' module.
9683
9684 2007-10-04  Bruno Haible  <bruno@clisp.org>
9685
9686         * modules/floorl-tests: New file.
9687         * tests/test-floorl.c: New file.
9688
9689         * modules/floorl: New file.
9690         * lib/floorl.c: Replace entire file.
9691         * m4/floorl.m4: New file.
9692         * lib/math.in.h (floorl): Replace declaration.
9693         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORL.
9694         * modules/math (Makefile.am): Substitute also GNULIB_FLOORL.
9695         * doc/functions/floorl.texi: Mention the 'floorl' module.
9696         * modules/mathl (Files): Remove lib/floorl.c.
9697         (Depends-on): Add floorl.
9698
9699 2007-10-04  Bruno Haible  <bruno@clisp.org>
9700
9701         * modules/floorf-tests: New file.
9702         * tests/test-floorf.c: New file.
9703
9704         * modules/floorf: New file.
9705         * lib/floor.c: New file.
9706         * lib/floorf.c: New file.
9707         * m4/floorf.m4: New file.
9708         * lib/math.in.h (floorf): New declaration.
9709         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORF and
9710         HAVE_DECL_FLOORF.
9711         * modules/math (Makefile.am): Substitute also GNULIB_FLOORF and
9712         HAVE_DECL_FLOORF.
9713         * doc/functions/floorf.texi: Mention the 'floorf' module.
9714
9715 2007-10-04  Benoit Sigoure  <tsuna@lrde.epita.fr>
9716             Bruno Haible  <bruno@clisp.org>
9717
9718         Advertise for the Git server instead of the CVS server.
9719         * doc/gnulib-intro.texi (Steady Development): Mention the Git
9720         repository instead of the CVS one.
9721         * doc/gnulib-tool.texi (VCS Issues): Renamed from "CVS Issues". Talk
9722         about all VCS systems generically.
9723         * doc/gnulib.texi (Introduction): Capitalize `Git'.
9724
9725 2007-10-04  Bruno Haible  <bruno@clisp.org>
9726
9727         * doc/gnulib.texi (Function Substitutes): Explain what an absent module
9728         means.
9729         Reported by Benoît Sigoure <tsuna@lrde.epita.fr>.
9730
9731 2007-10-04  Bruno Haible  <bruno@clisp.org>
9732
9733         * modules/truncl-tests: New file.
9734         * tests/test-truncl.c: New file.
9735
9736         * modules/truncl: New file.
9737         * lib/truncl.c: New file.
9738         * m4/truncl.m4: New file.
9739         * lib/math.in.h (truncl): New declaration.
9740         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCL and
9741         HAVE_DECL_TRUNCL.
9742         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCL and
9743         HAVE_DECL_TRUNCL.
9744         * doc/functions/truncl.texi: Mention the 'truncl' module.
9745
9746 2007-10-04  Bruno Haible  <bruno@clisp.org>
9747
9748         * modules/truncf-tests: New file.
9749         * tests/test-truncf.c: New file.
9750
9751         * modules/truncf: New file.
9752         * lib/trunc.c: Make paramerizable through USE_* macros.
9753         * lib/truncf.c: New file.
9754         * m4/truncf.m4: New file.
9755         * lib/math.in.h (truncf): New declaration.
9756         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCF and
9757         HAVE_DECL_TRUNCF.
9758         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCF and
9759         HAVE_DECL_TRUNCF.
9760         * doc/functions/truncf.texi: Mention the 'truncf' module.
9761
9762 2007-10-03  Bruno Haible  <bruno@clisp.org>
9763
9764         * gnulib-tool (func_get_automake_snippet): Synthesize an EXTRA_DIST
9765         augmentation also for tests modules.
9766         * modules/argp-tests (Makefile.am): Remove EXTRA_DIST augmentation.
9767         * modules/atexit-tests (Makefile.am): Likewise.
9768         * modules/binary-io-tests (Makefile.am): Likewise.
9769         * modules/c-strcase-tests (Makefile.am): Likewise.
9770         * modules/canonicalize-lgpl-tests (Makefile.am): Likewise.
9771         * modules/canonicalize-tests (Makefile.am): Likewise.
9772         * modules/closein-tests (Makefile.am): Likewise.
9773         * modules/fprintf-posix-tests (Makefile.am): Likewise.
9774         * modules/freadahead-tests (Makefile.am): Likewise.
9775         * modules/fseek-tests (Makefile.am): Likewise.
9776         * modules/fseeko-tests (Makefile.am): Likewise.
9777         * modules/ftell-tests (Makefile.am): Likewise.
9778         * modules/ftello-tests (Makefile.am): Likewise.
9779         * modules/isnanl-nolibm-tests (Makefile.am): Likewise.
9780         * modules/isnanl-tests (Makefile.am): Likewise.
9781         * modules/lseek-tests (Makefile.am): Likewise.
9782         * modules/mbscasecmp-tests (Makefile.am): Likewise.
9783         * modules/mbscasestr-tests (Makefile.am): Likewise.
9784         * modules/mbschr-tests (Makefile.am): Likewise.
9785         * modules/mbscspn-tests (Makefile.am): Likewise.
9786         * modules/mbsncasecmp-tests (Makefile.am): Likewise.
9787         * modules/mbspbrk-tests (Makefile.am): Likewise.
9788         * modules/mbspcasecmp-tests (Makefile.am): Likewise.
9789         * modules/mbsrchr-tests (Makefile.am): Likewise.
9790         * modules/mbsspn-tests (Makefile.am): Likewise.
9791         * modules/mbsstr-tests (Makefile.am): Likewise.
9792         * modules/printf-posix-tests (Makefile.am): Likewise.
9793         * modules/snprintf-posix-tests (Makefile.am): Likewise.
9794         * modules/sprintf-posix-tests (Makefile.am): Likewise.
9795         * modules/tsearch-tests (Makefile.am): Likewise.
9796         * modules/uniname/uniname-tests (Makefile.am): Likewise.
9797         * modules/unistdio/u16-vasnprintf-tests (Makefile.am): Likewise.
9798         * modules/unistdio/u32-vasnprintf-tests (Makefile.am): Likewise.
9799         * modules/unistdio/u8-vasnprintf-tests (Makefile.am): Likewise.
9800         * modules/unistdio/ulc-vasnprintf-tests (Makefile.am): Likewise.
9801         * modules/vasnprintf-posix-tests (Makefile.am): Likewise.
9802         * modules/vfprintf-posix-tests (Makefile.am): Likewise.
9803         * modules/vprintf-posix-tests (Makefile.am): Likewise.
9804         * modules/vsnprintf-posix-tests (Makefile.am): Likewise.
9805         * modules/vsprintf-posix-tests (Makefile.am): Likewise.
9806         * modules/xstrtoimax-tests (Makefile.am): Likewise.
9807         * modules/xstrtol-tests (Makefile.am): Likewise.
9808         * modules/xstrtoumax-tests (Makefile.am): Likewise.
9809         * modules/yesno-tests (Makefile.am): Likewise.
9810
9811 2007-10-03  Bruno Haible  <bruno@clisp.org>
9812
9813         * modules/trunc-tests: New file.
9814         * tests/test-trunc.c: New file.
9815
9816         * modules/trunc: New file.
9817         * lib/trunc.c: New file.
9818         * m4/trunc.m4: New file.
9819         * lib/math.in.h (trunc): New declaration.
9820         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNC and
9821         HAVE_DECL_TRUNC.
9822         * modules/math (Makefile.am): Substitute also GNULIB_TRUNC and
9823         HAVE_DECL_TRUNC.
9824         * doc/functions/trunc.texi: Mention the 'trunc' module.
9825
9826 2007-10-03  Bruno Haible  <bruno@clisp.org>
9827
9828         * tests/test-fpending.c: New file, mostly copied
9829         from coreutils/lib/t-fpending.c.
9830         * modules/fpending-tests: New file.
9831
9832 2007-10-03  Bruno Haible  <bruno@clisp.org>
9833
9834         Port the stdio extensions to QNX (untested).
9835         * lib/fseterr.c (fseterr): Add support for QNX.
9836         * lib/fbufmode.c (fbufmode): Likewise.
9837         * lib/freadable.c (freadable): Likewise.
9838         * lib/fwritable.c (fwritable): Likewise.
9839         * lib/freading.c (freading): Likewise.
9840         * lib/fwriting.c (fwriting): Likewise.
9841         * lib/freadahead.c (freadahed): Likewise.
9842         * lib/fpurge.c (fpurge): Likewise.
9843         * lib/fseeko.c (rpl_fseeko): Likewise.
9844
9845 2007-10-03  Bruno Haible  <bruno@clisp.org>
9846             Jim Meyering  <jim@meyering.net>
9847             Eric Blake  <ebb9@byu.net>
9848
9849         * doc/relocatable.texi: Use @command instead of @program.
9850
9851 2007-10-02  Jim Meyering  <jim@meyering.net>
9852
9853         Perform one more "_.h" -> ".in.h" substitution.
9854         * modules/unistd (Makefile.am) [unistd.h]: Use unistd.h.in
9855         instead of unistd_.h here, too.
9856
9857 2007-10-01  Bruno Haible  <bruno@clisp.org>
9858
9859         * gnulib-tool (func_emit_initmacro_done): Special case for alloca.c.
9860         Needed for the alloca-opt module.
9861
9862 2007-09-30  Bruno Haible  <bruno@clisp.org>
9863
9864         * lib/alloca.in.h: Renamed from lib/alloca_.h.
9865         * modules/alloca-opt (Files, Makefile.am): Use alloca.in.h instead of
9866         alloca_.h.
9867         * lib/argz.in.h: Renamed from lib/argz_.h.
9868         * modules/argz (Files, Makefile.am): Use argz.in.h instead of argz_.h.
9869         * lib/byteswap.in.h: Renamed from lib/byteswap_.h.
9870         * modules/byteswap (Files, Makefile.am): Use byteswap.in.h instead of
9871         byteswap_.h.
9872         * lib/dirent.in.h: Renamed from lib/dirent_.h.
9873         * modules/fchdir (Files, Makefile.am): Use dirent.in.h instead of
9874         dirent_.h.
9875         * lib/fcntl.in.h: Renamed from lib/fcntl_.h.
9876         * modules/fcntl (Files, Makefile.am): Use fcntl.in.h instead of
9877         fcntl_.h.
9878         * lib/float.in.h: Renamed from lib/float_.h.
9879         * modules/float (Files, Makefile.am): Use float.in.h instead of
9880         float_.h.
9881         * lib/fnmatch.in.h: Renamed from lib/fnmatch_.h.
9882         * modules/fnmatch (Files, Makefile.am): Use fnmatch.in.h instead of
9883         fnmatch_.h.
9884         * lib/getopt.in.h: Renamed from lib/getopt_.h.
9885         * modules/getopt (Files, Makefile.am): Use getopt.in.h instead of
9886         getopt_.h.
9887         * lib/glob.in.h: Renamed from lib/glob_.h.
9888         * modules/glob (Files, Makefile.am): Use glob.in.h instead of glob_.h.
9889         * lib/iconv.in.h: Renamed from lib/iconv_.h.
9890         * modules/iconv_open (Files, Makefile.am): Use iconv.in.h instead of
9891         iconv_.h.
9892         * lib/inttypes.in.h: Renamed from lib/inttypes_.h.
9893         * modules/inttypes (Files, Makefile.am): Use inttypes.in.h instead of
9894         inttypes_.h.
9895         * lib/locale.in.h: Renamed from lib/locale_.h.
9896         * modules/locale (Files, Makefile.am): Use locale.in.h instead of
9897         locale_.h.
9898         * lib/math.in.h: Renamed from lib/math_.h.
9899         * modules/math (Files, Makefile.am): Use math.in.h instead of math_.h.
9900         * lib/netinet_in.in.h: Renamed from lib/netinet_in_.h.
9901         * modules/netinet_in (Files, Makefile.am): Use netinet_in.in.h instead
9902         of netinet_in_.h. Add dependency.
9903         * lib/poll.in.h: Renamed from lib/poll_.h.
9904         * modules/poll (Files, Makefile.am): Use poll.in.h instead of poll_.h.
9905         * lib/search.in.h: Renamed from lib/search_.h.
9906         * modules/search (Files, Makefile.am): Use search.in.h instead of
9907         search_.h.
9908         * lib/signal.in.h: Renamed from lib/signal_.h.
9909         * modules/signal (Files, Makefile.am): Use signal.in.h instead of
9910         _signal.h.
9911         * lib/stdbool.in.h: Renamed from lib/stdbool_.h.
9912         * modules/stdbool (Files, Makefile.am): Use stdbool.in.h instead of
9913         stdbool_.h.
9914         * lib/stdint.in.h: Renamed from lib/stdint_.h.
9915         * modules/stdint (Files, Makefile.am): Use stdint.in.h instead of
9916         stdint_.h.
9917         * lib/stdio.in.h: Renamed from lib/stdio_.h.
9918         * modules/stdio (Files, Makefile.am): Use stdio.in.h instead of
9919         stdio_.h.
9920         * lib/stdlib.in.h: Renamed from lib/stdlib_.h.
9921         * modules/stdlib (Files, Makefile.am): Use stdlib.in.h instead of
9922         stdlib_.h.
9923         * lib/string.in.h: Renamed from lib/string_.h.
9924         * modules/string (Files, Makefile.am): Use string.in.h instead of
9925         string_.h.
9926         * doc/gnulib-tool.texi (Initial import): Update.
9927         * lib/sys_select.in.h: Renamed from lib/sys_select_.h.
9928         * modules/sys_select (Files, Makefile.am): Use sys_select.in.h instead
9929         of sys_select_.h. Add dependency.
9930         * lib/sys_socket.in.h: Renamed from lib/sys_socket_.h.
9931         * modules/sys_socket (Files, Makefile.am): Use sys_socket.in.h instead
9932         of sys_socket_.h.
9933         * lib/sys_stat.in.h: Renamed from lib/sys_stat_.h.
9934         * modules/sys_stat (Files, Makefile.am): Use sys_stat.in.h instead of
9935         sys_stat_.h.
9936         * lib/sys_time.in.h: Renamed from lib/sys_time_.h.
9937         * modules/sys_time (Files, Makefile.am): Use sys_time.in.h instead of
9938         sys_time_.h.
9939         * lib/sysexits.in.h: Renamed from lib/sysexits_.h.
9940         * modules/sysexits (Files, Makefile.am): Use sysexits.in.h instead of
9941         sysexits_.h.
9942         * lib/time.in.h: Renamed from lib/time_.h.
9943         * modules/time (Files, Makefile.am): Use time.in.h instead of time_.h.
9944         * lib/unistd.in.h: Renamed from lib/unistd_.h.
9945         * modules/unistd (Files, Makefile.am): Use unistd.in.h instead of
9946         unistd_.h.
9947         * lib/wchar.in.h: Renamed from lib/wchar_.h.
9948         * modules/wchar (Files, Makefile.am): Use wchar.in.h instead of
9949         wchar_.h.
9950         * lib/wctype.in.h: Renamed from lib/wctype_.h.
9951         * modules/wctype (Files, Makefile.am): Use wctype.in.h instead of
9952         wctype_.h.
9953         * build-aux/bootstrap (slurp): Update.
9954         * lib/.cppi-disable: Update.
9955
9956 2007-09-30  Bruno Haible  <bruno@clisp.org>
9957
9958         * tests/test-getaddrinfo.c (AF_UNSPEC): Provide a fallback definition.
9959         Needed on BeOS.
9960
9961 2007-09-30  Bruno Haible  <bruno@clisp.org>
9962
9963         * modules/dirname-tests (check_PROGRAMS): Renamed from noinst_PROGRAMS.
9964
9965 2007-09-29  Bruno Haible  <bruno@clisp.org>
9966
9967         * lib/stdio_.h (getdelim, getline): Add identifiers. Doc tweak.
9968
9969 2007-09-29  Bruno Haible  <bruno@clisp.org>
9970
9971         * lib/xreadlink.c (xreadlink): Simplify to a wrapper around areadlink.
9972         * modules/xreadlink (Depends-on): Add areadlink, remove readlink etc.
9973         * build-aux/install-reloc: Compile also areadlink.c.
9974         * modules/relocatable-prog-wrapper (Files): Add lib/areadlink.[hc].
9975
9976 2007-09-29  Bruno Haible  <bruno@clisp.org>
9977
9978         * gnulib-tool (func_emit_initmacro_done): Indentation.
9979
9980 2007-09-29  Bruno Haible  <bruno@clisp.org>
9981
9982         * README: Add CVS checkout update instructions.
9983         Info from Bob Proulx <bob@proulx.com>.
9984
9985 2007-09-28  Eric Blake  <ebb9@byu.net>
9986
9987         Provide move-if-change.
9988         * build-aux/move-if-change: New file, based on best practice
9989         rather than any canonical upstream location.
9990
9991 2007-09-28  Jim Meyering  <jim@meyering.net>
9992
9993         Fix canonicalize loop-detection corner case.
9994         Do not attempt to stat the symlink values stored via seen_triple.
9995         Without this, coreutils' tests/misc/readlink-fp-loop test would fail
9996         on linux-2.6.18, (but not 2.6.22).
9997         * lib/canonicalize.c (seen_triple): Use triple_compare_ino_str, not
9998         triple_compare.  The former compares dev,ino,filename, while the latter
9999         would actually stat dirname(filename) when dev and ino were equal.
10000         * lib/hash-triple.c: Install <string.h>.
10001         (STREQ): Define.
10002         (triple_compare_ino_str): New function.
10003         * lib/hash-triple.h (triple_compare_ino_str): Declare it.
10004
10005 2007-09-28  Eric Blake  <ebb9@byu.net>
10006
10007         Enforce that AC_REPLACE_FUNCS files exist.
10008         * gnulib-tool (func_emit_initmacro_done): Make AC_LIBSOURCES
10009         override check for typos.
10010
10011         Fix test-closein on Solaris 10.
10012         * tests/test-closein.c (main): Don't assume stdin can be inherited
10013         closed on all systems.
10014         * tests/test-closein.sh: Likewise.
10015         Reported by Piotr Tarnowski.
10016
10017 2007-09-28  Jim Meyering  <jim@meyering.net>
10018
10019         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Fix typo in comment.
10020
10021 2007-09-27  Jim Meyering  <jim@meyering.net>
10022
10023         canonicalize: Avoid a false-positive cycle failure.
10024         * modules/canonicalize (Depends-on): Add file-set and hash-triple.
10025         Sort.  Remove cycle-check.
10026         * lib/canonicalize.c: Include file-set.h and hash-triple.h,
10027         not cycle-check.h.
10028         (seen_triple): New function.
10029         (canonicalize_filename_mode): Use it instead of cycle-check.
10030         * tests/test-canonicalize.c: Add a test for this bug.
10031         * tests/test-canonicalize.sh: Set up and run the test.
10032
10033         New module, file-set, from coreutils.
10034         * modules/file-set: Define it.
10035         * lib/file-set.c, lib/file-set.h: Implement.
10036
10037         New module, hash-triple, from coreutils.
10038         * modules/hash-triple: Define it.
10039         * lib/hash-triple.c, lib/hash-triple.h: Implement.
10040
10041 2007-09-25  Eric Blake  <ebb9@byu.net>
10042
10043         Fix strerror on Interix.
10044         * lib/string_.h (strerror): Declare replacement.
10045         * doc/functions/strerror.texi (strerror): Document the Interix
10046         shortcoming.
10047         * modules/string (Makefile.am): Support new hooks.
10048         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Add new hooks.
10049         * m4/strerror.m4 (gl_FUNC_STRERROR): Defer to
10050         gl_FUNC_STRERROR_SEPARATE.
10051         (gl_FUNC_STRERROR_SEPARATE): Check for Interix bug.
10052         * lib/strerror.c (rpl_strerror): Provide replacement.
10053         * modules/strerror (Depends-on): Add string.
10054         (configure.ac): Detect use of module.
10055         * tests/test-strerror.c: New file.
10056         * modules/strerror-tests: New test module.
10057         * modules/argp (Depends-on): Add strerror.
10058         * modules/error (Depends-on): Likewise.
10059         Reported by Martin Koeppe.
10060
10061 2007-09-24  Bruno Haible  <bruno@clisp.org>
10062
10063         * README: Update git instructions.
10064
10065 2007-09-24  Eric Blake  <ebb9@byu.net>
10066
10067         Revert fpending breakage from 2007-09-08.
10068         * m4/fpending.m4 (gl_FUNC_FPENDING): Don't require existence of
10069         __fpending.c.
10070
10071 2007-09-24  Jim Meyering  <jim@meyering.net>
10072
10073         filenamecat.c: Add a test.
10074         * lib/filenamecat.c (main) [TEST_FILE_NAME_CONCAT]: Add a test
10075         showing how the function works when DIR is the empty string.
10076
10077 2007-09-21  Simon Josefsson  <simon@josefsson.org>
10078
10079         * tests/test-canonicalize.sh: Turn on executable bit.
10080
10081 2007-09-19  Eric Blake  <ebb9@byu.net>
10082
10083         * README: Update CVS instructions.
10084
10085 2007-09-18  Bruno Haible  <bruno@clisp.org>
10086
10087         * modules/areadlink: New file.
10088         * lib/areadlink.h (areadlink): New declaration.
10089         * lib/areadlink.c: New file, based on lib/xreadlink.c.
10090
10091 2007-09-17  Jim Meyering  <jim@meyering.net>
10092
10093         * lib/savewd.c (ESTALE) [!defined]: Define.
10094         Reported to be required on Interix by Martin Koeppe.
10095
10096 2007-09-17  Bruno Haible  <bruno@clisp.org>
10097
10098         * gnulib-tool (func_version): Use $version.
10099
10100 2007-09-16  Bruno Haible  <bruno@clisp.org>
10101
10102         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE, gl_PRINTF_INFINITE,
10103         gl_PRINTF_INFINITE_LONG_DOUBLE): Increase buf's size from 100 to 10000.
10104         Needed on glibc-2.6.1 with -fstack-protector -D_FORTIFY_SOURCE=2.
10105         Reported by Greg Schafer <gschafer@zip.com.au>.
10106
10107 2007-09-15  Bruno Haible  <bruno@clisp.org>
10108
10109         * gnulib-tool (sed): Try a little harder to make bash understand the
10110         alias.
10111         Reported by Bruce Korb <bruce.korb@gmail.com>.
10112
10113 2007-09-13  Eric Blake  <ebb9@byu.net>
10114
10115         * ChangeLog: Remove conflict markers.
10116
10117 2007-09-13  Simon Josefsson  <simon@josefsson.org>
10118
10119         * lib/gc-gnulib.c (gc_hash_open): Catch NULL calloc return value.
10120         Reported by Bruno Haible <bruno@clisp.org>.
10121
10122 2007-09-12  Bruno Haible  <bruno@clisp.org>
10123
10124         * m4/lock.m4: Don't provide an AC_USE_SYSTEM_EXTENSIONS definition.
10125         (gl_LOCK_EARLY_BODY): Use AC_GNU_SOURCE when AC_USE_SYSTEM_EXTENSIONS
10126         is not defined.
10127
10128 2007-09-12  Eric Blake  <ebb9@byu.net>
10129
10130         Track CVS Autoconf on AC_USE_SYSTEM_EXTENSIONS.
10131         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Update to CVS
10132         Autoconf definition.
10133         * modules/euidaccess (Depends-on): Add extensions, for
10134         AC_USE_SYSTEM_EXTENSIONS with autoconf <= 2.59.
10135         * modules/fnmatch (Depends-on): Likewise.
10136         * modules/getaddrinfo (Depends-on): Likewise.
10137         * modules/getdelim (Depends-on): Likewise.
10138         * modules/getline (Depends-on): Likewise.
10139         * modules/getsubopt (Depends-on): Likewise.
10140         * modules/gettext (Depends-on): Likewise.
10141         * modules/group-member (Depends-on): Likewise.
10142         * modules/mbchar (Depends-on): Likewise.
10143         * modules/memmem (Depends-on): Likewise.
10144         * modules/mempcpy (Depends-on): Likewise.
10145         * modules/memrchr (Depends-on): Likewise.
10146         * modules/pagealign_alloc (Depends-on): Likewise.
10147         * modules/readutmp (Depends-on): Likewise.
10148         * modules/stpcpy (Depends-on): Likewise.
10149         * modules/stpncpy (Depends-on): Likewise.
10150         * modules/strchrnul (Depends-on): Likewise.
10151         * modules/strndup (Depends-on): Likewise.
10152         * modules/strsep (Depends-on): Likewise.
10153         * modules/strverscmp (Depends-on): Likewise.
10154         * modules/vasprintf (Depends-on): Likewise.
10155         * modules/wcwidth (Depends-on): Likewise.
10156         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): AC_GNU_SOURCE will be
10157         obsolete in Autoconf 2.62; use AC_USE_SYSTEM_EXTENSIONS instead.
10158         * m4/fnmatch.m4 (gl_FUNC_FNMATCH_GNU): Likewise.
10159         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDR_INFO): Likewise.
10160         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
10161         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
10162         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Likewise.
10163         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
10164         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER): Likewise.
10165         * m4/mbchar.m4 (gl_MBCHAR): Likewise.
10166         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
10167         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
10168         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
10169         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Likewise.
10170         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC): Likewise.
10171         * m4/readutmp.m4 (gl_READUTMP): Likewise.
10172         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
10173         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
10174         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
10175         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
10176         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
10177         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
10178         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
10179         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP): Likewise.
10180         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): Likewise.
10181         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
10182         * m4/lock.m4 (gl_LOCK_EARLY_BODY): Likewise, but provide fallback,
10183         so that lock.m4 can be used in gettext without extensions module.
10184
10185 2007-09-11  Bruno Haible  <bruno@clisp.org>
10186
10187         * m4/isc-posix.m4: Remove file.
10188         Suggested by Eric Blake.
10189
10190 2007-09-11  Eric Blake  <ebb9@byu.net>
10191
10192         * ChangeLog: Restore lines accidentally truncated 2007-04-06.
10193
10194 2007-09-10  Bruno Haible  <bruno@clisp.org>
10195
10196         * posix-modules: Fix typo in error message.
10197         Reported by Matt <mkraai@beckman.com>.
10198
10199 2007-09-09  Bruno Haible  <bruno@clisp.org>
10200
10201         * doc/functions/getdelim.texi: Update list of platforms lacking the
10202         function.
10203         * doc/functions/getline.texi: Likewise.
10204
10205 2007-09-09  Jim Meyering  <jim@meyering.net>
10206
10207         * lib/hash.c (hash_initialize): Detect calloc failure.
10208         Reported by Bruno Haible.
10209
10210 2007-09-09  Bruno Haible  <bruno@clisp.org>
10211
10212         * lib/canonicalize-lgpl.c (__realpath): Set errno to ENOMEM when
10213         malloc or realloc fails.
10214
10215 2007-09-09  Bruno Haible  <bruno@clisp.org>
10216
10217         * modules/getcwd (Depends-on): Add malloc-posix.
10218         * modules/glob (Depends-on): Likewise.
10219         * modules/putenv (Depends-on): Likewise.
10220         * modules/strdup (Depends-on): Likewise.
10221         * modules/getdelim (Depends-on): Add realloc-posix.
10222         * modules/read-file (Depends-on): Likewise.
10223
10224 2007-09-09  Bruno Haible  <bruno@clisp.org>
10225
10226         * m4/malloc.m4 (gl_CHECK_MALLOC_POSIX): New macro.
10227         (gl_FUNC_MALLOC_POSIX): Require it.
10228         * m4/realloc.m4 (gl_FUNC_REALLOC_POSIX): Likewise.
10229         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): Likewise.
10230         * modules/realloc (Files): Add m4/malloc.m4.
10231         * modules/calloc (Files): Likewise.
10232
10233 2007-09-09  Bruno Haible  <bruno@clisp.org>
10234
10235         * modules/malloc-posix: New file.
10236         * modules/malloc (Depends-on): Add malloc-posix.
10237         * lib/malloc.c: Include errno.h.
10238         (rpl_malloc): Merge the requirements of a glibc-compatible malloc
10239         and a POSIX-compatible malloc into a single function. Set ENOMEM
10240         when returning NULL.
10241         * m4/malloc.m4: New file.
10242         * doc/functions/malloc.texi: Mention the malloc-posix module.
10243         * lib/stdlib_.h (malloc): New declaration.
10244         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
10245         GNULIB_MALLOC_POSIX and HAVE_MALLOC_POSIX.
10246         * modules/stdlib (stdlib.h): Substitute also GNULIB_MALLOC_POSIX
10247         and HAVE_MALLOC_POSIX.
10248
10249 2007-09-09  Bruno Haible  <bruno@clisp.org>
10250
10251         * modules/realloc-posix: New file.
10252         * modules/realloc (Depends-on): Add realloc-posix.
10253         * lib/realloc.c: Include errno.h.
10254         (rpl_realloc): Merge the requirements of a glibc-compatible realloc
10255         and a POSIX-compatible realloc into a single function. Set ENOMEM
10256         when returning NULL.
10257         * m4/realloc.m4: New file.
10258         * doc/functions/realloc.texi: Mention the realloc-posix module.
10259         * lib/stdlib_.h (realloc): New declaration.
10260         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
10261         GNULIB_REALLOC_POSIX and HAVE_REALLOC_POSIX.
10262         * modules/stdlib (stdlib.h): Substitute also GNULIB_REALLOC_POSIX
10263         and HAVE_REALLOC_POSIX.
10264
10265 2007-09-09  Bruno Haible  <bruno@clisp.org>
10266
10267         * modules/calloc-posix: New file.
10268         * modules/calloc (Depends-on): Add calloc-posix.
10269         * lib/calloc.c: Include errno.h.
10270         (rpl_calloc): Merge the requirements of a glibc-compatible calloc
10271         and a POSIX-compatible calloc into a single function. Set ENOMEM
10272         when returning NULL.
10273         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): New macro.
10274         * doc/functions/calloc.texi: Mention the calloc-posix module.
10275         * lib/stdlib_.h (calloc): New declaration.
10276         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
10277         GNULIB_CALLOC_POSIX and HAVE_CALLOC_POSIX.
10278         * modules/stdlib (stdlib.h): Substitute also GNULIB_CALLOC_POSIX
10279         and HAVE_CALLOC_POSIX.
10280
10281 2007-09-09  Bruno Haible  <bruno@clisp.org>
10282
10283         Allow for modules to show an arbitrary notice.
10284         * modules/TEMPLATE-EXTENDED: Add 'Notice' field.
10285         * gnulib-tool: New option --extract-notice.
10286         (func_usage): Document it.
10287         (sed_extract_prog): Update.
10288         (func_get_notice): New function.
10289         (func_modules_notice): New function.
10290         (func_import, func_create_testdir): Invoke it.
10291         Suggested by Jim Meyering.
10292
10293 2007-09-09  Bruno Haible  <bruno@clisp.org>
10294
10295         * gnulib-tool: New options --verbose, --quiet.
10296         (func_usage): Document them.
10297         (verbose): New variable.
10298         (func_execute_command): New function.
10299         (func_import): Don't show the module list and the file list if
10300         $verbose < 0.
10301         (func_create_testdir): Likewise. Use func_execute_command.
10302         (func_create_megatestdir): Use func_execute_command.
10303
10304 2007-09-08  Bruno Haible  <bruno@clisp.org>
10305
10306         * gnulib-tool (func_import): Prefer rsync over wget when available,
10307         for fetching the PO files.
10308
10309 2007-09-08  Bruno Haible  <bruno@clisp.org>
10310
10311         * posix-modules: New file. Portions copied from gnulib-tool.
10312         * doc/gnulib.texi (POSIX Substitutes Library): New chapter.
10313
10314 2007-09-08  Jim Meyering  <jim@meyering.net>
10315
10316         Rename __fpending.c -> fpending.c and __fpending.h -> fpending.h
10317         * lib/fpending.h: Rename from __fpending.h.
10318         * lib/fpending.c: Rename from __fpending.c.
10319         Include "fpending.h", not "__fpending.h".
10320         * lib/__fpending.h, lib/__fpending.c: Remove files.
10321         * modules/fpending (Files): Reflect new file names.
10322         * lib/close-stream.c: Include "fpending.h", not "__fpending.h".
10323
10324 2007-09-08  Bruno Haible  <bruno@clisp.org>
10325
10326         * m4/inttypes-h.m4: Remove stub file.
10327
10328 2007-09-07  Simon Josefsson  <simon@josefsson.org>
10329
10330         * doc/headers/stdint.texi: Discuss #include_next issue.
10331
10332 2007-09-06  Paul Eggert  <eggert@cs.ucla.edu>
10333
10334         * build-aux/bootstrap: Remove obsolete comment about wget --help.
10335
10336 2007-09-06  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
10337
10338         * m4/time_h.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Fix misspelling
10339         in variable name.
10340
10341 2007-09-03  Jim Meyering  <jim@meyering.net>
10342
10343         New module: git-version-gen.
10344         * modules/git-version-gen: New file.
10345
10346         Import changes from coreutils for bootstrap script.
10347
10348         * build-aux/bootstrap (WGET_COMMAND): Remove code to set this variable.
10349
10350         bootstrap: uses rsync to download the .po files
10351         * build-aux/bootstrap (po_download_command_format): New global.
10352         (download_po_files): Use rsync.
10353         (update_po_files): Don't remove .po files after download,
10354         so future rsync runs can take advantage of the copies.
10355
10356         * build-aux/bootstrap (gnulib_tool): Make sha1sum check quietly.
10357
10358         Solve the unnecessary-.po-file-regeneration problem once and for all.
10359         * build-aux/bootstrap (download_po_files): New function, renamed from
10360         get_translations.  Now, downloads, but doesn't update LINGUAS.
10361         (update_po_files): New function.
10362
10363         bootstrap: Ignore more.
10364         * build-aux/bootstrap (symlink_to_dir): Add a directory name like
10365         uniwidth to e.g., lib/.gitignore.
10366         (slurp): Handle the sys_stat_.h -> sys mapping, too.
10367
10368         * build-aux/bootstrap: New setting: vc_ignore.
10369         (insert_sorted_if_absent): Create $file if absent.
10370         Adapt to new, possibly empty, list: $vc_ignore.
10371
10372         bootstrap: generate more ignorable names
10373         * build-aux/bootstrap (slurp): When generating ignorable names,
10374         also map .sin to .sed, .gperf to .c, and .y to .c.
10375
10376 2007-09-03  Jim Meyering  <jim@meyering.net>
10377
10378         * build-aux/git-version-gen: New file, from coreutils.  For details, see
10379         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commitdiff;h=bfe49f506
10380
10381 2007-09-02  Bruno Haible  <bruno@clisp.org>
10382
10383         Fix mis-recognition of 'mcs' on QNX 6.
10384         * m4/csharpcomp.m4 (gt_CSHARPCOMP): Test whether the "mcs --version"
10385         output contains the string "Mono".
10386         * lib/csharpcomp.c (compile_csharp_using_mono): Likewise.
10387         Reported by <kraai@ftbfs.org> at <https://savannah.gnu.org/bugs/?18337>.
10388
10389 2007-09-01  Bruno Haible  <bruno@clisp.org>
10390
10391         Fix collision between uniwidth/* and linebreak modules.
10392         * lib/linebreak.h (locale_charset, uc_width, u8_width, u16_width,
10393         u32_width): Remove declarations.
10394         * lib/linebreak.c: Include uniwidth.h, uniwidth/cjk.h, streq.h.
10395         (u32_mbtouc_unsafe, streq9, streq8, streq7, streq6, streq5, streq4,
10396         streq3, streq2, streq1, streq0): Remove functions.
10397         (STREQ): Remove macro.
10398         (is_cjk_encoding): Remove function.
10399         (nonspacing_table_data, nonspacing_table_ind): Remove constants.
10400         (uc_width, u8_width, u16_width, u32_width): Remove functions.
10401         * modules/linebreak (Depends-on): Add streq, uniwidth/width.
10402         * NEWS: Document the change.
10403
10404 2007-09-01  Bruno Haible  <bruno@clisp.org>
10405
10406         * lib/streq.h: Add double-inclusion guard.
10407
10408 2007-09-01  Karl Berry  <karl@gnu.org>
10409
10410         * MODULES.html.sh: Rename mreadlink_with_size to areadlink_with_size.
10411
10412 2007-08-28  Jim Meyering  <jim@meyering.net>
10413
10414         Rename mreadlink_with_size to areadlink_with_size.
10415         * NEWS: Document the change.
10416         * lib/mreadlink-with-size.c (mreadlink_with_size): Rename this to...
10417         * lib/areadlink-with-size.c (areadlink_with_size): ...this.
10418         * lib/mreadlink.h: Rename this to...
10419         * lib/areadlink.h: ...this.
10420         * modules/mreadlink-with-size: Rename this to...
10421         * modules/areadlink-with-size: ...this.
10422         * lib/canonicalize.c: Reflect the renaming.
10423         * modules/canonicalize: Likewise.
10424
10425 2007-08-26  Bruno Haible  <bruno@clisp.org>
10426
10427         * gnulib-tool (func_import): When deciding which files to remove,
10428         consider also dangling symbolic links.
10429         Reported by Eric Blake.
10430
10431 2007-08-26  Bruno Haible  <bruno@clisp.org>
10432
10433         * gnulib-tool (func_ln_if_changed): Use "test -h", not "test -L".
10434
10435 2007-08-23  Simon Josefsson  <simon@josefsson.org>
10436
10437         * lib/readline.c: Don't include getline.h, the prototype is now
10438         found in stdio.h.
10439
10440 2007-08-23  Jim Meyering  <jim@meyering.net>
10441
10442         Getdelim touchup.
10443         * lib/getdelim.c (getdelim): Don't bother to save/restore errno
10444         around the funlockfile call, since funlockfile never sets errno.
10445         Don't set errno upon failed realloc.
10446
10447 2007-08-22  Eric Blake  <ebb9@byu.net>
10448
10449         Getline touchups.
10450         * lib/getdelim.c (getdelim): Revert regression that required *n to
10451         be 0 when *lineptr is NULL.  Preserve errno across funlockfile.
10452         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Check for declaration of
10453         getdelim, rather than whether implementation is missing.
10454         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise for getline.
10455         * lib/stdio_.h (getline): Also declare if replacement is
10456         required.
10457         * doc/functions/getdelim.texi: New file.
10458         * doc/functions/getline.texi: Likewise.
10459         * doc/gnulib.texi (Function Substitutes): Add new files.
10460         Reported by Bruno Haible.
10461
10462 2007-08-22  Ludovic Courtès  <ludo@gnu.org>
10463
10464         * users.txt: Add Guile.
10465
10466 2007-08-22  Eric Blake  <ebb9@byu.net>
10467
10468         * tests/test-getdelim.c (main): Use remove, not unlink.
10469         * tests/test-getline.c (main): Likewise.
10470
10471         Move getline and getdelim into stdio.h, per POSIX 200x.
10472         * modules/getline (Files): Remove getline.h.
10473         (Depends-on): Add stdio.
10474         (configure.ac): Add module indicator.
10475         * modules/getdelim (Files): Remove getdelim.h.
10476         (Depends-on): Add stdio.
10477         (configure.ac): Add module indicator.
10478         * modules/stdio (Makefile.am): Work with new indicators.
10479         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Add new defaults.
10480         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Work with stdio needs.
10481         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
10482         * lib/getdelim.h: Delete.
10483         * lib/getline.h: Delete.
10484         * lib/stdio_.h (getdelim, getline): Declare.
10485         * modules/getdelim-tests: New module.
10486         * modules/getline-tests: Likewise.
10487         * tests/test-getdelim.c: New file.
10488         * tests/test-getline.c: Likewise.
10489         * NEWS: Document the change.
10490         * lib/getline.c: Update choice of header.
10491         * lib/csharpcomp.c: Likewise.
10492         * lib/getpass.c: Likewise.
10493         * lib/javacomp.c: Likewise.
10494         * lib/javaversion.c: Likewise.
10495         * lib/yesno.c: Likewise.
10496         * lib/getdelim.c: Likewise.
10497         (getdelim): Set errno on failure, and avoid memory leak.
10498
10499 2007-08-19  Bruno Haible  <bruno@clisp.org>
10500
10501         * modules/closein (Depends-on): Add freadahead.
10502         * lib/closein.c: Include freadahead.h.
10503         (close_stdin): Skip the fseeko and fflush calls if freadahead(stdin)
10504         is zero.
10505
10506 2007-08-19  Bruno Haible  <bruno@clisp.org>
10507
10508         * modules/freadahead-tests: New file.
10509         * tests/test-freadahead.sh: New file.
10510         * tests/test-freadahead.c: New file.
10511
10512         * modules/freadahead: New file.
10513         * lib/freadahead.h: New file.
10514         * lib/freadahead.c: New file.
10515         * MODULES.html.sh (File stream based Input/Output): Add freadahead,
10516         fbufmode, fpurge, freadable, fwritable.
10517
10518 2007-08-19  Eric Blake  <ebb9@byu.net>
10519
10520         Test yesno in combination with closein.
10521         * lib/yesno.c (yesno): Document use of stdin.
10522         * modules/yesno-tests (Files): New module.
10523         * tests/test-yesno.c (main): New file.
10524         * tests/test-yesno.sh: Likewise.
10525
10526 2007-08-19  Bruno Haible  <bruno@clisp.org>
10527
10528         * lib/fbufmode.c (fbufmode): Add tentative support for Solaris/AMD64.
10529         * lib/fseeko.c (rpl_fseeko): Likewise.
10530         * lib/fseterr.c (fseterr): Likewise.
10531
10532 2007-08-19  Bruno Haible  <bruno@clisp.org>
10533
10534         * tests/test-lseek.c (main): Disable a test for BeOS.
10535         * doc/functions/lseek.texi: Document the BeOS bug.
10536
10537 2007-08-19  Bruno Haible  <bruno@clisp.org>
10538             Eric Blake  <ebb9@byu.net>
10539
10540         * lib/lseek.c: Include <sys/stat.h>.
10541         (rpl_lseek): Add workaround code also for Unix platforms.
10542         Needed for BeOS.
10543         * m4/lseek.m4 (gl_FUNC_LSEEK): When cross-compiling, fail on BeOS.
10544         * doc/functions/lseek.texi: Document BeOS definiency.
10545
10546 2007-08-18  Bruno Haible  <bruno@clisp.org>
10547
10548         * modules/fstrcmp-tests: New file.
10549         * tests/test-fstrcmp.c: New file.
10550
10551 2007-08-18  Bruno Haible  <bruno@clisp.org>
10552
10553         * modules/fstrcmp: New file, from GNU gettext with modifications.
10554         * lib/fstrcmp.h: New file, from GNU gettext.
10555         * lib/fstrcmp.c: New file, from GNU gettext.
10556         * MODULES.html.sh (String handling): Add fstrcmp.
10557
10558 2007-08-18  Bruno Haible  <bruno@clisp.org>
10559
10560         * lib/diffseq.h (struct context): Change type of 'heuristic' field to
10561         'bool'.
10562         (diag, compareseq): Remove const from the ctxt argument.
10563         (USE_HEURISTIC): Undefine at the end.
10564
10565 2007-08-18  Jim Meyering  <jim@meyering.net>
10566
10567         New file: lib/idcache.h
10568         * NEWS: Mention the addition.
10569         * modules/idcache (Files): Add lib/idcache.h
10570         * lib/idcache.c: Include "idcache.h".
10571         Don't include <sys/types.h>.
10572         Add a FIXME comment.
10573         Move file-scoped "static" declarations to the top.
10574         * lib/idcache.h: New file.  Include <sys/types.h> here, instead.
10575
10576 2007-08-17  Bruno Haible  <bruno@clisp.org>
10577         and Paul Eggert  <eggert@cs.ucla.edu>
10578
10579         * MODULES.html.sh: Add diffseq.
10580         * modules/diffseq: New file.
10581         * lib/diffseq.h: New file, from GNU gettext with a few minor changes,
10582         extracted from GNU gettext's fstrcmp.c and GNU diff's analyze.c.
10583
10584 2007-08-15  Paul Eggert  <eggert@cs.ucla.edu>
10585
10586         Import changes from coreutils for bootstrap script.
10587
10588         2007-07-21  Paul Eggert  <eggert@cs.ucla.edu>
10589
10590         * build-aux/bootstrap (slurp): Work even in environments where
10591         "ls" defaults to "ls -A".  Put in a FIXME, though, since the
10592         current code does not slurp files whose names start with ".", and
10593         this looks like it might be a troublesome area.
10594
10595         2007-07-11  Jim Meyering  <jim@meyering.net>
10596
10597         If there's a GPL vN copyright comment, require that N == 3.
10598
10599         2007-07-08  Jim Meyering  <jim@meyering.net>
10600
10601         Run the coreutils-specific code only if tests/Makefile.am.in exists.
10602         * build-aux/bootstrap (mam_template): Move definition out of loop.
10603
10604         Create symlinks for gl/{lib,m4}/*, just as for gnulib/{lib,m4}/*.
10605
10606         * build-aux/bootstrap (symlink_to_dir): Rename function from
10607         symlink_to_gnulib.  Add a directory parameter.  Update all
10608         callers.
10609         (cp_mark_as_generated): Also check for -- and link to -- files in
10610         gl/.
10611
10612         2007-07-08  Jim Meyering  <jim@meyering.net>
10613
10614         Adapt to deeper hierarchy in gnulib.
10615         * build-aux/bootstrap (symlink_to_dir): If the destination
10616         directory doesn't exist, create it. This is required at least for
10617         "lib/uniwidth/cjk.h".
10618
10619         2007-05-15  Jim Meyering  <jim@meyering.net>
10620
10621         * build-aux/bootstrap: Now that generated Makefile.am files
10622         are no longer under version control, they must be created at
10623         bootstrap time.
10624
10625 2007-08-14  Ben Pfaff  <blp@gnu.org>
10626
10627         * lib/count-one-bits.h: Add comments.  From Bruno Haible.
10628
10629 2007-08-14  Paul Eggert  <eggert@cs.ucla.edu>
10630
10631         * lib/count-one-bits.h: Don't include <limits.h>; no longer needed
10632         given the changes below.
10633         (COUNT_ONE_BITS): Use 'verify' rather than 'verify_true'.  Work
10634         even on hosts that have padding bits beyond the supported 64.
10635
10636 2007-08-10  Paul Eggert  <eggert@cs.ucla.edu>
10637
10638         * NEWS: In xstrtol, remove STRTOL_FATAL_ERROR and add xstrtol_fatal.
10639         * lib/xstrtol.h: Don't include exitfail.h; that's now internal to
10640         xstrtol.c.  Include getopt.h, since xstrtol_fatal's signature
10641         depends on it.
10642         (xstrtol_error): Remove.
10643         (xstrtol_fatal): New decl, replacing the functionality of xstrtol_error
10644         but with a different signature.
10645         (ATTRIBUTE_NORETURN, __attribute__): New macros.
10646         * lib/xstrtol-error.c: Include exitfail.h.
10647         (xstrtol_fatal): New function, with a different signature from the
10648         old xstrtol_error, so that the caller need not worry about passing
10649         in an exit status, or about storage management of the option argument.
10650         (xstrtol_error): Now a static function.  Redo signature to
10651         implement xstrtol_fatal.  Output the correct number of hyphens in
10652         front of the option so that the caller need not worry about
10653         storage management.
10654         (N_): New macro.
10655         (_): Remove; not used now.
10656         * modules/xstrtol: Depend on getopt.
10657         * tests/test-xstrtol.c (main): Use new xstrtol_error function instead
10658         of old STRTOL_FATAL_ERROR macro.
10659         * tests/test-xstrtol.sh (t-xstrtol.xo): Adjust to match new behavior
10660         of test program.
10661         * tests/test-xstrtoimax.sh (t-xstrtoimax.xo): Likewise.
10662         * tests/test-xstrtoumax.sh (t-xstrtoumax.xo): Likewise.
10663
10664 2007-08-08  Eric Blake  <ebb9@byu.net>
10665
10666         * lib/xstrtol-error.c: Add missing include.
10667
10668         Move xstrtol messages into gnulib domain, when --pobase is used.
10669         * lib/xstrtol.h (_STRTOL_ERROR): Move messages out of macro...
10670         * lib/xstrtol-error.c (xstrtol_error): ...into new file.
10671         * modules/xstrtol (Files): Distribute new file.
10672         * m4/xstrtol.m4 (gl_XSTRTOL): Build new file.
10673         * lib/xstrtol.c (TESTING_XSTRTO): Move tests...
10674         * tests/test-xstrtol.c: ...into new file.
10675         * tests/test-xstrtoul.c: Also test xstrtoul.
10676         * tests/test-xstrtoimax.c: Also test xstrtoimax.
10677         * tests/test-xstrtoumax.c: Also test xstrtoumax.
10678         * tests/test-xstrtol.sh: Drive the tests.
10679         * tests/test-xstrtoimax.sh: Likewise.
10680         * tests/test-xstrtoumax.sh: Likewise.
10681         * modules/xstrtol-tests: New module.
10682         * modules/xstrtoimax-tests: Likewise.
10683         * modules/xstrtoumax-tests: Likewise.
10684
10685 2007-08-08  Jim Meyering  <jim@meyering.net>
10686
10687         New function: mfile_name_concat.
10688         * lib/filenamecat.c (mfile_name_concat): New function, just like
10689         file_name_concat, but return NULL upon failure rather than exiting
10690         with a diagnostic.
10691         * lib/filenamecat.h: Declare it.
10692
10693 2007-08-07  Bruno Haible  <bruno@clisp.org>
10694
10695         * m4/inttypes.m4 (gl_INTTYPES_H): Use GL_TRIGGER_STDC_LIMIT_MACROS
10696         instead of __STDC_LIMIT_MACROS_TRIGGER. This avoids a redefinition
10697         warning from gcc.
10698         Reported by Eric Blake.
10699
10700 2007-08-07  Simon Josefsson  <simon@josefsson.org>
10701
10702         * modules/crypto/arctwo (License): Use the synonymous term "LGPLv2+".
10703         * modules/crypto/arcfour (License): Likewise.
10704         * modules/crypto/des-tests (License): Likewise.
10705         * modules/crypto/gc-arctwo-tests (License): Likewise.
10706         * modules/crypto/gc-des-tests (License): Likewise.
10707         * modules/crypto/gc-hmac-md5-tests (License): Likewise.
10708         * modules/crypto/gc-hmac-sha1-tests (License): Likewise.
10709         * modules/crypto/gc-md2-tests (License): Likewise.
10710         * modules/crypto/gc-md4-tests (License): Likewise.
10711         * modules/crypto/gc-md5-tests (License): Likewise.
10712         * modules/crypto/gc-pbkdf2-sha1-tests (License): Likewise.
10713         * modules/crypto/gc-rijndael-tests (License): Likewise.
10714         * modules/crypto/gc-sha1-tests (License): Likewise.
10715         * modules/crypto/gc-tests (License): Likewise.
10716         * modules/crypto/hmac-md5 (License): Likewise.
10717         * modules/crypto/hmac-sha1 (License): Likewise.
10718         * modules/crypto/md2-tests (License): Likewise.
10719         * modules/crypto/md4-tests (License): Likewise.
10720         * modules/crypto/md5 (License): Likewise.
10721         * modules/crypto/rijndael (License): Likewise.
10722         * modules/crypto/sha1 (License): Likewise.
10723         * modules/memxor (License): Likewise.
10724
10725 2007-08-06  Paul Eggert  <eggert@cs.ucla.edu>
10726         and Bruno Haible  <bruno@clisp.org>
10727
10728         * NEWS: Describe interface changes to human, xstrtol.
10729         * lib/human.h: Include <xstrtol.h>.
10730         (human_options): Return enum strtol_error, not int.  Remove
10731         bool arg; take int * instead.
10732         * lib/human.c: Don't include "gettext.h".
10733         (_): Remove; no longer used.
10734         Don't include <xstrtol.h>, since human.h does it.
10735         (human_options): Adjust to abovementioned interface changes.
10736         Do not report error to stderr; that's now the caller's
10737         responsibility.
10738         * lib/xstrtol.c (main) [defined TESTING_XSTRTO]: Adjust to
10739         interface change.
10740         * lib/xstrtol.h (_STRTOL_ERROR): Take Option, Arg rather than
10741         Str, Argument_type_string.  All uses changed.  Put " argument"
10742         in diagnostics to make them clearer.  Change wording of suffix
10743         message for clarity.
10744         (STRTOL_FATAL_ERROR): Take Option, Arg rather than Str,
10745         Argument_type_string.
10746         (STRTOL_FATAL_WARN): Remove; no longer used.
10747         * modules/human (Depends-on): Remove gettext-h.
10748
10749 2007-08-06  Simon Josefsson  <simon@josefsson.org>
10750
10751         * build-aux/maint.mk, build-aux/GNUmakefile: Relicense to GPLv3+.
10752
10753 2007-07-31  Bruno Haible  <bruno@clisp.org>
10754
10755         * m4/stdint.m4 (gl_STDINT_H): Test whether WCHAR_MIN and WCHAR_MAX
10756         are defined by <stdint.h> (as opposed to <wchar.h>, as on Dragonfly).
10757         Reported by Joerg Sonnenberger <joerg@britannica.bec.de>.
10758
10759 2007-07-31  Bruno Haible  <bruno@clisp.org>
10760
10761         * lib/fflush.c (rpl_fflush): On BSD systems, use the __SNPT flag.
10762         Suggested by Joerg Sonnenberger <joerg@britannica.bec.de>.
10763
10764 2007-07-30  Bruno Haible  <bruno@clisp.org>
10765
10766         * modules/base64 (License): Use the synonymous term "LGPLv2+".
10767         * modules/c-ctype (License): Likewise.
10768         * modules/c-strcase (License): Likewise.
10769         * modules/check-version (License): Likewise.
10770         * modules/iconv (License): Likewise.
10771         * modules/iconv_open (License): Likewise.
10772         * modules/read-file (License): Likewise.
10773         * modules/striconv (License): Likewise.
10774         * modules/strverscmp (License): Likewise.
10775         * modules/vasprintf (License): Likewise.
10776         * modules/crypto/des (License): Likewise.
10777         * modules/crypto/gc (License): Likewise.
10778         * modules/crypto/gc-arcfour (License): Likewise.
10779         * modules/crypto/gc-arctwo (License): Likewise.
10780         * modules/crypto/gc-des (License): Likewise.
10781         * modules/crypto/gc-hmac-md5 (License): Likewise.
10782         * modules/crypto/gc-hmac-sha1 (License): Likewise.
10783         * modules/crypto/gc-md2 (License): Likewise.
10784         * modules/crypto/gc-md4 (License): Likewise.
10785         * modules/crypto/gc-md5 (License): Likewise.
10786         * modules/crypto/gc-pbkdf2-sha1 (License): Likewise.
10787         * modules/crypto/gc-random (License): Likewise.
10788         * modules/crypto/gc-rijndael (License): Likewise.
10789         * modules/crypto/gc-sha1 (License): Likewise.
10790         * modules/crypto/md2 (License): Likewise.
10791         * modules/crypto/md4 (License): Likewise.
10792
10793 2007-07-30  Jim Meyering  <jim@meyering.net>
10794
10795         * lib/fts.c (fts_read): Upon failure to chdir into a subdirectory,
10796         set fts_info to FTS_DNR, not to FTS_ERR, so that the caller knows
10797         it has valid stat data.  This bug would cause du not to count the
10798         sizes of inaccessible directories.
10799         Patch by Bryan Mason <bmason@redhat.com>, via Jose Maria Plans
10800         in <http://bugzilla.redhat.com/250077>.
10801
10802 2007-07-25  Peter O'Gorman  <peter@pogma.com>
10803             Bruno Haible  <bruno@clisp.org>
10804
10805         * m4/include_next.m4 (gl_INCLUDE_NEXT): Test whether #include_next
10806         really works. Needed because AIX 4.3 "xlc -E" doesn't understand
10807         #include_next, gives a diagnostic about it, but reports no error in
10808         the exit code.
10809         Reported by Gary V. Vaughan <gary@thewrittenword.com>.
10810
10811 2007-07-24  Ben Pfaff  <blp@gnu.org>
10812
10813         Improve name: "count-one-bits" is better than "popcount".
10814         * MODULES.html.sh: Update name.
10815         * lib/popcount.h: Renamed lib/count-one-bits.h.
10816         (popcount): Renamed count_one_bits.
10817         (popcountl): Renamed count_one_bits_l.
10818         (popcountll): Renamed count_one_bits_ll.
10819         * m4/popcount.m4: Renamed m4/count-one-bits.m4.
10820         * modules/popcount: Renamed module/count-one-bits.
10821         * modules/popcount-tests: Renamed module/count-one-bits-tests.
10822         * tests/test-popcount.c: Renamed tests/test-count-one-bits.c.
10823
10824 2007-07-23  Ben Pfaff  <blp@gnu.org>
10825
10826         * lib/popcount.h (popcount32): Reduce size of constants, to allow
10827         better code generation, and add U to large constants to avoid
10828         warnings, in non-GCC case.
10829         Suggested by Bruno Haible.
10830
10831 2007-07-23  Ben Pfaff  <blp@gnu.org>
10832
10833         * lib/popcount.h: Use verify_true instead of if...abort.
10834         * modules/popcount: Depend on verify module.
10835         Suggested by Jim Meyering.
10836
10837 2007-07-23  Bruno Haible  <bruno@clisp.org>
10838
10839         * gnulib-tool (func_import): Create a .cvsignore file also when the
10840         directory is not yet in CVS but the toplevel directory is. When
10841         creating a .cvsignore file, add ".deps" and ".dirstamp" to it.
10842         Reported by Karl Berry.
10843
10844 2007-07-22  Ben Pfaff  <blp@gnu.org>
10845
10846         * lib/popcount.h: Use faster, branchless algorithm for non-GCC
10847         case.
10848         Suggested by Eric Blake.
10849
10850 2007-07-22  Ben Pfaff  <blp@gnu.org>
10851
10852         New module: popcount.
10853         * MODULES.html.sh: Add popcount.
10854         * modules/popcount: New file.
10855         * modules/popcount-tests: New file.
10856         * tests/test-popcount.c: New file.
10857         * lib/popcount.h: New file.
10858         * m4/popcount.m4: New file.
10859
10860 2007-07-22  Paul Eggert  <eggert@cs.ucla.edu>
10861
10862         * build-aux/announce-gen: Update to GPLv3.
10863
10864         * build-aux/config.guess: Update from config.
10865
10866 2007-07-21  Bruno Haible  <bruno@clisp.org>
10867
10868         * lib/error.c (_) [ENABLE_NLS]: Define to gettext.
10869         * lib/verror.c (_) [ENABLE_NLS]: Likewise.
10870
10871 2007-07-20  Jim Meyering  <jim@meyering.net>
10872
10873         * check-module: Diagnose a self-dependency.
10874
10875 2007-07-19  Bruno Haible  <bruno@clisp.org>
10876
10877         * gnulib-tool (func_import): Don't abort if pobase or po_domain is
10878         empty.
10879         Reported by Eric Blake.
10880
10881 2007-07-18  Bruno Haible  <bruno@clisp.org>
10882
10883         * gnulib-tool: New options --po-base, --po-domain.
10884         (func_usage): Document them.
10885         (pobase, po_domain): New variables.
10886         (func_emit_lib_Makefile_am): Augment AM_CPPFLAGS, defining
10887         DEFAULT_TEXT_DOMAIN.
10888         (func_emit_po_Makevars, func_emit_po_POTFILES_in): New functions.
10889         (func_import): Consider pobase and po_domain. Create a po/ directory.
10890         (func_create_testdir): Set pobase and po_domain to empty.
10891         * build-aux/po/Makefile.in.in: New file, from GNU gettext 0.16.1.
10892         * build-aux/po/remove-potcdate.sin: New file, from GNU gettext 0.16.1.
10893
10894 2007-07-18  Bruno Haible  <bruno@clisp.org>
10895
10896         * gnulib-tool (func_get_automake_snippet): Synthesize also an
10897         EXTRA_DIST augmentation for files in build-aux/.
10898
10899 2007-07-16  Bruno Haible  <bruno@clisp.org>
10900
10901         * modules/lseek (License): Use the synonymous term "LGPLv2+".
10902         * modules/getdelim (License): Likewise.
10903
10904 2007-07-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
10905
10906         * modules/arpa_inet (License): Use the synonymous term LGPLv2+.
10907         * modules/d-type (License): Likewise.
10908         * modules/extensions (License): Likewise.
10909         * modules/fnmatch (License): Likewise.
10910         * modules/fseeko (License): Likewise.
10911         * modules/getaddrinfo (License): Likewise.
10912         * modules/getline (License): Likewise.
10913         * modules/getlogin_r (License): Likewise.
10914         * modules/getpass (License): Likewise.
10915         * modules/gettimeofday (License): Likewise.
10916         * modules/glob (License): Likewise.
10917         * modules/inet_ntop (License): Likewise.
10918         * modules/malloc (License): Likewise.
10919         * modules/malloca (License): Likewise.
10920         * modules/memmem (License): Likewise.
10921         * modules/mempcpy (License): Likewise.
10922         * modules/memset (License): Likewise.
10923         * modules/minmax (License): Likewise.
10924         * modules/mktime (License): Likewise.
10925         * modules/netinet_in (License): Likewise.
10926         * modules/pathmax (License): Likewise.
10927         * modules/poll (License): Likewise.
10928         * modules/regex (License): Likewise.
10929         * modules/snprintf (License): Likewise.
10930         * modules/stdbool (License): Likewise.
10931         * modules/stdint (License): Likewise.
10932         * modules/stdio (License): Likewise.
10933         * modules/strcase (License): Likewise.
10934         * modules/strcasestr (License): Likewise.
10935         * modules/strdup (License): Likewise.
10936         * modules/string (License): Likewise.
10937         * modules/strndup (License): Likewise.
10938         * modules/strnlen (License): Likewise.
10939         * modules/strpbrk (License): Likewise.
10940         * modules/strptime (License): Likewise.
10941         * modules/strsep (License): Likewise.
10942         * modules/sys_select (License): Likewise.
10943         * modules/sys_socket (License): Likewise.
10944         * modules/sys_stat (License): Likewise.
10945         * modules/sys_time (License): Likewise.
10946         * modules/time (License): Likewise.
10947         * modules/time_r (License): Likewise.
10948         * modules/timegm (License): Likewise.
10949         * modules/unistd (License): Likewise.
10950         * modules/vsnprintf (License): Likewise.
10951         * modules/wctype (License): Likewise.
10952
10953 2007-07-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10954
10955         * modules/argz (License): LGPLv2+.
10956
10957 2007-07-15  Karl Berry  <karl@gnu.org>
10958
10959         * doc/gnulib.texi: revise node structure per new fdl.texi.
10960
10961 2007-07-14  Bruno Haible  <bruno@clisp.org>
10962
10963         * lib/uniname/gen-uninames.lisp (main): Emit a "do not edit" line to
10964         the output file.
10965         * lib/uniname/uninames.h: Regenerated.
10966
10967 2007-07-14  Karl Berry  <karl@gnu.org>
10968
10969         * doc/*gpl*.texi, doc/fdl.texi: new versions, consistently
10970         omitting sectioning and index commands.
10971
10972 2007-07-13  Bruno Haible  <bruno@clisp.org>
10973
10974         New gnulib-tool option --more-symlinks.
10975         * gnulib-tool (func_usage): Document --more-symlinks.
10976         (do_copyrights): New variable.
10977         Recognize option --more-symlinks.
10978         (func_import): Don't add a copyright notice transform to
10979         sed_transform_lib_file if do_copyrights is empty.
10980
10981 2007-07-13  Bruno Haible  <bruno@clisp.org>
10982
10983         * lib/vasnprintf.c (decimal_point_char): Define also if
10984         (NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_INFINITE_DOUBLE)
10985         && !NEED_PRINTF_DIRECTIVE_A.
10986         Reported by Clemens Koller <clemens.koller@anagramm.de> via
10987         Gary V. Vaughan <gary@gnu.org>.
10988
10989 2007-07-13  Paul Eggert  <eggert@cs.ucla.edu>
10990
10991         * lib/inttypes_.h: Undo previous change, since it was fixed
10992         in a different way in the 2007-07-02 fix to m4/inttypes.m4.
10993
10994 2007-07-13  Bruno Haible  <bruno@clisp.org>
10995
10996         * lib/stdint_.h: Fix typo: _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H was
10997         misspelled as _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H.
10998
10999 2007-07-13  Jim Meyering  <jim@meyering.net>
11000
11001         df: Don't fail for Tru64's "file-on-file mount".
11002         * m4/fsusage.m4 (gl_FSUSAGE): Reject Tru64's buggy statvfs,
11003         so we fall through and use statfs instead.  Details here:
11004         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/10878>
11005         Reported by Albert Chin.
11006
11007 2007-07-13  Bruno Haible  <bruno@clisp.org>
11008
11009         * modules/alloca-opt (License): Use the synonymous term "LGPLv2+".
11010         * modules/configmake (License): Likewise.
11011         * modules/gettext (License): Likewise.
11012         * modules/gettext-h (License): Likewise.
11013         * modules/include_next (License): Likewise.
11014         * modules/link-warning (License): Likewise.
11015         * modules/localcharset (License): Likewise.
11016         * modules/localename (License): Likewise.
11017         * modules/lock (License): Likewise.
11018         * modules/relocatable-lib-lgpl (License): Likewise.
11019         * modules/size_max (License): Likewise.
11020         * modules/vasnprintf (License): Likewise.
11021         * modules/wchar (License): Likewise.
11022         * modules/xsize (License): Likewise.
11023
11024 2007-07-13  Bruno Haible  <bruno@clisp.org>
11025
11026         * gnulib-tool (func_import): Treat LGPLv2 as synonymous to LGPL.
11027         (func_create_testdir): Handle copying terms "GPLv2+" and "LGPLv2+".
11028
11029 2007-07-12  Bruno Haible  <bruno@clisp.org>
11030
11031         * doc/gnulib-intro.texi (Copyright): Clarify the license abbreviations
11032         in the modules files.
11033
11034 2007-07-11  Karl Berry  <karl@gnu.org>
11035
11036         * MODULES.html.sh (func_module): use
11037          sed -e '\|^'"${includefile}"'$|d'
11038          instead of /.../d, to avoid errors on $includefile's containing /.
11039
11040 2007-07-10  Sergey Poznyakoff  <gray@gnu.org.ua>
11041
11042         * gnulib-tool (func_import): Avoid duplication of --avoid
11043         statements
11044         (func_dest_tmpfilename,func_create_testdir): Translate `-' in file
11045         names to `_' in variable names.
11046
11047 2007-07-10  Eric Blake  <ebb9@byu.net>
11048
11049         * lib/version-etc.c (version_etc_va): Default to GPLv3+.
11050         * NEWS: Document this change.
11051
11052 2007-07-08  Bruno Haible  <bruno@clisp.org>
11053
11054         Update to Unicode 5.0.
11055         * lib/uniwidth/width.c (nonspacing_table_data): Add U+00AD,
11056         U+0350..U+035F, U+05A2, U+05BA, U+05C5, U+05C7, U+0600..U+0603,
11057         U+0610..U+0615, U+0656..U+065E, U+07EB..U+07F3, U+0A01, U+0AE2..U+0AE3,
11058         U+0CBC. Remove U+0CBF, U+0CC6. Add U+0CE2..U+0CE3, U+135F,
11059         U+17B4..U+17B5, U+17DD. Remove U+180E. Add U+1920..U+1922,
11060         U+1927..U+192B, U+1932, U+1939..U+193B, U+1A17..U+1A18, U+1B00..U+1B03,
11061         U+1B34, U+1B36..U+1B3A, U+1B3C, U+1B42, U+1B6B..U+1B73, U+1DC0..U+1DCA,
11062         U+1DFE..U+1DFF, U+20EB..U+20EF, U+A802, U+A806, U+A80B, U+A825..U+A826,
11063         U+10A01..U+10A03, U+10A05..U+10A06, U+10A0C..U+10A0F, U+10A38..U+10A3A,
11064         U+10A3F, U+1D242..U+1D244.
11065         (nonspacing_table_ind): Update.
11066         (uc_width): Assign width 0 to U+E0100..U+E01EF. Assign width 1 to
11067         U+4DC0..U+4DFF. Assign width 2 to U+2329..U+232A, U+FE10..U+FE1F.
11068
11069 2007-07-08  Bruno Haible  <bruno@clisp.org>
11070
11071         Update to Unicode 5.0.
11072         * lib/uniname/gen-uninames.lisp (main): Add the range 0x12xxx to the
11073         code transform. Extend the name index field of unicode_name_to_code and
11074         unicode_code_to_name from 16 to 24 bits.
11075         * lib/uniname/uniname.c (unicode_character_name,
11076         unicode_name_character): Add the range 0x12xxx to the code transform.
11077         * lib/uniname/uninames.h: Regenerated.
11078         * tests/uniname/UnicodeDataNames.txt: Update to Unicode 5.0.
11079
11080 2007-07-07  Bruno Haible  <bruno@clisp.org>
11081
11082         * modules/wcwidth-tests: New file.
11083         * tests/test-wcwidth.c: New file.
11084
11085         Work around MacOS X wcwidth() bug.
11086         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Test against MacOS X 10.3 bug.
11087         * lib/wcwidth.c: Include localcharset.h, streq.h, uniwidth.h.
11088         (rpl_wcwidth): Special-case the UTF-8 locales. Fall back to the
11089         original wcwidth in non-UTF-8 locales.
11090         * modules/wcwidth (Depends-on): Add localcharset, streq,
11091         uniwidth/width.
11092         * doc/functions/wcwidth.texi: Update.
11093
11094 2007-07-07  Bruno Haible  <bruno@clisp.org>
11095
11096         * lib/wchar_.h: Include the GL_LINK_WARNING macro.
11097         (wcwidth): New declaration.
11098         * m4/wchar.m4 (gl_WCHAR_MODULE_INDICATOR, gl_WCHAR_H_DEFAULTS): New
11099         macros.
11100         (gl_WCHAR_H): Require gl_WCHAR_H_DEFAULTS. Don't set WCHAR_H to empty
11101         here. Prepare for creating <wchar.h> unconditionally.
11102         * modules/wchar (Depends-on): Add link-warning.
11103         (Makefile.am): Substitute also GNULIB_WCWIDTH, HAVE_DECL_WCWIDTH,
11104         REPLACE_WCWIDTH, and GL_LINK_WARNING.
11105         * lib/wcwidth.h: Remove file.
11106         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gl_WCHAR_H_DEFAULTS. Set
11107         HAVE_DECL_WCWIDTH, REPLACE_WCWIDTH, WCHAR_H.
11108         * modules/wcwidth (Files): Remove lib/wcwidth.h.
11109         (configure.ac): Invoke gl_WCHAR_MODULE_INDICATOR.
11110         (Include): Replace wcwidth.h with <wchar.h>.
11111         * lib/wcwidth.c: Include <wchar.h> instead of wcwidth.h.
11112         * lib/mbchar.h: Don't include wcwidth.h.
11113         * lib/mbswidth.c: Likewise.
11114         * NEWS: Mention the change.
11115
11116 2007-07-07  Bruno Haible  <bruno@clisp.org>
11117
11118         * lib/wcwidth.c: New file, extracted from lib/wcwidth.h.
11119         * lib/wcwidth.h: Don't include wctype.h. Replace inline function
11120         definition with an external declaration.
11121         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Use wcwidth.c when wcwidth is not
11122         defined as a function. Remove AC_C_INLINE requirement.
11123         * modules/wcwidth (Files): Add lib/wcwidth.c.
11124         (Makefile.am): Remove redundant statement.
11125
11126 2007-07-07  Bruno Haible  <bruno@clisp.org>
11127
11128         * MODULES.html.sh (Unicode string functions): Add the new modules.
11129
11130         * tests/uniwidth/test-u32-strwidth.c: New file.
11131         * modules/uniwidth/u32-strwidth-tests: New file.
11132
11133         * lib/uniwidth/u32-strwidth.c: New file.
11134         * modules/uniwidth/u32-strwidth: New file.
11135
11136         * tests/uniwidth/test-u16-strwidth.c: New file.
11137         * modules/uniwidth/u16-strwidth-tests: New file.
11138
11139         * lib/uniwidth/u16-strwidth.c: New file.
11140         * modules/uniwidth/u16-strwidth: New file.
11141
11142         * tests/uniwidth/test-u8-strwidth.c: New file.
11143         * modules/uniwidth/u8-strwidth-tests: New file.
11144
11145         * lib/uniwidth/u8-strwidth.c: New file.
11146         * modules/uniwidth/u8-strwidth: New file.
11147
11148         * tests/uniwidth/test-u32-width.c: New file.
11149         * modules/uniwidth/u32-width-tests: New file.
11150
11151         * lib/uniwidth/u32-width.c: New file.
11152         * modules/uniwidth/u32-width: New file.
11153
11154         * tests/uniwidth/test-u16-width.c: New file.
11155         * modules/uniwidth/u16-width-tests: New file.
11156
11157         * lib/uniwidth/u16-width.c: New file.
11158         * modules/uniwidth/u16-width: New file.
11159
11160         * tests/uniwidth/test-u8-width.c: New file.
11161         * modules/uniwidth/u8-width-tests: New file.
11162
11163         * lib/uniwidth/u8-width.c: New file.
11164         * modules/uniwidth/u8-width: New file.
11165
11166         * tests/uniwidth/test-uc_width.c: New file.
11167         * modules/uniwidth/width-tests: New file.
11168
11169         * lib/uniwidth/width.c: New file, from GNU libiconv.
11170         * lib/uniwidth/cjk.h: New file, from GNU libiconv.
11171         * modules/uniwidth/width: New file.
11172
11173         * lib/uniwidth.h: New file, from GNU libiconv.
11174         * modules/uniwidth/base: New file.
11175
11176 2007-07-07  Bruno Haible  <bruno@clisp.org>
11177
11178         * lib/uniname.h: New file, from GNU gettext.
11179         * lib/uniname/gen-uninames.lisp: New file, from GNU gettext.
11180         * lib/uniname/uninames.h: New file, from GNU gettext.
11181         * lib/uniname/uniname.c: New file, from GNU gettext.
11182         * tests/uniname/test-uninames.sh: New file.
11183         * tests/uniname/test-uninames.c: New file, from GNU gettext.
11184         * tests/uniname/UnicodeDataNames.txt: New file, from GNU gettext.
11185         * modules/uniname/base: New file.
11186         * modules/uniname/uniname: New file.
11187         * modules/uniname/uniname-tests: New file.
11188         * MODULES.html.sh (Unicode string functions): Add the new modules.
11189
11190 2007-07-06  Bruno Haible  <bruno@clisp.org>
11191
11192         * doc/Makefile (TEXI2HTML): Specify a --reference-limit.
11193
11194 2007-07-06  Bruno Haible  <bruno@clisp.org>
11195
11196         * lib/sys_time_.h: Use a recursion-safe inclusion guard rather than
11197         a split double-inclusion guard. Needed for cygwin, where <sys/time.h>
11198         includes <cygwin/sys_time.h> which includes <sys/select.h> which
11199         include <sys/time.h>.
11200         Reported by Eric Blake.
11201
11202 2007-07-06  Eric Blake  <ebb9@byu.net>
11203
11204         Fix testing canonicalize on cygwin.
11205         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
11206         Revert patch from 2007-06-19.
11207         * tests/test-canonicalize-lgpl.c (main): Instead, skip test when
11208         canonicalize module is also in use.
11209         * tests/test-canonicalize.c: New file.
11210         * tests/test-canonicalize.sh: Likewise.
11211         * modules/canonicalize-tests: Likewise.
11212
11213 2007-07-06  Jim Meyering  <jim@meyering.net>
11214
11215         * lib/getugroups.c (getugroups): Detect getgrent failure.
11216         Adjust comment to reflect reality: this function may return -1.
11217
11218 2007-07-05  Sergey Poznyakoff  <gray@gnu.org.ua>
11219
11220         * build-aux/bootstrap (TP_URL,get_translations): Update to use
11221         the new TP address.
11222         (usage): Fix typo
11223         (gnulib_mk): New variable.
11224
11225 2007-07-05  Jim Meyering  <jim@meyering.net>
11226
11227         Don't let endgrent clobber errno, no matter how improbable.
11228         * lib/getugroups.c (getugroups): Save and restore errno around
11229         endgrent call.
11230
11231         Close the group DB even when failing with 2^31 or more members.
11232         * lib/getugroups.c (getugroups): Don't return without calling endgrent.
11233
11234 2007-07-04  Jim Meyering  <jim@meyering.net>
11235
11236         * lib/getugroups.h: New file.
11237         * lib/getugroups.c: Include "getugroups.h".
11238         Remove uses of "register" keyword.
11239         Move local variable, "cp", down into scope where used.
11240         Give "username" parameter the "const" attribute.
11241         * modules/getugroups (Files): Add lib/getugroups.h
11242
11243 2007-07-04  Karl Berry  <karl@gnu.org>
11244
11245         * MODULES.html.sh (func_all_modules): Complete rename of
11246         gpl/lgpl to gpl-2.0 and lgpl-2.1, and add gpl-3.0.
11247
11248 2007-07-02  Bruno Haible  <bruno@clisp.org>
11249
11250         * m4/inttypes.m4 (gl_INTTYPES_H): Define __STDC_LIMIT_MACROS in C++
11251         mode, when inttypes.h comes from gnulib.
11252         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
11253
11254 2007-07-02  Simon Josefsson  <simon@josefsson.org>
11255
11256         * NEWS: Mention lgpl module name change.
11257
11258         * modules/lgpl-2.1: Renamed from lgpl.
11259
11260         * NEWS: Mention gpl module name change.
11261
11262         * modules/gpl-3.0: New file, based on gpl-2.0.
11263
11264         * modules/gpl-2.0: Renamed from gpl.
11265
11266         * modules/gpl: Fix filename, doc/gpl.texi is now found at
11267         doc/gpl-2.0.texi.
11268
11269 2007-07-02  Paul Eggert  <eggert@cs.ucla.edu>
11270
11271         * lib/inttypes_.h [defined __cplusplus&&!defined __STDC_LIMIT_MACROS]:
11272         #define __STDC_LIMIT_MACROS temporarily while including
11273         <stdint.h>, so that __STDC_LIMIT_MACROS is defined.
11274         Problem reported by Joel E. Denny in
11275         <http://lists.gnu.org/archive/html/bug-gnulib/2007-07/msg00008.html>.
11276
11277 2007-07-01  Bruno Haible  <bruno@clisp.org>
11278
11279         * lib/unistdio.h: New file.
11280         * lib/unistdio/u-asnprintf.h: New file.
11281         * lib/unistdio/u-asprintf.h: New file.
11282         * lib/unistdio/u-printf-args.c: New file.
11283         * lib/unistdio/u-printf-args.h: New file.
11284         * lib/unistdio/u-printf-parse.h: New file.
11285         * lib/unistdio/u-snprintf.h: New file.
11286         * lib/unistdio/u-sprintf.h: New file.
11287         * lib/unistdio/u-vasprintf.h: New file.
11288         * lib/unistdio/u-vsnprintf.h: New file.
11289         * lib/unistdio/u-vsprintf.h: New file.
11290         * lib/unistdio/ulc-asnprintf.c: New file.
11291         * lib/unistdio/ulc-asprintf.c: New file.
11292         * lib/unistdio/ulc-fprintf.c: New file, based on lib/fprintf.c.
11293         * lib/unistdio/ulc-printf-parse.c: New file.
11294         * lib/unistdio/ulc-snprintf.c: New file.
11295         * lib/unistdio/ulc-sprintf.c: New file.
11296         * lib/unistdio/ulc-vasnprintf.c: New file.
11297         * lib/unistdio/ulc-vasprintf.c: New file.
11298         * lib/unistdio/ulc-vfprintf.c: New file, based on lib/vfprintf.c.
11299         * lib/unistdio/ulc-vsnprintf.c: New file.
11300         * lib/unistdio/ulc-vsprintf.c: New file.
11301         * lib/unistdio/u8-asnprintf.c: New file.
11302         * lib/unistdio/u8-asprintf.c: New file.
11303         * lib/unistdio/u8-printf-parse.c: New file.
11304         * lib/unistdio/u8-snprintf.c: New file.
11305         * lib/unistdio/u8-sprintf.c: New file.
11306         * lib/unistdio/u8-vasnprintf.c: New file.
11307         * lib/unistdio/u8-vasprintf.c: New file.
11308         * lib/unistdio/u8-vsnprintf.c: New file.
11309         * lib/unistdio/u8-vsprintf.c: New file.
11310         * lib/unistdio/u8-u8-asnprintf.c: New file.
11311         * lib/unistdio/u8-u8-asprintf.c: New file.
11312         * lib/unistdio/u8-u8-snprintf.c: New file.
11313         * lib/unistdio/u8-u8-sprintf.c: New file.
11314         * lib/unistdio/u8-u8-vasnprintf.c: New file.
11315         * lib/unistdio/u8-u8-vasprintf.c: New file.
11316         * lib/unistdio/u8-u8-vsnprintf.c: New file.
11317         * lib/unistdio/u8-u8-vsprintf.c: New file.
11318         * lib/unistdio/u16-asnprintf.c: New file.
11319         * lib/unistdio/u16-asprintf.c: New file.
11320         * lib/unistdio/u16-printf-parse.c: New file.
11321         * lib/unistdio/u16-snprintf.c: New file.
11322         * lib/unistdio/u16-sprintf.c: New file.
11323         * lib/unistdio/u16-vasnprintf.c: New file.
11324         * lib/unistdio/u16-vasprintf.c: New file.
11325         * lib/unistdio/u16-vsnprintf.c: New file.
11326         * lib/unistdio/u16-vsprintf.c: New file.
11327         * lib/unistdio/u16-u16-asnprintf.c: New file.
11328         * lib/unistdio/u16-u16-asprintf.c: New file.
11329         * lib/unistdio/u16-u16-snprintf.c: New file.
11330         * lib/unistdio/u16-u16-sprintf.c: New file.
11331         * lib/unistdio/u16-u16-vasnprintf.c: New file.
11332         * lib/unistdio/u16-u16-vasprintf.c: New file.
11333         * lib/unistdio/u16-u16-vsnprintf.c: New file.
11334         * lib/unistdio/u16-u16-vsprintf.c: New file.
11335         * lib/unistdio/u32-asnprintf.c: New file.
11336         * lib/unistdio/u32-asprintf.c: New file.
11337         * lib/unistdio/u32-printf-parse.c: New file.
11338         * lib/unistdio/u32-snprintf.c: New file.
11339         * lib/unistdio/u32-sprintf.c: New file.
11340         * lib/unistdio/u32-vasnprintf.c: New file.
11341         * lib/unistdio/u32-vasprintf.c: New file.
11342         * lib/unistdio/u32-vsnprintf.c: New file.
11343         * lib/unistdio/u32-vsprintf.c: New file.
11344         * lib/unistdio/u32-u32-asnprintf.c: New file.
11345         * lib/unistdio/u32-u32-asprintf.c: New file.
11346         * lib/unistdio/u32-u32-snprintf.c: New file.
11347         * lib/unistdio/u32-u32-sprintf.c: New file.
11348         * lib/unistdio/u32-u32-vasnprintf.c: New file.
11349         * lib/unistdio/u32-u32-vasprintf.c: New file.
11350         * lib/unistdio/u32-u32-vsnprintf.c: New file.
11351         * lib/unistdio/u32-u32-vsprintf.c: New file.
11352         * tests/unistdio/test-ulc-asnprintf1.c: New file.
11353         * tests/unistdio/test-ulc-asnprintf1.h: New file.
11354         * tests/unistdio/test-ulc-printf1.h: New file.
11355         * tests/unistdio/test-ulc-vasnprintf1.c: New file.
11356         * tests/unistdio/test-ulc-vasnprintf2.c: New file.
11357         * tests/unistdio/test-ulc-vasnprintf2.sh: New file.
11358         * tests/unistdio/test-ulc-vasnprintf3.c: New file.
11359         * tests/unistdio/test-ulc-vasnprintf3.sh: New file.
11360         * tests/unistdio/test-ulc-vasprintf1.c: New file.
11361         * tests/unistdio/test-ulc-vsnprintf1.c: New file.
11362         * tests/unistdio/test-ulc-vsprintf1.c: New file.
11363         * tests/unistdio/test-u8-asnprintf1.c: New file.
11364         * tests/unistdio/test-u8-asnprintf1.h: New file.
11365         * tests/unistdio/test-u8-printf1.h: New file.
11366         * tests/unistdio/test-u8-vasnprintf1.c: New file.
11367         * tests/unistdio/test-u8-vasnprintf2.c: New file.
11368         * tests/unistdio/test-u8-vasnprintf2.sh: New file.
11369         * tests/unistdio/test-u8-vasnprintf3.c: New file.
11370         * tests/unistdio/test-u8-vasnprintf3.sh: New file.
11371         * tests/unistdio/test-u8-vasprintf1.c: New file.
11372         * tests/unistdio/test-u8-vsnprintf1.c: New file.
11373         * tests/unistdio/test-u8-vsprintf1.c: New file.
11374         * tests/unistdio/test-u16-asnprintf1.c: New file.
11375         * tests/unistdio/test-u16-asnprintf1.h: New file.
11376         * tests/unistdio/test-u16-printf1.h: New file.
11377         * tests/unistdio/test-u16-vasnprintf1.c: New file.
11378         * tests/unistdio/test-u16-vasnprintf2.c: New file.
11379         * tests/unistdio/test-u16-vasnprintf2.sh: New file.
11380         * tests/unistdio/test-u16-vasnprintf3.c: New file.
11381         * tests/unistdio/test-u16-vasnprintf3.sh: New file.
11382         * tests/unistdio/test-u16-vasprintf1.c: New file.
11383         * tests/unistdio/test-u16-vsnprintf1.c: New file.
11384         * tests/unistdio/test-u16-vsprintf1.c: New file.
11385         * tests/unistdio/test-u32-asnprintf1.c: New file.
11386         * tests/unistdio/test-u32-asnprintf1.h: New file.
11387         * tests/unistdio/test-u32-printf1.h: New file.
11388         * tests/unistdio/test-u32-vasnprintf1.c: New file.
11389         * tests/unistdio/test-u32-vasnprintf2.c: New file.
11390         * tests/unistdio/test-u32-vasnprintf2.sh: New file.
11391         * tests/unistdio/test-u32-vasnprintf3.c: New file.
11392         * tests/unistdio/test-u32-vasnprintf3.sh: New file.
11393         * tests/unistdio/test-u32-vasprintf1.c: New file.
11394         * tests/unistdio/test-u32-vsnprintf1.c: New file.
11395         * tests/unistdio/test-u32-vsprintf1.c: New file.
11396         * modules/unistdio/base: New file.
11397         * modules/unistdio/u-printf-args: New file.
11398         * modules/unistdio/ulc-asnprintf: New file.
11399         * modules/unistdio/ulc-asprintf: New file.
11400         * modules/unistdio/ulc-fprintf: New file.
11401         * modules/unistdio/ulc-printf-parse: New file.
11402         * modules/unistdio/ulc-snprintf: New file.
11403         * modules/unistdio/ulc-sprintf: New file.
11404         * modules/unistdio/ulc-vasnprintf: New file.
11405         * modules/unistdio/ulc-vasprintf: New file.
11406         * modules/unistdio/ulc-vfprintf: New file.
11407         * modules/unistdio/ulc-vsnprintf: New file.
11408         * modules/unistdio/ulc-vsprintf: New file.
11409         * modules/unistdio/u8-asnprintf: New file.
11410         * modules/unistdio/u8-asprintf: New file.
11411         * modules/unistdio/u8-printf-parse: New file.
11412         * modules/unistdio/u8-snprintf: New file.
11413         * modules/unistdio/u8-sprintf: New file.
11414         * modules/unistdio/u8-vasnprintf: New file.
11415         * modules/unistdio/u8-vasprintf: New file.
11416         * modules/unistdio/u8-vsnprintf: New file.
11417         * modules/unistdio/u8-vsprintf: New file.
11418         * modules/unistdio/u8-u8-asnprintf: New file.
11419         * modules/unistdio/u8-u8-asprintf: New file.
11420         * modules/unistdio/u8-u8-snprintf: New file.
11421         * modules/unistdio/u8-u8-sprintf: New file.
11422         * modules/unistdio/u8-u8-vasnprintf: New file.
11423         * modules/unistdio/u8-u8-vasprintf: New file.
11424         * modules/unistdio/u8-u8-vsnprintf: New file.
11425         * modules/unistdio/u8-u8-vsprintf: New file.
11426         * modules/unistdio/u16-asnprintf: New file.
11427         * modules/unistdio/u16-asprintf: New file.
11428         * modules/unistdio/u16-printf-parse: New file.
11429         * modules/unistdio/u16-snprintf: New file.
11430         * modules/unistdio/u16-sprintf: New file.
11431         * modules/unistdio/u16-vasnprintf: New file.
11432         * modules/unistdio/u16-vasprintf: New file.
11433         * modules/unistdio/u16-vsnprintf: New file.
11434         * modules/unistdio/u16-vsprintf: New file.
11435         * modules/unistdio/u16-u16-asnprintf: New file.
11436         * modules/unistdio/u16-u16-asprintf: New file.
11437         * modules/unistdio/u16-u16-snprintf: New file.
11438         * modules/unistdio/u16-u16-sprintf: New file.
11439         * modules/unistdio/u16-u16-vasnprintf: New file.
11440         * modules/unistdio/u16-u16-vasprintf: New file.
11441         * modules/unistdio/u16-u16-vsnprintf: New file.
11442         * modules/unistdio/u16-u16-vsprintf: New file.
11443         * modules/unistdio/u32-asnprintf: New file.
11444         * modules/unistdio/u32-asprintf: New file.
11445         * modules/unistdio/u32-printf-parse: New file.
11446         * modules/unistdio/u32-snprintf: New file.
11447         * modules/unistdio/u32-sprintf: New file.
11448         * modules/unistdio/u32-vasnprintf: New file.
11449         * modules/unistdio/u32-vasprintf: New file.
11450         * modules/unistdio/u32-vsnprintf: New file.
11451         * modules/unistdio/u32-vsprintf: New file.
11452         * modules/unistdio/u32-u32-asnprintf: New file.
11453         * modules/unistdio/u32-u32-asprintf: New file.
11454         * modules/unistdio/u32-u32-snprintf: New file.
11455         * modules/unistdio/u32-u32-sprintf: New file.
11456         * modules/unistdio/u32-u32-vasnprintf: New file.
11457         * modules/unistdio/u32-u32-vasprintf: New file.
11458         * modules/unistdio/u32-u32-vsnprintf: New file.
11459         * modules/unistdio/u32-u32-vsprintf: New file.
11460         * modules/unistdio/ulc-asnprintf-tests: New file.
11461         * modules/unistdio/ulc-vasnprintf-tests: New file.
11462         * modules/unistdio/ulc-vasprintf-tests: New file.
11463         * modules/unistdio/ulc-vsnprintf-tests: New file.
11464         * modules/unistdio/ulc-vsprintf-tests: New file.
11465         * modules/unistdio/u8-asnprintf-tests: New file.
11466         * modules/unistdio/u8-vasnprintf-tests: New file.
11467         * modules/unistdio/u8-vasprintf-tests: New file.
11468         * modules/unistdio/u8-vsnprintf-tests: New file.
11469         * modules/unistdio/u8-vsprintf-tests: New file.
11470         * modules/unistdio/u16-asnprintf-tests: New file.
11471         * modules/unistdio/u16-vasnprintf-tests: New file.
11472         * modules/unistdio/u16-vasprintf-tests: New file.
11473         * modules/unistdio/u16-vsnprintf-tests: New file.
11474         * modules/unistdio/u16-vsprintf-tests: New file.
11475         * modules/unistdio/u32-asnprintf-tests: New file.
11476         * modules/unistdio/u32-vasnprintf-tests: New file.
11477         * modules/unistdio/u32-vasprintf-tests: New file.
11478         * modules/unistdio/u32-vsnprintf-tests: New file.
11479         * modules/unistdio/u32-vsprintf-tests: New file.
11480         * MODULES.html.sh (Unicode string functions): Add the new modules.
11481
11482 2007-07-01  Bruno Haible  <bruno@clisp.org>
11483
11484         * lib/sprintf.c (sprintf): Limit the available length estimation,
11485         to avoid address wraparound.
11486         * lib/vsprintf.c (vsprintf): Likewise.
11487         * modules/sprintf-posix (Dependencies): Add stdint.
11488         * modules/vsprintf-posix (Dependencies): Likewise.
11489
11490 2007-07-01  Bruno Haible  <bruno@clisp.org>
11491
11492         * gnulib-tool (self_abspathname): Determine PATH_SEPARATOR and handle
11493         Windows PATH as well. Conservative double-quoting. Comments.
11494
11495 2007-07-01  Bruno Haible  <bruno@clisp.org>
11496             Eric Blake  <ebb9@byu.net>
11497             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11498
11499         * gnulib-tool (self_abspathname): Fix algorithm to cope with
11500         empty components in $PATH, denoting '.'.
11501
11502 2007-07-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11503
11504         * gnulib-tool: Fix indentation.
11505         (func_create_megatestdir): Likewise.
11506         Report by Bruno Haible.
11507
11508 2007-06-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11509
11510         Sync from Automake.
11511         * build-aux/gnupload: Fix shell portability issues with for loops.
11512         Report by Karl Berry.
11513
11514 2007-06-29  Simon Josefsson  <simon@josefsson.org>
11515
11516         * build-aux/maint.mk (POURL): Use translationproject.org.
11517
11518 2007-06-27  Simon Josefsson  <simon@josefsson.org>
11519             Bruno Haible  <bruno@clisp.org>
11520
11521         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Require gl_HEADER_SYS_SOCKET
11522         before using HAVE_WS2TCPIP_H. Check for gai_strerror through an
11523         explicit link test, rather than AC_REPLACE_FUNCS - for mingw.
11524         (gl_PREREQ_GETADDRINFO): Require gl_HEADER_SYS_SOCKET before using
11525         HAVE_SYS_SOCKET_H and HAVE_WS2TCPIP_H.
11526
11527 2007-06-27  Bruno Haible  <bruno@clisp.org>
11528
11529         * build-aux/config.rpath: Upgrade to libtool-1.5.24.
11530         * build-aux/config.libpath: Upgrade to libtool-1.5.24.
11531
11532 2007-06-26  Karl Berry  <karl@gnu.org>
11533
11534         * MODULES.html.sh: remove xreadlink-with-size.
11535
11536 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
11537
11538         * lib/time_.h: Port to Solaris 8 with Sun Studio 11, using a
11539         method that I hope also handles the double-include problem noted
11540         by Bruno Haible in
11541         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00186.html>.
11542
11543 2007-06-23  Bruno Haible  <bruno@clisp.org>
11544
11545         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
11546         Don't let the 'mostlyclean' target fail if the last subdirectory could
11547         not be removed.
11548         Reported by Karl Berry.
11549
11550 2007-06-23  Bruno Haible  <bruno@clisp.org>
11551
11552         * gnulib-tool (echo): Add a speedier workaround for ksh.
11553         * tests/test-echo.sh: Likewise.
11554
11555 2007-06-23  Bruno Haible  <bruno@clisp.org>
11556
11557         * gnulib-tool (echo): Add workarounds also for bash versions < 2.04.
11558         * tests/test-echo.sh: Likewise.
11559
11560 2007-06-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11561
11562         * gnulib-tool (IFS): Initialize early, so we don't set it to
11563         empty later.
11564         (self_abspathname): Rewrite algorithm to set it, reindent.
11565         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am)
11566         (func_create_megatestdir): Merge some sed scripts.
11567
11568 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
11569
11570         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Check some typos
11571         exposed by Sun Studio 11 cc on Solaris 8.
11572
11573 2007-06-22  Bruno Haible  <bruno@clisp.org>
11574
11575         * gnulib-tool (echo): Ensure the echo primitive does not interpret
11576         backslashes.
11577         * tests/test-echo.sh: New file.
11578
11579 2007-06-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11580
11581         * gnulib-tool (func_add_or_update, func_create_testdir): Do not
11582         simplify `sed_replace_build_aux' scripts, they are portable but
11583         echoing them with `echo' is not.
11584         Report and analysis by Fernando Ferreira <fernando.prog@netcabo.pt>.
11585
11586 2007-06-21  Karl Berry  <karl@gnu.org>
11587
11588         * config/srclist.txt: guess we can't handle the licenses via
11589         srclist at the moment.
11590
11591 2007-06-21  Paul Eggert  <eggert@cs.ucla.edu>
11592
11593         * MODULES.html.sh: Add include_next.
11594         * modules/include_next: New file.
11595
11596 2007-06-20  Paul Eggert  <eggert@cs.ucla.edu>
11597
11598         * m4/include_next.m4 (gl_INCLUDE_NEXT): Define and AC_SUBST
11599         INCLUDE_NEXT.
11600         (gl_CHECK_NEXT_HEADERS): New macro.
11601         * m4/fcntl_h.m4 (gl_FCNTL_H): use gl_CHECK_NEXT_HEADERS instead of
11602         the obsolescent gl_ABSOLUTE_HEADER.
11603         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Likewise.
11604         * m4/float_h.m4 (gl_FLOAT_H): Likewise.
11605         * m4/iconv_h.m4 (gl_ICONV_H): Likewise.
11606         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
11607         * m4/locale_h.m4 (gl_LOCALE_H): Likewise.
11608         * m4/math_h.m4 (gl_MATH_H): Likewise.
11609         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Likewise.
11610         * m4/search_h.m4 (gl_SEARCH_H): Likewise.
11611         * m4/signal_h.m4 (gl_SIGNAL_H): Likewise.
11612         * m4/stdint.m4 (gl_STDINT_H): Likewise.
11613         * m4/stdio_h.m4 (gl_STDIO_H): Likewise.
11614         * m4/stdlib_h.m4 (gl_STDLIB_H): Likewise.
11615         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Likewise.
11616         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
11617         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
11618         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Likewise.
11619         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Likewise.
11620         * m4/sysexits.m4 (gl_SYSEXITS): Likewise.
11621         * m4/time_h.m4 (gl_HEADER_TIME_H_BODY): Likewise.
11622         * m4/unistd_h.m4 (gl_UNISTD_H): Likewise.
11623         * m4/wchar.m4 (gl_WCHAR_H): Likewise.
11624         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
11625         * m4/inttypes.m4 (gl_INTTYPES_H): Define
11626         _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H to avoid the problem of unclean
11627         builds, since ABSOLUTE_INTTYPES_H is no longer being defined.
11628         * m4/stdint.m4 (gl_STDINT_H): Likewise, for
11629         _GL_JUST_INCLUDE_SYSTEM_STDINT_H.
11630         * lib/fcntl_.h: Use @INCLUDE_NEXT@ @NEXT_foo_H@
11631         rather than @HAVE_INCLUDE_NEXT@ and @ABSOLUTE_foo_H@.
11632         * lib/float_.h: Likewise.
11633         * lib/inttypes_.h: Likewise.
11634         * lib/math_.h: Likewise.
11635         * lib/search_.h: Likewise.
11636         * lib/signal_.h: Likewise.
11637         * lib/stdint_.h: Likewise.
11638         * lib/stdio_.h: Likewise.
11639         * lib/stdlib_.h: Likewise.
11640         * lib/string_.h: Likewise.
11641         * lib/sys_stat_.h: Likewise.
11642         * lib/sys_time_.h: Likewise.
11643         * lib/time_.h: Likewise.
11644         * lib/unistd_.h: Likewise.
11645         * lib/wchar_.h: Likewise.
11646         * lib/wctype_.h: Likewise.
11647         * lib/dirent_.h: Likewise.
11648         * lib/iconv_.h: Likewise.
11649         * lib/locale_.h: Likewise.
11650         * lib/netinet_in_.h: Likewise.
11651         * lib/sys_select_.h: Likewise.
11652         * lib/sys_socket_.h: Likewise.
11653         * lib/sysexits_.h: Likewise.
11654         * modules/fcntl (Depends-on): Depend on include_next, not
11655         absolute_header.
11656         (Makefile): Substitute INCLUDE_NEXT and NEXT_foo_H, not
11657         HAVE_INCLUDE_NEXT and ABSOLUTE_foo_H.
11658         * modules/fchdir: Likewise.
11659         * modules/float: Likewise.
11660         * modules/iconv_open: Likewise.
11661         * modules/inttypes: Likewise.
11662         * modules/locale: Likewise.
11663         * modules/math: Likewise.
11664         * modules/netinet_in: Likewise.
11665         * modules/search: Likewise.
11666         * modules/signal: Likewise.
11667         * modules/stdint: Likewise.
11668         * modules/stdio: Likewise.
11669         * modules/stdlib: Likewise.
11670         * modules/string: Likewise.
11671         * modules/sys_select: Likewise.
11672         * modules/sys_socket: Likewise.
11673         * modules/sys_stat: Likewise.
11674         * modules/sys_time: Likewise.
11675         * modules/sysexits: Likewise.
11676         * modules/time: Likewise.
11677         * modules/unistd: Likewise.
11678         * modules/wchar: Likewise.
11679         * modules/wctype: Likewise.
11680         * modules/sys_stat: Change maintainer to "all".
11681         * modules/unistd: Likewise.
11682
11683 2007-06-20  Karl Berry  <karl@gnu.org>
11684
11685         * config/srclist.txt: track www changes in license files.
11686
11687 2007-06-20  Sergey Poznyakoff  <gray@gnu.org.ua>
11688
11689         * build-aux/bootstrap: Remove stray dot.
11690         Make sure build_aux settings are honored when linking
11691         gnulib_extra_files.
11692
11693 2007-06-19  Eric Blake  <ebb9@byu.net>
11694
11695         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
11696         Allow compilation on cygwin.
11697
11698 2007-06-19  Jim Meyering  <jim@meyering.net>
11699
11700         xreadlink-with-size: Remove module.  No longer used.
11701         Ex-callers now use xreadlink or mreadlink-with-size.
11702         * modules/xreadlink-with-size: Remove module.
11703         * lib/xreadlink-with-size.c: Remove file.
11704         * lib/xreadlink.h (xreadlink_with_size): Remove prototype.
11705         (xreadlink): Remove inaccurate comment.  The one in xreadlink.c,
11706         just before the function definition *is* accurate.
11707
11708         Eliminate one way canonicalize_filename_mode could exit.
11709         * lib/canonicalize.c (canonicalize_filename_mode):
11710         Use mreadlink_with_size, not xreadlink_with_size.
11711
11712 2007-06-18  Paul Eggert  <eggert@cs.ucla.edu>
11713
11714         Detect porting problems to FreeBSD/arm, which has time_t wider than
11715         long int.  Original problem reported for GNU diff by Xin Li in
11716         <http://lists.gnu.org/archive/html/bug-gnu-utils/2007-06/msg00091.html>.
11717         * modules/getdate (Depends-on): Add intprops, verify.
11718         * lib/getdate.y: Include intprops.h, verify.h.  Verify that time_t
11719         is an integer type no wider than long int.
11720
11721 2007-06-18  Jim Meyering  <jim@meyering.net>
11722
11723         New module: mreadlink-with-size.
11724         * MODULES.html.sh: Add mreadlink-with-size.
11725         * modules/mreadlink-with-size: New module
11726         * modules/canonicalize (Depends-on): Depend on mreadlink-with-size,
11727         not xreadlink-with-size.
11728         * lib/mreadlink-with-size.c, lib/mreadlink.h: New files.
11729
11730 2007-06-16  Bruno Haible  <bruno@clisp.org>
11731
11732         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Catch the MacOS X 10.4 bug.
11733         * doc/functions/frexpl.texi: Document the MacOS X 10.4 bug.
11734         Reported by Gary V. Vaughan <gary@gnu.org>.
11735
11736 2007-06-15  Paul Eggert  <eggert@cs.ucla.edu>
11737
11738         Revamp lchown so that it lives in unistd.h where it belongs.
11739         * lib/lchown.h: Remove.
11740         * lib/dirchownmod.c: Don't include lib/lchown.h.
11741         * lib/fchownat.c: Likewise.
11742         * lib/openat.c: Likewise.
11743         * lib/lchown.c (REPLACE_CHOWN): Define to 0 if the system chown
11744         does not follow symlinks.
11745         (EOPNOTSUPP): Define if not defined.
11746         * lib/unistd_.h (chown): Do not replace if REPLADE_CHOWN
11747         is defined to 0.
11748         (lchown): New decl.
11749         * m4/lchown.m4 (gl_FUNC_LCHOWN): Require gl_UNISTD_H_DEFAULTS.
11750         Do not check for lchown decl.
11751         Set REPLACE_LCHOWN.
11752         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Set GNULIB_LCHOWN,
11753         REPLACE_LCHOWN.
11754         * modules/chown: Make it clear it follows symlinks.
11755         * modules/lchown: Make it clear it doesn't follow symlinks.
11756         (Files): Remove lib/lchown.h
11757         (Depends-on): Add unistd.
11758         (configure.ac): Add gl_UNISTD_MODULE_INDICATOR([lchown]).
11759         (Include): Include <unistd.h>, not "lchown.h".
11760         * modules/unistd (unistd.h): Substitude GNULIB_LCHOWN and
11761         REPLACE_LCHOWN.
11762
11763 2007-06-15  Jim Meyering  <jim@meyering.net>
11764
11765         Change license (GPL to LGPL) of fsusage and dependents.
11766         * modules/fsusage (License): Change to LGPL.
11767         * modules/full-read (License): Likewise.
11768         * modules/full-write (License): Likewise.
11769         * modules/safe-read (License): Likewise.
11770         * modules/safe-write (License): Likewise.
11771
11772 2007-06-14  Ben Pfaff  <blp@gnu.org>
11773
11774         Missing part of allocsa -> malloca transition.
11775         * modules/relocatable-prog-wrapper: gl_ALLOCSA should be
11776         gl_MALLOCA.
11777
11778 2007-06-12  Bruno Haible  <bruno@clisp.org>
11779
11780         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Guess no when cross-compiling
11781         to ia64, x86_64, i386.
11782         Reported by Eric Blake.
11783
11784 2007-06-12  Bruno Haible  <bruno@clisp.org>
11785
11786         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Guess no also when
11787         cross-compiling to x86_64.
11788
11789 2007-06-12  Paul Eggert  <eggert@cs.ucla.edu>
11790
11791         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Fix POSIX sed portability
11792         glitch reported by Ralf Wildenhues in
11793         <http://lists.gnu.org/archive/html/bug-gnulib/2007-06/msg00114.html>.
11794
11795         * m4/regex.m4 (gl_REGEX): Catch a bug with [[:alnum:]_-] reported by
11796         Vin Shelton.
11797
11798 2007-06-11  Bruno Haible  <bruno@clisp.org>
11799
11800         * lib/printf-args.c (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Fix NULL
11801         replacement string.
11802         Reported by Eric Blake.
11803
11804 2007-06-10  Bruno Haible  <bruno@clisp.org>
11805
11806         Prepare vasnprintf code for use with Unicode strings.
11807         * lib/printf-args.h (PRINTF_FETCHARGS): New macro.
11808         (arg_type) [ENABLE_UNISTDIO]: Define TYPE_U8_STRING, TYPE_U16_STRING,
11809         TYPE_U32_STRING.
11810         (argument) [ENABLE_UNISTDIO]: Add a_u8_string, a_u16_string,
11811         a_u32_string variants.
11812         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
11813         * lib/printf-args.c: Don't include config.h and the specification
11814         header if PRINTF_FETCHARGS is already defined.
11815         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
11816         (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Add code for TYPE_U8_STRING,
11817         TYPE_U16_STRING, TYPE_U32_STRING.
11818         * lib/printf-parse.h [ENABLE_UNISTDIO] (u8_directive, u8_directives,
11819         u16_directive, u16_directives, u32_directive, u32_directives): New
11820         types.
11821         (ulc_printf_parse, u8_printf_parse, u16_printf_parse, u32_printf_parse):
11822         New declarations.
11823         * lib/printf-parse.c: Don't include config.h and the specification
11824         header if PRINTF_PARSE is already defined. Eliminate the set of
11825         parameters for WIDE_CHAR_VERSION; the user of this file must provide
11826         them now. Include c-ctype.h.
11827         (PRINTF_PARSE) [ENABLE_UNISTDIO]: Add code implementing the 'U'
11828         directive and CHAR_T_ONLY_ASCII.
11829         * lib/vasnprintf.c: Don't include config.h and the specification header
11830         if VASNPRINTF is already defined.
11831         (DCHAR_IS_TCHAR, DCHAR_CPY): New macros.
11832         (VASNPRINTF): Use PRINTF_FETCHARGS instead of printf_fetchargs. Use
11833         DCHAR_CPY. Handle the case that DCHAR_T and FCHAR_T are not the same
11834         type. Handle the case that TCHAR_T and FCHAR_T are not of the same
11835         size. Handle the case that DCHAR_T and TCHAR_T are not the same type,
11836         add a conversion from TCHAR_T[] to DCHAR_T[], and rework the padding
11837         code accordingly.
11838         (VASNPRINTF) [ENABLE_UNISTDIO]: Implement the 'U' directive. Enable
11839         pad_ourselves also in this case, with the 'c' and 's' directives, and
11840         with a different notion of "width".
11841         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): New macros.
11842
11843 2007-06-10  Bruno Haible  <bruno@clisp.org>
11844
11845         * modules/unistr/u32-mbsnlen: New file.
11846         * lib/unistr/u32-mbsnlen.c: New file.
11847
11848         * modules/unistr/u16-mbsnlen: New file.
11849         * lib/unistr/u16-mbsnlen.c: New file.
11850
11851         * modules/unistr/u8-mbsnlen: New file.
11852         * lib/unistr/u8-mbsnlen.c: New file.
11853
11854         * lib/unistr.h (u8_mbsnlen, u16_mbsnlen, u32_mbsnlen): New
11855         declarations.
11856
11857 2007-06-10  Bruno Haible  <bruno@clisp.org>
11858
11859         * lib/string_.h (mbsnlen): New declaration.
11860         * lib/mbsnlen.c: New file.
11861         * m4/mbsnlen.m4: New file.
11862         * modules/mbsnlen: New file.
11863         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Set GNULIB_MBSNLEN.
11864         * modules/string (string.h): Substitute GNULIB_MBSNLEN.
11865         * MODULES.html.sh (Internationalization functions): Add mbsnlen.
11866
11867 2007-06-10  Bruno Haible  <bruno@clisp.org>
11868
11869         * lib/mbslen.c: Include <stdlib.h>, needed for MB_CUR_MAX.
11870
11871 2007-06-10  Bruno Haible  <bruno@clisp.org>
11872
11873         * lib/mbiter.h: Include <stddef.h>, needed for ptrdiff_t.
11874         * lib/mbuiter.h: Likewise.
11875
11876 2007-06-10  Bruno Haible  <bruno@clisp.org>
11877
11878         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Check for _snprintf
11879         declaration.
11880
11881 2007-06-10  Karl Berry  <karl@gnu.org>
11882
11883         * config/srclist.txt: remove gettext entries, Bruno prefers
11884         to update individually.
11885
11886 2007-06-10  Bruno Haible  <bruno@clisp.org>
11887
11888         * lib/vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Remove variable
11889         'maxlen'. Ensure only length + width bytes are allocated, not
11890         length + 1 + width.
11891
11892 2007-06-09  Bruno Haible  <bruno@clisp.org>
11893
11894         * lib/vasnprintf.c (FCHAR_T, DCHAR_T, TCHAR_T): New macros.
11895         (CHAR_T): Remove macro.
11896         (VASNPRINTF): Update.
11897
11898 2007-06-09  Bruno Haible  <bruno@clisp.org>
11899
11900         * MODULES.html.sh (Unicode string functions): Add the new modules.
11901
11902         * modules/uniconv/u32-conv-to-enc: New file.
11903         * lib/uniconv/u32-conv-to-enc.c: New file.
11904         * modules/uniconv/u32-conv-to-enc-tests: New file.
11905         * tests/uniconv/test-u32-conv-to-enc.c: New file.
11906
11907         * modules/uniconv/u16-conv-to-enc: New file.
11908         * lib/uniconv/u16-conv-to-enc.c: New file.
11909         * lib/uniconv/u-conv-to-enc.h: New file.
11910         * modules/uniconv/u16-conv-to-enc-tests: New file.
11911         * tests/uniconv/test-u16-conv-to-enc.c: New file.
11912
11913         * modules/uniconv/u8-conv-to-enc: New file.
11914         * lib/uniconv/u8-conv-to-enc.c: New file.
11915         * modules/uniconv/u8-conv-to-enc-tests: New file.
11916         * tests/uniconv/test-u8-conv-to-enc.c: New file.
11917
11918         * lib/uniconv.h (u8_conv_to_encoding, u16_conv_to_encoding,
11919         u32_conv_to_encoding): New declarations.
11920
11921 2007-06-09  Bruno Haible  <bruno@clisp.org>
11922
11923         * tests/uniconv/test-u32-strconv-to-enc.c (main): Remove unused code.
11924
11925 2007-06-09  Bruno Haible  <bruno@clisp.org>
11926
11927         Rename 'allocsa' -> 'malloca', 'freesa' -> 'freea'.
11928         * modules/malloca: Renamed from modules/allocsa, updated.
11929         * lib/malloca.h: Renamed from lib/allocsa.h, updated.
11930         * lib/malloca.c: Renamed from lib/allocsa.c, updated.
11931         * lib/malloca.valgrind: Renamed from lib/allocsa.valgrind, updated.
11932         * m4/malloca.m4: Renamed from m4/allocsa.m4, updated.
11933         * modules/malloca-tests: Renamed from modules/allocsa-tests, updated.
11934         * tests/test-malloca.c: Renamed from tests/test-allocsa.c, updated.
11935         * modules/xmalloca: Renamed from modules/xallocsa, updated.
11936         * lib/xmalloca.h: Renamed from lib/xallocsa.h, updated.
11937         * lib/xmalloca.c: Renamed from lib/xallocsa.c, updated.
11938         * modules/c-strcasestr (Depends-on): Update.
11939         * lib/c-strcasestr.c: Update.
11940         * modules/c-strstr (Depends-on): Update.
11941         * lib/c-strstr.c: Update.
11942         * modules/canonicalize-lgpl (Depends-on): Update.
11943         * lib/canonicalize-lgpl.c: Update.
11944         * modules/clean-temp (Depends-on): Update.
11945         * lib/clean-temp.c: Update.
11946         * modules/csharpcomp (Depends-on): Update.
11947         * lib/csharpcomp.c: Update.
11948         * modules/csharpexec (Depends-on): Update.
11949         * lib/csharpexec.c: Update.
11950         * modules/javacomp (Depends-on): Update.
11951         * lib/javacomp.c: Update.
11952         * modules/javaexec (Depends-on): Update.
11953         * lib/javaexec.c: Update.
11954         * modules/mbscasestr (Depends-on): Update.
11955         * lib/mbscasestr.c: Update.
11956         * modules/mbsstr (Depends-on): Update.
11957         * lib/mbsstr.c: Update.
11958         * modules/setenv (Depends-on): Update.
11959         * lib/setenv.c: Update.
11960         * modules/strcasestr (Depends-on): Update.
11961         * lib/strcasestr.c: Update.
11962         * modules/striconveha (Depends-on): Update.
11963         * lib/striconveha.c: Update.
11964         * modules/relocatable-prog-wrapper (Files): Update.
11965         * lib/relocwrapper.c: Update.
11966         * build-aux/install-reloc: Update.
11967         * MODULES.html.sh (Memory management functions <stdlib.h>): Update.
11968
11969 2007-06-08  Bruno Haible  <bruno@clisp.org>
11970
11971         Port to uClibc.
11972         * lib/fbufmode.c (fbufmode): Add special code for uClibc.
11973         * lib/fpurge.c (fpurge): Likewise.
11974         * lib/freading.c (freading): Likewise.
11975         * lib/fseeko.c (rpl_fseeko): Likewise.
11976         * lib/fseterr.c (fseterr): Likewise.
11977         * lib/fwriting.c (fwriting): Likewise.
11978         * tests/test-fflush.c (main): Avoid a failure on uClibc.
11979
11980 2007-06-08  Bruno Haible  <bruno@clisp.org>
11981
11982         * m4/intlmacosx.m4: New file, extracted from gettext.m4.
11983         * m4/gettext.m4 (gt_INTL_MACOSX): Remove macro, moved to intlmacosx.m4.
11984         * modules/gettext (Files): Add m4/intlmacosx.m4.
11985
11986 2007-06-07  Bruno Haible  <bruno@clisp.org>
11987
11988         * modules/localename-tests: New file.
11989         * tests/test-localename.c: New file.
11990
11991         New module 'localename'.
11992         * lib/localename.h: New file.
11993         * lib/localename.c: New file, from GNU gettext.
11994         * m4/localename.m4: New file.
11995         * modules/localename: New file.
11996
11997 2007-06-07  Bruno Haible  <bruno@clisp.org>
11998
11999         Work around the lack of <wchar.h> on some builds of uClibc.
12000         * doc/headers/wchar.texi: Update.
12001         * lib/wchar_.h: Include <wchar.h> only if it exists.
12002         * m4/wchar.m4 (gl_WCHAR_H): Check for <wchar.h>. Set HAVE_WCHAR_H.
12003         * m4/stdint.m4 (gl_STDINT_H): Check for <wchar.h>.
12004         (gl_STDINT_TYPE_PROPERTIES): Don't try to include <wchar.h> if it
12005         doesn't exist.
12006         * modules/wchar (wchar.h): Substitute HAVE_WCHAR_H.
12007         * modules/mbfile (Depends-on): Add wchar.
12008         * modules/mbiter (Depends-on): Likewise.
12009         * modules/mbuiter (Depends-on): Likewise.
12010         Reported by Simon Josefsson.
12011
12012 2007-06-06  Paul Eggert  <eggert@cs.ucla.edu>
12013
12014         Work around problem reported by Steven M. Schweda in
12015         <http://lists.gnu.org/archive/html/bug-tar/2007-06/msg00002.html>:
12016         Tru64 5.1B with the Compaq compiler environment installed declares
12017         an 'isblank' function but does not define it in the C library.
12018         * lib/fnmatch.c (isblank): Check for HAVE_ISBLANK, too.
12019         * lib/regex_internal.h (isblank): Likewise.
12020         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for isblank existence.
12021         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
12022
12023 2007-06-05  Bruno Haible  <bruno@clisp.org>
12024
12025         Fix *printf so that it recognizes non-IEEE numbers on i386, x86_64,
12026         ia64.
12027         * modules/printf-safe: New file.
12028         * modules/fprintf-posix (Depends-on): Add printf-safe.
12029         * modules/printf-posix (Depends-on): Likewise.
12030         * modules/snprintf-posix (Depends-on): Likewise.
12031         * modules/sprintf-posix (Depends-on): Likewise.
12032         * modules/vasnprintf-posix (Depends-on): Likewise.
12033         * modules/vasprintf-posix (Depends-on): Likewise.
12034         * modules/vfprintf-posix (Depends-on): Likewise.
12035         * modules/vprintf-posix (Depends-on): Likewise.
12036         * modules/vsnprintf-posix (Depends-on): Likewise.
12037         * modules/vsprintf-posix (Depends-on): Likewise.
12038         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Require
12039         AC_C_BIGENDIAN. Define CHECK_PRINTF_SAFE if printf-safe is used. Test
12040         non-IEEE numbers on i386, x86_64, ia64. When cross-compiling, guess
12041         "no" on i386, x86_64, ia64.
12042         * tests/test-snprintf-posix.h (LDBL80_WORDS): New macro.
12043         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
12044         on i386, x86_64, ia64.
12045         * tests/test-sprintf-posix.h (LDBL80_WORDS): New macro.
12046         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
12047         on i386, x86_64, ia64.
12048         * tests/test-vasnprintf-posix.c: Include float.h.
12049         (LDBL80_WORDS): New macro.
12050         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
12051         on i386, x86_64, ia64.
12052         * tests/test-vasprintf-posix.c: Include float.h.
12053         (LDBL80_WORDS): New macro.
12054         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
12055         on i386, x86_64, ia64.
12056         * tests/test-snprintf-posix.c: Include float.h.
12057         * tests/test-sprintf-posix.c: Likewise.
12058         * tests/test-vsnprintf-posix.c: Likewise.
12059         * tests/test-vsprintf-posix.c: Likewise.
12060
12061 2007-06-05  Bruno Haible  <bruno@clisp.org>
12062
12063         Fix isnanl so that it recognizes non-IEEE numbers on i386, x86_64, ia64.
12064         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Require AC_C_BIGENDIAN. Test
12065         non-IEEE numbers on i386, x86_64, ia64.
12066         (gl_LONG_DOUBLE_EXPONENT_LOCATION): Require AC_C_BIGENDIAN.
12067         * lib/isnan.c (FUNC): Add special code for i386, x86_64, ia64.
12068         * tests/test-isnanl.h: Include float.h.
12069         (main): Check also non-IEEE numbers on i386, x86_64, ia64.
12070
12071 2007-06-05  Bruno Haible  <bruno@clisp.org>
12072
12073         * lib/vasnprintf.c (VASNPRINTF): Do the extra handling of NaN and Inf
12074         also the %a / %A. Handle the %a / %A code before this extra handling.
12075
12076 2007-06-05  Bruno Haible  <bruno@clisp.org>
12077
12078         * lib/vasnprintf.c [NEED_PRINTF_LONG_DOUBLE ||
12079         NEED_PRINTF_INFINITE_LONG_DOUBLE]: Include fpucw.h.
12080
12081 2007-06-05  Bruno Haible  <bruno@clisp.org>
12082
12083         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): Fix
12084         typo in variable name.
12085
12086 2007-06-05  Eric Blake  <ebb9@byu.net>
12087
12088         * m4/lseek.m4 (gl_FUNC_LSEEK): Work when cross-compiling.
12089         Reported by Simon Josefsson.
12090
12091 2007-06-04  Bruno Haible  <bruno@clisp.org>
12092
12093         Avoid test failures on some PowerPC platforms.
12094         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP):
12095         Define differently for PowerPC.
12096         * tests/test-frexpl.c (MIN_NORMAL_EXP): Likewise.
12097         Reported by Gary V. Vaughan <gary@gnu.org>.
12098
12099 2007-06-02  Bruno Haible  <bruno@clisp.org>
12100
12101         Fix test-stdint failure on FreeBSD/ia64.
12102         * m4/stdint.m4 (gl_STDINT_H): Check the values of PTRDIFF_MIN,
12103         PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN,
12104         WCHAR_MAX, WINT_MIN, WINT_MAX entirely, not only for plausibility.
12105         * doc/headers/stdint.texi: Update.
12106
12107 2007-06-01  Bruno Haible  <bruno@clisp.org>
12108
12109         * tests/test-binary-io.c (main): Pass a third argument to open().
12110         Reported by Gary V. Vaughan <gary@gnu.org>.
12111
12112 2007-06-01  Bruno Haible  <bruno@clisp.org>
12113
12114         * doc/functions/frexpl.texi: Update for mingw.
12115
12116 2007-06-01  Bruno Haible  <bruno@clisp.org>
12117
12118         * tests/test-lseek.c (main): Disable test of errno for invalid third
12119         argument.
12120         * doc/functions/lseek.texi: Update.
12121         Reported by Gary V. Vaughan <gary@gnu.org>.
12122
12123 2007-05-28  Bruno Haible  <bruno@clisp.org>
12124
12125         * m4/intl.m4 (AM_INTL_SUBDIR): Substitute variables WOE32, WINDRES.
12126
12127 2007-05-31  Eric Blake  <ebb9@byu.net>
12128
12129         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Guess no on mingw when
12130         cross compiling.
12131
12132 2007-05-30  Eric Blake  <ebb9@byu.net>
12133         and Bruno Haible  <bruno@clisp.org>
12134
12135         Work around mingw test failures exposed by m4-1.4.9b.
12136         * m4/stdint.m4 (gl_STDINT_H): Detect mingw bug.
12137         * tests/test-unistd.c: Disable uid_t and git_t tests for the
12138         moment.
12139
12140 2007-05-30  Bruno Haible  <bruno@clisp.org>
12141
12142         * tests/test-lseek.c: Explicitly close file descriptors 0 and 1 before
12143         assuming that they are closed. Needed on HP-UX 11.
12144
12145 2007-05-29  Bruno Haible  <bruno@clisp.org>
12146
12147         Fix a problem with #include_next.
12148         * lib/dirent_.h: Split the double-inclusion guard.
12149         * lib/fcntl_.h: Likewise.
12150         * lib/float_.h: Likewise.
12151         * lib/iconv_.h: Likewise.
12152         * lib/inttypes_.h: Likewise.
12153         * lib/locale_.h: Likewise.
12154         * lib/math_.h: Likewise.
12155         * lib/netinet_in_.h: Likewise.
12156         * lib/search_.h: Likewise.
12157         * lib/signal_.h: Likewise.
12158         * lib/stdint_.h: Likewise.
12159         * lib/stdio_.h: Likewise.
12160         * lib/stdlib_.h: Likewise.
12161         * lib/string_.h: Likewise.
12162         * lib/sys_select_.h: Likewise.
12163         * lib/sys_socket_.h: Likewise.
12164         * lib/sys_stat_.h: Likewise.
12165         * lib/sys_time_.h: Likewise.
12166         * lib/sysexits_.h: Likewise.
12167         * lib/time_.h: Likewise.
12168         * lib/unistd_.h: Likewise.
12169         * lib/wchar_.h: Likewise.
12170         * lib/wctype_.h: Likewise.
12171
12172 2007-05-29  Bruno Haible  <bruno@clisp.org>
12173
12174         * tests/test-unistd.c: Disable the tests for useconds_t and intptr_t
12175         for the moment.
12176
12177 2007-05-29  Bruno Haible  <bruno@clisp.org>
12178
12179         * m4/isnan.m4 (gl_DOUBLE_EXPONENT_LOCATION): Silence the AC_C_BIGENDIAN
12180         invocation.
12181         Reported by Eric Blake.
12182
12183 2007-05-29  Bruno Haible  <bruno@clisp.org>
12184
12185         * m4/isnanf.m4 (gl_FLOAT_EXPONENT_LOCATION): Fix typo in cross-
12186         compiling case.
12187
12188 2007-05-29  Eric Blake  <ebb9@byu.net>
12189             Bruno Haible  <bruno@clisp.org>
12190
12191         * m4/isnanf.m4 (gl_FUNC_ISNANF_NO_LIBM): Avoid syntax error on
12192         cross compiles.
12193
12194 2007-05-28  Eric Blake  <ebb9@byu.net>
12195
12196         * modules/closein-tests (test_closein_LDADD): Support test on
12197         cygwin with libtool.
12198
12199 2007-05-28  Bruno Haible  <bruno@clisp.org>
12200
12201         * tests/uniconv/test-u16-conv-from-enc.c: Remove #ifdef HAVE_CONFIG_H.
12202         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
12203         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
12204         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
12205         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
12206         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
12207         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
12208         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
12209         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
12210
12211 2007-05-28  Eric Blake  <ebb9@byu.net>
12212
12213         Unconditionally include <config.h> in unit tests.
12214         * tests/test-alloca-opt.c: Remove #ifdef HAVE_CONFIG_H.
12215         * tests/test-allocsa.c, tests/test-arcfour.c,
12216         tests/test-arctwo.c, tests/test-argmatch.c, tests/test-argp.c,
12217         tests/test-array_list.c, tests/test-array_oset.c,
12218         tests/test-atexit.c, test-avltree_list.c, test-avltree_oset.c,
12219         test-avltreehash_list.c, test-base64.c, test-binary-io.c,
12220         test-c-ctype.c, test-c-strcasecmp.c, test-c-strcasestr.c,
12221         test-c-strncasecmp.c, test-c-strstr.c, test-canonicalize-lgpl.c,
12222         test-carray_list.c, test-crc.c, test-des.c, test-dirname.c,
12223         test-fflush.c, test-fprintf-posix.c, test-gc-arcfour.c,
12224         test-gc-arctwo.c, test-gc-des.c, test-gc-hmac-md5.c,
12225         test-gc-hmac-sha1.c, test-gc-md2.c, test-gc-md4.c, test-gc-md5.c,
12226         test-gc-pbkdf2-sha1.c, test-gc-rijndael.c, test-gc-sha1.c,
12227         test-gc.c, test-getpass.c, test-hmac-md5.c, test-hmac-sha1.c,
12228         test-iconv.c, test-linked_list.c, test-linkedhash_list.c,
12229         test-lock.c, test-mbscasecmp.c, test-mbscasestr1.c,
12230         test-mbscasestr2.c, test-mbscasestr3.c, test-mbscasestr4.c,
12231         test-mbschr.c, test-mbscspn.c, test-mbsncasecmp.c, test-mbspbrk.c,
12232         test-mbspcasecmp.c, test-mbsrchr.c, test-mbsspn.c, test-mbsstr1.c,
12233         test-mbsstr2.c, test-mbsstr3.c, test-md2.c, test-md4.c,
12234         test-md5.c, test-memmem.c, test-printf-posix.c,
12235         test-rbtree_list.c, test-rbtree_oset.c, test-rbtreehash_list.c,
12236         test-read-file.c, test-rijndael.c, test-snprintf-posix.c,
12237         test-snprintf.c, test-sprintf-posix.c, test-stdint.c,
12238         test-strcasestr.c, test-striconv.c, test-striconveh.c,
12239         test-striconveha.c, test-tls.c, test-vasnprintf-posix.c,
12240         test-vasnprintf-posix2.c, test-vasnprintf.c,
12241         test-vasprintf-posix.c, test-vasprintf.c, test-verify.c,
12242         test-vfprintf-posix.c, test-vprintf-posix.c,
12243         test-vsnprintf-posix.c, test-vsnprintf.c, test-vsprintf-posix.c,
12244         test-xvasprintf.c: Likewise.
12245
12246 2007-05-28  Bruno Haible  <bruno@clisp.org>
12247
12248         * gnulib-tool (func_import): Remember the --with-tests command-line
12249         option through the macro gl_WITH_TESTS in the gnulib-cache.m4.
12250         Reported by Eric Blake.
12251
12252 2007-05-28  Bruno Haible  <bruno@clisp.org>
12253
12254         * modules/ftell-tests: New file.
12255         * tests/test-ftell.c: New file, based on tests/test-ftello.c.
12256         * tests/test-ftell.sh: New file, based on tests/test-ftello.sh.
12257
12258         * lib/ftell.c: New file.
12259         * modules/ftell: New file.
12260         * m4/ftell.m4: New file.
12261         * doc/functions/ftell.texi: Update.
12262         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELL,
12263         REPLACE_FTELL.
12264         * lib/stdio_.h (rpl_ftell): New declaration.
12265         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELL,
12266         REPLACE_FTELL.
12267
12268 2007-05-28  Eric Blake  <ebb9@byu.net>
12269
12270         * lib/allocsa.h (safe_alloca): Avoid compiler warning.
12271
12272 2007-05-28  Bruno Haible  <bruno@clisp.org>
12273
12274         * modules/fseek-tests: New file.
12275         * tests/test-fseek.c: New file, based on tests/test-fseeko.c.
12276         * tests/test-fseek.sh: New file, based on tests/test-fseeko.sh.
12277
12278         * lib/fseek.c: New file.
12279         * modules/fseek: New file.
12280         * m4/fseek.m4: New file.
12281         * doc/functions/fseek.texi: Update.
12282         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEK,
12283         REPLACE_FSEEK.
12284         * lib/stdio_.h (rpl_fseek): New declaration.
12285         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEK,
12286         REPLACE_FSEEK.
12287
12288 2007-05-28  Bruno Haible  <bruno@clisp.org>
12289
12290         * lib/stdio_.h (fflush): More comments.
12291
12292 2007-05-28  Bruno Haible  <bruno@clisp.org>
12293
12294         * m4/lseek.m4 (gl_FUNC_LSEEK): When not cross-compiling, perform a real
12295         runtime test.
12296
12297 2007-05-28  Eric Blake  <ebb9@byu.net>
12298
12299         Improve lseek module.
12300         * lib/lseek.c (rpl_lseek): Detect EBADF on mingw.
12301         * lib/unistd_.h (lseek): Scale back link warning message.
12302         * tests/test-lseek.c: Beef up test.
12303         * tests/test-lseek.sh: Exercise more facets of lseek.
12304         Reported by Bruno Haible.
12305
12306 2007-05-28  Bruno Haible  <bruno@clisp.org>
12307
12308         * tests/test-unistd.c: Test all the types that <unistd.h> is expected
12309         to define.
12310
12311 2007-05-27  Bruno Haible  <bruno@clisp.org>
12312
12313         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-31 patch.
12314
12315 2007-05-27  Bruno Haible  <bruno@clisp.org>
12316
12317         * modules/openmp: New file.
12318         * m4/openmp.m4: New file, taken from autoconf's CVS with changes by
12319         Noah Misch.
12320
12321 2007-05-26  Bruno Haible  <bruno@clisp.org>
12322
12323         * modules/chdir-long (Depends-on): Add fchdir.
12324         * modules/chdir-safer (Depends-on): Likewise.
12325         * modules/fts (Depends-on): Likewise.
12326         * modules/fts-lgpl (Depends-on): Likewise.
12327         * modules/openat (Depends-on): Likewise.
12328         * modules/savewd (Depends-on): Likewise.
12329
12330 2007-05-24  Eric Blake  <ebb9@byu.net>
12331
12332         Fix lseek on mingw.
12333         * modules/lseek: New module.
12334         * m4/lseek.m4: New file.
12335         * lib/lseek.c: New file.
12336         * modules/lseek-tests: New file.
12337         * tests/test-lseek.c: New file.
12338         * tests/test-lseek.sh: New file.
12339         * MODULES.html.sh: Document lseek module.
12340         * modules/fflush (Depends-on): Add lseek, fseeko.
12341         * modules/fseeko (Depends-on): Likewise.
12342         * modules/ftello (Depends-on): Likewise.
12343         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Replace fseek[o] if lseek is
12344         broken.
12345         * m4/ftello.m4 (gl_FUNC_FTELLO): Replace ftell[o] if lseek is
12346         broken.
12347         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Trigger fseeko module.
12348         * lib/fseeko.c (rpl_fseeko): Quit early on non-seekable files.
12349         * lib/ftello.c (rpl_ftello): Likewise.
12350         * tests/test-fseeko.c (main): Test this.
12351         * tests/test-fseeko.sh: Likewise.
12352         * tests/test-ftello.c (main): Likewise.
12353         * tests/test-ftello.sh: Likewise.
12354         * lib/stdio_.h (fseek, ftell): Simplify, since missing fseeko now
12355         implies replacing fseek.
12356         * modules/stdio (Makefile.am): No longer need HAVE_FSEEKO,
12357         HAVE_FTELLO.
12358         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add lseek info.
12359         * modules/unistd (Makefile.am): Likewise.
12360         * lib/unistd_.h (lseek): Declare a replacement.
12361         * doc/functions/lseek.texi (lseek): Document this fix.
12362         * doc/functions/fseek.texi (fseek): Likewise.
12363         * doc/functions/ftell.texi (ftell): Likewise.
12364
12365 2007-05-24  Bruno Haible  <bruno@clisp.org>
12366
12367         * tests/test-vasnprintf-posix.c (test_function): Allow up to 50 bytes
12368         in the printed representation of a NaN.
12369         * tests/test-vasprintf-posix.c (test_function): Likewise.
12370         * tests/test-snprintf-posix.h (test_function): Likewise.
12371         * tests/test-sprintf-posix.h (test_function): Likewise.
12372         Reported by Eric Blake.
12373
12374 2007-05-23  Eric Blake  <ebb9@byu.net>
12375
12376         Fix fseeko/ftello on cygwin 1.5.24.
12377         * doc/functions/fseeko.texi (fseeko): Document the fix.
12378         * doc/functions/ftello.texi (ftello): Document the fix.
12379         * doc/functions/stdin.texi (stdin): Document the cygwin bug.
12380         * doc/functions/stdout.text (stdout): New file.
12381         * doc/functions/stderr.text (stderr): New file.
12382         * doc/gnulib.texi (Function Substitutes): Use new files.
12383         * tests/test-fseeko.c (main): Check for broken fseeko on cygwin
12384         prior to 1.7.0.
12385         * tests/test-ftello.c (main): Likewise for ftello.
12386         * tests/test-fseeko.sh: New file.
12387         * tests/test-ftello.sh: New file.
12388         * modules/fseeko-tests (Makefile.am): Ensure test-fseeko is run
12389         with seekable stdin.
12390         * modules/ftello-tests (Makefile.am): Likewise for test-ftello.
12391         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Detect the cygwin bug.
12392         (gl_REPLACE_FSEEKO): New macro.
12393         * m4/ftello.m4 (gl_FUNC_FTELLO, gl_REPLACE_FTELLO): Likewise.
12394         * modules/fseeko (Files): Distribute fseeko.c.
12395         * modules/ftello (Files): Distribute ftello.c.
12396         * lib/fseeko.c (rpl_fseeko) [__CYGWIN__]: Convert stdin to 64-bit
12397         mode.
12398         * lib/ftello.c (rpl_ftello): New file.
12399         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Allow replacement of
12400         fseeko, ftello.
12401         (gl_STDIN_LARGE_OFFSET): New macro.
12402         * modules/stdio (Makefile.am): Perform the replacement.
12403         * lib/stdio_.h (rpl_fseeko, rpl_ftello): Define when needed.
12404
12405 2007-05-23  Bruno Haible  <bruno@clisp.org>
12406
12407         * lib/stdio_.h (fseeko, ftello): Provide a link warning only if
12408         GNULIB_POSIXCHECK is defined.
12409
12410 2007-05-21  Bruno Haible  <bruno@clisp.org>
12411
12412         * m4/printf.m4 (gl_PRINTF_INFINITE, gl_PRINTF_INFINITE_LONG_DOUBLE):
12413         Check also the output for NaN arguments. When cross-compiling, guess
12414         no on IRIX.
12415         * lib/vasnprintf.c: Update comments.
12416         * tests/test-vasnprintf-posix.c (strisnan): New function.
12417         (test_function): Use it.
12418         * tests/test-vasprintf-posix.c (strisnan): New function.
12419         (test_function): Use it.
12420         * tests/test-snprintf-posix.h (strisnan): New function.
12421         (test_function): Use it.
12422         * tests/test-sprintf-posix.h (strisnan): New function.
12423         (test_function): Use it.
12424         Reported by Eric Blake.
12425
12426 2007-05-20  Bruno Haible  <bruno@clisp.org>
12427
12428         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Add test for large finite
12429         numbers that fails on BeOS.
12430         * doc/functions/frexpl.texi: Update.
12431
12432 2007-05-20  Jim Meyering  <jim@meyering.net>
12433
12434         * NEWS: Mention the incompatible change (s/futimens/gl_futimens/)
12435         forced upon us by glibc-2.6.
12436
12437 2007-05-20  Bruno Haible  <bruno@clisp.org>
12438
12439         Fix *printf result for NaN, Inf on AIX, Solaris, OSF/1.
12440         * m4/printf.m4 (gl_PRINTF_INFINITE): Update cross-compiling guesses.
12441         (gl_PRINTF_INFINITE_LONG_DOUBLE): New macro.
12442         * lib/vasnprintf.c: Use NEED_PRINTF_INFINITE_DOUBLE instead of
12443         NEED_PRINTF_INFINITE.
12444         (is_infinitel): New function.
12445         (VASNPRINTF): Handle NEED_PRINTF_INFINITE_LONG_DOUBLE case.
12446         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE): Renamed from
12447         gl_PREREQ_VASNPRINTF_INFINITE.
12448         (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): New macro.
12449         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
12450         gl_PRINTF_INFINITE_LONG_DOUBLE and test its result. Invoke
12451         gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE and
12452         gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE instead of
12453         gl_PREREQ_VASNPRINTF_INFINITE.
12454         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
12455         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
12456         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
12457         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
12458         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
12459         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
12460         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
12461         * doc/functions/fprintf.texi: Update.
12462         * doc/functions/printf.texi: Update.
12463         * doc/functions/snprintf.texi: Update.
12464         * doc/functions/sprintf.texi: Update.
12465         * doc/functions/vfprintf.texi: Update.
12466         * doc/functions/vprintf.texi: Update.
12467         * doc/functions/vsnprintf.texi: Update.
12468         * doc/functions/vsprintf.texi: Update.
12469
12470 2007-05-20  Bruno Haible  <bruno@clisp.org>
12471
12472         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): Set REPLACE_FREXPL if frexpl
12473         was not found in libc.
12474         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Likewise.
12475
12476 2007-05-20  Bruno Haible  <bruno@clisp.org>
12477
12478         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
12479         printed as "-nan" instead of "nan".
12480         * tests/test-vasprintf-posix.c (test_function): Likewise.
12481         * tests/test-snprintf-posix.h (test_function): Likewise.
12482         * tests/test-sprintf-posix.h (test_function): Likewise.
12483         Needed for HP-UX 11.
12484
12485 2007-05-20  Jim Meyering  <jim@meyering.net>
12486
12487         Fix buggy test for the fchownat-deref bug.
12488         * m4/openat.m4 (gl_FUNC_FCHOWNAT_DEREF_BUG): Create the dangling
12489         symlink required for the run-test.  Without it, this test would
12490         always declare that fchownat doesn't work, and client code would
12491         unnecessarily use the replacement function with fixed libc.
12492         (gl_FUNC_FCHOWNAT): Eliminate a variable that wasn't initialized.
12493         Reported by Greg Schafer.
12494
12495 2007-05-19  Bruno Haible  <bruno@clisp.org>
12496
12497         * m4/isnanf.m4 (gl_ISNANF_WORKS): New macro.
12498         (gl_FUNC_ISNANF_NO_LIBM): Invoke it.
12499         * lib/isnan.c (FUNC): Use run-time expressions for SGI compiler.
12500         Needed for IRIX 6.5 and Solaris 2.5.1.
12501
12502 2007-05-19  Bruno Haible  <bruno@clisp.org>
12503
12504         * tests/test-vasnprintf-posix.c (have_minus_zero): New function.
12505         (test_function): Skip tests involving -0.0 on platforms where
12506         -0.0 = 0.0.
12507         * tests/test-vasprintf-posix.c (have_minus_zero): New function.
12508         (test_function): Skip tests involving -0.0 on platforms where
12509         -0.0 = 0.0.
12510         * tests/test-snprintf-posix.h (have_minus_zero): New function.
12511         (test_function): Skip tests involving -0.0 on platforms where
12512         -0.0 = 0.0.
12513         * tests/test-sprintf-posix.h (have_minus_zero): New function.
12514         (test_function): Skip tests involving -0.0 on platforms where
12515         -0.0 = 0.0.
12516         * tests/test-fprintf-posix.h (test_function): Remove all -0.0 related
12517         tests.
12518         * tests/test-printf-posix.h (test_function): Likewise.
12519         * tests/test-printf-posix.output: Remove all -0.0 related results.
12520         Needed for IRIX 6.5.
12521
12522 2007-05-19  Bruno Haible  <bruno@clisp.org>
12523
12524         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
12525         printed as "nan0x7fffffff" instead of "nan".
12526         * tests/test-vasprintf-posix.c (test_function): Likewise.
12527         * tests/test-snprintf-posix.h (test_function): Likewise.
12528         * tests/test-sprintf-posix.h (test_function): Likewise.
12529         * tests/test-fprintf-posix.h (NaN): Remove macro.
12530         (test_function): Remove all NaN related tests.
12531         * tests/test-printf-posix.h (NaN): Remove macro.
12532         (test_function): Remove all NaN related tests.
12533         * tests/test-printf-posix.output: Remove all NaN related results.
12534         Needed for IRIX 6.5.
12535
12536 2007-05-19  Bruno Haible  <bruno@clisp.org>
12537
12538         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Fix C89 syntax error in test code.
12539         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Likewise.
12540
12541 2007-05-19  Bruno Haible  <bruno@clisp.org>
12542
12543         * lib/float_.h: New file.
12544         * m4/float_h.m4: New file.
12545         * modules/float: New file.
12546         * modules/isnanl (Dependencies): Add float.
12547         * modules/isnanl-nolibm (Dependencies): Likewise.
12548         * modules/mathl (Dependencies): Likewise.
12549         * modules/printf-frexpl (Dependencies): Likewise.
12550         * modules/signbit (Dependencies): Likewise.
12551         * modules/vasnprintf (Dependencies): Likewise.
12552         * doc/headers/float.texi: Update.
12553
12554 2007-05-19  Jim Meyering  <jim@meyering.net>
12555
12556         * lib/utimens.c (gl_futimens): Rename from futimens,
12557         now that glibc-2.6 declares futimens.
12558         * lib/utimens.h: Likewise.
12559
12560 2007-05-19  Bruno Haible  <bruno@clisp.org>
12561
12562         Avoid test failures on mingw.
12563         * tests/test-fprintf-posix.sh: Convert CR/LF to LF in output.
12564         * tests/test-printf-posix.sh: Likewise.
12565         * tests/test-vfprintf-posix.sh: Likewise.
12566         * tests/test-vprintf-posix.sh: Likewise.
12567
12568 2007-05-19  Bruno Haible  <bruno@clisp.org>
12569
12570         Fix *printf result for NaN, Inf, -0.0 on mingw.
12571         * m4/printf.m4 (gl_PRINTF_INFINITE): New macro.
12572         * lib/vasnprintf.c: Include math.h and isnan.h.
12573         (is_infinite_or_zero): New function.
12574         (VASNPRINTF): Fix also the handling of infinite or zero 'double'
12575         values in the %f, %F, %e, %E, %g, %G directives.
12576         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE): New macro.
12577         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
12578         gl_PRINTF_INFINITE and test its result. Invoke
12579         gl_PREREQ_VASNPRINTF_INFINITE.
12580         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
12581         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
12582         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
12583         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
12584         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
12585         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
12586         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
12587         * doc/functions/fprintf.texi: Update.
12588         * doc/functions/printf.texi: Update.
12589         * doc/functions/snprintf.texi: Update.
12590         * doc/functions/sprintf.texi: Update.
12591         * doc/functions/vfprintf.texi: Update.
12592         * doc/functions/vprintf.texi: Update.
12593         * doc/functions/vsnprintf.texi: Update.
12594         * doc/functions/vsprintf.texi: Update.
12595
12596 2007-05-19  Bruno Haible  <bruno@clisp.org>
12597
12598         * lib/vasnprintf.c (convert_to_decimal): Add an extra_zeroes argument.
12599         (scale10_round_decimal_long_double): Inline scale10_round_long_double.
12600         Instead of multiplying with 10^k, set extra_zeroes to k.
12601         (scale10_round_long_double): Remove function.
12602
12603 2007-05-18  Bruno Haible  <bruno@clisp.org>
12604
12605         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Fix logic bug
12606         introduced on 2007-05-06.
12607
12608 2007-05-18  Bruno Haible  <bruno@clisp.org>
12609
12610         * tests/test-vasnprintf-posix.c (test_function): Also test the %e and
12611         %g directives.
12612         * tests/test-vasprintf-posix.c (test_function): Likewise.
12613         * tests/test-snprintf-posix.h (test_function): Likewise.
12614         * tests/test-sprintf-posix.h (test_function): Likewise.
12615
12616 2007-05-18  Bruno Haible  <bruno@clisp.org>
12617
12618         * tests/test-vasnprintf-posix.c (SIZEOF): New macro.
12619         (strmatch): New function.
12620         (test_function): Test the %f directive on numbers of various exponents.
12621         * tests/test-vasprintf-posix.c (SIZEOF): New macro.
12622         (strmatch): New function.
12623         (test_function): Test the %f directive on numbers of various exponents.
12624         * tests/test-snprintf-posix.h (strmatch): New function.
12625         (test_function): Test the %f directive on numbers of various exponents.
12626         * tests/test-sprintf-posix.h (strmatch): New function.
12627         (test_function): Test the %f directive on numbers of various exponents.
12628         * tests/test-snprintf-posix.c (SIZEOF): New macro.
12629         * tests/test-sprintf-posix.c (SIZEOF): New macro.
12630         * tests/test-vsnprintf-posix.c (SIZEOF): New macro.
12631         * tests/test-vsprintf-posix.c (SIZEOF): New macro.
12632
12633 2007-05-18  Bruno Haible  <bruno@clisp.org>
12634
12635         Add support for 'long double' number output.
12636         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE): New macro.
12637         * lib/vasnprintf.c: Include math.h and float+.h.
12638         (mp_limb_t): New type.
12639         (GMP_LIMB_BITS): New macro.
12640         (mp_twolimb_t): New type.
12641         (GMP_TWOLIMB_BITS): New macro.
12642         (mpn_t): New type.
12643         (multiply, divide, convert_to_decimal, decode_long_double,
12644         scale10_round_long_double, scale10_round_decimal_long_double,
12645         floorlog10l): New functions.
12646         (VASNPRINTF) [NEED_PRINTF_LONG_DOUBLE]: Implement 'long double' support
12647         for the %f, %F, %e, %E, %g, %G directives.
12648         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_LONG_DOUBLE): New macro.
12649         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
12650         gl_PRINTF_LONG_DOUBLE and test its result. Invoke
12651         gl_PREREQ_VASNPRINTF_LONG_DOUBLE.
12652         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
12653         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
12654         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
12655         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
12656         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
12657         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
12658         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
12659         * modules/fprintf-posix (Depends-on): Add frexpl-nolibm.
12660         * modules/snprintf-posix (Depends-on): Likewise.
12661         * modules/sprintf-posix (Depends-on): Likewise.
12662         * modules/vasnprintf-posix (Depends-on): Likewise.
12663         * modules/vasprintf-posix (Depends-on): Likewise.
12664         * modules/vfprintf-posix (Depends-on): Likewise.
12665         * modules/vsnprintf-posix (Depends-on): Likewise.
12666         * modules/vsprintf-posix (Depends-on): Likewise.
12667         * modules/vasnprintf (Files): Add lib/float+.h.
12668         * doc/functions/fprintf.texi: Update.
12669         * doc/functions/printf.texi: Update.
12670         * doc/functions/snprintf.texi: Update.
12671         * doc/functions/sprintf.texi: Update.
12672         * doc/functions/vfprintf.texi: Update.
12673         * doc/functions/vprintf.texi: Update.
12674         * doc/functions/vsnprintf.texi: Update.
12675         * doc/functions/vsprintf.texi: Update.
12676
12677 2007-05-18  Bruno Haible  <bruno@clisp.org>
12678
12679         * lib/vasnprintf.c (USE_SNPRINTF): Define to 0 on BeOS.
12680
12681 2007-05-18  Bruno Haible  <bruno@clisp.org>
12682
12683         * lib/vasnprintf.c (VASNPRINTF) [WIN32]: Use %I64d instead of %lld
12684         for printing 64-bit integers. Needed for mingw.
12685
12686 2007-05-18  Bruno Haible  <bruno@clisp.org>
12687
12688         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
12689         gl_FUNC_FREXPL_WORKS.
12690         * modules/printf-frexpl (Files): Add m4/frexpl.m4.
12691
12692 2007-05-18  Bruno Haible  <bruno@clisp.org>
12693
12694         * modules/frexpl-nolibm-tests: New file.
12695
12696         * modules/frexpl-nolibm: New file.
12697         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): New macro.
12698
12699 2007-05-17  Paul Eggert  <eggert@cs.ucla.edu>
12700
12701         * lib/dirent_.h: Prefer #include_next <foo.h> to #include
12702         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
12703         GCC 4.2, which otherwise issues a lot of warnings.
12704         * lib/iconv_.h, lib/locale_.h, lib/netinet_in_.h, lib/sys_select_.h:
12705         * lib/sys_socket_.h, lib/sys_stat_.h, lib/sysexits_.h, lib/unistd_.h:
12706         Likewise.
12707         * modules/fchdir (dirent.h): Substitute @HAVE_INCLUDE_NEXT@.
12708         * modules/iconv_open (iconv.h): Likewise.
12709         * modules/locale (locale.h): Likewise.
12710         * modules/netinet_in (netinet/in.h): Likewise.
12711         * modules/sys_select (sys_select.h): Likewise.
12712         * modules/sys_socket (sys/socket.h): Likewise.
12713         * modules/sys_stat (sys/stat.h): Likewise.
12714         * modules/sysexits (sysexits.h): Likewise.
12715         * modules/unistd (unistd.h): Likewise.
12716
12717 2007-05-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12718
12719         * modules/closein-tests (Makefile.am): Distribute
12720         `test-closein.sh'.
12721
12722 2007-05-17  Bruno Haible  <bruno@clisp.org>
12723
12724         * tests/test-printf-posix.output: Renamed from
12725         tests/test-fprintf-posix.out.
12726         * modules/fprintf-posix-tests: Update.
12727         * modules/printf-posix-tests: Update.
12728         * modules/vfprintf-posix-tests: Update.
12729         * modules/vprintf-posix-tests: Update.
12730         * tests/test-fprintf-posix.sh: Update.
12731         * tests/test-printf-posix.sh: Update.
12732         * tests/test-vfprintf-posix.sh: Update.
12733         * tests/test-vprintf-posix.sh: Update.
12734         Reported by Ralf Wildenhues.
12735
12736 2007-05-16  Paul Eggert  <eggert@cs.ucla.edu>
12737
12738         * lib/fcntl_.h: Prefer #include_next <foo.h> to #include
12739         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
12740         GCC 4.2, which otherwise issues a lot of warnings.
12741         * lib/inttypes_.h, lib/math_.h, lib/search_.h, lib/signal_.h:
12742         * lib/stdint_.h, lib/stdio_.h, lib/stdlib_.h, lib/string_.h:
12743         * lib/sys_time_.h, lib/time_.h, lib/wchar_.h, lib/wctype_.h: Likewise.
12744         * lib/stdlib_.h: Don't bother with #pragma GCC system_header, as
12745         it should no longer be needed.
12746         * lib/string_.h: Likewise.
12747         * modules/absolute-header (HAVE_INCLUDE_NEXT): New 'make' define.
12748         * modules/fcntl (fcntl.h): Substitute @HAVE_INCLUDE_NEXT@.
12749         * modules/inttypes (inttypes.h): Likewise.
12750         * modules/math (math.h): Likewise.
12751         * modules/search (search.h): Likewise.
12752         * modules/signal (signal.h): Likewise.
12753         * modules/stdint (stdint.h): Likewise.
12754         * modules/stdio (stdio.h): Likewise.
12755         * modules/stdlib (stdlib.h): Likewise.
12756         * modules/string (string.h): Likewise.
12757         * modules/sys_time (sys/time.h): Likewise.
12758         * modules/time (time.h): Likewise.
12759         * modules/wchar (wchar.h): Likewise.
12760         * modules/wctype (wtype.h): Likewise.
12761
12762 2007-05-16  Thien-Thi Nguyen  <ttn@gnuvola.org>  (tiny change)
12763
12764         * doc/gnulib-tool.texi (CVS Issues): Fix typo.
12765
12766 2007-05-13  Bruno Haible  <bruno@clisp.org>
12767
12768         * stpcpy.m4 (gl_FUNC_STPCPY): Require AC_C_RESTRICT.
12769         * stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
12770         * strsep.m4 (gl_FUNC_STRSEP): Likewise.
12771         * strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
12772         (gl_PREREQ_STRTOK_R): Don't require it here.
12773
12774 2007-05-13  Bruno Haible  <bruno@clisp.org>
12775
12776         * lib/stdlib_.h (mkdtemp, mkstemp): Comment out argument name. Needed
12777         when used in C++ mode.
12778
12779 2007-05-12  Bruno Haible  <bruno@clisp.org>
12780
12781         * lib/linebuffer.h: Tweak doc.
12782         * lib/linebuffer.c: Likewise.
12783
12784 2007-05-12  James Youngman  <jay@gnu.org>
12785
12786         * lib/linebuffer.c (readlinebuffer_delim): New function,
12787         like readlinebuffer, but use a caller-specified delimiter.
12788         (readlinebuffer): Just call readlinebuffer_delim with '\n'
12789         as the delimiter.
12790         * lib/linebuffer.h (readlinebuffer_delim): Declare it.
12791
12792 2007-05-12  Sergey Poznyakoff  <gray@gnu.org.ua>
12793
12794         * m4/openat.m4 (gl_FUNC_OPENAT): Do not require openat-die.
12795         * modules/openat (Files): Remove openat-die.c.
12796         (Depends-on): Add openat-die.
12797         * modules/openat-die: New module.
12798
12799 2007-05-06  Bruno Haible  <bruno@clisp.org>
12800
12801         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING, gl_VSNPRINTF_ZEROSIZE_C99):
12802         Update with info about Cygwin.
12803         * doc/functions/fprintf.texi: Update.
12804         * doc/functions/printf.texi: Update.
12805         * doc/functions/snprintf.texi: Update.
12806         * doc/functions/sprintf.texi: Update.
12807         * doc/functions/vfprintf.texi: Update.
12808         * doc/functions/vprintf.texi: Update.
12809         * doc/functions/vsnprintf.texi: Update.
12810         * doc/functions/vsprintf.texi: Update.
12811         Reported by Eric Blake.
12812
12813 2007-05-06  Bruno Haible  <bruno@clisp.org>
12814
12815         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Perform the
12816         padding ourselves for the floating-point directives.
12817         * m4/printf.m4 (gl_PRINTF_FLAG_ZERO): New macro.
12818         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_ZERO): New macro.
12819         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
12820         gl_PRINTF_FLAG_ZERO and test its result. Invoke
12821         gl_PREREQ_VASNPRINTF_FLAG_ZERO.
12822         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
12823         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
12824         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
12825         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
12826         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
12827         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
12828         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
12829         * tests/test-snprintf-posix.h (test_function): Also check the width
12830         and some flags in the %f directive.
12831         * tests/test-sprintf-posix.h (test_function): Likewise.
12832         * tests/test-vasnprintf-posix.c (test_function): Likewise.
12833         * tests/test-vasprintf-posix.c (test_function): Likewise.
12834         * doc/functions/fprintf.texi: Update.
12835         * doc/functions/printf.texi: Update.
12836         * doc/functions/snprintf.texi: Update.
12837         * doc/functions/sprintf.texi: Update.
12838         * doc/functions/vfprintf.texi: Update.
12839         * doc/functions/vprintf.texi: Update.
12840         * doc/functions/vsnprintf.texi: Update.
12841         * doc/functions/vsprintf.texi: Update.
12842
12843 2007-05-06  Bruno Haible  <bruno@clisp.org>
12844
12845         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_GROUPING]: Don't
12846         pass the ' flag character to sprintf or snprintf.
12847         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING): New macro.
12848         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_GROUPING): New macro.
12849         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
12850         gl_PRINTF_FLAG_GROUPING and test its result. Invoke
12851         gl_PREREQ_VASNPRINTF_FLAG_GROUPING.
12852         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
12853         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
12854         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
12855         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
12856         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
12857         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
12858         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
12859         * tests/test-snprintf-posix.h (test_function): Also check the grouping
12860         flag.
12861         * tests/test-sprintf-posix.h (test_function): Likewise.
12862         * tests/test-vasnprintf-posix.c (test_function): Likewise.
12863         * tests/test-vasprintf-posix.c (test_function): Likewise.
12864         * doc/functions/fprintf.texi: Update.
12865         * doc/functions/printf.texi: Update.
12866         * doc/functions/snprintf.texi: Update.
12867         * doc/functions/sprintf.texi: Update.
12868         * doc/functions/vfprintf.texi: Update.
12869         * doc/functions/vprintf.texi: Update.
12870         * doc/functions/vsnprintf.texi: Update.
12871         * doc/functions/vsprintf.texi: Update.
12872
12873 2007-05-01  Bruno Haible  <bruno@clisp.org>
12874
12875         * tests/test-argp-2.sh (func_compare): Drop .exe suffix.
12876
12877 2007-05-03  Paul Eggert  <eggert@cs.ucla.edu>
12878
12879         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Use better
12880         comment for D_INO_IN_DIRENT.  Problem reported by James Youngman.
12881
12882 2007-05-02  Paul Eggert  <eggert@cs.ucla.edu>
12883
12884         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Test whether
12885         readdir returns garbage in d_ino.  Problem reported by Kaz Sasayama in
12886         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00021.html>.
12887
12888 2007-05-02  Sergey Poznyakoff  <gray@gnu.org.ua>
12889
12890         * lib/argp-help.c (struct hol_entry): New member `ord'.
12891         (HOL_ENTRY_PTRCMP): Use ord for comparison
12892         (hol_sort): Initialize ord.
12893
12894 2007-05-01  Bruno Haible  <bruno@clisp.org>
12895
12896         * doc/functions/_Exit_C99.texi: Renamed from doc/functions/_Exit.texi.
12897         Reported by Eric Blake.
12898         * doc/gnulib.texi (Function Substitutes): Update.
12899
12900 2007-05-01  Bruno Haible  <bruno@clisp.org>
12901
12902         * doc/functions.texi: Remove file, now redundant through
12903         doc/functions/*.texi.
12904
12905 2007-05-01  Bruno Haible  <bruno@clisp.org>
12906
12907         * modules/argp (Depends-on): Add sleep.
12908
12909 2007-05-01  Bruno Haible  <bruno@clisp.org>
12910
12911         * modules/sleep-tests: New file.
12912         * tests/test-sleep.c: New file.
12913
12914         * modules/sleep: New file.
12915         * lib/sleep.c: New file.
12916         * m4/sleep.m4: New file.
12917         * lib/unistd_.h (sleep): New declaration.
12918         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_SLEEP,
12919         HAVE_SLEEP.
12920         * modules/unistd (Makefile.am): Substitute GNULIB_SLEEP, HAVE_SLEEP.
12921         * doc/functions/sleep.texi: Document the sleep module.
12922
12923 2007-05-01  Bruno Haible  <bruno@clisp.org>
12924
12925         * lib/sigprocmask.h: Remove file.
12926         * lib/signal_.h: Incorporate the previous contents of sigprocmask.h.
12927         * lib/sigprocmask.c: Include <signal.h> instead of sigprocmask.h.
12928         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Substitute GNULIB_SIGPROCMASK,
12929         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T.
12930         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Require
12931         gl_SIGNAL_H_DEFAULTS. Set HAVE_POSIX_SIGNALBLOCKING as a shell variable.
12932         (gl_PREREQ_SIGPROCMASK): Require gl_SIGNAL_H_DEFAULTS. Set
12933         HAVE_SIGSET_T as a shell variable.
12934         * modules/signal (Makefile.am): Substitute GNULIB_SIGPROCMASK,
12935         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T into signal.h.
12936         * modules/sigprocmask (Files): Remove lib/sigprocmask.h.
12937         (Depends-on): Add signal. Remove verify.
12938         (configure.ac): Invoke gl_SIGNAL_MODULE_INDICATOR.
12939         (Include): Mention <signal.h> instead of sigprocmask.h.
12940         * NEWS: Mention the change.
12941         * lib/fatal-signal.c: Don't include sigprocmask.h.
12942
12943 2007-05-01  Bruno Haible  <bruno@clisp.org>
12944
12945         * modules/signal: New file.
12946         * lib/signal_.h: New file.
12947         * m4/signal_h.m4: New file.
12948
12949 2007-05-01  Bruno Haible  <bruno@clisp.org>
12950
12951         * lib/wctype_.h: Test HAVE_ISWCNTRL at configure time.
12952         * m4/wctype.m4 (gl_WCTYPE_H): Substitute HAVE_ISWCNTRL.
12953         * modules/wctype (Makefile.am): Substitute HAVE_ISWCNTRL instead of
12954         HAVE_WCTYPE_CTMP_BUG into wctype.h.
12955
12956 2007-05-01  Bruno Haible  <bruno@clisp.org>
12957
12958         * lib/sys_stat_.h: Test HAVE_LSTAT, HAVE_DECL_MKDIR, HAVE_IO_H at
12959         configure time.
12960         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Substitute HAVE_LSTAT,
12961         HAVE_DECL_MKDIR, HAVE_IO_H via AC_SUBST.
12962         * modules/sys_stat (Makefile.am): Substitute their values into
12963         sys/stat.h.
12964
12965 2007-05-01  Bruno Haible  <bruno@clisp.org>
12966
12967         * lib/glob_.h: Test HAVE_SYS_CDEFS_H at configure time.
12968         * m4/glob.m4 (gl_PREREQ_GLOB): Substitute HAVE_SYS_CDEFS_H via AC_SUBST.
12969         * modules/glob (Makefile.am): Put HAVE_SYS_CDEFS_H value into glob.h.
12970
12971 2007-05-01  Bruno Haible  <bruno@clisp.org>
12972
12973         * doc/header/assert.texi: Undo last change: don't mention the gnulib
12974         'assert' module here.
12975
12976 2007-05-01  Bruno Haible  <bruno@clisp.org>
12977
12978         * doc/functions/*.texi: New files.
12979         * doc/functions/google-ranking.txt: New file.
12980         * doc/gnulib.texi (Function Substitutes): New chapter.
12981         (ctime, inet_ntoa): Remove sections.
12982         * doc/ctime.texi: Remove file.
12983         * doc/inet_ntoa.texi: Remove file.
12984         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Update
12985         dependencies.
12986         (%.info): New rule, specifying a --reference-limit.
12987
12988 2007-05-01  Bruno Haible  <bruno@clisp.org>
12989
12990         * MODULES.html.sh (posix_functions): Remove 'exec', 'toc'.
12991
12992 2007-05-01  Bruno Haible  <bruno@clisp.org>
12993
12994         * modules/mkdir (Depends-on): Add sys_stat, because sys_stat provides
12995         the portability of 'mkdir' to mingw systems.
12996
12997 2007-05-01  Bruno Haible  <bruno@clisp.org>
12998
12999         * doc/headers/google-ranking.txt: New file.
13000
13001 2007-04-30  Eric Blake  <ebb9@byu.net>
13002
13003         Prefer fseeko to fseek.
13004         * modules/getpass (Depends-on): Add fseeko.
13005         * lib/getpass.c (getpass): Use fseeko, not fseek.
13006
13007 2007-04-30  Sergey Poznyakoff  <gray@gnu.org.ua>
13008
13009         * lib/argp-help.c (hol_entry_cmp): Option sorting algorithm
13010         assumes the sorting is stable, while most qsort implementations
13011         are not.  Use argument addresses to ensure they never compare as
13012         equal.
13013
13014         * tests/test-argp-2.sh (usage-indent test): Fix output
13015         (func_compare): Restore diff options
13016         * tests/test-argp.c: Restore #include "progname.h"
13017
13018 2007-04-29  Bruno Haible  <bruno@clisp.org>
13019
13020         * m4/printf.m4 (gl_VSNPRINTF_ZEROSIZE_C99): New macro.
13021         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
13022         gl_VSNPRINTF_ZEROSIZE_C99. Test gl_cv_func_vsnprintf_zerosize_c99.
13023         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
13024         * modules/snprintf-posix-tests (Files): Add tests/test-snprintf.c.
13025         (configure.ac): Define CHECK_SNPRINTF_POSIX.
13026         (TESTS, check_PROGRAMS): Add test-snprintf.
13027         * modules/vsnprintf-posix-tests (Files): Add tests/test-vsnprintf.c.
13028         (configure.ac): Define CHECK_VSNPRINTF_POSIX.
13029         (TESTS, check_PROGRAMS): Add test-vsnprintf.
13030         * tests/test-snprintf.c (main) [!CHECK_SNPRINTF_POSIX]: Disable
13031         assertions that fail on HP-UX, OSF/1, or IRIX.
13032         * tests/test-vsnprintf.c (main) [!CHECK_VSNPRINTF_POSIX]: Likewise.
13033
13034 2007-04-29  Bruno Haible  <bruno@clisp.org>
13035
13036         * MODULES.html.sh (posix_functions): Remove 'contents'.
13037
13038 2007-04-29  Karl Berry  <karl@gnu.org>
13039
13040         * config/srclist.txt (gendocs_template_min): new entry.
13041
13042 2007-04-29  Bruno Haible  <bruno@clisp.org>
13043
13044         Work around fpurge bug on BSD systems.
13045         * modules/fpurge (Makefile.am): Compile fpurge.c unconditionally.
13046         * m4/fpurge.m4 (gl_FUNC_FPURGE): Don't invoke AC_LIBOBJ.
13047         * lib/fpurge.h (fpurge): Don't handle __fpurge wrapper here. Define
13048         fpurge to rpl_fpurge if the system already has this function.
13049         * lib/fpurge.c (fpurge): Handle also the __fpurge wrapper case and
13050         the case where the system already has this function. Correct invariants
13051         on BSD systems.
13052         * lib/fseeko.c (rpl_fseeko): Update recognition of preceding fflush on
13053         BSD systems.
13054
13055 2007-04-29  Sergey Poznyakoff  <gray@gnu.org.ua>
13056
13057         * lib/argp-help.c (hol_cluster_cmp): Reverse comparison.  Change
13058         proposed by Sven Verdoolaege.
13059
13060         * tests/test-argp.c: Fix option ordering.  Test deeply clustered
13061         options.
13062         * tests/test-argp-2.sh (func_compare): Use diff instead of cmp.
13063         (usage and help tests): Update
13064
13065 2007-04-29  Bruno Haible  <bruno@clisp.org>
13066
13067         * tests/test-fflush.c (main): Use a file of size 17, not 10.
13068         Print more information in case of failure. Disable a test on BeOS.
13069
13070 2007-04-29  Bruno Haible  <bruno@clisp.org>
13071
13072         * tests/**/test-*.[hc] (ASSERT): Use fprintf to show the line number.
13073         This helps debugging on systems on which no gdb is available.
13074
13075 2007-04-29  Bruno Haible  <bruno@clisp.org>
13076
13077         * lib/freading.h: Improve comments.
13078         * lib/fwriting.h: Likewise.
13079         * tests/test-freading.c (main): Don't check freading immediately after
13080         repositioning. Needed for glibc.
13081
13082 2007-04-29  Bruno Haible  <bruno@clisp.org>
13083
13084         * lib/freading.c (freading): Trivial simplification.
13085
13086 2007-04-28  Bruno Haible  <bruno@clisp.org>
13087
13088         * tests/test-fwriting.c (main): Also test the interaction between
13089         fflush and fwriting.
13090         * modules/fwriting-tests (Depends-on): Add fflush.
13091
13092         * tests/test-freading.c (main): Also test the interaction between
13093         fflush and freading.
13094         * modules/freading-tests (Depends-on): Add fflush.
13095
13096 2007-04-28  Bruno Haible  <bruno@clisp.org>
13097
13098         * lib/stdio_.h (fseek, ftell): Provide link warnings suggesting to use
13099         fseeko and ftello.
13100         Suggested by Eric Blake.
13101
13102 2007-04-28  Jim Meyering  <jim@meyering.net>
13103
13104         Avoid false-negative in gl_STDINT_H's C99 conformance test.
13105         * m4/stdint.m4 (gl_STDINT_H): When checking whether stdint.h conforms
13106         to C99, include all of gl_STDINT_INCLUDES, not just <stddef.h>.
13107
13108 2007-04-27  Eric Blake  <ebb9@byu.net>
13109
13110         * doc/headers/assert.texi (assert.h): Document assert module use.
13111
13112 2007-04-27  Bruno Haible  <bruno@clisp.org>
13113
13114         * doc/headers/*.texi: New files.
13115         * doc/gnulib.texi (Header File Substitutes): New chapter.
13116         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Specify
13117         dependencies.
13118         (standards.info ,standards.html, standards.dvi): Update dependencies.
13119         (mostlyclean, clean): New targets.
13120
13121 2007-04-27  Bruno Haible  <bruno@clisp.org>
13122
13123         * lib/sysexits_.h: Renamed from lib/sysexit_.h.
13124         * modules/sysexits (Files, Makefile.am): Update.
13125
13126         * lib/sys_socket_.h: Renamed from lib/socket_.h.
13127         * modules/sys_socket (Files, Makefile.am): Update.
13128
13129         * lib/sys_stat_.h: Renamed from lib/stat_.h.
13130         * modules/sys_stat (Files, Makefile.am): Update.
13131
13132 2007-04-27  Eric Blake  <ebb9@byu.net>
13133
13134         * lib/freading.h: Improve comments.
13135         * lib/fwriting.h: Likewise.
13136         * lib/fflush.c: Likewise.
13137
13138         Fix closein for mingw.
13139         * modules/closein-tests: Add tests for closein.
13140         * tests/test-closein.c: New file.
13141         * tests/test-closein.sh: Likewise.
13142         * lib/unistd_.h [!SEEK_CUR]: Mingw also needs stdlib.h for _exit.
13143         * lib/closein.c (close_stdin): Don't fflush non-seekable streams.
13144
13145 2007-04-27  Bruno Haible  <bruno@clisp.org>
13146
13147         * lib/inttypes_.h [_DECC]: Don't use #include_next if the compiler
13148         version is < 6.
13149         * lib/math_.h [__DECC]: Likewise.
13150         * lib/stdio_.h [__DECC]: Likewise.
13151         * lib/stdlib_.h [__DECC]: Likewise.
13152         * lib/string_.h [__DECC]: Likewise.
13153         * lib/time_.h [__DECC]: Likewise.
13154         * lib/wchar_.h [__DECC]: Likewise.
13155         * lib/wctype_.h [__DECC]: Likewise.
13156
13157 2007-04-27  Bruno Haible  <bruno@clisp.org>
13158
13159         * tests/test-fbufmode.c (main): Relax test, to avoid failure on mingw.
13160
13161 2007-04-27  Bruno Haible  <bruno@clisp.org>
13162
13163         * lib/fflush.c: Add comments.
13164         * modules/fpurge-tests (Depends-on): Add fflush.
13165         * modules/freadable-tests (Depends-on): Likewise.
13166         * modules/fwritable-tests (Depends-on): Likewise.
13167
13168 2007-04-27  Charles Wilson  <libtool@cwilson.fastmail.fm>
13169
13170         * m4/argz.m4 (gl_FUNC_ARGZ): Use !HAVE_WORKING_ARGZ instead of
13171         SYSTEM_ARGZ_IS_BROKEN.  Also, minor stylistic improvements.
13172         Report by Bruno Haible <bruno@clisp.org>.
13173
13174 2007-04-26  Eric Blake  <ebb9@byu.net>
13175
13176         Fix fflush on mingw.
13177         * modules/fflush (Depends-on): Add freading.
13178         * lib/fflush.c (rpl_fflush): Use freading to avoid losing buffered
13179         but unread data.
13180
13181 2007-04-26  Eric Blake  <ebb9@byu.net>
13182         and Bruno Haible  <bruno@clisp.org>
13183
13184         Implement freading and fwriting.
13185         * lib/freading.c: New file.
13186         * lib/freading.h: Likewise.
13187         * m4/freading.m4: Likewise.
13188         * modules/freading: Likewise.
13189         * modules/freading-tests: Likewise.
13190         * tests/test-freading.c: Likewise.
13191         * lib/fwriting.c: New file.
13192         * lib/fwriting.h: Likewise.
13193         * m4/fwriting.m4: Likewise.
13194         * modules/fwriting: Likewise.
13195         * modules/fwriting-tests: Likewise.
13196         * tests/test-fwriting.c: Likewise.
13197         * MODULES.html.sh (File stream based Input/Output): Mention them.
13198
13199 2007-04-26  Bruno Haible  <bruno@clisp.org>
13200
13201         * lib/stdio_.h (fseeko, ftello): Check that off_t has the same size as
13202         'long' when we assume it.
13203         Suggested by Eric Blake.
13204
13205 2007-04-26  Bruno Haible  <bruno@clisp.org>
13206
13207         Ensure fseeko, ftello are declared on glibc systems.
13208         * modules/fflush (configure.ac-early): Require AC_FUNC_FSEEKO.
13209         * modules/fseeko (configure.ac-early): Likewise.
13210         * modules/ftello (configure.ac-early): Likewise.
13211         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Don't define HAVE_FSEEKO, rely on
13212         AC_FUNC_FSEEKO for this.
13213         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Inline gl_CHECK_FSEEKO.
13214         (gl_CHECK_FSEEKO): Remove macro.
13215
13216 2007-04-26  Bruno Haible  <bruno@clisp.org>
13217
13218         * tests/test-fflush.c (main): Also check the ftell result after
13219         fflush and fseek/fseeko.
13220         * lib/fflush.c (rpl_fflush): For BSD implementations, update the
13221         file descriptor position cache in the stream.
13222         * lib/fseeko.c (rpl_fseeko): Likewise.
13223
13224 2007-04-26  Bruno Haible  <bruno@clisp.org>
13225
13226         * modules/fflush-tests (Depends-on): Add fseeko.
13227
13228 2007-04-25  Charles Wilson  <libtool@cwilson.fastmail.fm>
13229             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13230
13231         * lib/argz_.h: ensure error_t definition is obtained in same
13232         mechanism system argz.h would have.
13233         * m4/argz.m4 (gl_FUNC_ARGZ): add new test to check if $host's
13234         argz facilities are known bad.  Err on the side of caution if
13235         cross-compiling.
13236
13237 2007-04-25  Eric Blake  <ebb9@byu.net>
13238
13239         * lib/fpurge.c (includes): Use stdlib.h for free.
13240         * tests/test-fflush.c (main): Also test fflush-fseeko.
13241
13242 2007-04-25  Bruno Haible  <bruno@clisp.org>
13243
13244         Make fflush+fseek POSIX-compliant on FreeBSD and MacOS X.
13245         * lib/fseeko.c: New file.
13246         * lib/stdio_.h: Include <sys/types.h> when off_t is needed.
13247         (fseeko, fseek): Define to replacements if REPLACE_FFLUSH.
13248         * m4/fseeko.m4 (gl_CHECK_FSEEKO): New macro, extracted from
13249         gl_FUNC_FSEEKO.
13250         (gl_FUNC_FSEEKO): Invoke it.
13251         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Arrange to compile fseeko.c. Invoke
13252         gl_CHECK_FSEEKO. Define HAVE_FSEEKO.
13253         * modules/fflush (Files): Add lib/fseeko.c, m4/fseeko.m4.
13254
13255 2007-04-25  Bruno Haible  <bruno@clisp.org>
13256
13257         * modules/fflush (Depends-on): Add ftello.
13258
13259 2007-04-25  Bruno Haible  <bruno@clisp.org>
13260
13261         * modules/ftello-tests: New file.
13262         * tests/test-ftello.c: New file.
13263
13264         * modules/ftello: New file.
13265         * m4/ftello.m4: New file.
13266         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELLO,
13267         HAVE_FTELLO.
13268         * lib/stdio_.h (ftello): New declaration.
13269         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELLO,
13270         HAVE_FTELLO.
13271
13272 2007-04-25  Bruno Haible  <bruno@clisp.org>
13273
13274         * modules/fseeko-tests: New file.
13275         * tests/test-fseeko.c: New file.
13276
13277         * modules/fseeko: New file.
13278         * m4/fseeko.m4: New file.
13279         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEKO,
13280         HAVE_FSEEKO.
13281         * lib/stdio_.h (fseeko): New declaration.
13282         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEKO,
13283         HAVE_FSEEKO.
13284
13285 2007-04-25  Bruno Haible  <bruno@clisp.org>
13286
13287         * lib/stdio_.h (fflush): Add support for GNULIB_POSIXCHECK.
13288
13289 2007-04-25  Bruno Haible  <bruno@clisp.org>
13290
13291         * lib/unistd_.h: Include <stdio.h> if needed to get the SEEK_* macros.
13292         * tests/test-stdio.c: Check that the various SEEK_* macros are defined.
13293         * tests/test-unistd.c: Likewise.
13294         * tests/test-fcntl.c: Likewise.
13295
13296 2007-04-23  Eric Blake  <ebb9@byu.net>
13297
13298         * lib/fflush.c: Fix missing include.
13299         Reported by Bruno Haible.
13300
13301 2007-04-23  Bruno Haible  <bruno@clisp.org>
13302
13303         * lib/fpurge.c (fpurge) [glibc, BSD]: Free a malloc()ed ungetc buffer.
13304         Reported by Eric Blake.
13305
13306 2007-04-23  Bruno Haible  <bruno@clisp.org>
13307
13308         * lib/fbufmode.c (fbufmode): Port to Solaris/SPARC64.
13309
13310 2007-04-23  Bruno Haible  <bruno@clisp.org>
13311
13312         * lib/fseterr.c (fseterr): Don't hardcode the value of _IOERR.
13313
13314 2007-04-23  Bruno Haible  <bruno@clisp.org>
13315
13316         * tests/test-fbufmode.c (main): Be prepared to a failure of setvbuf.
13317         Needed on HP-UX 11.
13318
13319 2007-04-16  Eric Blake  <ebb9@byu.net>
13320
13321         Make fflush rely on fpurge.
13322         * lib/fflush.c (rpl_fflush): Rely on fpurge module, rather than
13323         open coding all variants.
13324         * modules/fflush (Depends-on): Add fpurge and unistd.
13325         * modules/fflush-tests (Depends-on): Unistd is no longer extra.
13326         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Simplify.
13327
13328         Fix --with-tests compilation on cygwin.
13329         * modules/argmatch-tests (Makefile.am): List gnulib library first
13330         in LDADD.
13331         * modules/argp-tests (Makefile.am): Likewise.
13332         * modules/array-list-tests (Makefile.am): Likewise.
13333         * modules/array-oset-tests (Makefile.am): Likewise.
13334         * modules/avltree-list-tests (Makefile.am): Likewise.
13335         * modules/avltree-oset-tests (Makefile.am): Likewise.
13336         * modules/avltreehash-list-tests (Makefile.am): Likewise.
13337         * modules/carray-list-tests (Makefile.am): Likewise.
13338         * modules/dirname-tests (Makefile.am): Likewise.
13339         * modules/frexp-tests (Makefile.am): Likewise.
13340         * modules/isnanl-tests (Makefile.am): Likewise.
13341         * modules/linked-list-tests (Makefile.am): Likewise.
13342         * modules/linkedhash-list-tests (Makefile.am): Likewise.
13343         * modules/lock-tests (Makefile.am): Likewise.
13344         * modules/rbtree-list-tests (Makefile.am): Likewise.
13345         * modules/rbtree-oset-tests (Makefile.am): Likewise.
13346         * modules/rbtreehash-list-tests (Makefile.am): Likewise.
13347         * modules/tls-tests (Makefile.am): Likewise.
13348         * modules/tsearch-tests (Makefile.am): Likewise.
13349         * modules/xvasprintf-tests (Makefile.am): Likewise.
13350
13351         Fix fpurge for cygwin.
13352         * lib/fpurge.c (fpurge): Fix order of operation flub, and return a
13353         value.
13354         * modules/fpurge-tests (Depends-on): Clean up trash.
13355
13356 2007-04-16  Simon Josefsson  <simon@josefsson.org>
13357
13358         * lib/gc-libgcrypt.c (gc_hash_open): Shut up compiler warnings.
13359
13360         * m4/autobuild.m4: Re-indent.
13361
13362 2007-04-13  Bruno Haible  <bruno@clisp.org>
13363
13364         * modules/fpurge-tests: New file.
13365         * tests/test-fpurge.c: New file.
13366
13367         * modules/fpurge: New file.
13368         * lib/fpurge.h: New file.
13369         * lib/fpurge.c: New file.
13370         * m4/fpurge.m4: New file.
13371
13372 2007-04-13  Bruno Haible  <bruno@clisp.org>
13373
13374         * modules/fbufmode-tests: New file.
13375         * tests/test-fbufmode.c: New file.
13376
13377         * modules/fbufmode: New file.
13378         * lib/fbufmode.h: New file.
13379         * lib/fbufmode.c: New file.
13380         * m4/fbufmode.m4: New file.
13381
13382 2007-04-13  Bruno Haible  <bruno@clisp.org>
13383
13384         * modules/fwritable-tests: New file.
13385         * tests/test-fwritable.c: New file.
13386
13387         * modules/fwritable: New file.
13388         * lib/fwritable.h: New file.
13389         * lib/fwritable.c: New file.
13390         * m4/fwritable.m4: New file.
13391
13392 2007-04-13  Bruno Haible  <bruno@clisp.org>
13393
13394         * modules/freadable-tests: New file.
13395         * tests/test-freadable.c: New file.
13396
13397         * modules/freadable: New file.
13398         * lib/freadable.h: New file.
13399         * lib/freadable.c: New file.
13400         * m4/freadable.m4: New file.
13401
13402 2007-04-13  Bruno Haible  <bruno@clisp.org>
13403
13404         * modules/fflush-tests (Makefile.am): Remove EXTRA_DIST. Augment
13405         MOSTLYCLEANFILES.
13406
13407 2007-04-13  Paul Eggert  <eggert@cs.ucla.edu>
13408
13409         * build-aux/bootstrap (gnulib_tool_option_extras): New var, used by
13410         gzip bootstrap.conf to avoid dragging in i18n machinery.
13411         (gnulib_tool_option): Use it.
13412
13413 2007-04-13  Bruno Haible  <bruno@clisp.org>
13414
13415         * tests/test-vasnprintf-posix.c (test_function): Add tests for %f and
13416         %F directives.
13417         * tests/test-vasprintf-posix.c (test_function): Likewise.
13418         * tests/test-snprintf-posix.h (test_function): Likewise.
13419         * tests/test-sprintf-posix.h (test_function): Likewise.
13420         * tests/test-fprintf-posix.h (test_function): Likewise.
13421         * tests/test-printf-posix.h (test_function): Likewise.
13422         * tests/test-fprintf-posix.out: Likewise.
13423
13424 2007-04-13  Bruno Haible  <bruno@clisp.org>
13425
13426         * modules/lock-tests (configure.ac): For LIBSCHED, try also -lposix4.
13427         * modules/tls-tests (configure.ac): Likewise.
13428         Reported by Arto C. Nirkko <anirkko@insel.ch>.
13429
13430 2007-04-13  Bruno Haible  <bruno@clisp.org>
13431
13432         * lib/tls.c (glthread_tls_get): Fix return type.
13433         Patch by Arto C. Nirkko <anirkko@insel.ch>.
13434
13435 2007-04-12  Eric Blake  <ebb9@byu.net>
13436
13437         * modules/gettime (Depends-on): Remove gettime.
13438         Reported by Dmitry V. Levin.
13439
13440 2007-04-12  Bruno Haible  <bruno@clisp.org>
13441
13442         * modules/fflush (Include): Mention <stdio.h>.
13443         * modules/strtoimax (Include): Mention <inttypes.h>.
13444         * modules/strtoumax (Include): Likewise.
13445
13446 2007-04-12  Eric Blake  <ebb9@byu.net>
13447
13448         * .cvsignore: New file.
13449         * .gitignore: Likewise.
13450
13451 2007-04-12  Bruno Haible  <bruno@clisp.org>
13452
13453         * modules/iconv-tests (test_iconv_LDADD): Mention -liconv after LDADD,
13454         not before, since $(LDADD) often contains libgnu.a.
13455         * modules/striconv-tests (test_striconv_LDADD): Likewise.
13456         * modules/striconveh-tests (test_striconveh_LDADD): Likewise.
13457         * modules/striconveha-tests (test_striconveha_LDADD): Likewise.
13458         Needed on Cygwin.
13459
13460 2007-04-12  Eric Blake  <ebb9@byu.net>
13461
13462         Work around glibc's failure to flush stdin on fclose.
13463         * lib/closein.c (close_stdin): Flush stdin before closing.
13464
13465         Work around glibc's failure to reset seekable stdin on exit.
13466         * modules/closein: New module.
13467         * lib/closein.c: New file.
13468         * lib/closein.h: Likewise.
13469         * m4/closein.m4: Likewise.
13470         * MODULES.html.sh (File stream based Input/Output): Document it.
13471
13472 2007-04-12  Simon Josefsson  <simon@josefsson.org>
13473
13474         * gnulib-tool: Rename generated 'autobuild' script to
13475         'do-autobuild' in --create-megatestdir output.
13476
13477         * doc/gnulib.texi (Build robot for gnulib): Fix.
13478
13479 2007-04-12  Simon Josefsson  <simon@josefsson.org>
13480
13481         * modules/sysexits (Depends-on): Add absolute-header.
13482
13483 2007-04-12  Eric Blake  <ebb9@byu.net>
13484
13485         No need to preserve errno on success.
13486         * lib/fflush.c (rpl_fflush): Simplify errno tracking.
13487         Reported by Bruno Haible.
13488
13489 2007-04-12  Simon Josefsson  <simon@josefsson.org>
13490
13491         * MODULES.html.sh (Support for maintaining and releasing
13492         projects): Add autobuild.  Suggested by Eric Blake <ebb9@byu.net>.
13493
13494 2007-04-12  Simon Josefsson  <simon@josefsson.org>
13495
13496         * gnulib-tool (func_modules_add_dummy): Respect --avoid=dummy.
13497
13498 2007-04-12  Simon Josefsson  <simon@josefsson.org>
13499
13500         * modules/autobuild: New module.
13501
13502         * m4/autobuild.m4: New file.
13503
13504 2007-04-11  Bruno Haible  <bruno@clisp.org>
13505
13506         * lib/vasnprintf.c (VASNPRINTF): Implement the %F directive using the
13507         %f directive, if NEED_PRINTF_DIRECTIVE_F is defined.
13508         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_F): New macro.
13509         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_F): New macro.
13510         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
13511         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
13512         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
13513         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
13514         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
13515         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
13516         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Invoke
13517         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
13518         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
13519         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Invoke
13520         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
13521         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
13522         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Invoke
13523         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
13524         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
13525         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Invoke
13526         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
13527         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
13528         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Invoke
13529         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
13530         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
13531         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Invoke
13532         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
13533         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
13534         Reported by Eric Blake.
13535
13536 2007-04-11  Bruno Haible  <bruno@clisp.org>
13537
13538         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Fix test. It always failed.
13539
13540 2007-04-10  Bruno Haible  <bruno@clisp.org>
13541
13542         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct result
13543         for NaN and Infinity. Needed on FreeBSD 6.1.
13544         * tests/test-vasnprintf-posix.c (test_function): Undo last change
13545         regarding results for "%010a" of Infinity and NaN.
13546         * tests/test-vasprintf-posix.c (test_function): Likewise.
13547         * tests/test-snprintf-posix.h (test_function): Likewise.
13548         * tests/test-sprintf-posix.h (test_function): Likewise.
13549         * tests/test-fprintf-posix.h (test_function): Likewise.
13550         * tests/test-printf-posix.h (test_function): Likewise.
13551         * tests/test-fprintf-posix.out: Likewise.
13552
13553 2007-04-10  Bruno Haible  <bruno@clisp.org>
13554
13555         * modules/locale-tests: New file.
13556         * tests/test-locale.c: New file.
13557
13558         * modules/locale: New file.
13559         * lib/locale_.h: New file.
13560         * m4/locale_h.m4: New file.
13561
13562 2007-04-10  Paul Eggert  <eggert@cs.ucla.edu>
13563             Bruno Haible  <bruno@clisp.org>
13564
13565         * m4/signbit.m4 (gl_SIGNBIT): When the sign bit position could not
13566         be determined, test for availability of the copysignf, copysign,
13567         copysignl functions.
13568         * lib/signbitf.c (gl_signbitf): Use copysignf if available in libc.
13569         * lib/signbitd.c (gl_signbitd): Use copysign if available in libc.
13570         * lib/signbitl.c (gl_signbitl): Use copysignl if available in libc.
13571
13572 2007-04-09  Eric Blake  <ebb9@byu.net>
13573
13574         * lib/stdio_.h [REPLACE_FFLUSH]: Declare rpl_fflush.
13575         * modules/stdio (Makefile.am): Support fflush.
13576         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
13577         * modules/fflush: New file.
13578         * lib/fflush.c: Likewise.
13579         * m4/fflush.m4: Likewise.
13580         * modules/fflush-tests: New test.
13581         * tests/test-fflush.c: Likewise.
13582         * MODULES.html.sh (Input/output <stdio.h>): Document new module.
13583
13584 2007-04-06  Bruno Haible  <bruno@clisp.org>
13585
13586         * lib/vasnprintf.c: Include <math.h>. Don't include float+.h.
13587         (VASNPRINTF): Use signbit for faster determination whether to print a
13588         minus sign.
13589         * modules/vasnprintf (Files): Remove lib/float+.h.
13590         * modules/fprintf-posix (Depends-on): Add signbit.
13591         * modules/snprintf-posix (Depends-on): Likewise.
13592         * modules/sprintf-posix (Depends-on): Likewise.
13593         * modules/vasnprintf-posix (Depends-on): Likewise.
13594         * modules/vasprintf-posix (Depends-on): Likewise.
13595         * modules/vfprintf-posix (Depends-on): Likewise.
13596         * modules/vsnprintf-posix (Depends-on): Likewise.
13597         * modules/vsprintf-posix (Depends-on): Likewise.
13598
13599 2007-04-06  Bruno Haible  <bruno@clisp.org>
13600
13601         * tests/test-frexp.c (main): Test also the sign bit of zero results.
13602         * tests/test-frexpl.c (main): Likewise.
13603         * tests/test-ldexpl.c (main): Likewise.
13604         * modules/frexp-tests (Depends-on): Add signbit.
13605         * modules/frexpl-tests (Depdends-on): Likewise.
13606         * modules/ldexpl-tests (Depdends-on): Likewise.
13607
13608 2007-04-06  Bruno Haible  <bruno@clisp.org>
13609
13610         * modules/signbit-tests: New file.
13611         * tests/test-signbit.c: New file.
13612
13613         * modules/signbit: New file.
13614         * lib/signbitf.c: New file.
13615         * lib/signbitd.c: New file.
13616         * lib/signbitl.c: New file.
13617         * m4/signbit.m4: New file.
13618         * lib/math_.h (gl_signbitf, gl_signbitd, gl_signbitl): New declarations.
13619         (signbit): New macro.
13620         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_SIGNBIT and
13621         REPLACE_SIGNBIT.
13622         * modules/math (Makefile.am) Substibute also GNULIB_SIGNBIT and
13623         REPLACE_FREXPL into math.h.
13624
13625 2007-04-06  Bruno Haible  <bruno@clisp.org>
13626
13627         * modules/isnanf-nolibm-tests: New file.
13628         * tests/test-isnanf.c: New file.
13629
13630         * modules/isnanf-nolibm: New file.
13631         * lib/isnanf.h: New file.
13632         * lib/isnanf.c: New file.
13633         * lib/isnan.c: Consider the USE_FLOAT macro.
13634         * m4/isnanf.m4: New file.
13635
13636 2007-04-06  Bruno Haible  <bruno@clisp.org>
13637
13638         * modules/gettext-h (configure.ac): AC_SUBST LIBINTL and LTLIBINTL.
13639         (Link): New section.
13640
13641         * modules/canonicalize-lgpl-tests (Makefile.am): Undo last change.
13642
13643 2007-04-06  Bruno Haible  <bruno@clisp.org>
13644
13645         Assume the 'long double' type.
13646         * m4/longdouble.m4: Remove file.
13647         * config/srclist.txt: Don't mention longdouble.m4.
13648         * lib/allocsa.h: Assume HAVE_LONG_DOUBLE to be true.
13649         * lib/float+.h: Likewise.
13650         * lib/frexp.c: Likewise.
13651         * lib/printf-args.h: Likewise.
13652         * lib/printf-args.c: Likewise.
13653         * lib/printf-frexp.c: Likewise.
13654         * lib/printf-parse.c: Likewise.
13655         * lib/vasnprintf.c: Likewise.
13656         * m4/allocsa.m4: Remove gt_TYPE_LONGDOUBLE invocation.
13657         * m4/intl.m4: Likewise.
13658         * m4/isnanl.m4: Likewise.
13659         * m4/printf.m4: Likewise.
13660         * m4/printf-frexpl.m4: Likewise.
13661         * m4/vasnprintf.m4: Likewise.
13662         * modules/allocsa (Files): Remove m4/longdouble.m4.
13663         * modules/gettext (Files): Likewise.
13664         * modules/relocatable-prog-wrapper (Files): Likewise.
13665         * modules/vasnprintf (Files): Likewise.
13666         * modules/isnanl (Files): Likewise.
13667         (Include): Simplify.
13668         * modules/isnanl-nolibm (Files): Remove m4/longdouble.m4.
13669         (Include): Simplify.
13670         * modules/printf-frexpl (Files): Remove m4/longdouble.m4.
13671         (Include): Simplify.
13672         * modules/snprintf-posix-tests (Files): Remove m4/longdouble.m4.
13673         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
13674         * modules/sprintf-posix-tests (Files): Remove m4/longdouble.m4.
13675         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
13676         * modules/vasnprintf-posix-tests (Files): Remove m4/longdouble.m4.
13677         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
13678         * modules/vasprintf-posix-tests (Files): Remove m4/longdouble.m4.
13679         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
13680         * modules/vsnprintf-posix-tests (Files): Remove m4/longdouble.m4.
13681         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
13682         * modules/vsprintf-posix-tests (Files): Remove m4/longdouble.m4.
13683         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
13684         * tests/test-isnanl-nolibm.c: Assume HAVE_LONG_DOUBLE to be true.
13685         * tests/test-isnanl.c: Likewise.
13686         * tests/test-snprintf-posix.h: Likewise.
13687         * tests/test-sprintf-posix.h: Likewise.
13688         * tests/test-vasnprintf-posix.c: Likewise.
13689         * tests/test-vasnprintf-posix2.c: Likewise.
13690         * tests/test-vasprintf-posix.c: Likewise.
13691
13692 2007-04-06  Bruno Haible  <bruno@clisp.org>
13693
13694         Fix problem with Compaq (ex-DEC) Desktop C compiler on Tru64.
13695         * lib/math_.h [__DECC]: Include the overridden include file through
13696         #include_next, outside the double-inclusion guard.
13697         * lib/stdio_.h [__DECC]: Likewise.
13698         * lib/stdlib_.h [__DECC]: Likewise.
13699         * lib/string_.h [__DECC]: Likewise.
13700         * lib/time_.h [__DECC]: Likewise.
13701         * lib/wchar_.h [__DECC]: Likewise.
13702         * lib/wctype_.h [__DECC]: Likewise.
13703         * lib/inttypes_.h [__DECC]: Likewise.
13704         Reported by Albert Chin <china@thewrittenword.com> in
13705         <http://lists.gnu.org/archive/html/bug-gnulib/2007-04/msg00088.html>.
13706
13707 2007-04-04  Eric Blake  <ebb9@byu.net>
13708
13709         * m4/stdint.m4 (gl_STDINT_H): Detect WINT_MAX bug in cygwin
13710         1.5.x.
13711
13712 2007-04-04  Bruno Haible  <bruno@clisp.org>
13713
13714         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct
13715         rounding. Don't assume that FreeBSD 6 and NetBSD 4 pass this test.
13716
13717 2007-04-04  Bruno Haible  <bruno@clisp.org>
13718
13719         * tests/test-vasnprintf-posix.c (test_function): Allow two possible
13720         results for "%010a" of Infinity and NaN.
13721         * tests/test-vasprintf-posix.c (test_function): Likewise.
13722         * tests/test-snprintf-posix.h (test_function): Likewise.
13723         * tests/test-sprintf-posix.h (test_function): Likewise.
13724         * tests/test-fprintf-posix.h (test_function): Remove these tests.
13725         * tests/test-printf-posix.h (test_function): Likewise.
13726         * tests/test-fprintf-posix.out: Update.
13727         Needed for FreeBSD 6.1.
13728
13729 2007-04-04  Bruno Haible  <bruno@clisp.org>
13730
13731         * DEPENDENCIES: Remove mentions of tar and gzip, since they are not
13732         directly used by the gnulib modules nor by gnulib-tool.
13733
13734 2007-04-04  Paul Eggert  <eggert@cs.ucla.edu>
13735
13736         * DEPENDENCIES: Give overall description of version dependency
13737         desirability.  Use more-typical names for apps.
13738         Add shell, coreutils, diffutils, grep, tar, gzip.
13739
13740 2007-04-04  Simon Josefsson  <simon@josefsson.org>
13741
13742         * MODULES.html.sh: Rename crypto modules.  Remove iconvme.
13743
13744 2007-04-04  Karl Berry  <karl@gnu.org>
13745
13746         * MODULES.html.sh (func_module): missing '.
13747
13748 2007-04-03  Bruno Haible  <bruno@clisp.org>
13749
13750         * modules/argmatch-tests (Makefile.am): New variable
13751         test_argmatch_LDADD.
13752         * modules/argp-tests (Makefile.am): New variable test_argp_LDADD.
13753         * modules/array-list-tests (Makefile.am): New variable
13754         test_array_list_LDADD.
13755         * modules/array-oset-tests (Makefile.am): New variable
13756         test_array_oset_LDADD.
13757         * modules/avltree-list-tests (Makefile.am): New variable
13758         test_avltree_list_LDADD.
13759         * modules/avltree-oset-tests (Makefile.am): New variable
13760         test_avltree_oset_LDADD.
13761         * modules/avltreehash-list-tests (Makefile.am): New variable
13762         test_avltreehash_list_LDADD.
13763         * modules/canonicalize-lgpl-tests (Makefile.am): New variable
13764         test_canonicalize_lgpl_LDADD.
13765         * modules/carray-list-tests (Makefile.am): New variable
13766         test_carray_list_LDADD.
13767         * modules/dirname-tests (Makefile.am): New variable
13768         test_dirname_LDADD.
13769         * modules/linked-list-tests (Makefile.am): New variable
13770         test_linked_list_LDADD.
13771         * modules/linkedhash-list-tests (Makefile.am): New variable
13772         test_linkedhash_list_LDADD.
13773         * modules/rbtree-list-tests (Makefile.am): New variable
13774         test_rbtree_list_LDADD.
13775         * modules/rbtree-oset-tests (Makefile.am): New variable
13776         test_rbtree_oset_LDADD.
13777         * modules/rbtreehash-list-tests (Makefile.am): New variable
13778         test_rbtreehash_list_LDADD.
13779         * modules/xvasprintf-tests (Makefile.am): New variable
13780         test_xvasprintf_LDADD.
13781         Reported by Eric Blake.
13782
13783 2007-04-03  Eric Blake  <ebb9@byu.net>
13784
13785         * DEPENDENCIES: Weaken m4 requirements.
13786
13787 2007-04-03  Bruno Haible  <bruno@clisp.org>
13788
13789         * modules/frexp-tests (configure.ac): Remove AC_SUBST.
13790         * modules/isnanl-tests (configure.ac): Likewise.
13791
13792 2007-04-03  Ben Pfaff  <blp@gnu.org>
13793
13794         * modules/iconv_open: Add $(srcdir)/ to source directory
13795         references in Makefile fragments that call gperf, to fix VPATH
13796         builds.
13797
13798 2007-04-03  Bruno Haible  <bruno@clisp.org>
13799
13800         * modules/ldexpl (Depends-on): Add isnanl, remove isnanl-nolibm.
13801         * lib/ldexpl.c: Undo last change.
13802
13803 2007-04-03  Bruno Haible  <bruno@clisp.org>
13804
13805         * modules/printf-frexpl (Depends-on): Undo last change.
13806         (Files): Add m4/ldexpl.m4.
13807
13808 2007-04-03  Bruno Haible  <bruno@clisp.org>
13809
13810         * m4/isnanl.m4 (gl_FUNC_ISNANL): Substitute ISNANL_LIBM.
13811         * modules/isnanl (Link): New section.
13812
13813         * m4/frexp.m4 (gl_FUNC_FREXP): Substitute FREXP_LIBM.
13814         * modules/frexp (Link): New section.
13815
13816         * m4/frexpl.m4 (gl_FUNC_FREXPL): Substitute FREXPL_LIBM.
13817         * modules/frexpl (Link): New section.
13818
13819         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Substitute LDEXPL_LIBM.
13820         * modules/ldexpl (Link): New section.
13821
13822 2007-04-03  Bruno Haible  <bruno@clisp.org>
13823
13824         * modules/TEMPLATE-EXTENDED: New file.
13825         * gnulib-tool (func_all_modules, func_verify_module): Exclude it.
13826
13827 2007-04-03  Bruno Haible  <bruno@clisp.org>
13828
13829         * DEPENDENCIES: New file.
13830         Suggested by Simon Josefsson.
13831
13832 2007-04-03  Bruno Haible  <bruno@clisp.org>
13833
13834         * doc/gnulib.texi: Escape @.
13835
13836 2007-04-03  James Youngman  <jay@gnu.org>
13837         and Paul Eggert  <eggert@cs.ucla.edu>
13838
13839         * lib/stat-time.h (get_stat_birthtime): Check for zero-valued
13840         birthtime on all systems that have birthtime, not just those which
13841         use st_birthtimensec rather than st_birthtim.  Putting zero in
13842         st_birthtim.tv_sec is how (for example) FreeBSD/x86 6.1 indicates
13843         that the birth time is not available for files on an NFS mount.
13844
13845 2007-04-03  Simon Josefsson  <simon@josefsson.org>
13846
13847         * modules/memxor: Move back from crypto/, suggested by Bruno.
13848         * modules/crypto/hmac-sha1: Fix memxor dependency.
13849
13850         * modules/crypto/gc: Moved from ../.
13851
13852 2007-04-02  Eric Blake  <ebb9@byu.net>
13853
13854         * lib/ldexpl.c (includes): Avoid libm.
13855
13856         * modules/printf-frexpl (Depends-on): Depend on ldexpl.
13857
13858 2007-04-02  Bruno Haible  <bruno@clisp.org>
13859
13860         * lib/sysexit_.h (EX_OK): Disable the EX_OK definition from <unistd.h>
13861         on IRIX.
13862
13863 2007-04-02  Bruno Haible  <bruno@clisp.org>
13864
13865         * m4/intdiv0.m4 (gt_INTDIV0): Avoid performing the test for real on
13866         x86 or x86_64 platforms running MacOS X.
13867         Reported by Ryan Schmidt <@ryandesign.com>.
13868
13869 2007-04-02  Bruno Haible  <bruno@clisp.org>
13870
13871         * m4/intdiv0.m4 (gt_INTDIV0): When cross-compiling, treat x86_64 like
13872         i386.
13873
13874 2007-04-01  Simon Josefsson  <simon@josefsson.org>
13875
13876         * modules/crypto/arcfour: Moved from ../.
13877         * modules/crypto/arcfour-tests: Moved from ../.
13878         * modules/crypto/arctwo: Moved from ../.
13879         * modules/crypto/arctwo-tests: Moved from ../.
13880         * modules/crypto/des: Moved from ../.
13881         * modules/crypto/des-tests: Moved from ../.
13882         * modules/crypto/gc-arcfour: Moved from ../.
13883         * modules/crypto/gc-arcfour-tests: Moved from ../.
13884         * modules/crypto/gc-arctwo: Moved from ../.
13885         * modules/crypto/gc-arctwo-tests: Moved from ../.
13886         * modules/crypto/gc-des: Moved from ../.
13887         * modules/crypto/gc-des-tests: Moved from ../.
13888         * modules/crypto/gc-hmac-md5: Moved from ../.
13889         * modules/crypto/gc-hmac-md5-tests: Moved from ../.
13890         * modules/crypto/gc-hmac-sha1: Moved from ../.
13891         * modules/crypto/gc-hmac-sha1-tests: Moved from ../.
13892         * modules/crypto/gc-md2: Moved from ../.
13893         * modules/crypto/gc-md2-tests: Moved from ../.
13894         * modules/crypto/gc-md4: Moved from ../.
13895         * modules/crypto/gc-md4-tests: Moved from ../.
13896         * modules/crypto/gc-md5: Moved from ../.
13897         * modules/crypto/gc-md5-tests: Moved from ../.
13898         * modules/crypto/gc-pbkdf2-sha1: Moved from ../.
13899         * modules/crypto/gc-pbkdf2-sha1-tests: Moved from ../.
13900         * modules/crypto/gc-random: Moved from ../.
13901         * modules/crypto/gc-rijndael: Moved from ../.
13902         * modules/crypto/gc-rijndael-tests: Moved from ../.
13903         * modules/crypto/gc-sha1: Moved from ../.
13904         * modules/crypto/gc-sha1-tests: Moved from ../.
13905         * modules/crypto/gc-tests: Moved from ../.
13906         * modules/crypto/hmac-md5: Moved from ../.
13907         * modules/crypto/hmac-md5-tests: Moved from ../.
13908         * modules/crypto/hmac-sha1: Moved from ../.
13909         * modules/crypto/hmac-sha1-tests: Moved from ../.
13910         * modules/crypto/md2: Moved from ../.
13911         * modules/crypto/md2-tests: Moved from ../.
13912         * modules/crypto/md4: Moved from ../.
13913         * modules/crypto/md4-tests: Moved from ../.
13914         * modules/crypto/md5: Moved from ../.
13915         * modules/crypto/md5-tests: Moved from ../.
13916         * modules/crypto/memxor: Moved from ../.
13917         * modules/crypto/rijndael: Moved from ../.
13918         * modules/crypto/rijndael-tests: Moved from ../.
13919         * modules/crypto/sha1: Moved from ../.
13920
13921 2007-03-30  James Youngman  <jay@gnu.org>
13922
13923         * tests/test-stat-time.c (prepare_test): use chmod() rather than
13924         rename() to change the ctime of a file (because ctime is unaffected
13925         by rename on jfs2 on AIX 5.1).
13926         (main): Start by doing cleanup, in case a previous run failed leaving
13927         test files behind.
13928
13929 2007-03-31  Bruno Haible  <bruno@clisp.org>
13930
13931         Support old proprietary implementations of iconv.
13932         * modules/iconv_open: New file.
13933         * lib/iconv_.h: New file.
13934         * m4/iconv_h.m4: New file.
13935         * lib/iconv_open.c: New file.
13936         * lib/iconv_open-aix.gperf: New file.
13937         * lib/iconv_open-hpux.gperf: New file.
13938         * lib/iconv_open-irix.gperf: New file.
13939         * lib/iconv_open-osf.gperf: New file.
13940         * m4/iconv_open.m4: New file.
13941         * modules/linebreak (Depends-on): Add iconv_open.
13942         * modules/striconv (Depends-on): Likewise.
13943         * modules/striconveh (Depends-on): Likewise.
13944         * modules/unicodeio (Depends-on): Likewise.
13945         * lib/striconveh.h (mem_cd_iconveh, str_cd_iconveh): Allow cd to be
13946         (iconv_t)(-1).
13947         * lib/striconveh.c (mem_cd_iconveh_internal): Use an indirect
13948         conversion if cd is (iconv_t)(-1).
13949         (mem_iconveh, str_iconveh): Don't fail just because a direct conversion
13950         is not possible.
13951
13952 2007-03-31  Bruno Haible  <bruno@clisp.org>
13953
13954         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
13955         work on Solaris either. Protect also second use of "autodetect_jp".
13956
13957 2007-03-31  Bruno Haible  <bruno@clisp.org>
13958
13959         * m4/frexpl.m4 (gl_FUNC_FREXPL): Set HAVE_DECL_FREXPL to 0 when
13960         the function is not present.
13961
13962 2007-03-31  Bruno Haible  <bruno@clisp.org>
13963
13964         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Set HAVE_DECL_LDEXPL to 0 when
13965         the function is not present.
13966
13967 2007-03-31  Bruno Haible  <bruno@clisp.org>
13968
13969         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-29 patch. Test also against
13970         a bug in HP-UX iconv_open().
13971
13972 2007-03-31  Bruno Haible  <bruno@clisp.org>
13973
13974         * MODULES.html.sh (func_module): Don't show gnulib-common.m4.
13975         (Mathematics <math.h>): New section, add fpieee.
13976         (Input/output <stdio.h>): Add fseterr.
13977         (Mathematics <math.h>): New section, add printf-frexp.
13978         (Container data structures): Add sublist.
13979         (Core language properties): Add fpucw, inline.
13980         (Functions for greatest-width integer types <inttypes.h>): Add
13981         imaxabs, imaxdiv, inttypes.
13982         (Mathematics <math.h>): Add frexp, frexpl, isnan-nolibm, isnanl,
13983         isnanl-nolibm, ldexp.
13984         (Mathematics <math.h>): New section, add printf-frexpl.
13985         (Support for systems lacking POSIX:2001): Add fprintf-posix,
13986         printf-posix, snprintf-posix, sprintf-posix, string, search, socklen,
13987         sys_select, sys_socket, vasnprintf-posix, vasprintf-posix,
13988         vfprintf-posix, vprintf-posix, vsnprintf-posix, vsprintf-posix.
13989         (Unicode string functions): Add unistr/u*-mbtoucr.
13990         (Java): Add javacomp-script, javaexec-script.
13991         (C#): Add csharpcomp-script, csharpexec-script.
13992         (Support for building libraries and executables): Add havelib,
13993         relocatable-*.
13994         (Support for maintaining and releasing projects): Renamed from
13995         'Support for maintaining and release projects'. Add announce-gen.
13996
13997 2007-03-31  Bruno Haible  <bruno@clisp.org>
13998
13999         * README: Talk primarily about git.
14000         (git and CVS): Renamed from CVS.
14001         * doc/gnulib.texi (Introduction, Build robot for gnulib): Mention that
14002         gnulib is available through git.
14003         * doc/gnulib-tool.texi (CVS Issues): Mention git and svn as well.
14004
14005 2007-03-30  Bruno Haible  <bruno@clisp.org>
14006
14007         * lib/alloca_.h: Change prefix of double-inclusion guard macro to _GL_.
14008         * lib/poll_.h: Likewise.
14009         * lib/stat_.h: Likewise.
14010         * lib/sys_time_.h: Likewise.
14011         * lib/sysexit_.h: Likewise.
14012         * lib/glob_.h: Prefix double-inclusion guard macro with _GL_.
14013         * lib/stdbool_.h: Likewise.
14014         * lib/byteswap_.h: Add double-inclusion guard.
14015
14016 2007-03-30  Sergey Poznyakoff  <gray@mirddin.farlep.net>
14017
14018         * lib/sysexit_.h: Prefix double-inclusion guard macro with _GNULIB.
14019
14020 2007-03-30  Karl Berry  <karl@gnu.org>
14021
14022         * config/srclist-update: double space after USA in the license
14023         substitution, since that's how it's usually (?) written.
14024
14025 2007-03-30  Paul Eggert  <eggert@cs.ucla.edu>
14026
14027         * lib/write-any-file.c (can_write_any_file): Fix else-else bug
14028         reported by Bruno Haible.
14029
14030 2007-03-29  Bruno Haible  <bruno@clisp.org>
14031
14032         * m4/iconv.m4 (AM_ICONV_LINK): Require AC_CANONICAL_HOST. Test against
14033         a bug in AIX iconv().
14034
14035 2007-03-29  Bruno Haible  <bruno@clisp.org>
14036
14037         * modules/ldexpl-tests: New file.
14038         * tests/test-ldexpl.c: New file.
14039
14040 2007-03-29  Bruno Haible  <bruno@clisp.org>
14041
14042         * lib/ldexpl.c: Include fpucw.h.
14043         (ldexpl): Use BEGIN/END_LONG_DOUBLE_ROUNDING. Skip the last unneeded
14044         multiplication.
14045         * modules/ldexpl (Depends-on): Add fpucw.
14046
14047 2007-03-29  Bruno Haible  <bruno@clisp.org>
14048
14049         * modules/ldexpl: New file.
14050         * m4/ldexpl.m4: New file.
14051         * lib/math_.h (ldexpl): Define to a replacement if REPLACE_LDEXPL is
14052         set.
14053         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize also GNULIB_LDEXPL,
14054         REPLACE_LDEXPL.
14055         * modules/math (Makefile.am): Substitute also GNULIB_LDEXPL,
14056         REPLACE_LDEXPL.
14057         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
14058         gl_FUNC_LDEXPL_WORKS.
14059         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Remove test for ldexpl.
14060         * modules/mathl (Files): Remove lib/ldexpl.c.
14061         (Depends-on): Add ldexpl.
14062
14063 2007-03-29  Bruno Haible  <bruno@clisp.org>
14064
14065         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Declare frexpl.
14066
14067 2007-03-29  Bruno Haible  <bruno@clisp.org>
14068
14069         * tests/test-striconveh.c (main): Don't assume that a direct conversion
14070         between ISO-8859-1 and ISO-8859-2 is possible. Needed for OSF/1, IRIX
14071         and possibly also HP-UX.
14072         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
14073         work on AIX, IRIX, HP-UX, OSF/1.
14074         * tests/uniconv/test-u16-conv-from-enc.c (main): Likewise.
14075         * tests/uniconv/test-u16-strconv-from-enc.c (main): Likewise.
14076         * tests/uniconv/test-u32-conv-from-enc.c (main): Likewise.
14077         * tests/uniconv/test-u32-strconv-from-enc.c (main): Likewise.
14078         * tests/uniconv/test-u8-conv-from-enc.c (main): Likewise.
14079         * tests/uniconv/test-u8-strconv-from-enc.c (main): Likewise.
14080
14081 2007-03-29  Bruno Haible  <bruno@clisp.org>
14082
14083         * tests/test-stat-time.c: Include <fcntl.h>, not <sys/fcntl.h>.
14084
14085 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
14086
14087         * lib/acl-internal.h (acl_get_fd, acl_set_fd): undef before defining,
14088         to work around a problem on OSF/1 5.1 reported by Bruno Haible.
14089
14090 2007-03-29  Eric Blake  <ebb9@byu.net>
14091
14092         * lib/acl-internal.h: Remove redundant include.
14093         (ACL_NOT_WELL_SUPPORTED): Also filter on EBUSY, returned by
14094         Cygwin when a file is locked.
14095
14096 2007-03-29  Bruno Haible  <bruno@clisp.org>
14097
14098         * lib/vasprintf.c [IN_LIBASPRINTF]: Include different specification
14099         file.
14100         * lib/asprintf.c [IN_LIBASPRINTF]: Likewise.
14101
14102 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
14103
14104         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Don't bother to
14105         try to remove a parent directory if the child couldn't be removed
14106         (except for the first rmdir, which could fail because the child
14107         doesn't exist).  Problem reported by Jeff Blaine in
14108         <http://lists.gnu.org/archive/html/bug-tar/2007-03/msg00014.html>.
14109
14110 2007-03-28  Bruno Haible  <bruno@clisp.org>
14111
14112         * lib/striconveh.c (utf8conv_carefully): New function.
14113         (mem_cd_iconveh_internal): Invoke it.
14114
14115 2007-03-28  Bruno Haible  <bruno@clisp.org>
14116
14117         * lib/striconveh.c (mem_cd_iconveh_internal): Use u8_mbtoucr instead
14118         of u8_mbtouc in order to distinguish invalid and incomplete UTF-8
14119         input.
14120         * modules/striconveh (Depends-on): Add unistr/u8-mbtoucr. Replace
14121         utf8-ucs4 with unistr/u8-mbtouc. Replace ucs4-utf8 with
14122         unistr/u8-uctomb.
14123
14124 2007-03-28  Bruno Haible  <bruno@clisp.org>
14125
14126         * modules/unistr/u8-mbtoucr: New file.
14127         * lib/unistr/u8-mbtoucr.c: New file.
14128         * modules/unistr/u16-mbtoucr: New file.
14129         * lib/unistr/u16-mbtoucr.c: New file.
14130         * modules/unistr/u16-mbtoucr: New file.
14131         * lib/unistr/u16-mbtoucr.c: New file.
14132         * lib/unistr.h (u8_mbtoucr, u16_mbtoucr, u32_mbtoucr): New declarations.
14133
14134 2007-03-27  Simon Josefsson  <simon@josefsson.org>
14135             Bruno Haible  <bruno@clisp.org>
14136
14137         * m4/vasprintf.m4: Convert AC_SUBST into shell variable for
14138         REPLACE_VASPRINTF.  Set HAVE_VASPRINTF.  Add
14139         AC_REQUIRE([gl_STDIO_H_DEFAULTS]).
14140
14141         * m4/stdio_h.m4: Add stubs for vasprintf too.
14142
14143         * modules/stdio: Support vasprintf in sed command.
14144
14145         * modules/vasprintf: Depend on stdio for prototypes.  Remove
14146         vasprintf.h.  Add stdio module indicator.
14147
14148         * lib/stdio_.h: Declare asprintf and vasprintf, based on
14149         vasprintf.h.
14150
14151         * lib/vasprintf.h: File removed.
14152
14153         * lib/asprintf.c: Use stdio.h instead of vasprintf.h.
14154         * lib/vasprintf.c: Ditto.
14155         * lib/xvasprintf.c: Ditto.
14156         * tests/test-vasprintf-posix.c: Ditto.
14157         * tests/test-vasprintf.c: Ditto.
14158
14159 2007-03-27  Bruno Haible  <bruno@clisp.org>
14160
14161         Make vasnprintf multithread-safe.
14162         * lib/vasnprintf.c (decimal_point_char): New function.
14163         (VASNPRINTF): Use it.
14164         Suggested by Simon Josefsson.
14165
14166 2007-03-27  Eric Blake  <ebb9@byu.net>
14167
14168         Support sub-second birthtime on cygwin.
14169         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Also check for st_birthtim.
14170         * lib/stat-time.h (STAT_TIMESPEC): Adjust comments.
14171         (get_stat_birthtime): Also work with st_birthtim.
14172
14173 2007-03-27  Paul Eggert  <eggert@cs.ucla.edu>
14174
14175         * lib/stat-time.h (USE_BIRTHTIME): Remove.
14176         (get_stat_atime_ns, get_stat_ctime_ns, get_stat_mtime_ns):
14177         (get_stat_birthtime_ns): Do not try to use "spare" fields.
14178         (get_stat_birthtime_ns): Simplify compile-time tests.
14179         (get_stat_birthtime): Change the API to look like
14180         get_stat_mtime etc., except return a negative tv_nsec on error.
14181         * m4/stat-time.m4 (gl_STAT_TIME, gl_STAT_BIRTHTIME):
14182         Don't check for "spare" fields.
14183         (gl_STAT_BIRTHTIME): Don't check for struct stat.st_birthtimespec.tv_sec
14184         or for struct stat.st_birthtime, as these tests aren't used.
14185         * tests/test-stat-time.c (test_birthtime): Adjust to new API.
14186
14187 2007-03-27  Bruno Haible  <bruno@clisp.org>
14188
14189         * lib/stat-time.h: Include <sys/stat.h>.
14190
14191 2007-03-27  James Youngman  <jay@gnu.org>
14192
14193         * lib/stat-time.h (get_stat_birthtime): New function for
14194           retrieving st_birthtime as provided by UFS2 (hence *BSD).
14195         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Probe for st_birthtime
14196           and its variants.
14197         * modules/stat-time (configure.ac): call gl_STAT_BIRTHTIME.
14198         * modules/stat-time-test: New file.
14199         * tests/test-stat-time.c: New test, devised by Bruno Haible.
14200
14201 2007-03-26  Bruno Haible  <bruno@clisp.org>
14202
14203         Better support of signalling NaNs.
14204         * lib/atanl.c: Include isnanl.h.
14205         (atanl): Perform test for NaN at the beginning of the function and
14206         through a call to isnanl.
14207         * lib/cosl.c: Include isnanl.h.
14208         (cosl): Perform test for NaN at the beginning of the function and
14209         through a call to isnanl.
14210         * lib/ldexpl.c: Include isnanl.h.
14211         (ldexpl): Perform test for NaN through a call to isnanl.
14212         * lib/logl.c: Include isnanl.h.
14213         (logl): Perform test for NaN at the beginning of the function and
14214         through a call to isnanl.
14215         * lib/sinl.c: Include isnanl.h.
14216         (sinl): Perform test for NaN at the beginning of the function and
14217         through a call to isnanl.
14218         * lib/sqrtl.c: Include isnanl.h.
14219         (sqrtl): Perform test for NaN at the beginning of the function and
14220         through a call to isnanl.
14221         * lib/tanl.c: Include isnanl.h.
14222         (tanl): Perform test for NaN at the beginning of the function and
14223         through a call to isnanl.
14224         * lib/trigl.c (ieee754_rem_pio2l): Remove test for NaN.
14225         * modules/mathl (Depends-on): Add isnanl.
14226
14227 2007-03-26  Eric Blake  <ebb9@byu.net>
14228
14229         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Fix
14230         regression in logic sense of previous patch.
14231
14232 2007-03-26  Bruno Haible  <bruno@clisp.org>
14233
14234         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Don't use
14235         unportable shell command "if ! ...".
14236         Reported by Ralf Wildenhues.
14237
14238 2007-03-25  Bruno Haible  <bruno@clisp.org>
14239
14240         * lib/sysexit_,h: If HAVE_SYSEXITS_H is defined, include the original
14241         <sysexits.h> file, and only add EX_CONFIG.
14242         * m4/sysexits.m4 (gl_SYSEXITS): If <sysexits.h> exists, check its
14243         absolute file name and whether it is sufficient. Substitute also
14244         HAVE_SYSEXITS_H and ABSOLUTE_SYSEXITS_H.
14245         * modules/sysexits (Makefile.am): Substitute HAVE_SYSEXITS_H and
14246         ABSOLUTE_SYSEXITS_H into sysexits.h.
14247
14248 2007-03-25  Bruno Haible  <bruno@clisp.org>
14249
14250         * lib/getaddrinfo.c (getaddrinfo): Don't access hints->ai_flags when
14251         hints is NULL.
14252
14253 2007-03-25  Bruno Haible  <bruno@clisp.org>
14254
14255         * lib/uniconv/u8-conv-from-enc.c (u8_conv_from_encoding): Add a cast.
14256         * lib/uniconv/u8-strconv-to-enc.c (u8_strconv_to_encoding): Likewise.
14257
14258 2007-03-25  Bruno Haible  <bruno@clisp.org>
14259
14260         * lib/vasnprintf.c: Include langinfo.h.
14261         (VASNPRINTF): Prefer nl_langinfo over localeconv, since it's more
14262         multithread-safe.
14263         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): New macro.
14264         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke it.
14265         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
14266         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
14267         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
14268         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
14269         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
14270         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX: Likewise.
14271         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
14272         Reported by Simon Josefsson.
14273
14274 2007-03-25  Bruno Haible  <bruno@clisp.org>
14275
14276         * lib/printf-parse.c [!IN_LIBINTL]: Include <stdint.h>, for intmax_t.
14277         (PRINTF_PARSE): Make the support for size specifier 'j' unconditional.
14278         * modules/vasnprintf (Depends-on): Add stdint.
14279
14280 2007-03-25  Bruno Haible  <bruno@clisp.org>
14281
14282         * modules/fpieee: New file.
14283         * m4/fpieee.m4: New file.
14284         * modules/isnan-nolibm (Depends-on): Add fpieee.
14285         * modules/isnanl-nolibm (Depends-on): Add fpieee.
14286         * modules/isnanl (Depends-on): Add fpieee.
14287
14288 2007-03-25  Bruno Haible  <bruno@clisp.org>
14289
14290         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Test also finite numbers.
14291
14292 2007-03-25  Bruno Haible  <bruno@clisp.org>
14293
14294         Avoid test failures on IRIX 6.5.
14295         * tests/test-frexpl.c (MIN_NORMAL_EXP): New macro.
14296         (main): Use it.
14297         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP): New
14298         macros.
14299         (main): Use them.
14300
14301 2007-03-25  Bruno Haible  <bruno@clisp.org>
14302
14303         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): New macro.
14304         (gl_FUNC_FREXPL): Invoke it. Set REPLACE_FREXPL to 1 if it frexpl
14305         exists but doesn't work.
14306         * lib/math_.h (frexpl): Define as a replacement macro if REPLACE_FREXPL
14307         is set. Don't provide a prototype if REPLACE_FREXPL is not set.
14308         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_FREXPL.
14309         * modules/math (Makefile.am) Substibute also REPLACE_FREXPL into math.h.
14310
14311 2007-03-25  Bruno Haible  <bruno@clisp.org>
14312
14313         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Add check whether frexp(inf)
14314         returns inf. Needed on IRIX 6.5.
14315
14316 2007-03-25  Bruno Haible  <bruno@clisp.org>
14317
14318         * tests/test-frexpl.c: Include isnanl-nolibm.h.
14319         (main): Use isnanl instead of x != x idiom.
14320         * modules/frexpl-tests (Depends-on): Add isnanl-nolibm.
14321
14322         * tests/test-frexp.c: Include isnan.h.
14323         (main): Use isnan instead of x != x idiom.
14324         * modules/frexp-tests (Depends-on): Add isnan-nolibm.
14325
14326 2007-03-25  Bruno Haible  <bruno@clisp.org>
14327
14328         * tests/test-frexp.c (NaN): New function/macro.
14329         (main): Use it instead of 0.0 / 0.0.
14330         * tests/test-isnan.c (NaN): New function/macro.
14331         (main): Use it instead of 0.0 / 0.0.
14332         * tests/test-vasnprintf-posix.c (NaN): New function/macro.
14333         (test_function): Use it instead of 0.0 / 0.0.
14334         * tests/test-vasprintf-posix.c (NaN): New function/macro.
14335         (test_function): Use it instead of 0.0 / 0.0.
14336         * tests/test-snprintf-posix.h (NaN): New function/macro.
14337         (test_function): Use it instead of 0.0 / 0.0.
14338         * tests/test-sprintf-posix.h (NaN): New function/macro.
14339         (test_function): Use it instead of 0.0 / 0.0.
14340         * tests/test-fprintf-posix.h (NaN): New function/macro.
14341         (test_function): Use it instead of 0.0 / 0.0.
14342         * tests/test-printf-posix.h (NaN): New function/macro.
14343         (test_function): Use it instead of 0.0 / 0.0.
14344
14345         * lib/isnan.c (FUNC): Work around a DEC C compiler bug.
14346
14347 2007-03-25  Bruno Haible  <bruno@clisp.org>
14348
14349         * lib/glob_.h: Include <sys/stat.h>. Avoids warnings on AIX 5.1.
14350
14351 2007-03-25  Bruno Haible  <bruno@clisp.org>
14352
14353         * lib/regexec.c (merge_state_with_log): Make static.
14354
14355 2007-03-25  Bruno Haible  <bruno@clisp.org>
14356
14357         * lib/trigl.c (kernel_rem_pio2): Make static.
14358
14359 2007-03-25  Bruno Haible  <bruno@clisp.org>
14360
14361         * lib/sincosl.c (sincosl_table): Make static.
14362
14363 2007-03-25  Bruno Haible  <bruno@clisp.org>
14364
14365         * lib/argp.h (__restrict): Define to empty, rather than to 'restrict',
14366         if the compiler does not support C99.
14367
14368 2007-03-25  Bruno Haible  <bruno@clisp.org>
14369
14370         * modules/time (Makefile.am): Ensure all rule action lines start with a
14371         tab.
14372
14373 2007-03-24  Bruno Haible  <bruno@clisp.org>
14374
14375         * modules/tsearch-tests: New file.
14376         * tests/test-tsearch.sh: New file.
14377         * tests/test-tsearch.c: New file, mostly copied from glibc.
14378
14379         * modules/search-tests: New file.
14380         * tests/test-search.c: New file.
14381
14382         * modules/search: New file.
14383         * lib/search_.h: New file, incorporating lib/tsearch.h.
14384         * m4/search_h.m4: New file.
14385         * lib/tsearch.h: Remove file.
14386         * lib/tsearch.c: Include search.h instead of tsearch.h.
14387         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Require gl_SEARCH_H_DEFAULTS. Set
14388         HAVE_TSEARCH.
14389         * modules/tsearch (Files): Remove lib/tsearch.h.
14390         (Depends-on): Add search.
14391         (configure.ac): Invoke gl_SEARCH_MODULE_INDICATOR.
14392         (Include): Change tsearch.h into search.h.
14393
14394 2007-03-24  Bruno Haible  <bruno@clisp.org>
14395
14396         * modules/fpucw: New file.
14397         * lib/fpucw.h: New file.
14398         * lib/frexp.c: Include fpucw.h.
14399         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
14400         (FUNC): Use them.
14401         * lib/printf-frexp.c: Include fpucw.h.
14402         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
14403         (FUNC): Use them.
14404         * lib/vasnprintf.c: Include fpucw.h.
14405         (VASNPRINTF): Invoke BEGIN/END_LONG_DOUBLE_ROUNDING around the
14406         'long double' calculations.
14407         * tests/test-frexpl.c: Include fpucw.h.
14408         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
14409         * tests/test-printf-frexpl.c: Include fpucw.h.
14410         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
14411         * modules/frexpl (Depends-on): Add fpucw.
14412         * modules/printf-frexpl (Depends-on): Likewise.
14413         * modules/fprintf-posix (Depends-on): Likewise.
14414         * modules/snprintf-posix (Depends-on): Likewise.
14415         * modules/sprintf-posix (Depends-on): Likewise.
14416         * modules/vasnprintf-posix (Depends-on): Likewise.
14417         * modules/vasprintf-posix (Depends-on): Likewise.
14418         * modules/vfprintf-posix (Depends-on): Likewise.
14419         * modules/vsnprintf-posix (Depends-on): Likewise.
14420         * modules/vsprintf-posix (Depends-on): Likewise.
14421         * modules/frexpl-tests (Depends-on): Likewise.
14422         * modules/printf-frexpl-tests (Depends-on): Likewise.
14423
14424 2007-03-24  Bruno Haible  <bruno@clisp.org>
14425
14426         * lib/float+.h: New file.
14427         * lib/isnan.c: Include float+.h.
14428         (SIZE): New macro.
14429         (FUNC): Compare only SIZE bytes of the value.
14430         * lib/vasnprintf.c: Include float+.h.
14431         (VASNPRINTF): When comparing agains +0.0L or +0.0, compare only
14432         SIZEOF_LDBL or SIZEOF_DBL bytes.
14433         * modules/isnan-nolibm (Files): Add lib/float+.h.
14434         * modules/isnanl-nolibm (Files): Add lib/float+.h.
14435         * modules/isnanl (Files): Add lib/float+.h.
14436         * modules/vasnprintf (Files): Add lib/float+.h.
14437
14438 2007-03-24  Bruno Haible  <bruno@clisp.org>
14439
14440         * lib/vasnprintf.c [!HAVE_LONG_DOUBLE]: Include printf-frexp.h. Don't
14441         include isnanl-nolibm.h.
14442
14443 2007-03-24  Bruno Haible  <bruno@clisp.org>
14444
14445         * tests/test-read-file.c (main): Don't produce spurious output for
14446         expected situations. Make the test fail if it encountered unexpected
14447         results.
14448
14449 2007-03-24  Bruno Haible  <bruno@clisp.org>
14450
14451         * m4/locale-fr.m4 (gt_LOCALE_FR): Remove the special-casing of NetBSD,
14452         since its fr_FR.ISO8859-1 locale wouldn't pass the tests.
14453
14454 2007-03-24  Bruno Haible  <bruno@clisp.org>
14455
14456         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Fix last change.
14457
14458 2007-03-24  Bruno Haible  <bruno@clisp.org>
14459
14460         * modules/unistr/base (Depends-on): Remove utf8-ucs4-unsafe,
14461         utf16-ucs4-unsafe, utf8-ucs4, utf16-ucs4, ucs4-utf8, ucs4-utf16.
14462
14463         * modules/unistr/u8-mbtouc: Add source files from module utf8-ucs4.
14464         * modules/utf8-ucs4: Turn into a symbolic link to module
14465         unistr/u8-mbtouc.
14466
14467         * modules/unistr/u8-mbtouc-unsafe: Add source files from module
14468         utf8-ucs4-unsafe.
14469         * modules/utf8-ucs4-unsafe: Turn into a symbolic link to module
14470         unistr/u8-mbtouc-unsafe.
14471
14472         * modules/unistr/u16-mbtouc: Add source files from module utf16-ucs4.
14473         * modules/utf16-ucs4: Turn into a symbolic link to module
14474         unistr/u16-mbtouc.
14475
14476         * modules/unistr/u16-mbtouc-unsafe: Add source files from module
14477         utf16-ucs4-unsafe.
14478         * modules/utf16-ucs4-unsafe: Turn into a symbolic link to module
14479         unistr/u16-mbtouc-unsafe.
14480
14481         * modules/unistr/u8-uctomb: Add source files from module utf4-utf8.
14482         * modules/ucs4-utf8: Turn into a symbolic link to module
14483         unistr/u8-ubtomb.
14484
14485         * modules/unistr/u16-uctomb: Add source files from module utf4-utf16.
14486         * modules/ucs4-utf16: Turn into a symbolic link to module
14487         unistr/u16-ubtomb.
14488
14489 2007-03-24  Bruno Haible  <bruno@clisp.org>
14490
14491         * lib/unistr/u8-mbtouc-aux.c: Renamed from lib/unistr/utf8-ucs4.c.
14492         Enable the function only if HAVE_INLINE.
14493         * lib/unistr/u8-mbtouc-unsafe-aux.c: Renamed from
14494         lib/unistr/utf8-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
14495         * lib/unistr/u16-mbtouc-aux.c: Renamed from lib/unistr/utf16-ucs4.c.
14496         Enable the function only if HAVE_INLINE.
14497         * lib/unistr/u16-mbtouc-unsafe-aux.c: Renamed from
14498         lib/unistr/utf16-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
14499         * lib/unistr/u8-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf8.c.
14500         Enable the function only if HAVE_INLINE.
14501         * lib/unistr/u16-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf16.c.
14502         Enable the function only if HAVE_INLINE.
14503         * modules/utf8-ucs4: Update.
14504         * modules/utf8-ucs4-unsafe: Update.
14505         * modules/utf16-ucs4: Update.
14506         * modules/utf16-ucs4-unsafe: Update.
14507         * modules/ucs4-utf8: Update.
14508         * modules/ucs4-utf16: Update.
14509
14510 2007-03-24  Bruno Haible  <bruno@clisp.org>
14511
14512         * lib/utf8-ucs4.h: Remove file.
14513         * lib/utf8-ucs4-unsafe.h: Remove file.
14514         * lib/utf16-ucs4.h: Remove file.
14515         * lib/utf16-ucs4-unsafe.h: Remove file.
14516         * lib/ucs4-utf8.h: Remove file.
14517         * lib/ucs4-utf16.h: Remove file.
14518         * lib/unistr.h: Include their previous contents.
14519         * m4/utf-ucs4.m4: Remove file.
14520         * m4/ucs4-utf.m4: Remove file.
14521         * modules/utf8-ucs4 (Files): Remove lib/utf8-ucs4.h.
14522         (Depends-on): Add unistr/base.
14523         (configure.ac): Remove gl_UTF_UCS4.
14524         (Makefile.am): Update.
14525         (Include): Change to unistr.h.
14526         * modules/utf8-ucs4-unsafe (Files): Remove lib/utf8-ucs4-unsafe.h.
14527         (Depends-on): Add unistr/base.
14528         (configure.ac): Remove gl_UTF_UCS4.
14529         (Makefile.am): Update.
14530         (Include): Change to unistr.h.
14531         * modules/utf16-ucs4 (Files): Remove lib/utf16-ucs4.h.
14532         (Depends-on): Add unistr/base.
14533         (configure.ac): Remove gl_UTF_UCS4.
14534         (Makefile.am): Update.
14535         (Include): Change to unistr.h.
14536         * modules/utf16-ucs4-unsafe (Files): Remove lib/utf16-ucs4-unsafe.h.
14537         (Depends-on): Add unistr/base.
14538         (configure.ac): Remove gl_UTF_UCS4.
14539         (Makefile.am): Update.
14540         (Include): Change to unistr.h.
14541         * modules/ucs4-utf8 (Files): Remove lib/ucs4-utf8.h.
14542         (Depends-on): Add unistr/base.
14543         (configure.ac): Remove gl_UCS4_UTF.
14544         (Makefile.am): Update.
14545         (Include): Change to unistr.h.
14546         * modules/ucs4-utf16 (Files): Remove lib/ucs4-utf16.h.
14547         (Depends-on): Add unistr/base.
14548         (configure.ac): Remove gl_UCS4_UTF.
14549         (Makefile.am): Update.
14550         (Include): Change to unistr.h.
14551         * lib/unistr/utf8-ucs4.c: Include unistr.h instead of utf8-ucs4.h.
14552         * lib/unistr/utf8-ucs4-unsafe.c: Include unistr.h instead of
14553         utf8-ucs4-unsafe.h.
14554         * lib/unistr/utf16-ucs4.c: Include unistr.h instead of utf16-ucs4.h.
14555         * lib/unistr/utf16-ucs4-unsafe.c: Include unistr.h instead of
14556         utf16-ucs4-unsafe.h.
14557         * lib/unistr/ucs4-utf8.c: Include unistr.h instead of ucs4-utf8.h.
14558         * lib/unistr/ucs4-utf16.c: Include unistr.h instead of ucs4-utf16.h.
14559         * lib/unistr/u8-chr.c: Don't include ucs4-utf8.h.
14560         * lib/unistr/u8-strchr.c: Likewise.
14561         * lib/unistr/u8-strrchr.c: Likewise.
14562         * lib/unistr/u16-chr.c: Don't include ucs4-utf16.h.
14563         * lib/unistr/u16-strchr.c: Likewise.
14564         * lib/unistr/u16-strrchr.c: Likewise.
14565         * lib/striconveh.c: Update.
14566         * lib/linebreak.c: Update.
14567
14568 2007-03-24  Bruno Haible  <bruno@clisp.org>
14569
14570         * lib/argp-help.c (fill_in_uparams, canon_doc_option): Cast the
14571         arguments of isspace, isalpha, isalnum, isdigit to 'unsigned char'.
14572
14573 2007-03-22  Bruno Haible  <bruno@clisp.org>
14574
14575         * lib/strptime.c (__strptime_internal): Use ANSI C syntax.
14576
14577 2007-03-23  Paul Eggert  <eggert@cs.ucla.edu>
14578
14579         * MODULES.html.sh (File system functions): New module write-any-file.
14580         * modules/write-any-file, lib/write-any-file.c, lib/write-any-file.h:
14581         * m4/write-any-file.m4: New files.
14582
14583 2007-03-23  Eric Blake  <ebb9@byu.net>
14584
14585         * gnulib-tool: Rearrange space-tab sequences, since some editors
14586         like to eat them.
14587
14588 2007-03-23  Eric Blake  <ebb9@byu.net>
14589
14590         * lib/version-etc.c (version_etc_va): Update license wording to
14591         be more concise.  Recommended by Richard Stallman.
14592
14593 2007-03-22  Bruno Haible  <bruno@clisp.org>
14594
14595         * lib/poll.c (MSG_PEEK): New fallback definition.
14596
14597 2007-03-22  Bruno Haible  <bruno@clisp.org>
14598
14599         * modules/sys_socket-tests (configure.ac): Check for shutdown function.
14600         * tests/test-sys_socket.c (a): Test only if shutdown() exists.
14601         (main): Update.
14602         Fixes a compilation error on BeOS.
14603
14604 2007-03-22  Bruno Haible  <bruno@clisp.org>
14605
14606         * modules/frexpl-tests: New file.
14607         * tests/test-frexpl.c: New file.
14608
14609         * modules/frexpl: New file.
14610         * m4/frexpl.m4: New file.
14611         * modules/math (Makefile.am): Also substitute GNULIB_FREXPL into math.h.
14612         * lib/math_.h (frexpl): Test GNULIB_FREXPL instead of GNULIB_MATHL.
14613         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FREXPL.
14614         * modules/mathl (Files): Remove lib/frexpl.c, lib/frexp.c.
14615         (Depends-on): Add frexpl. Remove isnanl-nolibm.
14616         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Don't test for frexpl.
14617
14618 2007-03-22  Bruno Haible  <bruno@clisp.org>
14619
14620         * lib/frexpl.c: Share code with lib/frexp.c.
14621         * modules/mathl (Files): Add lib/frexp.c.
14622         (Depends-on): Add isnanl-nolibm.
14623
14624 2007-03-22  Bruno Haible  <bruno@clisp.org>
14625
14626         * modules/printf-frexp (Files): Add m4/frexp.m4.
14627         * m4/printf-frexp.m4 (gl_FUNC_PRINTF_FREXP): Define HAVE_FREXP_IN_LIBC
14628         only if the found frexp function actually works.
14629
14630 2007-03-22  Bruno Haible  <bruno@clisp.org>
14631
14632         * lib/frexp.c: Remove older implementation that uses divisions.
14633
14634 2007-03-21  Bruno Haible  <bruno@clisp.org>
14635
14636         * modules/frexp-tests: New file.
14637         * tests/test-frexp.c: New file.
14638
14639         * modules/frexp: New file.
14640         * lib/frexp.c: New file.
14641         * m4/frexp.m4: New file.
14642         * lib/math_.h (frexp): New declaration.
14643         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Also initialize GNULIB_FREXP and
14644         REPLACE_FREXP.
14645         * modules/math (math.h): Also substitute GNULIB_FREXP, REPLACE_FREXP.
14646
14647 2007-03-21  Bruno Haible  <bruno@clisp.org>
14648
14649         * modules/isnanl-tests: New file.
14650         * tests/test-isnanl.c: New file.
14651
14652         * modules/isnanl: New file.
14653         * lib/isnanl.h: New file.
14654         * m4/isnanl.m4 (gl_FUNC_ISNANL): New macro.
14655         (gl_FUNC_ISNANL_NO_LIBM): Invoke gl_HAVE_ISNANL_NO_LIBM,
14656         gl_FUNC_ISNANL_WORKS.
14657         (gl_HAVE_ISNANL_NO_LIBM, gl_HAVE_ISNANL_IN_LIBM, gl_FUNC_ISNANL_WORKS):
14658         New macros.
14659
14660 2007-03-21  Bruno Haible  <bruno@clisp.org>
14661
14662         * modules/isnanl-nolibm (Files): Add lib/isnanl-nolibm.h, remove
14663         lib/isnanl.h.
14664         (Include): Update.
14665         * lib/isnanl-nolibm.h: Renamed from lib/isnanl.h.
14666         * lib/vasnprintf.c: Update.
14667         * modules/isnanl-nolibm-tests (Files): Add tests/test-isnanl-nolibm.c,
14668         tests/test-isnanl.h, remove tests/test-isnanl.c.
14669         (Makefile.am): Update.
14670         * tests/test-isnanl-nolibm.c: New file.
14671         * tests/test-isnanl.h: New file.
14672         * tests/test-isnanl.c: Remove file.
14673
14674 2007-03-21  Jim Meyering  <jim@meyering.net>
14675
14676         When trying to open ".", treat ESTALE like EACCES.
14677         * lib/savewd.c (savewd_save): Resort to forking not just upon
14678         failure with EACCES, but also when errno is ESTALE.
14679
14680 2007-03-20  Bruno Haible  <bruno@clisp.org>
14681
14682         * lib/string_.h (strndup): Enable declaration also if HAVE_STRNDUP.
14683         Needed on AIX 5.1. Reported by Matthew Woehlke.
14684
14685 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
14686
14687         Suggestions by Bruno Haible:
14688         * lib/acl-internal.h: Include "gettext.h" rather than rolling
14689         our own.
14690         (ACL_NOT_WELL_SUPPORTED): Parenthesize arg when used.
14691         * modules/acl (Depends-on): Add gettext.
14692
14693 2007-03-19  Bruno Haible  <bruno@clisp.org>
14694
14695         * modules/iconvme: Remove file.
14696         * lib/iconvme.h: Remove file.
14697         * lib/iconvme.c: Remove file.
14698         * m4/iconvme.m4: Remove file.
14699
14700 2007-03-19  Bruno Haible  <bruno@clisp.org>
14701
14702         * doc/relocatable-maint.texi: Break long shell script line.
14703         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
14704
14705 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
14706
14707         Add limited support for Solaris 10 ZFS-style ACLs: just enough to
14708         handle file_has_acl.
14709         * lib/acl-internal.h, lib/acl_entries.c, lib/file-has-acl.c: New files.
14710         * lib/acl.c: Move header inclusions and related macro defns into
14711         lib/acl-internal.h.
14712         (S_ISLNK): Remove defn, since that's now done for us.
14713         (file_has_acl): Move to lib/file-has-acl.c.
14714         Call acl_trivial if available.  This is the crucial part of the fix.
14715         (acl_entries): Move to lib/acl_entries.c.  Now extern, since it's
14716         shared within the library.  Rewrite a bit, partly to make it compatible
14717         with the GNU coding style.
14718         * m4/acl.m4 (AC_FUNC_ACL): Add AC_LIBOBJ([file-has-acl]).
14719         Remove unnecessary double-quotes.
14720         Don't test for acl_to_text; the build will catch that.
14721         Replace acl_entries if it doesn't exist and it is needed.
14722         Check for -lsec and acl_trivial (as used on Solaris 10).
14723         * modules/acl (Files): Add lib/acl-internal.h, lib/acl_entries.c,
14724         lib/file-has-acl.c.
14725         (Depends-on): Add sys_stat, for S_ISLNK.
14726
14727 2007-03-19  Ben Pfaff  <blp@gnu.org>
14728
14729         * doc/gnulib.texi: Fix typos.
14730         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
14731
14732 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
14733
14734         * lib/getcwd.c (__getcwd): Remove redundant comparison of buf to NULL.
14735         If size is zero here, buf must be zero.
14736
14737 2007-03-19  Simon Josefsson  <simon@josefsson.org>
14738
14739         * des.c: Remove weak_keys_chksum.  Reported by Bruno Haible
14740         <bruno@clisp.org>.
14741
14742 2007-03-18  Bruno Haible  <bruno@clisp.org>
14743
14744         * lib/vasnprintf.c (VASNPRINTF): Undo first part of last patch.
14745         Suggested by Eric Blake.
14746
14747 2007-03-18  Ben Pfaff  <blp@gnu.org>
14748
14749         * doc/relocatable.texi: Recommend using as prefix a directory
14750         that does not exist and will never be created.  Based on
14751         discussion with Bruno Haible, Ralf Wildenhues, Matthew Woehlke,
14752         and others.
14753
14754 2007-03-17  Bruno Haible  <bruno@clisp.org>
14755
14756         * lib/fchownat.c: Include lchown.h.
14757
14758 2007-03-17  Bruno Haible  <bruno@clisp.org>
14759
14760         Fix endless loop when the given allocated size was > INT_MAX.
14761         * lib/vasnprintf.c (EOVERFLOW): New fallback definition.
14762         (VASNPRINTF): Fail with EOVERFLOW when the given allocated size is
14763         larger than INT_MAX, or when it grow to a value larger than INT_MAX.
14764         * lib/vsprintf.c (vsprintf): Don't pass a size > INT_MAX to vasnprintf.
14765         * lib/sprintf.c (sprintf): Likewise.
14766
14767 2007-03-17  Bruno Haible  <bruno@clisp.org>
14768
14769         * tests/test-argp-2.sh (func_compare): Output a context diff.
14770
14771 2007-03-17  Bruno Haible  <bruno@clisp.org>
14772
14773         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Check also the
14774         locale's decimal-point character.
14775
14776 2007-03-17  Bruno Haible  <bruno@clisp.org>
14777
14778         * lib/vasnprintf.c (VASNPRINTF): Clear out the memory used for arg_mem
14779         before comparing it. Needed because on some platforms (e.g. x86) a
14780         'long double' occupies less bytes than sizeof (long double).
14781
14782 2007-03-17  Bruno Haible  <bruno@clisp.org>
14783
14784         * tests/test-crc.c (main): Make printf statements 64-bit clean.
14785         * tests/test-gc-pbkdf2-sha1.c (main): Likewise.
14786         * tests/test-getaddrinfo.c (simple): Likewise.
14787         * tests/test-read-file.c (main): Likewise.
14788
14789 2007-03-17  Bruno Haible  <bruno@clisp.org>
14790
14791         * tests/test-dirname.c (main): Make printf statements 64-bit clean.
14792
14793 2007-03-17  Bruno Haible  <bruno@clisp.org>
14794
14795         * tests/test-xvasprintf.c (test_xvasprintf, test_xasprintf): Remove
14796         unused variable.
14797
14798 2007-03-17  Bruno Haible  <bruno@clisp.org>
14799
14800         * tests/test-c-strcasecmp.c: Include c-strcase.h.
14801         * tests/test-c-strncasecmp.c: Likewise.
14802
14803 2007-03-17  Bruno Haible  <bruno@clisp.org>
14804
14805         * modules/stdlib (Depends-on): Add unistd.
14806         * lib/stdlib_.h: Include <unistd.h> if mkstemp is desired.
14807         Needed for MacOS X 10.3.
14808
14809 2007-03-17  Bruno Haible  <bruno@clisp.org>
14810
14811         * lib/unistr/u-strdup.h: Include <stdlib.h>.
14812
14813 2007-03-17  Bruno Haible  <bruno@clisp.org>
14814
14815         * lib/unistr/u-cpy-alloc.h: Include <stdlib.h>.
14816
14817 2007-03-17  Bruno Haible  <bruno@clisp.org>
14818
14819         * gnulib-tool (func_import): Update .cvsignore and .gitignore files
14820         to reflect files copied from gnulib (with or without modifications).
14821         Suggested by Jim Meyering.
14822
14823 2007-03-17  Eric Blake  <ebb9@byu.net>
14824
14825         * NEWS: Document stdlib change from 2007-02-18.
14826
14827 2007-03-17  Jim Meyering  <jim@meyering.net>
14828
14829         Detect use of AC_CONFIG_AUX_DIR also when its argument is quoted.
14830         * build-aux/bootstrap: Put ""s around use of $build_aux, in case
14831         someone uses a name containing shell meta-characters.
14832         Reported by Alfred M. Szmidt.
14833
14834         * build-aux/bootstrap: Don't use \> in grep regexp.  For HP-UX.
14835
14836 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
14837
14838         * build-aux/bootstrap (with_gettext): New variable.  Run autopoint
14839         and copy gettext configuration files only if configure.ac contains
14840         a use of AM_GNU_GETTEXT_VERSION.
14841
14842 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
14843
14844         * build-aux/bootstrap (gnulib_name): New variable.
14845         (gnulib_tool_options): Use it.
14846
14847 2007-03-13  Simon Josefsson  <simon@josefsson.org>
14848
14849         * tests/test-des.c: Use new namespace.
14850
14851 2007-03-15  Bruno Haible  <bruno@clisp.org>
14852
14853         * lib/dummy.c (gl_dummy_symbol): Renamed from 'dummy'.
14854         Reported by James Youngman <jay@gnu.org>.
14855
14856 2007-03-15  Bruno Haible  <bruno@clisp.org>
14857
14858         * lib/glob.c (glob): Add 'restrict' so that prototype matches the
14859         declared prototype. Needed with cc on OSF/1 5.1.
14860
14861 2007-03-15  Bruno Haible  <bruno@clisp.org>
14862
14863         * lib/gl_list.h (gl_listelement_dispose_fn): New type.
14864         (gl_list_create_empty, gl_list_create): Add dispose_fn argument.
14865         (struct gl_list_implementation): Add dispose_fn argument to the
14866         'create_empty', 'create' methods.
14867         (struct gl_list_impl_base): Add field 'dispose_fn'.
14868         * lib/gl_list.c (gl_list_create_empty, gl_list_create): Add dispose_fn
14869         argument.
14870         * lib/gl_array_list.c (gl_array_create_empty, gl_array_create): Add
14871         dispose_fn argument.
14872         (gl_array_remove_node, gl_array_remove_at, gl_array_list_free): Call
14873         dispose_fn on the dropped values.
14874         * lib/gl_carray_list.c (gl_carray_create_empty, gl_carray_create): Add
14875         dispose_fn argument.
14876         (gl_carray_remove_at, gl_carray_list_free): Call dispose_fn on the
14877         dropped values.
14878         * lib/gl_anyavltree_list2.h (gl_tree_create): Add dispose_fn argument.
14879         (gl_tree_remove_node): Call dispose_fn on the dropped value.
14880         * lib/gl_anyrbtree_list2.h (gl_tree_create): Add dispose_fn argument.
14881         (gl_tree_remove_node): Call dispose_fn on the dropped value.
14882         * lib/gl_anytree_list2.h (gl_tree_create_empty): Add dispose_fn
14883         argument.
14884         (gl_tree_list_free): Call dispose_fn on the dropped values.
14885         * lib/gl_anytreehash_list2.h (gl_tree_list_free): Call dispose_fn on
14886         the dropped values.
14887         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
14888         Add dispose_fn argument.
14889         (gl_linked_remove_node, gl_linked_remove_at, gl_linked_list_free):
14890         Call dispose_fn on the dropped values.
14891         * lib/gl_sublist.c (gl_sublist_create_empty, gl_sublist_create_fill):
14892         Add dispose_fn argument.
14893         (gl_sublist_create): Initialize the 'dispose_fn' field.
14894         * lib/clean-temp.c (create_temp_dir, register_fd): Update.
14895         * tests/test-array_list.c (main): Update.
14896         * tests/test-carray_list.c (main): Update.
14897         * tests/test-avltree_list.c (main): Update.
14898         * tests/test-rbtree_list.c (main): Update.
14899         * tests/test-avltreehash_list.c (main): Update.
14900         * tests/test-rbtreehash_list.c (main): Update.
14901         * tests/test-linked_list.c (main): Update.
14902         * tests/test-linkedhash_list.c (main): Update.
14903         * tests/test-array_oset.c (main): Update.
14904
14905 2007-03-15  Bruno Haible  <bruno@clisp.org>
14906
14907         * lib/gl_oset.h (gl_setelement_dispose_fn): New type.
14908         (gl_oset_create_empty): Add dispose_fn argument.
14909         (struct gl_oset_implementation): Add dispose_fn argument to
14910         'create_empty' method.
14911         (struct gl_oset_impl_base): Add dispose_fn field.
14912         * lib/gl_oset.c (gl_oset_create_empty): Add dispose_fn argument.
14913         * lib/gl_array_oset.c (gl_array_create_empty): Add dispose_fn argument.
14914         (gl_array_remove_at, gl_array_free): Call dispose_fn on the dropped
14915         values.
14916         * lib/gl_anytree_oset.h (gl_tree_create_empty): Add dispose_fn argument.
14917         (gl_tree_oset_free): Call dispose_fn on the dropped values.
14918         * lib/gl_avltree_oset.c (gl_tree_remove_node): Call dispose_fn on the
14919         dropped value.
14920         * lib/gl_rbtree_oset.c (gl_tree_remove_node): Call dispose_fn on the
14921         dropped value.
14922         * tests/test-array_oset.c (main): Update.
14923         * tests/test-avltree_oset.c (main): Update.
14924         * tests/test-rbtree_oset.c (main): Update.
14925         * lib/gl_anytreehash_list1.h (add_to_bucket): Update.
14926
14927 2007-03-13  Bruno Haible  <bruno@clisp.org>
14928
14929         * tests/test-stdbool.c (i): Update after last patch.
14930
14931 2007-03-12  Bruno Haible  <bruno@clisp.org>
14932
14933         * lib/quotearg.c: Include <wctype.h> early, before the definition of
14934         the iswprint macro. Needed on Solaris 2.5.1.
14935
14936 2007-03-12  Bruno Haible  <bruno@clisp.org>
14937
14938         * tests/test-printf-frexp.c (main): Declare x as volatile.
14939
14940 2007-03-12  Simon Josefsson  <simon@josefsson.org>
14941
14942         * doc/gnulib.texi (Build robot for gnulib): New section.
14943
14944 2007-03-12  Jim Meyering  <jim@meyering.net>
14945
14946         * build-aux/bootstrap: New file.
14947         * build-aux/bootstrap.conf: New file, from coreutils.
14948
14949 2007-03-11  Bruno Haible  <bruno@clisp.org>
14950
14951         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Require AC_C_INLINE.
14952
14953 2007-03-12  Simon Josefsson  <simon@josefsson.org>
14954
14955         * lib/des.h, lib/des.c, lib/gc-gnulib.c: Use gl_ namespace, to
14956         avoid collisions with 'des_setkey'.  Reported by Bruno Haible
14957         <bruno@clisp.org>.  Also change 'tripledes_' to '3des_'.
14958
14959 2007-03-11  Bruno Haible  <bruno@clisp.org>
14960
14961         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): If the test program fails to
14962         compile, set LOCALE_TR_UTF8 to 'none' instead of empty.
14963
14964 2007-03-11  Bruno Haible  <bruno@clisp.org>
14965
14966         * lib/stdint_.h (INT64_MIN, INTMAX_MIN): Avoid using the ~INT..._MAX
14967         formula. Needed for SunPRO C 5.0.
14968
14969 2007-03-11  Bruno Haible  <bruno@clisp.org>
14970
14971         * modules/long-options (Depends-on): Add getopt.
14972
14973 2007-03-11  Bruno Haible  <bruno@clisp.org>
14974
14975         * modules/modechange (Depends-on): Add stdbool.
14976
14977 2007-03-11  Bruno Haible  <bruno@clisp.org>
14978
14979         * modules/i-ring (Depends-on): Add stdbool.
14980
14981 2007-03-11  Bruno Haible  <bruno@clisp.org>
14982
14983         * modules/gc-des (Depends-on): Add stdbool.
14984
14985 2007-03-11  Bruno Haible  <bruno@clisp.org>
14986
14987         * m4/mktime.m4 (gl_PREREQ_MKTIME): Require AC_C_INLINE.
14988
14989 2007-03-11  Bruno Haible  <bruno@clisp.org>
14990
14991         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Require AC_C_RESTRICT.
14992
14993 2007-03-11  Bruno Haible  <bruno@clisp.org>
14994
14995         * lib/unistr/u32-mbtouc-unsafe.c (u32_mbtouc_unsafe): Fix syntax error.
14996
14997 2007-03-11  Bruno Haible  <bruno@clisp.org>
14998
14999         * lib/vasnprintf.c (sprintf): Undefine.
15000
15001 2007-03-11  Bruno Haible  <bruno@clisp.org>
15002
15003         * lib/isnan.c (rpl_isnan, rpl_isnanl): Work around bug regarding
15004         initializers in SunPRO C and Compaq C compilers.
15005
15006 2007-03-11  Bruno Haible  <bruno@clisp.org>
15007
15008         * lib/gl_array_oset.c (gl_array_iterator_next): Make pointer
15009         decrementing code ANSI C compliant.
15010
15011 2007-03-11  Bruno Haible  <bruno@clisp.org>
15012
15013         * lib/dummy.c [__sun]: Define a dummy variable, not just a typedef.
15014         Needed for Solaris 2.5.1 ranlib and SunPRO C 5.0.
15015
15016 2007-03-11  Bruno Haible  <bruno@clisp.org>
15017
15018         * tests/test-stdbool.c (s, d, e, xlcbug): Disable checks that gnulib's
15019         <stdbool.h> substitute doesn't pass.
15020
15021 2007-03-11  Bruno Haible  <bruno@clisp.org>
15022
15023         * lib/vasnprintf.c (snprintf): Undefine. Avoids an endless recursion.
15024
15025 2007-03-11  Bruno Haible  <bruno@clisp.org>
15026
15027         * gnulib-tool (func_create_megatestdir): Create also an autobuild
15028         script, for submission to autobuild.josefsson.org.
15029
15030 2007-03-10  Bruno Haible  <bruno@clisp.org>
15031
15032         * modules/canonicalize-lgpl-tests: New file.
15033         * tests/test-canonicalize-lgpl.sh: New file.
15034         * tests/test-canonicalize-lgpl.c: New file.
15035
15036         * modules/c-strcase-tests: New file.
15037         * tests/test-c-strcase.sh: New file.
15038         * tests/test-c-strcasecmp.c: New file.
15039         * tests/test-c-strncasecmp.c: New file.
15040
15041         * modules/atexit-tests: New file.
15042         * tests/test-atexit.sh: New file.
15043         * tests/test-atexit.c: New file.
15044
15045 2007-03-10  Bruno Haible  <bruno@clisp.org>
15046
15047         * tests/test-binary-io.sh: Use temporary filenames that are not so
15048         likely to clash with those of other tests (in a parallel make).
15049         * tests/test-binary-io.c: Likewise.
15050
15051 2007-03-10  Bruno Haible  <bruno@clisp.org>
15052
15053         * lib/fseterr.c (fseterr): Port to Solaris/SPARC64. Deactivate the
15054         fallback; use #error instead.
15055         Suggested by Simon Josefsson.
15056
15057 2007-03-10  Bruno Haible  <bruno@clisp.org>
15058
15059         * gnulib-tool (func_create_testdir): Treat MOSTLYCLEANFILES like
15060         CLEANFILES. Put spaces in each line of $cleaned_files, not only the
15061         first and the last.
15062
15063 2007-03-10  Bruno Haible  <bruno@clisp.org>
15064
15065         * lib/stdint_.h (uint_least64_t): Fix typo in last patch.
15066
15067 2007-03-10  Bruno Haible  <bruno@clisp.org>
15068
15069         * modules/snprintf-posix-tests (EXTRA_DIST): New variable. Needed for
15070         "make distcheck".
15071         * modules/sprintf-posix-tests (EXTRA_DIST): Likewise.
15072         * modules/vsnprintf-posix-tests (EXTRA_DIST): Likewise.
15073         * modules/vsprintf-posix-tests (EXTRA_DIST): Likewise.
15074
15075 2007-03-10  Bruno Haible  <bruno@clisp.org>
15076
15077         * modules/allocsa-tests (test_allocsa_SOURCES): Remove redundant
15078         variable.
15079         * modules/dirname-tests (test_dirname_SOURCES): Remove redundant
15080         variable.
15081
15082 2007-03-09  Eric Blake  <ebb9@byu.net>
15083         and Matthew Woehlke  <mw_triad@users.sourceforge.net>  (tiny change)
15084
15085         * lib/stdint_.h (int64_t, uint64_t): Don't undefine if 64-bit
15086         types are not being provided by gnulib.
15087         (GL_INT64_T, GL_UINT64_T): New witnesses of whether gnulib 64-bit
15088         types are supported.
15089
15090 2007-03-10  Bruno Haible  <bruno@clisp.org>
15091
15092         * lib/stdio_.h (__attribute__): New macro.
15093         (fprintf, vfprintf, printf, vprintf, snprintf, vsnprintf, sprintf,
15094         vsprintf): Specify __attribute__ __format__ for GCC.
15095         Suggested by Eric Blake.
15096
15097 2007-03-09  Bruno Haible  <bruno@clisp.org>
15098
15099         * modules/printf-posix-tests: New file.
15100         * tests/test-printf-posix.sh: New file.
15101         * tests/test-printf-posix.c: New file.
15102
15103         * modules/printf-posix: New file.
15104         * lib/printf.c: New file.
15105         * m4/printf-posix-rpl.m4: New file.
15106         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_PRINTF_POSIX,
15107         REPLACE_PRINTF.
15108         * lib/stdio_.h (printf): New declaration.
15109         (format, __format__, ____printf____, ____scanf____, ____strftime____,
15110         ____strfmon____): New macros.
15111         * modules/stdio (Makefile.am): Substitute also GNULIB_PRINTF_POSIX,
15112         REPLACE_PRINTF.
15113
15114 2007-03-09  Bruno Haible  <bruno@clisp.org>
15115
15116         * tests/test-vasnprintf-posix2.sh: New file.
15117         * tests/test-vasnprintf-posix2.c: New file.
15118         * modules/vasnprintf-posix-tests (Files): Add them and m4/locale-fr.m4.
15119         (configure.ac): Invoke gt_LOCALE_FR and gt_LOCALE_FR_UTF8.
15120         (Makefile.am): Activate test-vasnprintf-posix2.sh.
15121
15122         * lib/vasnprintf.c (VASNPRINTF): For the 'a' and 'A' directives, use
15123         a locale dependent decimal point, rather than always '.'.
15124
15125 2007-03-09  Eric Blake  <ebb9@byu.net>
15126
15127         * lib/stdlib_.h (EXIT_FAILURE): GNU code expects this to be 1, in
15128         spite of platforms like Tandem/NSK that define it to -1.
15129
15130 2007-03-08  Bruno Haible  <bruno@clisp.org>
15131
15132         * modules/vprintf-posix-tests: New file.
15133         * tests/test-vprintf-posix.sh: New file.
15134         * tests/test-vprintf-posix.c: New file.
15135         * tests/test-printf-posix.h: New file.
15136
15137         * modules/vprintf-posix: New file.
15138         * lib/vprintf.c: New file.
15139         * m4/vprintf-posix.m4: New file.
15140         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VPRINTF_POSIX,
15141         REPLACE_VPRINTF.
15142         * lib/stdio_.h (vprintf): New declaration.
15143         * modules/stdio (Makefile.am): Substitute also GNULIB_VPRINTF_POSIX,
15144         REPLACE_VPRINTF.
15145
15146 2007-03-08  Bruno Haible  <bruno@clisp.org>
15147
15148         * modules/fprintf-posix-tests: New file.
15149         * tests/test-fprintf-posix.sh: New file.
15150         * tests/test-fprintf-posix.c: New file.
15151
15152         * modules/fprintf-posix: New file.
15153         * lib/fprintf.c: New file.
15154         * m4/fprintf-posix.m4: New file.
15155         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FPRINTF_POSIX,
15156         REPLACE_FPRINTF.
15157         * lib/stdio_.h (fprintf): New declaration.
15158         * modules/stdio (Makefile.am): Substitute also GNULIB_FPRINTF_POSIX,
15159         REPLACE_FPRINTF.
15160
15161 2007-03-08  Bruno Haible  <bruno@clisp.org>
15162
15163         * modules/vfprintf-posix-tests: New file.
15164         * tests/test-vfprintf-posix.sh: New file.
15165         * tests/test-vfprintf-posix.c: New file.
15166         * tests/test-fprintf-posix.h: New file.
15167         * tests/test-fprintf-posix.out: New file.
15168
15169         * modules/vfprintf-posix: New file.
15170         * lib/vfprintf.c: New file.
15171         * m4/vfprintf-posix.m4: New file.
15172         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VFPRINTF_POSIX,
15173         REPLACE_VFPRINTF.
15174         * lib/stdio_.h (vfprintf): New declaration.
15175         * modules/stdio (Makefile.am): Substitute also GNULIB_VFPRINTF_POSIX,
15176         REPLACE_VFPRINTF.
15177
15178 2007-03-08  Bruno Haible  <bruno@clisp.org>
15179
15180         * lib/stdio_.h: Treat __need___FILE like __need_FILE.
15181
15182 2007-03-08  Bruno Haible  <bruno@clisp.org>
15183
15184         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Use 'case' statements
15185         instead of 'expr' invocations.
15186         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
15187         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
15188         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
15189         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
15190         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
15191         Suggested by Paul Eggert.
15192
15193 2007-03-08  Bruno Haible  <bruno@clisp.org>
15194
15195         * modules/fseterr-tests: New file.
15196         * tests/test-fseterr.c: New file.
15197
15198         * modules/fseterr: New file.
15199         * lib/fseterr.h: New file.
15200         * lib/fseterr.c: New file.
15201
15202 2007-03-08  Bruno Haible  <bruno@clisp.org>
15203
15204         * lib/fnmatch_.h: Convert tabs in the middle of lines to spaces.
15205         * lib/getopt_.h: Likewise.
15206         * lib/mbswidth.h: Likewise.
15207         * lib/setenv.h: Likewise.
15208         * lib/vasnprintf.h: Likewise.
15209         * lib/vasprintf.h: Likewise.
15210         * lib/verror.h: Likewise.
15211         * lib/xsetenv.h: Likewise.
15212         * lib/xvasprintf.h: Likewise.
15213
15214 2007-03-08  Jim Meyering  <jim@meyering.net>
15215
15216         * users.txt: Add parted.
15217
15218         * ChangeLog: Restore 1500 lines mistakenly removed from the end.
15219
15220 2007-03-07  Bruno Haible  <bruno@clisp.org>
15221
15222         * m4/printf.m4: Make the shell script snippets copy&pastable.
15223
15224 2007-03-02  Bruno Haible  <bruno@clisp.org>
15225
15226         * lib/netinet_in_.h: New file.
15227         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Test whether netinet/in.h
15228         is self-contained. Set ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H.
15229         * modules/netinet_in (Files): Add lib/netinet_in_.h.
15230         (Depends-on): Add absolute-header.
15231         (Makefile.am): Substitute ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H
15232         into netinet/in.h.
15233
15234 2007-03-03  Bruno Haible  <bruno@clisp.org>
15235
15236         * lib/sys_select_.h: New file.
15237         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SELECT): Test whether sys/select.h
15238         is self-contained. Set ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H.
15239         * modules/sys_select (Files): Add lib/sys_select_.h.
15240         (Depends-on): Add absolute-header.
15241         (Makefile.am): Substitute ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H
15242         into sys/select.h.
15243
15244 2007-03-02  Bruno Haible  <bruno@clisp.org>
15245
15246         * lib/socket_.h: If sys/socket.h exists, include that and <sys/types.h>
15247         before it. Turn HAVE_WINSOCK2_H and HAVE_WS2TCPIP_H into configute-time
15248         values.
15249         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Test also whether
15250         <sys/socket.h> is self-contained. Set ABSOLUTE_SYS_SOCKET_H,
15251         HAVE_SYS_SOCKET_H, HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H.
15252         * modules/sys_socket (Depends-on): Add absolute-header.
15253         (Makefile.am): Substitute ABSOLUTE_SYS_SOCKET_H, HAVE_SYS_SOCKET_H,
15254         HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H into sys/socket.h.
15255         (Include): Remove requirement of inclusion of <sys/types.h>.
15256
15257 2007-03-02  Bruno Haible  <bruno@clisp.org>
15258
15259         * lib/byteswap_.h (bswap_32): Fix formula.
15260
15261 2007-03-06  Bruno Haible  <bruno@clisp.org>
15262
15263         * modules/sprintf-posix-tests: New file.
15264         * tests/test-sprintf-posix.c: New file.
15265
15266         * modules/sprintf-posix: New file.
15267         * lib/sprintf.c: New file.
15268         * m4/sprintf-posix.m4: New file.
15269         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_SPRINTF_POSIX,
15270         REPLACE_SPRINTF.
15271         * lib/stdio_.h (sprintf): New declaration.
15272         * modules/stdio (Makefile.am): Substitute also GNULIB_SPRINTF_POSIX,
15273         REPLACE_SPRINTF.
15274
15275 2007-03-06  Bruno Haible  <bruno@clisp.org>
15276
15277         * modules/vsprintf-posix-tests: New file.
15278         * tests/test-vsprintf-posix.c: New file.
15279         * tests/test-sprintf-posix.h: New file.
15280
15281         * modules/vsprintf-posix: New file.
15282         * lib/vsprintf.c: New file.
15283         * m4/vsprintf-posix.m4: New file.
15284         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VSPRINTF_POSIX,
15285         REPLACE_VSPRINTF.
15286         * lib/stdio_.h (vsprintf): New declaration.
15287         * modules/stdio (Makefile.am): Substitute also GNULIB_VSPRINTF_POSIX,
15288         REPLACE_VSPRINTF.
15289
15290 2007-03-06  Bruno Haible  <bruno@clisp.org>
15291
15292         * modules/vsnprintf (Depend-on): Remove minmax.
15293
15294 2007-03-06  Bruno Haible  <bruno@clisp.org>
15295
15296         * modules/snprintf-posix-tests: New file.
15297         * tests/test-snprintf-posix.c: New file.
15298
15299         * modules/snprintf-posix: New file.
15300         * m4/snprintf-posix.m4: New file.
15301         * m4/snprintf.m4 (gl_REPLACE_SNPRINTF): New macro, extracted from
15302         gl_FUNC_SNPRINTF.
15303         (gl_FUNC_SNPRINTF): Invoke it.
15304         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_SNPRINTF.
15305         * lib/stdio_.h (snprintf): Define as a replacement if REPLACE_SNPRINTF
15306         is set.
15307         * modules/stdio (Makefile.am): Substitute also REPLACE_SNPRINTF.
15308
15309 2007-03-06  Bruno Haible  <bruno@clisp.org>
15310
15311         * modules/vsnprintf-posix-tests: New file.
15312         * tests/test-vsnprintf-posix.c: New file.
15313         * tests/test-snprintf-posix.h: New file.
15314
15315         * modules/vsnprintf-posix: New file.
15316         * m4/vsnprintf-posix.m4: New file.
15317         * m4/vsnprintf.m4 (gl_REPLACE_VSNPRINTF): New macro, extracted from
15318         gl_FUNC_VSNPRINTF.
15319         (gl_FUNC_VSNPRINTF): Invoke it.
15320         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_VSNPRINTF.
15321         * lib/stdio_.h (vsnprintf): Define as a replacement if
15322         REPLACE_VSNPRINTF is set.
15323         * modules/stdio (Makefile.am): Substitute also REPLACE_VSNPRINTF.
15324
15325 2007-03-06  Bruno Haible  <bruno@clisp.org>
15326
15327         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Test for vasnprintf here.
15328         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): ... not here.
15329
15330 2007-03-06  Bruno Haible  <bruno@clisp.org>
15331
15332         * lib/math_.h (acosl): Declare also if HAVE_DECL_ACOSL is set.
15333         (asinl): Declare also if HAVE_DECL_ASINL is set.
15334         (atanl): Declare also if HAVE_DECL_ATANL is set.
15335         (ceill): Declare also if HAVE_DECL_CEILL is set.
15336         (cosl): Declare also if HAVE_DECL_COSL is set.
15337         (expl): Declare also if HAVE_DECL_EXPL is set.
15338         (floorl): Declare also if HAVE_DECL_FLOORL is set.
15339         (frexpl): Declare also if HAVE_DECL_FREXPL is set.
15340         (ldexpl): Declare also if HAVE_DECL_LDEXPL is set.
15341         (logl): Declare also if HAVE_DECL_LOGL is set.
15342         (sinl): Declare also if HAVE_DECL_SINL is set.
15343         (sqrtl): Declare also if HAVE_DECL_SQRTL is set.
15344         (tanl): Declare also if HAVE_DECL_TANL is set.
15345         * modules/math (Makefile.am): Substitute the values of HAVE_DECL_*.
15346         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Set HAVE_DECL_* to 1.
15347         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Fix tests for the
15348         declaration of frexpl, ldexpl.
15349         * modules/printf-frexpl (Depends-on): Add math.
15350         * lib/printf-frexp.c (frexpl, ldexpl): Undo last change.
15351
15352 2007-03-05  Bruno Haible  <bruno@clisp.org>
15353
15354         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Also test whether
15355         frexpl and ldexpl are declared.
15356         * lib/printf-frexp.c (frexpl, ldexpl): Provide fallback declarations.
15357
15358 2007-03-05  Bruno Haible  <bruno@clisp.org>
15359
15360         * gnulib-tool (func_get_automake_snippet): Don't synthesize an
15361         EXTRA_lib_SOURCES augmentation for the relocatable-prog-wrapper module.
15362
15363 2007-03-05  Bruno Haible  <bruno@clisp.org>
15364
15365         * lib/stdio_.h: Include <stddef.h>.
15366
15367 2007-03-05  Bruno Haible  <bruno@clisp.org>
15368
15369         * m4/printf.m4 (gl_SNPRINTF_DIRECTIVE_N): New macro.
15370
15371 2007-03-05  Bruno Haible  <bruno@clisp.org>
15372
15373         * m4/printf.m4: Update with info about OpenBSD 3.9, HP-UX 10.20,
15374         NetBSD 4, from Ralf Wildenhues.
15375
15376 2007-03-04  Bruno Haible  <bruno@clisp.org>
15377
15378         * lib/vasprintf.h: Update #if logic for the case when the functions
15379         exist but are overridden.
15380
15381 2007-03-04  Bruno Haible  <bruno@clisp.org>
15382
15383         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Exclude two buggy
15384         implementations: glibc-2.4 and MacOS X 10.3.
15385         * tests/test-vasnprintf-posix.c (test_function): Test also the case
15386         that exhibits the bugs in glibc-2.4 and MacOS X 10.3.
15387         * tests/test-vasprintf-posix.c (test_function): Likewise.
15388
15389 2007-03-04  Bruno Haible  <bruno@clisp.org>
15390
15391         * modules/vasprintf-posix-tests: New file.
15392         * tests/test-vasprintf-posix.c: New file.
15393
15394         * modules/vasprintf-posix: New file.
15395         * lib/vasprintf.h (asprintf, vasprintf): Rename if REPLACE_VASPRINTF is
15396         defined.
15397         * m4/vasprintf-posix.m4: New file.
15398         * m4/vasprintf.m4 (gl_REPLACE_VASPRINTF): New macro, extracted from
15399         gl_FUNC_VASPRINTF.
15400         (gl_FUNC_VASPRINTF): Invoke it.
15401         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Define REPLACE_VASNPRINTF
15402         here.
15403         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Not here.
15404
15405 2007-03-04  Bruno Haible  <bruno@clisp.org>
15406
15407         * lib/sys_time_.h: Rename GETTIMEOFDAY_REPLACEMENT to
15408         REPLACE_GETTIMEOFDAY.
15409         * modules/sys_time (Makefile.am): Likewise.
15410         * m4/sys_time_h.m4: Likewise.
15411         * m4/gettimeofday.m4: Likewise.
15412
15413 2007-03-04  Bruno Haible  <bruno@clisp.org>
15414
15415         * modules/vasnprintf-posix-tests: New file.
15416         * tests/test-vasnprintf-posix.c: New file.
15417
15418         * modules/vasnprintf-posix: New file.
15419         * lib/vasnprintf.c: Include isnan.h, isnanl.h, printf-frexp.h,
15420         printf-frexpl.h.
15421         (VASNPRINTF): Handle the 'a' and 'A' directives here, if needed.
15422         * lib/vasnprintf.h (asnprintf, vasnprintf): Rename if
15423         REPLACE_VASNPRINTF is defined.
15424         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): New macro, extracted from
15425         gl_FUNC_VASNPRINTF.
15426         (gl_FUNC_VASNPRINTF): Invoke it.
15427         * m4/vasnprintf-posix.m4: New file.
15428         * m4/printf.m4: New file.
15429
15430 2007-03-04  Bruno Haible  <bruno@clisp.org>
15431
15432         Compile progreloc.c only if --enable-relocatable is specified.
15433         * m4/relocatable.m4 (gl_RELOCATABLE): Arrange to compile progreloc.c
15434         if --enable-relocatable was specified.
15435         * modules/relocatable-prog (Makefile.am): Remove progreloc.c from
15436         lib_SOURCES.
15437
15438 2007-03-04  Jim Meyering  <jim@meyering.net>
15439
15440         * lib/acl.c (ACL_NOT_WELL_SUPPORTED): New macro.
15441         Use it consistently, rather than enumerating errno constants.
15442
15443 2007-03-04  Bruno Haible  <bruno@clisp.org>
15444
15445         * modules/xvasprintf-tests: New file.
15446         * tests/test-xvasprintf.c: New file.
15447
15448         * modules/vasprintf-tests: New file.
15449         * tests/test-vasprintf.c: New file.
15450
15451         * modules/vasnprintf-tests: New file.
15452         * tests/test-vasnprintf.c: New file.
15453
15454         * modules/vsnprintf-tests: New file.
15455         * tests/test-vsnprintf.c: New file.
15456
15457         * modules/snprintf-tests: New file.
15458         * tests/test-snprintf.c: New file.
15459
15460 2007-03-04  Bruno Haible  <bruno@clisp.org>
15461
15462         Compile relocatable.c only if --enable-relocatable is specified.
15463         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY_BODY): Renamed from
15464         gl_RELOCATABLE_LIBRARY.
15465         (gl_RELOCATABLE_LIBRARY, gl_RELOCATABLE_LIBRARY_SEPARATE): New macros.
15466         * m4/relocatable.m4 (gl_RELOCATABLE): Invoke gl_RELOCATABLE_LIBRARY.
15467         (gl_RELOCATABLE_BODY): Require gl_RELOCATABLE_LIBRARY_BODY instead of
15468         gl_RELOCATABLE_LIBRARY.
15469         * modules/relocatable-lib (configure.ac): Invoke gl_RELOCATABLE_LIBRARY.
15470         (Makefile.am): Remove lib_SOURCES.
15471         * modules/relocatable-lib-lgpl (configure.ac): Invoke
15472         gl_RELOCATABLE_LIBRARY.
15473         (Makefile.am): Remove lib_SOURCES.
15474         * modules/relocatable-prog (Makefile.am): Don't compile relocatable.c
15475         always.
15476         * modules/relocatable-prog-wrapper (configure.ac): Invoke
15477         gl_RELOCATABLE_LIBRARY_SEPARATE instead of gl_RELOCATABLE_LIBRARY.
15478
15479 2007-03-04  Bruno Haible  <bruno@clisp.org>
15480
15481         * modules/argmatch-tests: New file.
15482         * tests/test-argmatch.c: New file.
15483
15484         * tests/test-allocsa.c (main): Halve the number of loop runs.
15485
15486         * modules/alloca-opt-tests: New file.
15487         * tests/test-alloca-opt.c: New file.
15488
15489 2007-03-04  Jim Meyering  <jim@meyering.net>
15490
15491         Work around difference between Linux ACLs and Solaris 10 ZFS.
15492         * lib/acl.c (set_acl): Revert to using chmod_or_fchmod also
15493         for EINVAL.
15494
15495 2007-03-03  Bruno Haible  <bruno@clisp.org>
15496
15497         * modules/relocatable-prog (Depends-on): Add back progreloc's
15498         dependencies: canonicalize-lgpl, xalloc, xreadlink, stdbool, unistd.
15499
15500 2007-03-03  Bruno Haible  <bruno@clisp.org>
15501
15502         * modules/relocatable-lib-lgpl: Renamed from modules/relocatable-lib.
15503         * modules/relocatable-lib: New file.
15504
15505 2007-03-03  Bruno Haible  <bruno@clisp.org>
15506
15507         * modules/relocatable-prog: Renamed from modules/relocatable.
15508         * doc/relocatable-maint.texi: Talk about module 'relocatable-prog'.
15509
15510 2007-03-03  Bruno Haible  <bruno@clisp.org>
15511
15512         * modules/relocatable-script (Files): Add doc/relocatable.texi,
15513         m4/relocatable-lib.m4.
15514         (Depends-on): Remove 'relocatable'.
15515         (configure.ac): Add gl_RELOCATABLE_NOP.
15516
15517 2007-03-03  Bruno Haible  <bruno@clisp.org>
15518
15519         * modules/relocatable-prog-wrapper: New file.
15520         * modules/relocatable (Depends-on): Add it. Remove all other
15521         dependencies except progname.
15522         (Files): Remove build-aux/install-reloc, lib/relocwrapper.c.
15523
15524         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): New macro.
15525         (gl_FUNC_STRERROR): Nop.
15526         * lib/strerror.c: Compile the file only if !HAVE_STRERROR.
15527
15528         * m4/setenv.m4 (gl_FUNC_SETENV_SEPARATE): New macro.
15529         * lib/setenv.c: Compile the file only if _LIBC || !HAVE_SETENV.
15530
15531         * m4/readlink.m4 (gl_FUNC_READLINK_SEPARATE): New macro.
15532         (gl_FUNC_READLINK): Update.
15533
15534         * m4/canonicalize-lgpl.m4 (gl_CANONICALIZE_LGPL_SEPARATE): New macro.
15535
15536 2007-03-03  Bruno Haible  <bruno@clisp.org>
15537
15538         * lib/xreadlink.c: Include <unistd.h> unconditionally.
15539         * modules/xreadlink (Depends-on): Add unistd.
15540         * modules/xreadlink-with-size (Depends-on): Likewise.
15541
15542 2007-03-03  Bruno Haible  <bruno@clisp.org>
15543
15544         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_UNSETENV): New macros,
15545         extracted from gt_FUNC_SETENV.
15546         (gt_FUNC_SETENV): Remove macro.
15547         * modules/setenv (configure.ac): Add gl_FUNC_SETENV, gl_FUNC_UNSETENV,
15548         remove gt_FUNC_SETENV.
15549
15550 2007-03-03  Bruno Haible  <bruno@clisp.org>
15551
15552         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY): Define
15553         ENABLE_RELOCATABLE here.
15554         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): Don't define it here.
15555
15556 2007-03-03  Bruno Haible  <bruno@clisp.org>
15557
15558         * modules/rbtreehash-list-tests (Depends-on): Add progname.
15559         * tests/test-rbtreehash_list.c: Include progname.h.
15560         (main): Call set_program_name.
15561
15562         * modules/rbtree-oset-tests (Depends-on): Add progname.
15563         * tests/test-rbtree_oset.c: Include progname.h.
15564         (main): Call set_program_name.
15565
15566         * modules/rbtree-list-tests (Depends-on): Add progname.
15567         * tests/test-rbtree_list.c: Include progname.h.
15568         (main): Call set_program_name.
15569
15570         * modules/linked-list-tests (Depends-on): Add progname.
15571         * tests/test-linked_list.c: Include progname.h.
15572         (main): Call set_program_name.
15573
15574 2007-03-03  Bruno Haible  <bruno@clisp.org>
15575
15576         * lib/glob-libc.h (_Restrict_): New macro, copied from lib/regex.h.
15577         All uses of __restrict changed to _Restrict_.
15578         * lib/glob_.h (__restrict): Remove macro.
15579
15580 2007-03-02  Bruno Haible  <bruno@clisp.org>
15581
15582         * modules/gettext (configure.ac): Require gettext infrastructure
15583         from version 0.16.1.
15584
15585 2007-03-02  Bruno Haible  <bruno@clisp.org>
15586
15587         * modules/linkedhash-list-tests (Depends-on): Add progname.
15588         * tests/test-linkedhash_list.c: Include progname.h.
15589         (main): Call set_program_name.
15590
15591         * modules/carray-list-tests (Depends-on): Add progname.
15592         * tests/test-carray_list.c: Include progname.h.
15593         (main): Call set_program_name.
15594
15595         * modules/avltreehash-list-tests (Depends-on): Add progname.
15596         * tests/test-avltreehash_list.c: Include progname.h.
15597         (main): Call set_program_name.
15598
15599         * modules/avltree-oset-tests (Depends-on): Add progname.
15600         * tests/test-avltree_oset.c: Include progname.h.
15601         (main): Call set_program_name.
15602
15603         * modules/avltree-list-tests (Depends-on): Add progname.
15604         * tests/test-avltree_list.c: Include progname.h.
15605         (main): Call set_program_name.
15606
15607         * modules/array-oset-tests (Depends-on): Add progname.
15608         * tests/test-array_oset.c: Include progname.h.
15609         (main): Call set_program_name.
15610
15611         * modules/array-list-tests (Depends-on): Add progname.
15612         * tests/test-array_list.c: Include progname.h.
15613         (main): Call set_program_name.
15614
15615         * modules/argp-tests (Depends-on): Add progname.
15616         * tests/test-argp.c: Include argp.h first. Include progname.h.
15617         (main): Call set_program_name.
15618
15619 2007-03-02  Paul Eggert  <eggert@cs.ucla.edu>
15620
15621         * doc/gnulib-tool.texi (Initial import): Reword description of
15622         _FILE_OFFSET_BITS and _GNU_SOURCE, since they sometimes have a
15623         limited effect even if defined after the first system include.
15624
15625 2007-03-01  Bruno Haible  <bruno@clisp.org>
15626
15627         * build-aux/config.libpath: Update to libtool-1.5.22.
15628         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
15629
15630 2007-03-01  Bruno Haible  <bruno@clisp.org>
15631
15632         * doc/relocatable-maint.texi: Recommend to set foo_CPPFLAGS, not
15633         foo_CFLAGS.
15634         Reported by Ralf Wildenhues.
15635
15636 2007-03-01  Bruno Haible  <bruno@clisp.org>
15637
15638         * build-aux/install-reloc: Remove object files left over by some
15639         compilers.
15640         Reported by Ralf Wildenhues.
15641
15642 2007-03-01  Bruno Haible  <bruno@clisp.org>
15643
15644         * build-aux/install-reloc: Break long lines.
15645
15646 2007-03-01  Bruno Haible  <bruno@clisp.org>
15647
15648         * doc/relocatable.texi: Document that it may not work on OpenBSD.
15649         Reported by Ralf Wildenhues.
15650
15651 2007-03-01  Bruno Haible  <bruno@clisp.org>
15652
15653         * doc/gnulib-tool.texi (Initial import): Remove paragraph about
15654         include ordering constraints.
15655
15656 2007-03-01  Paul Eggert  <eggert@cs.ucla.edu>
15657
15658         Followup to the 2007-02-12 patch, using suggestions from Bruno Haible in
15659         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00136.html>.
15660         * doc/gnulib-tool.texi (Initial import): Mention _FILE_OFFSET_BITS
15661         as another example.
15662         * lib/time_.h: Fix misspelling.
15663         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
15664         Require gl_HEADER_TIME_H_DEFAULTS.
15665         * m4/strptime.m4 (gl_FUNC_STRPTIME): Likewise.
15666         * m4/time_r.m4 (gl_TIME_R): Likewise.
15667         * m4/timegm.m4 (gl_FUNC_TIMEGM): Likewise.
15668
15669 2007-03-01  Bruno Haible  <bruno@clisp.org>
15670
15671         * m4/utimecmp.m4 (gl_UTIMECMP): Don't require gl_TIMESPEC.
15672         * m4/utimens.m4 (gl_UTIMENS): Likewise.
15673
15674 2007-03-01  Jim Meyering  <jim@meyering.net>
15675
15676         * modules/xreadlink (Maintainer): Add my name.
15677         * modules/xreadlink-with-size (Depends-on): Alphabetize.
15678
15679 2007-02-26  Ben Pfaff  <blp@cs.stanford.edu>
15680             Bruno Haible  <bruno@clisp.org>
15681
15682         * build-aux/install-reloc: Compile also c-ctype.c.
15683         * build-aux/relocatable.sh.in: New file.
15684         * doc/relocatable.texi: New file.
15685         * doc/relocatable-maint.texi: New file.
15686         * doc/gnulib.texi: Include relocatable-maint.texi.
15687         * lib/progreloc.c: Include unistd.h unconditionally.
15688         * lib/relocwrapper.c: Include unistd.h unconditionally.
15689         Include c-ctype.h.
15690         (add_dotbin): Use c_tolower.
15691         * m4/relocatable-lib.m4: New file, extracted from m4/relocatable.m4.
15692         (gl_RELOCATABLE_LIBRARY): Renamed from AC_RELOCATABLE_LIBRARY.
15693         (gl_RELOCATABLE_NOP): Renamed from AC_RELOCATABLE_NOP.
15694         * m4/relocatable.m4 (AC_RELOCATABLE_LIBRARY, AC_RELOCATABLE_NOP): Move
15695         to m4/relocatable-lib.m4.
15696         (gl_RELOCATABLE): Renamed from AC_RELOCATABLE. Set also
15697         RELOCATABLE_CONFIG_H_DIR, RELOCATABLE_SRC_DIR, RELOCATABLE_BUILD_DIR.
15698         (gl_RELOCATABLE_BODY): Renamed from AC_RELOCATABLE_BODY. Don't
15699         require obsolete macro AC_EXEEXT. Don't check for unistd.h. Don't set
15700         SET_RELOCATABLE. Instead set RELOCATABLE_LDFLAGS, INSTALL_PROGRAM_ENV.
15701         * modules/relocatable: New file.
15702         * modules/relocatable-lib: New file.
15703         * modules/relocatable-script: New file.
15704
15705 2007-02-28  Bruno Haible  <bruno@clisp.org>
15706
15707         Import --enable-relocatable infrastructure.
15708         * build-aux/config.libpath: New file, from GNU gettext.
15709         * build-aux/install-reloc: New file, from GNU gettext.
15710         * build-aux/reloc-ldflags: New file, from GNU gettext.
15711         * lib/relocatable.h: New file, from GNU gettext.
15712         * lib/relocatable.c: New file, from GNU gettext.
15713         * lib/relocwrapper.c: New file, from GNU gettext.
15714         * m4/relocatable.m4: New file, from GNU gettext.
15715
15716 2007-02-28  Bruno Haible  <bruno@clisp.org>
15717
15718         * MODULES.html.sh (File system functions): Add xreadlink-with-size.
15719
15720         * modules/xreadlink: New file, from GNU gettext with modifications.
15721         * lib/xreadlink.c: New file, from GNU gettext.
15722         * lib/xreadlink.h: Add comments.
15723         (xreadlink): New declaration.
15724
15725         * modules/xreadlink-with-size: Renamed from modules/xreadlink.
15726         (Files): Remove m4/xreadlink.m4. Replace lib/xreadlink.c with
15727         lib/xreadlink-with-size.c.
15728         (configure.ac): Remove gl_XREADLINK invocation.
15729         (Makefile.am): Augment lib_SOURCES.
15730         * m4/xreadlink.m4: Remove file.
15731         * lib/xreadlink-with-size.c: Renamed from lib/xreadlink.c.
15732         (xreadlink_with_size): Renamed from xreadink.
15733         * lib/xreadlink.h (xreadlink_with_size): Renamed from xreadink.
15734         * modules/canonicalize (Depends-on): Replace xreadlink with
15735         xreadlink-with-size.
15736         * lib/canonicalize.c (canonicalize_filename_mode): Update.
15737
15738 2007-02-25  Jim Meyering  <jim@meyering.net>
15739
15740         * build-aux/announce-gen: When complaining about excess arguments,
15741         list them.
15742
15743 2007-02-25  Paul Eggert  <eggert@cs.ucla.edu>
15744
15745         * README: Document signed integer overflow situation more
15746         accurately.
15747
15748 2007-02-25  Bruno Haible  <bruno@clisp.org>
15749
15750         * lib/vasnprintf.c (VASNPRINTF): Fix estimate of size needed for a
15751         'a' or 'A' conversion.
15752
15753 2007-02-25  Bruno Haible  <bruno@clisp.org>
15754
15755         * modules/filename: Renamed from modules/pathname.
15756         (Files): Replace lib/pathname.h with lib/filename.h. Replace
15757         lib/concatpath.c with lib/concat-filename.c.
15758         (Makefile.am): Update.
15759         (Include): Replace pathname.h with filename.h.
15760         * lib/filename.h: Renamed from lib/pathname.h.
15761         (concatenated_filename): Renamed from concatenated_pathname.
15762         * lib/concat-filename.c: Renamed from lib/concatpath.c.
15763         (concatenated_filename): Renamed from concatenated_pathname.
15764         * lib/findprog.c: Include filename.h instead of pathname.h.
15765         (find_in_path): Update.
15766         * lib/javacomp.c: Include filename.h instead of pathname.h.
15767         (is_envjavac_gcj43_usable, is_envjavac_oldgcj_14_14_usable,
15768         is_envjavac_oldgcj_14_13_usable, is_envjavac_nongcj_usable,
15769         is_gcj_present, is_gcj43_usable, is_oldgcj_14_14_usable,
15770         is_oldgcj_14_13_usable, is_javac_usable): Update.
15771         * lib/javaexec.c: Include filename.h instead of pathname.h.
15772         (execute_java_class): Update.
15773         * modules/findprog: Update.
15774         * modules/javacomp: Update.
15775         * modules/javaexec: Update.
15776         * MODULES.html.sh (File system functions): Add 'filename', remove
15777         'pathname'.
15778
15779 2007-02-25  Bruno Haible  <bruno@clisp.org>
15780
15781         * modules/printf-frexpl-tests: New file.
15782         * tests/test-printf-frexpl.c: New file.
15783
15784         * modules/printf-frexpl: New file.
15785         * lib/printf-frexpl.h: New file.
15786         * lib/printf-frexpl.c: New file.
15787         * m4/printf-frexpl.m4: New file.
15788
15789 2007-02-25  Bruno Haible  <bruno@clisp.org>
15790
15791         * modules/printf-frexp-tests: New file.
15792         * tests/test-printf-frexp.c: New file.
15793
15794         * modules/printf-frexp: New file.
15795         * lib/printf-frexp.h: New file.
15796         * lib/printf-frexp.c: New file.
15797         * m4/printf-frexp.m4: New file.
15798
15799 2007-02-25  Bruno Haible  <bruno@clisp.org>
15800
15801         Assume automake >= 1.10 for the tests.
15802         * modules/arcfour-tests (TESTS): Remove $(EXEEXT) suffix.
15803         * modules/arctwo-tests: Likewise.
15804         * modules/argp-tests: Likewise.
15805         * modules/avltree-list-tests: Likewise.
15806         * modules/avltree-oset-tests: Likewise.
15807         * modules/avltreehash-list-tests: Likewise.
15808         * modules/carray-list-tests: Likewise.
15809         * modules/crc-tests: Likewise.
15810         * modules/des-tests: Likewise.
15811         * modules/gc-arcfour-tests: Likewise.
15812         * modules/gc-arctwo-tests: Likewise.
15813         * modules/gc-des-tests: Likewise.
15814         * modules/gc-hmac-md5-tests: Likewise.
15815         * modules/gc-hmac-sha1-tests: Likewise.
15816         * modules/gc-md2-tests: Likewise.
15817         * modules/gc-md4-tests: Likewise.
15818         * modules/gc-md5-tests: Likewise.
15819         * modules/gc-pbkdf2-sha1-tests: Likewise.
15820         * modules/gc-rijndael-tests: Likewise.
15821         * modules/gc-sha1-tests: Likewise.
15822         * modules/gc-tests: Likewise.
15823         * modules/getaddrinfo-tests: Likewise.
15824         * modules/hmac-md5-tests: Likewise.
15825         * modules/hmac-sha1-tests: Likewise.
15826         * modules/linked-list-tests: Likewise.
15827         * modules/linkedhash-list-tests: Likewise.
15828         * modules/lock-tests: Likewise.
15829         * modules/md2-tests: Likewise.
15830         * modules/md4-tests: Likewise.
15831         * modules/md5-tests: Likewise.
15832         * modules/rbtree-list-tests: Likewise.
15833         * modules/rbtree-oset-tests: Likewise.
15834         * modules/rbtreehash-list-tests: Likewise.
15835         * modules/read-file-tests: Likewise.
15836         * modules/rijndael-tests: Likewise.
15837         * modules/stdint-tests: Likewise.
15838         * modules/tls-tests: Likewise.
15839
15840 2007-02-24  Bruno Haible  <bruno@clisp.org>
15841
15842         * lib/isnanl.h (isnanl): Define through isnan if isnan is a macro.
15843         * m4/isnan.m4 (gl_FUNC_ISNAN_NO_LIBM): Don't check for isnan as a
15844         function; instead check whether isnan with a double argument links.
15845         * m4/isnanl.m4 (gl_FUNC_ISNANL_NO_LIBM): Don't check for isnanl as a
15846         function; instead check whether isnan with a 'long double' argument
15847         links.
15848         Reported by Eric Blake <ebb9@byu.net>.
15849
15850 2007-02-24  Bruno Haible  <bruno@clisp.org>
15851
15852         * lib/isnan.c: Support the 'long double' case if USE_LONG_DOUBLE is
15853         defined.
15854         * lib/isnanl.c: Remove all code. Just include isnan.c.
15855         * modules/isnanl-nolibm (Files): Add lib/isnan.c.
15856
15857 2007-02-25  Jim Meyering  <jim@meyering.net>
15858
15859         Avoid conflicting types for 'unsetenv' on FreeBSD.
15860         * lib/putenv.c (_unsetenv): Rename from "unsetenv", to avoid
15861         conflicting with FreeBSD's (5.0 and 6.1) function declaration
15862         in stdlib.h.
15863
15864 2007-02-24  Bruno Haible  <bruno@clisp.org>
15865
15866         * modules/isnanl-nolibm-tests: New file.
15867         * tests/test-isnanl.c: New file.
15868
15869         * modules/isnanl-nolibm: New file.
15870         * lib/isnanl.h: New file.
15871         * lib/isnanl.c: New file.
15872         * m4/isnanl.m4: New file.
15873
15874 2007-02-24  Bruno Haible  <bruno@clisp.org>
15875
15876         * modules/isnan-nolibm-tests: New file.
15877         * tests/test-isnan.c: New file.
15878
15879         * modules/isnan-nolibm: New file.
15880         * lib/isnan.h: New file.
15881         * lib/isnan.c: New file.
15882         * m4/isnan.m4: New file.
15883
15884 2007-02-24  Bruno Haible  <bruno@clisp.org>
15885
15886         * lib/frexpl.c (frexpl): Correct return values for x = 1.0L. Don't
15887         assume that an exponent fits in 20 bits.
15888
15889 2007-02-24  Jim Meyering  <jim@meyering.net>
15890
15891         * m4/regex.m4: Update the description of the configure-time option,
15892         --without-included-regex, to state accurately what the defaults are,
15893         and perhaps to give people an idea why using this option is risky.
15894
15895 2007-02-24  Paul Eggert  <eggert@cs.ucla.edu>
15896
15897         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check for a nanosleep that
15898         loops on small arguments.  This attempts to avoid the problem
15899         Bruno Haible reported for AIX 4.3.2 in
15900         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00309.html>.
15901
15902 2007-02-23  Bruno Haible  <bruno@clisp.org>
15903
15904         * m4/perl.m4 (gl_PERL): Require version 5.005, not 5.003.
15905         Needed for help2man.
15906
15907 2007-02-23  Karl Berry  <karl@gnu.org>
15908
15909         * doc/gnulib-tool.texi (CVS Issues): mention that when foo_.h
15910         exists, foo.h should be cvs-ignored, not committed.
15911
15912 2007-02-23  Eric Blake  <ebb9@byu.net>
15913
15914         * lib/getdate.h (includes):  Include <time.h>, not "timespec.h".
15915         * lib/stat-time.h (includes): Likewise.
15916         * lib/utimecmp.c (includes): Likewise.
15917         * lib/utimens.h (includes): Likewise.
15918         * lib/getdate.y (includes): Also include "timespec.h" for use
15919         internal to the module.
15920         * modules/utimens (Depends-on): Revert yesterday's patch.
15921         * modules/nanosleep (Depends-on): Add missing dependency.
15922
15923 2007-02-22  Bruno Haible  <bruno@clisp.org>
15924
15925         * lib/glob.c: Don't include getlogin_r.h.
15926
15927 2007-02-22  Jim Meyering  <jim@meyering.net>
15928
15929         * modules/utimens (Depends-on): Add timespec, required for
15930         utimens.h's inclusion of timespec.h.
15931
15932 2007-02-21  Paul Eggert  <eggert@cs.ucla.edu>
15933
15934         * lib/getcwd.c (__getcwd): Undo previous change; it mishandled
15935         long unreadable paths in GNU/Linux.  Problem reported by Andreas
15936         Schwab in
15937         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00261.html>.
15938         I'll try to think of a better way to fix the Solaris problem.
15939
15940         * lib/getcwd.c (__getcwd): Don't assume getcwd (NULL, 0) works
15941         like glibc; on Solaris 10, it fails with errno == EINVAL.
15942         POSIX says the behavior is unspecified if the first argument is NULL,
15943         so play it safe and never pass NULL to the system getcwd.
15944
15945 2007-02-21  Jim Meyering  <jim@meyering.net>
15946
15947         * lib/gettimeofday.c (rpl_gettimeofday): Remove declaration
15948         of gettimeofday.  It would conflict with the one now always
15949         provided via sys_time_.h.  Reported by Matthew Woehlke, as
15950         an IRIX 6.5 build failure.
15951
15952 2007-02-20  Paul Eggert  <eggert@cs.ucla.edu>
15953
15954         Minor fixups to port to Solaris 10 with Sun C 5.8.
15955         * lib/getcwd.c [!_LIBC]: Include dirfd.h, since we use dirfd.
15956         * modules/getcwd (Depends-on): Add dirfd.
15957         * lib/putenv.c (putenv): #undef it.
15958         (rpl_putenv): New decl.
15959         (malloc, free): Include <stdlib.h> rather than prototyping separately.
15960
15961 2007-02-20  Bruno Haible  <bruno@clisp.org>
15962
15963         * modules/stdio-tests: New file.
15964         * tests/test-stdio.c: New file.
15965
15966         * modules/vsnprintf (Files): Remove lib/vsnprintf.h.
15967         (Depends-on): Add stdio.
15968         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
15969         (Include): Use <stdio.h> instead of vsnprintf.h.
15970         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
15971         HAVE_DECL_VSNPRINTF.
15972         * lib/vsnprintf.c: Include <stdio.h> instead of vsnprintf.h.
15973
15974         * modules/snprintf (Files): Remove lib/snprintf.h.
15975         (Depends-on): Add stdio.
15976         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
15977         (Include): Use <stdio.h> instead of snprintf.h.
15978         * m4/snprintf.m4 (gl_FUNC_SNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
15979         HAVE_DECL_SNPRINTF.
15980         * lib/snprintf.c: Include <stdio.h> instead of snprintf.h.
15981         * lib/getaddrinfo.c: Likewise.
15982
15983         * modules/stdio: New file.
15984         * lib/stdio_.h: New file, incorporating snprintf.h and vsnprintf.h.
15985         * lib/snprintf.h: Remove file.
15986         * lib/vsnprintf.h: Remove file.
15987         * lib/.cppi-disable: Remove snprintf.h.
15988         * m4/stdio_h.m4: New file.
15989         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdio.
15990
15991 2007-02-20  Jim Meyering  <jim@meyering.net>
15992
15993         * lib/ftruncate.c [HAVE_CHSIZE]: Document that this code is
15994         used by e.g., mingw.  From Bruno Haible.
15995
15996 2007-02-19  Bruno Haible  <bruno@clisp.org>
15997
15998         * lib/string_.h: Use "#pragma GCC system_header" to suppress some gcc
15999         warnings.
16000         Reported by Ben Pfaff <blp@cs.stanford.edu>.
16001
16002 2007-02-19  Bruno Haible  <bruno@clisp.org>
16003
16004         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Don't request a complaint mail
16005         from mingw users.
16006
16007 2007-02-19  Bruno Haible  <bruno@clisp.org>
16008
16009         * lib/stdlib_.h: Use "#pragma GCC system_header" to suppress some gcc
16010         warnings.
16011         Reported by Joel E. Denny <jdenny@ces.clemson.edu> via Paul Eggert.
16012
16013 2007-02-19  Jim Meyering  <jim@meyering.net>
16014
16015         Don't use FD after a successful "fdopendir (fd)".
16016         * lib/getcwd.c (__getcwd) [AT_FDCWD]: fdopendir (fd) usually closes fd.
16017         Reset it by calling dirfd on the just-obtained DIR*.
16018
16019         * m4/ftruncate.m4: Adjust comment to give this module a 3-year reprieve.
16020         Prompted by a report from Bruno Haible that mingw lacks ftruncate.
16021
16022 2007-02-18  Bruno Haible  <bruno@clisp.org>
16023
16024         * lib/readlink.c: Include <unistd.h>.
16025         * m4/readlink.m4 (gl_FUNC_READLINK): Require gl_UNISTD_H_DEFAULTS. Set
16026         HAVE_READLINK.
16027         * modules/readlink (Depends-on): Add unistd.
16028         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
16029         (Include): Add <unistd.h>.
16030
16031         * lib/getlogin_r.h: Remove file.
16032         * lib/getlogin_r.c: Include <unistd.h> instead of getlogin_r.h.
16033         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE): Remove macro.
16034         (gl_GETLOGIN_R): Inline it here. Require gl_UNISTD_H_DEFAULTS. Set
16035         HAVE_DECL_GETLOGIN_R.
16036         * modules/getlogin_r (Files): Remove lib/getlogin_r.h.
16037         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
16038         (Include): Use <unistd.h> instead of getlogin_r.h.
16039
16040         * lib/getcwd.h: Remove file.
16041         * lib/getcwd.c: Include <unistd.h> instead of getcwd.h.
16042         * lib/xgetcwd.c: Likewise.
16043         * m4/getcwd.m4 (gl_FUNC_GETCWD): Require gl_UNISTD_H_DEFAULTS. Set
16044         REPLACE_GETCWD. Don't define __GETCWD_PREFIX.
16045         * modules/getcwd (Files): Remove lib/getcwd.h.
16046         (Depends-on): Add unistd.
16047         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
16048         (Include): Use <unistd.h> instad of getcwd.h.
16049
16050         * lib/ftruncate.c: Include <unistd.h> first.
16051         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Require gl_UNISTD_H_DEFAULTS.
16052         Set HAVE_FTRUNCATE.
16053         * modules/ftruncate (Depends-on): Add unistd.
16054         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
16055
16056         * lib/fchdir.c: Include <unistd.h> first.
16057         * lib/dirent_.h: Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT.
16058         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_UNISTD_H_DEFAULTS instead
16059         of gl_HEADER_UNISTD_DEFAULTS. Set REPLACE_FCHDIR. Don't set UNISTD_H.
16060         * modules/fchdir (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
16061         (Makefile.am): Substitute also REPLACE_FCHDIR into dirent.h.
16062
16063         * lib/dup2.c: Include <unistd.h> first.
16064         * m4/dup2.m4 (gl_FUNC_DUP2): Require gl_UNISTD_H_DEFAULTS. Set
16065         HAVE_DUP2.
16066         * modules/dup2 (Depends-on): Add unistd.
16067         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
16068
16069         * lib/chown.c: Include <unistd.h> first. Undefine chown later.
16070         * m4/chown.m4 (gl_FUNC_CHOWN): Require gl_UNISTD_H_DEFAULTS. Set
16071         REPLACE_CHOWN. Don't define chown as a macro here.
16072         * modules/chown (Depends-on): Add unistd.
16073         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
16074
16075         * lib/unistd_.h: Test HAVE_UNISTD_H determined at configure time.
16076         Add definition for GL_LINK_WARNING.
16077         (chown, dup2): New declarations.
16078         (fchdir): Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT. Provide optional
16079         link warning.
16080         (ftruncate): New declaration.
16081         (getcwd): New declaration, taken from old getcwd.h.
16082         (getlogin_r): New declaration, taken from old getlogin_r.h.
16083         (readlink): New declaration.
16084         * m4/unistd_h.m4 (gl_UNISTD_H): Renamed from gl_HEADER_UNISTD. Don't
16085         set UNISTD_H. Inline gl_PREREQ_UNISTD. Set HAVE_UNISTD_H.
16086         (gl_PREREQ_UNISTD): Remove macro.
16087         (gl_UNISTD_MODULE_INDICATOR): New macro.
16088         (gl_UNISTD_H_DEFAULTS): Renamed from gl_HEADER_UNISTD_DEFAULTS. Set
16089         many new variables. Don't set UNISTD_H.
16090         * modules/unistd (Description): Change.
16091         (Depends-on): Add link-warning.
16092         (configure.ac): Update.
16093         (Makefile.am): Create unistd.h always. Substitute many new variables
16094         into it.
16095
16096 2007-02-18  Bruno Haible  <bruno@clisp.org>
16097
16098         * lib/stdlib_.h (getsubopt): New declaration, copied from getsubopt.h.
16099         * modules/stdlib (stdlib.h): Also substitute GNULIB_GETSUBOPT and
16100         HAVE_GETSUBOPT.
16101         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Also initialize
16102         GNULIB_GETSUBOPT and HAVE_GETSUBOPT.
16103         * lib/getsubopt.h: Remove file.
16104         * modules/getsubopt (Files): Remove lib/getsubopt.h.
16105         (Depends-on): Add stdlib.
16106         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
16107         (Includes): Use <stdlib.h> instead of getsubopt.h.
16108         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Require gl_STDLIB_H_DEFAULTS.
16109         Set HAVE_GETSUBOPT.
16110         * lib/getsubopt.c: Don't include getsubopt.h.
16111
16112 2007-02-18  Bruno Haible  <bruno@clisp.org>
16113
16114         * modules/fchdir (Depends-on): Add dup2.
16115
16116 2007-02-18  Bruno Haible  <bruno@clisp.org>
16117
16118         * lib/stdlib_.h: Handle glibc's special invocation convention
16119         specially.
16120
16121 2007-02-18  Bruno Haible  <bruno@clisp.org>
16122
16123         * modules/stdlib-tests: New file.
16124         * tests/test-stdlib.c: New file.
16125
16126         * modules/mkstemp (Files): Remove lib/mkstemp.h.
16127         (Depends-on): Add stdlib.
16128         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
16129         (Includes): Use <stdlib.h> instead of mkstemp.h.
16130         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require gl_STDLIB_H_DEFAULTS. Set
16131         REPLACE_MKSTEMP. Remove definition of __MKSTEMP_PREFIX.
16132         * lib/mkstemp.c: Don't include mkstemp.h.
16133         * lib/mkstemp-safer.c: Include <stdlib.h> instead of mkstemp.h.
16134         * lib/stdlib--.h: Don't include mkstemp.h.
16135
16136         * modules/mkdtemp (Files): Remove lib/mkdtemp.h.
16137         (Depends-on): Add stdlib.
16138         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
16139         (Includes): Use <stdlib.h> instead of mkdtemp.h.
16140         * m4/mkdtemp.m4 (gt_FUNC_MKDTEMP): Require gl_STDLIB_H_DEFAULTS. Set
16141         HAVE_MKDTEMP.
16142         * lib/mkdtemp.c: Don't include mkdtemp.h.
16143         * lib/clean-temp.c: Don't include mkdtemp.h.
16144
16145         * modules/exit (Files): Remove lib/exit.h.
16146         (Depends-on): Add stdlib.
16147         (Makefile.am): Remove lib_SOURCES.
16148         (Include): Use <stdlib.h> instead of exit.h.
16149         * lib/argmatch.c: Don't include exit.h.
16150         * lib/execute.c: Likewise.
16151         * lib/pagealign_alloc.c: Likewise.
16152         * lib/pipe.c: Likewise.
16153         * lib/wait-process.c: Likewise.
16154         * lib/copy-file.c: Include <stdlib.h> instead of exit.h.
16155         * lib/exitfail.c: Likewise.
16156         * lib/savewd.c: Likewise.
16157         * lib/xsetenv.c: Likewise.
16158
16159         * modules/stdlib: New file.
16160         * lib/stdlib_.h: New file, incorporating exit.h, mkdtemp.h, mkstemp.h
16161         and extra comments about mkstemp().
16162         * lib/exit.h: Remove file.
16163         * lib/mkdtemp.h: Remove file.
16164         * lib/mkstemp.h: Remove file.
16165         * m4/stdlib_h.m4: New file.
16166         * MODULES.html.sh (Support for systems lacking ANSI C 89): Add stdlib.
16167
16168 2007-02-18  Bruno Haible  <bruno@clisp.org>
16169
16170         * modules/math-tests: New file.
16171         * tests/test-math.c: New file.
16172
16173         * modules/math: New file.
16174         * modules/mathl (Files): Remove lib/mathl.h.
16175         (Depends-on): Add math.
16176         (Makefile.am): Don't mention mathl.h.
16177         (Include): Use <math.h> instead of mathl.h.
16178         * lib/math_.h: New file.
16179         * lib/mathl.h: Remove file.
16180         * lib/acosl.c: Include <config.h> and <math.h> first. Don't include
16181         mathl.h.
16182         * lib/asinl.c: Likewise.
16183         * lib/atanl.c: Likewise.
16184         * lib/ceill.c: Likewise.
16185         * lib/cosl.c: Likewise.
16186         * lib/expl.c: Likewise.
16187         * lib/floorl.c: Likewise.
16188         * lib/frexpl.c: Likewise.
16189         * lib/ldexpl.c: Likewise.
16190         * lib/logl.c: Likewise.
16191         * lib/sincosl.c: Likewise.
16192         * lib/sinl.c: Likewise.
16193         * lib/sqrtl.c: Likewise.
16194         * lib/tanl.c: Likewise.
16195         * lib/trigl.c: Likewise.
16196         * m4/math_h.m4: New file.
16197         * MODULES.html.sh (Mathematics): Add math.
16198
16199 2007-02-17  Bruno Haible  <bruno@clisp.org>
16200
16201         * modules/wctype-tests: New file.
16202         * tests/test-wctype.c: New file.
16203
16204         * modules/wchar-tests: New file.
16205         * tests/test-wchar.c: New file.
16206
16207         * modules/unistd-tests: New file.
16208         * tests/test-unistd.c: New file.
16209
16210         * modules/time-tests: New file.
16211         * tests/test-time.c: New file.
16212
16213         * modules/sysexits-tests: New file.
16214         * tests/test-sysexits.c: New file.
16215
16216         * modules/sys_time-tests: New file.
16217         * tests/test-sys_time.c: New file.
16218
16219         * modules/sys_stat-tests: New file.
16220         * tests/test-sys_stat.c: New file.
16221
16222         * modules/sys_socket-tests: New file.
16223         * tests/test-sys_socket.c: New file.
16224
16225         * modules/sys_select-tests: New file.
16226         * tests/test-sys_select.c: New file.
16227
16228         * modules/string-tests: New file.
16229         * tests/test-string.c: New file.
16230
16231         * modules/stdbool-tests: New file.
16232         * tests/test-stdbool.c: New file.
16233
16234         * modules/netinet_in-tests: New file.
16235         * tests/test-netinet_in.c: New file.
16236
16237         * modules/inttypes-tests: New file.
16238         * tests/test-inttypes.c: New file.
16239
16240         * modules/fcntl-tests: New file.
16241         * tests/test-fcntl.c: New file.
16242
16243         * modules/byteswap-tests: New file.
16244         * tests/test-byteswap.c: New file.
16245
16246         * modules/arpa_inet-tests: New file.
16247         * tests/test-arpa_inet.c: New file.
16248
16249 2007-02-17  Bruno Haible  <bruno@clisp.org>
16250
16251         * lib/inttypes_.h: Add definition for GL_LINK_WARNING.
16252         (imaxabs, imaxdiv, strtoimax, strtoumax): Don't declare the function
16253         if the corresponding module is not enabled. Emit link warnings if
16254         the function is used nevertheless.
16255         * m4/inttypes.m4 (gl_INTTYPES_H): Never use the existing <inttypes.h>.
16256         Don't AC_SUBST HAVE_DECL_IMAXABS, HAVE_DECL_IMAXDIV,
16257         HAVE_DECL_STRTOIMAX, HAVE_DECL_STRTOUMAX.
16258         (gl_INTTYPES_MODULE_INDICATOR, gl_INTTYPES_H_DEFAULTS): New macros.
16259         * modules/inttypes (Depends-on): Add link-warning.
16260         (Makefile.am): Copy the contents of build-aux/link-warning.h into
16261         inttypes.h. Substitute also GNULIB_IMAXABS, GNULIB_IMAXDIV,
16262         GNULIB_STRTOIMAX, GNULIB_STRTOUMAX.
16263         * modules/imaxabs (configure.ac): Invoke gl_INTTYPES_MODULE_INDICATOR.
16264         * modules/imaxdiv (configure.ac): Likewise.
16265         * modules/strtoimax (configure.ac): Likewise.
16266         * modules/strtoumax (configure.ac): Likewise.
16267
16268 2007-02-17  Bruno Haible  <bruno@clisp.org>
16269
16270         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Include the contents of
16271         gl_STRING_MODULE_INDICATOR_DEFAULTS.
16272         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Remove macro.
16273         (gl_HEADER_STRING_H_BODY, gl_STRING_MODULE_INDICATOR): Update.
16274
16275 2007-02-17  Bruno Haible  <bruno@clisp.org>
16276
16277         * modules/link-warning: New file.
16278         * build-aux/link-warning.h: New file, extracted from lib/string_.h.
16279         * lib/string_.h (GL_LINK_WARNING): Remove definition.
16280         * modules/string (Depends-on): Add link-warning.
16281         (Makefile.am): Copy the contents of build-aux/link-warning.h into
16282         string.h.
16283         * MODULES.html.sh (Support for building libraries and executables): Add
16284         link-warning.
16285
16286 2007-02-17  Bruno Haible  <bruno@clisp.org>
16287
16288         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strcasecmp,
16289         strncasecmp, strchr, strchrnul, strdup, strndup, strnlen, strcspn,
16290         strpbrk, strspn, strrchr, strsep, strstr, strcasestr, strtok_r): Break
16291         long lines.
16292
16293 2007-02-17  Ben Pfaff  <blp@cs.stanford.edu>
16294             Bruno Haible  <bruno@clisp.org>
16295
16296         * modules/tmpfile: New file.
16297         * lib/tmpfile.c: New file.
16298         * m4/tmpfile.m4: New file.
16299         * MODULES.html.sh (func_all_modules): New section "Input/output".
16300
16301 2007-02-15  Bruno Haible  <bruno@clisp.org>
16302
16303         * lib/clean-temp.c [WIN32 && !CYGWIN]: Include <windows.h>.
16304         (supports_delete_on_close): New function.
16305         (open_temp, fopen_temp): Use _O_TEMPORARY when supported.
16306
16307 2007-02-14  Bruno Haible  <bruno@clisp.org>
16308
16309         * modules/mbspcasecmp-tests: New file.
16310         * tests/test-mbspcasecmp.sh: New file.
16311         * tests/test-mbspcasecmp.c: New file.
16312
16313         New module mbspcasecmp.
16314         * modules/mbspcasecmp: New file.
16315         * lib/mbspcasecmp.c: New file.
16316         * lib/string_.h (strncasecmp): Change warning message.
16317         (mbspcasecmp): New declaration.
16318         * m4/mbspcasecmp.m4: New file.
16319         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
16320         GNULIB_MBSPCASECMP.
16321         * modules/string (string.h): Also substitute GNULIB_MBSPCASECMP.
16322         * MODULES.html.sh (Internationalization functions): Add mbspcasecmp.
16323
16324 2007-02-14  Bruno Haible  <bruno@clisp.org>
16325
16326         * modules/mbsncasecmp-tests: New file.
16327         * tests/test-mbsncasecmp.sh: New file.
16328         * tests/test-mbsncasecmp.c: New file.
16329
16330         New module mbsncasecmp.
16331         * modules/mbsncasecmp: New file.
16332         * lib/mbsncasecmp.c: New file.
16333         * lib/string_.h (mbsncasecmp): New declaration.
16334         * m4/mbsncasecmp.m4: New file.
16335         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
16336         GNULIB_MBSNCASECMP.
16337         * modules/string (string.h): Also substitute GNULIB_MBSNCASECMP.
16338         * MODULES.html.sh (Internationalization functions): Add mbsncasecmp.
16339
16340 2007-02-14  Paul Eggert  <eggert@cs.ucla.edu>
16341
16342         * lib/exclude.c (FNM_EXTMATCH): Define if system does not.
16343         Verify that it doesn't overlap with our flags.
16344         (fnmatch_no_wildcards): Don't use strcasecmp or strncasecmp, which
16345         do not have the desired effect in multibyte locales; instead, use
16346         mbscasecmp.
16347         * modules/exclude (Depends-on): Depend on mbscasecmp, not strcase.
16348         Add dependency on xalloc.  Depend on fnmatch, not fnmatch-gnu, since
16349         we don't require GNU fnmatch ourselves (if our users require it, they
16350         should do so explicitly).
16351
16352         Fix regex code so it doesn't rely on strcasecmp.
16353         * lib/regex_internal.h: Include <langinfo.h> only if _LIBC is defined.
16354         Otherwise, include gnulib's langinfo.h.
16355         * lib/regcomp.c (init_dfa): Don't use strcasecmp, as it can have
16356         undesirable behavior in non-C locales.  Instead, rely on localecharset.
16357         * m4/regex.m4 (gl_PREREQ_REGEX): Don't require AM_LANGINFO_CODESET.
16358         * modules/regex (FILES): Remove m4/codeset.m4.
16359         (Depends-on): Add localcharset.  Remove strcase.
16360
16361 2007-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16362
16363         * m4/unlinkdir.m4 (gl_UNLINKDIR): Fix m4 quoting bug.
16364         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Likewise.
16365
16366 2007-02-13  Bruno Haible  <bruno@clisp.org>
16367
16368         * m4/intdiv0.m4 (gt_INTDIV0): Assume ANSI C. Fix underquoting bug.
16369         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
16370
16371 2007-02-12  Bruno Haible  <bruno@clisp.org>
16372
16373         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
16374         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): If
16375         GNULIB_POSIXCHECK and the gnulib module not enabled, provoke a link-
16376         time warning rather than a link error.
16377
16378 2007-02-12  Bruno Haible  <bruno@clisp.org>
16379
16380         * m4/locale-fr.m4 (gt_LOCALE_FR): Fix m4 quoting bug.
16381         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
16382         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
16383
16384 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
16385
16386         * lib/string_.h (strncasecmp): Fix typo: this macro takes 3
16387         args, not 2.
16388
16389 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
16390
16391         New module 'time', so that apps can include <time.h> as per
16392         POSIX and GNU instead of separate include files like time_r.h
16393         and timegm.h.  This implementation tries out a simpler approach
16394         for replacing decls in standard include files (as compared to
16395         the string module), somewhat as an experiment.
16396
16397         * config/srclist.txt: Comment out mktime.c for now.
16398         * doc/gnulib-tool.texi (Initial import): Don't use time_r as an example
16399         since it doesn't apply any more.  Use generic wording instead.
16400         * MODULES.html.sh (Support for systems lacking POSIX:2001): New module
16401         'time'.
16402         * lib/time_.h, m4/time_h.m4, modules/time: New files.
16403         * lib/strptime.h, lib/time_r.h, lib/timegm.h: Remove.
16404         * lib/mktime.c: Include config.h depending on _LIBC, not HAVE_CONFIG_H.
16405         Don't include <sys/types.h>; no longer needed since we assume C89.
16406         * lib/mktime.c: Don't include "time_r.h"; no longer needed.
16407         * lib/strftime.c: Likewise.
16408         * lib/time_r.c: Likewise.
16409         * lib/nanosleep.c (nanosleep): #undef after include files, not before.
16410         * lib/nanosleep.c: Include <time.h> first, to check interface.
16411         * lib/strptime.c: Likewise.
16412         * lib/time_r.c: Likewise.
16413         * lib/timegm.c: Likewise.
16414         * lib/strptime.c: Don't include strptime.h or time_r.h; no longer
16415         needed.
16416         * lib/timegm.c: Don't include timegm.h; no longer needed.
16417         * lib/timespec.h: Don't include <sys/time.h> before <time.h>;
16418         time.h now handles any problems in that area.
16419         (struct timespec, nanosleep): Remove; time.h now arranges for these.
16420         * lib/xnanosleep.c: Don't include timespec.h; no longer needed now
16421         that time.h defines struct timespec.
16422         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check that nanosleep is declared.
16423         Set REPLACE_NANOSLEEP.  Don't AC_DEFINE nanosleep; the time module now
16424         handles that.
16425         * m4/strptime.m4 (gl_FUNC_STPRTIME): Set REPLACE_STRPTIME.
16426         * m4/time_r.m4 (gl_TIME_R): Don't define HAVE_TIME_R_POSIX; no longer
16427         needed.  Set REPLACE_LOCALTIME.
16428         * m4/timegm.m4 (gl_FUNC_TIMEGM): Set REPLACE_TIMEGM.
16429         * m4/timespec.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Move to time_h.m4.
16430         (gl_TIMESPEC): Don't check for sys/time.h or struct timespec or
16431         nanosleep; time_h.m4 now does that.  Don't require
16432         gl_USE_SYSTEM_EXTENSIONS; no longer needed directly, and the time
16433         module handles this now.
16434         * modules/getdate (Depends-on): Remove timespec.  Add time.
16435         * modules/nanosleep (Depends-on): Likewise.
16436         * modules/stat-time (Depends-on): Likewise.
16437         * modules/nanosleep (Include): Include time.h, not timespec.h.
16438         * modules/strptime (Files): Remove lib/strptime.h.
16439         (Depends-on): Add extensions, time.
16440         (Include): Include time.h, not strptime.h.
16441         * modules/time_r (Files): Remove lib/time_r.h.
16442         (Depends-on): Add time.
16443         (Include): Include time.h, not time_r.h.
16444         * modules/timegm: Likewise.
16445         * modules/timespec (Description): Now does timespec-related decls
16446         of our own, instead of struct timespec itself.
16447         (Depends-on): Add time; remove extensions.
16448         (Maintainer): Add self.
16449         * modules/utimecmp (Depends-on): Add time; remove timespec.
16450         * modules/utimens (Depends-on): Likewise.
16451         * modules/xnanosleep (Depends-on): Likewise.
16452
16453 2007-02-11  Bruno Haible  <bruno@clisp.org>
16454
16455         * lib/c-strstr.c: Include allocsa.h.
16456         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
16457         * lib/c-strcasestr.c: Include allocsa.h.
16458         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
16459         * lib/strcasestr.c: Include allocsa.h.
16460         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
16461         * lib/mbsstr.c: Include allocsa.h.
16462         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
16463         allocsa/freesa instead of malloc/free.
16464         * lib/mbscasestr.c: Include allocsa.h.
16465         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
16466         allocsa/freesa instead of malloc/free.
16467         * modules/c-strstr (Depends-on): Add allocsa.
16468         * modules/c-strcasestr (Depends-on): Likewise.
16469         * modules/strcasestr (Depends-on): Likewise.
16470         * modules/mbsstr (Depends-on): Likewise.
16471         * modules/mbscasestr (Depends-on): Likewise.
16472
16473 2007-02-11  Bruno Haible  <bruno@clisp.org>
16474
16475         * lib/mbsspn.c (mbsspn): Fix bug. Remove unnecessary strlen call.
16476
16477         * modules/mbsspn-tests: New file.
16478         * tests/test-mbsspn.sh: New file.
16479         * tests/test-mbsspn.c: New file.
16480
16481 2007-02-11  Bruno Haible  <bruno@clisp.org>
16482
16483         * lib/mbspbrk.c (mbspbrk): Remove unneeded cast.
16484
16485         * modules/mbspbrk-tests: New file.
16486         * tests/test-mbspbrk.sh: New file.
16487         * tests/test-mbspbrk.c: New file.
16488
16489 2007-02-11  Bruno Haible  <bruno@clisp.org>
16490
16491         * lib/mbscspn.c (mbscspn): Remove unnecessary strlen call and
16492         unneeded cast.
16493
16494         * modules/mbscspn-tests: New file.
16495         * tests/test-mbscspn.sh: New file.
16496         * tests/test-mbscspn.c: New file.
16497
16498 2007-02-11  Bruno Haible  <bruno@clisp.org>
16499
16500         * modules/mbscasecmp-tests: New file.
16501         * tests/test-mbscasecmp.sh: New file.
16502         * tests/test-mbscasecmp.c: New file.
16503
16504 2007-02-11  Bruno Haible  <bruno@clisp.org>
16505
16506         Ensure O(n) worst-case complexity of mbscasestr.
16507         * lib/mbscasestr.c: Include stdbool.h.
16508         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
16509         functions.
16510         (mbscasestr): Add some bookkeeping. Invoke knuth_morris_pratt_* when
16511         the bookkeeping indicates that it's worth it.
16512         * modules/mbscasestr (Depends-on): Add stdbool, mbslen, strnlen.
16513
16514         * modules/mbscasestr-tests: New file.
16515         * tests/test-mbscasestr1.c: New file.
16516         * tests/test-mbscasestr2.sh: New file.
16517         * tests/test-mbscasestr2.c: New file.
16518         * tests/test-mbscasestr3.sh: New file.
16519         * tests/test-mbscasestr3.c: New file.
16520         * tests/test-mbscasestr4.sh: New file.
16521         * tests/test-mbscasestr4.c: New file.
16522         * m4/locale-tr.m4: New file.
16523
16524 2007-02-11  Bruno Haible  <bruno@clisp.org>
16525
16526         Ensure O(n) worst-case complexity of mbsstr.
16527         * lib/mbsstr.c: Include stdbool.h.
16528         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
16529         functions.
16530         (mbsstr): Add some bookkeeping. Invoke knuth_morris_pratt_* when the
16531         bookkeeping indicates that it's worth it.
16532         * modules/mbsstr (Depends-on): Add stdbool, mbslen, strnlen.
16533
16534         * modules/mbsstr-tests: New file.
16535         * tests/test-mbsstr1.c: New file.
16536         * tests/test-mbsstr2.sh: New file.
16537         * tests/test-mbsstr2.c: New file.
16538         * tests/test-mbsstr3.sh: New file.
16539         * tests/test-mbsstr3.c: New file.
16540         * m4/locale-fr.m4: New file.
16541
16542 2007-02-11  Bruno Haible  <bruno@clisp.org>
16543
16544         * lib/mbsrchr.c (mbsrchr): Fix bug.
16545
16546         * modules/mbsrchr-tests: New file.
16547         * tests/test-mbsrchr.sh: New file.
16548         * tests/test-mbsrchr.c: New file.
16549
16550 2007-02-11  Bruno Haible  <bruno@clisp.org>
16551
16552         * lib/mbschr.c (mbschr): Fix bug.
16553
16554         * modules/mbschr-tests: New file.
16555         * tests/test-mbschr.sh: New file.
16556         * tests/test-mbschr.c: New file.
16557         * m4/locale-zh.m4: New file.
16558
16559 2007-02-11  Bruno Haible  <bruno@clisp.org>
16560
16561         Support for copying multibyte string iterators.
16562         * lib/mbiter.h: Include <string.h>.
16563         (mbiter_multi_copy): New function.
16564         (mbi_copy): New macro.
16565         * lib/mbuiter.h: Include <string.h>.
16566         (mbuiter_multi_copy): New function.
16567         (mbui_copy): New macro.
16568
16569 2007-02-11  Bruno Haible  <bruno@clisp.org>
16570
16571         New module mbslen.
16572         * modules/mbslen: New file.
16573         * lib/mbslen.c: New file.
16574         * lib/string_.h (mbslen): New declaration.
16575         * m4/mbslen.m4: New file.
16576         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
16577         GNULIB_MBSLEN.
16578         * modules/string (string.h): Also substitute GNULIB_MBSLEN.
16579         * MODULES.html.sh (Internationalization functions): Add mbslen.
16580
16581 2007-02-11  Bruno Haible  <bruno@clisp.org>
16582
16583         Ensure O(n) worst-case complexity of strcasestr substitute.
16584         * lib/strcasestr.c: Include stdbool.h.
16585         (knuth_morris_pratt): New function.
16586         (strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when the
16587         bookkeeping indicates that it's worth it.
16588         * modules/strcasestr (Depends-on): Add stdbool, strnlen.
16589
16590         * modules/strcasestr-tests: New file.
16591         * tests/test-strcasestr.c: New file.
16592
16593 2007-02-11  Bruno Haible  <bruno@clisp.org>
16594
16595         Ensure O(n) worst-case complexity of c_strcasestr.
16596         * lib/c-strcasestr.c: Include stdbool.h, string.h.
16597         (knuth_morris_pratt): New function.
16598         (c_strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when
16599         the bookkeeping indicates that it's worth it.
16600         * modules/c-strcasestr (Depends-on): Add stdbool, strnlen.
16601
16602         * modules/c-strcasestr-tests: New file.
16603         * tests/test-c-strcasestr.c: New file.
16604
16605 2007-02-11  Bruno Haible  <bruno@clisp.org>
16606
16607         Ensure O(n) worst-case complexity of c_strstr.
16608         * lib/c-strstr.c: Include stdbool.h, string.h.
16609         (knuth_morris_pratt): New function.
16610         (c_strstr): Add some bookkeeping. Invoke knuth_morris_pratt when the
16611         bookkeeping indicates that it's worth it.
16612         * modules/c-strstr (Depends-on): Add stdbool, strnlen.
16613
16614         * lib/c-strstr.c: Complete rewrite for maintainability.
16615
16616         * modules/c-strstr-tests: New file.
16617         * tests/test-c-strstr.c: New file.
16618
16619 2007-02-11  Bruno Haible  <bruno@clisp.org>
16620
16621         * m4/javacomp.m4 (gt_JAVACOMP): Work around a 'tr' bug in coreutils
16622         5.2.1 and earlier, whereby \055 was treated just like the range
16623         delimiter '-'.
16624         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
16625
16626 2007-02-08  Bruno Haible  <bruno@clisp.org>
16627
16628         * modules/regex (Depends-on): Add stdbool.
16629         Reported by Dalibor Topic <robilad@kaffe.org>.
16630
16631 2007-02-05  Paul Eggert  <eggert@cs.ucla.edu>
16632
16633         * m4/regex.m4 (gl_REGEX): Check for glibc bug #3957.
16634         Prefer returning from main to exiting from it.
16635         Remove unnecessary parens after sizeof.
16636
16637 2007-02-05  Bruno Haible  <bruno@clisp.org>
16638
16639         New module mbssep.
16640         * modules/mbssep: New file.
16641         * lib/mbssep.c: New file.
16642         * lib/string_.h (strsep): Add a conditional link warning.
16643         (mbssep): New declaration.
16644         * m4/mbssep.m4: New file.
16645         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
16646         GNULIB_MBSSEP.
16647         * modules/string (string.h): Also substitute GNULIB_MBSSEP.
16648         * MODULES.html.sh (Internationalization functions): Add mbssep.
16649
16650 2007-02-05  Bruno Haible  <bruno@clisp.org>
16651
16652         * lib/strsep.c (strsep): Fix actions in case of no delimiters.
16653         Optimize search in case of 1 delimiter.
16654
16655 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
16656
16657         * lib/acl.h: Include sys/types.h before sys/acl.h.
16658
16659 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
16660
16661         Merge upstream fix for glibc bugzilla #3957:
16662
16663         2007-02-05  Jakub Jelinek  <jakub@redhat.com>
16664
16665         * lib/regcomp.c (parse_bracket_exp): Set '\n' bit rather than '\0'
16666         bit for RE_HAT_LISTS_NOT_NEWLINE.
16667         (build_charclass_op): Remove bogus comment.
16668
16669 2007-02-05  Simon Josefsson  <simon@josefsson.org>
16670
16671         * lib/gc.h, lib/gc-libgcrypt.c: Support SHA-256/384/512.
16672
16673 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
16674
16675         * lib/getsubopt.c [!_LIBC]: Include config.h and getsubopt.h.
16676         * lib/memmem.c [!defined _LIBC]: Include config.h.
16677
16678 2007-02-04  Bruno Haible  <bruno@clisp.org>
16679
16680         * lib/string_.h (GL_LINK_WARNING2): Put the word "warning:" into the
16681         warning message.
16682
16683 2007-02-04  Bruno Haible  <bruno@clisp.org>
16684
16685         New module mbstok_r.
16686         * modules/mbstok_r: New file.
16687         * lib/mbstok_r.c: New file.
16688         * lib/string_.h (strtok_r): Change argument names to match the
16689         comments. Add a conditional link warning.
16690         (mbstok_r): New declaration.
16691         * m4/mbstok_r.m4: New file.
16692         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
16693         GNULIB_MBSTOK_R.
16694         * modules/string (string.h): Also substitute GNULIB_MBSTOK_R.
16695         * MODULES.html.sh (Internationalization functions): Add mbstok_r.
16696
16697 2007-02-04  Bruno Haible  <bruno@clisp.org>
16698
16699         New module mbsspn.
16700         * modules/mbsspn: New file.
16701         * lib/mbsspn.c: New file.
16702         * lib/string_.h (strspn): Add a conditional link warning.
16703         (mbsspn): New declaration.
16704         * m4/mbsspn.m4: New file.
16705         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
16706         GNULIB_MBSSPN.
16707         * modules/string (string.h): Also substitute GNULIB_MBSSPN.
16708         * MODULES.html.sh (Internationalization functions): Add mbsspn.
16709
16710 2007-02-04  Bruno Haible  <bruno@clisp.org>
16711
16712         New module mbspbrk.
16713         * modules/mbspbrk: New file.
16714         * lib/mbspbrk.c: New file.
16715         * lib/string_.h (strpbrk): Add a conditional link warning.
16716         (mbspbrk): New declaration.
16717         * m4/mbspbrk.m4: New file.
16718         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
16719         GNULIB_MBSPBRK.
16720         * modules/string (string.h): Also substitute GNULIB_MBSPBRK.
16721         * MODULES.html.sh (Internationalization functions): Add mbspbrk.
16722
16723 2007-02-04  Bruno Haible  <bruno@clisp.org>
16724
16725         New module mbscspn.
16726         * modules/mbscspn: New file.
16727         * lib/mbscspn.c: New file.
16728         * lib/string_.h (strcspn): Add a conditional link warning.
16729         (mbscspn): New declaration.
16730         * m4/mbscspn.m4: New file.
16731         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
16732         GNULIB_MBSCSPN.
16733         * modules/string (string.h): Also substitute GNULIB_MBSCSPN.
16734         * MODULES.html.sh (Internationalization functions): Add mbscspn.
16735
16736 2007-02-04  Bruno Haible  <bruno@clisp.org>
16737
16738         New module mbscasestr, reduced goal of strcasestr.
16739         * modules/mbscasestr: New file.
16740         * lib/mbscasestr.c: New file, copied from lib/strcasestr.c.
16741         (mbscasestr): Renamed from strcasestr.
16742         * lib/strcasestr.c: Don't include mbuiter.h.
16743         (strcasestr): Remove support for multibyte locales.
16744         * lib/string_.h (strcasestr): Don`t rename. Declare only if missing.
16745         Change the conditional link warning.
16746         (mbscasestr): New declaration.
16747         * m4/mbscasestr.m4: New file.
16748         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Enable the replacement only if
16749         the system does not have strcasestr. Set HAVE_STRCASESTR instead of
16750         REPLACE_STRCASESTR.
16751         (gl_PREREQ_STRCASESTR): Don't require gl_FUNC_MBRTOWC.
16752         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
16753         HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
16754         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSCASESTR.
16755         * modules/string (string.h): Also substitute GNULIB_MBSCASESTR.
16756         Substitute HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
16757         * modules/strcasestr (Files): Remove m4/mbrtowc.m4.
16758         (Depends-on): Remove mbuiter.
16759         * MODULES.html.sh (Internationalization functions): Add mbscasestr.
16760
16761 2007-02-04  Bruno Haible  <bruno@clisp.org>
16762
16763         Simplify handling of strncasecmp.
16764         * lib/string_.h (strncasecmp): Remove test for GNULIB_STRCASE. Change
16765         the conditional link warning.
16766         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
16767         HAVE_STRCASECMP, not REPLACE_STRCASECMP.
16768         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Don't initialize GNULIB_STRCASE.
16769         * modules/strcase (configure.ac): Don't invoke
16770         gl_STRING_MODULE_INDICATOR.
16771         * modules/string (string.h): Don't substitute GNULIB_STRCASE.
16772
16773 2007-02-04  Bruno Haible  <bruno@clisp.org>
16774
16775         New module mbscasecmp, reduced goal of strcasecmp.
16776         * modules/mbscasecmp: New file.
16777         * lib/mbscasecmp.c: New file, copied from lib/strcasecmp.c.
16778         (mbscasecmp): Renamed from strcasecmp.
16779         * lib/strcasecmp.c: Don't include mbuiter.h.
16780         (strcasecmp): Remove support for multibyte locales.
16781         * lib/string_.h (strcasecmp): Don`t rename. Declare only if missing.
16782         Change the conditional link warning.
16783         (mbscasecmp): New declaration.
16784         * m4/mbscasecmp.m4: New file.
16785         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Enable the replacement only if
16786         the system lacks strcasecmp. Set HAVE_STRCASECMP instead of
16787         REPLACE_STRCASECMP.
16788         (gl_PREREQ_STRCASECMP): Don't require gl_FUNC_MBRTOWC.
16789         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
16790         GNULIB_MBSCASECMP.
16791         * modules/string (string.h): Also substitute GNULIB_MBSCASECMP.
16792         Substitute HAVE_STRCASECMP instead of REPLACE_STRCASECMP.
16793         * modules/strcase (Files): Remove m4/mbrtowc.m4.
16794         (Depends-on): Remove mbuiter.
16795         * MODULES.html.sh (Internationalization functions): Add mbscasecmp.
16796
16797 2007-02-04  Bruno Haible  <bruno@clisp.org>
16798
16799         New module mbsstr. Remove module strstr.
16800         * modules/mbsstr: New file.
16801         * modules/strstr: Remove file.
16802         * lib/mbsstr.c: Renamed from lib/strstr.c.
16803         (mbsstr): Renamed from strstr.
16804         * lib/string_.h (strstr): Remove declaration. Change the conditional
16805         link warning.
16806         (mbsstr): New declaration.
16807         * m4/mbsstr.m4: New file.
16808         * m4/strstr.m4: Remove file.
16809         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Don't initialize
16810         REPLACE_STRSTR.
16811         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSSTR.
16812         Don't initialize GNULIB_STRSTR.
16813         * modules/string (string.h): Also substitute GNULIB_MBSSTR. Don't
16814         substitute GNULIB_STRSTR and REPLACE_STRSTR.
16815         * MODULES.html.sh (Internationalization functions): Add mbsstr.
16816         (Support for systems lacking ANSI C 89): Remove strstr.
16817
16818 2007-02-04  Bruno Haible  <bruno@clisp.org>
16819
16820         New module mbsrchr.
16821         * modules/mbsrchr: New file.
16822         * lib/mbsrchr.c: New file.
16823         * lib/string_.h (strrchr): Add a conditional link warning.
16824         (mbsrchr): New declaration.
16825         * m4/mbsrchr.m4: New file.
16826         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
16827         GNULIB_MBSRCHR.
16828         * modules/string (string.h): Also substitute GNULIB_MBSRCHR.
16829         * MODULES.html.sh (Internationalization functions): Add mbsrchr.
16830
16831 2007-02-04  Bruno Haible  <bruno@clisp.org>
16832
16833         New module mbschr.
16834         * modules/mbschr: New file.
16835         * lib/mbschr.c: New file.
16836         * lib/string_.h (strchr): Add a conditional link warning.
16837         (mbschr): New declaration.
16838         * m4/mbschr.m4: New file.
16839         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
16840         GNULIB_MBSCHR.
16841         * modules/string (string.h): Also substitute GNULIB_MBSCHR.
16842         * MODULES.html.sh (Internationalization functions): Add mbschr.
16843
16844 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
16845
16846         * lib/stdbool_.h: Mention that bool bit-fields aren't supported.
16847
16848         * modules/stdarg (configure.ac-early): Require AC_PROG_CC_STDC.
16849
16850 2007-02-04  Bruno Haible  <bruno@clisp.org>
16851
16852         New module description section 'configure.ac-early'.
16853         * gnulib-tool (sed_extract_prog): Recognize configure.ac-early.
16854         (func_get_autoconf_early_snippet): New function.
16855         (func_import, func_create_testdir): Use it. Remove special cases for
16856         modules 'extensions' and 'lock'.
16857         * modules/extensions (configure.ac-early): Require
16858         gl_USE_SYSTEM_EXTENSIONS.
16859         * modules/lock (configure.ac-early): Require gl_LOCK_EARLY.
16860
16861 2007-02-04  Bruno Haible  <bruno@clisp.org>
16862
16863         Make use of gcj-4.3's -fsource and -ftarget option.
16864         * m4/javacomp.m4 (gt_JAVACOMP): Test whether gcj is in version >= 4.3,
16865         and if so try the options -fsource and -ftarget.
16866         * lib/javacomp.c (compile_using_gcj): Add fsource_option,
16867         source_version, ftarget_option, target_version arguments.
16868         (is_envjavac_gcj43, is_envjavac_gcj43_usable): New functions.
16869         (is_envjavac_oldgcj_14_14_usable): Renamed from
16870         is_envjavac_gcj_14_14_usable.
16871         (is_envjavac_oldgcj_14_13_usable): Renamed from
16872         is_envjavac_gcj_14_13_usable.
16873         (is_gcj_present): Update.
16874         (is_gcj_43, is_gcj43_usable): New functions.
16875         (is_oldgcj_14_14_usable): Renamed from is_gcj_14_14_usable. Update.
16876         (is_oldgcj_14_13_usable): Renamed from is_gcj_14_13_usable. Update.
16877         (compile_java_class): Test whether gcj is in version >= 4.3, and if so
16878         try the options -fsource and -ftarget.
16879
16880 2007-02-03  Paul Eggert  <eggert@cs.ucla.edu>
16881
16882         * lib/xalloc.h (x2nrealloc): Fix an unlikely bug in the overflow
16883         checking code.  Set N = ceil (1.5 * N) rather than to a slightly
16884         larger value.
16885
16886 2007-02-03  Jim Meyering  <jim@meyering.net>
16887
16888         Give tools a better chance to allocate space for very large buffers.
16889         * lib/xalloc.h (x2nrealloc): Use 3/2, not 2, as buffer size factor.
16890
16891         Make pwd and readlink work also when run with an unreadable parent dir
16892         on systems with openat support.
16893         * lib/getcwd.c (__getcwd) [HAVE_PARTLY_WORKING_GETCWD]: Use the system
16894         provided getcwd function, even when we have openat support.
16895         Reported by Dmitry V. Levin in <http://bugzilla.redhat.com/227168>.
16896
16897 2007-02-02  Bruno Haible  <bruno@clisp.org>
16898
16899         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
16900         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): Provoke a link
16901         error only if GNULIB_POSIXCHECK is defined. Needed to avoid artificial
16902         portability problems if one of these functions is only used on specific
16903         platforms.
16904         Reported by Paul Eggert.
16905
16906 2007-02-02  Paul Eggert  <eggert@cs.ucla.edu>
16907
16908         Avoid mempcpy in the regex code, as the string.h mempcpy stuff
16909         is causing more trouble than it's curing.
16910         * lib/regex_internal.h (__mempcpy): Remove.
16911         * lib/regcomp.c (regerror): Rewrite to avoid the need for mempcpy
16912         (and make the code a tad smaller to boot).
16913         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for mempcpy.
16914
16915 2007-02-02  Jim Meyering  <jim@meyering.net>
16916
16917         * modules/arpa_inet: Put AC_PROG_MKDIR_P in the configure.ac:
16918         section, not in the Makefile.am: one.
16919
16920 2007-02-02  Eric Blake  <ebb9@byu.net>
16921
16922         * lib/strchrnul.c: Always include config.h first.
16923
16924         * modules/mountlist (Depends-on): Revert 2007-01-31 change,
16925         gnulib strstr is not necessary here.
16926
16927 2007-02-02  Simon Josefsson  <simon@josefsson.org>
16928
16929         * m4/socklen.m4: Fix typo.
16930
16931 2007-02-02  Eric Blake  <ebb9@byu.net>
16932
16933         * modules/arpa_inet (Makefile.am): Use MKDIR_P to avoid races.
16934         * modules/netinet_in (Makefile.am): Likewise.
16935
16936 2007-02-01  Bruno Haible  <bruno@clisp.org>
16937
16938         * lib/string_.h (GL_LINK_WARNING): New macro.
16939         (strcasecmp, strstr, strcasestr): If provided by the system,
16940         conditionally define as a macro that leads to a warning instead of to
16941         an error.
16942         (strncasecmp): Conditionally define as a macro that leads to a warning.
16943
16944 2007-02-01  Karl Berry  <karl@gnu.org>
16945
16946         * config/srclist.txt (strtok_r.c): lose sync, no more strtok_r.h.
16947
16948 2007-02-01  Bruno Haible  <bruno@clisp.org>
16949
16950         * MODULES.html.sh (Unicode string functions): Update after 2007-01-27
16951         renamings.
16952
16953 2007-02-01  Eric Blake  <ebb9@byu.net>
16954
16955         * modules/regex (Depends-on): Revert dependence on mempcpy.
16956         * lib/regex_internal.h [! _LIBC && !__mempcpy]: Undo string
16957         module's definition of mempcpy.
16958         Reported by Paul Eggert.
16959
16960 2007-02-01  Paul Eggert  <eggert@cs.ucla.edu>
16961
16962         * lib/string_.h: If the gnulib module XYZ is not present, undefine
16963         the symbol XYZ before redefining it.  This fixes a problem with
16964         programs that don't use XYZ, when compiled on systems that define
16965         XYZ to something else.
16966
16967 2007-01-31  Paul Eggert  <eggert@cs.ucla.edu>
16968
16969         * lib/mkdir-p.c (make_dir_parents): Close a race condition that
16970         occurs when "mkdir -m foo" creates a setgid directory that is (1)
16971         writeable to group or other and (2) is intended to have a special
16972         mode bit that is set or cleared.  In such a case, the directory
16973         should be neither group- nor other-writeable until the special
16974         mode bits are right.
16975
16976 2007-01-31  Eric Blake  <ebb9@byu.net>
16977
16978         * modules/mountlist (Depends-on): Add strstr.
16979
16980         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): Correct m4 usage
16981         bug.
16982         * modules/string (Makefile.am): Remove redundant replacement.
16983         * modules/regex (Depends-on): Add mempcpy.
16984
16985 2007-01-31  Bruno Haible  <bruno@clisp.org>
16986
16987         New module description field 'Link'.
16988         * gnulib-tool (func_usage): Document --extract-link-directive.
16989         (sed_extract_prog): Recognize 'Link' directive.
16990         (func_get_link_directive): New function.
16991         (func_import): Show summary of link directives.
16992         Handle --extract-link-directive option.
16993         * modules/acl (Link): New section.
16994         * modules/clock-time (Link): New section.
16995         * modules/euidaccess (Link): New section.
16996         * modules/gettext (Link): New section.
16997         * modules/iconv (Link): New section.
16998         * modules/lock (Link): New section.
16999         * modules/nanosleep (Link): New section.
17000         * modules/readline (Link): New section.
17001
17002 2007-01-27  Bruno Haible  <bruno@clisp.org>
17003
17004         Enforce the use of gnulib modules for unportable <string.h> functions.
17005         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): New macro.
17006         (gl_STRING_MODULE_INDICATOR_DEFAULTS): New macro.
17007         (gl_HEADER_STRING_H_BODY): Require it.
17008         * lib/string_.h: If the gnulib module XYZ is not present, redefine
17009         the symbol XYZ to one that gives a link error.
17010         * modules/string (Makefile.am): Also substitute the GNULIB_* variables.
17011         * modules/memmem (configure.ac): Invoke gl_STRING_MODULE_INDICATOR.
17012         * modules/mempcpy (configure.ac): Likewise.
17013         * modules/memrchr (configure.ac): Likewise.
17014         * modules/stpcpy (configure.ac): Likewise.
17015         * modules/stpncpy (configure.ac): Likewise.
17016         * modules/strcase (configure.ac): Likewise.
17017         * modules/strcasestr (configure.ac): Likewise.
17018         * modules/strchrnul (configure.ac): Likewise.
17019         * modules/strdup (configure.ac): Likewise.
17020         * modules/strndup (configure.ac): Likewise.
17021         * modules/strnlen (configure.ac): Likewise.
17022         * modules/strpbrk (configure.ac): Likewise.
17023         * modules/strsep (configure.ac): Likewise.
17024         * modules/strstr (configure.ac): Likewise.
17025         * modules/strtok_r (configure.ac): Likewise.
17026
17027 2007-01-31  Jean-Louis Martineau  <martineau@zmanda.com>  (tiny change)
17028
17029         * lib/gai_strerror.c (values): Add EAI_OVERFLOW.
17030
17031 2007-01-30  Jim Meyering  <jim@meyering.net>
17032
17033         * lib/mpsort.c (mpsort): Remove spurious "return" in void function.
17034
17035 2007-01-29  Bruno Haible  <bruno@clisp.org>
17036
17037         * lib/allocsa.h: Use '#if HAVE_*' instead of '#ifdef HAVE_*'.
17038         * lib/execute.c: Likewise.
17039         * lib/pipe.c: Likewise.
17040         * lib/printf-args.h: Likewise.
17041         * lib/printf-args.c: Likewise.
17042         * lib/printf-parse.c: Likewise.
17043         * lib/vasnprintf.c: Likewise.
17044
17045 2007-01-29  Eric Blake  <ebb9@byu.net>
17046
17047         * lib/memrchr.c: Assume <string.h> unconditionally, to pull in
17048         declaration.
17049
17050 2007-01-29  Paul Eggert  <eggert@cs.ucla.edu>
17051
17052         * lib/strptime.h (strptime): Use 'restrict' for args where
17053         POSIX requires this.
17054         * lib/strptime.c (strptime): Likewise.
17055         Change license notice from LGPL to GPL, since gnulib-tool will
17056         change this as needed.
17057         Include <config.h> if _LIBC is not defined, not if HAVE_CONFIG_H is
17058         defined.
17059         Include "strptime.h" first, to check interface.
17060         Do not #undef _LIBC and _NL_CURRENT.
17061         Do not include <stdlib.h>; no longer needed.
17062         Include "time_r.h" and declare ptime_locale_status
17063         only if _LIBC is not defined.
17064         (__P): Remove unused macro.
17065         (match_string): Bring back glibc version, but use it only if _LIBC
17066         is defined.
17067         (__strptime_internal): Compile tm_gmtoff code if _LIBC is defined, too.
17068         Remove unnecessary assertion and abort() call.
17069         Use #ifdef _NL_CURRENT rather than #if 0, for benefit of glibc.
17070         * m4/strptime.m4: Fix serial number comment.
17071         (gl_FUNC_STRPTIME): Require AC_C_RESTRICT, gl_TM_GMTOFF.
17072         * modules/strptime (Files): Add m4/tm_gmtoff.m4.
17073         (Depends-on): Add time_r.
17074
17075 2007-01-29  Bruno Haible  <bruno@clisp.org>
17076
17077         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
17078         strptime.
17079         * modules/strptime (Depends-on): Add stdbool.
17080         * lib/strptime.h: Include <time.h> always. Add comments.
17081
17082 2007-01-29  Yoann Vandoorselaere  <yoann@prelude-ids.org>
17083
17084         * modules/strptime: New file.
17085         * lib/strptime.h: New file.
17086         * lib/strptime.c: New file.
17087         * m4/strptime.m4: New file.
17088
17089 2007-01-28  Paul Eggert  <eggert@cs.ucla.edu>
17090
17091         * MODULES.html.sh: New module mpsort.
17092         * lib/mpsort.c, lib/mpsort.h, m4/mpsort.m4, modules/mpsort: New files.
17093
17094         * lib/regex.h (_Restrict_): Renamed from __restrict, to avoid
17095         a circularity problem with HP-UX ia64 reported by Bob Proulx in
17096         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00394.html>.
17097         All uses changed.
17098         (_Restrict_arr_): Renamed from __restrict_arr, for similar reasons.
17099         All uses changed.
17100         * lib/regcomp.c, lib/regexec.c: Change all uses from __restrict
17101         to _Restrict_.
17102         * lib/regexec.c (regexec): Declare pmatch with _Restrict_arr_, so that
17103         the parameter matches the prototype.
17104
17105 2007-01-28  Jim Meyering  <jim@meyering.net>
17106
17107         * modules/sys_time (Makefile.am) [MOSTLYCLEANFILES]: Do use
17108         sys/time.h here, reverting that part of the previous patch:
17109         <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/8959>.
17110
17111 2007-01-28  Bruno Haible  <bruno@clisp.org>
17112
17113         * modules/sys_time (Makefile.am): Build sys/time.h only when it's the
17114         value of $(SYS_TIME_H).
17115         [MOSTLYCLEANFILES]: Now that sys/time.h is created only when needed,
17116         remove it conditionally, too. [added by Jim Meyering]
17117         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Set SYS_TIME_H.
17118         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
17119         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Set SYS_TIME_H when setting
17120         GETTIMEOFDAY_REPLACEMENT to 1.
17121
17122 2007-01-28  Bruno Haible  <bruno@clisp.org>
17123
17124         * m4/unistd_h.m4 (gl_HEADER_UNISTD_DEFAULTS): New macro.
17125         (gl_HEADER_UNISTD): Require it. Don't set UNISTD_H to empty here.
17126         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_HEADER_UNISTD_DEFAULTS.
17127         Set UNISTD_H instead of UNISTD_H2.
17128         * modules/fchdir (BUILT_SOURCES): Drop $(UNISTD_H2).
17129
17130 2007-01-28  Bruno Haible  <bruno@clisp.org>
17131
17132         * modules/mbchar (Makefile.am): Add mbchar.c to lib_SOURCES.
17133         * m4/mbchar.m4 (gl_MBCHAR): Remove AC_LIBOBJ invocation.
17134
17135 2007-01-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17136
17137         * gnulib-tool (func_emit_lib_Makefile_am, func_add_or_update)
17138         (func_create_testdir): Ensure C locale for `grep' and `tr'
17139         character ranges.
17140         (func_create_megatestdir): Avoid one `grep'.  Fix bug in
17141         ACLOCAL_AMFLAGS parsing state machine.
17142
17143 2007-01-27  Bruno Haible  <bruno@clisp.org>
17144
17145         * modules/unistr/base: Update.
17146
17147 2007-01-27  Bruno Haible  <bruno@clisp.org>
17148
17149         Rename u32-mbtouc -> u32-mbtouc-unsafe, u32-mbtouc-safe -> u32-mbtouc,
17150         u32_mbtouc -> u32_mbtouc_unsafe, u32_mbtouc_safe -> u32_mbtouc.
17151         * modules/unistr/u32-mbtouc-unsafe: Renamed from
17152         modules/unistr/u32-mbtouc.
17153         * lib/unistr/u32-mbtouc-unsafe.c: Renamed from lib/unistr/u32-mbtouc.c.
17154         * lib/unistr.h: Update.
17155         * lib/linebreak.c: Update.
17156         * modules/unistr/u32-mbtouc: Renamed from
17157         modules/unistr/u32-mbtouc-safe.
17158         * lib/unistr/u32-mbtouc.c: Renamed from lib/unistr/u32-mbtouc-safe.c.
17159         * lib/unistr.h: Update.
17160         * lib/unistr/u32-to-u8.c: Update.
17161         * lib/unistr/u32-to-u16.c: Update.
17162
17163 2007-01-27  Bruno Haible  <bruno@clisp.org>
17164
17165         Rename utf16-ucs4 -> utf16-ucs4-unsafe, utf16-ucs4-safe -> utf16-ucs4,
17166         u16_mbtouc -> u16_mbtouc_unsafe, u16_mbtouc_safe -> u16_mbtouc.
17167         * modules/utf16-ucs4-unsafe: Renamed from modules/utf16-ucs4.
17168         * lib/utf16-ucs4-unsafe.h: Renamed from lib/utf16-ucs4.h.
17169         * lib/unistr/utf16-ucs4-unsafe.c: Renamed from lib/unistr/utf16-ucs4.c.
17170         * modules/unistr/u16-mbtouc-unsafe: Renamed from
17171         modules/unistr/u16-mbtouc.
17172         * lib/unistr/u16-mbtouc-unsafe.c: Renamed from lib/unistr/u16-mbtouc.c.
17173         * lib/unistr.h: Update.
17174         * lib/linebreak.c: Update.
17175         * modules/linebreak: Update.
17176         * modules/utf16-ucs4: Renamed from modules/utf16-ucs4-safe.
17177         * lib/utf16-ucs4.h: Renamed from lib/utf16-ucs4-safe.h.
17178         * lib/unistr/utf16-ucs4.c: Renamed from lib/unistr/utf16-ucs4-safe.c.
17179         * modules/unistr/u16-mbtouc: Renamed from
17180         modules/unistr/u16-mbtouc-safe.
17181         * lib/unistr/u16-mbtouc.c: Renamed from lib/unistr/u16-mbtouc-safe.c.
17182         * lib/unistr.h: Update.
17183         * lib/unistr/u16-to-u8.c: Update.
17184         * modules/unistr/u16-to-u8: Update.
17185         * lib/unistr/u16-to-u32.c: Update.
17186         * modules/unistr/u16-to-u32: Update.
17187
17188 2007-01-27  Bruno Haible  <bruno@clisp.org>
17189
17190         Rename utf8-ucs4 -> utf8-ucs4-unsafe, utf8-ucs4-safe -> utf8-ucs4,
17191         u8_mbtouc -> u8_mbtouc_unsafe, u8_mbtouc_safe -> u8_mbtouc.
17192         * modules/utf8-ucs4-unsafe: Renamed from modules/utf8-ucs4.
17193         * lib/utf8-ucs4-unsafe.h: Renamed from lib/utf8-ucs4.h.
17194         * lib/unistr/utf8-ucs4-unsafe.c: Renamed from lib/unistr/utf8-ucs4.c.
17195         * modules/unistr/u8-mbtouc-unsafe: Renamed from
17196         modules/unistr/u8-mbtouc.
17197         * lib/unistr/u8-mbtouc-unsafe.c: Renamed from lib/unistr/u8-mbtouc.c.
17198         * lib/unistr.h: Update.
17199         * lib/striconveh.c: Update.
17200         * modules/striconveh: Update.
17201         * lib/linebreak.c: Update.
17202         * modules/linebreak: Update.
17203         * modules/utf8-ucs4: Renamed from modules/utf8-ucs4-safe.
17204         * lib/utf8-ucs4.h: Renamed from lib/utf8-ucs4-safe.h.
17205         * lib/unistr/utf8-ucs4.c: Renamed from lib/unistr/utf8-ucs4-safe.c.
17206         * modules/unistr/u8-mbtouc: Renamed from modules/unistr/u8-mbtouc-safe.
17207         * lib/unistr/u8-mbtouc.c: Renamed from lib/unistr/u8-mbtouc-safe.c.
17208         * lib/unistr.h: Update.
17209         * lib/striconveh.c: Update.
17210         * modules/striconveh: Update.
17211         * lib/unistr/u8-to-u16.c: Update.
17212         * modules/unistr/u8-to-u16: Update.
17213         * lib/unistr/u8-to-u32.c: Update.
17214         * modules/unistr/u8-to-u32: Update.
17215
17216 2007-01-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17217
17218         Sync from Libtool.
17219         * lib/argz.c: Do not include strings.h nor memory.h, include
17220         string.h unconditionally.  Patch by Simon Josefsson.
17221
17222 2007-01-27  Bruno Haible  <bruno@clisp.org>
17223
17224         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): New macro, extracted
17225         from gl_HEADER_STRING_H_BODY.
17226         (gl_HEADER_STRING_H_BODY): Require it.
17227         * m4/memmem.m4 (gl_FUNC_MEMMEM): Require gl_HEADER_STRING_H_DEFAULTS.
17228         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
17229         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
17230         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
17231         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
17232         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP): Likewise.
17233         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
17234         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
17235         * m4/strdup.m4 (gl_FUNC_STRDUP): Likewise.
17236         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
17237         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
17238         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Likewise.
17239         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
17240         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
17241         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
17242
17243 2007-01-27  Bruno Haible  <bruno@clisp.org>
17244
17245         * gnulib-tool (func_emit_lib_Makefile_am): If $for_test is true, turn
17246         check_PROGRAMS into noinst_PROGRAMS.
17247         (func_emit_tests_Makefile_am): Likewise. Also don't initialize
17248         check_PROGRAMS in this case.
17249         (func_import): Set for_test to false.
17250         (func_create_testdir): Set for_test to true.
17251
17252 2007-01-27  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
17253             Bruno Haible  <bruno@clisp.org>
17254
17255         * modules/strcasestr (Files): Remove lib/strcasestr.h.
17256         (Depends-on): Add string.
17257         (Includes): Use <string.h> instead of strcasestr.h.
17258         * modules/string (Makefile.am): Also substitute the value of
17259         REPLACE_STRCASESTR.
17260         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Don't define strcasestr here;
17261         assume strcasestr is declared in <string.h> not <strings.h>. Also
17262         set REPLACE_STRCASESTR.
17263         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Provide a default value for
17264         REPLACE_STRCASESTR.
17265         * lib/strcasestr.h: Remove file.
17266         * lib/strcasestr.c: Include <string.h> instead of strcasestr.h.
17267         * lib/string_.h (strcasestr): New declaration.
17268
17269 2007-01-27  Bruno Haible  <bruno@clisp.org>
17270
17271         * lib/string_.h: Use 'extern'.
17272
17273 2007-01-27  Jim Meyering  <jim@meyering.net>
17274
17275         * lib/regex_internal.c (re_string_reconstruct): Remove declaration
17276         of set-but-not-used local, "q".
17277
17278         * lib/mempcpy.c: Include <config.h> before <string.h>.
17279         This fixes a compilation error on HP-UX, due to the system's
17280         "restrict"-using mempcpy prototype.
17281
17282 2007-01-26  Bruno Haible  <bruno@clisp.org>
17283
17284         Small optimization.
17285         * lib/javacomp.c: Include c-strstr.h.
17286          (is_envjavac_gcj): Use c_strstr instead of strstr.
17287         * modules/javacomp (Depends-on): Add c-strstr, remove strstr.
17288
17289 2007-01-26  Bruno Haible  <bruno@clisp.org>
17290
17291         * MODULES.html.sh (Unicode string functions): Add the new modules.
17292
17293         * modules/uniconv/u32-strconv-to-locale: New file.
17294         * lib/uniconv/u32-strconv-to-locale.c: New file.
17295
17296         * modules/uniconv/u16-strconv-to-locale: New file.
17297         * lib/uniconv/u16-strconv-to-locale.c: New file.
17298
17299         * modules/uniconv/u8-strconv-to-locale: New file.
17300         * lib/uniconv/u8-strconv-to-locale.c: New file.
17301
17302         * modules/uniconv/u32-strconv-from-locale: New file.
17303         * lib/uniconv/u32-strconv-from-locale.c: New file.
17304
17305         * modules/uniconv/u16-strconv-from-locale: New file.
17306         * lib/uniconv/u16-strconv-from-locale.c: New file.
17307
17308         * modules/uniconv/u8-strconv-from-locale: New file.
17309         * lib/uniconv/u8-strconv-from-locale.c: New file.
17310
17311         * modules/uniconv/u32-strconv-to-enc: New file.
17312         * lib/uniconv/u32-strconv-to-enc.c: New file.
17313         * modules/uniconv/u32-strconv-to-enc-tests: New file.
17314         * tests/uniconv/test-u32-strconv-to-enc.c: New file.
17315
17316         * modules/uniconv/u16-strconv-to-enc: New file.
17317         * lib/uniconv/u16-strconv-to-enc.c: New file.
17318         * lib/uniconv/u-strconv-to-enc.h: New file.
17319         * modules/uniconv/u16-strconv-to-enc-tests: New file.
17320         * tests/uniconv/test-u16-strconv-to-enc.c: New file.
17321
17322         * modules/uniconv/u8-strconv-to-enc: New file.
17323         * lib/uniconv/u8-strconv-to-enc.c: New file.
17324         * modules/uniconv/u8-strconv-to-enc-tests: New file.
17325         * tests/uniconv/test-u8-strconv-to-enc.c: New file.
17326
17327         * modules/uniconv/u32-strconv-from-enc: New file.
17328         * lib/uniconv/u32-strconv-from-enc.c: New file.
17329         * modules/uniconv/u32-strconv-from-enc-tests: New file.
17330         * tests/uniconv/test-u32-strconv-from-enc.c: New file.
17331
17332         * modules/uniconv/u16-strconv-from-enc: New file.
17333         * lib/uniconv/u16-strconv-from-enc.c: New file.
17334         * modules/uniconv/u16-strconv-from-enc-tests: New file.
17335         * tests/uniconv/test-u16-strconv-from-enc.c: New file.
17336
17337         * modules/uniconv/u8-strconv-from-enc: New file.
17338         * lib/uniconv/u8-strconv-from-enc.c: New file.
17339         * lib/uniconv/u-strconv-from-enc.h: New file.
17340         * modules/uniconv/u8-strconv-from-enc-tests: New file.
17341         * tests/uniconv/test-u8-strconv-from-enc.c: New file.
17342
17343         * modules/uniconv/u32-conv-from-enc: New file.
17344         * lib/uniconv/u32-conv-from-enc.c: New file.
17345         * modules/uniconv/u32-conv-from-enc-tests: New file.
17346         * tests/uniconv/test-u32-conv-from-enc.c: New file.
17347
17348         * modules/uniconv/u16-conv-from-enc: New file.
17349         * lib/uniconv/u16-conv-from-enc.c: New file.
17350         * lib/uniconv/u-conv-from-enc.h: New file.
17351         * modules/uniconv/u16-conv-from-enc-tests: New file.
17352         * tests/uniconv/test-u16-conv-from-enc.c: New file.
17353
17354         * modules/uniconv/u8-conv-from-enc: New file.
17355         * lib/uniconv/u8-conv-from-enc.c: New file.
17356         * modules/uniconv/u8-conv-from-enc-tests: New file.
17357         * tests/uniconv/test-u8-conv-from-enc.c: New file.
17358
17359         * modules/uniconv/base: New file.
17360         * lib/uniconv.h: New file.
17361
17362 2007-01-26  Paul Eggert  <eggert@cs.ucla.edu>
17363
17364         * doc/gnulib-tool.texi (Initial import): Update to match current
17365         behavior with strdup module.
17366         * lib/.cppi-disable: Remove strcase.h, strdup.h, strndup.h, strnlen.h.
17367         * lib/memmem.h: Remove; all uses removed.  This is now done
17368         by <string.h>.
17369         * lib/mempcpy.h: Likewise.
17370         * lib/memrchr.h: Likewise.
17371         * lib/stpcpy.h: Likewise.
17372         * lib/stpncpy.h: Likewise.
17373         * lib/strcase.h: Likewise.
17374         * lib/strchrnul.h: Likewise.
17375         * lib/strdup.h: Likewise.
17376         * lib/strndup.h: Likewise.
17377         * lib/strnlen.h: Likewise.
17378         * lib/strpbrk.h: Likewise.
17379         * lib/strsep.h: Likewise.
17380         * lib/strstr.h: Likewise.
17381         * lib/strtok_r.h: Likewise.
17382         * lib/string_.h: New file.
17383         * lib/argp-namefrob.h: Don't include no-longer-existent include files.
17384         Rely on <string.h> instead.
17385         * lib/canon-host.c: Likewise.
17386         * lib/chdir-long.c: Likewise.
17387         * lib/concatpath.c: Likewise.
17388         * lib/exclude.c: Likewise.
17389         * lib/fchdir.c: Likewise.
17390         * lib/getaddrinfo.c: Likewise.
17391         * lib/getcwd.c: Likewise.
17392         * lib/getsubopt.c: Likewise.
17393         * lib/glob.c: Likewise.
17394         * lib/hard-locale.c: Likewise.
17395         * lib/iconvme.c: Likewise.
17396         * lib/javacomp.c: Likewise.
17397         * lib/mempcpy.c: Likewise.
17398         * lib/memrchr.c: Likewise.
17399         * lib/regex_internal.h: Likewise.
17400         * lib/stpncpy.c: Likewise.
17401         * lib/strcasecmp.c: Likewise.
17402         * lib/strchrnul.c: Likewise.
17403         * lib/strdup.c: Likewise.
17404         * lib/striconv.c: Likewise.
17405         * lib/striconveh.c: Likewise.
17406         * lib/striconveha.c: Likewise.
17407         * lib/strncasecmp.c: Likewise.
17408         * lib/strndup.c: Likewise.
17409         * lib/strnlen.c: Likewise.
17410         * lib/strsep.c: Likewise.
17411         * lib/strstr.c: Likewise.
17412         * lib/strtok_r.c: Likewise.
17413         * lib/userspec.c: Likewise.
17414         * lib/w32spawn.h: Likewise.
17415         * lib/xstrndup.c: Likewise.
17416         * lib/mountlist.c (strstr): Remove decl.
17417         * m4/string_h.m4: New file.
17418         * m4/memmem.m4 (gl_FUNC_MEMMEM): Set HAVE_DECL_MEMMEM if necessary.
17419         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Set HAVE_MEMPCPY if necessary.
17420         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Set HAVE_MEMRCHR
17421         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Set HAVE_STPCPY if necessary.
17422         * m4/stpncpy.m4 (gl_PREREQ_STPNCPY): Set HAVE_STPNCPY if necessary.
17423         * m4/strcase.m4 (gl_FUNC_STRCASECMP):
17424         Set REPLACE_STRCASECMP if necessary.
17425         (gl_FUNC_STRNCASECMP): Set HAVE_DECL_STRNCASECMP if necessary.
17426         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Set HAVE_STRCHRNUL if necessary.
17427         * m4/strdup.m4 (gl_FUNC_STRDUP): Set HAVE_DECL_STRDUP if necessary.
17428         * m4/strndup.m4 (gl_FUNC_STRNDUP): Set HAVE_DECL_STRNLEN and
17429         HAVE_DECL_STRDUP if necessary.
17430         (gl_PREREQ_STRNLEN): Don't bother to check for strnlen decl,
17431         since gl_FUNC_STRNDUP does that now.
17432         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Set HAVE_DECL_STRNLEN if necessary.
17433         Check for decl here...
17434         (gl_PREREQ_STRNLEN): ... not here.
17435         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Set HAVE_STRPBRK if necessary.
17436         * m4/strsep.m4 (gl_FUNC_STRSEP): Set HAVE_STRSEP if necessary.
17437         * m4/strstr.m4 (gl_FUNC_STRSTR): Set REPLACE_STRSTR if necessary.
17438         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Set HAVE_DECL_STRTOK_R if
17439         necessary.
17440         * modules/string: New file.
17441         * modules/memmem (Files): Remove special-purpose include file.
17442         (Depends-on): Add string.
17443         (Include): Include <string.h>, not the removed file.
17444         * modules/mempcpy: Likewise.
17445         * modules/memrchr: Likewise.
17446         * modules/stpcpy: Likewise.
17447         * modules/stpncpy: Likewise.
17448         * modules/strcase: Likewise.
17449         * modules/strchrnul: Likewise.
17450         * modules/strdup: Likewise.
17451         * modules/strndup: Likewise.
17452         * modules/strnlen: Likewise.
17453         * modules/strpbrk: Likewise.
17454         * modules/strsep: Likewise.
17455         * modules/strstr: Likewise.
17456         * modules/strtok_r: Likewise.
17457         * tests/test-dirname.c: Don't include "strdup.h", since
17458         <string.h> now suffices.
17459         * tests/test-memmem.c: Don't include "memmem.h", since
17460         <string.h> now suffices.
17461
17462 2007-01-25  Bruno Haible  <bruno@clisp.org>
17463
17464         * lib/striconveh.c (mem_cd_iconveh_internal): Ignore *lengthp if
17465         *resultp is 0.
17466
17467         * lib/unistr/u16-to-u8.c (u16_to_u8): Fix u8_uctomb invocation.
17468         * lib/unistr/u32-to-u8.c (u32_to_u8): Likewise.
17469         * lib/unistr/u8-to-u16.c (u8_to_u16): Fix u16_uctomb invocation.
17470         * lib/unistr/u32-to-u16.c (u32_to_u16): Likewise.
17471
17472         * modules/unistr/u8-to-u16 (Depends-on): Add missing modules.
17473         * modules/unistr/u8-to-u32 (Depends-on): Add missing modules.
17474         * modules/unistr/u16-to-u8 (Depends-on): Add missing modules.
17475         * modules/unistr/u16-to-u32 (Depends-on): Add missing modules.
17476         * modules/unistr/u32-to-u8 (Depends-on): Add missing modules.
17477         * modules/unistr/u32-to-u16 (Depends-on): Add missing modules.
17478
17479 2007-01-24  Bruno Haible  <bruno@clisp.org>
17480
17481         Don't AC_REQUIRE autoconf macros that invoke AC_LIBOBJ. See
17482         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00279.html>.
17483         * m4/argp.m4 (gl_ARGP): Invoke, don't require, gl_GETOPT_SUBSTITUTE.
17484         * m4/fts.m4 (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): Invoke, don't require,
17485         gl_FUNC_FTS_CORE.
17486         (gl_FUNC_FTS_CORE): Invoke, don't require, gl_FUNC_OPENAT.
17487         * m4/lstat.m4 (gl_FUNC_LSTAT): Invoke, don't require,
17488         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
17489         * m4/memcmp.m4 (gl_FUNC_MEMCMP): Invoke, don't require, AC_FUNC_MEMCMP.
17490         * m4/mktime.m4 (gl_FUNC_MKTIME): Invoke, don't require, AC_FUNC_MKTIME.
17491         * m4/openat.m4 (gl_FUNC_OPENAT): Invoke, don't require,
17492         gl_FUNC_FCHOWNAT.
17493         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Invoke, don't require,
17494         gl_FUNC_STRFTIME.
17495         * m4/strtod.m4 (gl_FUNC_STRTOD): Invoke, don't require, AC_FUNC_STRTOD.
17496         Reported by Ralf Wildenhues.
17497
17498 2007-01-24  Bruno Haible  <bruno@clisp.org>
17499
17500         Drop AC_REQUIRE calls that are redundant with the module dependencies.
17501         * m4/canon-host.m4 (gl_PREREQ_CANON_HOST): Don't require
17502         gl_GETADDRINFO.
17503         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Don't require AM_STDBOOL_H,
17504         gl_FUNC_MEMPCPY, gl_FUNC_OPENAT, gl_FUNC_MEMRCHR.
17505         * m4/openat.m4 (gl_PREREQ_OPENAT): Don't require gl_SAVE_CWD.
17506
17507 2007-01-24  Paul Eggert  <eggert@cs.ucla.edu>
17508
17509         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Add test for glibc bug 361.
17510         Don't use 'exit'; just return from 'main'.
17511         (_AC_LIBOBJ_FNMATCH): Check for headers and functions just once.
17512
17513         * lib/fnmatch_.h: Readjust white space and comments to match
17514         glibc, to avoid spurious diffs.
17515
17516 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
17517
17518         * lib/fnmatch_loop.c (internal_fnmatch) [!_LIBC]: #if-out the
17519         2004-12-01 change by Jakub Jelinek, since this code won't compile
17520         if !LIBC.  Problem reported by Bob Proulx.
17521
17522 2007-01-23  Bruno Haible  <bruno@clisp.org>
17523
17524         * lib/striconveh.c: Include c-strcaseeq.h.
17525         (mem_iconveh, str_iconveh): Use STRCASEEQ instead of c_strcasecmp.
17526         * modules/striconveh (Depends-on): Add c-strcaseeq.
17527
17528 2007-01-23  Bruno Haible  <bruno@clisp.org>
17529
17530         * MODULES.html.sh (String handling): Add streq, c-strcaseeq.
17531
17532         * modules/c-strcaseeq: New file.
17533         * lib/c-strcaseeq.h: New file.
17534
17535         * modules/streq: New file.
17536         * lib/streq.h: New file.
17537
17538 2007-01-23  Bruno Haible  <bruno@clisp.org>
17539
17540         * modules/striconveha-tests: New file.
17541         * tests/test-striconveha.c: New file.
17542
17543         * lib/striconveha.h: Include <stdbool.h>.
17544         (mem_iconveha, str_iconveha): Add 'transliterate' argument.
17545         * lib/striconveha.c: Include allocsa.h, strdup.h, c-strcase.h.
17546         (mem_iconveha_notranslit): Renamed from mem_iconveha.
17547         (mem_iconveha): New function.
17548         (str_iconveha_notranslit): Renamed from str_iconveha.
17549         (str_iconveha): New function.
17550         * modules/striconveha (Depends-on): Add stdbool, allocsa, strdup,
17551         c-strcase.
17552
17553 2007-01-23  Bruno Haible  <bruno@clisp.org>
17554
17555         * lib/striconveha.c (mem_iconveha): Fix endless recursion. Try all
17556         encodings without forgiving before trying any encoding with handler.
17557         (str_iconveha): Try all encodings without forgiving before trying any
17558         encoding with handler.
17559
17560 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
17561
17562         Import the following changes from libc.
17563
17564         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
17565
17566         * lib/fnmatch_loop.c: Adjust for changed secondary hash function.
17567
17568         2004-12-01  Jakub Jelinek  <jakub@redhat.com>
17569
17570         * lib/fnmatch_loop.c (internal_fnmatch): Clear is_seqval after
17571         normal_bracket label.
17572
17573         2004-09-01  Jakub Jelinek  <jakub@redhat.com>
17574
17575         [BZ #361]
17576         * lib/fnmatch_loop.c (FCT): For backslash between brackets, branch
17577         to normal_bracket after fetching the next character.
17578
17579 2007-01-22  Bruno Haible  <bruno@clisp.org>
17580
17581         * lib/striconveh.h (mem_cd_iconveh, mem_iconveh): Add 'offsets'
17582         argument.
17583         * lib/striconveh.c (iconv_carefully_1): New function.
17584         (mem_cd_iconveh_internal, mem_cd_iconveh, mem_iconveh): Add 'offsets'
17585         argument.
17586         (str_cd_iconveh): Update.
17587         * lib/striconveha.h (mem_iconveha): Add 'offsets' argument.
17588         * lib/striconveha.c (mem_iconveha): Add 'offsets' argument.
17589         * tests/test-striconveh.c (MAGIC): New macro.
17590         (new_offsets): New function.
17591         (main): Test call with and without offsets.
17592
17593 2007-01-22  Bruno Haible  <bruno@clisp.org>
17594
17595         * modules/sys_stat (Makefile.am): Use @MKDIR_P@ instead of $(MKDIR_P).
17596         * modules/sys_select (Makefile.am): Likewise.
17597         * modules/sys_socket (Makefile.am): Likewise.
17598         * modules/sys_time (Makefile.am): Likewise.
17599
17600 2007-01-22  Paul Eggert  <eggert@cs.ucla.edu>
17601
17602         * modules/gettimeofday (License): Change from GPL to LGPL, since
17603         gettimeofday is a library function.
17604
17605 2007-01-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
17606
17607         * lib/poll.c (rpl_poll): Don't check against FD_SETSIZE under Win32.
17608
17609 2007-01-21  Bruno Haible  <bruno@clisp.org>
17610
17611         * m4/gnulib-common.m4 (AC_PROG_MKDIR_P): New macro.
17612
17613 2007-01-21  Bruno Haible  <bruno@clisp.org>
17614
17615         * modules/striconveha: New file.
17616         * lib/striconveha.h: New file.
17617         * lib/striconveha.c: New file.
17618         * MODULES.html.sh (Internationalization functions): Add striconveha.
17619         * lib/striconv.c (str_iconv): Optimize the case of an empty input
17620         string.
17621         * lib/striconveh.c (mem_iconveh, str_iconveh): Likewise.
17622
17623 2007-01-21  Bruno Haible  <bruno@clisp.org>
17624
17625         * lib/striconv.c (str_iconv): Guarantee errno is set when strdup fails.
17626         * lib/striconveh.c (str_iconveh): Likewise.
17627
17628 2007-01-21  Bruno Haible  <bruno@clisp.org>
17629
17630         * lib/striconveh.h (mem_iconveh): New declaration.
17631         * lib/striconveh.c (mem_iconveh): New function.
17632         * tests/test-striconveh.c (main): Add tests for mem_iconveh.
17633
17634 2007-01-21  Bruno Haible  <bruno@clisp.org>
17635
17636         * lib/xstriconv.h (xmem_cd_iconv): Change specification.
17637
17638         * lib/striconveh.h (mem_cd_iconveh): Change specification.
17639         * lib/striconveh.c (mem_cd_iconveh): Don't free the user-supplied
17640         original result buffer.
17641         (str_cd_iconveh): Update.
17642         * tests/test-striconveh.c (main): Update.
17643
17644         * lib/striconv.h (mem_cd_iconv): Change specification.
17645         * lib/striconv.c (mem_cd_iconv): Don't free the user-supplied original
17646         result buffer.
17647         (str_cd_iconv): Update.
17648         * tests/test-striconv.c (main): Update.
17649
17650 2007-01-21  Bruno Haible  <bruno@clisp.org>
17651
17652         * gnulib-tool: Fix test whether sed is GNU sed supporting --posix.
17653
17654 2007-01-20  Jim Meyering  <jim@meyering.net>
17655
17656         * lib/userspec.c (parse_with_separator): If a user or group string
17657         starts with "+", skip the corresponding name-to-ID look-up, since
17658         such a look-up must fail: user and group names may not include "+".
17659
17660 2007-01-19  Paul Eggert  <eggert@cs.ucla.edu>
17661
17662         * lib/poll.c: Include sys/time.h and time.h unconditionally,
17663         since we now assume the sys_time module.
17664         * m4/poll.m4 (gl_PREREQ_POLL): Don't require AC_HEADER_TIME or
17665         check for sys/time.h; no longer needed.
17666         * modules/poll (Depends-on): Depend on sys_time.
17667
17668 2007-01-18  Bruno Haible  <bruno@clisp.org>
17669
17670         * m4/mktime.m4 (AC_FUNC_MKTIME): Remove test for <sys/time.h>.
17671         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
17672
17673         * m4/tempname.m4 (gl_PREREQ_TEMPNAME): Remove tests for sys/time.h and
17674         gettimeofday.
17675
17676         * tests/test-gettimeofday.c: Include <time.h>.
17677         (dummy): Remove variable.
17678
17679         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Renamed from
17680         gl_HEADER_SYS_TIME_H.
17681         (gl_HEADER_SYS_TIME_H): New macro.
17682
17683         * lib/sys_time_.h: Test GETTIMEOFDAY_REPLACEMENT instead of
17684         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
17685         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY,
17686         gl_FUNC_GETTIMEOFDAY_CLOBBER): Set GETTIMEOFDAY_REPLACEMENT instead of
17687         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
17688         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H): Initialize
17689         GETTIMEOFDAY_REPLACEMENT instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE
17690         and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
17691         * modules/sys_time (sys/time.h): Substitute GETTIMEOFDAY_REPLACEMENT
17692         instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and
17693         GETTIMEOFDAY_CLOBBERS_LOCALTIME.
17694
17695         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Undo the
17696         last change; it caused a compilation error when cross-compiling to
17697         Cygwin.
17698
17699 2007-01-18  Jim Meyering  <jim@meyering.net>
17700
17701         Use "$(MKDIR_P) sys", not race-prone "test -d sys || mkdir sys".
17702         * modules/sys_stat (Makefile.am): Use "$(MKDIR_P) sys", rather
17703         than the race-prone "test -d sys || mkdir sys".
17704         (configure.ac): Use AC_PROG_MKDIR_P.
17705         * modules/sys_select: Likewise.
17706         * modules/sys_socket: Likewise.
17707         * modules/sys_time: Likewise.
17708
17709 2007-01-18  Eric Blake  <ebb9@byu.net>
17710
17711         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Also
17712         replace gettimeofday.
17713         * lib/gettimeofday.c (rpl_gettimeofday): Declare with replacement
17714         name, to avoid infinite recursion.
17715
17716 2007-01-17  Paul Eggert  <eggert@cs.ucla.edu>
17717
17718         * MODULES.html.sh (Support for systems lacking POSIX:2001): New
17719         module sys_time.
17720         * lib/gethrxtime.c: Include <sys/time.h>, since we can no longer
17721         assume timespec.h defines struct timeval.
17722         * lib/settime.c: Likewise.
17723         * lib/utimens.c: Likewise.
17724         * lib/gettime.c (gettime): Remove test against HAVE_GETTIMEOFDAY,
17725         since we now assume the gettimeofday module.
17726         * lib/tempname.c (__gen_tempname): Likewise.
17727         * lib/gettimeofday.h: Remove.
17728         * lib/gettimeofday.c: Include <sys/time.h> instead of "gettimeofday.h".
17729         Don't include <sys/types.h> and <stdlib.h>; shouldn't be needed.
17730         Include <time.h>, for 'time()'.
17731         (localtime_buffer_addr): Also use this workaround if
17732         TZSET_CLOBBERS_LOCALTIME.  Set to a dummy static variable by default,
17733         to simplify the uses.  All uses changed.
17734         (localtime, gmtime, tzset, gettimeofday): Reformat slightly so
17735         that #undef is inside {}, and 'const' follows type name consistently.
17736         (tzset): Define replacement only if TZSET_CLOBBERS_LOCALTIME.
17737         (gettimeofday): Do not use the maximum possible value for
17738         tv->tv_usec, since that might break usages other than ls.c.
17739         Instead, we'll leave ls.c alone.  This undoes today's patch
17740         by Bruno.  Add a compile-time warning for 1s-clock resolution;
17741         we've never observed the problem but might as well keep the
17742         canary.
17743         * lib/nanosleep.c: Include timespec.h first, for interface check.
17744         * lib/nanosleep.c: Include <sys/time.h> unconditionally, since we
17745         now assume the sys_time module.
17746         * lib/tempname.c: Likewise.
17747         * lib/timespec.h: Likewise.
17748         * lib/nanosleep.c: Don't worry about TIME_WITH_SYS_TIME; no longer
17749         needed.
17750         * lib/strftime.c: Likewise.
17751         * lib/timespec.h: Likewise.
17752         * lib/posixtm.c: Include posixtm.h first, for interface check.
17753         Don't worry about TM_IN_SYS_TIME; that's wayyy obsolete.
17754         * lib/posixtm.h: Include stdbool.h and time.h, for proper interface.
17755         * lib/strftime.c: Don't include <sys/types.h>; shouldn't be needed.
17756         * lib/sys_time_.h: New file.
17757         * lib/timespec.h (struct timespec): Use long int, not long.
17758         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
17759         (gl_FUNC_GETTIMEOFDAY_CLOBBER, gl_PREREQ_GETTIMEOFDAY):
17760         Remove obsolescent call to AC_HEADER_TIME.
17761         * m4/mktime.m4 (AC_FUNC_MKTIME): Likewise.
17762         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
17763         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
17764         * m4/timespec.m4 (gl_TIMESPEC, gl_CHECK_TYPE_STRUCT_TIMESPEC):
17765         Likewise.
17766         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Likewise.
17767         * m4/utimbuf.m4 (gl_CHECK_TYPE_STRUCT_UTIMBUF): Likewise.
17768         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): Move sys/time.h tests
17769         into the sys_time module.  Check for gettimeofday just once.
17770         Prefix our variables with gl_, not with ac_ or jm_.  Tighten test
17771         for gettimeofday signature to just check the signature.  Merely
17772         compile it, since linking doesn't test signature.  Improve test for
17773         whether gettimeofday.o is actually needed.
17774         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Renamed from
17775         AC_FUNC_GETTIMEOFDAY_CLOBBER.  All uses changed.  Use
17776         AC_RUN_IFELSE rather than AC_TRY_RUN.  If clobbering, set
17777         and define GETTIMEOFDAY_CLOBBERS_LOCALTIME.
17778         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Don't define
17779         GETTIMEOFDAY_CLOBBERS_LOCALTIME; that's gl_FUNC_GETTIMEOFDAY_CLOBBER's
17780         job.  Don't define tzset; that's gl_FUNC_TZSET_CLOBBER's job.
17781         * m4/mktime.m4 (AC_FUNC_MKTIME): Just include <time.h> rather
17782         than worrying about sys/time.h.
17783         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
17784         Don't bother worrying about TIME_WITH_SYS_TIME.
17785         * m4/stat-time.m4 (gl_STAT_TIME): Likewise.
17786         * m4/posixtm.m4 (gl_POSIXTM): Remove obsolescent call to AC_STRUCT_TM.
17787         * m4/sys_time_h.m4: New file.
17788         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Require gl_HEADER_SYS_TIME_H.
17789         Don't include sys/time.h.  Return from main rather than exiting.
17790         Define TZSET_CLOBBERS_LOCALTIME, for consistency with other names;
17791         all uses changed.
17792         * modules/gethrxtime (Depends-on): Add sys_time.
17793         * modules/gettime (Depends-on): Likewise.
17794         * modules/gettimeofday (Depends-on): Likewise.
17795         * modules/nanosleep (Depends-on): Likewise.
17796         * modules/settime (Depends-on): Likewise.
17797         * modules/tempname (Depends-on): Likewise.
17798         * modules/utimens (Depends-on): Likewise.
17799         * modules/gettimeofday (Files): Remove lib/gettimeofday.h.
17800         (Include:) Change back to <sys/time.h>.
17801         (Maintainer:) Add self.
17802         * modules/sys_time: New file.
17803         * modules/tempname (Depends-on): Add gettimeofday.
17804         * tests/test-gettimeofday.c: Include <sys/time.h>
17805         rather than gettimeofday.h.
17806
17807 2007-01-17  Bruno Haible  <bruno@clisp.org>
17808
17809         * gnulib-tool (func_get_license): Revert last patch. Instead, let
17810         the license default to GPL.
17811         (func_create_testdir): Don't complain if a module is LGPL and its
17812         tests module depends on GPLed modules.
17813
17814 2007-01-17  Bruno Haible  <bruno@clisp.org>
17815
17816         * lib/gettimeofday.c (gettimeofday): Add code for the case
17817         HAVE_GETTIMEOFDAY && !GETTIMEOFDAY_CLOBBERS_LOCALTIME. Use the
17818         maximum possible value for tv->tv_usec, rather than the minimum one.
17819
17820 2005-10-08  Martin Lambers  <marlam@marlam.de>
17821 2005-10-08  Paul Eggert  <eggert@cs.ucla.edu>
17822 2007-01-16  Bruno Haible  <bruno@clisp.org>
17823
17824         * modules/gettimeofday (Files): Add lib/gettimeofday.h.
17825         (configure.ac): Remove AC_FUNC_GETTIMEOFDAY_CLOBBER. Add
17826         gl_FUNC_GETTIMEOFDAY.
17827         (Include): Add gettimeofday.h.
17828         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): New macro.
17829         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't invoke gl_PREREQ_GETTIMEOFDAY.
17830         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Define
17831         GETTIMEOFDAY_CLOBBERS_LOCALTIME. Invoke gl_PREREQ_GETTIMEOFDAY here.
17832         (gl_PREREQ_GETTIMEOFDAY): Check for <sys/timeb.h> and _ftime.
17833         * lib/gettimeofday.h: New file.
17834         * lib/gettimeofday.c: Include <sys/timeb.h>.
17835         (localtime_buffer_addr, rpl_localtime, rpl_gmtime, rpl_tzset): Define
17836         only if GETTIMEOFDAY_CLOBBERS_LOCALTIME.
17837         (rpl_gettimeofday) [!HAVE_GETTIMEOFDAY]: Use _ftime() when available;
17838         fall back on time().
17839
17840         * tests/test-gettimeofday.c: New file.
17841         * modules/gettimeofday-tests: New file.
17842
17843 2007-01-16  Eric Blake  <ebb9@byu.net>
17844
17845         * modules/fnmatch (Depends-on): Depend on wchar.
17846         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Assume <wchar.h>.
17847         * m4/fnmatch.m4: Likewise.
17848         * modules/mbchar (Makefile.am): Assume <wchar.h>.
17849         * m4/mbchar.m4: Likewise.
17850         * modules/mbswidth (Depends-on): Depend on wchar.
17851         * lib/mbswidth.c: Assume <wchar.h>.
17852         * m4/mbswidth.m4: Likewise.
17853         * modules/quotearg (Depends-on): Depend on wchar.
17854         * lib/quotearg.c: Assume <wchar.h>.
17855         * m4/quotearg.m4: Likewise.
17856         * modules/regex (Depends-on): Depend on wchar.
17857         * lib/regex_internal.h: Assume <wchar.h>.
17858         * m4/regex.m4: Likewise.
17859         * modules/stdint (Depends-on): Depend on wchar.
17860         * lib/stdint_.h [!defined WCHAR_MIN]: Assume <wchar.h>.
17861         * m4/stdint.m4: Likewise.
17862         * tests/test-stdint.c [HAVE_WINT_T]: Likewise.
17863         * modules/strftime (Depends-on): Depend on wchar.
17864         * lib/strftime.c (DO_MULTIBYTE): Assume <wchar.h>.
17865         * modules/strtol (Depends-on): Depend on wchar.
17866         * lib/strtol.c: Assume <wchar.h>.
17867         * modules/wcwidth (Depends-on): Depend on wchar.
17868         * lib/wcwidth.h: Assume <wchar.h>.
17869         * m4/wcwidth.m4: Likewise.
17870
17871 2007-01-16  Bruno Haible  <bruno@clisp.org>
17872
17873         * modules/csharpexec-script: New, created from...
17874         * modules/csharpexec: ... this.
17875
17876 2007-01-16  Paolo Bonzini  <bonzini@gnu.org>
17877
17878         * modules/javaexec-script: New, created from...
17879         * modules/javaexec: ... this.
17880
17881 2007-01-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
17882
17883         * modules/poll (Dependencies): Add sys_select.
17884
17885 2007-01-15  Jim Meyering  <jim@meyering.net>
17886
17887         * m4/readutmp.m4 (gl_READUTMP): Work around AIX 4.3 struct-
17888         redefinition bug when using both <utmp.h> and <utmpx.h> headers.
17889         * lib/readutmp.h: Likewise.  Reported by Daniel Richard G. in
17890         <http://article.gmane.org/gmane.comp.gnu.core-utils.bugs/9415>.
17891
17892 2007-01-15  Bruno Haible  <bruno@clisp.org>
17893
17894         * modules/striconveh: New file.
17895         * lib/striconveh.h: New file.
17896         * lib/striconveh.c: New file.
17897         * MODULES.html.sh (Internationalization functions): Add striconveh.
17898
17899         * modules/striconveh-tests: New file.
17900         * tests/test-striconveh.c: New file.
17901
17902 2007-01-15  Bruno Haible  <bruno@clisp.org>
17903
17904         * lib/striconv.c (str_cd_iconv): Use the first algorithm if iconv is
17905         not from GNU libiconv or GNU libc.
17906
17907 2007-01-15  Bruno Haible  <bruno@clisp.org>
17908
17909         * doc/gnulib-intro.texi (Copyright): Explain the different license
17910         terms for module descriptions, autoconf macros, tests, documentation.
17911
17912 2007-01-14  Bruno Haible  <bruno@clisp.org>
17913
17914         * modules/striconv-tests: New file.
17915         * tests/test-striconv.c: New file.
17916
17917 2007-01-14  Bruno Haible  <bruno@clisp.org>
17918
17919         * modules/iconv-tests: New file.
17920         * tests/test-iconv.c: New file.
17921
17922 2007-01-14  Bruno Haible  <bruno@clisp.org>
17923
17924         * gnulib-tool (func_get_license): For test modules, use the license of
17925         the main module.
17926
17927 2007-01-14  Bruno Haible  <bruno@clisp.org>
17928
17929         * modules/iconv (Include): Clarify that <iconv.h> can only be included
17930         if iconv is found to exist.
17931
17932 2007-01-14  Bruno Haible  <bruno@clisp.org>
17933
17934         * modules/c-ctype-tests: New file.
17935         * tests/test-c-ctype.c: New file.
17936
17937 2007-01-14  Bruno Haible  <bruno@clisp.org>
17938
17939         * modules/binary-io-tests: New file.
17940         * tests/test-binary-io.sh: New file.
17941         * tests/test-binary-io.c: New file.
17942
17943 2007-01-14  Bruno Haible  <bruno@clisp.org>
17944
17945         * modules/array-oset-tests: New file.
17946         * tests/test-array_oset.c: New file.
17947
17948 2007-01-14  Bruno Haible  <bruno@clisp.org>
17949
17950         * modules/array-list-tests: New file.
17951         * tests/test-array_list.c: New file.
17952
17953 2007-01-14  Bruno Haible  <bruno@clisp.org>
17954
17955         * gnulib-tool (func_create_testdir): Don't unnecessarily run configure
17956         and make.
17957         Reported by Simon Josefsson in
17958         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00139.html>
17959
17960 2007-01-14  Bruno Haible  <bruno@clisp.org>
17961
17962         * modules/allocsa-tests: New file.
17963         * tests/test-allocsa.c: New file.
17964
17965 2007-01-14  Bruno Haible  <bruno@clisp.org>
17966
17967         * modules/fchdir (Depends-on): Add absolute-header.
17968         * modules/unistd (Depends-on): Likewise.
17969
17970 2006-12-30  Bruno Haible  <bruno@clisp.org>
17971
17972         * modules/fchdir: New file.
17973         * modules/unistd (Files): Add lib/unistd_.h.
17974         (Makefile.am): Generate unistd.h from unistd_.h.
17975         * lib/fchdir.c: New file.
17976         * lib/dirent_.h: New file.
17977         * lib/unistd_.h: New file.
17978         * lib/fcntl_.h (open) [FCHDIR_REPLACEMENT]: New replacement.
17979         * m4/fchdir.m4: New file.
17980         * m4/unistd_h.m4 (gl_PREREQ_UNISTD): New macro.
17981         (gl_HEADER_UNISTD): Invoke it.
17982         * lib/dup-safer.c (dup_safer) [FCHDIR_REPLACEMENT]: Use the dup
17983         function.
17984         * lib/backupfile.c (opendir, closedir): Undefine.
17985         * lib/chown.c (open, close): Undefine.
17986         * lib/clean-temp.c (open, close): Undefine.
17987         * lib/copy-file.c (open, close): Undefine.
17988         * lib/execute.c (open, close): Undefine.
17989         * lib/fsusage.c (open, close): Undefine.
17990         * lib/gc-gnulib.c (open, close): Undefine.
17991         * lib/getcwd.c (opendir, closedir): Undefine.
17992         * lib/glob.c (opendir, closedir): Undefine.
17993         * lib/javacomp.c (open, close): Undefine.
17994         * lib/mountlist.c (open, close, opendir, closedir): Undefine.
17995         * lib/openat-proc.c (open, close): Undefine.
17996         * lib/pagealign_alloc.c (open, close): Undefine.
17997         * lib/pipe.c (open, close): Undefine.
17998         * lib/progreloc.c (open, close): Undefine.
17999         * lib/savedir.c (opendir, closedir): Undefine.
18000         * lib/utime.c (open, close): Undefine.
18001         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add fchdir.
18002
18003 2007-01-10  Bruno Haible  <bruno@clisp.org>
18004
18005         * lib/striconv.c (mem_cd_iconv): Align the temporary buffer.
18006
18007 2007-01-12  Eric Blake  <ebb9@byu.net>
18008
18009         Provide a robust <wchar.h>.  Further simplifications are now
18010         possible in other modules, but not included here.
18011         * modules/wchar: New module.
18012         * m4/wchar.m4: New file.
18013         * lib/wchar_.h: Likewise.
18014         * modules/mbchar (Depends-on): Depend on wchar, as the first use
18015         of the new module.
18016         * MODULES.html.sh (Extended multibyte and wide character utilities):
18017         New section.
18018
18019 2007-01-12  Paul Eggert  <eggert@cs.ucla.edu>
18020
18021         * lib/xreadlink.c (SYMLINK_MAX) [!defined SYMLINK_MAX]: Define
18022         to a reasonable default for memory allocation.
18023         (xreadlink): Don't allocate a huge buffer, to work around a buggy
18024         file system that reports garbage st_size values for symlinks.
18025         Problem reported by Liyang Hu.
18026
18027 2007-01-11  Simon Josefsson  <simon@josefsson.org>
18028
18029         * gnulib-tool (func_all_modules): Exclude all .* files (e.g.,
18030         Emacs .#* auto-save files).
18031
18032 2007-01-11  Bruno Haible  <bruno@clisp.org>
18033
18034         * gnulib-tool (func_all_modules): Exclude all files inside the CVS
18035         directory.
18036
18037 2007-01-10  Paul Eggert  <eggert@cs.ucla.edu>
18038
18039         Use @...@ consistently in lib/wctype_.h.
18040         * lib/wctype_.h [HAVE_WINT_T]: Go back to using @...@, but rely
18041         on it being set to 1 or 0.
18042         * m4/wctype.m4 (gl_WCTYPE_H): Set HAVE_WINT_T to 1 or 0, and
18043         go back to AC_SUBSTing it.
18044         * modules/wctype (Makefile.am): Undo previous change.
18045
18046 2007-01-10  Eric Blake  <ebb9@byu.net>
18047
18048         * lib/wctype_.h [HAVE_WINT_T]: Rely on AC_DEFINE.
18049         * m4/wctype.m4 (gl_WCTYPE_H): No need to AC_SUBST(HAVE_WINT_T).
18050         * modules/wctype (Makefile.am): Likewise.
18051         Reported by Chris McGuire.
18052
18053 2007-01-10  Jim Meyering  <jim@meyering.net>
18054
18055         fts.c: a small readability/maintainability improvement
18056         * lib/fts.c (fts_read): Make this code slightly more readable and
18057         maintainable by hoisting the "sp->fts_cur = p" assignments to
18058         immediately follow the statements that set P.  Derived from
18059         the patch by Miloslav Trmac in http://bugzilla.redhat.com/222089.
18060
18061 2007-01-10  Eric Blake  <ebb9@byu.net>
18062
18063         * lib/wctype_.h [HAVE_WINT_T]: Include <stddef.h> before
18064         <wchar.h>, to work around BSDI bug in BSD/OS 4.0.1.
18065         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
18066         * m4/wint_t.m4 (gt_TYPE_WINT_T): Likewise.
18067         Reported by Chris McGuire.
18068
18069 2007-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18070
18071         * gnulib-tool (func_all_modules): Use POSIX conforming escaping
18072         in sed script.
18073
18074 2007-01-09  Bruno Haible  <bruno@clisp.org>
18075
18076         * MODULES.html.sh: Accept options --cvs-urls, --git-urls.
18077         (repo_url_prefix, repo_url_suffix, repo_url_suffix_repl): New
18078         variables.
18079         (func_module): Use them.
18080
18081 2007-01-09  Bruno Haible  <bruno@clisp.org>
18082
18083         * modules/unistr/base: New file.
18084         * lib/unistr.h: New file.
18085
18086         * modules/unistr/u8-to-u16: New file.
18087         * lib/unistr/u8-to-u16.c: New file.
18088
18089         * modules/unistr/u8-to-u32: New file.
18090         * lib/unistr/u8-to-u32.c: New file.
18091
18092         * modules/unistr/u16-to-u8: New file.
18093         * lib/unistr/u16-to-u8.c: New file.
18094
18095         * modules/unistr/u16-to-u32: New file.
18096         * lib/unistr/u16-to-u32.c: New file.
18097
18098         * modules/unistr/u32-to-u8: New file.
18099         * lib/unistr/u32-to-u8.c: New file.
18100
18101         * modules/unistr/u32-to-u16: New file.
18102         * lib/unistr/u32-to-u16.c: New file.
18103
18104         * modules/unistr/u8-check: New file.
18105         * modules/unistr/u16-check: New file.
18106         * modules/unistr/u32-check: New file.
18107         * lib/unistr/u8-check.c: New file.
18108         * lib/unistr/u16-check.c: New file.
18109         * lib/unistr/u32-check.c: New file.
18110
18111         * modules/unistr/u8-chr: New file.
18112         * modules/unistr/u16-chr: New file.
18113         * modules/unistr/u32-chr: New file.
18114         * lib/unistr/u8-chr.c: New file.
18115         * lib/unistr/u16-chr.c: New file.
18116         * lib/unistr/u32-chr.c: New file.
18117
18118         * modules/unistr/u8-cmp: New file.
18119         * modules/unistr/u16-cmp: New file.
18120         * modules/unistr/u32-cmp: New file.
18121         * lib/unistr/u8-cmp.c: New file.
18122         * lib/unistr/u16-cmp.c: New file.
18123         * lib/unistr/u32-cmp.c: New file.
18124
18125         * modules/unistr/u8-cpy: New file.
18126         * modules/unistr/u16-cpy: New file.
18127         * modules/unistr/u32-cpy: New file.
18128         * lib/unistr/u8-cpy.c: New file.
18129         * lib/unistr/u16-cpy.c: New file.
18130         * lib/unistr/u32-cpy.c: New file.
18131         * lib/unistr/u-cpy.h: New file.
18132
18133         * modules/unistr/u8-cpy-alloc: New file.
18134         * modules/unistr/u16-cpy-alloc: New file.
18135         * modules/unistr/u32-cpy-alloc: New file.
18136         * lib/unistr/u8-cpy-alloc.c: New file.
18137         * lib/unistr/u16-cpy-alloc.c: New file.
18138         * lib/unistr/u32-cpy-alloc.c: New file.
18139         * lib/unistr/u-cpy-alloc.h: New file.
18140
18141         * modules/unistr/u8-endswith: New file.
18142         * modules/unistr/u16-endswith: New file.
18143         * modules/unistr/u32-endswith: New file.
18144         * lib/unistr/u8-endswith.c: New file.
18145         * lib/unistr/u16-endswith.c: New file.
18146         * lib/unistr/u32-endswith.c: New file.
18147         * lib/unistr/u-endswith.h: New file.
18148
18149         * modules/unistr/u8-mblen: New file.
18150         * modules/unistr/u16-mblen: New file.
18151         * modules/unistr/u32-mblen: New file.
18152         * lib/unistr/u8-mblen.c: New file.
18153         * lib/unistr/u16-mblen.c: New file.
18154         * lib/unistr/u32-mblen.c: New file.
18155
18156         * modules/unistr/u8-mbtouc: New file.
18157         * modules/unistr/u16-mbtouc: New file.
18158         * modules/unistr/u32-mbtouc: New file.
18159         * lib/unistr/u8-mbtouc.c: New file.
18160         * lib/unistr/u16-mbtouc.c: New file.
18161         * lib/unistr/u32-mbtouc.c: New file.
18162
18163         * modules/unistr/u8-mbtouc-safe: New file.
18164         * modules/unistr/u16-mbtouc-safe: New file.
18165         * modules/unistr/u32-mbtouc-safe: New file.
18166         * lib/unistr/u8-mbtouc-safe.c: New file.
18167         * lib/unistr/u16-mbtouc-safe.c: New file.
18168         * lib/unistr/u32-mbtouc-safe.c: New file.
18169
18170         * modules/unistr/u8-move: New file.
18171         * modules/unistr/u16-move: New file.
18172         * modules/unistr/u32-move: New file.
18173         * lib/unistr/u8-move.c: New file.
18174         * lib/unistr/u16-move.c: New file.
18175         * lib/unistr/u32-move.c: New file.
18176         * lib/unistr/u-move.h: New file.
18177
18178         * modules/unistr/u8-next: New file.
18179         * modules/unistr/u16-next: New file.
18180         * modules/unistr/u32-next: New file.
18181         * lib/unistr/u8-next.c: New file.
18182         * lib/unistr/u16-next.c: New file.
18183         * lib/unistr/u32-next.c: New file.
18184
18185         * modules/unistr/u8-prev: New file.
18186         * modules/unistr/u16-prev: New file.
18187         * modules/unistr/u32-prev: New file.
18188         * lib/unistr/u8-prev.c: New file.
18189         * lib/unistr/u16-prev.c: New file.
18190         * lib/unistr/u32-prev.c: New file.
18191
18192         * modules/unistr/u8-set: New file.
18193         * modules/unistr/u16-set: New file.
18194         * modules/unistr/u32-set: New file.
18195         * lib/unistr/u8-set.c: New file.
18196         * lib/unistr/u16-set.c: New file.
18197         * lib/unistr/u32-set.c: New file.
18198         * lib/unistr/u-set.h: New file.
18199
18200         * modules/unistr/u8-startswith: New file.
18201         * modules/unistr/u16-startswith: New file.
18202         * modules/unistr/u32-startswith: New file.
18203         * lib/unistr/u8-startswith.c: New file.
18204         * lib/unistr/u16-startswith.c: New file.
18205         * lib/unistr/u32-startswith.c: New file.
18206         * lib/unistr/u-startswith.h: New file.
18207
18208         * modules/unistr/u8-stpcpy: New file.
18209         * modules/unistr/u16-stpcpy: New file.
18210         * modules/unistr/u32-stpcpy: New file.
18211         * lib/unistr/u8-stpcpy.c: New file.
18212         * lib/unistr/u16-stpcpy.c: New file.
18213         * lib/unistr/u32-stpcpy.c: New file.
18214         * lib/unistr/u-stpcpy.h: New file.
18215
18216         * modules/unistr/u8-stpncpy: New file.
18217         * modules/unistr/u16-stpncpy: New file.
18218         * modules/unistr/u32-stpncpy: New file.
18219         * lib/unistr/u8-stpncpy.c: New file.
18220         * lib/unistr/u16-stpncpy.c: New file.
18221         * lib/unistr/u32-stpncpy.c: New file.
18222         * lib/unistr/u-stpncpy.h: New file.
18223
18224         * modules/unistr/u8-strcat: New file.
18225         * modules/unistr/u16-strcat: New file.
18226         * modules/unistr/u32-strcat: New file.
18227         * lib/unistr/u8-strcat.c: New file.
18228         * lib/unistr/u16-strcat.c: New file.
18229         * lib/unistr/u32-strcat.c: New file.
18230         * lib/unistr/u-strcat.h: New file.
18231
18232         * modules/unistr/u8-strchr: New file.
18233         * modules/unistr/u16-strchr: New file.
18234         * modules/unistr/u32-strchr: New file.
18235         * lib/unistr/u8-strchr.c: New file.
18236         * lib/unistr/u16-strchr.c: New file.
18237         * lib/unistr/u32-strchr.c: New file.
18238
18239         * modules/unistr/u8-strcmp: New file.
18240         * modules/unistr/u16-strcmp: New file.
18241         * modules/unistr/u32-strcmp: New file.
18242         * lib/unistr/u8-strcmp.c: New file.
18243         * lib/unistr/u16-strcmp.c: New file.
18244         * lib/unistr/u32-strcmp.c: New file.
18245
18246         * modules/unistr/u8-strcpy: New file.
18247         * modules/unistr/u16-strcpy: New file.
18248         * modules/unistr/u32-strcpy: New file.
18249         * lib/unistr/u8-strcpy.c: New file.
18250         * lib/unistr/u16-strcpy.c: New file.
18251         * lib/unistr/u32-strcpy.c: New file.
18252         * lib/unistr/u-strcpy.h: New file.
18253
18254         * modules/unistr/u8-strcspn: New file.
18255         * modules/unistr/u16-strcspn: New file.
18256         * modules/unistr/u32-strcspn: New file.
18257         * lib/unistr/u8-strcspn.c: New file.
18258         * lib/unistr/u16-strcspn.c: New file.
18259         * lib/unistr/u32-strcspn.c: New file.
18260         * lib/unistr/u-strcspn.h: New file.
18261
18262         * modules/unistr/u8-strdup: New file.
18263         * modules/unistr/u16-strdup: New file.
18264         * modules/unistr/u32-strdup: New file.
18265         * lib/unistr/u8-strdup.c: New file.
18266         * lib/unistr/u16-strdup.c: New file.
18267         * lib/unistr/u32-strdup.c: New file.
18268         * lib/unistr/u-strdup.h: New file.
18269
18270         * modules/unistr/u8-strlen: New file.
18271         * modules/unistr/u16-strlen: New file.
18272         * modules/unistr/u32-strlen: New file.
18273         * lib/unistr/u8-strlen.c: New file.
18274         * lib/unistr/u16-strlen.c: New file.
18275         * lib/unistr/u32-strlen.c: New file.
18276         * lib/unistr/u-strlen.h: New file.
18277
18278         * modules/unistr/u8-strmblen: New file.
18279         * modules/unistr/u16-strmblen: New file.
18280         * modules/unistr/u32-strmblen: New file.
18281         * lib/unistr/u8-strmblen.c: New file.
18282         * lib/unistr/u16-strmblen.c: New file.
18283         * lib/unistr/u32-strmblen.c: New file.
18284
18285         * modules/unistr/u8-strmbtouc: New file.
18286         * modules/unistr/u16-strmbtouc: New file.
18287         * modules/unistr/u32-strmbtouc: New file.
18288         * lib/unistr/u8-strmbtouc.c: New file.
18289         * lib/unistr/u16-strmbtouc.c: New file.
18290         * lib/unistr/u32-strmbtouc.c: New file.
18291
18292         * modules/unistr/u8-strncat: New file.
18293         * modules/unistr/u16-strncat: New file.
18294         * modules/unistr/u32-strncat: New file.
18295         * lib/unistr/u8-strncat.c: New file.
18296         * lib/unistr/u16-strncat.c: New file.
18297         * lib/unistr/u32-strncat.c: New file.
18298         * lib/unistr/u-strncat.h: New file.
18299
18300         * modules/unistr/u8-strncmp: New file.
18301         * modules/unistr/u16-strncmp: New file.
18302         * modules/unistr/u32-strncmp: New file.
18303         * lib/unistr/u8-strncmp.c: New file.
18304         * lib/unistr/u16-strncmp.c: New file.
18305         * lib/unistr/u32-strncmp.c: New file.
18306
18307         * modules/unistr/u8-strncpy: New file.
18308         * modules/unistr/u16-strncpy: New file.
18309         * modules/unistr/u32-strncpy: New file.
18310         * lib/unistr/u8-strncpy.c: New file.
18311         * lib/unistr/u16-strncpy.c: New file.
18312         * lib/unistr/u32-strncpy.c: New file.
18313         * lib/unistr/u-strncpy.h: New file.
18314
18315         * modules/unistr/u8-strnlen: New file.
18316         * modules/unistr/u16-strnlen: New file.
18317         * modules/unistr/u32-strnlen: New file.
18318         * lib/unistr/u8-strnlen.c: New file.
18319         * lib/unistr/u16-strnlen.c: New file.
18320         * lib/unistr/u32-strnlen.c: New file.
18321         * lib/unistr/u-strnlen.h: New file.
18322
18323         * modules/unistr/u8-strpbrk: New file.
18324         * modules/unistr/u16-strpbrk: New file.
18325         * modules/unistr/u32-strpbrk: New file.
18326         * lib/unistr/u8-strpbrk.c: New file.
18327         * lib/unistr/u16-strpbrk.c: New file.
18328         * lib/unistr/u32-strpbrk.c: New file.
18329         * lib/unistr/u-strpbrk.h: New file.
18330
18331         * modules/unistr/u8-strrchr: New file.
18332         * modules/unistr/u16-strrchr: New file.
18333         * modules/unistr/u32-strrchr: New file.
18334         * lib/unistr/u8-strrchr.c: New file.
18335         * lib/unistr/u16-strrchr.c: New file.
18336         * lib/unistr/u32-strrchr.c: New file.
18337
18338         * modules/unistr/u8-strspn: New file.
18339         * modules/unistr/u16-strspn: New file.
18340         * modules/unistr/u32-strspn: New file.
18341         * lib/unistr/u8-strspn.c: New file.
18342         * lib/unistr/u16-strspn.c: New file.
18343         * lib/unistr/u32-strspn.c: New file.
18344         * lib/unistr/u-strspn.h: New file.
18345
18346         * modules/unistr/u8-strstr: New file.
18347         * modules/unistr/u16-strstr: New file.
18348         * modules/unistr/u32-strstr: New file.
18349         * lib/unistr/u8-strstr.c: New file.
18350         * lib/unistr/u16-strstr.c: New file.
18351         * lib/unistr/u32-strstr.c: New file.
18352         * lib/unistr/u-strstr.h: New file.
18353
18354         * modules/unistr/u8-strtok: New file.
18355         * modules/unistr/u16-strtok: New file.
18356         * modules/unistr/u32-strtok: New file.
18357         * lib/unistr/u8-strtok.c: New file.
18358         * lib/unistr/u16-strtok.c: New file.
18359         * lib/unistr/u32-strtok.c: New file.
18360         * lib/unistr/u-strtok.h: New file.
18361
18362         * modules/unistr/u8-uctomb: New file.
18363         * modules/unistr/u16-uctomb: New file.
18364         * modules/unistr/u32-uctomb: New file.
18365         * lib/unistr/u8-uctomb.c: New file.
18366         * lib/unistr/u16-uctomb.c: New file.
18367         * lib/unistr/u32-uctomb.c: New file.
18368
18369         * MODULES.html.sh (Unicode string functions): Add the new modules.
18370
18371 2007-01-08  Bruno Haible  <bruno@clisp.org>
18372
18373         * gnulib-tool (func_all_modules): Use find, not ls, to traverse the
18374         modules directory. Filter out CVS, ChangeLog, COPYING, README also from
18375         subdirectories.
18376
18377 2007-01-08  Karl Berry  <karl@gnu.org>
18378
18379         * doc/error.texi: mention that main() fns must set program_name
18380         when progname is used.
18381
18382 2007-01-08  Paul Eggert  <eggert@cs.ucla.edu>
18383
18384         * m4/wctype.m4 (gl_WCTYPE_H): Compute ABSOLUTE_WCTYPE_H even if
18385         WCTYPE_H is empty, for the benefit of builds from non-distclean
18386         directories.  Problem reported by Eric Blake in
18387         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00157.html>.
18388
18389 2007-01-08  Bruno Haible  <bruno@clisp.org>
18390
18391         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Remove
18392         PROVIDE_CANONICALIZE_FILENAME_MODE macro definition.
18393         * lib/canonicalize.h: Test GNULIB_CANONICALIZE instead of
18394         PROVIDE_CANONICALIZE_FILENAME_MODE.
18395         * modules/canonicalize (configure.ac): Use gl_MODULE_INDICATOR.
18396
18397 2007-01-08  Bruno Haible  <bruno@clisp.org>
18398
18399         * m4/fts.m4 (gl_FUNC_FTS_LGPL): Remove _LGPL_PACKAGE macro definition.
18400         * lib/fts_.h (_LGPL_PACKAGE): Remove macro.
18401         Use !GNULIB_FTS instead of _LGPL_PACKAGE.
18402         * lib/fts.c: Likewise.
18403         * modules/fts (configure.ac): Use gl_MODULE_INDICATOR.
18404
18405 2006-12-25  Bruno Haible  <bruno@clisp.org>
18406
18407         * modules/utf8-ucs4-safe: New file.
18408         * lib/utf8-ucs4-safe.h: New file.
18409         * lib/unistr/utf8-ucs4-safe.c: New file.
18410
18411         * modules/utf16-ucs4-safe: New file.
18412         * lib/utf16-ucs4-safe.h: New file.
18413         * lib/unistr/utf16-ucs4-safe.c: New file.
18414
18415         * MODULES.html.sh (Unicode string functions): Add the new modules.
18416
18417 2007-01-08  Bruno Haible  <bruno@clisp.org>
18418
18419         * modules/utf8-ucs4 (Files, lib_SOURCES): Add unistr/utf8-ucs4.c.
18420         (Depends-on): Add unitypes.
18421         * lib/utf8-ucs4.h: Add double-inclusion guard. Include unitypes.h.
18422         (u8_mbtouc_aux): Move out to separate file.
18423         (u8_mbtouc): Use ucs4_t, uint8_t types.
18424         * lib/unistr/utf8-ucs4.c: New file.
18425
18426         * modules/utf16-ucs4 (Files, lib_SOURCES): Add unistr/utf16-ucs4.c.
18427         (Depends-on): Add unitypes.
18428         * lib/utf16-ucs4.h: Add double-inclusion guard. Include unitypes.h.
18429         (u16_mbtouc_aux): Move out to separate file.
18430         (u16_mbtouc): Use ucs4_t, uint16_t types.
18431         * lib/unistr/utf16-ucs4.c: New file.
18432
18433         * modules/ucs4-utf8 (Files, lib_SOURCES): Add unistr/ucs4-utf8.c.
18434         (Depends-on): Add unitypes.
18435         * lib/ucs4-utf8.h: Add double-inclusion guard. Include unitypes.h.
18436         (u8_uctomb_aux): Move out to separate file.
18437         (u8_uctomb): Use ucs4_t, uint8_t types.
18438         * lib/unistr/ucs4-utf8.c: New file.
18439
18440         * modules/ucs4-utf16 (Files, lib_SOURCES): Add unistr/ucs4-utf16.c.
18441         (Depends-on): Add unitypes.
18442         * lib/ucs4-utf16.h: Add double-inclusion guard. Include unitypes.h.
18443         (u16_uctomb_aux): Move out to separate file.
18444         (u16_uctomb): Use ucs4_t, uint16_t types.
18445         * lib/unistr/ucs4-utf16.c: New file.
18446
18447 2006-12-25  Bruno Haible  <bruno@clisp.org>
18448
18449         * modules/unitypes: New file.
18450         * lib/unitypes.h: New file.
18451         * MODULES.html.sh (func_all_modules): New section "Unicode string
18452         functions". Move ucs4-utf8, ucs4-utf16, utf8-ucs4, utf16-ucs4 to
18453         this section. Add unitypes.
18454
18455 2007-01-08  Bruno Haible  <bruno@clisp.org>
18456
18457         Avoid variable names that conflict with those from libtool.
18458         * m4/lib-link.m4 (AC_LIB_RPATH, AC_LIB_LINKFLAGS_BODY,
18459         AC_LIB_LINKFLAGS_FROM_LIBS): Rename libext to acl_libext,
18460         shlibext to acl_shlibext, libname_spec to acl_libname_spec,
18461         library_names_spec to acl_library_names_spec, hardcode_* to
18462         acl_hardcode_*.
18463         Reported by Ralf Wildenhues.
18464
18465 2007-01-08  Bruno Haible  <bruno@clisp.org>
18466
18467         * m4/gc-arcfour.m4 (gl_GC_ARCFOUR): Remove GC_USE_ARCFOUR macro
18468         definition.
18469         * m4/gc-arctwo.m4 (gl_GC_ARCTWO): Remove GC_USE_ARCTWO macro
18470         definition.
18471         * m4/gc-des.m4 (gl_GC_DES): Remove GC_USE_DES macro definition.
18472         * m4/gc-hmac-md5.m4 (gl_GC_HMAC_MD5): Remove GC_USE_HMAC_MD5 macro
18473         definition.
18474         * m4/gc-hmac-sha1.m4 (gl_GC_HMAC_SHA1): Remove GC_USE_HMAC_SHA1 macro
18475         definition.
18476         * m4/gc-md2.m4 (gl_GC_MD2): Remove GC_USE_MD2 macro definition.
18477         * m4/gc-md4.m4 (gl_GC_MD4): Remove GC_USE_MD4 macro definition.
18478         * m4/gc-md5.m4 (gl_GC_MD5): Remove GC_USE_MD5 macro definition.
18479         * m4/gc-random.m4 (gl_GC_RANDOM): Remove GC_USE_RANDOM macro
18480         definition.
18481         * m4/gc-rijndael.m4 (gl_GC_RIJNDAEL): Remove GC_USE_RIJNDAEL macro
18482         definition.
18483         * m4/gc-sha1.m4 (gl_GC_SHA1): Remove GC_USE_SHA1 macro definition.
18484         * lib/gc-gnulib.c: Use GNULIB_GC_<algorithm> instead of
18485         GC_USE_<algorithm>.
18486         * lib/gc-libgcrypt.c: Likewise.
18487         * modules/gc-arcfour (configure.ac): Use gl_MODULE_INDICATOR.
18488         * modules/gc-arctwo (configure.ac): Likewise.
18489         * modules/gc-des (configure.ac): Likewise.
18490         * modules/gc-hmac-md5 (configure.ac): Likewise.
18491         * modules/gc-hmac-sha1 (configure.ac): Likewise.
18492         * modules/gc-md2 (configure.ac): Likewise.
18493         * modules/gc-md4 (configure.ac): Likewise.
18494         * modules/gc-md5 (configure.ac): Likewise.
18495         * modules/gc-random (configure.ac): Likewise.
18496         * modules/gc-rijndael (configure.ac): Likewise.
18497         * modules/gc-sha1 (configure.ac): Likewise.
18498
18499 2007-01-08  Bruno Haible  <bruno@clisp.org>
18500
18501         * m4/close-stream.m4 (gl_CLOSE_STREAM): Remove GNULIB_CLOSE_STREAM
18502         macro definition.
18503         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Remove GNULIB_FCNTL_SAFER macro
18504         definition.
18505         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Remove GNULIB_FOPEN_SAFER macro
18506         definition.
18507         * modules/close-stream (configure.ac): Invoke gl_MODULE_INDICATOR.
18508         * modules/fcntl-safer (configure.ac): Likewise.
18509         * modules/fopen-safer (configure.ac): Likewise.
18510         * modules/fwriteerror (configure.ac): Likewise. Remove explicit
18511         GNULIB_FWRITEERROR macro definition.
18512
18513 2007-01-08  Bruno Haible  <bruno@clisp.org>
18514
18515         * m4/gnulib-common.m4: New file.
18516         * gnulib-tool (func_get_autoconf_snippet): Undo last change.
18517         (func_get_filelist): Add m4/gnulib-common.m4.
18518
18519 2007-01-08  Bruno Haible  <bruno@clisp.org>
18520
18521         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Simplify the sorting
18522         command.
18523
18524 2007-01-08  Jim Meyering  <jim@meyering.net>
18525
18526         Use a more robust test for a "can't happen" condition.
18527         * lib/fts.c (fts_read): Revert the change of 2006-11-22, since it
18528         narrowed the st_size value.  Presuming the "can't happen" condition
18529         is true, that narrowing could conceivably convert an invalid st_size
18530         value into a valid one.  Instead, use a change based on Matthew
18531         Woehlke's original patch.
18532
18533         Slight readability improvement: use an assert-like macro
18534         in place of literal "abort ()" uses.
18535         * lib/fts.c (fts_assert): Define.
18536         (fts_set_stat_required, cwd_advance_fd, fts_read, fd_ring_check):
18537         Use this macro instead of a bare 'abort'.
18538
18539 2007-01-05  Paul Eggert  <eggert@cs.ucla.edu>
18540
18541         Don't worry about using IRIX 5.3's wctype.h broken definitions;
18542         simply work around them.
18543         * lib/wctype_.h: Remove test for HAVE_WCTYPE_CTMP_BUG.
18544         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph, iswlower):
18545         (iswprint, iswpunct, iswspace, iswupper, iswxdigit): Undef before
18546         declaring.
18547         Don't bother to define as macros, since the standard doesn't require it.
18548         * m4/wctype.m4 (WCTYPE_H, ABSOLUTE_WCTYPE_H): Simplify, since we no
18549         longer worry about IRIX 5.3.
18550         (HAVE_WCTYPE_CTMP_BUG): Remove.
18551
18552 2007-01-04  Paul Eggert  <eggert@cs.ucla.edu>
18553
18554         * lib/wctype_.h (_ctmp_) [HAVE_WCTYPE_CTMP_BUG]: Now of type wchar_t,
18555         not wint_t.  Also, include <ctype.h>, to fix another IRIX bug.
18556         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
18557         Problems reported by Georg Schwarz for IRIX 5.3.
18558
18559         * gnulib-tool (autoconf_minversion): Take the maximum version number
18560         found, not the minimum.  Problem reported by James Youngman.
18561
18562 2007-01-03  Karl Berry  <karl@gnu.org>
18563
18564         * doc/error.texi: new file, explaining interaction with progname.
18565         * doc/gnulib.texi: include it.  Update copyright.
18566
18567 2007-01-03  Simon Josefsson  <simon@josefsson.org>
18568
18569         * gnulib-tool (func_create_testdir): Run AC_CANONICAL_BUILD and
18570         AC_CANONICAL_HOST, to improve autobuild outputs.
18571
18572 2007-01-03  Paolo Bonzini  <bonzini@gnu.org>
18573             Yoann Vandoorselaere <yoann.v@prelude-ids.com>
18574
18575         * lib/poll.c (poll): Use recv on Mac OS X to distinguish connected
18576         sockets, server sockets, and other file descriptors.  Count errors
18577         to compute the return value.  Reorder the code a bit to be easier
18578         to follow.  Don't set event bits that were not requested (except
18579         POLLERR and POLLHUP).
18580
18581 2007-01-01  Bruno Haible  <bruno@clisp.org>
18582
18583         * modules/lchmod (Include): Require lchmod.h, not lchown.h.
18584
18585 2007-01-03  Jim Meyering  <jim@meyering.net>
18586
18587         * modules/fts-lgpl (Depends-on): Add i-ring.  Reported by Bruno Haible.
18588
18589 2007-01-02  Bruno Haible  <bruno@clisp.org>
18590
18591         * modules/settime (Include): Require timespec.h.
18592         * modules/nanosleep (Include): Likewise.
18593
18594 2007-01-01  Bruno Haible  <bruno@clisp.org>
18595
18596         * gnulib-tool (func_emit_copyright_notice): Bump year.
18597         (func_get_autoconf_snippet): Emit a GNULIB_<modulename> macro.
18598
18599 2007-01-01  Bruno Haible  <bruno@clisp.org>
18600
18601         Improve support for OpenBSD.
18602         * build-aux/config.rpath (libname_spec): Export.
18603         (library_names_spec): New variable. Export.
18604         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Extract libname_spec and
18605         library_names_spec from the config.rpath output. Locate shared library
18606         through the name pattern in library_names_spec.
18607
18608 2007-01-01  Eric Blake  <ebb9@byu.net>
18609
18610         * lib/version-etc.c (COPYRIGHT_YEAR): Bump for new year.
18611
18612 2006-12-30  Paul Eggert  <eggert@cs.ucla.edu>
18613
18614         * gnulib-tool (SORT): Remove, since we no longer assume GNU sort.
18615         Rewrite so as not to assume GNU sort or "tail -1".  Also, don't
18616         assume the C locale, and avoid an "eval" that could cause trouble.
18617         Problem with SORT reported by Bob Proulx.
18618
18619         * lib/getpagesize.h (getpagesize) [defined __amigaos4__]:
18620         Define.  Trivial patch from Henning Nielsen Lund, originally
18621         sent to bug-grep@gnu.org today.
18622
18623 2006-12-29  Paul Eggert  <eggert@cs.ucla.edu>
18624
18625         * lib/acl.h: Include sys/types.h and sys/stat.h, for mode_t and
18626         struct stat.  Problem reported by Henning Nielsen Lund.
18627         * lib/acl.c: Include acl.h first, to check interface.  Don't
18628         bother to include sys/types.h and sys/stat.h again.
18629
18630 2006-12-28  Paul Eggert  <eggert@cs.ucla.edu>
18631
18632         Import the following change from libc; problem reported by
18633         Sven Verdoolaege.
18634
18635         2005-10-13  Ulrich Drepper  <drepper@redhat.com>
18636
18637         [BZ #1373]
18638         * lib/argp.h: Remove __NTH for __argp_usage inline function.
18639
18640 2006-12-28  Jim Meyering  <jim@meyering.net>
18641
18642         * build-aux/announce-gen: Do not assume that the package
18643         builds any of tar.gz, tar.bz2, and .xdelta files.
18644         Suggestion from Simon Josefsson.
18645
18646 2006-12-28  Simon Josefsson  <simon@josefsson.org>
18647
18648         * modules/announce-gen: New file.
18649
18650 2006-12-27  Paul Eggert  <eggert@cs.ucla.edu>
18651
18652         * lib/mbchar.h: Just include <wctype.h>; the wctype module
18653         handles its gotchas now.
18654         * lib/mbswidth.c: Likewise.
18655         * lib/wcwidth.h: Likewise.
18656         * m4/mbchar.m4 (gl_MBCHAR): Don't bother checking for wctype.h
18657         and iswcntrl; the wctype module does this stuff now.
18658         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
18659         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
18660         * modules/mbchar (Depends-on): Add wctype.
18661         * modules/mbswidth (Depends-on): Likewise.
18662         * modules/wcwidth (Depends-on): Likewise.
18663
18664 2006-12-27  Eric Blake  <ebb9@byu.net>
18665
18666         * lib/fnmatch.c: Reinstate inclusion of <wchar.h>, since this
18667         module uses more than what <wctype.h> is required to provide.
18668
18669 2006-12-26  Eric Blake  <ebb9@byu.net>
18670
18671         * gnulib-tool (sed_extract_prog): Avoid space-tab.
18672
18673 2006-12-26  Eric Blake  <ebb9@byu.net>
18674
18675         * modules/absolute-header: New module.
18676         * modules/fcntl (Depends-on): Depend on it.
18677         * modules/inttypes (Depends-on): Likewise.
18678         * modules/stdint (Depends-on): Likewise.
18679         * modules/sys_stat (Depends-on): Likewise.
18680         * modules/wctype (Depends-on): Likewise.
18681         * MODULES.html.sh (Support for building libraries and
18682         executables): Document it.
18683
18684 2006-12-25  Paul Eggert  <eggert@cs.ucla.edu>
18685
18686         * gnulib-tool (SED): Remove, undoing previous change.
18687         The problem was that it broke coreutils on Solaris, because
18688         "sed --posix" leaked into a makefile.
18689         (sed): New alias, if 'alias' and GNU sed.
18690
18691 2006-12-24  Jim Meyering  <jim@meyering.net>
18692
18693         Work around an fchownat bug in glibc-2.4:
18694         http://lists.ubuntu.com/archives/ubuntu-users/2006-September/093218.html
18695         This bug would cause "chown -RP ... DIR" to follow symlinks in DIR,
18696         in spite of the -P option.
18697         * m4/openat.m4 (gl_FUNC_FCHOWNAT, gl_FUNC_FCHOWNAT_DEREF_BUG):
18698         New macros.
18699         (gl_PREREQ_OPENAT): Require gl_FUNC_FCHOWNAT.
18700         * modules/openat (Files): Add lib/fchownat.c.
18701         * lib/openat.c (fchownat): Don't define here.  Move to...
18702         * lib/fchownat.c: ...this new file.
18703
18704 2006-12-23  Paul Eggert  <eggert@cs.ucla.edu>
18705
18706         Fix bug reported by Bruno Haible in
18707         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00228.html>
18708         where quotearg.c didn't compile on Mac OS X 10.2 because it
18709         lacks <wchar.h> and wint_t.
18710         * lib/wctype_.h (__wctype_wint_t): New type.
18711         Include <stdio.h>, <time.h>, <wchar.h> only if HAVE_WINT_T.
18712         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph):
18713         (iswlower, iswprint, iswpunct, iswspace, iswupper, ixwxdigit):
18714         Arg is now of type __wctype_wint_t, not wint_t.
18715         * m4/wctype.m4 (gl_WCTYPE_H): Require gt_TYPE_WINT_T, and
18716         substitute HAVE_WINT_T.
18717         * modules/wctype (Files): Add m4/wint_t.m4.
18718         (wctype.h): Substitute HAVE_WINT_T.
18719
18720 2006-12-23  Bruno Haible  <bruno@clisp.org>
18721
18722         * lib/safe-read.h [C++]: Wrap declarations in extern "C".
18723
18724 2006-12-23  Bruno Haible  <bruno@clisp.org>
18725
18726         * lib/canonicalize-lgpl.c (__realpath): Test HAVE_READLINK instead of
18727         S_ISLNK.
18728         Needed because gnulib's sys/stat.h replacement defines S_ISLNK on
18729         mingw.
18730
18731 2006-12-22  Bruno Haible  <bruno@clisp.org>
18732
18733         * lib/copy-file.c: Include acl.h.
18734         (copy_file_preserving) [USE_ACL]: Use copy_acl instead of chmod.
18735         Close the file descriptors only after being done with copy_acl.
18736         * modules/copy-file (Depends-on): Add acl.
18737
18738 2006-12-22  Bruno Haible  <bruno@clisp.org>
18739
18740         * gnulib-tool (SED): New variable.
18741         Use $SED instead of sed everywhere.
18742
18743 2006-12-22  Bruno Haible  <bruno@clisp.org>
18744
18745         * modules/no-c++: New file.
18746         * m4/no-c++.m4: New file.
18747         * MODULES.html.sh (Support for building libraries and executables):
18748         Add no-c++.
18749
18750 2006-12-22  Paul Eggert  <eggert@cs.ucla.edu>
18751
18752         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
18753         Include <limits.h>, and use its INT_MAX to rewrite the
18754         j loop so that it does not overflow 'int'.  Problem reported by
18755         Ralf Wildenhues in
18756         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00084.html>.
18757         Play it safe by shifting left by 1 rather than multiplying by 2,
18758         as GCC is less likely to optimize this away when the value
18759         is signed (when it assumes overflow leads to undefined behavior).
18760         Also, don't assume time_t uses two's complement.
18761
18762 2006-12-21  Paul Eggert  <eggert@cs.ucla.edu>
18763
18764         * MODULES.html.sh: New module wctype.
18765         * lib/wctype_.h, m4/wctype.m4, modules/wctype: New files.
18766         * lib/fnmatch.c: Don't bother to include <wchar.h> before
18767         <wctype.h>, since the new wctype module should fix this.
18768         * lib/quotearg.c: Include <wctype.h> unconditionally, since
18769         the wctype module should arrange for it.
18770         * lib/regex_internal.h: Likewise.
18771         * m4/quotearg.m4 (gl_QUOTEARG): Don't check for wctype.h or iswprint,
18772         since the wctype module should handle this now.
18773         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for wctype.h.
18774         * modules/fnmatch (Depends-on): Add wctype.
18775         * modules/quotearg (Depends-on): Likewise.
18776         * modules/regex (Depends-on): Likewise.
18777
18778 2006-12-19  Bruno Haible  <bruno@clisp.org>
18779
18780         * lib/strdup.h [C++]: Wrap definitions in extern "C".
18781         Suggested by Lorenzo Bettini <bettini@dsi.unifi.it>.
18782
18783 2006-12-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18784
18785         * modules/savewd (Depends-on): Fix dependency on fcntl.
18786
18787 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
18788
18789         * m4/stdint.m4 (gl_STDINT_H): Set STDINT_H to empty if stdint.h
18790         conforms to C99, rather than relying on the user's environment
18791         setting of STDINT_H.
18792
18793 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
18794         and Eric Blake  <ebb9@byu.net>
18795
18796         * lib/dirname.h (DOUBLE_SLASH_IS_DISTINCT_ROOT): Default to 0, not 1.
18797         This is more consistent with the other defines here.
18798         * m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT):
18799         Port to z/OS.  Problem reported by Paul Gilmartin.
18800         Change local vars to use gl_ prefix rather than ac_.
18801         Don't define DOUBLE_SLASH_IS_DISTINCT_ROOT to 0, for consistency
18802         with other defines.
18803         * modules/double-slash-root: New module.
18804         * modules/dirname (Files): Remove m4/double-slash-root.m4.
18805         (Depends-on): Add double-slash-root.
18806         * MODULES.html.sh (File system functions): Mention new module.
18807
18808 2006-12-14  Paul Eggert  <eggert@cs.ucla.edu>
18809
18810         * lib/yesno.c [!ENABLE_NLS]: Don't include getline.h.
18811         (yesno) [!ENABLE_NLS]: Don't invoke getline or rpmatch.
18812         This is for the benefit of gzip, which doesn't do i18n.
18813
18814 2006-12-12  Jim Meyering  <jim@meyering.net>
18815
18816         * m4/acl.m4 (gl_ACL_GET_FILE): Fix logic error.
18817         Reported by Andreas Schwab <schwab@suse.de>.
18818
18819 2006-12-12  Bruno Haible  <bruno@clisp.org>
18820
18821         Merge these changes.
18822         2006-09-05  Bruno Haible  <bruno@clisp.org>
18823         * lib/iconvme.c (iconv_string): No need to save and restore errno when
18824         iconv_alloc succeeded.
18825         (iconv_alloc): Don't assume that malloc() or realloc(), when failing,
18826         sets errno to ENOMEM. (malloc on GNU/kFreeBSD doesn't.) No need to
18827         test for " && dest " at the end - dest is always != NULL there. Call
18828         iconv with 4xNULL arguments initially, to reset the state. Call iconv
18829         with 2xNULL arguments, also to flush the state storage. Handle the
18830         IRIX iconv behaviour. Realloc the final result, to throw away unused
18831         memory.
18832
18833 2006-12-11  Paul Eggert  <eggert@cs.ucla.edu>
18834
18835         * m4/openat.m4 (gl_FUNC_OPENAT): Don't compile mkdirat
18836         and fchmodat unconditionally, since glibc 2.4 has them.
18837         Problem reported by Arkadiusz Miskiewicz.
18838
18839 2006-12-10  Bruno Haible  <bruno@clisp.org>
18840
18841         * gnulib-tool (func_import): Show the include files only for those
18842         modules that are copied and specified.
18843         Reported by Karl Berry.
18844
18845 2006-12-08  Jim Meyering  <jim@meyering.net>
18846
18847         * build-aux/announce-gen ($VERSION): Don't use of $Revision...$.
18848         Instead, use Emacs' time-stamp write hook.  Note that the time is UTC.
18849
18850         * build-aux/announce-gen: Add two new options, both optional:
18851         --bootstrap-tools=TOOL_LIST
18852               a comma-separated list of tools, e.g.,
18853               autoconf,automake,bison,gnulib
18854         --gnulib-snapshot-date=DATE
18855               if gnulib is in the bootstrap tool list,
18856               then report this as the snapshot date.
18857               If not specified, use the current date/time.
18858               If you specify a date here, be sure it's UTC.
18859
18860 2006-12-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18861
18862         * tests/test-argp-2.sh: Fix test to match actual output.
18863         (func_compare): Fix sed script to be portable.
18864
18865 2006-12-05  Paul Eggert  <eggert@cs.ucla.edu>
18866
18867         * lib/utimens.c (futimens) [HAVE_BUGGY_NFS_TIME_STAMPS]: Add a
18868         workaround for this case.  It is not autoconfigured now; offhand
18869         it's hard to see how to autoconfigure it.
18870
18871 2006-12-03  Paul Eggert  <eggert@cs.ucla.edu>
18872
18873         * lib/mkdir-p.c (make_dir_parents): Fix race condition when making
18874         a directory that is about to be chowned.  Such a directory's
18875         initial file permissions should permit the owner only and this
18876         should not be changed until after the chown, since the group and
18877         other bits would be incorrect if they granted permission before
18878         the chown.
18879
18880         Fix porting problem for iswctype reported by Georg Schwarz in:
18881         http://lists.gnu.org/archive/html/bug-coreutils/2006-12/msg00017.html
18882         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Require HAVE_ISWCTYPE, too.
18883         * lib/regex_internal.h (RE_ENABLE_I18N): Likewise.
18884         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for iswctype, too.
18885         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
18886
18887 2006-12-03  Jim Meyering  <jim@meyering.net>
18888
18889         * lib/fts.c (fts_load): Don't set sp->fts_dev here, since
18890         p->fts_statp may not yet be defined.
18891         (fts_read): Instead, set it in the caller, once p->fts_statp is
18892         sure to be defined, and corresponds to a top-level directory.
18893         This bug made du -x fail.  Here's the coreutils test case:
18894         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commit;h=ba45154d8e9f
18895         Reported by Mike Frysinger.
18896
18897 2006-12-01  Jim Meyering  <jim@meyering.net>
18898
18899         * modules/savewd (Depends-on): Add fcntl_h to avoid self-test
18900         build failure due to missing definition of HAVE_WORKING_O_NOFOLLOW.
18901         Reported by Simon Josefsson.
18902
18903 2006-11-30  Jim Meyering  <jim@meyering.net>
18904
18905         * m4/warning.m4: Use the all-permissive copyright notice
18906         recommended by RMS (rather than LGPL).
18907         * m4/vararrays.m4: Likewise.
18908         * m4/flexmember.m4: Likewise.
18909
18910 2006-11-29  Bruno Haible  <bruno@clisp.org>
18911
18912         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
18913         noinst_LIBRARIES. Augment noinst_LIBRARIES and noinst_LTLIBRARIES
18914         using +=.
18915         Reported by Simon Josefsson <simon@josefsson.org>.
18916
18917 2006-11-28  James Youngman <jay@gnu.org>
18918
18919         * README: Advise users that they might find the bug-gnulib@gnu.org
18920         and autotools-announce@gnu.org mailing lists useful.
18921
18922 2006-11-28  Bruno Haible  <bruno@clisp.org>
18923
18924         * m4/ptrdiff_max.m4: Remove file.
18925
18926 2006-11-21  Bruno Haible  <bruno@clisp.org>
18927
18928         * m4/eoverflow.m4 (gl_EOVERFLOW): Use AC_COMPUTE_INT instead of
18929         _AC_COMPUTE_INT.
18930         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
18931         * m4/ptrdiff_max.m4 (gl_PTRDIFF_MAX): Use AC_COMPUTE_INT instead of
18932         _AC_COMPUTE_INT.
18933         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
18934         * m4/size_max.m4 (gl_SIZE_MAX): Use AC_COMPUTE_INT instead of
18935         _AC_COMPUTE_INT.
18936         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
18937
18938 2006-11-28  Jim Meyering  <jim@meyering.net>
18939
18940         * lib/regcomp.c (parse_branch): Rename local, exp->expr, to avoid
18941         warning from "gcc -Wshadow" about shadowing the builtin.
18942
18943 2006-11-27  Bruno Haible  <bruno@clisp.org>
18944
18945         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): Use AC_COMPUTE_INT instead of
18946         _AC_COMPUTE_INT.
18947         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
18948
18949 2006-11-27  Bruno Haible  <bruno@clisp.org>
18950             Paul Eggert  <eggert@cs.ucla.edu>
18951
18952         * lib/regex.h (__restrict_arr): Redo logic of #if, for clarity.
18953
18954 2006-11-26  Bruno Haible  <bruno@clisp.org>
18955
18956         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
18957         noinst_LTLIBRARIES.
18958
18959 2006-11-27  Paul Eggert  <eggert@cs.ucla.edu>
18960             Bruno Haible  <bruno@clisp.org>
18961
18962         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to 0
18963         if compiling with "gcc -ansi".
18964
18965 2006-11-26  Paul Eggert  <eggert@cs.ucla.edu>
18966
18967         Fix some incompatibilities with gcc -ansi -pedantic.
18968         * lib/regex.h (__restrict_arr): Don't use the [restrict] syntax
18969         if compiling pedantically with GCC, unless it's C99 or later.
18970         Don't trust sys/cdefs.h's definition of __restrict_arr, either, as
18971         it mishandles gcc -ansi -pedantic as well.
18972         * lib/regex_internal.h (re_token_t): Don't use enum bitfields
18973         if gcc -pedantic.
18974         * lib/regexec.c (check_node_accept_bytes): Don't use auto
18975         initializers for struct if -pedantic, unless it's C99 or later.
18976
18977 2006-11-25  Nix  <nix@esperi.org.uk>  (tiny change)
18978
18979         * m4/fcntl_h.m4 (gl_FCNTL_H): Test the atime, not the mtime.
18980         Don't close an fd more than once. Identical atimes indicate
18981         success, not failure.
18982
18983 2006-11-22  Robinson Mittmann <bob@hoplon.com>  (tiny change)
18984
18985         * lib/sincosl.c (kernel_sinl): Fix typo in threshold.
18986
18987 2006-11-23  Jim Meyering  <jim@meyering.net>
18988
18989         * build-aux/announce-gen: New file.  From coreutils.
18990
18991 2006-11-22  Jim Meyering  <jim@meyering.net>
18992
18993         Work around a compile-time error from the HP-UX 11.00 /bin/cc.
18994         * lib/fts.c (enum Fts_stat): Give this previously-anon enum a name.
18995         (fts_read): Use a temporary to narrow the overused st_size member
18996         before using it in a switch statement.  Reported by Matthew Woehlke.
18997
18998         * m4/clock_time.m4 (gl_CLOCK_TIME): Quote AC_SUBST argument.
18999         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Likewise.
19000
19001 2006-11-20  Bruno Haible  <bruno@clisp.org>
19002
19003         * gettext.m4 (AM_GNU_GETTEXT): Revert 2005-07-28 patch: Use
19004         changequote instead of pairs of brackets.
19005         Reported by Andreas Schwab <schwab@suse.de>.
19006
19007 2006-11-21  Jim Meyering  <jim@meyering.net>
19008
19009         * lib/fts.c (fts_safe_changedir): Move a declaration "up",
19010         so as to remain compatible with older compilers.
19011         Patch from Michael Deutschmann.
19012
19013 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
19014
19015         * MODULES.html.sh (File system functions): Add openat.
19016
19017         * lib/openat.h (rpl_fstatat): New macro, if
19018         [HAVE_OPENAT && ! LSTAT_FOLLOWS_SLASHED_SYMLINK.
19019         (fstatat): Define to rpl_fstatat under the same conditions,
19020         unless COMPILING_FSTATAT.
19021         * m4/openat.m4 (gl_FUNC_OPENAT): Compile fstatat.c too, if fstatat
19022         seems to have the bug.
19023         * lib/fstatat.c: New file.
19024         * modules/openat (Files): Add it.
19025
19026 2006-11-20  Bruno Haible  <bruno@clisp.org>
19027
19028         * Makefile: New file.
19029
19030 2006-11-20  Jim Meyering  <jim@meyering.net>
19031
19032         The beginnings of syntax-related checks for gnulib.
19033         * lib/Makefile: New file.
19034         * lib/t-idcache: New script.  Ensure that the two halves of
19035         idcache.c stay in sync.
19036
19037         * lib/idcache.c: Adjust comments in user- and group- portions to
19038         be more accurate, and to be consistent with one another.
19039
19040 2006-11-20  Jim Meyering  <jim@meyering.net>
19041
19042         * lib/idcache.c: Restore most of the 2006-11-06 patch, so as to
19043         continue using the flexible array member (thus, this module performs
19044         half as many malloc calls), with the addition that...
19045         (getgroup, getuser): Consistently record a non-match via an empty
19046         "name" string, and map an empty string match to a NULL return value.
19047         * modules/idcache (Depends-on): Re-add flexmember.
19048
19049         * lib/idcache.c (getuser): Remove all uses of the register keyword.
19050         (getuidbyname, getgroup, getgidbyname): Likewise.
19051
19052         Use cleaner syntax: NULL rather than 0.
19053         * lib/idcache.c (getuidbyname, getgidbyname): Return NULL, not 0.
19054
19055 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
19056
19057         * lib/idcache.c: Undo most recent patch, dated 2006-11-06.
19058         It mishandled the case where the group was missing.
19059         Problem reported by Greg Schafer.
19060         * modules/idcache: Likewise.
19061
19062 2006-11-18  Jim Meyering  <jim@meyering.net>
19063
19064         * check-module (%exempt_header): Add exception for some
19065         conditionally-included headers.
19066
19067         * modules/i-ring (Depends-on): Add verify.
19068         (License): Change to LGPL.
19069
19070 2006-11-16  Paul Eggert  <eggert@cs.ucla.edu>
19071
19072         * modules/getaddinfo (Depends-on): Remove inttostr; add snprintf.
19073         * lib/getaddrinfo.c: Include snprintf.h rather than intprops.h
19074         and inttostr.h.  Use snprintf rather than uinttostr, so that
19075         LGPLed code doesn't depend on GPLed.
19076
19077 2006-11-17  Paul Eggert  <eggert@cs.ucla.edu>
19078
19079         * modules/inline (License): Change from GPL to LGPL.
19080
19081 2006-11-17  Jim Meyering  <jim@meyering.net>
19082
19083         * modules/d-type (License): Switch to LGPL.
19084
19085 2006-11-15  Bruno Haible  <bruno@clisp.org>
19086
19087         * m4/alloca.m4 (gl_FUNC_ALLOCA): Fix the AC_CACHE_CHECK message.
19088
19089 2006-11-15  Eric Blake  <ebb9@byu.net>
19090
19091         * m4/allocsa.m4 (gl_ALLOCSA): Don't invoke macro already picked up by
19092         the module dependency.
19093
19094 2006-11-15  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
19095             Bruno Haible  <bruno@clisp.org>
19096
19097         * gnulib-tool (func_create_testdir): Add license consistency check.
19098
19099 2006-11-15  Eric Blake  <ebb9@byu.net>
19100
19101         * m4/alloca.m4 (gl_FUNC_ALLOCA): Use AC_CACHE_CHECK to avoid a
19102         random "(cached)" in configure output.
19103
19104 2006-11-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19105
19106         * m4/inttypes.m4 (gl_INTTYPES_H): Use AC_CACHE_CHECK so that the
19107         test for conforming inttypes.h is both announced and cached.
19108
19109         * MODULES.html.sh (seen_modules, seen_files): New variables.
19110         (func_module): Rewrite to use a few less gnulib-tool and sed
19111         invocations.  Avoid a couple of quadratic algorithms for ...
19112         (missed_modules, missed_files): ... these, with ...
19113         (func_append, func_tmpdir): ... these new functions, from
19114         gnulib-tool.  Analogously, install traps for cleanup.
19115
19116         * tests/test-gc.c (main): Remove unused variables.
19117         * tests/test-read-file.c: Include stdlib.h, for 'free'.
19118
19119 2006-11-14  Paul Eggert  <eggert@cs.ucla.edu>
19120
19121         * modules/inttostr (License): Change to LGPL.
19122
19123 2006-11-14  Eric Blake  <ebb9@byu.net>
19124
19125         * modules/tempname (License): Change to LGPL.
19126
19127 2006-11-14  Eric Blake  <ebb9@byu.net>
19128
19129         * doc/functions.texi (Function Portability): *printf functions on
19130         Cygwin now understand all POSIX size specifiers.
19131
19132 2006-11-14  Bruno Haible  <bruno@clisp.org>
19133
19134         * modules/c-ctype (License): Change to LGPL.
19135
19136 2006-11-12  Bruno Haible  <bruno@clisp.org>
19137
19138         * m4/lib-link.m4 (AC_LIB_LINKFLAGS, AC_LIB_HAVE_LINKFLAGS,
19139         AC_LIB_LINKFLAGS_BODY): Also set a LIB${NAME}_PREFIX variable. Needed
19140         for GNOME libraries, for which the include files are installed in
19141         subdirectories of $prefix/include.
19142
19143 2006-11-12  Bruno Haible  <bruno@clisp.org>
19144
19145         * m4/lib-link.m4: Require at least autoconf-2.54.
19146         (AC_LIB_LINKFLAGS_BODY) [autoconf < 2.61]: Turn dots into the library
19147         name to underscores for the --with option.
19148
19149 2006-11-13  Bruno Haible  <bruno@clisp.org>
19150
19151         * gnulib-tool (func_create_testdir): Set gl_source_base correctly in
19152         the tests directory.
19153         Reported by Ralf Wildenhues.
19154
19155 2006-11-13  Bruno Haible  <bruno@clisp.org>
19156
19157         * gnulib-tool (func_emit_initmacro_start): Also override AC_LIBSOURCES.
19158         (func_emit_initmacro_end): Undo the override here.
19159         (func_emit_initmacro_done): Emit a definition for gl_LIBSOURCES.
19160         Works around the famous automake error in coreutils.
19161
19162 2006-11-13  Eric Blake  <ebb9@byu.net>
19163
19164         * lib/gl_anytree_oset.h (gl_tree_search_atleast): Return the
19165         element, not its node.
19166
19167 2006-11-12  Bruno Haible  <bruno@clisp.org>
19168
19169         * gnulib-tool (func_emit_lib_Makefile_am): Replace occurrences of
19170         '$(top_srcdir)/build-aux/', taking into account the real auxdir.
19171
19172 2006-11-12  Bruno Haible  <bruno@clisp.org>
19173
19174         * gnulib-tool: New option --local-symlink.
19175         (func_usage): Document it.
19176         (lsymbolic): New variable.
19177         (func_import, func_create_testdir): If --symlink was not specified,
19178         test whether --local-symlink was specified and the file comes from
19179         the local_gnulib_dir.
19180
19181 2006-11-12  Bruno Haible  <bruno@clisp.org>
19182
19183         * gnulib-tool (func_ln): New function.
19184         (func_ln_if_changed, func_create_testdir): Use it instead of "ln -s".
19185
19186 2006-11-12  Bruno Haible  <bruno@clisp.org>
19187
19188         Finish support for source files in subdirectories.
19189         * gnulib-tool (func_emit_lib_Makefile_am): If some of the source files
19190         are in subdirectories, set uses_subdirs and add 'subdir-objects' to
19191         AUTOMAKE_OPTIONS.
19192         (func_import, func_create_testdir): Invoke AM_PROG_CC_C_O in this case.
19193
19194 2006-11-12  Bruno Haible  <bruno@clisp.org>
19195
19196         * gnulib-tool (func_get_automake_snippet): Synthesize also an
19197         EXTRA_lib_SOURCES augmentation.
19198         (func_emit_lib_Makefile_am): Initialize EXTRA_lib..._SOURCES to empty.
19199
19200 2006-11-12  Jim Meyering  <jim@meyering.net>
19201
19202         Make fts (in FTS_CWDFD mode) more efficient by caching a few open
19203         file descriptors.  This also averts a failure on systems with
19204         native openat support when a traversed directory lacks "x" access.
19205         * lib/fts_.h: Include "i-ring.h"
19206         (struct FTS) [fts_fd_ring]: New member.
19207         * lib/fts.c (RESTORE_INITIAL_CWD): Also call fd_ring_clear.
19208         (FCHDIR): Add parentheses.
19209         (fd_ring_check, fd_ring_print) [!FTS_DEBUG]: Define away.
19210         (cwd_advance_fd): Add a 3rd parameter.  Adjust all callers.
19211         When descending, rather than simply closing the previous
19212         fts_cwd_fd value, push that file descriptor onto the ring.
19213         (same_fd, fd_ring_print, fd_ring_check) [FTS_DEBUG]: New functions.
19214         (fts_open): Initialize the new fd_ring member.
19215         (fts_close): Clear the ring.
19216         (fts_safe_changedir): When possible, use our new fd_ring to skip
19217         the diropen and fstat and dev/ino comparison that would normally
19218         accompany a virtual `chdir ("..")'.
19219
19220         * modules/fts (Depends-on): Add i-ring.
19221         * modules/i-ring: New module.
19222         * lib/i-ring.c, lib/i-ring.h, lib/i-ring-test.c: New files.
19223         * m4/i-ring.m4: New file.
19224
19225 2006-11-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19226
19227         * gnulib-tool (func_create_testdir): Fix replacement of
19228         `build-aux' in configure.ac.  Run autotools in gltests
19229         subdirectory.
19230         (func_create_testdir, func_create_megatestdir, test): There is
19231         no need for '--force' in most autotool invocations in a new
19232         tree.  Actually fail the whole test if any of the tools, or the
19233         configure or make stages fail.
19234
19235         Sync from Automake.
19236         * build-aux/gnupload: Revert last change.  Add pointer to upload
19237         instructions of the GNU Maintenance Instructions.
19238         Suggestion by Karl Berry.
19239
19240 2006-11-10  Jim Meyering  <jim@meyering.net>
19241
19242         * lib/fts.c [FTS_DEBUG]: Don't try to print a pointer via %s.
19243
19244 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
19245
19246         * lib/gettext.h (dgettext, dcgettext, ngettext) [! ENABLE_NLS]:
19247         (dngettext, dcngettext, bindtextdomain) [! ENABLE_NLS]:
19248         (bind_textdomain_codeset) [! ENABLE_NLS]:
19249         Evaluate all the arguments.  That way, callers get compatible behavior
19250         if the arguments have side effects.  Also, it avoids some GCC
19251         diagnostics in some cases; Joel E. Denny reported problems when Bison
19252         was configured with --enable-gcc-warnigs.
19253
19254 2006-11-10  Jim Meyering  <jim@meyering.net>
19255
19256         * m4/inline.m4 (gl_INLINE): Check with the compiler, not cpp, so that
19257         relevant options in CFLAGS (like -O, -fno-inline) are taken into
19258         account.
19259
19260 2006-11-10  Jim Meyering  <jim@meyering.net>
19261
19262         * modules/inline: New file/module.
19263         * modules/xalloc (Files): Remove m4/inline.m4.
19264         (Depends-on): Add inline, instead.
19265         * modules/oset: Likewise.
19266         * modules/list: Likewise.
19267
19268 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
19269
19270         * lib/stdint_.h (uintmax_t): Fix typo: int64_t -> uint64_t.
19271         Problem reported by Matthew Woehlke.
19272
19273 2006-11-09  Bruno Haible  <bruno@clisp.org>
19274
19275         * lib/tempname.c (gen_tempname): Remove variant that invokes
19276         __gen_tempname.
19277         * m4/tempname.m4 (gl_FUNC_GEN_TEMPNAME): Don't test for
19278         __gen_tempname.
19279
19280 2006-11-08  Bruno Haible  <bruno@clisp.org>
19281
19282         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Set ac_cv_type_long_long_int
19283         to 'yes' instead of 'cross-compiling'.
19284
19285 2006-11-08  Paul Eggert  <eggert@cs.ucla.edu>
19286
19287         * lib/quotearg.h (quotearg_free): New decl.
19288         * lib/quotearg.c (quotearg_free): New function.
19289         (slot0, nslots, slotvec0, slotvec):
19290         Now file-scope so that quotearg_free can get at them.
19291
19292 2006-11-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19293
19294         Sync from Automake.
19295         * build-aux/gnupload: Add missing 'gnu' to example URL.
19296         Report by Karl Berry.
19297
19298 2006-11-08  Bruno Haible  <bruno@clisp.org>
19299
19300         * m4/inline.m4 (gl_INLINE): Also test __NO_INLINE__.
19301         Suggested by Paul Eggert.
19302
19303 2006-11-08  Jim Meyering  <jim@meyering.net>
19304
19305         * lib/fts.c [!_LGPL_PACKAGE]: Don't include fcntl--.h twice.
19306         It's already included if !_LIBC.
19307         (fts_safe_changedir): Add a comment.
19308
19309 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
19310
19311         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Detect bug in
19312         Tandem NonStop Kernel (OSS) cc -O circa 2004, reported by
19313         Matthew Woehlke.
19314
19315         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Move
19316         definitions up, to avoid colliding with change below.
19317         (static_inline) [HAVE_INLINE]: New macro.
19318         (xnmalloc, xnrealloc, x2nrealloc, xcharalloc):
19319         Provide extern decls when !HAVE_INLINE.  Do not define unless
19320         static_inline is defined, either by us or by xmalloc.c.  Use
19321         static_inline rather than static inline.
19322         (XCALLOC): Optimize sizeof(T) = 1 case.
19323         * lib/xmalloc.c (static_inline) [!HAVE_INLINE]: New macro.
19324
19325 2006-11-07  Bruno Haible  <bruno@clisp.org>
19326
19327         * lib/xalloc.h (XNMALLOC): Restore optimization of sizeof(T) = 1 case.
19328         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require gl_INLINE instead of
19329         AC_C_INLINE.
19330         * modules/xalloc (Files): Add m4/inline.m4.
19331
19332 2006-11-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19333
19334         * README: Fix typo.
19335         * doc/gnulib.texi (Miscellaneous Notes): Likewise, rename...
19336         (Miscellanous Notes): ...from this.
19337
19338 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
19339
19340         * m4/flexmember.m4 (AC_C_FLEXIBLE_ARRAY_MEMBER):
19341         Mention that offsetof should be used instead of sizeof.
19342         From Bruno Haible.
19343
19344 2006-11-07  Bruno Haible  <bruno@clisp.org>
19345
19346         * lib/w32spawn.h (prepare_spawn): Use XNMALLOC instead of xmalloc.
19347
19348 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
19349
19350         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
19351         * lib/gl_anyavltree_list2.h (create_subtree_with_contents):
19352         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
19353         (gl_tree_add_before, gl_tree_add_after):
19354         Use XMALLOC instead of xmalloc, and XCALLOC instead of xzalloc.
19355         * lib/gl_anyhash_list2.h (hash_resize): Likewise.
19356         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
19357         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before):
19358         (gl_linked_add_after, gl_linked_add_at): Likewise.
19359         * lib/gl_anyrbtree_list2.h (create_subtree_with_contents):
19360         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
19361         (gl_tree_add_before, gl_tree_add_after): Likewise.
19362         * lib/gl_anytree_list2.h (gl_tree_create_empty): Likewise.
19363         * lib/gl_anytree_oset.h (gl_tree_create_empty): Likewise.
19364         * lib/gl_anytreehash_list1.h (add_to_bucket): Likewise.
19365
19366 2006-11-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19367
19368         * lib/gl_oset.h: Use C comment style, not C++ comment style.
19369
19370 2006-11-06  Bruno Haible  <bruno@clisp.org>
19371
19372         * m4/inline.m4: New file.
19373         * m4/gl_list.m4 (gl_LIST): Require gl_INLINE.
19374         * modules/list (Files): Add m4/inline.m4.
19375         * modules/oset (Files): Likewise.
19376
19377 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
19378
19379         * lib/idcache.c: Include <stddef.h>, for offsetof.
19380         (struct userid.name): Change from char * to a flexible array member.
19381         All uses changed.
19382         * modules/idcache (Depends-on): Add flexmember.
19383
19384         * MODULES.html.sh (Core language properties): New module flexmember.
19385         * modules/flexmember, m4/flexmember.m4: New files.
19386
19387         * lib/xalloc.h (xnmalloc, xnrealloc, x2nrealloc): Now static
19388         inline functions that are identical with the old xnmalloc_inline,
19389         xnrealloc_inline, x2nrealloc_inline of lib/xmalloc.c.  This is so
19390         that we can avoid some unnecessary integer multiplications and
19391         divisions in the common case where the element size is known at
19392         compile time.
19393         (XNMALLOC) [HAVE_INLINE]: Remove special case, which is no longer
19394         needed.
19395         (xnboundedmalloc): Remove.
19396         (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Use lower-case letters for
19397         arguments, for consistency with rest of this header.
19398         (xcharalloc): Rewrite using XNMALLOC.
19399         * lib/xmalloc.c (xnmalloc_inline, xnmalloc, xnrealloc_inline):
19400         (xnrealloc, x2nrealloc_inline, x2nrealloc): Remove.  The *_inline
19401         versions have been moved to lib/xalloc.h and renamed to be the
19402         non-*_inline versions.
19403         (xmalloc, xrealloc): Implement without reference to the xnmalloc
19404         and xnrealloc functions, since those functions are now inline and
19405         now call us.
19406         (x2realloc): Invoke x2realloc, not x2realloc_inline, to accommodate
19407         renaming described above.
19408         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Remove AC_C_INLINE since
19409         xmalloc.c no longer uses inline directly.  gl_PREREQ_XALLOC now
19410         captures the dependency in AC_C_INLINE.
19411
19412         New module canonicalize-lgpl, proposed by Charles Wilson in
19413         <http://lists.gnu.org/archive/html/bug-gnulib/2006-11/msg00020.html>
19414         with a few small changes afterwards.
19415         * MODULES.html.sh (File system functions): New module
19416         canonicalize-lgpl.
19417         * lib/canonicalize.h: Add comments for canonicalize_filename_mode
19418         and canonicalize_file_name.
19419         * lib/canonicalize-lgpl.c, m4/canonicalize-lgpl.m4:
19420         * modules/canonicalize-lgpl: New files.
19421
19422 2006-11-05  Bruno Haible  <bruno@clisp.org>
19423
19424         * gnulib-tool (func_import, func_create_testdir): Create directories
19425         also for files in subdirectories of lib/.
19426
19427 2006-11-05  Bruno Haible  <bruno@clisp.org>
19428
19429         * lib/gl_array_list.c (gl_array_iterator_next): Make pointer decrement
19430         ANSI C compliant.
19431
19432 2006-11-03  Bruno Haible  <bruno@clisp.org>
19433
19434         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
19435         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require AC_C_INLINE.
19436         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): New macros.
19437         (xnboundedmalloc): New inline function.
19438         * lib/classpath.c (new_classpath): Use XNMALLOC instead of xmalloc.
19439         * lib/clean-temp.c (create_temp_dir): Use XNMALLOC, XMALLOC instead of
19440         xmalloc.
19441         * lib/concatpath.c (concatenated_pathname): Use XNMALLOC instead of
19442         xmalloc.
19443         * lib/fatal-signal.c (at_fatal_signal): Use XNMALLOC instead of xmalloc.
19444         * lib/findprog.c (find_in_path): Use XNMALLOC instead of xmalloc.
19445         * lib/gl_array_list.c (gl_array_create_empty): Use XMALLOC instead of
19446         xmalloc.
19447         (gl_array_create): Use XNMALLOC, XMALLOC instead of xmalloc.
19448         * lib/gl_array_oset.c (gl_array_create_empty): Use XNMALLOC instead of
19449         xmalloc.
19450         * lib/gl_avltree_oset.c (gl_tree_add_first, gl_tree_add_before,
19451         gl_tree_add_after): Use XMALLOC instead of xmalloc.
19452         * lib/gl_carray_list.c (gl_carray_create_empty): Use XMALLOC instead of
19453         xmalloc.
19454         (gl_carray_create): Use XNMALLOC, XMALLOC instead of xmalloc.
19455         * lib/gl_rbtree_oset.c (gl_tree_add_first, gl_tree_add_before,
19456         gl_tree_add_after): Use XMALLOC instead of xmalloc.
19457         * lib/gl_sublist.c (gl_sublist_create): Use XMALLOC instead of xmalloc.
19458         * lib/pagealign_alloc.c (new_memnode): Use XMALLOC instead of xmalloc.
19459         * lib/sh-quote.c (shell_quote_argv): Use XNMALLOC instead of xmalloc.
19460         * lib/xvasprintf.c (xstrcat): Use XNMALLOC instead of xmalloc.
19461
19462 2006-11-03  Bruno Haible  <bruno@clisp.org>
19463
19464         * lib/c-ctype.h [C++]: Define functions without name mangling.
19465         * lib/fwriteerror.h [C++]: Likewise.
19466         * lib/gcd.h [C++]: Likewise.
19467         * lib/linebreak.h [C++]: Likewise.
19468
19469 2006-11-03  Paul Eggert  <eggert@cs.ucla.edu>
19470
19471         * lib/canonicalize.h: (canonicalize_mode_t, CAN_EXISTING):
19472         (CAN_ALL_BUT_LAST, CAN_MISSING, canonicalize_filename_mode):
19473         Define only if PROVIDE_CANONICALIZE_FILENAME_MODE is defined.
19474         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
19475         Check for functions and headers just once.
19476         Check for declaration of canonicalize_file_name.
19477         Define PROVIDE_CANONICALIZE_FILENAME_MODE.
19478
19479 2006-11-02  Charles Wilson  <cygwin@cwilson.fastmail.fm>
19480
19481         * gnulib-tool (func_import): Fix typo in actioncmd.
19482
19483 2006-11-02  Bruno Haible  <bruno@clisp.org>
19484
19485         * gnulib-tool (func_get_automake_snippet): Interpret a backslash-
19486         newline sequence in the Makefile.am snippet as a space, like "make"
19487         does.
19488         Reported by Roger Persson <perrog@gmail.com>.
19489
19490 2006-11-01  Bruno Haible  <bruno@clisp.org>
19491
19492         * m4/strcase.m4 (gl_FUNC_STRNCASECMP): Check whether strncasecmp is
19493         already declared in <string.h>.
19494         * lib/strcase.h (strncasecmp): Don't declare it if yes.
19495
19496 2006-11-01  Bruno Haible  <bruno@clisp.org>
19497
19498         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Don't define strcasecmp here.
19499         * lib/strcase.h: Include <string.h>.
19500         (strcasecmp): Define to rpl_strcasecmp here.
19501
19502 2006-11-01  Bruno Haible  <bruno@clisp.org>
19503
19504         * lib/printf-parse.c (PRINTF_PARSE): Cast malloc/realloc results.
19505
19506 2006-11-01  Eric Blake  <ebb9@byu.net>
19507
19508         * lib/mkstemp-safer.c (mkstemp_safer): Allow C++ compilation.
19509
19510         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Allow C++ configuration.
19511
19512 2006-10-29  Bruno Haible  <bruno@clisp.org>
19513
19514         Make it compile in C++ mode.
19515         * lib/full-write.c (full_rw): Add a cast.
19516
19517 2006-11-01  Bruno Haible  <bruno@clisp.org>
19518
19519         * gnulib-tool (func_get_automake_snippet): Change sed_combine_lines to
19520         be POSIX compliant.
19521         Reported by Roger Persson <perrog@gmail.com>.
19522
19523 2006-11-01  Eric Blake  <ebb9@byu.net>
19524
19525         * lib/getopt_.h: Fix comments.
19526
19527 2006-10-31  Eric Blake  <ebb9@byu.net>
19528
19529         * modules/tmpdir (Depends-on): Add sys_stat.
19530         * modules/mkdtemp (Depends-on): Add tempname, drop unistd.
19531         * lib/mkdtemp.c (gen_tempname): Remove; tempname covers this.
19532         * lib/tmpdir.c (S_ISDIR): Simplify, thanks to sys_stat.
19533         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Simplify, thanks to
19534         tempname.
19535
19536 2006-10-31  Paul Eggert  <eggert@cs.ucla.edu>
19537
19538         Avoid some C++ diagnostics reported by Bruno Haible.
19539         * lib/quotearg.c (clone_quoting_options): Use xmemdup rather than
19540         xmalloc.
19541         (quotearg_alloc): Use xcharalloc rather than xmalloc.
19542         (struct slotvec): Move to top level.
19543         (quotearg_n_options): Rewrite to avoid xmalloc.
19544         * lib/xalloc.h (xcharalloc): New function.
19545         * (xrealloc, xnrealloc, x2realloc, x2nrealloc, xmemdup):
19546         [defined __cplusplus]: Add function template that provides result
19547         type propagation.  This part of the change is from Bruno Haible.
19548
19549 2006-10-29  Bruno Haible  <bruno@clisp.org>
19550
19551         Make it compile in C++ mode.
19552         * lib/striconv.c (mem_cd_iconv): Cast malloc/realloc result.
19553         * lib/strnlen1.c (strnlen1): Cast memchr result.
19554         * lib/mbchar.h (mb_copy): Rename arguments to 'new_mbc', 'old_mbc'.
19555         * lib/clean-temp.c (string_equals, string_hash): Add casts.
19556         (create_temp_dir): Rename local variable 'template'.
19557         (compile_csharp_using_sscli): Add cast.
19558         * lib/fatal-signal.c (at_fatal_signal): Cast xmalloc result.
19559         * lib/findprog.c (find_in_path): Likewise.
19560         * lib/linebreak.c (mbs_width_linebreaks): Cast malloc result.
19561         * lib/wait-process.c (register_slave_subprocess): Likewise.
19562
19563 2006-10-22  Bruno Haible  <bruno@clisp.org>
19564
19565         * modules/tsearch: New file.
19566         * lib/tsearch.h: New file.
19567         * lib/tsearch.c: New file, from glibc-2.5 with small modifications.
19568         * m4/tsearch.m4: New file.
19569         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add tsearch.
19570
19571 2006-10-29  Eric Blake  <ebb9@byu.net>
19572
19573         * lib/arcfour.c: Assume config.h.
19574         * lib/arctwo.c: Likewise.
19575         * lib/base64.c: Likewise.
19576         * lib/check-version.c: Likewise.
19577         * lib/crc.c: Likewise.
19578         * lib/des.c: Likewise.
19579         * lib/gc-gnulib.c: Likewise.
19580         * lib/gc-libgcrypt.c: Likewise.
19581         * lib/gc-pbkdf2-sha1.c: Likewise.
19582         * lib/getaddrinfo.c: Likewise.
19583         * lib/getdelim.c: Likewise.
19584         * lib/getline.c: Likewise.
19585         * lib/hmac-md5.c: Likewise.
19586         * lib/hmac-sha1.c: Likewise.
19587         * lib/iconvme.c: Likewise.
19588         * lib/md2.c: Likewise.
19589         * lib/md4.c: Likewise.
19590         * lib/memxor.c: Likewise.
19591         * lib/read-file.c: Likewise.
19592         * lib/readline.c: Likewise.
19593         * lib/rijndael-alg-fst.c: Likewise.
19594         * lib/rijndael-api-fst.c: Likewise.
19595         * lib/xgetdomainname.c: Likewise.
19596
19597 2006-10-28  Eric Blake  <ebb9@byu.net>
19598
19599         * lib/xstrndup.c: Assume config.h.
19600
19601 2006-10-27  Paul Eggert  <eggert@cs.ucla.edu>
19602
19603         Move stat.h-substitute stuff from lib/stat-macros.h to lib/stat_.h.
19604         stat-macros.h is now for our own macros, whereas stat_h is for
19605         macros in the <sys/stat.h> name space.
19606         * lib/stat-macros.h: Remove copyright notice, as this file is now tiny.
19607         (STAT_MACROS_H): Remove.
19608         (S_IFMT, S_ISBLK, S_ISCHR, S_ISDIR, S_ISFIFO, S_ISLNK, S_ISNAM):
19609         (S_ISMPB, S_ISMPC, S_ISNWK, S_ISREG, S_ISSOCK, S_ISDOOR, S_ISPORT):
19610         (S_TYPEISMQ, S_TYPEISTMO, S_TYPEISSEM, S_TYPEISSHM, S_ISCTG, S_ISOFD):
19611         (S_ISOFL, S_ISWHT, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IRGRP):
19612         (S_IROTH, S_IWUSR, S_IWGRP, S_IWOTH, S_IXUSR, S_IXGRP, S_IXOTH):
19613         (S_IRWXU, S_IRWXG, S_IRWXO, S_IXUGO, S_IRWXUGO):
19614         Move these macros to ...
19615         * lib/stat_.h: here.  Don't include stat-macros.h.
19616         * lib/canonicalize.c: Don't include stat-macros.h.
19617         * lib/chown.c: Likewise.
19618         * lib/euidaccess.c: Likewise.
19619         * lib/file-type.c: Likewise.
19620         * lib/filemode.c: Likewise.
19621         * lib/glob.c: Likewise.
19622         * lib/isapipe.c: Likewise.
19623         * lib/lchown.c: Likewise.
19624         * lib/lstat.c: Likewise.
19625         * lib/mkdir-p.c: Likewise.
19626         * lib/rmdir.c: Likewise.
19627         * m4/lchown.m4 (gl_FUNC_LCHOWN): Don't require gl_STAT_MACROS.
19628         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Don't check for io.h
19629         unless mkdir isn't declared, to speed up 'configure'.
19630         Always create sys/stat.h, since it's unlikely any real sys/stat.h
19631         would define all the S_* symbols.
19632         * modules/canonicalize (Depends-on):
19633         Depend on sys_stat, not stat-macros.
19634         * modules/chown: Likewise.
19635         * modules/euidaccess: Likewise.
19636         * modules/filemode: Likewise.
19637         * modules/file-type: Likewise.
19638         * modules/glob: Likewise.
19639         * modules/isapipe: Likewise.
19640         * modules/lchown: Likewise.
19641         * modules/lstat: Likewise.
19642         * modules/mkancesdirs: Likewise.
19643         * modules/rmdir: Likewise.
19644         * modules/mkdir-p (Depends-on): Also depend on sys_stat.
19645         * modules/modechange: Likewise.
19646         * modules/stat-macros (Files): Remove m4/stat-macros.m4.
19647         (configure.ac): Remove gl_STAT_MACROS.
19648         * modules/sys_stat (Depends-on): Remove stat-macros.
19649
19650 2006-10-27  Bruno Haible  <bruno@clisp.org>
19651
19652         * m4/signed.m4: Remove file.
19653         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS_: Remove bh_C_SIGNED
19654         invocation.
19655         * modules/vasnprintf (Files): Remove m4/signed.m4.
19656
19657 2006-10-27  Bruno Haible  <bruno@clisp.org>
19658
19659         Update to GNU gettext 0.16.
19660         * modules/gettext (Files): Add m4/intl.m4, m4/intldir.m4. Remove
19661         m4/inttypes-h.m4, m4/signed.m4.
19662         * m4/gettext.m4: Update to GNU gettext 0.16.
19663         * m4/intl.m4: New file, from GNU gettext.
19664         * m4/intldir.m4: New file, from GNU gettext.
19665         * config/srclist.txt: Update
19666
19667 2006-10-27  Eric Blake  <ebb9@byu.net>
19668
19669         * MODULES.html.sh: Document tempname.
19670         * modules/mkstemp (Depends-on): Add tempname, and drop transitive
19671         dependencies.
19672         (Files): Move lib/tempname.c...
19673         * modules/tempname: ...to this new module.
19674         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Remove tempname checks.
19675         (gl_PREREQ_TEMPNAME): Move...
19676         * m4/tempname.m4: ...to this new file.
19677         * lib/mkstemp.c (includes) [!_LIBC]: Use tempname.h.
19678         * modules/sys_stat (Depends-on): Add stat-macros.
19679         * lib/stat_.h (includes): Pick up stat macros.
19680         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Replace <sys/stat.h>
19681         if stat macros are broken.
19682         * lib/tempname.c (includes): No need to include "stat-macros.h".
19683         (__gen_tempname) [!_LIBC]: Expose as gen_tempname.
19684         (direxists, __path_search) [!_LIBC]: Don't compile these in
19685         gnulib; the tmpdir module covers that.
19686         * lib/tempname.h: New file.
19687
19688 2006-10-26  Paul Eggert  <eggert@cs.ucla.edu>
19689
19690         * COPYING: Explain how gnulib-tool converts licence headers.
19691         Almost all wording by Eric Blake.
19692
19693 2006-10-25  Paul Eggert  <eggert@cs.ucla.edu>
19694
19695         * lib/mbchar.h (is_basic_table): Make read-only.
19696         * lib/mbchar.c (is_basic_table): Likewise.
19697         Reported by John Darrington.
19698
19699 2006-10-25  Bruno Haible  <bruno@clisp.org>
19700
19701         * lib/progname.h (set_program_name): Undefine before defining.
19702
19703 2006-10-25  Bruno Haible  <bruno@clisp.org>
19704
19705         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to
19706         false for non-gcc C++ compilers.
19707         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
19708
19709 2006-10-24  Bruno Haible  <bruno@clisp.org>
19710
19711         * lib/striconv.c (mem_cd_iconv, str_cd_iconv): Treat all non-GNU
19712         iconv implementations like Irix iconv.
19713
19714 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
19715
19716         * modules/vararrays: New file.
19717         * m4/vararrays.m4: New file, taken from diffutils.
19718         * MODULES.html.sh: New module vararrays.
19719
19720 2006-10-24  Karl Berry  <karl@gnu.org>
19721
19722         * doc/gnulib-intro.texi: --- instead of --; non-naive naive.
19723         Don't call GNU Unix.
19724
19725 2006-10-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19726
19727         * users.txt: Add Libtool.
19728
19729         Sync from Libtool:
19730
19731         2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
19732
19733         * lib/argz.c: Remove check for HAVE_CONFIG_H, to conform
19734         to gnulib's policy of including config.h unconditionally.
19735
19736 2006-10-24  Bruno Haible  <bruno@clisp.org>
19737
19738         * modules/wcwidth (Files): Add m4/wint_t.m4.
19739         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gt_TYPE_WINT_T.
19740         * lib/wcwidth.h (iswprint): Use 'int' if 'wint_t' is not defined.
19741
19742 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
19743
19744         * lib/getdate.y (yyerror): Make the arguments pointer-to-const,
19745         to pacify GCC with some -W flags enabled.  Problem reported by
19746         Bruno Haible.
19747
19748 2006-10-24  Jim Meyering  <jim@meyering.net>
19749
19750         * MODULES.html.sh: Remove uinttostr.  It's not a module.
19751         Reported by Karl Berry.
19752
19753 2006-10-23  Bruno Haible  <bruno@clisp.org>
19754
19755         * lib/fts.c (fts_build): Move variable declaration, for C89 compliance.
19756
19757 2006-10-24  Bruno Haible  <bruno@clisp.org>
19758
19759         * lib/gl_list.h: Use C comment style, not C++ comment style.
19760
19761 2006-10-23  Eric Blake  <ebb9@byu.net>
19762
19763         * lib/getaddrinfo.c (includes): Add missing include.
19764
19765 2006-10-23  Bruno Haible  <bruno@clisp.org>
19766             Paul Eggert  <eggert@cs.ucla.edu>
19767
19768         Ability to rename obstack_free.
19769         * lib/obstack.h (__obstack_free): New macro. Declare instead of
19770         obstack_free.
19771         (obstack_free): Invoke the __obstack_free macro.
19772         * lib/obstack.c (obstack_free): Use __obstack_free macro.
19773
19774 2006-10-23  Bruno Haible  <bruno@clisp.org>
19775             Paul Eggert  <eggert@cs.ucla.edu>
19776
19777         * lib/argp.h (argp_parse, __argp_parse): Comment out the identifiers
19778         __argc, __argv from the declaration. (They are defined as macros on
19779         mingw.)
19780
19781 2006-10-22  Bruno Haible  <bruno@clisp.org>
19782
19783         * doc/gnulib-intro.texi: New file.
19784         * doc/gnulib.texi: Include it.
19785
19786 2006-10-21  Bruno Haible  <bruno@clisp.org>
19787
19788         * doc/gnulib.texi: Split the chapter "Gnulib" into 3 chapters
19789         "Introduction", "Miscellanous Notes", "Particular Modules".
19790
19791 2006-10-21  Bruno Haible  <bruno@clisp.org>
19792
19793         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
19794         Change mostlyclean-local rule to avoid sh syntax error from bash
19795         versions 2.00..2.05 when $(MOSTLYCLEANDIRS) is empty.
19796
19797 2006-10-23  Jim Meyering  <jim@meyering.net>
19798
19799         * lib/getaddrinfo.c (getnameinfo): Use new lightweight uinttostr,
19800         in place of snprintf.
19801
19802         * modules/inttostr (Files): Add lib/uinttostr.c.
19803         * lib/uinttostr.c (inttostr): New file/function.
19804         * lib/inttostr.h (uinttostr): Declare.
19805         * m4/inttostr.m4: Add AC_LIBOBJ([uinttostr]).
19806         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
19807         Add uinttostr.
19808         * modules/getaddrinfo (Depends-on): Remove snprintf.  Add inttostr.
19809
19810 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
19811
19812         * lib/canonicalize.c (ELOOP): Define if not already defined.
19813         Problem reported by Bruno Haible in
19814         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00282.html>.
19815
19816 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
19817
19818         * lib/stdint_.h [defined _AIX]: Don't include <sys/types.h>.
19819         Problem reported by Perry Smith and Ville Laurikari.
19820
19821         * lib/getndelim2.c (SSIZE_MAX): Use same defn that getdelim.c
19822         uses.
19823
19824 2006-10-19  Bruno Haible  <bruno@clisp.org>
19825
19826         * lib/getndelim2.c (SSIZE_MAX): Provide fallback definition. Needed
19827         for mingw.
19828
19829 2006-10-19  Bruno Haible  <bruno@clisp.org>
19830
19831         * lib/openat-priv.h (EOPNOTSUPP): Provide fallback definition.
19832         Needed for mingw.
19833
19834 2006-10-19  Bruno Haible  <bruno@clisp.org>
19835
19836         * m4/size_max.m4 (gl_SIZE_MAX): Cache the result.
19837
19838 2006-10-19  Bruno Haible  <bruno@clisp.org>
19839
19840         * m4/allocsa.m4 (gl_ALLOCSA): Invoke gl_FUNC_ALLOCA, don't AC_REQUIRE
19841         it.
19842
19843 2006-10-19  Bruno Haible  <bruno@clisp.org>
19844
19845         * m4/alloca.m4 (gl_FUNC_ALLOCA): Cache the result of the AC_EGREP_CPP
19846         invocation.
19847
19848 2006-10-19  Bruno Haible  <bruno@clisp.org>
19849
19850         * gnulib-tool (func_create_testdir): Don't include ftruncate and
19851         mountlist by default.
19852
19853 2006-10-16  Bruno Haible  <bruno@clisp.org>
19854
19855         * lib/c-strstr.c: Include c-strstr.h.
19856
19857 2006-10-18  Charles Wilson  <cygwin@cwilson.fastmail.fm>
19858
19859         * gnulib-tool: Don't clobber $sourcebase when $local_gnulib_dir ends
19860         in a slash.
19861
19862 2006-10-18  Bruno Haible  <bruno@clisp.org>
19863
19864         * lib/lock.h [C++]: Wrap definitions in extern "C".
19865
19866 2006-10-18  Bruno Haible  <bruno@clisp.org>
19867
19868         * gnulib-tool (func_emit_initmacro_end): Remove duplicates from the
19869         gl_LIBOBJS list.
19870
19871 2006-10-18  Bruno Haible  <bruno@clisp.org>
19872
19873         * lib/findprog.c (find_in_path): Avoid "gcc -Wwrite-strings" warning.
19874
19875 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>
19876
19877         * lib/xstrtol.h: Include gettext.h.
19878         (_STRTOL_ERROR): Wrap English-language formats inside gettext.
19879         Problem reported by Eric Blake.
19880         * modules/xstrtol (Depends-on): Add gettext-h.
19881
19882 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>  (tiny change)
19883
19884         * lib/strftime.c (advance): New macro.
19885         (add): Use it to avoid adding 0 to a FILE *.  FILE can be an
19886         incomplete type, so you can't add 0 to it.  Problem and patch
19887         reported by Eelco Dolstra for dietlibc.
19888
19889 2006-10-18  Jim Meyering  <jim@meyering.net>
19890
19891         * lib/readutmp.c (desirable_utmp_entry): Use "bool" as the
19892         type for a local, and rename it: s/up/user_proc/.
19893
19894 2006-10-18  Sergey Poznyakoff  <gray@gnu.org.ua>
19895
19896         * lib/readutmp.c (desirable_utmp_entry): Implement new flag:
19897         READ_UTMP_USER_PROCESS.
19898         * lib/readutmp.h (READ_UTMP_USER_PROCESS): New flag
19899
19900 2006-10-17  Paul Eggert  <eggert@cs.ucla.edu>
19901
19902         * lib/localcharset.c: Do not check HAVE_SETLOCALE.
19903         * m4/localcharset.m4 (gl_LOCALCHARSET): Don't check for setlocale.
19904
19905 2006-10-17  Eric Blake  <ebb9@byu.net>
19906
19907         * lib/sigprocmask.c (sigprocmask): Fix typo.
19908
19909         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Fix typo.
19910
19911         * modules/clean-temp (Makefile.am): Don't add to make output...
19912         (configure.ac): ...instead define SIGNAL_SAFE_LIST inside
19913         config.h.
19914
19915 2006-10-17  Bruno Haible  <bruno@clisp.org>
19916
19917         * lib/gettext.h (gettext, ngettext, pgettext, npgettext): Define
19918         differently if DEFAULT_TEXT_DOMAIN is set.
19919
19920 2006-10-16  Bruno Haible  <bruno@clisp.org>
19921
19922         * lib/clean-temp.c: Include fwriteerror.h.
19923
19924 2006-10-16  Bruno Haible  <bruno@clisp.org>
19925
19926         * getndelim2.m4 (gl_GETNDELIM2): Remove 2003-10-23 hack.
19927
19928 2006-10-16  Bruno Haible  <bruno@clisp.org>
19929
19930         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Also test for sigset_t.
19931         * lib/sigprocmask.h: Include <sys/types.h>.
19932         (sigset_t): Use the system's definition if present.
19933
19934 2006-10-17  Eric Blake  <ebb9@byu.net>
19935
19936         * lib/xvasprintf.c (includes): Assume config.h.
19937         * lib/xasprintf.c (includes): Likewise.
19938
19939 2006-10-16  Paul Eggert  <eggert@cs.ucla.edu>
19940
19941         * lib/fsusage.c (PROPAGATE_ALL_ONES): Don't assume uintmax_t is
19942         at least as wide as intmax_t.
19943
19944 2006-10-16  Alexandre Duret-Lutz  <adl@gnu.org>
19945
19946         (Imported from Automake.)
19947         * build-aux/gnupload: Update to version 1.1 of directive file.
19948
19949 2006-10-16  Eric Blake  <ebb9@byu.net>
19950
19951         * modules/configmake (Makefile.am): Add pkglibexecdir support, to
19952         match Automake 1.10a.
19953
19954 2006-10-14  Bruno Haible  <bruno@clisp.org>
19955
19956         * modules/sigprocmask: New file.
19957         * lib/sigprocmask.h: New file.
19958         * lib/sigprocmask.c: New file.
19959         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Renamed from
19960         gt_SIGNALBLOCKING. When not defining HAVE_POSIX_SIGNALBLOCKING,
19961         request sigprocmask.o.
19962         (gl_PREREQ_SIGPROCMASK): New macro.
19963         * modules/fatal-signal (Files): Remove m4/signalblocking.m4.
19964         (Depends-on): Add sigprocmask.
19965         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Don't require
19966         gt_SIGNALBLOCKING. Test for 'raise' only once.
19967         * lib/fatal-signal.c: Include sigprocmask.h.
19968         (fatal_signal_set, init_fatal_signal_set, block_fatal_signals,
19969         unblock_fatal_signals): Define always.
19970         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
19971         sigprocmask.
19972
19973 2006-10-14  Paul Eggert  <eggert@cs.ucla.edu>
19974
19975         Sync from Automake.
19976         * build-aux/install-sh (posix_mkdir): Reject FreeBSD 6.1 mkdir -p -m,
19977         which incorrectly sets the mode of an existing destination
19978         directory.  In some cases the unpatched install-sh could do the
19979         equivalent of "chmod 777 /" or "chmod 0 /" on a buggy FreeBSD
19980         system.  We hope this is rare in practice, but it's clearly worth
19981         fixing.  Problem reported by Alex Unleashed in
19982         <http://lists.gnu.org/archive/html/bug-autoconf/2006-10/msg00012.html>.
19983         Also, don't bother to check for -m bugs unless we're using -m;
19984         suggested by Stepan Kasal.
19985
19986 2006-10-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19987
19988         Sync from Automake.
19989         * build-aux/depcomp (gcc3): Put dependency extraction flags before the
19990         `-c' flag, so they appear at the same position as in %FASTDEP%
19991         mode in depend2.am.  Fixes build failure for FreeBSD's c89,
19992         which ignores unknown options only after the first non-option.
19993         Bug report against M4 by Nelson H. F. Beebe.
19994
19995 2006-10-13  Jim Meyering  <jim@meyering.net>
19996
19997         Fix a bug in yesterday's change.
19998         * lib/fts.c (fts_open): When using FTS_XDEV|FTS_NOSTAT,
19999         p->fts_statp->st_dev would be used uninitialized.
20000         Ensures that we always call fts_stat on the very first entry.
20001         Miklos Szeredi reported that find -xdev stopped working.
20002
20003 2006-10-12  Bruno Haible  <bruno@clisp.org>
20004
20005         * gnulib-tool (func_get_automake_snippet): Append an automatically
20006         computed EXTRA_DIST augmentation.
20007         * modules/acl (Makefile.am): Remove EXTRA_DIST augmentation.
20008         * modules/alloca-opt (Makefile.am): Likewise.
20009         * modules/allocsa (Makefile.am): Likewise.
20010         * modules/arcfour (Makefile.am): Likewise.
20011         * modules/arctwo (Makefile.am): Likewise.
20012         * modules/argmatch (Makefile.am): Likewise.
20013         * modules/argz (Makefile.am): Likewise.
20014         * modules/atexit (Makefile.am): Likewise.
20015         * modules/backupfile (Makefile.am): Likewise.
20016         * modules/byteswap (Makefile.am): Likewise.
20017         * modules/c-strtod (Makefile.am): Likewise.
20018         * modules/c-strtold (Makefile.am): Likewise.
20019         * modules/calloc (Makefile.am): Likewise.
20020         * modules/canon-host (Makefile.am): Likewise.
20021         * modules/canonicalize (Makefile.am): Likewise.
20022         * modules/chdir-long (Makefile.am): Likewise.
20023         * modules/chdir-safer (Makefile.am): Likewise.
20024         * modules/check-version (Makefile.am): Likewise.
20025         * modules/chown (Makefile.am): Likewise.
20026         * modules/cloexec (Makefile.am): Likewise.
20027         * modules/close-stream (Makefile.am): Likewise.
20028         * modules/closeout (Makefile.am): Likewise.
20029         * modules/crc (Makefile.am): Likewise.
20030         * modules/csharpexec (Makefile.am): Likewise.
20031         * modules/cycle-check (Makefile.am): Likewise.
20032         * modules/des (Makefile.am): Likewise.
20033         * modules/dev-ino (Makefile.am): Likewise.
20034         * modules/dirfd (Makefile.am): Likewise.
20035         * modules/dirname (Makefile.am): Likewise.
20036         * modules/dup2 (Makefile.am): Likewise.
20037         * modules/eealloc (Makefile.am): Likewise.
20038         * modules/error (Makefile.am): Likewise.
20039         * modules/euidaccess (Makefile.am): Likewise.
20040         * modules/exclude (Makefile.am): Likewise.
20041         * modules/exitfail (Makefile.am): Likewise.
20042         * modules/fcntl-safer (Makefile.am): Likewise.
20043         * modules/fcntl (Makefile.am): Likewise.
20044         * modules/file-type (Makefile.am): Likewise.
20045         * modules/fileblocks (Makefile.am): Likewise.
20046         * modules/filemode (Makefile.am): Likewise.
20047         * modules/filenamecat (Makefile.am): Likewise.
20048         * modules/fnmatch (Makefile.am): Likewise.
20049         * modules/fopen-safer (Makefile.am): Likewise.
20050         * modules/fpending (Makefile.am): Likewise.
20051         * modules/fprintftime (Makefile.am): Likewise.
20052         * modules/free (Makefile.am): Likewise.
20053         * modules/fsusage (Makefile.am): Likewise.
20054         * modules/ftruncate (Makefile.am): Likewise.
20055         * modules/fts (Makefile.am): Likewise.
20056         * modules/gc-arcfour (Makefile.am): Likewise.
20057         * modules/gc-des (Makefile.am): Likewise.
20058         * modules/gc-hmac-md5 (Makefile.am): Likewise.
20059         * modules/gc-hmac-sha1 (Makefile.am): Likewise.
20060         * modules/gc-md4 (Makefile.am): Likewise.
20061         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
20062         * modules/gc-sha1 (Makefile.am): Likewise.
20063         * modules/gc (Makefile.am): Likewise.
20064         * modules/getaddrinfo (Makefile.am): Likewise.
20065         * modules/getcwd (Makefile.am): Likewise.
20066         * modules/getdelim (Makefile.am): Likewise.
20067         * modules/getdomainname (Makefile.am): Likewise.
20068         * modules/getgroups (Makefile.am): Likewise.
20069         * modules/gethostname (Makefile.am): Likewise.
20070         * modules/gethrxtime (Makefile.am): Likewise.
20071         * modules/getline (Makefile.am): Likewise.
20072         * modules/getloadavg (Makefile.am): Likewise.
20073         * modules/getlogin_r (Makefile.am): Likewise.
20074         * modules/getndelim2 (Makefile.am): Likewise.
20075         * modules/getopt (Makefile.am): Likewise.
20076         * modules/getpagesize (Makefile.am): Likewise.
20077         * modules/getpass-gnu (Makefile.am): Likewise.
20078         * modules/getpass (Makefile.am): Likewise.
20079         * modules/getsubopt (Makefile.am): Likewise.
20080         * modules/gettime (Makefile.am): Likewise.
20081         * modules/gettimeofday (Makefile.am): Likewise.
20082         * modules/getugroups (Makefile.am): Likewise.
20083         * modules/getusershell (Makefile.am): Likewise.
20084         * modules/glob (Makefile.am): Likewise.
20085         * modules/group-member (Makefile.am): Likewise.
20086         * modules/hard-locale (Makefile.am): Likewise.
20087         * modules/hash (Makefile.am): Likewise.
20088         * modules/hmac-md5 (Makefile.am): Likewise.
20089         * modules/hmac-sha1 (Makefile.am): Likewise.
20090         * modules/human (Makefile.am): Likewise.
20091         * modules/idcache (Makefile.am): Likewise.
20092         * modules/imaxabs (Makefile.am): Likewise.
20093         * modules/imaxdiv (Makefile.am): Likewise.
20094         * modules/inet_ntop (Makefile.am): Likewise.
20095         * modules/inet_pton (Makefile.am): Likewise.
20096         * modules/intprops (Makefile.am): Likewise.
20097         * modules/inttostr (Makefile.am): Likewise.
20098         * modules/inttypes (Makefile.am): Likewise.
20099         * modules/isapipe (Makefile.am): Likewise.
20100         * modules/javaversion (Makefile.am): Likewise.
20101         * modules/lchmod (Makefile.am): Likewise.
20102         * modules/lchown (Makefile.am): Likewise.
20103         * modules/localcharset (Makefile.am): Likewise.
20104         * modules/long-options (Makefile.am): Likewise.
20105         * modules/lstat (Makefile.am): Likewise.
20106         * modules/malloc (Makefile.am): Likewise.
20107         * modules/mathl (Makefile.am): Likewise.
20108         * modules/mbchar (Makefile.am): Likewise.
20109         * modules/md2 (Makefile.am): Likewise.
20110         * modules/md4 (Makefile.am): Likewise.
20111         * modules/md5 (Makefile.am): Likewise.
20112         * modules/memcasecmp (Makefile.am): Likewise.
20113         * modules/memchr (Makefile.am): Likewise.
20114         * modules/memcmp (Makefile.am): Likewise.
20115         * modules/memcoll (Makefile.am): Likewise.
20116         * modules/memcpy (Makefile.am): Likewise.
20117         * modules/memmem (Makefile.am): Likewise.
20118         * modules/memmove (Makefile.am): Likewise.
20119         * modules/mempcpy (Makefile.am): Likewise.
20120         * modules/memrchr (Makefile.am): Likewise.
20121         * modules/memset (Makefile.am): Likewise.
20122         * modules/memxor (Makefile.am): Likewise.
20123         * modules/mkancesdirs (Makefile.am): Likewise.
20124         * modules/mkdir-p (Makefile.am): Likewise.
20125         * modules/mkdir (Makefile.am): Likewise.
20126         * modules/mkdtemp (Makefile.am): Likewise.
20127         * modules/mkstemp (Makefile.am): Likewise.
20128         * modules/mktime (Makefile.am): Likewise.
20129         * modules/modechange (Makefile.am): Likewise.
20130         * modules/mountlist (Makefile.am): Likewise.
20131         * modules/nanosleep (Makefile.am): Likewise.
20132         * modules/obstack (Makefile.am): Likewise.
20133         * modules/openat (Makefile.am): Likewise.
20134         * modules/pagealign_alloc (Makefile.am): Likewise.
20135         * modules/pathmax (Makefile.am): Likewise.
20136         * modules/physmem (Makefile.am): Likewise.
20137         * modules/poll (Makefile.am): Likewise.
20138         * modules/posixtm (Makefile.am): Likewise.
20139         * modules/posixver (Makefile.am): Likewise.
20140         * modules/putenv (Makefile.am): Likewise.
20141         * modules/quote (Makefile.am): Likewise.
20142         * modules/quotearg (Makefile.am): Likewise.
20143         * modules/raise (Makefile.am): Likewise.
20144         * modules/read-file (Makefile.am): Likewise.
20145         * modules/readline (Makefile.am): Likewise.
20146         * modules/readlink (Makefile.am): Likewise.
20147         * modules/readtokens (Makefile.am): Likewise.
20148         * modules/readutmp (Makefile.am): Likewise.
20149         * modules/realloc (Makefile.am): Likewise.
20150         * modules/regex (Makefile.am): Likewise.
20151         * modules/rename-dest-slash (Makefile.am): Likewise.
20152         * modules/rename (Makefile.am): Likewise.
20153         * modules/rijndael (Makefile.am): Likewise.
20154         * modules/rmdir (Makefile.am): Likewise.
20155         * modules/rpmatch (Makefile.am): Likewise.
20156         * modules/safe-read (Makefile.am): Likewise.
20157         * modules/safe-write (Makefile.am): Likewise.
20158         * modules/same-inode (Makefile.am): Likewise.
20159         * modules/same (Makefile.am): Likewise.
20160         * modules/save-cwd (Makefile.am): Likewise.
20161         * modules/savedir (Makefile.am): Likewise.
20162         * modules/setenv (Makefile.am): Likewise.
20163         * modules/settime (Makefile.am): Likewise.
20164         * modules/sha1 (Makefile.am): Likewise.
20165         * modules/sig2str (Makefile.am): Likewise.
20166         * modules/snprintf (Makefile.am): Likewise.
20167         * modules/stat-macros (Makefile.am): Likewise.
20168         * modules/stat-time (Makefile.am): Likewise.
20169         * modules/stdbool (Makefile.am): Likewise.
20170         * modules/stdint (Makefile.am): Likewise.
20171         * modules/stdlib-safer (Makefile.am): Likewise.
20172         * modules/stpcpy (Makefile.am): Likewise.
20173         * modules/stpncpy (Makefile.am): Likewise.
20174         * modules/strcase (Makefile.am): Likewise.
20175         * modules/strcasestr (Makefile.am): Likewise.
20176         * modules/strchrnul (Makefile.am): Likewise.
20177         * modules/strcspn (Makefile.am): Likewise.
20178         * modules/strdup (Makefile.am): Likewise.
20179         * modules/strerror (Makefile.am): Likewise.
20180         * modules/strftime (Makefile.am): Likewise.
20181         * modules/strndup (Makefile.am): Likewise.
20182         * modules/strnlen (Makefile.am): Likewise.
20183         * modules/strpbrk (Makefile.am): Likewise.
20184         * modules/strsep (Makefile.am): Likewise.
20185         * modules/strstr (Makefile.am): Likewise.
20186         * modules/strtod (Makefile.am): Likewise.
20187         * modules/strtoimax (Makefile.am): Likewise.
20188         * modules/strtok_r (Makefile.am): Likewise.
20189         * modules/strtol (Makefile.am): Likewise.
20190         * modules/strtoll (Makefile.am): Likewise.
20191         * modules/strtoul (Makefile.am): Likewise.
20192         * modules/strtoull (Makefile.am): Likewise.
20193         * modules/strtoumax (Makefile.am): Likewise.
20194         * modules/strverscmp (Makefile.am): Likewise.
20195         * modules/sys_socket (Makefile.am): Likewise.
20196         * modules/sys_stat (Makefile.am): Likewise.
20197         * modules/sysexits (Makefile.am): Likewise.
20198         * modules/time_r (Makefile.am): Likewise.
20199         * modules/timegm (Makefile.am): Likewise.
20200         * modules/timespec (Makefile.am): Likewise.
20201         * modules/tmpfile-safer (Makefile.am): Likewise.
20202         * modules/trim (Makefile.am): Likewise.
20203         * modules/unistd-safer (Makefile.am): Likewise.
20204         * modules/unlinkdir (Makefile.am): Likewise.
20205         * modules/unlocked-io (Makefile.am): Likewise.
20206         * modules/userspec (Makefile.am): Likewise.
20207         * modules/utime (Makefile.am): Likewise.
20208         * modules/utimecmp (Makefile.am): Likewise.
20209         * modules/utimens (Makefile.am): Likewise.
20210         * modules/vasnprintf (Makefile.am): Likewise.
20211         * modules/vasprintf (Makefile.am): Likewise.
20212         * modules/vsnprintf (Makefile.am): Likewise.
20213         * modules/xalloc (Makefile.am): Likewise.
20214         * modules/xgetcwd (Makefile.am): Likewise.
20215         * modules/xnanosleep (Makefile.am): Likewise.
20216         * modules/xreadlink (Makefile.am): Likewise.
20217         * modules/xstrtod (Makefile.am): Likewise.
20218         * modules/xstrtol (Makefile.am): Likewise.
20219         * modules/xstrtold (Makefile.am): Likewise.
20220         * modules/yesno (Makefile.am): Likewise.
20221         * modules/getdate (Makefile.am): Don't add getdate.h to EXTRA_DIST.
20222
20223 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
20224
20225         * modules/error (Makefile.am): Distribute files through
20226         EXTRA_DIST, not lib_SOURCES.
20227
20228 2006-10-12  Eric Blake  <ebb9@byu.net>
20229
20230         * modules/error (Makefile.am): Distribute files in /lib.
20231         * modules/obstack (Makefile.am): Likewise.
20232
20233 2006-10-12  Bruno Haible  <bruno@clisp.org>
20234
20235         * modules/acl (Makefile.am): Distribute all files in lib/ through
20236         EXTRA_DIST.
20237         * modules/arcfour (Makefile.am): Likewise.
20238         * modules/arctwo (Makefile.am): Likewise.
20239         * modules/argmatch (Makefile.am): Likewise.
20240         * modules/argz (Makefile.am): Likewise.
20241         * modules/atexit (Makefile.am): Likewise.
20242         * modules/backupfile (Makefile.am): Likewise.
20243         * modules/c-strtod (Makefile.am): Likewise.
20244         * modules/c-strtold (Makefile.am): Likewise.
20245         * modules/calloc (Makefile.am): Likewise.
20246         * modules/canon-host (Makefile.am): Likewise.
20247         * modules/canonicalize (Makefile.am): Likewise.
20248         * modules/chdir-long (Makefile.am): Likewise.
20249         * modules/chdir-safer (Makefile.am): Likewise.
20250         * modules/check-version (Makefile.am): Likewise.
20251         * modules/chown (Makefile.am): Likewise.
20252         * modules/cloexec (Makefile.am): Likewise.
20253         * modules/close-stream (Makefile.am): Likewise.
20254         * modules/closeout (Makefile.am): Likewise.
20255         * modules/crc (Makefile.am): Likewise.
20256         * modules/cycle-check (Makefile.am): Likewise.
20257         * modules/des (Makefile.am): Likewise.
20258         * modules/dirfd (Makefile.am): Likewise.
20259         * modules/dirname (Makefile.am): Likewise.
20260         * modules/dup2 (Makefile.am): Likewise.
20261         * modules/euidaccess (Makefile.am): Likewise.
20262         * modules/exclude (Makefile.am): Likewise.
20263         * modules/exitfail (Makefile.am): Likewise.
20264         * modules/fcntl-safer (Makefile.am): Likewise.
20265         * modules/file-type (Makefile.am): Likewise.
20266         * modules/fileblocks (Makefile.am): Likewise.
20267         * modules/filemode (Makefile.am): Likewise.
20268         * modules/filenamecat (Makefile.am): Likewise.
20269         * modules/fnmatch (Makefile.am): Likewise.
20270         * modules/fopen-safer (Makefile.am): Likewise.
20271         * modules/fpending (Makefile.am): Likewise.
20272         * modules/fprintftime (Makefile.am): Likewise.
20273         * modules/free (Makefile.am): Likewise.
20274         * modules/fsusage (Makefile.am): Likewise.
20275         * modules/ftruncate (Makefile.am): Likewise.
20276         * modules/fts (Makefile.am): Likewise.
20277         * modules/gc (Makefile.am): Likewise.
20278         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
20279         * modules/getaddrinfo (Makefile.am): Likewise.
20280         * modules/getcwd (Makefile.am): Likewise.
20281         * modules/getdelim (Makefile.am): Likewise.
20282         * modules/getdomainname (Makefile.am): Likewise.
20283         * modules/getgroups (Makefile.am): Likewise.
20284         * modules/gethostname (Makefile.am): Likewise.
20285         * modules/gethrxtime (Makefile.am): Likewise.
20286         * modules/getline (Makefile.am): Likewise.
20287         * modules/getloadavg (Makefile.am): Likewise.
20288         * modules/getlogin_r (Makefile.am): Likewise.
20289         * modules/getopt (Makefile.am): Likewise.
20290         * modules/getpass (Makefile.am): Likewise.
20291         * modules/getpass-gnu (Makefile.am): Likewise.
20292         * modules/getsubopt (Makefile.am): Likewise.
20293         * modules/gettime (Makefile.am): Likewise.
20294         * modules/gettimeofday (Makefile.am): Likewise.
20295         * modules/getugroups (Makefile.am): Likewise.
20296         * modules/getusershell (Makefile.am): Likewise.
20297         * modules/glob (Makefile.am): Likewise.
20298         * modules/group-member (Makefile.am): Likewise.
20299         * modules/hard-locale (Makefile.am): Likewise.
20300         * modules/hash (Makefile.am): Likewise.
20301         * modules/hmac-md5 (Makefile.am): Likewise.
20302         * modules/hmac-sha1 (Makefile.am): Likewise.
20303         * modules/human (Makefile.am): Likewise.
20304         * modules/idcache (Makefile.am): Likewise.
20305         * modules/imaxabs (Makefile.am): Likewise.
20306         * modules/imaxdiv (Makefile.am): Likewise.
20307         * modules/inet_ntop (Makefile.am): Likewise.
20308         * modules/inet_pton (Makefile.am): Likewise.
20309         * modules/inttostr (Makefile.am): Likewise.
20310         * modules/isapipe (Makefile.am): Likewise.
20311         * modules/lchown (Makefile.am): Likewise.
20312         * modules/long-options (Makefile.am): Likewise.
20313         * modules/lstat (Makefile.am): Likewise.
20314         * modules/malloc (Makefile.am): Likewise.
20315         * modules/mathl (Makefile.am): Likewise.
20316         * modules/mbchar (Makefile.am): Likewise.
20317         * modules/md2 (Makefile.am): Likewise.
20318         * modules/md4 (Makefile.am): Likewise.
20319         * modules/md5 (Makefile.am): Likewise.
20320         * modules/memcasecmp (Makefile.am): Likewise.
20321         * modules/memchr (Makefile.am): Likewise.
20322         * modules/memcmp (Makefile.am): Likewise.
20323         * modules/memcoll (Makefile.am): Likewise.
20324         * modules/memcpy (Makefile.am): Likewise.
20325         * modules/memmem (Makefile.am): Likewise.
20326         * modules/memmove (Makefile.am): Likewise.
20327         * modules/mempcpy (Makefile.am): Likewise.
20328         * modules/memrchr (Makefile.am): Likewise.
20329         * modules/memset (Makefile.am): Likewise.
20330         * modules/memxor (Makefile.am): Likewise.
20331         * modules/mkancesdirs (Makefile.am): Likewise.
20332         * modules/mkdir (Makefile.am): Likewise.
20333         * modules/mkdir-p (Makefile.am): Likewise.
20334         * modules/mkdtemp (Makefile.am): Likewise.
20335         * modules/mkstemp (Makefile.am): Likewise.
20336         * modules/mktime (Makefile.am): Likewise.
20337         * modules/modechange (Makefile.am): Likewise.
20338         * modules/mountlist (Makefile.am): Likewise.
20339         * modules/nanosleep (Makefile.am): Likewise.
20340         * modules/openat (Makefile.am): Likewise.
20341         * modules/pagealign_alloc (Makefile.am): Likewise.
20342         * modules/physmem (Makefile.am): Likewise.
20343         * modules/poll (Makefile.am): Likewise.
20344         * modules/posixtm (Makefile.am): Likewise.
20345         * modules/posixver (Makefile.am): Likewise.
20346         * modules/putenv (Makefile.am): Likewise.
20347         * modules/quote (Makefile.am): Likewise.
20348         * modules/quotearg (Makefile.am): Likewise.
20349         * modules/raise (Makefile.am): Likewise.
20350         * modules/read-file (Makefile.am): Likewise.
20351         * modules/readline (Makefile.am): Likewise.
20352         * modules/readlink (Makefile.am): Likewise.
20353         * modules/readtokens (Makefile.am): Likewise.
20354         * modules/readutmp (Makefile.am): Likewise.
20355         * modules/realloc (Makefile.am): Likewise.
20356         * modules/regex (Makefile.am): Likewise.
20357         * modules/rename (Makefile.am): Likewise.
20358         * modules/rename-dest-slash (Makefile.am): Likewise.
20359         * modules/rijndael (Makefile.am): Likewise.
20360         * modules/rmdir (Makefile.am): Likewise.
20361         * modules/rpmatch (Makefile.am): Likewise.
20362         * modules/safe-read (Makefile.am): Likewise.
20363         * modules/safe-write (Makefile.am): Likewise.
20364         * modules/same (Makefile.am): Likewise.
20365         * modules/save-cwd (Makefile.am): Likewise.
20366         * modules/savedir (Makefile.am): Likewise.
20367         * modules/setenv (Makefile.am): Likewise.
20368         * modules/settime (Makefile.am): Likewise.
20369         * modules/sha1 (Makefile.am): Likewise.
20370         * modules/sig2str (Makefile.am): Likewise.
20371         * modules/snprintf (Makefile.am): Likewise.
20372         * modules/stdlib-safer (Makefile.am): Likewise.
20373         * modules/stpcpy (Makefile.am): Likewise.
20374         * modules/stpncpy (Makefile.am): Likewise.
20375         * modules/strcase (Makefile.am): Likewise.
20376         * modules/strcasestr (Makefile.am): Likewise.
20377         * modules/strchrnul (Makefile.am): Likewise.
20378         * modules/strcspn (Makefile.am): Likewise.
20379         * modules/strdup (Makefile.am): Likewise.
20380         * modules/strerror (Makefile.am): Likewise.
20381         * modules/strftime (Makefile.am): Likewise.
20382         * modules/strndup (Makefile.am): Likewise.
20383         * modules/strnlen (Makefile.am): Likewise.
20384         * modules/strpbrk (Makefile.am): Likewise.
20385         * modules/strsep (Makefile.am): Likewise.
20386         * modules/strstr (Makefile.am): Likewise.
20387         * modules/strtod (Makefile.am): Likewise.
20388         * modules/strtoimax (Makefile.am): Likewise.
20389         * modules/strtok_r (Makefile.am): Likewise.
20390         * modules/strtol (Makefile.am): Likewise.
20391         * modules/strtoll (Makefile.am): Likewise.
20392         * modules/strtoul (Makefile.am): Likewise.
20393         * modules/strtoull (Makefile.am): Likewise.
20394         * modules/strtoumax (Makefile.am): Likewise.
20395         * modules/strverscmp (Makefile.am): Likewise.
20396         * modules/time_r (Makefile.am): Likewise.
20397         * modules/timegm (Makefile.am): Likewise.
20398         * modules/tmpfile-safer (Makefile.am): Likewise.
20399         * modules/unistd-safer (Makefile.am): Likewise.
20400         * modules/unlinkdir (Makefile.am): Likewise.
20401         * modules/userspec (Makefile.am): Likewise.
20402         * modules/utime (Makefile.am): Likewise.
20403         * modules/utimecmp (Makefile.am): Likewise.
20404         * modules/utimens (Makefile.am): Likewise.
20405         * modules/vasnprintf (Makefile.am): Likewise.
20406         * modules/vasprintf (Makefile.am): Likewise.
20407         * modules/vsnprintf (Makefile.am): Likewise.
20408         * modules/xalloc (Makefile.am): Likewise.
20409         * modules/xgetcwd (Makefile.am): Likewise.
20410         * modules/xnanosleep (Makefile.am): Likewise.
20411         * modules/xreadlink (Makefile.am): Likewise.
20412         * modules/xstrtod (Makefile.am): Likewise.
20413         * modules/xstrtol (Makefile.am): Likewise.
20414         * modules/xstrtold (Makefile.am): Likewise.
20415         * modules/yesno (Makefile.am): Likewise.
20416
20417 2006-10-12  Jim Meyering  <jim@meyering.net>
20418
20419         * m4/getloadavg.m4: Revert the change below.
20420
20421         * m4/getloadavg.m4 (gl_GETLOADAVG): Test for the existence of
20422         lib/getloadavg.c using "ls -L", not "test -f".  The latter would
20423         fail with a symlink, which is what coreutils' ./bootstrap now
20424         creates by default.
20425
20426 2006-10-12  Bruno Haible  <bruno@clisp.org>
20427
20428         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): Don't define for MSVC or
20429         mingw.
20430         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX): Handle
20431         MSVC and mingw explicitly.
20432
20433 2006-10-11  Simon Josefsson  <jas@extundo.com>
20434             Bruno Haible  <bruno@clisp.org>
20435
20436         Add support for multiple gnulib-tool invocations in the scope of a
20437         single configure.ac file.
20438         * gnulib-tool (func_emit_lib_Makefile_am): In the _LIBADD variable,
20439         use a private [LT]LIBOBJS variant. Define a _DEPENDENCIES variable
20440         with the same contents as the _LIBADD variable.
20441         (func_emit_initmacro_start, func_emit_initmacro_end,
20442         func_emit_initmacro_done): New functions.
20443         (func_import, func_create_testdir): Invoke them. Allow the identifiers
20444         gl_LIBOBJS and gl_LTLIBOBJS.
20445
20446 2006-10-11  Bruno Haible  <bruno@clisp.org>
20447
20448         * gnulib-tool (GETTEXTPATH, AUTOHEADER, AUTOPOINT): New variables.
20449         (func_create_testdir): Don't create po/Makefile.am, don't invoke
20450         autoreconf. Instead, invoke autopoint explicitly but move back the
20451         *.m4 files from gnulib.
20452
20453 2006-10-11  Bruno Haible  <bruno@clisp.org>
20454
20455         * gnulib-tool (func_usage): Make module names after --create-testdir
20456         optional.
20457         (func_create_testdir): If no module was specified, use nearly all
20458         modules.
20459
20460 2006-10-12  Jim Meyering  <jim@meyering.net>
20461
20462         Big performance improvement for fts-based tools that use FTS_NOSTAT.
20463         Avoid spurious inode-mismatch problems on non-POSIX file systems.
20464         Details: http://article.gmane.org/gmane.comp.lib.gnulib.bugs/7416
20465         * lib/fts_.h (FTS_DEFER_STAT): Define new flag.
20466         (FTS_OPTIONMASK): Extend the mask to reflect this addition.
20467         * lib/fts.c (DT_IS_KNOWN, DT_MUST_BE): Define.
20468         (FTS_NO_STAT_REQUIRED, FTS_STAT_REQUIRED): Define.
20469         (fts_set_stat_required): New function.
20470         (fts_open): Defer the calls to fts_stat, if possible or requested.
20471         Move the code that maps a command-line fts_info value FTS_DOT to FTS_D
20472         into fts_stat itself.
20473         (fts_read): Perform any required (deferred) fts_stat call.
20474         (fts_build): Likewise, for the directory we're about to open and read.
20475         In the readdir loop, carefully decide whether each entry will require
20476         an eventual call to fts_stat, using dirent.d_type info if available.
20477         (fts_stat): Move the test for whether to honor FTS_COMFOLLOW on
20478         a command line argument into this function.  Update all callers.
20479         Map a return value of FTS_DOT to FTS_D for a command line argument.
20480         * modules/fts (Depends-on): Add d-type.  Alphabetize.
20481         Thanks to Miklos Szeredi for his tenacity and for the initial
20482         bug report about "find" failing on a FUSE-based file system.
20483
20484         * lib/fts.c (fts_open): Use consistent indentation.
20485
20486 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
20487
20488         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Renamed from
20489         gl_USE_SYSTEM_EXTENSIONS, to fix a coreutils bootstrap failure
20490         reported by Jim Meyering.  All uses of cache variables renamed
20491         to match Autoconf's.
20492         (gl_USE_SYSTEM_EXTENSIONS): New macro, which simply requires
20493         the other one.
20494
20495         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH):
20496         Fix misspelling in diagnostic.
20497
20498 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
20499
20500         * lib/mkdir-p.c (HAVE_FCHMOD): Define to false if not already
20501         defined.  Problem reported by Matthew Woehlke.
20502
20503         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): New macro.
20504         Add support for Tandem NonStop R series.
20505         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX):
20506         Use new macro.
20507
20508         * lib/rename-dest-slash.c: Include stdbool.h but not string.h.
20509         (has_trailing_slash): Omit size arg; all callers changed.
20510         Omit 'inline', since it doesn't help performance and we'd
20511         need to configure it.
20512         Don't count //, ///, etc. as having a trailing slash.
20513         As a side effect, this removes a C99ism reported by Matthew Woehlke.
20514         (rpl_rename_dest_slash): On failure, use rename's errno rather
20515         than (in some cases) an incorrect or junk errno.
20516         Simplify code by removing need to compute length; this does
20517         cause it to make two passes instead of one over the file name,
20518         but it's worth it.
20519
20520         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Undo previous
20521         change, since Autoconf's version may no longer be appropriate now
20522         that we are using CVS Autoconf's version.  Add support for Tandem.
20523
20524 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
20525             Bruno Haible  <bruno@clisp.org>
20526
20527         * lib/allocsa.h (sa_alignment_longlong, sa_alignment_max): Test
20528         HAVE_LONG_LONG_INT instead of HAVE_LONG_LONG.
20529         * m4/allocsa.m4 (gl_ALLOCSA): Invoke AC_TYPE_LONG_LONG_INT instead of
20530         gl_AC_TYPE_LONG_LONG.
20531
20532         * lib/printf-args.h (arg_type, argument): Test HAVE_LONG_LONG_INT
20533         instead of HAVE_LONG_LONG.
20534         * lib/printf-args.c (printf_fetchargs): Likewise.
20535         * lib/printf-parse.c (PRINTF_PARSE): Likewise.
20536         * lib/vasnprintf.c (VASNPRINTF): Likewise.
20537         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS, gl_PREREQ_PRINTF_PARSE,
20538         gl_PREREQ_VASNPRINTF): Invoke AC_TYPE_LONG_LONG_INT instead of
20539         gl_AC_TYPE_LONG_LONG.
20540
20541 2006-10-11  Bruno Haible  <bruno@clisp.org>
20542
20543         * m4/longlong.m4: Add comments.
20544         * m4/ulonglong.m4: Likewise.
20545
20546 2006-10-10  Bruno Haible  <bruno@clisp.org>
20547
20548         Make it possible to #define stpcpy, strdup to aliases.
20549         * lib/stpcpy.c (stpcpy) [!_LIBC]: Don't undefine.
20550         * lib/strdup.c (strdup) [!_LIBC]: Don't undefine.
20551
20552 2006-10-10  Bruno Haible  <bruno@clisp.org>
20553
20554         Make it possible to #define gcd to an alias.
20555         * lib/gcd.c: Include config.h.
20556
20557 2006-10-10  Bruno Haible  <bruno@clisp.org>
20558
20559         Make it possible to #define c_isascii to an alias.
20560         * lib/c-ctype.h: Don't define the macros if NO_C_CTYPE_MACROS is
20561         defined. Undefine the macros before defining them, to avoid gcc
20562         warnings.
20563         * lib/c-ctype.c: Include config.h. Don't undefine the macros; instead,
20564         define NO_C_CTYPE_MACROS early.
20565
20566 2006-10-10  Bruno Haible  <bruno@clisp.org>
20567
20568         Make it possible to #define set_program_name to an alias.
20569         * lib/progname.c: Don't undefine set_program_name; instead, undefine
20570         ENABLE_RELOCATABLE early.
20571
20572 2006-10-10  Paul Eggert  <eggert@cs.ucla.edu>
20573
20574         Port to Tandem NSK OSS, which has 64-bit signed int but at most
20575         32-bit unsigned int.  Problem reported by Matthew Woehlke in:
20576         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00062.html
20577         More generally, don't assume that 64-bit signed int is available
20578         if unsigned int is, and vice versa.
20579         * lib/inttypes_.h (_PRIu64_PREFIX, _SCNu64_PREFIX): Depend on
20580         unsigned symbols, not on their signed counterparts.
20581         * lib/stdint_.h (uint64_t, uint_least64_t, uint_fast64_t, uintmax_t):
20582         (UINT64_MAX, UINT_LEAST64_MAX, UINT_FAST64_MAX, UINTMAX_MAX):
20583         (UINT64_C, UINTMAX_C):
20584         Likewise.
20585         * lib/strtoimax.c (strtoll): Depend on signed symbols, not their
20586         unsigned counterparts.
20587         (Have_long_long, Unsigned): New macros.
20588         (Int): Renamed from INT.
20589         (strtoimax): Use the new macros.
20590         * m4/stdint.m4 (gl_STDINT_H): Require AC_TYPE_UNSIGNED_LONG_LONG_INT
20591         and substitute HAVE_UNSIGNED_LONG_LONG_INT.
20592         * modules/inttypes (inttypes.h): Substitute
20593         HAVE_UNSIGNED_LONG_LONG_INT.
20594         * modules/stdint (stdint.h): Likewise.
20595         (Files): Add m4/ulonglong.m4.
20596
20597 2006-10-10  Bruno Haible  <bruno@clisp.org>
20598
20599         Fix a gcc -Wshadow warning.
20600         * lib/gl_anyhash_list2.h (hash_resize): Rename local variable 'index'
20601         to 'bucket'.
20602         * lib/gl_anylinked_list2.h (gl_linked_search_from_to,
20603         gl_linked_indexof_from_to): Likewise.
20604         * lib/gl_linkedhash_list.c (add_to_bucket, remove_from_bucket):
20605         Likewise.
20606         * lib/gl_anytreehash_list1.h (add_to_bucket, remove_from_bucket):
20607         Likewise.
20608         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Likewise.
20609         Reported by Eric Blake.
20610
20611 2006-10-09  Paul Eggert  <eggert@cs.ucla.edu>
20612
20613         * lib/filemode.h [HAVE_DECL_STRMODE]: Include unistd.h too,
20614         for NetBSD.  Problem reported by Bruno Haible.
20615
20616 2006-10-09  Jim Meyering  <jim@meyering.net>
20617
20618         * lib/lchown.c: Include <sys/stat.h> before "stat-macros.h".
20619         Patch from Bruno Haible.
20620
20621 2006-10-09  Jim Meyering  <jim@meyering.net>
20622
20623         * lib/fts-cycle.c (leave_dir): When "leaving" a top level directory due
20624         to FTS_SKIP, don't copy the parent's uninitialized dev/ino values.
20625         Trigger with e.g., mkdir d && valgrind ./chmod u+rwx d d
20626
20627 2006-10-08  Paul Eggert  <eggert@cs.ucla.edu>
20628
20629         Don't include <config.h> twice; this doesn't work in some cases,
20630         e.g., when config.h has "#define intmax_t long long int" and
20631         we include <config.h>, <inttypes.h>, <config.h> in that order.
20632         Problem reported by Matthew Woehlke in:
20633         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00073.html
20634         * lib/fprintftime.c: Don't include config.h or fprintftime.h.
20635         * lib/fts-cycle.c: Don't include config.h.
20636         * lib/strftime.c: Include fprintftime.h if FPRINTFTIME is defined.
20637         * lib/xstrtoimax.c: Remove copyright notice since it's short tnow.
20638         Don't include config.h or xstrtol.h.  Define STRTOL_T_MINIMUM
20639         and STRTOL_T_MAXIMUM unconditionally, since we now assume gnulib
20640         inttypes.h.
20641         * lib/xstrtoumax.c: Likewise.
20642         * lib/xstrtol.c: Include config.h and xstrtol.h after defining
20643         __strtol and the like, so that this module is more like its siblings.
20644         (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [! defined STRTOL_T_MINIMUM]:
20645         Remove; no longer needed now that we assume gnulib inttypes.h.
20646
20647 2006-10-08  Bruno Haible  <bruno@clisp.org>
20648
20649         * doc/gnulib-tool.texi: Emphasize the drawbacks of the --symlink
20650         option.
20651
20652 2006-10-07  Jim Meyering  <jim@meyering.net>
20653
20654         * modules/inttypes (inttypes.h): Revert what seems to have been
20655         an inadvertent part of today's change: use "|", not "/" in the
20656         substitution for the "/"-containing string, $(ABSOLUTE_INTTYPES_H).
20657
20658 2006-10-07  Bruno Haible  <bruno@clisp.org>
20659
20660         * modules/sublist: New file.
20661
20662 2006-10-07  Bruno Haible  <bruno@clisp.org>
20663
20664         * modules/alloca-opt (alloca.h): Add a "DO NOT EDIT" comment.
20665         * modules/argz (argz.h): Likewise.
20666         * modules/arpa_inet (arpa/inet.h): Likewise.
20667         * modules/byteswap (byteswap.h): Likewise.
20668         * modules/configmake (configmake.h): Likewise.
20669         * modules/fcntl (fcntl.h): Likewise.
20670         * modules/fnmatch (fnmatch.h): Likewise.
20671         * modules/getopt (getopt.h): Likewise.
20672         * modules/glob (glob.h): Likewise.
20673         * modules/inttypes (inttypes.h): Likewise.
20674         * modules/netinet_in (netinet/in.h): Likewise.
20675         * modules/poll (poll.h): Likewise.
20676         * modules/stdbool (stdbool.h): Likewise.
20677         * modules/stdint (stdint.h): Likewise.
20678         * modules/sys_select (sys/select.h): Likewise.
20679         * modules/sys_socket (sys/socket.h): Likewise.
20680         * modules/sys_stat (sys/stat.h): Likewise.
20681         * modules/sysexits (sysexits.h): Likewise.
20682         * modules/unistd (unistd.h): Likewise.
20683         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
20684         Add a "DO NOT EDIT" comment to the generated file.
20685         (func_import): Likewise for gnulib-comp.m4.
20686
20687 2006-10-07  Bruno Haible  <bruno@clisp.org>
20688
20689         * lib/gl_sublist.h: New file.
20690         * lib/gl_sublist.c: New file.
20691
20692 2006-10-06  Paul Eggert  <eggert@cs.ucla.edu>
20693
20694         * lib/mkancesdirs.c (mkancesdirs): Pass to MAKE_DIR both the full file
20695         name (relative to the original working directory) and the file
20696         name component (relative to the temporary working directory).  All
20697         callers changed.
20698         * lib/mkancesdirs.h (mkancesdirs): Adjust prototype to match.
20699         * lib/mkdir-p.c (make_dir_parents): Likewise.
20700         * lib/mkdir-p.h (make_dir_parents): Likewise.
20701
20702 2006-10-06  Eric Blake  <ebb9@byu.net>
20703
20704         Define several macros for use by the clean-temp module.
20705         * m4/close-stream.m4 (gl_CLOSE_STREAM): Define GNULIB_CLOSE_STREAM.
20706         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Define GNULIB_FCNTL_SAFER.
20707         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Define GNULIB_FOPEN_SAFER.
20708
20709         * lib/clean-temp.h (close_stream_temp): New declaration.
20710         * lib/clean-temp.c (includes): Pull in headers according to what
20711         other modules are in use.
20712         (close_stream_temp) [GNULIB_CLOSE_STREAM]: New function.
20713
20714 2006-10-06  Bruno Haible  <bruno@clisp.org>
20715
20716         * lib/javacomp.c (write_temp_file): Use fopen_temp, fwriteerror_temp
20717         instead of fopen, fwriteerror.
20718
20719 2006-10-06  Bruno Haible  <bruno@clisp.org>
20720
20721         * lib/clean-temp.h (cleanup_temp_file, cleanup_temp_subdir,
20722         cleanup_temp_dir_contents, cleanup_temp_dir): Change return type to
20723         int.
20724         * lib/clean-temp.c (do_unlink, do_rmdir, cleanup_temp_file,
20725         cleanup_temp_subdir, cleanup_temp_dir_contents, cleanup_temp_dir):
20726         Return an error indicator.
20727         Suggested by Eric Blake.
20728
20729 2006-10-06  Bruno Haible  <bruno@clisp.org>
20730
20731         * lib/clean-temp.c (PATH_MAX): Provide a fallback for GNU Hurd.
20732         Reported by Eric Blake.
20733
20734 2006-10-06  Bruno Haible  <bruno@clisp.org>
20735
20736         * modules/closeout (Description): Mention stderr too.
20737
20738 2006-10-06  Bruno Haible  <bruno@clisp.org>
20739         and Paul Eggert  <eggert@cs.ucla.edu>
20740
20741         * lib/closeout.c (close_stdout): Also close stderr.
20742         * lib/closeout.h: Update comment.
20743
20744 2006-10-05  Paul Eggert  <eggert@cs.ucla.edu>
20745
20746         Fix some Darwin-7.9.0 porting problems reported by Bruno Haible in
20747         <http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00063.html>.
20748         * lib/dirchownmod.c: Include lchown.h.
20749         * lib/lchown.c: Don't include files that lchown.h now includes.
20750         Don't declare chown, since lchown.h now does that.
20751         * lib/lchown.h: Include errno.h, sys/types.h, unistd.h.
20752         (lchown): Define to rpl_chown if lchown is declared but
20753         does not exist.  Declare using a prototype if lchown is not
20754         declared.  Add a copyright notice.
20755         * lib/mkstemp.h: Include <unistd.h>.
20756         * lib/openat.c: Include lchown.h.
20757
20758         * lib/fcntl_.h (O_NOFOLLOW): Don't depend on O_NOFOLLOW_IS_INEFFECTIVE;
20759         we now test for that separately.
20760         * lib/fts.c (fts_safe_changedir): Inspect HAVE_WORKING_O_NOFOLLOW
20761         rather than O_NOFOLLOW, when testing whether it's possible to
20762         avoid a race condition reliably.
20763         * lib/savewd.c (savewd_chdir): Likewise.
20764
20765         Remove macros that are no longer needed now that stdint.h is
20766         reliable.
20767         * lib/fsusage.c (UINTMAX_MAX): Remove.
20768         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Remove.
20769         * lib/utimecmp.c (SIZE_MAX): Remove.
20770
20771         * m4/lchown.m4 (gl_FUNC_LCHOWN): Check whether lchown is declared.
20772
20773         * m4/fcntl_h.m4 (gl_FCNTL_H): Define HAVE_WORKING_O_NOFOLLOW instead
20774         of O_NOFOLLOW_IS_INEFFECTIVE.  Define HAVE_WORKING_O_NOATIME if
20775         O_NOATIME works.
20776
20777 2006-10-05  Bruno Haible  <bruno@clisp.org>
20778
20779         * lib/gl_list.h (gl_sortedlist_search_from_to,
20780         gl_sortedlist_indexof_from_to): New declarations.
20781         (gl_list_implementation): New fields sortedlist_search_from_to,
20782         sortedlist_indexof_from_to.
20783         (gl_sortedlist_search_from_to, gl_sortedlist_indexof_from_to): New
20784         inline functions.
20785         * lib/gl_list.c (gl_sortedlist_search_from_to,
20786         gl_sortedlist_indexof_from_to): New functions.
20787         * lib/gl_array_list.c (gl_array_sortedlist_indexof_from_to): New
20788         function.
20789         (gl_array_sortedlist_indexof, gl_array_sortedlist_search): Use it.
20790         (gl_array_sortedlist_search_from_to): New function.
20791         (gl_array_list_implementation): Update.
20792         * lib/gl_carray_list.c (gl_carray_sortedlist_indexof_from_to): New
20793         function.
20794         (gl_carray_sortedlist_indexof, gl_carray_sortedlist_search): Use it.
20795         (gl_carray_sortedlist_search_from_to): New function.
20796         (gl_carray_list_implementation): Update.
20797         * lib/gl_anylinked_list2.h (gl_linked_sortedlist_search_from_to,
20798         gl_linked_sortedlist_indexof_from_to): New functions.
20799         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
20800         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
20801         * lib/gl_anytree_list2.h (gl_tree_sortedlist_search_from_to,
20802         gl_tree_sortedlist_indexof_from_to): New functions.
20803         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
20804         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
20805         Update.
20806         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
20807         * lib/gl_rbtreehash_list.c (gl_avltreehash_list_implementation):
20808         Update.
20809
20810 2006-10-05  Bruno Haible  <bruno@clisp.org>
20811
20812         * lib/gl_list.h (gl_list_search_from, gl_list_search_from_to,
20813         gl_list_indexof_from, gl_list_indexof_from_to): New declarations.
20814         (struct gl_list_implementation): Add fields search_from_to,
20815         indexof_from_to. Remove fields search, indexof.
20816         (gl_list_search): Use the search_from_to method.
20817         (gl_list_search_from, gl_list_search_from_to): New functions.
20818         (gl_list_indexof): Use the indexof_from_to method.
20819         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
20820         * lib/gl_list.c (gl_list_search): Use the search_from_to method.
20821         (gl_list_search_from, gl_list_search_from_to): New functions.
20822         (gl_list_indexof): Use the indexof_from_to method.
20823         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
20824         * lib/gl_array_list.c (gl_array_indexof_from_to): Renamed from
20825         gl_array_indexof. Add start_index, end_index arguments.
20826         (gl_array_search_from_to): Renamed from gl_array_search. Add
20827         start_index, end_index arguments.
20828         (gl_array_remove, gl_array_list_implementation): Update.
20829         * lib/gl_carray_list.c (gl_carray_indexof_from_to): Renamed from
20830         gl_carray_indexof. Add start_index, end_index arguments.
20831         (gl_carray_search_from_to): Renamed from gl_carray_search. Add
20832         start_index, end_index arguments.
20833         (gl_carray_remove, gl_carray_list_implementation): Update.
20834         * lib/gl_anylinked_list2.h (gl_linked_search_from_to): Renamed from
20835         gl_linked_search. Add start_index, end_index arguments.
20836         (gl_linked_indexof_from_to): Renamed from gl_linked_indexof. Add
20837         start_index, end_index arguments.
20838         (gl_linked_remove): Update.
20839         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
20840         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
20841         * lib/gl_anytree_list1.h (iterstack_item_t): Change type of 'rightp'
20842         field to 'size_t'.
20843         * lib/gl_anytree_list2.h (gl_tree_search_from_to): Renamed from
20844         gl_tree_search. Add start_index, end_index arguments.
20845         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
20846         start_index, end_index arguments.
20847         (gl_tree_remove): Update.
20848         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
20849         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
20850         * lib/gl_anytreehash_list1.h (compare_position_threshold): New
20851         function.
20852         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Renamed from
20853         gl_tree_search. Add start_index, end_index arguments.
20854         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
20855         start_index, end_index arguments.
20856         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
20857         Update.
20858         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
20859
20860 2006-10-05  Bruno Haible  <bruno@clisp.org>
20861
20862         * modules/fwriteerror (configure.ac): Define GNULIB_FWRITEERROR.
20863
20864         * lib/clean-temp.h (open_temp, fopen_temp, close_temp, fclose_temp,
20865         fwriteerror_temp): New declarations.
20866         * lib/clean-temp.c (uintptr_t): Provide fallback definition.
20867         (descriptors): New variable.
20868         (cleanup): First, close the descriptors.
20869         (register_fd, unregister_fd, open_temp, fopen_temp, close_temp,
20870         fclose_temp, fwriteerror_temp): New functions.
20871
20872 2006-10-04  Jim Meyering  <jim@meyering.net>
20873
20874         * lib/fts.c (fts_open): Tiny comment change.
20875
20876 2006-10-04  Bruno Haible  <bruno@clisp.org>
20877
20878         Make it possible to invoke AC_GNU_SOURCE after gl_LOCK_EARLY.
20879         * m4/lock.m4 (gl_LOCK_EARLY_BODY): New macro, extracted code from
20880         gl_LOCK_BODY.
20881         (gl_LOCK_EARLY): Require gl_LOCK_EARLY_BODY, not gl_LOCK_BODY.
20882         (gl_LOCK_BODY): Remove settings of CPPFLAGS, now done in
20883         gl_LOCK_EARLY_BODY.
20884         (gl_LOCK): Require gl_LOCK_BODY.
20885
20886 2006-10-04  Bruno Haible  <bruno@clisp.org>
20887
20888         * lib/gl_oset.h (gl_setelement_threshold_fn): New type.
20889         (gl_oset_search_atleast): New declaration.
20890         (struct gl_oset_implementation): Add field 'search_atleast'.
20891         (gl_oset_search_atleast): New inline function.
20892         * lib/gl_oset.c (gl_oset_search_atleast): New function.
20893         * lib/gl_array_oset.c (gl_array_search_atleast): New function.
20894         (gl_array_oset_implementation): Update.
20895         * lib/gl_anytree_oset.h (gl_tree_search_atleast): New function.
20896         * lib/gl_avltree_oset.c (gl_avltree_oset_implementation): Update.
20897         * lib/gl_rbtree_oset.c (gl_rbtree_oset_implementation): Update.
20898
20899 2006-10-04  Bruno Haible  <bruno@clisp.org>
20900
20901         * lib/fatal-signal.c (fatal_signals) [WOE32]: Add the SIGBREAK signal.
20902
20903 2006-10-03  Bruno Haible  <bruno@clisp.org>
20904
20905         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Renamed
20906         from gl_avltreehash_list_implementation.
20907
20908 2006-10-03  Bruno Haible  <bruno@clisp.org>
20909
20910         * lib/gl_oset.c (gl_oset_add): Fix return type.
20911
20912 2006-10-02  Paolo Bonzini  <bonzini@gnu.org>  (tiny change)
20913
20914         * lib/quotearg.c (mbstate_t) [!HAVE_MBRTOWC]: #define to int.
20915
20916 2006-10-02  Eric Blake  <ebb9@byu.net>
20917
20918         * modules/strnlen (Depends-on): Add extensions.
20919
20920 2006-10-02  Eric Blake  <ebb9@byu.net>
20921
20922         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use autoconf's
20923         definition in 2.60+.
20924
20925 2006-10-02  Dmitry V. Levin  <ldv@altlinux.org>
20926
20927         * lib/fts.c (fts_close, fts_build, fts_palloc): Remove redundant
20928         checks.
20929
20930 2006-10-02  Bruno Haible  <bruno@clisp.org>
20931
20932         * gnulib-tool (func_emit_lib_Makefile_am): Don't add no-dependencies
20933         to the AUTOMAKE_OPTIONS.
20934         Reported by Jim Meyering.
20935
20936 2006-09-29  Paul Eggert  <eggert@cs.ucla.edu>
20937
20938         Work around bug in Solaris 10 /proc file system:
20939         /proc/self/fd/NNN/.. isn't the parent directory of
20940         the directory whose file descriptor is NNN.  This needs to
20941         be worked around at run time, not compile time, since a
20942         program might be built on Solaris 8, where things work, and
20943         run on Solaris 10.
20944         * lib/openat-priv.h (BUILD_PROC_NAME): Remove.  All callers changed
20945         to use the following interface instead:
20946         (OPENAT_BUFFER_SIZE): New macro.
20947         (openat_proc_name): New function.
20948         * lib/at-func.c (AT_FUNC_NAME): Adjust to above changes.
20949         * lib/openat.c (openat_permissive, openat_needs_fchdir, fdopendir):
20950         Likewise.
20951         * lib/openat-proc.c: New file.
20952         * modules/openat (Files): Add lib/openat-proc.c.
20953         (Depends-on): Add same-inode, stdbool.
20954         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBOBJ(openat-proc).
20955
20956 2006-09-29  Bruno Haible  <bruno@clisp.org>
20957
20958         * lib/fwriteerror.h (fwriteerror_no_ebadf): New declaration.
20959         * lib/(do_fwriteerror): Renamed from fwriteerror. Add ignore_ebadf
20960         argument. Set stdout_closed before testing for ferror, not after.
20961         (fwriteerror, fwriteerror_no_ebadf): New functions.
20962
20963 2006-09-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20964
20965         * m4/intmax.m4 (gt_TYPE_INTMAX_T): Avoid unused variables warning.
20966
20967 2006-09-28  Paolo Bonzini  <bonzini@gnu.org>
20968
20969         * lib/poll.c (rpl_poll) [__APPLE__]: Use FIONREAD instead of MSG_PEEK.
20970         * m4/poll.m4: Look for sys/ioctl.h and sys/filio.h.
20971
20972 2006-09-28  Jim Meyering  <jim@meyering.net>
20973
20974         * lib/mkdir-p.c: Include "dirchownmod.h", not "dirchownmod.c".
20975         Include <unistd.h>.
20976
20977 2006-09-28  Bruno Haible  <bruno@clisp.org>
20978
20979         * modules/avltreehash-list (Depends-on): Add stdint, remove size_max.
20980         * modules/linkedhash-list (Depends-on): Likewise.
20981         * modules/rbtreehash-list (Depends-on): Likewise.
20982
20983 2006-09-28  Bruno Haible  <bruno@clisp.org>
20984
20985         * lib/strndup.h: Simplify the redefinition of strndup.
20986         (_GL_CONCAT, _GL_XCONCAT, __STRNDUP_ID): Remove macros.
20987         * m4/strndup.m4 (gl_FUNC_STRNDUP): Don't define __STRNDUP_PREFIX.
20988
20989 2006-09-28  Bruno Haible  <bruno@clisp.org>
20990
20991         * lib/gl_avltreehash_list.c: Include <stdint.h> instead of size_max.h.
20992         * lib/gl_linkedhash_list.c: Likewise.
20993         * lib/gl_rbtreehash_list.c: Likewise.
20994
20995 2006-09-27  Paul Eggert  <eggert@cs.ucla.edu>
20996
20997         * lib/canon-host.c (canon_host_r): Work around bug in Darwin 7.9.0
20998         getaddrinfo.
20999
21000         * lib/__fpending.h: Don't include <stdio_ext.h> unless
21001         HAVE_DECL___FPENDING.  This avoids a bug with lsbcc, where
21002         it causes <stdio_ext.h> to cause a compile-time error.
21003         Problem reported by Nelson H. F. Beebe.
21004         * lib/getpass.c: Likewise, except for HAVE_DECL___FSETLOCKING instead
21005         of HAVE_DECL___PENDING.
21006
21007         * m4/fpending.m4 (gl_FUNC_FPENDING): Check for stdio_ext at most once.
21008         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for __fsetlocking's
21009         declaration.
21010
21011 2006-09-27  Jim Meyering  <jim@meyering.net>
21012
21013         This file could end up with a definition for a function
21014         named __strndup, rather than rpl_strndup on a system with
21015         incomplete weak_alias support.
21016         * lib/strndup.c (strndup): Rename from __strndup.
21017         Remove #defines that used to map __strndup to strndup.
21018         Don't use K&R prototypes.
21019         Remove LIBC-related code, since this file is not sync'd with glibc.
21020         * lib/strndup.h: Revamp, accordingly.
21021         * m4/strndup.m4: Modernize.
21022
21023 2006-09-26  Paul Eggert  <eggert@cs.ucla.edu>
21024
21025         * modules/savewd (Depends-on): Add 'raise'.
21026         * lib/savewd.c: Include <signal.h>, for 'raise'.
21027
21028 2006-09-26  Jim Meyering  <jim@meyering.net>
21029
21030         * m4/acl.m4 (AC_FUNC_ACL): Disable ACL support altogether
21031         when we detect Darwin 8.7.0's acl_get_file bug.
21032         Rearrange to perform the new (below) run-test while $LIBS
21033         contains any acl-related library.  Set USE_ACL at the end.
21034         (gl_ACL_GET_FILE): New function.
21035
21036 2006-09-26  Eric Blake  <ebb9@byu.net>
21037
21038         * lib/verror.c: Include <config.h> unconditionally.
21039
21040 2006-09-25  Paul Eggert  <eggert@cs.ucla.edu>
21041
21042         * modules/clock-time (Maintainer): Add self.
21043         * modules/getlogin_r (Depends-on): Add extensions.
21044
21045 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21046
21047         * modules/clock-time: New module.
21048         * modules/nanosleep (Depends-on): Add clock-time.
21049         * modules/gethrxtime (Depends-on): Likewise.
21050         * modules/gettime (Depends-on): Likewise.
21051         * modules/settime (Depends-on): Likewise.
21052
21053         * modules/fts-lgpl: Depend on openat.
21054         * modules/mkancesdirs: Depend on savewd.
21055         * modules/mkdir-p: Likewise.
21056
21057 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21058
21059         * m4/host-os.m4 (gl_HOST_OS): Require AC_CANONICAL_HOST.
21060
21061         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Rename cache variable from
21062         `gl_have_arbitrary_file_name_length_limit' to
21063         `gl_cv_have_arbitrary_file_name_length_limit', so that caching
21064         actually works between configure runs.
21065
21066 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21067             Bruno Haible  <bruno@clisp.org>
21068
21069         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Include <string.h>.
21070
21071 2006-09-25  Jim Meyering  <jim@meyering.net>
21072
21073         * m4/fcntl_h.m4 (gl_FCNTL_H): Fix typo in test for failed open.
21074         This typo caused coreutils/tests/dd/misc to fail on Darwin 8.7.0.
21075
21076 2006-09-25  Eric Blake  <ebb9@byu.net>
21077
21078         * gnulib-tool (func_import, func_create_testdir): Fix typos in
21079         exec's in 2006-09-18 patch when shuffling fds.
21080
21081 2006-09-25  Bruno Haible  <bruno@clisp.org>
21082
21083         * m4/getloadavg.m4 (gl_GETLOADAVG): Fix directory in error message.
21084         Reported by Jim Meyering.
21085
21086 2006-09-24  Jim Meyering  <jim@meyering.net>
21087
21088         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Don't use '>' to
21089         compare a pointer against a literal "0".  That caused failures with
21090         at least HP-UX's hpcc.
21091
21092 2006-09-22  Simon Josefsson  <jas@extundo.com>
21093
21094         * modules/gc-sha1:
21095         * modules/gc-md4:
21096         * modules/gc-hmac-sha1:
21097         * modules/gc-hmac-md5:
21098         * modules/gc-des:
21099         * modules/gc-arcfour: Distribute more files.
21100
21101 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21102
21103         * lib/gl_anylinked_list2.h [lint] (gl_linked_iterator)
21104         (gl_linked_iterator_from_to): Initialize struct completely.
21105         * lib/gl_anytree_list2.h [lint] (gl_tree_iterator): Likewise.
21106         (gl_tree_iterator_from_to): Likewise
21107         * lib/gl_anytree_oset.h [lint] (gl_tree_iterator): Likewise.
21108         * lib/gl_array_list.c [lint] (gl_array_iterator)
21109         (gl_array_iterator_from_to): Likewise.
21110         * lib/gl_array_oset.c [lint] (gl_array_iterator): Likewise.
21111         * lib/gl_carray_list.c [lint] (gl_carray_iterator)
21112         (gl_carray_iterator_from_to): Likewise.
21113
21114         * lib/gc-gnulib.c [GC_USE_HMAC_SHA1]: include hmac.h for hmac_sha1.
21115         * lib/md4.c (md4_process_block): Remove unused variable.
21116         * lib/rijndael-api-fst.c (rijndaelBlockDecrypt): GCC suggests
21117         parentheses for clarity.
21118
21119 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21120
21121         * modules/bison-i18n (Depends-on): Add gettext.
21122
21123 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21124
21125         * m4/fsusage.m4 (gl_STATFS_TRUNCATES): Avoid unused variable.
21126         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Likewise.
21127         * m4/jm-winsz1.m4 (gl_HEADER_TIOCGWINSZ_IN_TERMIOS_H): Likewise;
21128         also add missing comma that caused broken test.
21129         * m4/link-follow.m4 (gl_AC_FUNC_LINK_FOLLOWS_SYMLINK): Include
21130         stdlib.h, for `abort'.
21131         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Avoid unused
21132         variables.
21133         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Check for and
21134         include unistd.h if present, for `rmdir'.
21135         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Avoid unused
21136         variables.
21137         * m4/putenv.m4 (gl_FUNC_PUTENV): Rewrite using AC_RUN_IFELSE, and
21138         in the process include standard headers for prototypes.
21139         * m4/readutmp.m4 (gl_READUTMP): Require AC_GNU_SOURCE, so utmpxname
21140         gets declared on GNU/Linux.
21141         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Check for and include
21142         unistd.h, for `rmdir'.
21143         * m4/time_r.m4 (gl_TIME_R): Avoid unused variables.
21144
21145         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Avoid expression that is
21146         always true.
21147         * m4/strndup.m4 (gl_FUNC_STRNDUP): include stdlib.h, for `free'.
21148
21149         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Avoid gcc -Wall warnings.
21150
21151 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21152
21153         * gnulib-tool (func_version): Create output all at once.  This
21154         may help avoid triggering unnecessary SIGPIPEs, and at any
21155         rate it doesn't hurt.
21156
21157 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21158             Bruno Haible  <bruno@clisp.org>
21159
21160         * m4/lock.m4 (gl_LOCK_BODY): Avoid unused variables warning.
21161         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
21162         * m4/signed.m4 (bh_C_SIGNED): Likewise.
21163
21164         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): New macro.
21165         (gl_FUNC_VASPRINTF): Invoke it.
21166
21167 2006-09-22  Bruno Haible  <bruno@clisp.org>
21168
21169         * m4/getloadavg.m4 (gl_GETLOADAVG): Expect the directory of
21170         getloadavg.c as first argument.
21171
21172 2006-09-22  Bruno Haible  <bruno@clisp.org>
21173
21174         * gnulib-tool (func_import, func_create_testdir): Set gl_source_base
21175         at the beginning of the gl_INIT macro.
21176         * modules/getloadavg (configure.ac): Pass $gl_source_base to
21177         gl_GETLOADAVG.
21178
21179 2006-09-22  Bruno Haible  <bruno@clisp.org>
21180
21181         * gnulib-tool (func_create_megatestdir): Don't include the config-h
21182         module.
21183         Suggested by Ralf Wildenhues.
21184
21185 2006-09-20  Paul Eggert  <eggert@cs.ucla.edu>
21186
21187         Import this patch from libc:
21188
21189         2006-09-06  Jakub Jelinek  <jakub@redhat.com>
21190
21191         * lib/regex_internal.c (re_string_reconstruct): Handle
21192         offset < pstr->valid_raw_len && pstr->offsets_needed case.
21193         Ensure no bytes read before raw_mbs array.  Pass a saved copy of
21194         pstr->valid_len - 1 rather than pstr->valid_raw_len - 1 to
21195         re_string_context_at.
21196
21197         * m4/regex.m4 (gl_REGEX): Check for locale.h, since the test
21198         now requires it.
21199         (gl_PREREQ_REGEX): Don't check for locale.h any more, since
21200         gl_REGEX now does it for us.
21201         (gl_REGEX): Add test taken from
21202         http://sourceware.org/ml/libc-hacker/2006-09/msg00008.html.
21203
21204         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require AC_SYS_LARGEFILE.
21205         Check that large offsets work.  Modernize Autoconf usages.
21206         Prefer "yes" to mean a good thing rather than a bad.
21207         Don't put "#define mkstemp" in config.h, as this might interfere
21208         with standard system headers that "#define mkstemp mkstemp64".
21209
21210         * modules/mkstemp (Depends-on): Add extensions, so that
21211         mkstemp is visible on some platforms.
21212         (Makefile.am): Add mkstemp.h to EXTRA_DIST.
21213         (Include): Change to "mkstemp.h" from <stdlib.h>.
21214         (Files): Add mkstemp.h.
21215
21216         * lib/mkstemp.h: New file, since some standard headers
21217         #define mkstemp.
21218         * lib/mkstemp.c: Revamp to put the !_LIBC code together.
21219         Include "mkstemp.h".
21220         Make the _LIBC code resemble glibc original more,
21221         e.g., use K&R style.
21222         * lib/mkstemp-safer.c: Include "mkstemp.h" instead of <stdlib.h>.
21223         (mkstemp): Remove, since mkstemp.h does this for us.
21224         * lib/stdlib--.h: Include mkstemp.h.
21225
21226         Import this patch from libc:
21227
21228         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
21229
21230         * lib/tempname.c (__gen_tempname): Change attempts_min
21231         into a macro.  Use preprocessor to decide how to initialize
21232         attempts [Coverity CID 67].
21233
21234 2006-09-20  Bruno Haible  <bruno@clisp.org>
21235
21236         * lib/mkdtemp.c: Import from libc.
21237         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
21238                 * sysdeps/posix/tempname.c (__gen_tempname): Change
21239                 attempts_min into a macro.  Use preprocessor to decide how to
21240                 initialize attempts [Coverity CID 67].
21241         2001-11-27  Paul Eggert  <eggert@twinsun.com>
21242                 * sysdeps/posix/tempname.c (__gen_tempname): Try at least
21243                 ATTEMPTS_MIN or TMP_MAX times, whichever is greater.
21244
21245 2006-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21246
21247         * gnulib-tool (func_exit): New function, to allow to pass the
21248         exit status portably through the trap.  Use everywhere.
21249         (--help, --version): Signal a write error.
21250         (trap): catch SIGPIPE, for write errors.
21251         Exit at the end of the trap, with the correct exit status.
21252
21253 2006-09-19  Karl Berry  <karl@gnu.org>
21254
21255         * doc/gnulib.texi: note about the license texinfo files.
21256
21257 2006-09-19  Eric Blake  <ebb9@byu.net>
21258
21259         * gnulib-tool: Avoid space-tab.
21260
21261 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
21262
21263         * lib/getaddrinfo.c (getaddrinfo) [defined HAVE_IPV6]: Fix typo
21264         that prevented coreutils 6.1 from building.  Problem reported
21265         by Petter Reinholdtsen.
21266
21267 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
21268
21269         * gnulib-tool (avoidlist): Fix typo that broke options like
21270         --avoid=lock that are used by coreutils bootstrap.
21271
21272 2006-09-18  Mark D. Baushke  <mdb@gnu.org>
21273
21274         * m4/inttypes.m4 (gl_INTTYPES_H): Quote "test" args
21275         more systematically.
21276
21277 2006-09-18  Jim Meyering  <jim@meyering.net>
21278
21279         * lib/savewd.c (savewd_restore): Don't shadow: s/status/child_status/.
21280
21281 2006-09-18  Bruno Haible  <bruno@clisp.org>
21282
21283         * modules/inttypes (Files): Remove m4/inttypes-h.m4.
21284
21285 2006-09-18  Bruno Haible  <bruno@clisp.org>
21286
21287         * m4/inttypes-h.m4 (gl_HEADER_INTTYPES_H): Remove macro.
21288         * m4/inttypes-pri.m4: Require autoconf >= 2.52.
21289         (gt_INTTYPES_PRI): Invoke AC_CHECK_HEADERS on inttypes.h. Test
21290         ac_cv_header_inttypes_h instead of gl_cv_header_inttypes_h.
21291         * m4/gettext.m4: Require autoconf >= 2.52.
21292         (gt_INTL_SUBDIR_CORE): Invoke AC_CHECK_HEADERS on inttypes.h.
21293         * m4/inttypes.m4 (gl_INTTYPES_H): Test ac_cv_header_inttypes_h instead
21294         of gl_cv_header_inttypes_h.
21295
21296 2006-09-18  Bruno Haible  <bruno@clisp.org>
21297
21298         * lib/javaversion.c: Include configmake.h.
21299
21300 2006-09-18  Bruno Haible  <bruno@clisp.org>
21301
21302         * gnulib-tool (func_import, func_create_testdir): Use exec tricks to
21303         avoid that the while loops be executed in a subshell.
21304
21305 2006-09-18  Bruno Haible  <bruno@clisp.org>
21306
21307         * MODULES.html.sh (func_module): Break long lines.
21308         Suggested by Bruce Korb <bkorb@gnu.org>.
21309
21310 2006-09-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21311
21312         Speed up by a factor of 1.12.
21313         * gnulib-tool (nl): New variable.
21314         (func_import): Rewrite include directive extraction to only read each
21315         directive once.
21316
21317 2006-09-17  Bruno Haible  <bruno@clisp.org>
21318
21319         * modules/javaversion (Makefile.am): Remove DEFS setting.
21320         (Depends-on): Add configmake, for PKGDATADIR definition.
21321
21322 2006-09-17  Bruno Haible  <bruno@clisp.org>
21323
21324         * gnulib-tool (func_create_testdir): Rewrite all files at once.
21325
21326 2006-09-17  Bruno Haible  <bruno@clisp.org>
21327
21328         * gnulib-tool (func_append): New function, stolen from libtool.m4.
21329         (func_modules_transitive_closure, func_modules_add_dummy,
21330         func_modules_to_filelist, func_import, func_create_testdir,
21331         func_create_megatestdir, ...): Use it wherever possible.
21332         Suggested by Ralf Wildenhues.
21333
21334 2006-09-16  Karl Berry  <karl@gnu.org>
21335
21336         * doc/fdl.texi (ADDENDUM): switch to @heading from @appendixsubsec,
21337         to avoid sectioning errors.
21338         * doc/lgpl.texi, gpl.texi (Copying): downcase @unnumbered title.
21339         [ifinfo]: blank line after @center-ed titles.
21340         * doc/lgpl.texi (Library Copying): Rename main node to GNU LGPL.
21341         Spell FSF address consistently with others.
21342         (These changes approved by rms.)
21343
21344 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21345
21346         Speed up by a factor of 1.61.
21347         * gnulib-tool (func_modules_transitive_closure): Rewrite to not check
21348         already checked module names again.
21349
21350 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21351
21352         Speed up by a factor of 1.13.
21353         * gnulib-tool (func_import): Rewrite all old_files at once; likewise
21354         for new_files, and the input to func_add_or_update.
21355
21356 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21357
21358         * gnulib-tool (func_all_modules, func_modules_to_filelist, func_import,
21359         func_create_testdir, ...): Change 'sort | uniq' to 'sort -u'.
21360
21361 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
21362
21363         * modules/mkancesdirs (Depends-on): Add fcntl.
21364         * modules/savewd: New file.
21365         * MODULES.html.sh (File system functions): Add savewd.
21366
21367         * modules/configmake (Makefile.am): Add support for the
21368         Automake-supplied PKGLIBDIR, PKGINCLUDEDIR, PKGDATADIR.
21369
21370 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
21371
21372         * m4/savewd.m4: New file.
21373
21374 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
21375
21376         * lib/dirchownmod.c: Don't include fcntl.h; no longer needed.
21377         (dirchownmod): New arg FD.  All callers changed.
21378         Use FD rather than opening the directory ourself, as opening is
21379         now the caller's responsibility.
21380         * lib/dirchownmod.h: Likewise.
21381         * lib/mkancesdirs.c: Include <sys/types.h>, for portability to older
21382         hosts that require <sys/types.h> before <sys/stat.h>.  Include
21383         fcntl.h, savewd.h, and unistd.h, not dirname.h and stat-macros.h.
21384         (test_dir): Remove.
21385         (mkancesdirs): Return length of prefix of FILE that has already
21386         been made, or -2 if there is a child doing the work.  Redo
21387         algorithm so that it is O(N) rather than O(N**2).  Optimize away
21388         ".", and treat ".." specially since it might stray back into
21389         already-created areas.  Use a subprocess if necessary.  New arg
21390         WD; all users changed.  MAKE_DIR function should now return 1
21391         if it creates a directory that is not readable.  Return -2 if
21392         a child process is spun off.
21393         * lib/mkancesdirs.h: Include <stddef.h>, for ptrdiff_t.
21394         Adjust signature to match code.
21395         * lib/mkdir-p.c: Include dirname.h, for IS_ABSOLUTE_FILE_NAME.
21396         (make_dir_parents): Use a subprocess if necessary.  New arg WD;
21397         all users changed.
21398         * lib/savewd.c, lib/savewd.h: New files.
21399
21400 2006-09-15  Jim Meyering  <jim@meyering.net>
21401
21402         * modules/rename-dest-slash: New module.
21403         * MODULES.html.sh (posix_compat): Add it here.
21404
21405         * modules/rename: Reflect vb_FUNC_RENAME -> gl_FUNC_RENAME change.
21406
21407 2006-09-15  Jim Meyering  <jim@meyering.net>
21408
21409         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH): New
21410         file.
21411
21412         * m4/rename.m4 (gl_FUNC_RENAME): Rename from vb_FUNC_RENAME.
21413
21414 2006-09-15  Jim Meyering  <jim@meyering.net>
21415
21416         * lib/rename-dest-slash.c (has_trailing_slash): Use
21417         FILE_SYSTEM_PREFIX_LEN, for non-POSIX systems.
21418         (rpl_rename_dest_slash): Perform the cheaper trailing slash
21419         test before testing whether SRC is a directory.
21420         Suggestions from Bruno Haible.
21421
21422         Avoid a warning about an unused variable.
21423         * lib/regex_internal.c (re_dfa_add_node): Move declaration of "type"
21424         into the #ifdef block where it's used.
21425
21426         * lib/rename-dest-slash.c: New file.
21427
21428 2006-09-14  Bruno Haible  <bruno@clisp.org>
21429
21430         * lib/allocsa.c: Include <config.h> unconditionally.
21431         * lib/asnprintf.c: Likewise.
21432         * lib/asprintf.c: Likewise.
21433         * lib/c-strcasecmp.c: Likewise.
21434         * lib/c-strcasestr.c: Likewise.
21435         * lib/c-strncasecmp.c: Likewise.
21436         * lib/c-strstr.c: Likewise.
21437         * lib/classpath.c: Likewise.
21438         * lib/clean-temp.c: Likewise.
21439         * lib/concatpath.c: Likewise.
21440         * lib/copy-file.c: Likewise.
21441         * lib/csharpcomp.c: Likewise.
21442         * lib/csharpexec.c: Likewise.
21443         * lib/execute.c: Likewise.
21444         * lib/fatal-signal.c: Likewise.
21445         * lib/findprog.c: Likewise.
21446         * lib/fwriteerror.c: Likewise.
21447         * lib/gl_array_list.c: Likewise.
21448         * lib/gl_array_oset.c: Likewise.
21449         * lib/gl_avltree_list.c: Likewise.
21450         * lib/gl_avltree_oset.c: Likewise.
21451         * lib/gl_avltreehash_list.c: Likewise.
21452         * lib/gl_carray_list.c: Likewise.
21453         * lib/gl_linked_list.c: Likewise.
21454         * lib/gl_linkedhash_list.c: Likewise.
21455         * lib/gl_list.c: Likewise.
21456         * lib/gl_oset.c: Likewise.
21457         * lib/gl_rbtree_list.c: Likewise.
21458         * lib/gl_rbtree_oset.c: Likewise.
21459         * lib/gl_rbtreehash_list.c: Likewise.
21460         * lib/imaxabs.c: Likewise.
21461         * lib/imaxdiv.c: Likewise.
21462         * lib/javacomp.c: Likewise.
21463         * lib/javaexec.c: Likewise.
21464         * lib/javaversion.c: Likewise.
21465         * lib/linebreak.c: Likewise.
21466         * lib/localcharset.c: Likewise.
21467         * lib/lock.c: Likewise.
21468         * lib/mbchar.c: Likewise.
21469         * lib/mbswidth.c: Likewise.
21470         * lib/mkdtemp.c: Likewise.
21471         * lib/pipe.c: Likewise.
21472         * lib/printf-args.c: Likewise.
21473         * lib/printf-parse.c: Likewise.
21474         * lib/progname.c: Likewise.
21475         * lib/progreloc.c: Likewise.
21476         * lib/readlink.c: Likewise.
21477         * lib/sh-quote.c: Likewise.
21478         * lib/stpcpy.c: Likewise.
21479         * lib/stpncpy.c: Likewise.
21480         * lib/strcasecmp.c: Likewise.
21481         * lib/strcasestr.c: Likewise.
21482         * lib/strcspn.c: Likewise.
21483         * lib/striconv.c: Likewise.
21484         * lib/strncasecmp.c: Likewise.
21485         * lib/strnlen1.c: Likewise.
21486         * lib/strstr.c: Likewise.
21487         * lib/strtok_r.c: Likewise.
21488         * lib/tls.c: Likewise.
21489         * lib/tmpdir.c: Likewise.
21490         * lib/unicodeio.c: Likewise.
21491         * lib/unsetenv.c: Likewise.
21492         * lib/vasnprintf.c: Likewise.
21493         * lib/vasprintf.c: Likewise.
21494         * lib/wait-process.c: Likewise.
21495         * lib/xallocsa.c: Likewise.
21496         * lib/xsetenv.c: Likewise.
21497         * lib/xstriconv.c: Likewise.
21498
21499 2006-09-13  Simon Josefsson  <jas@extundo.com>
21500
21501         * m4/getdate.m4: Don't AC_LIBOBJ([getdate]), automake takes care of
21502         that internally, suggested by Ralf Wildenhues
21503         <Ralf.Wildenhues@gmx.de>.
21504
21505 2006-09-13  Simon Josefsson  <jas@extundo.com>
21506
21507         * gnulib-tool (func_emit_lib_Makefile_am): Use $(LIBOBJS), not
21508         @LIBOBJS@.
21509         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
21510
21511 2006-09-13  Paul Eggert  <eggert@cs.ucla.edu>
21512
21513         * lib/_fpending.c: Include <config.h> unconditionally, since we no
21514         longer worry about uses that don't define HAVE_CONFIG_H.
21515         * lib/acl.c, lib/alloca.c, lib/argmatch.c, lib/atexit.c:
21516         * lib/backupfile.c, lib/basename.c, lib/c-stack.c, lib/c-strtod.c:
21517         * lib/calloc.c,lib/ canon-host.c, lib/canonicalize.c, lib/chdir-long.c:
21518         * lib/chdir-safer.c, lib/chown.c, lib/cloexec.c, lib/close-stream.c:
21519         * lib/closeout.c, lib/creat-safer.c, lib/cycle-check.c, lib/diacrit.c:
21520         * lib/dirchownmod.c, lib/dirfd.c, lib/dirname.c, lib/dup-safer.c:
21521         * lib/dup2.c, lib/error.c, lib/euidaccess.c, lib/exclude.c:
21522         * lib/exitfail.c, lib/fchmodat.c, lib/fchown-stub.c, lib/fd-safer.c:
21523         * lib/file-type.c, lib/fileblocks.c, lib/filemode.c, lib/filenamecat.c:
21524         * lib/fnmatch.c, lib/fopen-safer.c, lib/fprintftime.c, lib/free.c:
21525         * lib/fsusage.c, lib/ftruncate.c, lib/fts-cycle.c, lib/fts.c:
21526         * lib/full-write.c, lib/gai_strerror.c, lib/getcwd.c, lib/getdate.y:
21527         * lib/getdomainname.c, lib/getgroups.c, lib/gethostname.c:
21528         * lib/gethrxtime.c, lib/getloadavg.c, lib/getlogin_r.c:
21529         * lib/getndelim2.c, lib/getnline.c, lib/getopt.c, lib/getopt1.c:
21530         * lib/getpass.c, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c:
21531         * lib/getusershell.c, lib/glob.c, lib/group-member.c:
21532         * lib/hard-locale.c, lib/hash-pjw.c, lib/hash.c, lib/human.c:
21533         * lib/idcache.c, lib/inet_ntop.c, lib/inet_pton.c, lib/inttostr.c:
21534         * lib/isdir.c, lib/lchown.c, lib/linebuffer.c, lib/long-options.c:
21535         * lib/lstat.c, lib/malloc.c, lib/md5.c, lib/memcasecmp.c, lib/memchr.c:
21536         * lib/memcmp.c, lib/memcoll.c, lib/memcpy.c, lib/memmove.c:
21537         * lib/memrchr.c, lib/mkancesdirs.c, lib/mkdir-p.c, lib/mkdir.c:
21538         * lib/mkdirat.c, lib/mkstemp-safer.c, lib/mkstemp.c, lib/modechange.c:
21539         * lib/mountlist.c, lib/nanosleep.c, lib/obstack.c, lib/open-safer.c:
21540         * lib/openat-die.c, lib/openat.c, lib/pagealign_alloc.c, lib/physmem.c:
21541         * lib/pipe-safer.c, lib/posixtm.c, lib/posixver.c, lib/putenv.c:
21542         * lib/quote.c, lib/quotearg.c, lib/raise.c, lib/readtokens.c:
21543         * lib/readtokens0.c, lib/readutmp.c, lib/realloc.c, lib/regex.c:
21544         * lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c:
21545         * lib/same.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c:
21546         * lib/settime.c, lib/sha1.c, lib/sig2str.c, lib/snprintf.c:
21547         * lib/strdup.c, lib/strerror.c, lib/strftime.c, lib/stripslash.c:
21548         * lib/strndup.c, lib/strnlen.c, lib/strpbrk.c, lib/strtod.c:
21549         * lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c:
21550         * lib/time_r.c, lib/timegm.c, lib/tmpfile-safer.c, lib/unlinkdir.c:
21551         * lib/userspec.c, lib/utime.c, lib/utimecmp.c, lib/utimens.c:
21552         * lib/version-etc-fsf.c, lib/version-etc.c, lib/xalloc-die.c:
21553         * lib/xgetcwd.c, lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c:
21554         * lib/xnanosleep.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtoimax.c:
21555         * lib/xstrtol.c, lib/xstrtoumax.c, lib/yesno.c:
21556         Likewise.
21557
21558 2006-09-13  Eric Blake  <ebb9@byu.net>
21559
21560         * lib/getopt.c: Fix typo in last commit.
21561
21562 2006-09-12  Sergey Poznyakoff  <gray@gnu.org.ua>
21563
21564         * lib/argp-help.c (argp_doc): Make sure NULL is not passed to
21565         dgettext.
21566
21567 2006-09-12  Jim Meyering  <jim@meyering.net>
21568
21569         * lib/nanosleep.c: Include <sys/types.h> before sys/select.h, to avoid
21570         compilation failure (due to use of pid_t in latter) on NetBSD 1.6.
21571         Reported by Nelson H. F. Beebe.
21572
21573 2006-09-10  Sergey Poznyakoff  <gray@gnu.org.ua>
21574
21575         * lib/argp-parse.c (__argp_parse) [!_LIBC]: Make sure
21576         program_invocation_name and program_invocation_short_name are
21577         initialized.
21578         * lib/argp-namefrob.h: Move declarations of program_invocation_name
21579         and program_invocation_short_name to argp.h, so they are visible
21580         to user programs.
21581         * lib/argp.h: Likewise
21582
21583 2006-09-10  Bruno Haible  <bruno@clisp.org>
21584
21585         * modules/mkdtemp (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
21586         m4/inttypes_h.m4, m4/uintmax_t.m4.
21587
21588 2006-09-10  Bruno Haible  <bruno@clisp.org>
21589
21590         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Don't require
21591         gl_AC_TYPE_UINTMAX_T.
21592
21593 2006-09-10  Bruno Haible  <bruno@clisp.org>
21594
21595         * lib/mkdtemp.c: Include <stdint.h> always. Don't include <inttypes.h>.
21596
21597 2006-09-09  Sergey Poznyakoff  <gray@gnu.org.ua>
21598
21599         * lib/argp.h (struct argp): Document the N_("..") "\v" N_("..")
21600         convention.  Text proposed by Bruno Haible.
21601         (struct argp_option): Document the use of N_() wrappers.
21602
21603         * lib/argp-help.c (argp_doc): Split the untranslated doc string on
21604         '\v', and translate the two parts separately, instead of feeding
21605         the whole string to gettext.  This allows to exclude
21606         '\v' from the strings visible to the translator by writing doc
21607         strings as N_("..") "\v" N_("..").
21608
21609 2006-09-09  Paul Eggert  <eggert@cs.ucla.edu>
21610
21611         * config/srclist.txt: Undo latest change; the bug was fixed.
21612
21613 2006-09-09  Bruno Haible  <bruno@clisp.org>
21614
21615         * gnulib-tool (func_emit_lib_Makefile_am): Eliminate lib_LDFLAGS
21616         assignments if building a library without libtool.
21617         (func_emit_tests_Makefile_am): Likewise. Handle lib_* variables as
21618         in func_emit_lib_Makefile_am.
21619         (func_import): When building a static library libfoo.a, arrange to
21620         define variables LIBFOO_LIBDEPS and LIBFOO_LTLIBDEPS.
21621         (func_create_testdir): Likewise.
21622         * modules/gc (configure.ac, Makefile.am): If building statically,
21623         augment gl_libdeps and gl_ltlibdeps instead of lib_LDFLAGS.
21624         * modules/iconvme (configure.ac, Makefile.am): Likewise.
21625         * modules/striconv (configure.ac, Makefile.am): Likewise.
21626         Based on a suggestion by Ralf Wildenhues.
21627
21628 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
21629
21630         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
21631         Check for unistd.h too, since Autoconf doesn't assume POSIX.
21632         Also:
21633
21634         2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
21635         Add year_2050_test to catch glibc bug 2821
21636         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
21637
21638         2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
21639         Prefer #ifdef to #if.
21640
21641         2006-04-02  Paul Eggert  <eggert@cs.ucla.edu>
21642         Return from 'main' instead of calling 'exit'.
21643
21644 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
21645
21646         * lib/mktime.c (guess_time_tm): Fix bug where mktime
21647         returned the maximum time_t value rather than (time_t) -1.
21648         Problem originally reported by William Bardwell
21649         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
21650
21651         * lib/isapipe.h (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
21652         Moved to here ...
21653         * lib/isapipe.c (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
21654         ... from here.
21655
21656 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
21657
21658         * config/srclist.txt: Temporarily comment out mktime.c until glibc bug
21659         2821 is fixed.
21660
21661 2006-09-08  Jim Meyering  <jim@meyering.net>
21662
21663         Don't make generated files read-only.  That would bother too many
21664         people.  However, do retain the ability to work when targets are
21665         read-only: remove the destination and temporary files before writing
21666         them (when generated via sed or echo), or by using the -f option for
21667         both cp and mv commands.  Suggestion to use -f from Paul Eggert.
21668         * modules/alloca-opt, modules/argz, modules/arpa_inet:
21669         * modules/byteswap, modules/configmake, modules/fcntl:
21670         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
21671         * modules/localcharset, modules/netinet_in, modules/poll:
21672         * modules/stdbool, modules/stdint, modules/sys_select:
21673         * modules/sys_socket, modules/sys_stat, modules/sysexits:
21674
21675 2006-09-08  Jim Meyering  <jim@meyering.net>
21676
21677         Avoid new build failure on FreeBSD 6.0.
21678         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Include
21679         <sys/param.h> when testing whether getmntinfo uses statvfs.  Patch by
21680         Pavel Tsekov, in <http://savannah.gnu.org/bugs/?17643>.
21681
21682 2006-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21683
21684         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't use plain echo.
21685
21686 2006-09-07  Jim Meyering  <jim@meyering.net>
21687
21688         Fix global typo in last change: use chmod u-w, not chmod u-x.
21689         Spotted by Paul Eggert and Bruce Korb.
21690         * modules/alloca-opt, modules/argz, modules/arpa_inet:
21691         * modules/byteswap, modules/configmake, modules/fcntl:
21692         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
21693         * modules/localcharset, modules/netinet_in, modules/poll:
21694         * modules/stdbool, modules/stdint, modules/sys_select:
21695         * modules/sys_socket, modules/sys_stat, modules/sysexits:
21696
21697 2006-09-06  Jim Meyering  <jim@meyering.net>
21698
21699         Make generated files be read-only.
21700         * modules/alloca-opt (Makefile.am): Work also when $@ is read-only.
21701         Ensure that each generated file is now read-only.
21702         * modules/argz: Likewise.
21703         * modules/arpa_inet: Likewise.
21704         * modules/byteswap: Likewise.
21705         * modules/configmake: Likewise.
21706         * modules/fcntl: Likewise.
21707         * modules/fnmatch: Likewise.
21708         * modules/getopt: Likewise.
21709         * modules/glob: Likewise.
21710         * modules/inttypes: Likewise.
21711         * modules/netinet_in: Likewise.
21712         * modules/poll: Likewise.
21713         * modules/stdbool: Likewise.
21714         * modules/stdint: Likewise.
21715         * modules/sys_select: Likewise.
21716         * modules/sys_socket: Likewise.
21717         * modules/sys_stat: Likewise.
21718         * modules/sysexits: Likewise.
21719         * modules/localcharset: Same as above, but continue using temporary
21720         file named "t-$@" (why different?) rather than the "$@-t" used
21721         everywhere else.
21722
21723         * modules/sysexits (Makefile.am): Replace literal occurrences
21724         of "sysexit.h" more readable, and more consistent, "$@".
21725
21726 2006-09-06  Bruno Haible  <bruno@clisp.org>
21727
21728         * modules/striconv: New file.
21729         * modules/xstriconv: New file.
21730         * MODULES.html.sh (Internationalization functions): Add striconv,
21731         xstriconv.
21732
21733 2006-09-06  Bruno Haible  <bruno@clisp.org>
21734
21735         * modules/gc (Makefile.am): Augment lib_LDFLAGS, not lib_LIBADD.
21736         * modules/iconvme (Makefile.am): Likewise. Also handle the case of
21737         not using libtool correctly.
21738
21739 2006-09-06  Bruno Haible  <bruno@clisp.org>
21740
21741         * lib/striconv.h: New file.
21742         * lib/striconv.c: New file, merging iconvme.c with GNU gettext's
21743         iconvstring.c.
21744         * lib/xstriconv.h: New file.
21745         * lib/xstriconv.c: New file.
21746
21747 2006-09-06  Bruno Haible  <bruno@clisp.org>
21748
21749         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
21750         lib_..._LDFLAGS.
21751
21752 2006-09-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21753
21754         * lib/argz_.h: Sync from Libtool.
21755
21756         2006-09-04  George Bosilca <bosilca@cs.utk.edu>
21757                 and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
21758
21759         * lib/libltdl/argz_.h: It's __cplusplus, not _cplusplus.
21760
21761 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
21762
21763         * modules/trim: New file.
21764
21765 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
21766
21767         * lib/trim.h: New file.
21768         * lib/trim.c: New file.
21769
21770 2006-09-05  Bruno Haible  <bruno@clisp.org>
21771
21772         * MODULES.html.sh (String handling): Add trim.
21773
21774 2006-09-04  Karl Berry  <karl@gnu.org>
21775
21776         * config/srclist.txt (signed.m4, gettext.m4): changes not propagated
21777         until next release.
21778
21779 2006-09-03  Bruno Haible  <bruno@clisp.org>
21780
21781         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Locate mingw shared libraries
21782         correctly.
21783
21784 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
21785
21786         * m4/getloadavg.m4 (gl_GETLOADAVG): Use CONFIGURING_GETLOADAVG,
21787         not gl_GETLOADAVG.  Omit unneeded semicolons.
21788         Problems reported by Ralf Wildenhues in
21789         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
21790         (gl_PREREQ_GETLOADAVG): Use AC_DEFUN, not m4_define.  Put
21791         at the end, which is the usual gnulib style.
21792
21793         * m4/fstypename.m4 (gl_FSTYPENAME): Use AC_CHECK_MEMBERS instead
21794         of doing all the work ourselves.
21795         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Don't check for
21796         sys/statvfs.h since the code doesn't use HAVE_SYS_STATVFS_H.
21797
21798 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
21799
21800         * lib/getloadavg.c: Use CONFIGURING_GETLOADAVG, not gl_GETLOADAVG.
21801         Problem reported by Ralf Wildenhues in
21802         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
21803
21804         * lib/mountlist.c: All uses of HAVE_F_FSTYPENAME_IN_STATFS replaced by
21805         HAVE_STRUCT_STATFS_F_FSTYPENAME.
21806
21807 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
21808
21809         * gnulib-tool (func_emit_lib_Makefile_am): Fix typos in
21810         yesterday's patch by changing test -n to test -z.
21811
21812 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
21813
21814         * modules/getloadavg (Files): Add m4/getloadavg.m4.
21815         (configure.ac): AC_FUNC_GETLOADAVG -> gl_GETLOADAVG, as
21816         the former is now obsolescent.
21817
21818         * modules/chdir-long (Depends-on): Add fcntl.
21819
21820 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
21821
21822         * m4/fnmatch.m4: Add comment that Autoconf AC_FUNC_FNMATCH is
21823         obsolescent, and programs should use gnulib instead.
21824         * m4/getloadavg.m4: New file, with contents taken from Autoconf
21825         but with prefixes changed.
21826
21827 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
21828
21829         * lib/getloadavg.c [defined gl_GETLOADAVG]: Don't include config.h
21830         or stdbool.h, because they might not exist while configuring.
21831
21832         * lib/chdir-long.c: Include <fcntl.h>, for O_DIRECTORY.
21833         Don't include unistd.h or limits.h; not needed, since chdir-long.h
21834         does that for us.
21835         (O_DIRECTORY): Remove.
21836
21837 2006-08-31  Eric Blake  <ebb9@byu.net>
21838
21839         * gnulib-tool: Don't let emacs change spaces to TAB.
21840
21841 2006-08-31  Bruno Haible  <bruno@clisp.org>
21842
21843         * gnulib-tool: When calling func_import more than once, do it in a
21844         subshell.
21845         Reported by Eric Blake <ebb9@byu.net>.
21846
21847 2006-08-31  Bruno Haible  <bruno@clisp.org>
21848
21849         * gnulib-tool (nl): Remove variable.
21850         (sed_transform_lib_file): Use more robust test for config-h module.
21851         (func_import): Fix typo in 2006-08-25 patch.
21852
21853 2006-08-31  Bruno Haible  <bruno@clisp.org>
21854
21855         * gnulib-tool (func_emit_lib_Makefile_am): When --makefile-name was
21856         specified, augment Makefile.am variables instead of assigning them.
21857
21858 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
21859
21860         Work around a bug in both the Linux and SunOS 64-bit kernels:
21861         nanosleep mishandles sleeps for longer than 2**31 seconds.
21862         Problem reported by Frank v Waveren in
21863         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
21864         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Require gl_CLOCK_TIME.
21865         Check for nanosleep bug.
21866         (LIB_NANOSLEEP): Append clock_gettime library if needed.
21867
21868 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
21869
21870         Work around a bug in both the Linux and SunOS 64-bit kernels:
21871         nanosleep mishandles sleeps for longer than 2**31 seconds.
21872         Problem reported by Frank v Waveren in
21873         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
21874         * lib/nanosleep.c (BILLION): New constant.
21875         (getnow) [HAVE_BUG_BIG_NANOSLEEP]: New functions.
21876         (rpl_nanosleep) [HAVE_BUG_BIG_NANOSLEEP]: Completely new
21877         implementation.
21878
21879 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
21880
21881         * modules/nanosleep (Depends-on): Add gettime.
21882
21883 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
21884         and Simon Josefsson  <jas@extundo.com>
21885         and Oskar Liljeblad  <oskar@osk.mine.nu>
21886
21887         * MODULES.html.sh (Support for building documentation): Add gpl, lgpl.
21888         * gnulib-tool (func_import): New license type 'unmodifiable license
21889         text'.
21890         * modules/fdl: Use it.  Longer description.
21891         * module/gpl, module/lgpl: New files.
21892
21893 2006-08-30  Jim Meyering  <jim@meyering.net>
21894
21895         * lib/isapipe.c (isapipe): Rename local s/fd/fd_pair/ to avoid
21896         shadowing the parameter.
21897
21898 2006-08-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21899
21900         Sync from Libtool:
21901
21902         2006-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21903
21904         * lib/libltdl/argz.c: Use `#ifdef HAVE_CONFIG_H', to facilitate code
21905         sharing with gnulib.  Report by Eric Blake.
21906
21907 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
21908
21909         * modules/isapipe: New file.
21910         * MODULES.html.sh (File descriptor based Input/Output): Add isapipe.
21911
21912 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
21913
21914         * modules/configmake (Makefile.am): Add a comment, and omit
21915         the CONFIGMAKE_ prefix from generated macro names.  Suggested
21916         by Bruno Haible.
21917
21918 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
21919
21920         * m4/isapipe.m4: New file.
21921
21922 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
21923
21924         * lib/isapipe.c, lib/isapipe.h: New files.
21925
21926 2006-08-29  Jim Meyering  <jim@meyering.net>
21927
21928         * modules/configmake (Makefile.am): Make configmake.h depend on
21929         Makefile.  Otherwise, a stale configmake.h could hang around.
21930
21931 2006-08-29  Eric Blake  <ebb9@byu.net>
21932
21933         * lib/error.c (error_at_line, print_errno_message): Match libc, after
21934         resolution of upstream bug 3044.
21935
21936 2006-08-29  Bruno Haible  <bruno@clisp.org>
21937
21938         * modules/localcharset (Depends-on): Add configmake.
21939         (Makefile.am): Remove setting of LIBDIR through DEFS.
21940
21941 2006-08-29  Bruno Haible  <bruno@clisp.org>
21942
21943         * lib/localcharset.c: Include configmake.h in order to get LIBDIR
21944         defined.
21945
21946 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
21947
21948         * modules/fcntl: New file.
21949         * modules/chdir-safer (Depends-on): Add fcntl.
21950         * modules/fts: Likewise.
21951         * modules/mkdir-p: Likewise.
21952
21953         * modules/stdint (Makefile.am): Do not substitute ABSOLUTE_INTTYPES_H.
21954         This undoes the most recent change, since we're now addressing the
21955         problem in a different way.
21956
21957         * gnulib-tool (emit_lib_Makefile_am): Don't put $makefile_name
21958         into output, since the output might be called Makefile.am even
21959         if $makefile_name is something different.
21960         (func_import): Use $makefile_am rather than
21961         ${makefile_name-Makefile.am}, to fix a bug where makefile_name was
21962         empty.
21963
21964         * modules/inttypes (Files): Add m4/inttypes-h.m4.
21965
21966 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
21967
21968         * m4/inttypes.m4 (gl_INTTYPES_H): Move ABSOLUTE_INTTYPES_H code here...
21969         * m4/stdint.m4 (gl_STDINT_H): ... from here.  This undoes the most
21970         recent change to stdint.m4, since we're now addressing the problem in a
21971         different way.
21972
21973 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
21974
21975         * m4/fcntl_h.m4: New file.
21976
21977 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
21978
21979         * lib/fcntl_.h: New file.
21980         * lib/chdir-safer.c (O_DIRECTORY, O_NOFOLLOW): Remove, now that we have
21981         the fcntl module.
21982         * lib/dirchownmod.c: Likewise.
21983         * lib/fts.c: Likewise.
21984
21985         * lib/inttypes_.h [defined _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H]:
21986         Include @ABSOLUTE_INTTYPES_H@ if available, but do nothing else.
21987         * lib/stdint_.h (_GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H): Define
21988         just before including <inttypes.h>, to avoid circular inclusion.
21989
21990 2006-08-28  Jim Meyering  <jim@meyering.net>
21991
21992         * doc/visibility.texi: Actually read and correct the grammar of the
21993         sentence affected by yesterday's change.
21994
21995 2006-08-28  Eric Blake  <ebb9@byu.net>
21996
21997         * modules/inttypes (Makefile.am): Fix sed error when inttypes.h
21998         needs wrapper.
21999
22000 2006-08-28  Eric Blake  <ebb9@byu.net>
22001
22002         * m4/inttypes.m4 (gl_INTTYPES_H): Fix missing #endif.
22003
22004 2006-08-28  Eric Blake  <ebb9@byu.net>
22005
22006         * m4/codeset.m4 (AM_LANGINFO_CODESET): Avoid compiler warning.
22007
22008 2006-08-28  Bruno Haible  <bruno@clisp.org>
22009
22010         * modules/c-strstr: New file, from GNU gettext.
22011         * MODULES.html.sh (String handling): Add c-strstr.
22012
22013 2006-08-28  Bruno Haible  <bruno@clisp.org>
22014
22015         * m4/inttypes.m4 (gl_INTTYPES_H): Don't test for the existence of SCNX*
22016         macros.
22017         Reported by Eric Blake.
22018
22019 2006-08-28  Bruno Haible  <bruno@clisp.org>
22020
22021         * lib/vasnprintf.c (EOVERFLOW): Remove definition.
22022         (VASNPRINTF): Return a string of length > INT_MAX without failing.
22023         * lib/vasprintf.c: Include errno.h, limits.h.
22024         (EOVERFLOW): New fallback definition.
22025         (vasprintf): Test here whether the string length is > INT_MAX.
22026         * lib/vsnprintf.c: Include errno.h, limits.h.
22027         (EOVERFLOW): New fallback definition.
22028         (vsnprintf): Fix bug when generated string was too long for the buffer.
22029         Test here whether the string length is > INT_MAX.
22030
22031 2006-08-28  Bruno Haible  <bruno@clisp.org>
22032
22033         * lib/inttypes_.h (SCNX*): Remove definitions.
22034         Reported by Eric Blake.
22035
22036 2006-08-28  Bruno Haible  <bruno@clisp.org>
22037
22038         * lib/c-strstr.h: New file, from GNU gettext.
22039         * lib/c-strstr.c: New file, from GNU gettext.
22040
22041 2006-08-28  Bruno Haible  <bruno@clisp.org>
22042
22043         * gnulib-tool: Reorder some statements.
22044
22045 2006-08-28  Bruno Haible  <bruno@clisp.org>
22046
22047         * gnulib-tool: New option --makefile-name.
22048         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Use
22049         $makefile_name.
22050         (func_import): Write $makefile_name to the cache file, and read it from
22051         there unless explicitly specified. Use $makefile_name as file name
22052         instead of Makefile.am. Adjust the recommendations accordingly.
22053
22054 2006-08-28  Bruno Haible  <bruno@clisp.org>
22055
22056         * gnulib-tool (func_verify_module): Check against misapplying patch.
22057
22058 2006-08-28  Bruno Haible  <bruno@clisp.org>
22059
22060         * gnulib-tool (func_relativize, func_relconcat): New functions.
22061         Give an error if --local-dir is given with --update.
22062         Remove trailing slashes from $local_gnulib_dir.
22063         (func_import): Store the relativized $local_gnulib_dir in
22064         gnulib-cache.m4, and read it from there if not specified explicitly.
22065
22066 2006-08-28  Bruno Haible  <bruno@clisp.org>
22067
22068         * gnulib-tool (func_get_tests_module): Don't assume that $gnulib_dir
22069         is the current directory. Respect also $local_gnulib_dir.
22070
22071 2006-08-28  Bruno Haible  <bruno@clisp.org>
22072             Simon Josefsson  <jas@extundo.com>
22073
22074         BeOS portability.
22075         * lib/getaddrinfo.c (PF_INET, PF_UNSPEC): New macros.
22076
22077 2006-08-27  Jim Meyering  <jim@meyering.net>
22078
22079         * doc/visibility.texi: Remove duplicate word: "pointer".
22080
22081 2006-08-26  Bruno Haible  <bruno@clisp.org>
22082
22083         * modules/inttypes (Files): Add lib/inttypes_.h, remove lib/inttypes.h.
22084         Add m4/inttypes.m4, remove m4/_inttypes_h.m4 and m4/include_next.m4.
22085         (Makefile.am): Create inttypes.h from inttypes_.h.
22086         * modules/stdint (Makefile.am): Substitute also ABSOLUTE_INTTYPES_H.
22087
22088         * modules/imaxabs: New file.
22089
22090         * modules/imaxdiv: New file.
22091
22092 2006-08-26  Bruno Haible  <bruno@clisp.org>
22093
22094         * m4/inttypes.m4: New file.
22095         * m4/_inttypes_h.m4: Remove file.
22096         * m4/inttypes-pri.m4 (gt_INTTYPES_PRI): Also AC_SUBST
22097         PRI_MACROS_BROKEN.
22098         * m4/stdint.m4 (gl_STDINT_H): Define also ABSOLUTE_INTTYPES_H.
22099
22100         * m4/imaxabs.m4: New file.
22101
22102         * m4/imaxdiv.m4: New file.
22103
22104 2006-08-26  Bruno Haible  <bruno@clisp.org>
22105
22106         * lib/inttypes_.h: New file.
22107         * lib/inttypes.h: Remove file.
22108         * lib/stdint_.h: Include <inttypes.h> through its absolute filename.
22109
22110         * lib/imaxabs.c: New file.
22111
22112         * lib/imaxdiv.c: New file.
22113
22114 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
22115
22116         New config-h module, so that "make" output needn't be cluttered
22117         by -DHAVE_CONFIG_H.
22118         * MODULES.html.sh (Support for building libraries and executables):
22119         Add config-h.
22120         * modules/config-h: New file.
22121         * gnulib-tool (nl, sed_transform_lib_file): New vars.
22122         (func_import): Turn "#ifdef HAVE_CONFIG_H" to "#if 1" if
22123         the config-h module is used.
22124
22125         New configmake module, so that "make" output needn't be cluttered
22126         by fluff like '-DLIBDIR=\"/usr/local/lib\"'.
22127         * MODULES.html.sh (Support for building libraries and executables):
22128         Add configmake.
22129         * modules/configmake: New file.
22130
22131 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
22132
22133         * m4/config-h.m4: New file.
22134
22135 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
22136
22137         * config/srclist.txt: Add elisp-comp.
22138
22139 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
22140
22141         * MODULES.html.sh (Support for building libraries and executables):
22142         Add elisp-comp.
22143         * build-aux/elisp-comp: New file.
22144         * modules/elisp-comp: New file.
22145
22146 2006-08-24  Bruno Haible  <bruno@clisp.org>
22147
22148         * gnulib-tool (func_create_testdir): Use non-default values of
22149         sourcebase and m4base.
22150
22151 2006-08-24  Bruno Haible  <bruno@clisp.org>
22152
22153         * MODULES.html.sh (Compatibility checks for POSIX:2001 functions: Fix
22154         HTML structure.
22155
22156 2006-08-23  Paul Eggert  <eggert@cs.ucla.edu>
22157
22158         * modules/openat (Depends-on): Add lchown.
22159
22160 2006-08-23  Bruno Haible  <bruno@clisp.org>
22161
22162         * gnulib-tool (func_import, func_create_testdir): Emit an invocation
22163         of gl_LOCK_EARLY instead of gl_LOCK.
22164
22165 2006-08-23  Bruno Haible  <bruno@clisp.org>
22166
22167         * m4/lock.m4 (gl_LOCK_BODY): Change the default value of gl_use_threads
22168         on OSF/1 to no.
22169         Reported by Stephen Cartwright <sgcartwr@ucalgary.ca>.
22170
22171 2006-08-23  Bruno Haible  <bruno@clisp.org>
22172
22173         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't consider BeOS statvfs
22174         as unusable.
22175
22176         * m4/lock.m4 (gl_LOCK_EARLY): Renamed from gl_LOCK.
22177         (gl_LOCK_BODY): Remove gl_PREREQ_LOCK invocation.
22178         (gl_LOCK): New macro.
22179
22180 2006-08-22  Simon Josefsson  <jas@extundo.com>
22181
22182         * modules/gc-md5 (Makefile.am): Need to add md5.h, after changes
22183         to md5 module.
22184
22185 2006-08-22  Simon Josefsson  <jas@extundo.com>
22186
22187         * MODULES.html.sh: Add "Support for maintaining and release
22188         projects".
22189
22190         * build-aux/gnupload: New file, from coreutils.
22191
22192 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
22193
22194         Avoid the need for AC_LIBSOURCES in m4 macros.
22195         * modules/arcfour (EXTRA_DIST): Add arcfour.h.
22196         * modules/arctwo (EXTRA_DIST): Add arctwo.h.
22197         * modules/check-version (EXTRA_DIST): Add check-version.h.
22198         * modules/crc (EXTRA_DIST): Add crc.h.
22199         * modules/des (EXTRA_DIST): Add des.h.
22200         * modules/gc (EXTRA_DIST): Add gc.h.
22201         * modules/getdelim (EXTRA_DIST): Add getdelim.h.
22202         * modules/getline (EXTRA_DIST): Add getline.h.
22203         * modules/getlogin_r (EXTRA_DIST): Add getlogin_r.h.
22204         * modules/hmac-md5 (EXTRA_DIST): Add hmac.h.
22205         * modules/hmac-sha1 (EXTRA_DIST): Add hmac.h.
22206         * modules/md2 (EXTRA_DIST): Add md2.h.
22207         * modules/md4 (EXTRA_DIST): Add md4.h.
22208         * modules/pagealign_alloc (EXTRA_DIST): Add pagealign_alloc.h.
22209         * modules/read-file (EXTRA_DIST): Add read-file.h.
22210         * modules/readline (EXTRA_DIST): Add readline.h.
22211         * modules/rijndael (EXTRA_DIST): Add rijndael-alg-fst.h,
22212         rijndael-api-fst.h.
22213
22214 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
22215
22216         * m4/rijndael.m4 (gl_ARCFOUR):
22217         * m4/arctwo.m4 (gl_ARCTWO):
22218         * m4/check-version.m4 (gl_CHECK_VERSION):
22219         * m4/crc.m4 (gl_CRC):
22220         * m4/des.m4 (gl_DES):
22221         * m4/gc-pbkdf2-sha1.m4 (gl_GC_PBKDF2_SHA1):
22222         * m4/gc.m4 (gl_GC):
22223         * m4/getdelim.m4 (gl_FUNC_GETDELIM):
22224         * m4/getline.m4 (gl_FUNC_GETLINE):
22225         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE):
22226         * m4/hmac-md5.m4 (gl_HMAC_MD5):
22227         * m4/hmac-sha1.m4 (gl_HMAC_SHA1):
22228         * m4/md2.m4 (gl_MD2):
22229         * m4/md4.m4 (gl_MD4):
22230         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC):
22231         * m4/read-file.m4 (gl_FUNC_READ_FILE):
22232         * m4/readline.m4 (gl_FUNC_READLINE):
22233         * m4/rijndael.m4 (gl_RIJNDAEL):
22234         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
22235         to get the necessary .h files and whatnot.
22236
22237 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
22238
22239         * config/srclist.txt: Remove gnupload, since coreutils now syncs from
22240         gnulib rather than the other way around.
22241         * config/srclistvars.sh (COREUTILS): Remove.
22242
22243 2006-08-22  Jim Meyering  <jim@meyering.net>
22244
22245         * modules/mkdir-p (Makefile.am): Fix typo: s/lib+SOURCES/lib_SOURCES/.
22246
22247         * modules/getpass-gnu (Makefile.am): Add getpass.h to EXTRA_DIST.
22248
22249 2006-08-22  Eric Blake  <ebb9@byu.net>
22250
22251         * modules/regexprops-generic: New file.
22252         * MODULES.html.sh (Support for building documentation): List it.
22253
22254 2006-08-22  Eric Blake  <ebb9@byu.net>
22255
22256         * m4/stdint_h.m4 (gl_AC_HEADER_STDINT_H): Avoid compiler warning.
22257         * m4/inttypes_h.m4 (gl_AC_HEADER_INTTYPES_H): Likewise.
22258         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Likewise.
22259         * m4/intmax_t.m4 (gt_AC_TYPE_INTMAX_T): Likewise.
22260
22261 2006-08-22  Bruno Haible  <bruno@clisp.org>
22262
22263         * gnulib-tool (func_emit_lib_Makefile_am): Don't treat lib_LIBRARIES
22264         and lib_LTLIBRARIES like the other lib_* variables.
22265
22266 2006-08-22  Bruno Haible  <bruno@clisp.org>
22267
22268         * build-aux/x-to-1.in: New file, from GNU gettext.
22269
22270 2006-08-22  Bruno Haible  <bruno@clisp.org>
22271
22272         * m4/readutmp.m4 (gl_READUTMP): Compile readutmp.c only if <utmp.h> or
22273         <utmpx.h> exists.
22274
22275 2006-08-22  Bruno Haible  <bruno@clisp.org>
22276
22277         * lib/readutmp.h: Skip most definitions if neither <utmp.h> nor
22278         <utmpx.h> exists.
22279
22280 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
22281
22282         BeOS portability.
22283         * lib/dirchownmod.c (dirchownmod): Don't use fchmod if it doesn't
22284         exist.
22285         Problem reported by Bruno Haible.
22286
22287 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
22288
22289         Avoid the need for AC_LIBSOURCES in m4 macros.
22290         * modules/acl (EXTRA_DIST): Add acl.h.
22291         * modules/argmatch (Files): Add m4/argmatch.m4.
22292         (configure.ac): Add gl_ARGMATCH.
22293         (EXTRA_DIST): Renamed from lib_SOURCES, for
22294         consistency with the other modules.  Remove argmatch.c.
22295         * modules/backupfile (EXTRA_DIST): Add backupfile.h.
22296         * modules/c-strtod (EXTRA_DIST): Add c-strtod.h.
22297         * modules/c-strtold (EXTRA_DIST): Add c-strtod.c, c-strtod.h.
22298         * modules/canonhost (EXTRA_DIST): Add c-canonhost.h.
22299         * modules/canonicalize (EXTRA_DIST): Add canonicalize.h.
22300         * modules/chdir-long (EXTRA_DIST): Add chdir-long.h.
22301         * modules/chdir-safer (EXTRA_DIST): Add chdir-safer.h.
22302         * modules/cloexec (EXTRA_DIST): Add cloexec.h.
22303         * modules/close-stream (EXTRA_DIST): Add close-stream.h.
22304         * modules/closeout (EXTRA_DIST): Add closeout.h.
22305         * modules/cycle-check (EXTRA_DIST): Add cycle-check.h.
22306         * modules/dev-ino (EXTRA_DIST): Add dev-ino.h.
22307         * modules/dirfd (EXTRA_DIST): Add dirfd.h.
22308         * modules/dirname (EXTRA_DIST): Renamed from lib_SOURCES.  Add
22309         dirname.h; remove basename.c and stripslash.c.
22310         * modules/exclude (EXTRA_DIST): Add exclude.h.
22311         * modules/exitfail (EXTRA_DIST): Add exitfail.h.
22312         * modules/fcntl-safer (EXTRA_DIST): Add fcntl-safer.h fcntl--.h.
22313         * modules/file-type (EXTRA_DIST): Add file-type.h.
22314         * modules/filemode (EXTRA_DIST): Add filemode.h.
22315         * modules/filenamecat (EXTRA_DIST): Add filenamecat.h.
22316         * modules/fopen-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
22317         * modules/fpending (EXTRA_DIST): Add __fpending.h.
22318         * modules/fprintftime (EXTRA_DIST): Add fprintftime.h.
22319         * modules/fsusage (EXTRA_DIST): Add fsusage.h.
22320         * modules/fts (EXTRA_DIST): Add fts_.h fts-cycle.c.
22321         * modules/getcwd (EXTRA_DIST): Add getcwd.h.
22322         * modules/getdate (EXTRA_DIST): Add getdate.c.
22323         * modules/gethrxtime (EXTRA_DIST): Add gethrxtime.h xtime.h.
22324         * modules/getpagesize (EXTRA_DIST): Add getpagesize.h.
22325         * modules/getpass (EXTRA_DIST): Add getpass.h.
22326         * modules/glob (EXTRA_DIST): Add glob_.h glob-libc.h.
22327         * modules/group-member (EXTRA_DIST): Add group-member.h.
22328         * modules/hard-locale (EXTRA_DIST): Add hard-locale.h.
22329         * modules/hash (EXTRA_DIST): Add hash.h.
22330         * modules/human (EXTRA_DIST): Add human.h.
22331         * modules/inttypes (EXTRA_DIST): Add inttypes.h.
22332         * modules/lchmod (EXTRA_DIST): Add lchmod.h.
22333         * modules/lchown (EXTRA_DIST): Add lchown.h.
22334         * modules/long-options (EXTRA_DIST): Add long-options.h.
22335         * modules/lstat (EXTRA_DIST): Add lstat.h.
22336         * modules/md5 (EXTRA_DIST): Add memcasecmp.h.
22337         * modules/memcoll (EXTRA_DIST): Add memcoll.h.
22338         * modules/mempcpy (EXTRA_DIST): Add mempcpy.h.
22339         * modules/memrchr (EXTRA_DIST): Add memrchr.h.
22340         * modules/memxor (EXTRA_DIST): Add memxor.h.
22341         * modules/mkancesdirs (EXTRA_DIST): Add mkancesdirs.h.
22342         * modules/mkdir-p (EXTRA_DIST): Add modechange.h.
22343         * modules/mountlist (EXTRA_DIST): Add mountlist.h.
22344         * modules/openat (EXTRA_DIST): Add at-func.c openat.h openat-priv.h.
22345         * modules/pathmax (EXTRA_DIST): Add pathmax.h.
22346         * modules/physmem (EXTRA_DIST): Add physmem.h.
22347         * modules/posixtm (EXTRA_DIST): Add posixtm.h.
22348         * modules/posixver (EXTRA_DIST): Add posixver.h.
22349         * modules/quote (EXTRA_DIST): Add quote.h.
22350         * modules/quotearg (EXTRA_DIST): Add quotearg.h.
22351         * modules/readtokens (EXTRA_DIST): Add readtokens.h.
22352         * modules/readutmp (EXTRA_DIST): Add readutmp.h.
22353         * modules/regex (EXTRA_DIST): Add regcomp.c regex.h regex_internal.c
22354         regex_internal.h regexec.c.
22355         * modules/safe-read (EXTRA_DIST): Add safe-read.h.
22356         * modules/safe-write (EXTRA_DIST): Add safe-write.h.
22357         * modules/same (EXTRA_DIST): Add same.h.
22358         * modules/same-inode (EXTRA_DIST): Add same-inode.h.
22359         * modules/save-cwd (EXTRA_DIST): Add save-cwd.h.
22360         * modules/savedir (EXTRA_DIST): Add savedir.h.
22361         * modules/sha1 (EXTRA_DIST): Add sha1.h.
22362         * modules/sig2str (EXTRA_DIST): Add sig2str.h.
22363         * modules/stat-macros (EXTRA_DIST): Add stat-macros.h.
22364         * modules/stat-time (EXTRA_DIST): Add stat-time.h.
22365         * modules/stdlib-safer (EXTRA_DIST): Add stdlib-safer.h stdlib--.h.
22366         * modules/strdup (EXTRA_DIST): Add strdup.h.
22367         * modules/strftime (EXTRA_DIST): Add strftime.h.
22368         * modules/strndup (EXTRA_DIST): Add strndup.h.
22369         * modules/strnlen (EXTRA_DIST): Add strnlen.h.
22370         * modules/strverscmp (EXTRA_DIST): Add strverscmp.h.
22371         * modules/time_r (EXTRA_DIST): Add time_r.h.
22372         * modules/timespec (EXTRA_DIST): Add timespec.h.
22373         * modules/tmpfile-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
22374         * modules/unistd-safer (EXTRA_DIST): Add unistd-safer.h unistd--.h.
22375         * modules/unlinkdir (EXTRA_DIST): Add unlinkdir.h.
22376         * modules/unlocked-io (EXTRA_DIST): Add unlocked-io.h.
22377         * modules/userspec (EXTRA_DIST): Add userspec.h.
22378         * modules/utimecmp (EXTRA_DIST): Add utimecmp.h.
22379         * modules/utimens (EXTRA_DIST): Add utimens.h.
22380         * modules/xalloc (EXTRA_DIST): Add xalloc.h.
22381         * modules/xgetcwd (EXTRA_DIST): Add xgetcwd.h.
22382         * modules/xnanosleep (EXTRA_DIST): Add xnanosleep.h.
22383         * modules/xreadlink (EXTRA_DIST): Add xreadlink.h.
22384         * modules/xstrtod (EXTRA_DIST): Add xstrtod.h.
22385         * modules/xstrtol (EXTRA_DIST): Add xstrtol.h.
22386         * modules/xstrtold (EXTRA_DIST): Add xstrtod.c xstrtod.h.
22387         * modules/yesno (EXTRA_DIST): Add yesno.h.
22388
22389 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
22390
22391         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Check for fchmod.
22392
22393         * m4/argmatch.m4: New file, from coreutils with AC_LIBSOURCES removed.
22394         * m4/dev-ino.m4, same-inode.m4: Remove.
22395
22396         * m4/_inttypes_h.m4 (gl_INTTYPES_H):
22397         * m4/acl.m4 (AC_FUNC_ACL):
22398         * m4/backupfile.m4 (gl_BACKUPFILE):
22399         * m4/c-strtod.m4 (gl_C99_STRTOLD):
22400         * m4/canon-host.m4 (gl_CANON_HOST):
22401         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
22402         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG):
22403         * m4/chdir-safer.m4 (gl_CHDIR_SAFER):
22404         * m4/cloexec.m4 (gl_CLOEXEC):
22405         * m4/close-stream.m4 (gl_CLOSE_STREAM):
22406         * m4/closeout.m4 (gl_CLOSEOUT):
22407         * m4/dirfd.m4 (gl_FUNC_DIRFD):
22408         * m4/dirname.m4 (gl_DIRNAME):
22409         * m4/exclude.m4 (gl_EXCLUDE):
22410         * m4/exitfail.m4 (gl_EXITFAIL):
22411         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER):
22412         * m4/file-type.m4 (gl_FILE_TYPE):
22413         * m4/filemode.m4 (gl_FILEMODE):
22414         * m4/filenamecat.m4 (gl_FILE_NAME_CONCAT):
22415         * m4/fpending.m4 (gl_FUNC_FPENDING):
22416         * m4/fprintftime.m4 (gl_FPRINTFTIME):
22417         * m4/fts.m4 (gl_FUNC_FTS):
22418         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL):
22419         * m4/getdate.m4 (gl_GETDATE):
22420         * m4/gethrxtime.m4 (gl_GETHRXTIME):
22421         * m4/getpagesize.m4 (gl_GETPAGESIZE):
22422         * m4/getpass.m4 (gl_FUNC_GETPASS):
22423         * m4/gettime.m4 (gl_GETTIME):
22424         * m4/getugroups.m4 (gl_GETUGROUPS):
22425         * m4/glob.m4 (gl_GLOB_SUBSTITUTE):
22426         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER):
22427         * m4/hard-locale.m4 (gl_HARD_LOCALE):
22428         * m4/hash.m4 (gl_HASH):
22429         * m4/idcache.m4 (gl_IDCACHE):
22430         * m4/lchmod.m4 (gl_FUNC_LCHMOD):
22431         * m4/lchown.m4 (gl_FUNC_LCHOWN):
22432         * m4/long-options.m4 (gl_LONG_OPTIONS):
22433         * m4/lstat.m4 (gl_FUNC_LSTAT):
22434         * m4/md5.m4 (gl_MD5):
22435         * m4/memcasecmp.m4 (gl_MEMCASECMP):
22436         * m4/memcoll.m4 (gl_MEMCOLL):
22437         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY):
22438         * m4/memrchr.m4 (gl_FUNC_MEMRCHR):
22439         * m4/memxor.m4 (gl_MEMXOR):
22440         * m4/mkancesdirs.m4 (gl_MKANCESDIRS):
22441         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS):
22442         * m4/modechange.m4 (gl_MODECHANGE):
22443         * m4/mountlist.m4 (gl_MOUNTLIST):
22444         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
22445         * m4/openat.m4 (gl_FUNC_OPENAT):
22446         * m4/pathmax.m4 (gl_PATHMAX):
22447         * m4/physmem.m4 (gl_PHYSMEM):
22448         * m4/posixtm.m4 (gl_POSIXTM):
22449         * m4/posixver.m4 (gl_POSIXVER):
22450         * m4/quote.m4 (gl_QUOTE):
22451         * m4/quotearg.m4 (gl_QUOTEARG):
22452         * m4/readtokens.m4 (gl_READTOKENS):
22453         * m4/readutmp.m4 (gl_READUTMP):
22454         * m4/regex.m4 (gl_REGEX):
22455         * m4/safe-read.m4 (gl_SAFE_READ):
22456         * m4/safe-write.m4 (gl_SAFE_WRITE):
22457         * m4/same.m4 (gl_SAME):
22458         * m4/save-cwd.m4 (gl_SAVE_CWD):
22459         * m4/savedir.m4 (gl_SAVEDIR):
22460         * m4/settime.m4 (gl_SETTIME):
22461         * m4/sha1.m4 (gl_SHA1):
22462         * m4/sig2str.m4 (gl_FUNC_SIG2STR):
22463         * m4/stat-macros.m4 (gl_STAT_MACROS):
22464         * m4/stat-time.m4 (gl_STAT_TIME):
22465         * m4/stdio-safer.m4 (gl_FOPEN_SAFER):
22466         * m4/stdlib-safer.m4 (gl_STDLIB_SAFER):
22467         * m4/strdup.m4 (gl_FUNC_STRDUP):
22468         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME):
22469         * m4/strndup.m4 (gl_FUNC_STRNDUP):
22470         * m4/strnlen.m4 (gl_FUNC_STRNLEN):
22471         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP):
22472         * m4/time_r.m4 (gl_TIME_R):
22473         * m4/timespec.m4 (gl_TIMESPEC):
22474         * m4/unistd-safer.m4 (gl_UNISTD_SAFER):
22475         * m4/unlinkdir.m4 (gl_UNLINKDIR):
22476         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO):
22477         * m4/userspec.m4 (gl_USERSPEC):
22478         * m4/utimecmp.m4 (gl_UTIMECMP):
22479         * m4/utimens.m4 (gl_UTIMENS):
22480         * m4/xalloc.m4 (gl_XALLOC):
22481         * m4/xgetcwd.m4 (gl_XGETCWD):
22482         * m4/xnanosleep.m4 (gl_XNANOSLEEP):
22483         * m4/xreadlink.m4 (gl_XREADLINK):
22484         * m4/xstrtod.m4 (gl_XSTRTOD):
22485         * m4/yesno.m4 (gl_YESNO):
22486         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
22487         to get the necessary .h files and whatnot.
22488
22489 2006-08-21  Mark D. Baushke  <mdb@gnu.org>
22490             Bruno Haible  <bruno@clisp.org>
22491
22492         * gnulib-tool (func_verify_module): Work around Sun's non-POSIX 1003.2
22493         /bin/sh understanding of '!' conditional negation.
22494
22495 2006-08-21  Jim Meyering  <jim@meyering.net>
22496
22497         * modules/openat (Depends-on): Really alphabetize.
22498
22499         * modules/acl (Depends-on): Add error and quote.
22500
22501         * check-module (find_included_lib_files): Add at-func.c to the
22502         ok-to-include-more-than-once white list.
22503
22504         * modules/openat (Depends-on): Add lstat.  Alphabetize.
22505
22506 2006-08-21  Bruno Haible  <bruno@clisp.org>
22507
22508         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
22509         Emit a pkgdata_DATA variable only if some snippets add contents to it.
22510         Reported by Martin Lambers <marlam@marlam.de>.
22511
22512 2006-08-21  Bruno Haible  <bruno@clisp.org>
22513
22514         * gnulib-tool (func_emit_lib_Makefile_am): If the snippets already
22515         specify an installation location, don't emit a noinst_LIBRARIES or
22516         noinst_LTLIBRARIES assignment.
22517
22518 2006-08-21  Bruno Haible  <bruno@clisp.org>
22519
22520         BeOS portability.
22521         * modules/mbchar (Include): Don't test HAVE_WCTYPE_H any more, since
22522         BeOS has mbrtowc() but no <wctype.h>.
22523
22524 2006-08-21  Bruno Haible  <bruno@clisp.org>
22525
22526         BeOS portability.
22527         * m4/mbchar.m4 (gl_MBCHAR): Compile mbchar.c also if <wctype.h> doesn't
22528         exist.
22529
22530 2006-08-21  Bruno Haible  <bruno@clisp.org>
22531
22532         BeOS portability.
22533         * lib/mbchar.h: Include <wctype.h> only if it exists.
22534
22535 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
22536
22537         Remove files that are no longer needed by their respective modules.
22538         * m4/obstack.m4: Remove.
22539         * m4/strerror_r.m4: Remove.
22540         * m4/uint32_t.m4: Remove.
22541         * m4/uintptr_t.m4: Remove.
22542         * m4/ullong_max.m4: Remove.
22543         * m4/xstrtoimax.m4: Remove.
22544         * m4/xstrtoumax.m4: Remove.
22545
22546         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Do not require
22547         gl_AC_TYPE_UINTMAX_T, gl_STRUCT_DEV_INO, or gl_SAME_INODE, since gnulib
22548         dependencies now capture this.
22549
22550         * m4/cycle-check.m4 (gl_CYCLE_CHECK):
22551         Do not use AC_LIBSOURCES, since gnulib modules now do this.
22552         * m4/fsusage.m4 (gl_FSUSAGE): Likewise.
22553         * m4/human.m4 (gl_HUMAN): Likewise.
22554         * m4/inttostr.m4 (gl_INTTOSTR): Likewise.
22555         * m4/xstrtol.m4 (gl_XSTRTOL): Likewise.
22556
22557         * m4/filemode.m4 (gl_FILEMODE): Require AC_STRUCT_ST_DM_MODE.
22558
22559         * m4/filemode.m4 (gl_PREREQ_FSUSAGE_EXTRA): Do not require
22560         gl_AC_TYPE_INTMAX_T or gl_AC_TYPE_UINTMAX_T, since we now require
22561         stdint.
22562         * m4/human.m4 (gl_HUMAN): Likewise.
22563         * m4/inttostr.m4 (gl_PREREQ_INTTOSTR): Likewise.
22564         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Likewise.
22565         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
22566         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
22567         * m4/xstrtol (gl_XSTRTOL): Likewise.
22568
22569         * m4/gethrxtime.m4 (gl_XTIME): gl_AC_TYPE_LONG_LONG ->
22570         AC_TYPE_LONG_LONG_INT.
22571         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
22572         * m4/strtoll.m4 (gl_FUNC_STRTOLL): Likewise.
22573         * m4/strtoull.m4 (gl_FUNC_STRTOULL): Likewise, for unsigned long.
22574         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
22575
22576         * m4/human.m4 (gl_HUMAN): Do not require AM_STDBOOL_H since we depend
22577         on stdbool.
22578
22579         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL_H, gl_PREREQ_XSTRTOL): Remove.
22580         (gl_PREREQ_XSTRTOUL): Remove.
22581
22582         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Check for hasmntopt.
22583
22584         * m4/posixver.m4: Fix comment since head -1 now works even in POSIX
22585         mode.
22586
22587 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
22588
22589         Add and change modules to make it easier for coreutils to use
22590         gnulib-tool.
22591         * modules/backupfile (Files): Remove m4/d-ino.m4.
22592         (Depends-on): Add d-ino.
22593         * modules/cycle-check (Depends-on): Add stdint.
22594         (lib_SOURCES): Add cycle-check.h.
22595         * modules/d-ino: New module.
22596         * modules/d-type: New module.
22597         * modules/error (Files): Remove m4/strerror_r.m4.
22598         * modules/filemode (Files): Add m4/st_dm_mode.m4.
22599         * modules/fsuage (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
22600         m4/inttypes_h.m4, m4/uintmax_t.m4.
22601         (Depends-on): Add stdint.
22602         (lib_SOURCES): Add fsusage.h.
22603         * modules/getcwd (Files): Remove d-ino.m4.
22604         (Depends-on): Add d-ino.
22605         * modules/getndelim2 (Depends-on): Add stdint.
22606         * modules/glob (Files): Remove m4/d-type.m4.
22607         (Depends-on): Add d-type.
22608         * modules/host-os: New module.
22609         * modules/human (Files):  Remove m4/ulonglong.m4, m4/stdint_h.m4,
22610         m4/inttypes_h.m4, m4/uintmax_t.m4.
22611         * Depends-on: Add stdint.
22612         (lib_SOURCES): Add human.h.
22613         * modules/inttostr (Files): Remove m4/intmax_t.m4,
22614         m4/inttostr.m4, m4/inttypes_h.m4, m4/longlong.m4, m4/stdint_h.m4,
22615         m4/uintmax_t.m4, m4/ulonglong.m4.
22616         (Depends-on): Add stdint.
22617         (EXTRA_DIST): Add inttostr.h.
22618         * modules/lchmod: New module.
22619         * modules/link-follow: New module.
22620         * modules/mkdir-p (Files): Remove lib/lchmod.h, m4/lchmod.m4.
22621         (Depends-on): Add lchmod.
22622         * modules/mkstemp (Files): Remove m4/ulonglong.m4,
22623         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4.
22624         (Depends-on): Add stdint.
22625         * modules/obstack (Files): Remove m4/inttypes_h.m4, m4/obstack.m4,
22626         m4/stdint_h.m4, m4/uintmax_t.m4, m4/ulonglong.m4.
22627         (Depends-on): Add stdint.
22628         (configure.ac): Change gl_OBSTACK to AC_FUNC_OBSTACK.
22629         * modules/perl: New module.
22630         * modules/regex (Depends-on): Add stdint.
22631         * modules/rmdir-errno: New module.
22632         * modules/strtoimax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
22633         m4/intmax_t.m4.
22634         (Depends-on): Add stdint.
22635         * modules/strtoumax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
22636         m4/uintmax_t.m4.
22637         (Depends-on): Add stdint.
22638         * modules/unlink-busy: New module.
22639         * modules/utimecmp (Depends-on): Add stdint.
22640         * modules/uptime: New module.
22641         * modules/winsz-ioctl: New module.
22642         * modules/winsz-termios: New module.
22643         * modules/xnanosleep (Depends-on): Add nanosleep.
22644         * modules/ullong_max: Remove.
22645         * modules/xstrtoimax (Files): Remove m4/xstrtoimax.m4.
22646         (configure.ac): Remove gl_XSTRTOIMAX; no action needed now.
22647         * modules/xstrtol (Files): Remove m4/ulonglong.m4, m4/longlong.m4,
22648         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4, m4/intmax_t.m4.
22649         (Depends-on): Add inttypes.
22650         (lib_SOURCES): Add xstrtol.h.
22651         * modules/xstrtoumax (Files): Remove m4/xstrtoumax.m4.
22652         (configure.ac): Remove gl_XSTRTOUMAX; no action needed now.
22653         * MODULES.html.sh: Move 'assert' into the assert section.
22654         Move 'dummy' into the linking section.
22655         Remove ullong_max.
22656         Add section for compatibility checks for POSIX:2001 functions,
22657         and put d-ino, d-type, link-follow, rmdir-errno, unlink-busy,
22658         winsz-ioctl, and winsz-termios into it.
22659         Add lchmod.
22660         Add top-level Misc section and put host-os, perl, and uptime
22661         into it.
22662
22663 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
22664
22665         * lib/cycle-check.h: Include <stdint.h> unconditionally, since we
22666         now assume the stdint module.  Do not include inttypes.h.
22667         * lib/fsusage.h: Likewise.
22668         * lib/getndelim2.c: Likewise.
22669         * lib/human.h: Likewise.
22670         * lib/inttostr.h: Likewise.
22671         * lib/obstack.c: Likewise.
22672         * lib/regex_internal.h: Likewise.
22673         * lib/tempname.c: Likewise.
22674         * lib/utimecmp.c: Likewise.
22675         * lib/xstrtol.h: Likewise.
22676
22677         * lib/stat_.h: Fix typo: HAVE_FUNC_LSTAT -> HAVE_LSTAT.
22678
22679         * lib/strtoimax.c: Adjust to macro name changes in Autoconf,
22680         e.g., HAVE_LONG_LONG -> HAVE_LONG_LONG_INT.
22681         * lib/xtime.h: Likewise.
22682
22683 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
22684
22685         * modules/openat (Files): Add lib/fchmodat.c.
22686         Fixes problem reported by Jay Youngman.
22687
22688 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
22689
22690         * lib/fchmodat.c: New file, from coreutils.  This was inadvertently
22691         omitted in the 2006-08-17 update.  Problem reported by Jay Youngman.
22692
22693 2006-08-18  Paul Eggert  <eggert@cs.ucla.edu>
22694             Bruno Haible  <bruno@clisp.org>
22695
22696         * m4/bison-i18n.m4 (BISON_I18N): Also handle the case where yacc exists
22697         and is a script that invokes bison. Tighten the code. Add comments.
22698
22699 2006-08-18  Jim Meyering  <jim@meyering.net>
22700
22701         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Also check for
22702         CLOCK_REALTIME, since gethrxtime may revert to using clock_gettime via
22703         gettime.c.  Gabor Z. Papp reported that gethrxtime-using programs
22704         failed to link due to unresolved clock_gettime on a linux-2.4.x system.
22705
22706 2006-08-18  Bruno Haible  <bruno@clisp.org>
22707
22708         * modules/bison-i18n: New file.
22709         * MODULES.html.sh (Internationalization functions): Add it.
22710
22711 2006-08-18  Bruno Haible  <bruno@clisp.org>
22712
22713         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Also check for
22714         sys/statvfs.h. When getmntinfo was found, check its declaration and
22715         set either MOUNTED_GETMNTINFO or MOUNTED_GETMNTINFO2 depending on it.
22716
22717 2006-08-18  Bruno Haible  <bruno@clisp.org>
22718
22719         * m4/bison-i18n.m4: New file, from bison.
22720
22721 2006-08-18  Bruno Haible  <bruno@clisp.org>
22722
22723         * lib/mountlist.c [MOUNTED_GETMNTINFO2]: Include sys/statvfs.h.
22724         (ME_DUMMY): Treat "kernfs" as a dummy.
22725         (read_file_system_list) [MOUNTED_GETMNTINFO2]: Implement.
22726
22727 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
22728
22729         Update from coreutils.
22730
22731         2006-08-15  Jim Meyering  <jim@meyering.net>
22732
22733         * m4/openat.m4 (gl_FUNC_OPENAT): Add at-func.c via AC_LIBSOURCES.
22734
22735         2006-01-17  Jim Meyering  <jim@meyering.net>
22736
22737         * m4/fts.m4 (gl_FUNC_FTS_CORE): Depend on gl_FUNC_OPENAT.
22738
22739         2006-01-11  Jim Meyering  <jim@meyering.net>
22740
22741         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile fchmodat.c.
22742         Check for the lchmod function.
22743
22744 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
22745
22746         Update from coreutils.
22747
22748         * lib/__fpending.h: Add copyright notice.
22749         * lib/fprintftime.h: Likewise.
22750         * lib/savedir.c: Use (C) in copyright notice.
22751         * lib/savedir.h: Likewise.
22752
22753         2006-08-15  Jim Meyering  <jim@meyering.net>
22754
22755         * lib/at-func.c: New file, with the logic of all emulated at-functions.
22756         * lib/openat-priv.h: Include <errno.h> and define ENOSYS,
22757         in support of the EXPECTED_ERRNO macro.
22758         * lib/openat.c (fstatat, unlinkat, fchownat): Remove function
22759         definitions.  Instead, define the appropriate symbols and include
22760         "at-func.c".
22761         * lib/mkdirat.c (mkdirat): Likewise.
22762         * lib/fchmodat.c (fchmodat): Likewise.
22763         (ENOSYS): Remove definition.
22764         * lib/openat.c: Don't include <errno.h>, now that "openat-priv.h" does
22765         it.  Don't include "unistd--.h" -- it wasn't ever used.
22766
22767         2006-01-17  Jim Meyering  <jim@meyering.net>
22768
22769         Rewrite fts.c not to change the current working directory,
22770         by using openat, fstatat, fdopendir, etc..
22771
22772         * lib/fts.c [! _LIBC]: Include "openat.h" and "unistd--.h".
22773         (HAVE_OPENAT_SUPPORT): Define.
22774         [_LIBC] (fchdir): Don't undef or define; no longer used.
22775         (FCHDIR): Define in terms of cwd_advance_fd rather than fchdir.
22776         Now, this `function' always succeeds, and consumes its file descriptor
22777         parameter -- so callers must not close such FDs.  Update callers.
22778         (diropen_fd, opendirat, cwd_advance_fd): New functions.
22779         (diropen): Add parameter, SP.  Adjust all callers.
22780         Implement using diropen_fd, rather than open.
22781         (fts_open): Initialize new member, fts_cwd_fd.
22782         Remove fts_rft-setting code.
22783         (fts_close): Close fts_cwd_fd, if necessary.
22784         (__opendir2): Define in terms of opendir or opendirat,
22785         depending on whether the FST_NOCHDIR flag is set.
22786         (fts_build): Since fts_safe_changedir consumes its FD, and since
22787         this code must do `closedir(dirp)', dup the dirfd(dirp) argument,
22788         and close the dup'd file descriptor upon failure.
22789         (fts_stat): Use fstatat(...AT_SYMLINK_NOFOLLOW) in place of lstat.
22790         (fts_safe_changedir): Tweak semantics to reflect that this function
22791         now calls cwd_advance_fd and hence consumes its FD argument.
22792         * lib/fts_.h [struct FTS] (fts_cwd_fd): New member.
22793         [struct FTS] (fts_rft): Remove now-unused member.
22794         [struct FTS] (fts_cycle.state): Improve comment.
22795
22796         * lib/openat.c (openat_needs_fchdir): New function.
22797         * lib/openat.h (openat_needs_fchdir): Declare it.
22798
22799 2006-08-16  Paul Eggert  <eggert@cs.ucla.edu>
22800
22801         * lib/memcoll.c (memcoll): Set errno = 0 in the shortcut case, too.
22802         Problem and fix reported by Pádraig Brady in
22803         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00099.html>.
22804
22805 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
22806
22807         * modules/cycle-check (configure.ac): Add gl_CYCLE_CHECK.
22808
22809 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
22810
22811         * lib/memcoll.c (memcoll): Optimize for the common case where the
22812         arguments are bytewise equal.
22813
22814 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
22815
22816         * doc/regexprops-generic.texi: Add a copyright notice.
22817
22818 2006-08-15  Bruno Haible  <bruno@clisp.org>
22819
22820         * modules/tmpdir (License): Change to LGPL.
22821
22822 2006-08-15  Bruno Haible  <bruno@clisp.org>
22823
22824         * gnulib-tool (func_all_modules, func_verify_module): COPYING is not a
22825         module.
22826
22827 2006-08-14  Simon Josefsson  <jas@extundo.com>
22828
22829         * config/srclist.txt: Add gnupload.
22830
22831 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
22832
22833         Change copyright notice from LGPL 2 to GPL 2, since that's the
22834         standard form used in the gnulib repository.
22835         * tests/test-lock.c: Likewise.
22836         * tests/test-stdint.c: Likewise.
22837         * tests/test-tls.c: Likewise.
22838
22839         * users.txt: Add bison, diffutils, libprelude, prelude-lml,
22840         prelude-manager.  User shorter URLs for GNU projects, without '?'.
22841         Add copyright notice.
22842
22843         * check-module: Add copyright notice.  Output a copyright
22844         notice if "--version" is specified.
22845         * modules/COPYING: New file.
22846         * tests/test-getaddrinfo.c: Add copyright notice.
22847         * tests/test-verify.c: Likewise.
22848
22849 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
22850
22851         Change copyright notice from LGPL 2 to GPL 2, since that's the
22852         standard form used in the gnulib repository.
22853         * lib/lock.c: LGPL -> GPL.
22854         * lib/lock.h: Likewise.
22855         * lib/strnlen1.c: Likewise.
22856         * lib/strnlen1.h: Likewise.
22857         * lib/tls.c: Likewise.
22858         * lib/tls.h: Likewise.
22859         * lib/tmpdir.c: Likewise.
22860
22861         * lib/TODO: Remove; this belongs only in coreutils.
22862
22863 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
22864
22865         Add copyright notices to long-enough files that lack them, since
22866         otherwise the files aren't clearly free.  Use the same notice that
22867         getdate.texi already uses.
22868         * doc/alloca-opt.texi: Add copyright notice.
22869         * doc/alloca.texi: Likewise.
22870         * doc/ctime.texi: Likewise.
22871         * doc/functions.texi: Likewise.
22872         * doc/gcd.texi: Likewise.
22873         * doc/gnulib-tool.texi: Likewise.
22874         * doc/inet_ntoa.texi: Likewise.
22875         * doc/visibility.texi: Likewise.
22876
22877         * doc/getdate.texi: Update FDL version from 1.1 to 1.2.
22878         * doc/quote.texi: Add copyright notice.
22879
22880         * doc/solaris-versions: Add SunOS 5.10, SunOS 1.x, SunOS 4.0, SunOS
22881         4.0.x, SunOS 4.1.1.1, SunOS 4.1.1_U1, SunOS 4.1.3B.  SunOS 4.1.3
22882         was Solaris 1.1A.  Remove space before B in Solaris 1.1.1B.
22883         Mention SunOS 5.11.  Mention that everything before SunOS 5.7
22884         is now obsolete, and give a pointer to the Sun list.
22885         Add copyright notice.
22886
22887 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
22888
22889         * config/srclistvars.sh: Add copyright notice.
22890
22891 2006-08-14  Eric Blake  <ebb9@byu.net>
22892
22893         Import the following change from libc:
22894
22895         2006-08-12  Ulrich Drepper  <drepper@redhat.com>
22896
22897         Upstream bug 2997.
22898         * lib/misc/error.c: Add space between program name and message if file
22899         name is missing.
22900
22901 2006-08-12  Karl Berry  <karl@gnu.org>
22902
22903         * config/srclist.txt (ssize_t.m4, sig_atomic_t.m4, signalblocking.m4):
22904         remove, these originate in gnulib now.
22905
22906 2006-08-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22907
22908         * doc/Makefile (standards.info standards.html standards.dvi):
22909         Also depend on make-stds.texi.
22910
22911 2006-08-11  Paul Eggert  <eggert@cs.ucla.edu>
22912
22913         * lib/pipe-safer.c (pipe_safer): Fix misspelling: HAVE_FUNC_PIPE ->
22914         HAVE_PIPE.  Fix a file descriptor leak when fd_safer fails.
22915
22916         * lib/regex_internal.c (re_string_skip_chars): Don't assume WEOF fits
22917         in wchar_t.  Problem reported by Eric Blake.
22918
22919         * lib/snprintf.c (snprintf): memcpy LEN bytes, not SIZE - 1, when
22920         LEN is smaller than SIZE.  Suggested by Bruno Haible.
22921         Also, help the compiler to keep LEN in a register.
22922
22923 2006-08-11  Eric Blake  <ebb9@byu.net>
22924
22925         * users.txt: Sort.  Add tar.
22926
22927 2006-08-11  Bruno Haible  <bruno@clisp.org>
22928
22929         * users.txt: New file.
22930
22931 2006-08-11  Bruno Haible  <bruno@clisp.org>
22932
22933         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Include <stdio.h> and <time.h>
22934         before <wchar.h>. Needed for OSF/1 and BSD/OS.
22935
22936 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
22937
22938         * modules/snprintf (Depends-on): Remove minmax.
22939         (Maintainer): Add self and Bruno.
22940
22941 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
22942
22943         * lib/.cppi-disable: Add snprintf.h, socket_.h.
22944         * lib/snprintf.c: Include <errno.h> and <limits.h>.
22945         (EOVERFLOW): Define if the system does not.
22946         Do not include "minmax.h"; it wasn't used.
22947         (snprintf): Don't assume size_t promotes to an unsigned type.
22948         Fix bug when generated string was too long for the buffer: the
22949         buffer's contents are supposed to be the initial prefix of the
22950         output.  Don't assume vasnprintf returns EOVERFLOW if the size
22951         exceeds INT_MAX; do the check ourselves.
22952
22953         Import the following changes from libc:
22954
22955         2006-06-02  Jakub Jelinek  <jakub@redhat.com>
22956
22957         * lib/posix/regex_internal.c (re_string_skip_chars): If no character
22958         has been converted at all, set *last_wc to WEOF.  If mbrtowc failed,
22959         set wc to the byte which couldn't be converted.
22960         (re_string_reconstruct): Don't clear valid_raw_len before calling
22961         re_string_skip_chars.  If wc is WEOF after re_string_skip_chars, set
22962         tip_context using re_string_context_at.
22963
22964         2006-05-02  Ulrich Drepper  <drepper@redhat.com>
22965
22966         * lib/posix/regex.h: g++ still cannot handled [restrict].
22967
22968         2006-04-21  Ulrich Drepper  <drepper@redhat.com>
22969
22970         * lib/posix/regex.h: Remove special handling for VMS.
22971
22972 2006-08-10  Jim Meyering  <jim@meyering.net>
22973
22974         * modules/same-inode: New module.
22975         * modules/dev-ino: New module.
22976         * modules/cycle-check: Depend on these modules, rather than simply
22977         including their .h files.
22978         (Makefile.am): Don't list cycle-check.[ch] here, now that they're
22979         required via m4/cycle-check.m4.
22980         * modules/same: Depend on new same-inode module, rather than
22981         including same-inode.h.
22982         * modules/chdir-safer: New file.
22983
22984         * modules/chown (Depends-on): Add stat-macros.
22985
22986 2006-08-10  Jim Meyering  <jim@meyering.net>
22987
22988         * m4/cycle-check.m4: New file.
22989         Require gl_STRUCT_DEV_INO and gl_SAME_INODE.
22990         * m4/dev-ino.m4, m4/same-inode.m4: New files.
22991
22992 2006-08-10  Eric Blake  <ebb9@byu.net>
22993
22994         * modules/verror (Depends-on): Remove bogus gl_VERROR that snuck
22995         in from original proposal.
22996
22997 2006-08-10  Eric Blake  <ebb9@byu.net>
22998         and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
22999
23000         * gnulib-tool (func_import): Detect unexpanded macros in gnulib
23001         namespace.
23002
23003 2006-08-10  Bruno Haible  <bruno@clisp.org>
23004
23005         * gnulib-tool (func_create_testdir): Detect unexpanded macros here
23006         as well.
23007
23008 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
23009
23010         Sync from coreutils.
23011
23012         2006-07-19  Mike Frysinger  <vapier@gentoo.org>
23013
23014         * lib/mountlist.c [ME_REMOTE]: Filter out cifs.
23015         Reported by Toralf Förster in <http://bugs.gentoo.org/141012>.
23016
23017 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
23018
23019         * modules/restrict: Remove; no longer needed now that we assume
23020         Autoconf 2.59 or later.
23021         * MODULES.html.sh: Remove 'restrict'.
23022         * modules/argp (Depends-on): Remove 'restrict'.
23023         * modules/base64 (Depends-on): Likewise.
23024         * modules/gc (Depends-on): Likewise.
23025         * modules/getaddrinfo (Depends-on): Likewise.
23026         * modules/glob (Depends-on): Likewise.
23027         * modules/inet_ntop (Depends-on): Likewise.
23028         * modules/inet_pton (Depends-on): Likewise.
23029         * modules/memxor (Depends-on): Likewise.
23030         * modules/regex (Depends-on): Likewise.
23031         * modules/strtok_r (Depends-on): Likewise.
23032         * modules/time_r (Depends-on): Likewise.
23033
23034 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
23035
23036         * m4/argp.m4 (gl_ARGP): Require AC_C_RESTRICT.
23037         * m4/gc.m4 (gl_PREREQ_GC): Likewise.
23038         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
23039         * m4/inet_ntop.m4 (gl_PREREQ_INET_NTOP): Likewise.
23040         * m4/inet_pton.m4 (gl_PREREQ_INET_PTON): Likewise.
23041         * m4/memxor.m4 (gl_MEMXOR): Likewise.
23042         * m4/restrict.m4: Remove; no longer needed.  All remaining uses of
23043         gl_C_RESTRICT replaced by AC_C_RESTRICT.
23044
23045         Merge from coreutils.
23046         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_C_RESTRICT, not
23047         gl_C_RESTRICT, now that we assume Autoconf 2.59 or later.
23048         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
23049         * m4/time_r.m4 (gl_TIME_R): Likewise.
23050
23051 2006-08-09  Karl Berry  <karl@gnu.org>
23052
23053         * config/srclist.txt: no more gettext-tools, per Bruno.
23054
23055 2006-08-08  Eric Blake  <ebb9@byu.net>
23056
23057         * modules/verror: New module.
23058         * MODULES.html.sh: Document it.
23059
23060 2006-08-08  Eric Blake  <ebb9@byu.net>
23061
23062         * lib/verror.h, lib/verror.c: New files.
23063
23064 2006-08-08  Eric Blake  <ebb9@byu.net>
23065
23066         * lib/verror.c (verror_at_line): Work around glibc bug 2997, so that
23067         verror_at_line output complies with GNU Coding Standards even when
23068         file is NULL.
23069
23070 2006-08-07  Bruno Haible  <bruno@clisp.org>
23071
23072         * lib/allocsa.h (sa_alignof) [_AIX]: Also consider 'long long' in newer
23073         versions of AIX.
23074         Reported by Ralf Wildenhues.
23075
23076 2006-08-07  Bruno Haible  <bruno@clisp.org>
23077
23078         * gnulib-tool (func_create_testdir): Wrap the set of autoconf snippets
23079         in an AC_DEFUN. Needed so that the autoconf snippets can use
23080         AC_REQUIRE.
23081
23082 2006-08-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23083
23084         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
23085         Initialize pkgdata_DATA.
23086         * modules/javaversion (Makefile.am): Add to pkgdata_DATA, rather than
23087         overriding it.
23088
23089 2006-08-06  Eric Blake  <ebb9@byu.net>
23090
23091         * lib/error.h: Fold in some upstream changes from glibc.
23092         * lib/error.c: Likewise.
23093
23094 2006-08-04  Bruno Haible  <bruno@clisp.org>
23095
23096         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
23097         Make the mostlyclean-local rule depend on mostlyclean-generic.
23098         Reported by Jim Meyering. Solution suggested by Ralf Wildenhues.
23099
23100 2006-07-31  Bruno Haible  <bruno@clisp.org>
23101
23102         * m4/localcharset.m4 (gl_LOCALCHARSET): Remove tests for <stddef.h>,
23103         <stdlib.h>, <string.h>.
23104
23105 2006-07-30  Bruno Haible  <bruno@clisp.org>
23106
23107         * modules/readlink (License): Change to LGPL.
23108
23109 2006-07-30  Bruno Haible  <bruno@clisp.org>
23110
23111         * modules/javaversion (Makefile.am): Distribute javaversion.java and
23112         javaversion.class. Also install javaversion.class in $(pkgdatadir) and
23113         set PKGDATADIR to point to it.
23114
23115 2006-07-30  Bruno Haible  <bruno@clisp.org>
23116
23117         * modules/csharpexec (configure.ac): Comment out macro invocation.
23118         * modules/javaexec (configure.ac): Likewise.
23119         * modules/javacomp-script (configure.ac): Likewise.
23120
23121         * modules/csharpcomp-script (configure.ac): Use AC_REQUIRE.
23122
23123 2006-07-30  Bruno Haible  <bruno@clisp.org>
23124
23125         * modules/clean-temp (Depends-on): Add linkedhash-list, remove
23126         linked-list.
23127
23128 2006-07-30  Bruno Haible  <bruno@clisp.org>
23129
23130         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Assume <string.h> exists.
23131
23132 2006-07-30  Bruno Haible  <bruno@clisp.org>
23133
23134         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
23135         Initialize MOSTLYCLEANFILES to core and *.stackdump, so that core dumps
23136         get removed.
23137
23138 2006-07-29  Bruno Haible  <bruno@clisp.org>
23139
23140         Make it possible for gnulib-tool to work with locally modified or
23141         augmented gnulib repositories.
23142         * gnulib-tool (func_usage): Document --local-dir option.
23143         (local_gnulib_dir): New variable.
23144         Handle --local-dir option.
23145         (func_lookup_file): New function.
23146         (func_all_modules, func_verify_module): Look also in $local_gnulib_dir.
23147         (func_get_description, func_get_filelist, func_get_description,
23148         func_get_filelist, func_get_dependencies, func_get_autoconf_snippet,
23149         func_get_automake_snippet, func_get_include_directive,
23150         func_get_license, func_get_maintainer): Use func_lookup_file.
23151         (func_import, func_create_testdir): Use func_lookup_file.
23152
23153 2006-07-29  Bruno Haible  <bruno@clisp.org>
23154
23155         * modules/setenv (Depends-on): Add unistd.
23156
23157 2006-07-29  Bruno Haible  <bruno@clisp.org>
23158
23159         * lib/setenv.c: Undo unintended modification done on 2006-02-27.
23160
23161 2006-07-29  Bruno Haible  <bruno@clisp.org>
23162
23163         * lib/localcharset.c: Assume <stddef.h>, <stdlib.h>, <string.h> exist.
23164
23165 2006-07-29  Bruno Haible  <bruno@clisp.org>
23166
23167         * gnulib-tool (import, update): If there is no Makefile.am, look at
23168         aclocal.m4, instead of bailing out.
23169
23170 2006-07-29  Bruno Haible  <bruno@clisp.org>
23171
23172         * gnulib-tool (func_usage): Revert most of the 2006-07-15 change.
23173         Categorize the options by when they are useful.
23174
23175 2006-07-29  Bruno Haible  <bruno@clisp.org>
23176
23177         * gnulib-tool (func_usage): Document option --no-libtool.
23178         Handle option --no-libtool.
23179         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Update
23180         for changed semantics of $libtool variable.
23181         (func_import): Likewise. If libtool is not used, show this through
23182         an option --no-libtool.
23183         (func_create_testdir): Update.
23184
23185 2006-07-29  Bruno Haible  <bruno@clisp.org>
23186
23187         * gnulib-tool (func_import): Extend error message about missing
23188         --doc-base.
23189
23190 2006-07-29  Bruno Haible  <bruno@clisp.org>
23191
23192         * gnulib-tool (func_import): Don't create the $docbase directory if
23193         there is no file to store there.
23194
23195 2006-07-29  Bruno Haible  <bruno@clisp.org>
23196
23197         * gnulib-tool (autoconf_minversion): If a --dir option is given and
23198         relevant, look for configure.ac there, not in the current directory.
23199         Also use a simple search for AC_PREREQ, not "autoconf --trace".
23200
23201 2006-07-29  Bruno Haible  <bruno@clisp.org>
23202
23203         * gnulib-tool (SORT): New variable.
23204         (func_usage): Undocument --assume-autoconf option.
23205         Remove --assume-autoconf option handling.
23206         (autoconf_minversion): Determine from the contents of configure.ac.
23207         (func_import): Remove autoconf_minversion handling.
23208         Suggested by Eric Blake.
23209
23210 2006-07-29  Bruno Haible  <bruno@clisp.org>
23211
23212         * doc/gnulib-tool.texi (gl_LIBTOOL): Mention --no-libtool option.
23213
23214 2006-07-29  Bruno Haible  <bruno@clisp.org>
23215
23216         * config/srclist.txt (*setenv.[ch]): Remove rules.
23217
23218 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
23219
23220         * m4/inet_pton.m4, inet_ntop.m4: Check for netinet/in.h too.
23221
23222 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
23223
23224         * lib/inet_ntop.h, inet_pton.h: Need to include netinet/in.h before
23225         arpa/inet.h.
23226
23227 2006-07-28  Simon Josefsson  <jas@extundo.com>
23228
23229         * modules/inet_ntop (Depends-on): Depend on arpa_inet.
23230         * modules/inet_pton (Depends-on): Likewise.
23231
23232 2006-07-28  Simon Josefsson  <jas@extundo.com>
23233
23234         * m4/netinet_in_h.m4: New file.
23235
23236 2006-07-28  Simon Josefsson  <jas@extundo.com>
23237
23238         * lib/inet_ntop.h, inet_pton.h: No need to guard netinet/in.h
23239         #include's.
23240
23241 2006-07-28  Simon Josefsson  <jas@extundo.com>
23242
23243         * lib/inet_ntop.h, inet_pton.h: No need to guard arpa/inet.h
23244         #include's.
23245
23246 2006-07-28  Paul Eggert  <eggert@cs.ucla.edu>
23247
23248         * lib/modechange.c (mode_compile): Numeric modes now affect setuid and
23249         setgid on directories only if they set these bits.
23250         * lib/modechange.h: Remove obsolete comment about masks.
23251
23252 2006-07-28  Eric Blake  <ebb9@byu.net>
23253
23254         * lib/regex_internal.h (struct re_dfa_t) [!_LIBC]: Avoid invalid C89
23255         macro expansion.
23256
23257 2006-07-28  Bruno Haible  <bruno@clisp.org>
23258
23259         * lib/inet_ntop.h, inet_pton.h: Use #if HAVE* instead of #ifdef HAVE*.
23260
23261 2006-07-28  Bruno Haible  <bruno@clisp.org>
23262
23263         * m4/mbchar.m4 (gl_MBCHAR): Also test for iswcntrl.
23264
23265 2006-07-28  Bruno Haible  <bruno@clisp.org>
23266
23267         * lib/mbchar.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
23268         iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit):
23269         Define fallbacks.
23270         Avoids link error on FreeBSD 4.x.
23271         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
23272
23273         * lib/wcwidth.h (iswprint): Assume an ASCII compatible wide character
23274         encoding.
23275         * lib/mbswidth.c (iswcntrl): Likewise.
23276
23277 2006-07-27  Bruno Haible  <bruno@clisp.org>
23278
23279         * m4/stdint.m4 (gl_STDINT_H): Define __STDC_CONSTANT_MACROS during the
23280         test.
23281
23282 2006-07-27  Bruno Haible  <bruno@clisp.org>
23283
23284         * lib/stdint_.h (INT*_C, UINT*_C) [C++]: Define these if
23285         __STDC_CONSTANT_MACROS is defined, not if __STDC_LIMIT_MACROS is
23286         defined.
23287
23288 2006-07-26  Eric Blake  <ebb9@byu.net>
23289
23290         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Check for missing pipe.
23291
23292 2006-07-26  Eric Blake  <ebb9@byu.net>
23293
23294         * lib/mkstemp-safer.c [! HAVE_MKSTEMP]: Add prototype for platforms
23295         like mingw that lack mkstemp.
23296         * lib/pipe-safer.c (pipe_safer) [!HAVE_FUNC_PIPE]: Provide fallback to
23297         avoid compilation warning on mingw.
23298
23299 2006-07-26  Bruno Haible  <bruno@clisp.org>
23300
23301         * m4/stdint.m4 (gl_STDINT_H): Also verify the existence of the macros
23302         INT*_MIN, INT_LEAST*_MAX, INT_LEAST*_MIN, UINT_LEAST*_MAX,
23303         INT_FAST*_MIN, INTPTR_MIN.
23304
23305 2006-07-25  Bruno Haible  <bruno@clisp.org>
23306
23307         * modules/version-etc (Depends-on): Add stdarg.
23308
23309 2006-07-25  Bruno Haible  <bruno@clisp.org>
23310
23311         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Avoid 'eval' in front of
23312         complex commands.
23313
23314 2006-07-25  Bruno Haible  <bruno@clisp.org>
23315
23316         * lib/version-etc.c (version_etc_va): Use va_copy, assumed to be
23317         defined in <stdarg.h> or config.h.
23318
23319 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
23320
23321         * m4/stdio-safer.m4 (gl_FOPEN_SAFER, gl_TMPFILE_SAFER): New macros.
23322         (gl_STDIO_SAFER): Remove.
23323
23324 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
23325
23326         * MODULES.html.sh (File stream based Input/Output):
23327         Add fopen-safer, tmpfile-safer; remove stdio-safer.
23328         * modules/getusershell (Depends-on): Change stdio-safer to fopen-safer.
23329         * modules/fopen-safer, modules/tmpfile-safer: New files.
23330         * modules/stdio-safer: Remove.
23331
23332 2006-07-24  Bruno Haible  <bruno@clisp.org>
23333
23334         * modules/tmpdir: New file.
23335         * MODULES.html.sh (File system functions): Add it.
23336
23337 2006-07-24  Bruno Haible  <bruno@clisp.org>
23338
23339         * modules/javacomp (Depends-on): Add unistd, javaversion, binary-io,
23340         getline, pathname, fwriteerror, clean-temp, xvasprintf, strstr.
23341
23342 2006-07-24  Bruno Haible  <bruno@clisp.org>
23343
23344         * modules/clean-temp: New file.
23345
23346 2006-07-24  Bruno Haible  <bruno@clisp.org>
23347
23348         * m4/tmpdir.m4: New file, from GNU gettext.
23349
23350 2006-07-24  Bruno Haible  <bruno@clisp.org>
23351
23352         * lib/tmpdir.h: New file, from GNU gettext.
23353         * lib/tmpdir.c: New file, from GNU gettext.
23354
23355 2006-07-24  Bruno Haible  <bruno@clisp.org>
23356
23357         * lib/clean-temp.h: New file, from GNU gettext.
23358         * lib/clean-temp.c: New file, from GNU gettext.
23359
23360 2006-07-23  Eric Blake  <ebb9@byu.net>
23361
23362         * modules/stdio-safer (Files): Add tmpfile-safer.c.
23363         (Depends-on): Add binary-io.
23364
23365 2006-07-23  Eric Blake  <ebb9@byu.net>
23366
23367         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add tmpfile-safer.c.
23368
23369 2006-07-23  Eric Blake  <ebb9@byu.net>
23370
23371         * lib/tmpfile-safer.c: New file.
23372         * lib/stdio-safer.h (fopen_safer): Add prototype.
23373         * lib/stdio--.h (tmpfile): Make safer.
23374
23375 2006-07-23  Bruno Haible  <bruno@clisp.org>
23376
23377         * lib/gl_anylinked_list2.h (ASYNCSAFE): New macro.
23378         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before,
23379         gl_linked_add_after, gl_linked_add_at, gl_linked_remove_node,
23380         gl_linked_remove_at): Use it.
23381
23382 2006-07-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
23383         and Simon Josefsson <jas@extundo.com>
23384
23385         * lib/getaddrinfo.h (AI_PASSIVE): Make sure it is defined.
23386
23387         * lib/getaddrinfo.c (getaddrinfo): Support AI_PASSIVE.
23388
23389 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
23390
23391         * modules/close-stream: New file.
23392         * modules/closeout (Description): Make it clear that it exits
23393         with a diagnostic on error.
23394         (Depends-on): Add close-stream.  Remove fpending, stdbool.
23395         * MODULES.html.sh (File stream based Input/Output): Add close-stream.
23396
23397 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
23398
23399         * m4/close-stream.m4: New file.
23400
23401 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
23402
23403         * lib/close-stream.c, lib/close-stream.h: New files.
23404
23405 2006-07-22  Bruno Haible  <bruno@clisp.org>
23406
23407         Merge from GNU gettext 0.15.
23408
23409         2006-05-01  Bruno Haible  <bruno@clisp.org>
23410
23411                 * build-aux/javacomp.sh.in: Update for changed javacomp.m4.
23412
23413         2006-07-22  Bruno Haible  <bruno@clisp.org>
23414
23415                 * modules/javaversion: New file.
23416                 * MODULES.html.sh (Java): Add javaversion.
23417
23418         2006-03-12  Bruno Haible  <bruno@clisp.org>
23419
23420                 * build-aux/javaexec.sh.in: Update for changed javaexec.m4.
23421
23422         2005-12-04  Bruno Haible  <bruno@clisp.org>
23423
23424                 * build-aux/csharpexec.sh.in: Add support for 'clix' launcher
23425                 (untested).
23426
23427         2006-06-21  Bruno Haible  <bruno@clisp.org>
23428
23429                 Avoid warnings from recent versions of mcs.
23430                 * build-aux/csharpcomp.sh.in (options_mcs): Don't use options
23431                 -o, -L, -r any more. Use options documented since mcs-1.0
23432                 instead. Similarly for -g.
23433
23434         2005-12-04  Bruno Haible  <bruno@clisp.org>
23435
23436                 * build-aux/csharpcomp.sh.in: Suffix for resources is
23437                 .resources, not .resource.
23438
23439         2005-07-09  Bruno Haible  <bruno@clisp.org>
23440
23441                 * build-aux/csharpcomp.sh.in (options_csc): For -l option,
23442                 add a .dll suffix.
23443                 Reported by Mark Junker <mjscod@gmx.de>.
23444
23445         2006-07-22  Bruno Haible  <bruno@clisp.org>
23446
23447                 * modules/gettext: Upgrade to gettext-0.15.
23448                 (Files): Remove m4/isc-posix.m4. Add m4/lock.m4,
23449                 m4/visibility.m4.
23450                 Replace m4/inttypes.m4 with m4/inttypes-h.m4.
23451
23452 2006-07-22  Bruno Haible  <bruno@clisp.org>
23453
23454         Merge from GNU gettext 0.15.
23455
23456         2006-03-25  Bruno Haible  <bruno@clisp.org>
23457
23458                 * lib-link.m4 (AC_LIB_LINKFLAGS_FROM_LIBS): New macro.
23459
23460         2006-07-21  Bruno Haible  <bruno@clisp.org>
23461
23462                 * javacomp.m4 (gt_JAVACOMP): Convert target_version "null" to
23463                 "1.1".
23464
23465         2006-05-09  Bruno Haible  <bruno@clisp.org>
23466
23467                 * javacomp.m4 (gt_JAVACOMP): On Cygwin, set
23468                 CLASSPATH_SEPARATOR to a semicolon. Use CLASSPATH_SEPARATOR
23469                 for the conftestver execution.
23470
23471         2006-05-01  Bruno Haible  <bruno@clisp.org>
23472
23473                 * javacomp.m4 (gt_JAVACOMP): Accept a source-version and an
23474                 optional target-version argument. Verify that the compiler
23475                 groks source of the specified source-version, or add -source
23476                 option as necessary. Verify that the compiler produces
23477                 bytecode in the specified target-version, or add -target and
23478                 -source options as necessary. Make the result of the test
23479                 available as variable CONF_JAVAC. Also log error output in
23480                 config.log.
23481
23482         2006-03-11  Bruno Haible  <bruno@clisp.org>
23483
23484                 * javacomp.m4 (gt_JAVACOMP): Treat gcj-4.x like gcj-3.x.
23485
23486         2006-05-09  Bruno Haible  <bruno@clisp.org>
23487
23488                 * javaexec.m4 (gt_JAVAEXEC): On Cygwin, set
23489                 CLASSPATH_SEPARATOR to a semicolon.
23490
23491         2006-03-12  Bruno Haible  <bruno@clisp.org>
23492
23493                 * javaexec.m4 (gt_JAVAEXEC): Make the result of the test
23494                 available as variable CONF_JAVA, for subsequent autoconf
23495                 tests. Also log error output in config.log.
23496
23497         2006-07-19  Bruno Haible  <bruno@clisp.org>
23498
23499                 * getline.m4 (AM_FUNC_GETLINE): When cross-compiling, assume
23500                 that getline works on glibc2 systems. Needed to avoid trouble
23501                 in relocatable.c.
23502                 Reported by Nils Magnus Larsgard <nmlarsgaard@atmel.no>.
23503
23504         2005-12-04  Bruno Haible  <bruno@clisp.org>
23505
23506                 * csharpexec.m4 (gt_CSHARPEXEC): Add support for 'clix'
23507                 launcher (untested).
23508
23509         2005-12-04  Bruno Haible  <bruno@clisp.org>
23510
23511                 * csharpcomp.m4 (gt_CSHARPCOMP): Also set CSHARPCOMPFLAGS.
23512
23513         2006-07-22  Bruno Haible  <bruno@clisp.org>
23514
23515                 * gettext.m4: Update from GNU gettext-0.15.
23516                 * nls.m4: Likewise.
23517                 * po.m4: Likewise.
23518                 * inttypes-pri.m4: Likewise.
23519                 * inttypes-h.m4: Renamed from inttypes.m4.
23520                 (gl_HEADER_INTTYPES_H): Renamed from gt_HEADER_INTTYPES_H.
23521
23522 2006-07-22  Bruno Haible  <bruno@clisp.org>
23523
23524         Merge from GNU gettext 0.15.
23525
23526         2005-07-05  Bruno Haible  <bruno@clisp.org>
23527
23528                 * printf-args.c (printf_fetchargs): Work around broken
23529                 definition of wint_t on mingw.
23530
23531         2005-02-12  Bruno Haible  <bruno@clisp.org>
23532
23533                 * xallocsa.h: Add extern "C" for C++.
23534
23535         2006-05-17  Bruno Haible  <bruno@clisp.org>
23536
23537                 Cygwin portability.
23538                 * progreloc.c (WIN32_NATIVE): Renamed from WIN32.
23539
23540         2006-04-30  Bruno Haible  <bruno@clisp.org>
23541
23542                 * progreloc.c: Include <mach-o/dyld.h> if available.
23543                 (find_executable): Use _NSGetExecutablePath when possible.
23544
23545         2006-05-06  Charles Wilson  <cygwin@cwilson.fastmail.fm>
23546
23547                 * progreloc.c (maybe_executable) [CYGWIN]: Use the access()
23548                 function.
23549
23550         2005-12-29  Bruno Haible  <bruno@clisp.org>
23551
23552                 * progreloc.c (set_program_name_and_installdir): Fix
23553                 compilation error.
23554
23555         2005-12-04  Bruno Haible  <bruno@clisp.org>
23556
23557                 Cygwin portability.
23558                 * progreloc.c: Include <windows.h> also on Cygwin.
23559                 (find_executable): Add support for Cygwin.
23560                 (set_program_name_and_installdir): Handle also platforms with
23561                 nonempty EXEEXT.
23562
23563         2006-07-11  Bruno Haible  <bruno@clisp.org>
23564
23565                 * javacomp.c: Fix a comment.
23566                 Reported by Jim Meyering.
23567
23568         2006-04-30  Bruno Haible  <bruno@clisp.org>
23569
23570                 * javacomp.h (compile_java_class): Add source_version,
23571                 target_version arguments.
23572                 * javacomp.c: Rewritten to choose only a compiler that
23573                 respects the specified source_version and target_version.
23574
23575         2006-06-27  Bruno Haible  <bruno@clisp.org>
23576
23577                 Assume correct S_ISDIR macro.
23578                 * mkdtemp.c: Remove test of STAT_MACROS_BROKEN.
23579
23580         2006-07-22  Bruno Haible  <bruno@clisp.org>
23581
23582                 * javaversion.h: New file, from GNU gettext.
23583                 * javaversion.c: New file, from GNU gettext.
23584                 * javaversion.java: New file, from GNU gettext.
23585                 * javaversion.class: New file, from GNU gettext.
23586
23587         2006-05-17  Bruno Haible  <bruno@clisp.org>
23588
23589                 Cygwin portability.
23590                 * javaexec.c (execute_java_class): Test for jview program
23591                 also on Cygwin.
23592
23593         2006-04-09  Bruno Haible  <bruno@clisp.org>
23594
23595                 * fatal-signal.c: Don't include string.h.
23596                 (at_fatal_signal): Use a copying loop instead of memcpy.
23597
23598         2005-12-04  Bruno Haible  <bruno@clisp.org>
23599
23600                 * csharpexec.c: Add support for 'clix' launcher (untested).
23601                 (execute_csharp_using_sscli): New function.
23602                 (execute_csharp_program): Call it.
23603
23604         2006-06-21  Bruno Haible  <bruno@clisp.org>
23605
23606                 Avoid warnings from recent versions of mcs.
23607                 * csharpcomp.c (compile_csharp_using_mono): Don't use options
23608                 -o, -L, -r any more. Use options documented since mcs-1.0
23609                 instead. Similarly for -g.
23610
23611         2005-07-09  Bruno Haible  <bruno@clisp.org>
23612
23613                 * csharpcomp.c (compile_csharp_using_sscli): For -l option,
23614                 add a .dll suffix.
23615                 Reported by Mark Junker <mjscod@gmx.de>.
23616
23617         2006-06-17  Bruno Haible  <bruno@clisp.org>
23618
23619                 * config.charset: Update for NetBSD 3.0.
23620
23621         2006-05-17  Bruno Haible  <bruno@clisp.org>
23622
23623                 Cygwin portability.
23624                 * localcharset.c (WIN32_NATIVE): Renamed from WIN32.
23625
23626         2006-05-16  Bruno Haible  <bruno@clisp.org>
23627
23628                 * localcharset.c [CYGWIN]: Include <windows.h>.
23629                 (get_charset_aliases): For Cygwin, return the same CPxxx
23630                 aliases list as under WIN32.
23631                 (locale_charset) [CYGWIN]: Try to retrieve the encoding from
23632                 the environment variables. Fall back to GetACP().
23633
23634         2006-04-05  Bruno Haible  <bruno@clisp.org>
23635
23636                 * config.charset: Update Juan Manuel Guerrero's address.
23637
23638         2005-02-12  Bruno Haible  <bruno@clisp.org>
23639
23640                 * allocsa.h: Add extern "C" for C++.
23641
23642         2005-02-10  Bruno Haible  <bruno@clisp.org>
23643
23644                 * allocsa.h (sa_alignof): Define differently with AIX xlc, to
23645                 avoid a bug of this compiler on AIX 3.2.5 dealing with enums.
23646
23647         2006-07-22  Bruno Haible  <bruno@clisp.org>
23648
23649                 * gettext.h: Update to GNU gettext-0.15.
23650
23651 2006-07-22  Bruno Haible  <bruno@clisp.org>
23652
23653         * config/srclist.txt: Resync printf-args.c, vasnprintf.c,
23654         localcharset.c, mkdtemp.c, config.rpath, lib-ld.m4, lib-link.m4,
23655         lib-prefix.m4, longdouble.m4, ssize_t.m4.
23656
23657 2006-07-21  Eric Blake  <ebb9@byu.net>
23658
23659         * modules/stdlib-safer: New file.
23660         * MODULES.html.sh (File stream based Input/Output): Add
23661         stdlib-safer.
23662
23663 2006-07-21  Eric Blake  <ebb9@byu.net>
23664
23665         * lib/stdlib-safer.h: New file from coreutils, required by
23666         stdlib--.h.
23667
23668 2006-07-20  Paul Eggert  <eggert@cs.ucla.edu>
23669
23670         * gnulib-tool (func_usage): Document --assume-autoconf='latest-stable'.
23671
23672 2006-07-20  Bruno Haible  <bruno@clisp.org>
23673
23674         * gnulib-tool: Recognize new option --assume-autoconf.
23675         (autoconf_minversion): New variable.
23676         (func_get_filelist): Use it to decide whether to add onceonly_2_57.m4.
23677
23678 2006-07-20  Bruno Haible  <bruno@clisp.org>
23679
23680         * MODULES.html.sh (func_all_modules): Add a missing func_begin_table.
23681
23682 2006-07-19  Derek R. Price  <derek@ximbiot.com>
23683
23684         * lib/getaddrinfo.h: Don't define unimplemented AI_* flags.
23685         Reindent and repaginate.
23686
23687 2006-07-19  Derek Price  <derek@ximbiot.com>
23688
23689         * doc/gnulib.texi (Libtool and Windows):  Eliminate passive voice.
23690         Correct grammar.
23691
23692 2006-07-17  Bruno Haible  <bruno@clisp.org>
23693
23694         * modules/list: New file.
23695         * modules/array-list: New file.
23696         * modules/carray-list, modules/carray-list-tests: New files.
23697         * modules/linked-list, modules/linked-list-tests: New files.
23698         * modules/avltree-list, modules/avltree-list-tests: New files.
23699         * modules/rbtree-list, modules/rbtree-list-tests: New files.
23700         * modules/linkedhash-list, modules/linkedhash-list-tests: New files.
23701         * modules/avltreehash-list, modules/avltreehash-list-tests: New files.
23702         * modules/rbtreehash-list, modules/rbtreehash-list-tests: New files.
23703         * modules/oset: New file.
23704         * modules/array-oset: New file.
23705         * modules/avltree-oset, modules/avltree-oset-tests: New files.
23706         * modules/rbtree-oset, modules/rbtree-oset-tests: New files.
23707         * tests/test-carray_list.c: New file.
23708         * tests/test-linked_list.c: New file.
23709         * tests/test-avltree_list.c: New file.
23710         * tests/test-rbtree_list.c: New file.
23711         * tests/test-linkedhash_list.c: New file.
23712         * tests/test-avltreehash_list.c: New file.
23713         * tests/test-rbtreehash_list.c: New file.
23714         * tests/test-avltree_oset.c: New file.
23715         * tests/test-rbtree_oset.c: New file.
23716         * MODULES.html.sh (Container data structures): New section.
23717
23718 2006-07-17  Bruno Haible  <bruno@clisp.org>
23719
23720         * m4/gl_list.m4: New file.
23721
23722 2006-07-17  Bruno Haible  <bruno@clisp.org>
23723
23724         * lib/gl_list.h: New file.
23725         * lib/gl_list.c: New file.
23726         * lib/gl_array_list.h: New file.
23727         * lib/gl_array_list.c: New file.
23728         * lib/gl_carray_list.h: New file.
23729         * lib/gl_carray_list.c: New file.
23730         * lib/gl_linked_list.h: New file.
23731         * lib/gl_linked_list.c: New file.
23732         * lib/gl_anylinked_list1.h: New file.
23733         * lib/gl_anylinked_list2.h: New file.
23734         * lib/gl_avltree_list.h: New file.
23735         * lib/gl_avltree_list.c: New file.
23736         * lib/gl_anyavltree_list1.h: New file.
23737         * lib/gl_anyavltree_list2.h: New file.
23738         * lib/gl_rbtree_list.h: New file.
23739         * lib/gl_rbtree_list.c: New file.
23740         * lib/gl_anyrbtree_list1.h: New file.
23741         * lib/gl_anyrbtree_list2.h: New file.
23742         * lib/gl_anytree_list1.h: New file.
23743         * lib/gl_anytree_list2.h: New file.
23744         * lib/gl_linkedhash_list.h: New file.
23745         * lib/gl_linkedhash_list.c: New file.
23746         * lib/gl_anyhash_list1.h: New file.
23747         * lib/gl_anyhash_list2.h: New file.
23748         * lib/gl_avltreehash_list.h: New file.
23749         * lib/gl_avltreehash_list.c: New file.
23750         * lib/gl_rbtreehash_list.h: New file.
23751         * lib/gl_rbtreehash_list.c: New file.
23752         * lib/gl_anytreehash_list1.h: New file.
23753         * lib/gl_anytreehash_list2.h: New file.
23754
23755         * lib/gl_oset.h: New file.
23756         * lib/gl_oset.c: New file.
23757         * lib/gl_array_oset.h: New file.
23758         * lib/gl_array_oset.c: New file.
23759         * lib/gl_avltree_oset.h: New file.
23760         * lib/gl_avltree_oset.c: New file.
23761         * lib/gl_rbtree_oset.h: New file.
23762         * lib/gl_rbtree_oset.c: New file.
23763         * lib/gl_anytree_oset.h: New file.
23764
23765 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
23766
23767         * m4/mkancesdirs.m4: New file.
23768         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Mention dirchownmod.c,
23769         dirchownmod.h.  Don't require AC_FUNC_ALLOCA, gl_AFS, gl_CHDIR_SAFER;
23770         no longer needed.  Require gl_FUNC_LCHOWN, since dirchownmod.c needs
23771         it.
23772
23773 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
23774
23775         * lib/dirchownmod.c, lib/dirchownmod.h, lib/mkancesdirs.c:
23776         * lib/mkancesdirs.h: New files.
23777         * lib/mkdir-p.c: Don't include alloca.h, stdio.h, sys/types.h,
23778         unistd.h, string.h, chdir-safer.h, dirname.h, lchmod.h, lchown.h,
23779         save-cwd.h.  Instead, include dirchownmod.h and mkancesdirs.h.
23780         (make_dir_parents): New args MAKE_ANCESTOR, OPTIONS, ANNOUNCE,
23781         MODE_BITS.  Remove options VERBOSE_FMT_STRING, CWD_ERRNO.  All
23782         callers changed.  Revamp internals significantly, by not
23783         attempting to create directories that are temporarily more
23784         permissive than the final results.  Do not attempt to use
23785         save_cwd/restore_cwd; it isn't worth it for mkdir and install.
23786         This removes some race conditions, fixes some bugs, and simplifies
23787         things.  Use new dirchownmod function to do owner and mode changes.
23788         * lib/mkdir-p.h: Likewise.
23789         * lib/modechange.c (octal_to_mode): New function.
23790         (struct mode_change): New member mentioned.
23791         (make_node_op_equals): New arg mentioned.  All callers changed.
23792         (mode_compile): Keep track of which mode bits the user has explicitly
23793         mentioned.
23794         (mode_adjust): New arg DIR, so that we implement the X op correctly.
23795         New arg PMODE_BITS, to keep track of which mode bits the user
23796         mentioned; it treats S_ISUID and S_ISGID speciall.
23797         All callers changed.
23798         * lib/modechange.h: Likewise.
23799
23800 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
23801
23802         * MODULES.html.sh: Add mkancestors.
23803         * modules/mkancesdirs: New module.
23804         * modules/mkdir-p (Files): Remove lib/chdir-safer.c, lib/chdir-safer.h,
23805         lib/same-inode.h, m4/afs.m4, m4/chdir-safer.m4.
23806         The chdir-safer and afs files are now orphans; I'll remove them
23807         unless someone speaks up.
23808         Add lib/dirchownmod.c, lib/dirchownmod.h.
23809         (Depends-on): Remove alloca, chown, save-cwd, dirname.
23810         Add lchown, mkancesdirs.
23811         (Maintainer): Add self.
23812
23813 2006-07-15  Karl Berry  <karl@gnu.org>
23814
23815         * gnulib-tool: help message wording/arrangement.
23816
23817 2006-07-14  Simon Josefsson  <jas@extundo.com>
23818
23819         * doc/gnulib.texi (Libtool and Windows): New section.
23820
23821 2006-07-12  Simon Josefsson  <jas@extundo.com>
23822
23823         * modules/gendocs (License): Fix license, approved by Karl.
23824
23825 2006-07-12  Eric Blake  <ebb9@byu.net>
23826
23827         * MODULES.html.sh: Add gendocs.
23828
23829 2006-07-11  Eric Blake  <ebb9@byu.net>
23830
23831         * modules/fdl: New module, to install doc/fdl.texi.
23832         * MODULES.html.sh: Add new section for documentation modules.
23833         * gnulib-tool: Avoid space-tab.
23834         (--doc-base): New option, to manage files from doc.
23835
23836 2006-07-11  Eric Blake  <ebb9@byu.net>
23837
23838         * m4/absolute-header.m4: Fix comments to match recent change.
23839
23840 2006-07-11  Eric Blake  <ebb9@byu.net>
23841
23842         * gnulib-tool: List --doc-base before --tests-base.
23843
23844 2006-07-11  Derek R. Price  <derek@ximbiot.com>
23845
23846         * lib/glob.c: s/NAMLEN/_D_EXACT_NAMLEN/.
23847
23848 2006-07-11  Bruno Haible  <bruno@clisp.org>
23849
23850         * README: Mention where to put documentation.
23851
23852 2006-07-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23853
23854         * doc/functions.texi, gnulib-tool.texi, gnulib.texi: Fix some typos.
23855
23856 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
23857
23858         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Like today's change
23859         to stdint.m4.
23860
23861 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
23862
23863         * m4/stdint.m4 (gl_STDINT_H): Like yesterday's change to
23864         absolute-header.m4.  Also, set ABSOLUTE_STDINT_H to a string
23865         "no/such/file/stdint.h" when there is no such file, so that
23866         the resulting C code can be parsed by dodgy compilers.
23867         Problems reported by Bob Proulx.
23868
23869 2006-07-10  Derek R. Price  <derek@ximbiot.com>
23870
23871         * lib/backupfile.c, dirfd.h, fts.c, getcwd.c, glob.c, glob_.h:
23872         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
23873         macros into the GNU _D_EXACT_NAMLEN.
23874         * lib/savedir.c:  Likewise.
23875         (savedirstream): Use _D_EXACT_NAMLEN in preference to strlen.
23876
23877 2006-07-10  Derek R. Price  <derek@ximbiot.com>
23878         and Paul Eggert  <eggert@cs.ucla.edu>
23879
23880         * m4/backupfile.m4, d-ino.m4, d-type.m4, dirfd.m4, fts.m4, getcwd.m4:
23881         * m4/savedir.m4:
23882         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
23883         macros into the GNU _D_EXACT_NAMLEN.
23884
23885 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
23886
23887         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Use "" rather than <>
23888         around the absolute name, to work around a problem with the HP-UX
23889         11.23 native C compiler, reported by Bob Proulx.
23890
23891 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
23892
23893         * doc/maintain.texi, make-stds.texi: Sync from
23894         <http://savannah.gnu.org/projects/gnustandards>.
23895
23896 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
23897
23898         * build-aux/depcomp, build-aux/install-sh: Sync from Automake.
23899
23900 2006-07-09  Jim Meyering  <jim@meyering.net>
23901
23902         * m4/glob.m4: Remove a doubled word in a comment.
23903
23904 2006-07-09  Jim Meyering  <jim@meyering.net>
23905
23906         * lib/argp-pv.c: Remove a doubled word in a comment.
23907         * lib/check-version.c (check_version): Likewise.
23908         * lib/javacomp.c (compile_java_class): Likewise.
23909
23910 2006-07-08  Paul Eggert  <eggert@cs.ucla.edu>
23911
23912         * gnulib-tool (func_get_filelist): Don't echo m4/onceonly_2_57.m4,
23913         for the benefit of people using Autoconf 2.60.  If you want to
23914         support older Autoconf versions you can copy m4/onceonly_2_57.m4
23915         (or m4/onceonly.m4, if pre-2.57) manually.
23916
23917 2006-07-08  Jim Meyering  <jim@meyering.net>
23918
23919         * m4/link-follow.m4: Remove one of two adjacent "whether"s in a
23920         comment.
23921         * m4/getopt.m4: Remove one of two adjacent "your"s in a comment.
23922         * m4/regex.m4 (gl_REGEX): Remove one of two adjacent "the"s in a
23923         comment.
23924
23925 2006-07-08  Jim Meyering  <jim@meyering.net>
23926
23927         * lib/getndelim2.h (getndelim2): Remove doubled "after" in comment.
23928
23929 2006-07-07  Simon Josefsson  <jas@extundo.com>
23930
23931         * tests/test-crc.c: Change expected crc value, the test vector
23932         were probably computed using the old broken crc.c?
23933
23934 2006-07-06  Simon Josefsson  <jas@extundo.com>
23935
23936         * modules/sys_socket (Files): Add m4/sockpfaf.m4 (this module is
23937         now the canonical place for the M4 file).
23938
23939         * modules/getaddrinfo (Files): Remove m4/sockpfaf.m4, we get it
23940         from the sys_socket dependency now.
23941
23942         * modules/inet_pton (Files): Ditto.
23943
23944         * modules/inet_ntop (Files): Ditto.
23945
23946 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
23947
23948         * modules/getusershell (configure.ac): Use gl_FUNC_GETUSERSHELL,
23949         not gl_PREREQ_GETUSERSHELL.
23950
23951 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23952
23953         * m4/_inttypes_h.m4 (gl_INTTYPES_H): Use AC_CHECK_DECLS_ONCE
23954         with only one argument, for Autoconf 2.60.
23955         * m4/fileblocks.m4 (gl_PREREQ_FILEBLOCKS): AC_CHECK_DECLS_ONCE may
23956         expand to nothing, so add a shell command to avoid syntax error.
23957         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
23958
23959 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23960
23961         * lib/strtod.c (strtod): cast the argument of tolower to unsigned char.
23962
23963 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
23964
23965         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't check for getenv decl;
23966         no longer needed.  Check for isblank decl.
23967         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Don't check for getenv decl.
23968         * m4/regex.m4 (gl_PREREQ_REGEX): Dheck for isblank decl instead
23969         of existence.
23970
23971 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
23972
23973         * lib/getloadavg.c: Use __VMS, not VMS.
23974         * lib/getopt.c: Likewise.
23975         * lib/getpagesize.h: Likewise.
23976         * lib/glob.c: Remove most VMS cruft; it hasn't been tested for a while
23977         and probably does not work.
23978
23979 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
23980
23981         * lib/.cppi-disable: Add wcwidth.
23982         * lib/fnmatch.c (ISBLANK): Remove.  All uses changed to isblank.
23983         (isblank) [! (defined isblank || HAVE_DECL_ISBLANK)]: New macro.
23984         (ISGRAPH): Remove.  All uses changed to isgraph.
23985         (FOLD) [!defined _LIBC]: Remove special case.
23986         * lib/getdate.y (lookup_word): Remove no-longer-needed call to islower.
23987         * lib/regex_internal.h (isblank): Depend on HAVE_DECL_ISBLANK, not
23988         HAVE_ISBLANK.
23989         * lib/strftime.c (TOLOWER, TOUPPER) [!defined _LIBC]: Remove special
23990         case.
23991
23992 2006-07-06  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
23993
23994         * lib/getaddrinfo.c: Changes to compile under MSVC6: changed
23995         '#if WIN32_NATIVE' to '#ifdef' & moved WSAAPI macro inside
23996         brackets.  Other minor changes to suppress some compiler
23997         warnings.
23998
23999 2006-07-06  Derek R. Price  <derek@ximbiot.com>
24000         and Paul Eggert  <eggert@cs.ucla.edu>
24001
24002         * m4/backupfile.m4 (gl_BACKUPFILE): Check for dirent.h, instead
24003         of invoking obsolescent AC_HEADER_DIRENT macro.
24004         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Likewise.
24005         * m4/d-type.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Likewise.
24006         * m4/dirfd.m4 (gl_FUNC_DIRFD): Likewise.
24007         * m4/fts.m4 (gl_FUNC_FTS_CORE): Likewise.
24008         * m4/getcwd.m4 (gl_PREREQ_GETCWD): Likewise.
24009         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
24010         * m4/savedir.m4 (gl_SAVEDIR): Likewise.
24011         * m4/readdir.m4: Remove; no longer needed.
24012
24013 2006-07-06  Derek R. Price  <derek@ximbiot.com>
24014         and Paul Eggert  <eggert@cs.ucla.edu>
24015
24016         * lib/backupfile.c [HAVE_DIRENT_H && ! HAVE_NDIR_H]:
24017         Don't worry about this obsolete case any more.
24018         (HAVE_DIR): Remove.  All uses removed; we now assume you can read
24019         directories.
24020         * lib/dirfd.h [HAVE_DIRENT_H && ! HAVE_NDIR_H]: Don't
24021         worry about this obsolete case any more.
24022         * lib/fts.c: Likewise.
24023         * lib/getcwd.c: Likewise.
24024         * lib/glob.h: Likewise.
24025         * lib/savedir.c: Likewise.
24026
24027 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
24028
24029         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Use AC_CHECK_DECLS_ONCE
24030         rather than AC_CHECK_DECLS for strtoimax and strtoumax.
24031         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Remove; no longer
24032         needed.
24033         All uses removed.
24034         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
24035         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
24036         * m4/exclude.m4 (gl_EXCLUDE): Don't check for isascii; no longer
24037         needed.
24038         * m4/getdate.m4 (gl_GETDATE): Likewise.
24039         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
24040         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
24041         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
24042         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
24043         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
24044         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
24045         * m4/exclude.m4 (gl_EXCLUDE): Don't require AC_C_INLINE; no longer
24046         needed.
24047
24048 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
24049
24050         * lib/memcasecmp.c: Include <limits.h>.
24051         (memcasecmp): Don't assume UCHAR_MAX <= INT_MAX.
24052         * lib/strtod.c (strtod): Don't assume isspace works on negative chars.
24053         Don't assume isdigit succeeds only on '0' through '9'.
24054
24055 2006-07-05  Eric Blake  <ebb9@byu.net>
24056
24057         * modules/getaddrinfo (Depends-on): Add snprintf.
24058
24059 2006-07-05  Eric Blake  <ebb9@byu.net>
24060
24061         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Use gl_HEADER_SYS_SOCKET
24062         to avoid 'header present but could not be compiled' on cygwin.
24063
24064 2006-07-05  Eric Blake  <ebb9@byu.net>
24065
24066         * lib/getaddrinfo.h (NI_NUMERICHOST, NI_NUMERICSERV): Define if
24067         missing from netdb.h.
24068         * lib/getaddrinfo.c (includes): Include inet_ntop and snprintf.
24069
24070 2006-07-05  Derek R. Price  <derek@ximbiot.com>
24071
24072         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Don't require AC_HEADER_STDC;
24073         no longer needed.
24074         * m4/exclude.m4 (gl_EXCLUDE): Likewise.
24075         * m4/getdate.m4 (gl_GETDATE): Likewise.
24076         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
24077         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
24078         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
24079         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
24080         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
24081
24082 2006-07-05  Derek R. Price  <derek@ximbiot.com>
24083
24084         * lib/exclude.c (IN_CTYPE_DOMAIN, is_space): Remove; no longer needed.
24085         All uses of is_space replaced by isspace.
24086         * lib/exit.h: Don't talk about STDC_HEADERS.
24087         * lib/fnmatch.c (ISASCII): Remove; no longer needed.  All uses removed.
24088         (ISPRINT, ISDIGIT, ISALNUM, ISALPHA, ISCNTRL, ISLOWER, ISPUNCT):
24089         (ISSPACE, ISUPPER, ISXDIGIT): Remove; no longer needed.  All uses
24090         replaced by isprint etc.
24091         * lib/getdate.y (IN_CTYPE_DOMAIN, ISSPACE, ISALPHA, ISLOWER): Likewise.
24092         * lib/getusershell.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
24093         * lib/memcasecmp.c (IN_CTYPE_DOMAIN, ISLOWER, TOUPPER): Likewise.
24094         * lib/strtod.c (IN_CTYPE_DOMAIN, ISSPACE, ISDIGIT, TOLOWER): Likewise.
24095         * lib/strtol.c (IN_CTYPE_DOMAIN): Likewise.
24096         * lib/xstrtol.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
24097
24098 2006-07-05  Bruno Haible  <bruno@clisp.org>
24099
24100         * m4/strndup.m4 (gl_FUNC_STRNDUP): When cross-compiling, check whether
24101         the function exists, before testing against AIX.
24102         Reported by Martin Lambers <marlam@marlam.de>.
24103
24104 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
24105
24106         * modules/cycle-check (lib_SOURCES): Add same-inode.h.
24107         From Mark D. Baushke.
24108
24109 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
24110
24111         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Prepend three slashes
24112         to the absolute name, not just one, to bypass Sun C 5.8's
24113         "warning: #include of /usr/include/... may be non-portable".
24114
24115 2006-07-04  Eric Blake  <ebb9@byu.net>
24116
24117         * modules/dirname-tests: New test module.
24118         * tests/test-dirname.c: New file, replacing dirname.c
24119         TEST_DIRNAME section that was recently deleted.
24120
24121 2006-07-04  Bruno Haible  <bruno@clisp.org>
24122
24123         Assume ANSI C header files and <ctype.h> functions.
24124         * lib/mbswidth.c (IN_CTYPE_DOMAIN, ISPRINT, ISCNTRL): Remove macros.
24125         (mbsnwidth): Use isprint, iscntrl instead.
24126
24127 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
24128
24129         Merge from coreutils.
24130         * MODULES.html.sh: Add xstrtold.
24131         * modules/xstrtold: New file.
24132         * modules/cycle-check (Files): Add lib/same-inode.h.
24133         * modules/dirname (Files): Add m4/double-slash-root.m4.
24134         * modules/getcwd (Files): Add m4/getcwd-abort-bug.m4.
24135         * modules/mkdir-p (Files): Add lib/same-inode.h.
24136         * modules/same (Files): Add lib/same-inode.h.
24137
24138 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
24139
24140         * m4/absolute-header.m4: Renamed from full-header-path.m4.
24141         This is to keep the terminology clean; POSIX talks about
24142         "absolute pathnames", not "full pathnames", but the GNU
24143         Coding Standards say to use "path" for something else;
24144         so use "absolute" to keep both sides happy.
24145         (gl_ABSOLUTE_HEADER): Renamed from gl_FULL_HEADER_PATH.
24146         Set gl_absolute_header, not gl_full_header_path.
24147         Set gl_cv_absolute_<header>, not gl_full_path_<header>.
24148         Define ABSOLUTE_<HEADER>, not FULL_PATH_<HEADER>.
24149         All uses changed.
24150
24151         Merge from coreutils.
24152
24153         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
24154
24155         * m4/c-strtod.m4 (gl_C_STRTOLD): Add c-strtod.c to LIBSOURCES.
24156         Require gl_USE_SYSTEM_EXTENSIONS, not gl_C_STRTOD, since we don't
24157         want to require the building of c-strtod.o.
24158         * m4/lib-check.m4 (cu_LIB_CHECK): Remove SEQ_LIBM, since seq no longer
24159         needs -lm directly.
24160         * m4/xstrtod.m4 (gl_XSTRTOLD): New macro.
24161
24162         2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
24163
24164         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Prefer binutils's
24165         --as-needed option if available.  Problem reported by Albert Chin in
24166         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00114.html>.
24167         However, use -Wl,--as-needed, not bare --as-needed, since HP-UX 11.11
24168         cc merely issues a bunch of annoying warnings for --as-needed
24169         (this problem was reported by Bob Proulx).  Also, try linking with
24170         -lm to detect a bug in binutils 2.16 (this problem was reported
24171         by Ralf Wildenhues).
24172
24173         2006-06-18  Jim Meyering  <jim@meyering.net>
24174
24175         Test for a bug that causes glibc's getcwd to suffer a failed assertion.
24176         * m4/getcwd-abort-bug.m4 (gl_FUNC_GETCWD_ABORT_BUG): New file and
24177         macro.
24178         * m4/getcwd.m4 (gl_FUNC_GETCWD): If we detect support for getcwd_null,
24179         also check for glibc-2.4's abort-inducing bug.
24180
24181         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Fix typo.
24182         Low-probability clean-up should be to use rmdir to get rid of
24183         the just-created directory, not unlink.
24184
24185         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): If ftruncate is missing, make
24186         configure fail, and request a bug report to inform us about it.
24187         Add a comment that, barring reports to the contrary, in 2007 we'll
24188         assume ftruncate is universally available.
24189
24190         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
24191
24192         * m4/filemode.m4 (gl_FILEMODE): Check for strmode declaration.
24193
24194         2006-03-12  Jim Meyering  <jim@meyering.net>
24195
24196         * m4/chdir-safer.m4 (gl_CHDIR_SAFER): Add same-inode.h to the list.
24197         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Likewise.
24198         * m4/same.m4 (gl_SAME): Likewise.
24199         * m4/root-dev-ino.m4 (gl_ROOT_DEV_INO): Likewise.
24200
24201         2006-03-11  Eric Blake  <ebb9@byu.net>
24202
24203         * m4/double-slash-root.m4: New file, provides gl_DOUBLE_SLASH_ROOT.
24204         * m4/dirname.m4 (gl_DIRNAME): Use gl_DOUBLE_SLASH_ROOT.
24205         * m4/dos.m4 (FILE_SYSTEM_PREFIX_LEN): Move from here to dirname.h.
24206         (FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE): New define.
24207
24208 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
24209
24210         * lib/stdint_.h: Include <sys/types.h> after @FULL_PATH_STDINT_H@, for
24211         MacOS X 10.4.6.  Don't mention <sys/int_types.h>.  Problems
24212         reported by Mark D. Baushke, one in
24213         <http://lists.gnu.org/archive/html/bug-gnulib/2006-07/msg00015.html>.
24214
24215         Merge from coreutils.
24216
24217         * lib/.cppi-disable: Add stdint_.h.
24218         * lib/.cvsignore: Add stdint.h.
24219
24220         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
24221
24222         * lib/xstrtod.c (XSTRTOD, DOUBLE): New macros, so that we can support
24223         both double and long double versions.
24224         (XSTRTOD): Renamed from xstrtod.  Use DOUBLE internally.
24225         * lib/xstrtold.c: New file.
24226         * lib/xstrtod.h (xstrtold): New decl.
24227
24228         2006-05-22  Paul Eggert  <eggert@cs.ucla.edu>
24229
24230         * lib/filemode.c (setst): Remove.
24231         (strmode): Rewrite to avoid setst.  This makes the code shorter,
24232         (arguably) clearer, and the generated code is a bit smaller on my
24233         Debian GNU/Linux stable x86 host.
24234
24235         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
24236
24237         * lib/filemode.c: Include "filemode.h" first, to test the interface.
24238         Assume that filemode.h includes sys/types.h and sys/stat.h.
24239         (HAVE_ST_DM_MODE): New macro, moved here from ls.c.
24240         (ftypelet): Reorder to put common cases first, for efficiency.
24241         Add 'P', 'w'.  Remove 'M', since it's now the caller's responsibility
24242         to do 'M'.
24243         (strmode): Renamed from mode_string, and now stores 12 bytes instead
24244         of 10, for compatibility with FreeBSD.  All callers changed.
24245         (filemodestring): Now stores 12 bytes instead of 10, and sets file
24246         types that can't be deduced solely from st_mode.  First arg is now a
24247         const pointer.
24248         * lib/filemode.h (HAVE_DECL_STRMODE): Include <string.h> for strmode.
24249         (strmode): Renamed from mode_string.
24250         (filemodestring): New decl.
24251         * lib/stat-macros.h: Don't undef S_ISDOOR, since it's never buggy.
24252         (S_ISDOOR): Don't bother with S_IFDOOR, since that code is never
24253         needed.
24254         (S_ISPORT, S_ISWHT): New macros, if not already defined.
24255
24256         2006-04-12  Paul Eggert  <eggert@cs.ucla.edu>
24257
24258         * lib/fsusage.c: Don't include <inttypes.h> or <stdint.h>, since
24259         fsusage.h now does that.  Include fsusage.h first, to test interface.
24260         Prefer statvfs if it works, since it's blessed by POSIX.  Attempt
24261         at most one method (the old code could have generated decls that
24262         didn't conform to C89, not that this was ever exercised).
24263         * lib/fsusage.h: Include <inttypes.h> and <stdint.h> if they exist.
24264
24265         2006-03-19  Jim Meyering  <jim@meyering.net>
24266
24267         Work even in a chroot where d_ino values for entries in "/"
24268         don't match the stat.st_ino values for the same names.
24269         * lib/getcwd.c (__getcwd): When no d_ino value matches the target inode
24270         number, iterate through all entries again, using lstat instead.
24271         Reported by Kenshi Muto in http://bugs.debian.org/355810, and by
24272         Zouhir Hafidi in https://bugzilla.redhat.com/bugzilla/190656.
24273
24274         * lib/getcwd.c (__getcwd): Clarify a comment.
24275         Use memcpy in place of a call to strcpy.
24276
24277         2006-03-12  Jim Meyering  <jim@meyering.net>
24278
24279         * lib/fts-cycle.c (leave_dir): If cycle-check's saved dev-ino pair
24280         matches that of the current directory (which we're about to chdir ".."
24281         out of), then save the dev-ino of the parent, instead.
24282
24283         * lib/same-inode.h (SAME_INODE): New file/macro.
24284         * lib/chdir-safer.c (SAME_INODE): Remove definition.
24285         Include "same-inode.h", instead.
24286         * lib/same.c: Likewise.
24287         * lib/cycle-check.h: Include "same-inode.h".
24288         (CYCLE_CHECK_REFLECT_CHDIR_UP): Define.
24289         * lib/cycle-check.c (SAME_INODE): Remove definition.
24290         * lib/root-dev-ino.h: Include "same-inode.h".
24291
24292         2006-03-11  Eric Blake  <ebb9@byu.net>
24293
24294         * lib/same.c (same_name): s/base_name/last_component/
24295         * lib/backupfile.c (check_extension, numbered_backup): Likewise.
24296         * lib/filenamecat.c (file_name_concat): Likewise.
24297
24298         2006-03-11  Eric Blake  <ebb9@byu.net>,
24299                     Paul Eggert  <eggert@cs.ucla.edu>
24300
24301         * lib/dirname.h (FILE_SYSTEM_PREFIX_LEN): Move here from dos.m4.
24302         [FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't treat 1: as a
24303         drive prefix.
24304         (IS_ABSOLUTE_FILE_NAME): Treat all drive letters as absolute on
24305         platforms like cygwin with FILE_SYSTEM_DRIVE_PREFIX_IS_ABSOLUTE.
24306         (last_component): New method.
24307         * lib/dirname.c (dir_len): Determine when drive letters need a
24308         subsequent slash.  Preserve // when it is special.
24309         (dir_name): Don't append dot when drive letter is absolute.
24310         [TEST_DIRNAME]: Move into a full-blown gnulib test.
24311         * lib/basename.c (base_name): New semantics - malloc the result.
24312         Preserve // when it is special.  Preserve relative files that look
24313         like drive letters.
24314         (base_len): Preserve // when it is special.
24315         (last_component): New method, similar to old base_name semantics.
24316         * lib/stripslash.c (strip_trailing_slashes): Use last_component, not
24317         base_name.  Strip redundant slashes from ///.
24318
24319 2006-07-03  Jim Meyering  <jim@meyering.net>
24320
24321         * lib/cycle-check.h (CYCLE_CHECK_REFLECT_CHDIR_UP): Abort if this
24322         macro is used before the first cycle_check call.
24323
24324 2006-07-03  Eric Blake  <ebb9@byu.net>
24325
24326         * modules/dirname (Depends-on): Add xstrndup.
24327
24328 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
24329
24330         * m4/stdint.m4 (gl_STDINT_H): Use more-mnemonic identifiers for
24331         test cases, so that config.log is a bit easier to follow.
24332
24333 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
24334
24335         * lib/stdint_.h (intmax_t, uintmax_t): Prefer long to long long if
24336         both are 64 bits, since this seems to be the tradition, and this
24337         prevents gcc -Wformat from warning about usages with PRIuMAX.  If
24338         we ever run into a host that prefers long long to long in this
24339         case, we'll need another configure-time test.  Problem reported by
24340         Jim Meyering.
24341
24342 2006-07-02  Eric Blake  <ebb9@byu.net>
24343
24344         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Simplify by using AC_CHECK_DECLS.
24345
24346 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
24347
24348         * modules/inttypes (Depends-on): No longer depends on stdint.
24349         * modules/stdint (Description): Say more about assumptions.
24350         Say that the fast types might differ.  Say macros are used.
24351         (Files): Remove m4/size_max.m4, m4/wchar_t.m4.  Add m4/longlong.m4.
24352         (Makefile.am): Revise list of substituted symbols to match
24353         new stdint.m4.
24354         * modules/stdint-tests (Files): Add m4/wchar_t.m4, m4/wint_t.m4.
24355         (configure.ac): Add gt_TYPE_WCHAR_T, gt_TYPE_WINT_T.
24356         * tests/test-stdint.c (verify_same_types)
24357         [! (__GNUC__ >= 2 && DO_PEDANTIC)]: Put in a decl, so that
24358         the code conforms to C99/C89.
24359         Test for WCHAR_MIN and WCHAR_MAX only if HAVE_WCHAR_T.
24360         Test for WINT_MIN and WINT_MAX only if HAVE_WINT_T.
24361
24362 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
24363
24364         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Backport from Autoconf 2.60,
24365         but fix a bug, by requiring at least 64 bits.
24366         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
24367         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Now just call
24368         AC_TYPE_LONG_LONG_INT.  This macro is obsolete and will go soon.
24369         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG) Likewise.
24370
24371         * m4/stdint.m4 (gl_STDINT_H): Rewrite to accommodate stdint_.h
24372         changes.  Make 2.59 a prerequisite.  Check and substitute for
24373         HAVE_LONG_LONG_INT.  Rely on Autoconf to check for stdint.h and
24374         inttypes.h.  Do not use special include files; just use the
24375         defaults.  Check for sys/inttypes.h and sys/bitypes.h in the usual
24376         way now.  Remove no-longer-needed tests for HAVE_LONG_64BIT,
24377         HAVE_LONG_LONG_64BIT, int8_t, int16_t, int32_t, int64_t, uint8_t,
24378         uint16_t, uint32_t uint64_t, int_least8_t, int_least16_t,
24379         int_least32_t, int_least64_t, uint_least8_t, uint_least16_t,
24380         uint_least32_t, uint_least64_t, int_fast8_t, int_fast16_t,
24381         int_fast32_t, int_fast64_t, uint_fast8_t uint_fast16_t,
24382         uint_fast32_t, uint_fast64_t, intptr_t, uintptr_t, intmax_t,
24383         uintmax_t, INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX,
24384         UINT16_MAX, INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN,
24385         INT64_MAX, UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX,
24386         UINT_LEAST8_MAX, INT_LEAST16_MIN, INT_LEAST16_MAX,
24387         UINT_LEAST16_MAX, INT_LEAST32_MIN, INT_LEAST32_MAX,
24388         UINT_LEAST32_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX,
24389         UINT_LEAST64_MAX, INT_FAST8_MIN, INT_FAST8_MAX, UINT_FAST8_MAX,
24390         INT_FAST16_MIN, INT_FAST16_MAX, UINT_FAST16_MAX, INT_FAST32_MIN,
24391         INT_FAST32_MAX, UINT_FAST32_MAX, INT_FAST64_MIN, INT_FAST64_MAX,
24392         UINT_FAST64_MAX, INTPTR_MIN, INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN,
24393         INTMAX_MAX, UINTMAX_MAX, PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN,
24394         SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN,
24395         WINT_MAX.  Check for C99 conformance more strictly, by detecting
24396         bugs in glibc 2.4, Solaris 10, and OpenBSD 3.9.  On the other hand do
24397         not check for things that C99 does not require, e.g., int8_t.  If
24398         a test isn't needed unless <stdint.h> isn't working, and is
24399         unlikely to be needed for any other reason, then don't do it
24400         unless <stdint.h> isn't working.  Do not check for ptrdiff_t or
24401         size_t, since we assume C89 freestanding at least.  Do not check
24402         for sig_atomic_t, wchar_t, or wint_t, since the code now does
24403         the right thing even if the types are not defined.  Instead use:
24404         (gl_STDINT_TYPE_PROPERTIES): New macro.
24405         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H): Remove.  Don't bother
24406         testing whether <sys/types.h> clashes, as Autoconf does this for
24407         us now.  All uses removed.
24408         (gl_STDINT_CHECK_TYPES, gl_STDINT_MISSING_BOUND):
24409         (gl_STDINT_MISSING_BOUNDS, gl_STDINT_MISSING_BOUNDS2):
24410         (gl_CHECK_TYPE_SAME):
24411         Remove; no longer needed.
24412         (gl_STDINT_BITSIZEOF): Don't bother to check whether the type
24413         exists, since we'll return 0 anyway in that case.
24414         (gl_INTEGER_TYPE_SUFFIX, gl_STDINT_INCLUDES): New macros.
24415
24416 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
24417
24418         * lib/stdint_.h (_GL_STDINT_H): Renamed from _STDINT_H, to avoid
24419         possible collision with system files.
24420         (<stdio.h>, <time.h>, <wchar.h>) [defined __cplusplus && ! defined
24421         __STDC_CONSTANT_MACROS)]: Do not include, since we don't need
24422         WCHAR_MIN and WCHAR_MAX in this case.
24423         (<stddef.h>): Do not include; no longer needed.
24424         (<sys/types.h>): Include if @HAVE_SYS_TYPES_H@, not if
24425         (defined(__OpenBSD__) || defined(__bsdi__) || defined(__sgi)).
24426         (<sys/inttypes.h>): Include if @HAVE_SYS_INTTYPES_H@ &&
24427         !@HAVE_INTTYPES_H@, not if (defined(__FreeBSD__)
24428         && (__FreeBSD__ >= 3) && (__FreeBSD__ <= 4)).
24429         (__STDINT_H__) [@HAVE_STDINT_H@ && defined __sgi && ! defined
24430         __c99]: Define, to work around IRIX <stdint.h> incompatibility.
24431         (@FULL_PATH_STDINT_H@) [!(defined(__sgi) && @HAVE_INTTYPES_H@ &&
24432         !defined(__c99))]: Include in this case too, since it's harmless
24433         now.
24434         (<inttypes.h>) [@HAVE_INTTYPES_H@]: Include, since it's no longer
24435         dangerous to do so.
24436         (@FULL_PATH_INTTYPES_H@) [(defined(__hpux) || defined(_AIX)) &&
24437         @HAVE_INTTYPES_H@]: Do not include, since we now include <inttypes.h>.
24438         (_STDINT_MIN, _STDINT_MAX): New macros.
24439         (int8_t, uint8_t, int16_t, uint16_t, int32_t, uint32_t, int64_t):
24440         (uint64_t, int_least8_t, uint_least8_t, int_least16_t):
24441         (uint_least16_t, int_least32_t, uint_least32_t, int_least64_t):
24442         (uint_least64_t, int_fast8_t, uint_fast8_t, int_fast16_t):
24443         (uint_fast16_t, int_fast32_t, uint_fast32_t, int_fast64_t):
24444         (uint_fast64_t, intptr_t, uintptr_t, intmax_t, uintmax_t): Now
24445         macros, not typedefs; this simplifies things quite a bit.
24446         Use long int for all types narrower than int64_t.
24447         (intmax_t, uintmax_t, INTMAX_C, UINTMAX_C):
24448         Define in terms of long long int or int64_t or long int,
24449         not int64_t or int32_t.  This saves some compile-time testing.
24450         (INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX, UINT16_MAX):
24451         (INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN, INT64_MAX):
24452         (UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX, UINT_LEAST8_MAX):
24453         (INT_LEAST16_MIN, INT_LEAST16_MAX, UINT_LEAST16_MAX):
24454         (INT_LEAST32_MIN, INT_LEAST32_MAX, UINT_LEAST32_MAX):
24455         (INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX, INT_FAST8_MIN):
24456         (INT_FAST8_MAX, UINT_FAST8_MAX, INT_FAST16_MIN, INT_FAST16_MAX):
24457         (UINT_FAST16_MAX, INT_FAST32_MIN, INT_FAST32_MAX, UINT_FAST32_MAX):
24458         (INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTPTR_MIN):
24459         (INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN, INTMAX_MAX, UINTMAX_MAX):
24460         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
24461         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
24462         undef any previous version and define our own version, for
24463         simplicity and consistency with the new macros for types.
24464         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
24465         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
24466         Simplify definitions by using _STDINT_MIN and _STDINT_MAX
24467         where appropriate.  Rely on new symbols @PTRDIFF_T_SUFFIX@,
24468         @SIG_ATOMIC_T_SUFFIX@, @SIZE_T_SUFFIX@, @WCHAR_T_SUFFIX@,
24469         @WINT_T_SUFFIX@ to keep things simple here.
24470         (UINT8_C, UINT16_C, UINT32_C, INT64_C, UINT64_C):
24471         Simplify by assuming typical 8/16/32/64 host, since we're
24472         already doing that elsewhere anyway.
24473         Use (LONG_MAX >> 31 >> 31 == 1) rather than @HAVE_LONG_64BIT@,
24474         and assume long long int is 64 bits if available.  This
24475         speeds up 'configure'.
24476
24477 2006-07-01  Eric Blake  <ebb9@byu.net>
24478
24479         * m4/stdarg.m4 (gl_STDARG_H): Use proper AH_VERBATIM.
24480         Reported by Andreas Buening.
24481
24482 2006-07-01  Eric Blake  <ebb9@byu.net>
24483
24484         * m4/stdarg.m4 (gl_STDARG_H): Properly parenthesize gl_va_copy.
24485
24486 2006-06-30  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
24487
24488         * lib/getaddrinfo.c: fixed typo
24489
24490 2006-06-29  Jim Meyering  <jim@meyering.net>
24491
24492         * modules/strftime (Maintainer): Add my name, since with the
24493         FPRINTFTIME changes strftime.c has forked from glibc.
24494
24495 2006-06-29  Eric Blake  <ebb9@byu.net>
24496
24497         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Use AC_C_INLINE.
24498
24499 2006-06-29  Eric Blake  <ebb9@byu.net>
24500
24501         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): New file.
24502
24503 2006-06-29  Eric Blake  <ebb9@byu.net>
24504
24505         * lib/stat_.h: New file.
24506
24507 2006-06-29  Eric Blake  <ebb9@byu.net>
24508
24509         * lib/stat_.h (rpl_mkdir): Declare inline, to avoid warnings about
24510         unused static function.
24511
24512 2006-06-29  Eric Blake  <ebb9@byu.net>
24513
24514         * doc/functions.texi (Function Portability): Document missing lstat
24515         on mingw.
24516
24517 2006-06-29  Eric Blake  <ebb9@byu.net>
24518
24519         * MODULES.html.sh: Add sys_stat.
24520         * modules/sys_stat: New module.
24521         * modules/mkstemp (Depends-on): Add sys_stat.
24522
24523 2006-06-29  Derek R. Price  <derek@ximbiot.com>
24524
24525         * m4/strftime.m4: Don't call AC_FUNC_STRFTIME.
24526
24527 2006-06-29  Derek R. Price  <derek@ximbiot.com>
24528
24529         * m4/c-bs-a.m4: Removed.
24530
24531 2006-06-29  Derek R. Price  <derek@ximbiot.com>
24532
24533         * lib/strftime.c: Assume strftime() exists.
24534
24535 2006-06-29  Derek Price  <derek@ximbiot.com>
24536
24537         * modules/c-bs-a: Removed - \a is C89.
24538         * MODULES.html.sh: Remove c-bs-a.
24539
24540 2006-06-29  Bruno Haible  <bruno@clisp.org>
24541
24542         * modules/wcwidth (License): Change to LGPL.
24543
24544 2006-06-28  Simon Josefsson  <jas@extundo.com>
24545
24546         * tests/test-getaddrinfo.c: Test getnameinfo too.  Call WSAStartup
24547         on _WIN32.
24548
24549         * modules/getaddrinfo (Depends-on): Add inet_ntop, needed by
24550         getnameinfo.
24551
24552 2006-06-28  Simon Josefsson  <jas@extundo.com>
24553
24554         * m4/getaddrinfo.m4: Look for getnameinfo prototypes too.
24555
24556 2006-06-28  Simon Josefsson  <jas@extundo.com>
24557
24558         * lib/getaddrinfo.c: Try to load ws2_32.dll on Windows, to find the
24559         functions there.  It will succeed on Windows XP, but on Windows
24560         2000 and (presumably) earlier, it will fail, and use the internal
24561         re-implementation.
24562         (use_win32_p): New function.
24563         (getaddrinfo): Use strtoul on servname, to support numeric ports.
24564         Support AI_NUMERICSERV to disable getservbyname.
24565         (getnameinfo): New function, only supports
24566         NI_NUMERICHOST|NI_NUMERICSERV for now.
24567
24568         * lib/getaddrinfo.h: Test and check for AI_* flags separately, MinGW
24569         only have some of them.  Add AI_NUMERICSERV.  Add prototype for
24570         getnameinfo.
24571
24572 2006-06-28  Eric Blake  <ebb9@byu.net>
24573
24574         * modules/wcwidth: New file.
24575         * modules/mbchar (Depends-on): Add wcwidth.
24576         * modules/mbswidth (Depends-on): Add wcwidth.
24577         * MODULES.html.sh: Add wcwidth.
24578
24579 2006-06-28  Eric Blake  <ebb9@byu.net>
24580
24581         * m4/mbswidth.m4 (gl_MBSDWIDTH): Move wcwidth from here...
24582         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): ...to this new file.
24583
24584 2006-06-28  Eric Blake  <ebb9@byu.net>
24585
24586         * lib/xvasprintf.h: Fix comments.
24587
24588 2006-06-28  Eric Blake  <ebb9@byu.net>
24589
24590         * lib/mbchar.h (wcwidth): Include wcwidth.h.
24591         * lib/mbswidth.c (wcwidth): Move from here...
24592         * lib/wcwidth.h: ...to this new file.
24593
24594 2006-06-28  Derek R. Price  <derek@ximbiot.com>
24595
24596         * m4/savedir.m4: Remove AC_FUNC_CLOSEDIR_VOID requirement.
24597
24598         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't require AC_C_CONST, since
24599         it's obsolete.
24600         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Likewise.
24601
24602 2006-06-28  Derek R. Price  <derek@ximbiot.com>
24603
24604         * lib/savedir.c (CLOSEDIR): Remove.  All uses changed to closedir.
24605         Autoconf 2.60 says this stuff was obsolete.
24606
24607 2006-06-28  Bruno Haible  <bruno@clisp.org>
24608
24609         * modules/wcwidth (Files): Add m4/wchar_t.m4.
24610
24611 2006-06-28  Bruno Haible  <bruno@clisp.org>
24612
24613         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Also require AC_C_INLINE and
24614         gt_TYPE_WCHAR_T.
24615
24616 2006-06-28  Bruno Haible  <bruno@clisp.org>
24617
24618         * lib/wcwidth.h: Declare nothing if !HAVE_WCHAR_T. Provide a fallback
24619         declaration for wcwidth.
24620         * lib/mbswidth.c: Restore the includes of <wchar.h> and <wctypes.h>.
24621
24622 2006-06-28  Bruno Haible  <bruno@clisp.org>
24623
24624         * lib/mkdtemp.c [MINGW]: Include <io.h>.
24625         (mkdir): Define using _mkdir.
24626
24627 2006-06-28  Bruno Haible  <bruno@clisp.org>
24628
24629         * lib/getaddrinfo.h: Fix POSIX URL.
24630         * lib/getaddrinfo.c (WIN32_NATIVE): New macro. Use it instead of
24631         _WIN32.
24632         (use_win32_p): Make static.
24633         (getaddrinfo): Reject service name if it is empty or does not consist
24634         solely of decimal digits, or if its value is > 65535.
24635         (getnameinfo): Remove useless casts.
24636
24637 2006-06-27  Simon Josefsson  <jas@extundo.com>
24638
24639         * modules/sys_select: New file, suggested by Bruno Haible, Paul
24640         Eggert and Martin Lambers.
24641
24642 2006-06-27  Simon Josefsson  <jas@extundo.com>
24643
24644         * m4/sys_select_h.m4: New file, suggested by Bruno Haible, Paul
24645         Eggert and Martin Lambers.
24646
24647 2006-06-27  Bruno Haible  <bruno@clisp.org>
24648
24649         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): For nonexistent types, set the
24650         result to 0, not to empty.
24651         Reported by Martin Neitzel <neitzel@sco.gaertner.de>.
24652
24653 2006-06-27  Bruno Haible  <bruno@clisp.org>
24654
24655         * lib/stdint_.h (intmax_t, uintmax_t): Undefine before typedef.
24656
24657 2006-06-26  Simon Josefsson  <jas@extundo.com>
24658
24659         * m4/inet_ntop.m4: Don't check for sys/types.h, we assume it is
24660         present.
24661
24662 2006-06-26  Paul Eggert  <eggert@cs.ucla.edu>
24663
24664         * lib/base64.c (B64): Use _ as the formal parameter, not x, to avoid
24665         bug in IBM C V6 for AIX.  Problem reported by Larry Jones in
24666         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00181.html>.
24667
24668 2006-06-26  Mark D. Baushke  <mdb@gnu.org>
24669
24670         * m4/stdint.m4 (gl_STDINT_H): Treat BSD/OS like OpenBSD.
24671
24672 2006-06-26  Bruno Haible  <bruno@clisp.org>
24673
24674         * modules/stdint (Makefile.am): Also substitute HAVE_WCHAR_H.
24675
24676 2006-06-26  Bruno Haible  <bruno@clisp.org>
24677
24678         * m4/stdint.m4 (gl_STDINT_H): Test also for <wchar.h>.
24679
24680 2006-06-26  Bruno Haible  <bruno@clisp.org>
24681
24682         * m4/stdint.m4 (gl_STDINT_H): Don't include <stdint.h> when using the
24683         SGI C compiler in pre-C99 mode.
24684         Suggested by Mark D. Baushke and Larry Jones.
24685
24686 2006-06-26  Bruno Haible  <bruno@clisp.org>
24687
24688         * lib/stdint_.h: Include <wchar.h> if necessary for WCHAR_MIN or
24689         WCHAR_MAX.
24690         Reported by Mark D. Baushke and Larry Jones.
24691
24692 2006-06-26  Bruno Haible  <bruno@clisp.org>
24693
24694         * lib/stdint_.h: Don't include <stdint.h> when using the SGI C compiler
24695         in pre-C99 mode.
24696         Suggested by Mark D. Baushke and Larry Jones.
24697
24698 2006-06-23  Simon Josefsson  <jas@extundo.com>
24699             Bruno Haible  <bruno@clisp.org>
24700
24701         * gnulib-tool (func_emit_lib_Makefile_am): Define MOSTLYCLEANDIRS.
24702         Emit mostlyclean-local rule.
24703         (func_emit_tests_Makefile_am): Likewise.
24704         * modules/sys_socket (Makefile.am): Use MOSTLYCLEANDIRS.
24705
24706 2006-06-23  Mark D. Baushke  <mdb@gnu.org>
24707
24708         * lib/stdint_.h: Treat BSD/OS like OpenBSD.
24709
24710 2006-06-23  Bruno Haible  <bruno@clisp.org>
24711
24712         * tests/test-stdint.c: Update to match ISO C 99 Technical
24713         Corrigendum 1.
24714
24715 2006-06-23  Bruno Haible  <bruno@clisp.org>
24716
24717         * m4/stdint.m4 (gl_STDINT_H): Treat IRIX like OpenBSD.
24718
24719 2006-06-23  Bruno Haible  <bruno@clisp.org>
24720
24721         * lib/stdint_.h: Treat IRIX like OpenBSD.
24722
24723 2006-06-23  Bruno Haible  <bruno@clisp.org>
24724
24725         * lib/stdint_.h (UINT8_C, UINT16_C, UINT32_C): Define according to
24726         ISO C 99 Technical Corrigendum 1.
24727
24728 2006-06-22  Simon Josefsson  <jas@extundo.com>
24729
24730         * m4/sockpfaf.m4: Include winsock2.h too, to make it work under
24731         MinGW.
24732
24733 2006-06-22  Paul Eggert  <eggert@cs.ucla.edu>
24734
24735         * lib/glob.c (collated_compare): Remove 'const' uses that weren't
24736         needed.  Some compiler complained about some of them.  Problem reported
24737         by Larry Jones in
24738         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00172.html>.
24739
24740 2006-06-21  Simon Josefsson  <jas@extundo.com>
24741
24742         * tests/test-getaddrinfo.c: New file.
24743
24744         * modules/getaddrinfo-tests: New file.
24745
24746         * MODULES.html.sh: Add inet_pton.
24747
24748         * modules/inet_pton: New file.
24749
24750 2006-06-21  Simon Josefsson  <jas@extundo.com>
24751
24752         * m4/getaddrinfo.m4: Don't define WINVER.  Look for gethostbyname in
24753         -lws2_32 too.  Fixes getaddrinfo on Windows 2000, with the price
24754         of using the (limited) gnulib implementation on Windows XP.
24755
24756         * m4/inet_pton.m4: New file.
24757
24758 2006-06-21  Simon Josefsson  <jas@extundo.com>
24759
24760         * lib/getaddrinfo.c (getaddrinfo): Set ai_family in the return
24761         variable.
24762
24763         * lib/socket_.h: Don't define WINVER.
24764
24765         * lib/inet_pton.h, inet_pton.c: New file, taken from glibc but
24766         slightly modified to work in gnulib.
24767
24768 2006-06-21  Simon Josefsson  <jas@extundo.com>
24769
24770         * doc/gnulib.texi (Windows sockets): Add.
24771
24772 2006-06-21  Paul Eggert  <eggert@cs.ucla.edu>
24773
24774         * lib/read-file.c (fread_file): Start with buffer allocation of
24775         0 bytes rather than 1 byte; this simplifies the code.
24776         Don't invoke feof; it's not needed.  Refactor to avoid duplicate
24777         code to free buffer and save/restore errno.
24778         (internal_read_file): Remove unused local.
24779
24780 2006-06-20  Paul Eggert  <eggert@cs.ucla.edu>
24781
24782         * lib/openat.c (openat): Use ?:, not if, to work around GCC bug 4210
24783         <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=4210>.
24784         Problem reported by Denis Excoffier in
24785         <http://lists.gnu.org/archive/html/bug-tar/2006-06/msg00023.html>.
24786
24787 2006-06-19  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
24788
24789         * modules/sys_socket, modules/socklen: Include sys/types since
24790         FreeBSD 4.x's sys/socket.h needs it.
24791
24792 2006-06-19  Simon Josefsson  <jas@extundo.com>
24793
24794         * lib/inet_ntop.c: Always build inet_ntop4, since inet_ntop6 calls it.
24795
24796 2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
24797
24798         * lib/alloca_.h (alloca) [defined alloca]: Don't define or declare.
24799
24800 2006-06-19  Bruno Haible  <bruno@clisp.org>
24801
24802         * m4/stdint.m4 (gl_STDINT_H): Enclose the values of FULL_PATH_STDINT_H
24803         and FULL_PATH_INTTYPES_H in angle brackets.
24804         Reported by Mark D. Baushke <mdb@gnu.org>.
24805
24806 2006-06-17  Eric Blake  <ebb9@byu.net>
24807
24808         * m4/rmdir-errno.m4 (gl_FUNC_FMDIR_NOTEMPTY): Assume errno.h declares
24809         errno.
24810
24811 2006-06-17  Bruno Haible  <bruno@clisp.org>
24812
24813         * m4/stdint.m4 (gl_STDINT_H) [FreeBSD >= 5]: Don't include
24814         <sys/inttypes.h>.
24815
24816 2006-06-17  Bruno Haible  <bruno@clisp.org>
24817
24818         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove test
24819         whether errno is declared. Assume <errno.h> declares errno.
24820
24821 2006-06-17  Bruno Haible  <bruno@clisp.org>
24822
24823         * lib/stdint_.h [FreeBSD >= 5]: Don't include <sys/inttypes.h>.
24824
24825 2006-06-17  Bruno Haible  <bruno@clisp.org>
24826
24827         * lib/stdint_.h (_UINT8_T, _UINT32_T, _UINT64_T): New macros. Fixes a
24828         problem on Solaris 2.5.1.
24829
24830 2006-06-16  Eric Blake  <ebb9@byu.net>
24831
24832         * lib/unsetenv.c [!defined errno]: Assume errno.h declares errno.
24833         * lib/unicodeio.c [!defined errno]: Likewise.
24834         * lib/strtol.c [!defined errno]: Likewise.
24835         * lib/strtod.c [!defined errno]: Likewise.
24836
24837 2006-06-15  Eric Blake  <ebb9@byu.net>
24838
24839         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Work in spite of -Werror.
24840
24841 2006-06-15  Eric Blake  <ebb9@byu.net>
24842
24843         * config/srclist.txt (ssize_t.m4): Lose sync.
24844
24845 2006-06-15  Bruno Haible  <bruno@clisp.org>
24846
24847         * modules/stdint (Files): Include m4/full-header-path.m4,
24848         m4/size_max.m4, m4/wchar_t.m4.
24849         (Makefile.am): Many more substitutions.
24850         * modules/stdint-tests: New file.
24851         * tests/test-stdint.c: New file.
24852
24853 2006-06-15  Bruno Haible  <bruno@clisp.org>
24854
24855         * m4/stdint.m4 (gl_STDINT_H): Rewritten to produce a complete stdint.h.
24856         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H, gl_STDINT_CHECK_TYPES,
24857         gl_STDINT_MISSING_BOUND, gl_STDINT_MISSING_BOUNDS,
24858         gl_STDINT_MISSING_BOUNDS2, gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED,
24859         gl_CHECK_TYPE_SAME): New macros.
24860
24861 2006-06-15  Bruno Haible  <bruno@clisp.org>
24862
24863         * m4/size_max.m4 (gl_SIZE_MAX): Make it work also when cross-compiling.
24864
24865 2006-06-15  Bruno Haible  <bruno@clisp.org>
24866
24867         * lib/stdint_.h: Rewritten to be fully auto-configured.
24868         Fixes bug on HP-UX/IA64.
24869
24870 2006-06-11  Paul Eggert  <eggert@cs.ucla.edu>
24871
24872         * lib/getdate.y (__attribute__): Don't define if already defined.
24873         Problem reported by Larry Jones.
24874         * lib/utimens.c (__attribute__): Likewise.
24875
24876 2006-06-04  Paul Eggert  <eggert@cs.ucla.edu>
24877
24878         * lib/regexec.c (group_nodes_into_DFAstates): Fix a buffer overrun
24879         reported by Andreas Schwab.
24880
24881 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
24882             Bruno Haible  <bruno@clisp.org>
24883
24884         * m4/strndup.m4 (gl_FUNC_STRNDUP): Replace the AC_REPLACE_FUNCS with a
24885         check for the declaration of strnlen and a run test that exposes the
24886         AIX 5.1 strnlen bug.  In the failure case, #define strndup to
24887         rpl_strndup.
24888
24889 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
24890             Bruno Haible  <bruno@clisp.org>
24891
24892         * lib/strndup.c (strndup) [!_LIBC]: Don't undefine macro definition.
24893
24894 2006-05-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
24895
24896         * m4/c-strtod.m4 (gl_C99_STRTOLD): Use a link test rather than a
24897         compile test, for Tru64 4.0D.
24898
24899 2006-05-28  Karl Berry  <karl@gnu.org>
24900
24901         * config/srclist.txt (printf-args.c): lose sync.
24902
24903 2006-05-26  Martin Lambers  <marlam@marlam.de>
24904
24905         * lib/getpass.c: Updates the test for the native W32 API, and adds
24906         missing includes, thus fixing compilation warnings.
24907
24908 2006-05-25  Sergey Poznyakoff  <gray@gnu.org.ua>
24909
24910         * lib/exclude.c (exclude_fnmatch): New function.
24911         (excluded_file_name): Call exclude_fnmatch.
24912         * lib/exclude.h (excluded_file_name): New prototype
24913
24914 2006-05-25  Paul Eggert  <eggert@cs.ucla.edu>
24915
24916         * lib/tempname.c (small_open, large_open): New macros.
24917         (__open, __open64) [!_LIBC]: Remove.
24918         (__gen_tempname): Use small_open and large_open instead of __open
24919         and __open64.  This fixes a portability bug on HP-UX 11.11i
24920         reported by Simon Wing-Tang in
24921         <http://lists.gnu.org/archive/html/bug-coreutils/2006-05/msg00114.html>.
24922
24923 2006-05-24  Bruno Haible  <bruno@clisp.org>
24924
24925         * lib/printf-args.c (printf_fetchargs): Turn NULL pointers for
24926         TYPE_STRING and TYPE_WIDE_STRING into a non-NULL replacement.
24927         Reported by Thorsten Maerz <torte@netztorte.de> via
24928         Aaron Stone <aaron@serendipity.cx>.
24929
24930 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
24931
24932         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Rename cache variables to use
24933         gl_ rather than jm_.  Link, don't run, so that cross-compiles are
24934         allowed.  Check that resulting type is arithmetic.  Move AC_REQUIRE
24935         and AC_CHECK_HEADERS_ONCE outside of AC_CACHE_CHECK, since they're
24936         not really conditional on the cache.
24937         (gl_PREREQ_NANOSLEEP): Check for sys/select.h.
24938
24939 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
24940
24941         * lib/nanosleep.c [HAVE_SYS_SELECT_H]: Include <sys/select.h>.
24942         Use the usual Autoconf way to include <time.h> and/or sys/time.h.
24943         (my_usleep): Don't mishandle maximum value.
24944
24945 2006-05-19  Jim Meyering  <jim@meyering.net>
24946
24947         * lib/getugroups.c: Correct an outdated comment.  From Bruno Haible.
24948
24949 2006-05-17  Bruno Haible  <bruno@clisp.org>
24950
24951         Cygwin portability.
24952         * lib/classpath.c (PATH_SEPARATOR) [CYGWIN]: Define as ':'.
24953
24954 2006-05-17  Bruno Haible  <bruno@clisp.org>
24955
24956         * lib/stdint_.h: Fix recognition of Cygwin.
24957
24958 2006-05-15  Bruno Haible  <bruno@clisp.org>
24959
24960         * build-aux/config.rpath: Improve support for Sun C 5.9 on Linux, based
24961         on libtool patch by Ralf Wildenhues.
24962
24963 2006-05-14  Paul Eggert  <eggert@cs.ucla.edu>
24964
24965         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Fix overly-picky
24966         test for C99 conformance; (bool) 0.5 is an integer constant
24967         expression, but (bool) -0.5 is not.  Problem reported by Fedor
24968         Sergeev in <http://forum.sun.com/jive/thread.jspa?threadID=96202>.
24969
24970 2006-05-11  Simon Josefsson  <jas@extundo.com>
24971
24972         * m4/xvasprintf.m4: Fix obvious typo.
24973
24974 2006-05-11  Jim Meyering  <jim@meyering.net>
24975
24976         * lib/sha1.c (sha1_buffer): Correct comment: s/MD5/SHA1/.  From
24977         James Lemley.
24978
24979 2006-05-10  Simon Josefsson  <jas@extundo.com>
24980
24981         * lib/md4.c: Typo fix, update copyright years.
24982         (K1, K2): Don't use L because it turn computations into 64-bit on
24983         64-bit platforms.
24984
24985 2006-05-10  Paul Eggert  <eggert@cs.ucla.edu>
24986
24987         * lib/crc.c (crc32_update): Remove unnecessary L suffix.
24988         * lib/md4.c (rol): Cast right-shift arg to uint32_t to prevent
24989         unwanted sign propagation, e.g., on hosts with 64-bit int.
24990         There still are some problems with reeelly weird theoretical hosts
24991         (e.g., 33-bit int) but it's not worth worrying about now.
24992         * lib/sha1.c (rol): Likewise.
24993         (K1, K2, K3, K4): Remove unnecessary L suffix.
24994
24995 2006-05-10  Bruno Haible  <bruno@clisp.org>
24996
24997         * lib/des.c: Cast to avoid warnings.
24998
24999 2006-05-09  Bruno Haible  <bruno@clisp.org>
25000
25001         * modules/xvasprintf (Files): Add m4/xvasprintf.m4.
25002         (Depends-on): Depend also on xsize, stdarg.
25003         (configure.ac): Add gl_XVASPRINTF.
25004
25005 2006-05-09  Bruno Haible  <bruno@clisp.org>
25006
25007         * m4/xvasprintf.m4: New file.
25008
25009 2006-05-09  Bruno Haible  <bruno@clisp.org>
25010
25011         * lib/xvasprintf.c: Include limits.h, string.h, xsize.h.
25012         (EOVERFLOW): Define fallback value.
25013         (xstrcat): New function.
25014         (xvasprintf): Recognize the special case of a string concatenation.
25015
25016 2006-05-08  Eric Blake  <ebb9@byu.net>
25017
25018         * gnulib-tool (func_version): Base copyright year on CVS date.
25019         (func_emit_copyright_notice): New function.
25020         (func_emit_lib_Makefile_am): Use it.
25021         (func_emit_tests_Makefile_am): Likewise.
25022         (func_import): Likewise.
25023
25024 2006-05-08  Bruno Haible  <bruno@clisp.org>
25025
25026         * modules/stdarg: New file.
25027         * MODULES.html.sh (func_all_modules): Add section for <stdarg.h>.
25028
25029 2006-05-08  Bruno Haible  <bruno@clisp.org>
25030
25031         * m4/stdarg.m4: New file, from GNU gettext.
25032
25033 2006-05-08  Bruno Haible  <bruno@clisp.org>
25034
25035         * config/srclist.txt (build-aux/config.rpath): different from latest
25036         release.
25037
25038 2006-05-08  Bruno Haible  <bruno@clisp.org>
25039
25040         * build-aux/config.rpath: Add support for Sun C 5.9 on Linux.
25041
25042 2006-05-05  Jim Meyering  <jim@meyering.net>
25043
25044         * m4/warning.m4: New file, derived from bison's file by the same name.
25045
25046 2006-05-03  Bruno Haible  <bruno@clisp.org>
25047
25048         * lib/stdint_.h: Shorter URL.
25049         * lib/inttypes.h: Likewise.
25050
25051 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
25052
25053         * modules/inttypes (Maintainer): Change from Derek Price to 'all'.
25054
25055 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
25056
25057         * lib/verify.h: Document the internals better.  Most of this change
25058         was written by Bruno Haible.
25059
25060 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
25061
25062         * doc/verify.texi: New file, partly based on a proposal by
25063         Bruno Haible.
25064
25065 2006-05-02  Bruno Haible  <bruno@clisp.org>
25066
25067         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Move the include_next
25068         test from here...
25069         * m4/_inttypes_h.m4 (gl_INTTYPES_H): ... to here.
25070
25071 2006-04-29  Bruno Haible  <bruno@clisp.org>
25072
25073         * lib/gcd.c: Use WORD_T and GCD instead of unsigned long and gcd.
25074         Suggested by Oskar Liljeblad <oskar@osk.mine.nu>.
25075
25076 2006-04-29  Bruno Haible  <bruno@clisp.org>
25077
25078         * gnulib-tool: Make --update option actually work.
25079
25080 2006-04-29  Bruno Haible  <bruno@clisp.org>
25081
25082         * doc/gcd.texi: New file.
25083         * doc/gnulib.texi: Include it.
25084
25085 2006-04-25  Paul Eggert  <eggert@cs.ucla.edu>
25086
25087         * lib/getdate.y (get_date): When adding relative date, start with the
25088         initial time, not with the result of the first mktime call.
25089
25090 2006-04-25  Bruno Haible  <bruno@clisp.org>
25091
25092         * gnulib-tool (func_import): Output the include directives in three
25093         blocks, sorted separately.
25094         Reported by Ben Pfaff <blp@cs.stanford.edu>.
25095
25096 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
25097
25098         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use prototype
25099         to define main with arguments, for C++.  Reported by Eric Blake.
25100         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC):
25101         Prefer 'int main ()' to 'int main (void)', for C++.
25102         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Likewise.
25103         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Specify a return type
25104         for 'main', for C99 and C++.
25105
25106 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
25107
25108         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Use return, not exit.
25109         Don't assume that exit status -1 is valid.
25110         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
25111         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
25112         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Likewise.
25113         * m4/readdir.m4 (GL_FUNC_READDIR): Include <stdlib.h>.
25114         * m4/rename.m4 (vb_FUNC_RENAME): Likewise.
25115         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use AC_RUN_IFELSE,
25116         not AC_TRY_RUN.  Use return, not exit.  Don't assume that
25117         functions can be used without declaring them, or that you can
25118         exit with status -1.
25119         * m4/utimes-null.m4 (gl_FUNC_UTIMES_NULL): Likewise.
25120
25121 2006-04-24  Karl Berry  <karl@gnu.org>
25122
25123         * config/srclist.txt (longdouble.m4): sync lost.
25124
25125 2006-04-24  Eric Blake  <ebb9@byu.net>
25126
25127         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Avoid unused variable warning.
25128
25129 2006-04-24  Bruno Haible  <bruno@clisp.org>
25130
25131         * m4/poll.m4 (gl_FUNC_POLL): When cross-compiling, reject also the
25132         poll() implementation in AIX.
25133         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
25134
25135 2006-04-24  Bruno Haible  <bruno@clisp.org>
25136
25137         * m4/poll.m4 (gl_FUNC_POLL): Rearrange code, so that POLL_H gets
25138         assigned exactly once.
25139
25140 2006-04-23  Claudio Fontana  <claudio@gnu.org>
25141             Bruno Haible  <bruno@clisp.org>
25142
25143         * modules/gettext (Makefile.am): Add a -I flag for <libintl.h>.
25144         * gnulib-tool (func_emit_lib_Makefile_am): Emit empty default value
25145         for AM_CPPFLAGS.
25146
25147 2006-04-23  Bruno Haible  <bruno@clisp.org>
25148
25149         * modules/copy-file: Depend on unistd.
25150         * modules/execute: Likewise.
25151         * modules/fatal-signal: Likewise.
25152         * modules/findprog: Likewise.
25153         * modules/mkdtemp : Likewise.
25154         * modules/pipe: Likewise.
25155         * modules/wait-process: Likewise.
25156
25157 2006-04-23  Bruno Haible  <bruno@clisp.org>
25158
25159         * lib/fwriteerror.c (fwriteerror): Call fclose also when an error
25160         condition was already detected.
25161         Reported by Ben Pfaff <blp@cs.stanford.edu>.
25162
25163 2006-04-23  Bruno Haible  <bruno@clisp.org>
25164
25165         * lib/copy-file.c: Include <unistd.h> unconditionally.
25166         * lib/execute.c: Likewise.
25167         * lib/fatal-signal.c: Likewise.
25168         * lib/findprog.c: Likewise.
25169         * lib/mkdtemp.c: Likewise.
25170         * lib/pipe.h: Likewise.
25171         * lib/pipe.c: Likewise.
25172         * lib/wait-process.h: Likewise.
25173
25174 2006-04-23  Bruno Haible  <bruno@clisp.org>
25175
25176         * gnulib-tool (func_usage): Fix --import description. Document
25177         --update.
25178         (func_import): Create temporary file in a temporary directory, if
25179         --dry-run is specified. Silence errors from 'grep' when there are no
25180         m4 files in $m4dir.
25181         (func_create_testdir): Silence errors from 'grep' when there are no
25182         m4 files in $m4dir.
25183         Reported by Karl Berry <karl@freefriends.org>.
25184
25185 2006-04-20  Bruno Haible  <bruno@clisp.org>
25186
25187         * m4/argp.m4 (gl_ARGP): Don't call AC_CHECK_DECLS_ONCE with more than
25188         one argument, so that the code will be portable to Autoconf 2.60.
25189         * m4/getlogin_r.m4 (gl_PREREQ_GETLOGIN_R): Likewise.
25190         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
25191         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO): Likewise.
25192
25193 2006-04-19  Derek Price  <derek@ximbiot.com>
25194             Eric Blake  <ebb9@byu.net>
25195
25196         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Use </full/path.h>
25197         rather than "/full/path.h".  Update comment to match.  Shorten &
25198         generalize m4_translit call via AS_TR_CPP.
25199
25200 2006-04-19  Derek Price  <derek@ximbiot.com>
25201             Eric Blake  <ebb9@byu.net>
25202
25203         * lib/inttypes.h: Correct grammar in comment.
25204
25205 2006-04-18  Derek Price  <derek@ximbiot.com>
25206             Paul Eggert  <eggert@cs.ucla.edu>
25207
25208         * modules/inttypes: New file.
25209         * modules/strtoimax, modules/strtoumax: Depend on inttypes.
25210
25211 2006-04-18  Derek Price  <derek@ximbiot.com>
25212             Paul Eggert  <eggert@cs.ucla.edu>
25213
25214         * m4/_inttypes_h.m4, m4/full-header-path.m4, m4/include_next.m4:
25215         New files.
25216
25217 2006-04-18  Derek Price  <derek@ximbiot.com>
25218             Paul Eggert  <eggert@cs.ucla.edu>
25219
25220         * lib/inttypes.h: New file.
25221         * lib/strtoimax.c: Assume <inttypes.h>.
25222
25223 2006-04-15  Paul Eggert  <eggert@cs.ucla.edu>
25224
25225         * lib/utimens.c (futimens): glibc futimesat messes up if /proc
25226         isn't mounted.  Problem reported by Kir Kolyshkin.
25227
25228 2006-04-13  Paul Eggert  <eggert@cs.ucla.edu>
25229
25230         * lib/regcomp.c (init_dfa): Don't use wchar_t or wctype_t if
25231         RE_ENABLE_I18N is not defined.  Problem reported by Mark D. Baushke via
25232         Derek R. Price.
25233         * lib/regex.h (RE_DUP_MAX): Update comment to match current
25234         implementation.
25235
25236 2006-04-12  Eric Blake  <ebb9@byu.net>
25237
25238         * modules/time_r (Makefile.am): Remove lib_SOURCES line, as this
25239         is now done automatically by the corresponding Autoconf macro.
25240
25241 2006-04-11  Paul Eggert  <eggert@cs.ucla.edu>
25242
25243         * m4/time_r.m4 (gl_TIME_R): Add AC_LIBSOURCES for time_r.c and
25244         time_r.h.
25245
25246 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
25247
25248         Merge regex changes from libc, removing some of our
25249         POSIX-conformance changes that were rejected and redoing them in a
25250         less-intrusive way.
25251
25252         * lib/regcomp.c (re_compile_internal, init_dfa):
25253         Length arg is now size_t, not Idx.  All uses changed.
25254         (peek_token): Forward decl now says internal_function.
25255         (__re_error_msgid, __re_error_msgid_idx):
25256         Now static rather than extern with attribute_hidden.
25257         (re_compile_pattern) [!defined _LIBC]: Use K&R-style defn.
25258         For some reason libc prefers K&R style defns for external functions.
25259         (regerror) [!defined _LIBC]: Likewise.
25260         (re_set_syntax, re_compile_fastmap, regcomp, regfree, re_comp):
25261         (seek_collating_symbol_entry, lookup_collation_sequence_value):
25262         (build_range_exp, build_collating_symbol):
25263         Use K&R-style defn.
25264         (re_compile_fastmap): Use '\0' to memset, not 0.
25265         (utf8_sb_map): Make the calculations more obvious.
25266         (init_dfa, parse_bracket_exp, build_charclass_op):
25267         Call calloc and cast result, as glibc does.
25268         (init_word_char, fetch_token, peek_token, peek_token_bracket):
25269         (build_range_exp, build_collating_symbol):
25270         Now internal functions.
25271
25272         * lib/regex.c [!defined _LIBC]: Allow compiling with C++ compilers.
25273
25274         * lib/regex.h (__USE_GNU_REGEX): New macro.  Don't depend on
25275         _REGEX_SOURCE any more; depend on _GNU_SOURCE instead.
25276         Don't depend on VMS; depend on __VMS instead, for POSIX
25277         namespace cleanness.
25278         (regoff_t): Define to ssize_t, not long int.
25279
25280         Remove the REG_ macros named below.  Instead, make the old names
25281         (e.g., RE_BACKSLASH_ESCAPE_IN_LISTS) visible only if
25282         __USE_GNU_REGEX.
25283         (REG_BACKSLASH_ESCAPE_IN_LISTS):
25284         (REG_BK_PLUS_QM, REG_CHAR_CLASSES, REG_CONTEXT_INDEP_ANCHORS):
25285         (REG_CONTEXT_INDEP_OPS, REG_CONTEXT_INVALID_OPS):
25286         (REG_DOT_NEWLINE, REG_DOT_NOT_NULL, REG_HAT_LISTS_NOT_NEWLINE):
25287         (REG_INTERVALS, REG_LIMITED_OPS, REG_NEWLINE_ALT):
25288         (REG_NO_BK_BRACES, REG_NO_BK_PARENS, REG_NO_BK_REFS):
25289         (REG_NO_BK_VBAR, REG_NO_EMPTY_RANGES):
25290         (REG_UNMATCHED_RIGHT_PAREN_ORD, REG_NO_POSIX_BACKTRACKING):
25291         (REG_NO_GNU_OPS, REG_DEBUG, REG_INVALID_INTERVAL_ORD):
25292         (REG_IGNORE_CASE, REG_CARET_ANCHORS_HERE):
25293         (REG_CONTEXT_INVALID_DUP, REG_NO_SUB, REG_SYNTAX_EMACS):
25294         (REG_SYNTAX_AWK, REG_SYNTAX_GNU_AWK, REG_SYNTAX_POSIX_AWK):
25295         (REG_SYNTAX_GREP, REG_SYNTAX_EGREP, REG_SYNTAX_POSIX_EGREP):
25296         (REG_SYNTAX_ED, REG_SYNTAX_SED, _REG_SYNTAX_POSIX_COMMON):
25297         (REG_SYNTAX_POSIX_BASIC, REG_SYNTAX_POSIX_MINIMAL_BASIC):
25298         (REG_SYNTAX_POSIX_EXTENDED, REG_SYNTAX_POSIX_MINIMAL_EXTENDED):
25299         (REG_DUP_MAX, REG_UNALLOCATED, REG_REALLOCATE, REG_FIXED):
25300         (REG_NREGS):
25301         Remove.  All uses replaced by the old RE_* names.
25302         (RE_BACKSLASH_ESCAPE_IN_LISTS):
25303         (RE_BK_PLUS_QM, RE_CHAR_CLASSES, RE_CONTEXT_INDEP_ANCHORS):
25304         (RE_CONTEXT_INDEP_OPS, RE_CONTEXT_INVALID_OPS):
25305         (RE_DOT_NEWLINE, RE_DOT_NOT_NULL, RE_HAT_LISTS_NOT_NEWLINE):
25306         (RE_INTERVALS, RE_LIMITED_OPS, RE_NEWLINE_ALT):
25307         (RE_NO_BK_BRACES, RE_NO_BK_PARENS, RE_NO_BK_REFS):
25308         (RE_NO_BK_VBAR, RE_NO_EMPTY_RANGES):
25309         (RE_UNMATCHED_RIGHT_PAREN_ORD, RE_NO_POSIX_BACKTRACKING):
25310         (RE_NO_GNU_OPS, RE_DEBUG, RE_INVALID_INTERVAL_ORD):
25311         (RE_IGNORE_CASE, RE_CARET_ANCHORS_HERE):
25312         (RE_CONTEXT_INVALID_DUP, RE_NO_SUB):
25313         Don't bother having these macros be independent of each others'
25314         values, since they no longer exist in the POSIX name space.
25315
25316         Rename the following member names back to their old names,
25317         unless !__USE_GNU_REGEX.  All uses changed back.
25318         (buffer): Renamed from re_buffer.
25319         (allocated): Renamed from re_allocated.
25320         (used): Renamed from re_used.
25321         (syntax): Renamed from re_syntax.
25322         (fastmap): Renamed from re_fastmap.
25323         (translate): Renamed from re_translate.
25324         (can_be_null): Renamed from re_can_be_null.
25325         (regs_allocated): Renamed from re_regs_allocated.
25326         (fastmap_accurate): Renamed from re_fastmap_accurate.
25327         (no_sub): Renamed from re_no_sub.
25328         (not_bol): Renamed from re_not_bol.
25329         (not_eol): Renamed from re_not_eol.
25330         (newline_anchor): Renamed from re_newline_anchor.
25331         (num_regs): Renamed from rm_num_regs.
25332         (start): Renamed from rm_start.
25333         (end): Renamed from rm_end.
25334
25335         (free_state): Move up a bit.
25336
25337         * lib/regex_internal.h (inline) [__GNUC__ < 3 && defined _LIBC]:
25338         #define to be empty.
25339         (ASCII_CHARS): New macro, replacing all uses of 0x80 and/or SBC_MAX / 2
25340         when that is what is intended.
25341         (SBC_MAX): Define to UCHAR_MAX + 1, not 256.
25342         (__re_error_msgid, __re_error_msgid_idx): Remove decls; not needed.
25343         (MAX): New macro.
25344         (re_xmalloc, re_calloc, re_xrealloc, re_x2realloc): Remove.
25345         All uses changed back to re_malloc, etc.  It's now the caller's
25346         responsibility to check for overflow; all callers changed.
25347         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc, re_xnrealloc):
25348         (re_x2nrealloc): Remove.
25349         (free_state): Remove decl.
25350
25351         * lib/regexc.c (regexec, re_match, re_search, re_match_2, re_search_2):
25352         (re_set_registers, re_exec):
25353         Use K&R-style defn.
25354
25355         2006-01-31  Roland McGrath  <roland@redhat.com>
25356
25357         * lib/regcomp.c (calc_eclosure_iter): Remove dead variables.
25358         Reported by Mike Frysinger <vapier@gentoo.org>.
25359
25360         2006-01-15  Andreas Jaeger  <aj@suse.de>
25361
25362         [BZ #1950]
25363         * lib/regex_internal.c (re_string_reconstruct): Adjust for
25364         build_wcs_upper_buffer change.
25365         (build_wcs_upper_buffer): Change return type.
25366
25367         2005-12-10  Ulrich Drepper  <drepper@redhat.com>
25368
25369         * lib/regex_internal.h: Include <stdint.h> if available.
25370
25371         2005-12-06  Paolo Bonzini  <bonzini@gnu.org>
25372
25373         * lib/regex_internal.h (SIZE_MAX): Provide a default definition.
25374
25375         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
25376
25377         * lib/regcomp.c: Adjust for changed secondary hash function.
25378
25379         2005-09-30  Ulrich Drepper  <drepper@redhat.com>
25380
25381         * lib/regex.h: Pretty printing.
25382         Clean up namespace a bit.
25383
25384         2005-09-30  Jakub Jelinek  <jakub@redhat.com>
25385
25386         * lib/regexec.c (update_cur_sifted_state, check_arrival,
25387         check_arrival_add_next_nodes): Avoid using uninitialized variable.
25388
25389         2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
25390                     Ulrich Drepper  <drepper@redhat.com>
25391
25392         [BZ #1302]
25393         * lib/regex_internal.h (bitset_t): Renamed from bitset.  All uses
25394         changed.
25395         (bitset_word_t): Renamed from bitset_word.  All uses changed.
25396
25397         2005-09-22  Ulrich Drepper  <drepper@redhat.com>
25398
25399         [BZ #281]
25400         * lib/regex.h: Define RE_TRANSLATE_TYPE as unsigned char *.
25401         * lib/regcomp.c: Remove unnecessary uses of
25402         unsigned RE_TRANSLATE_TYPE.
25403         * lib/regex_internal.h: Likewise.
25404         * lib/regex_internal.c: Likewise.
25405         * lib/regexec.c: Likewise.
25406         Based on a patch by Stepan Kasal <kasal@ucw.cz>.
25407
25408         2005-09-07  Ulrich Drepper  <drepper@redhat.com>
25409
25410         * lib/regexec.c (find_recover_state): Remove unnecessary
25411         initialization.
25412         (transit_state_bkref): Make DFA a const pointer.
25413         (get_subexp): Likewise.
25414         (check_arrival): Likewise.
25415         (update_cur_sifted_state): Likewise.
25416         (re_search_internal): Likewise.
25417         (prune_impossible_nodes): Likewise.
25418         (acquire_init_state_context): Likewise.
25419         (proceed_next_node): Likewise.
25420         (set_regs): Likewise.
25421         (free_fail_stack_return): Likewise.
25422         (check_arrival_expand_ecl): Mark DFA parameter as const.
25423         (check_arrival_expand_ecl_sub): Likewise.
25424         (check_subexp_limits): Likewise.
25425         (sub_epsilon_src_nodes):  Likewise.
25426         (add_epsilon_src_nodes):  Likewise.
25427         (merge_state_array): Likewise.
25428         (update_regs): Likewise.
25429         (build_trtable): Likewise.
25430         (sift_states_backward): Mark MCTX parameter as const.
25431         (build_sifted_states): Likewise.
25432         (update_cur_sifted_state): Likewise.
25433         (sift_states_mkref): Likewise.
25434         (check_arrival_expand_ecl): Mark eclosure as const.
25435         (check_dst_limits_calc_pos_1): Likewise.
25436         * lib/regex_internal.h (re_match_context_t): Make dfa a const
25437         pointer.
25438
25439         2005-09-06  Ulrich Drepper  <drepper@redhat.com>
25440
25441         * lib/regexec.c (merge_state_with_log): Define dfa as const pointer.
25442         (transit_state_sb): Likewise.
25443         (transit_state_mb): Likewise.
25444         (sift_states_iter_mb): Likewise.
25445         (check_arrival_add_next_nodes): Likewise.
25446         (check_node_accept_bytes): Change first parameter to pointer-to-const.
25447         [_LIBC] (re_search_2_stub): Use mempcpy.
25448
25449         * lib/regex_internal.c (re_string_reconstruct): Avoid calling
25450         mbrtowc for very simple UTF-8 case.
25451
25452         * lib/regex_internal.c (re_acquire_state): Make DFA pointer arg
25453         a pointer-to-const.
25454         (re_acquire_state_context): Likewise.
25455         * lib/regex_internal.h: Adjust prototypes.
25456
25457         * lib/regex.c: Prevent using C++ compilers.
25458
25459         * lib/regex_internal.c (re_acquire_state): Minor code rearrangement.
25460         (re_acquire_state_context): Likewise.
25461
25462 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
25463
25464         * modules/regex (Depends-on): Add ssize_t.
25465
25466 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
25467
25468         * m4/regex.m4 (gl_REGEX): Check for new glibc interface to
25469         translation table.
25470
25471 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
25472
25473         * doc/gnulib-tool.texi (Modified imports): pathname -> file name.
25474
25475 2006-03-29  Mark D. Baushke  <mdb@gnu.org>
25476             Bruno Haible  <bruno@clisp.org>
25477
25478         * lib/stdint_.h: On OpenBSD, don't redefine types already included in
25479         <sys/types.h> and <inttypes.h>.
25480
25481 2006-03-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25482
25483         * m4/argz.m4 (gl_FUNC_ARGZ): If we define `error_t', also define
25484         `__error_t_defined', so argp.h will not typedef the former.
25485
25486 2006-03-25  Paul Eggert  <eggert@cs.ucla.edu>
25487
25488         * m4/regex.m4 (gl_REGEX): Don't insist on REG_SYNTAX_POSIX_EGREP,
25489         REG_SYNTAX_EMACS, and REG_IGNORE_CASE.  Settle for the traditional
25490         glibc names.  Even if glibc is changed to conform to POSIX, the
25491         traditional names will be available anyway, since regex depends on
25492         the extensions module.  Also, fix a longstanding typo in the
25493         implementation of Spencer ERE test #75 from grep 2.3.  Problems
25494         reported by Emanuele Giaquinta.  Also, change sense of cached
25495         variable, so that the message makes sense.
25496
25497 2006-03-24  Simon Josefsson  <jas@extundo.com>
25498
25499         * lib/base64.c: Fix problems reported by Eric Blake <ebb9@byu.net>,
25500         including some doc fixes.
25501         (base64_encode_alloc): Fix +1 bug on allocation failures.
25502
25503 2006-03-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25504
25505         * lib/base64.c (base64_encode): Do not read past end of array with
25506         unsanitized input on systems with CHAR_BIT > 8.
25507
25508 2006-03-24  Eric Blake  <ebb9@byu.net>
25509
25510         * lib/time_r.c (copy_string_result): Remove, as it is no longer used.
25511
25512 2006-03-22  Karl Berry  <karl@gnu.org>
25513
25514         * config/srclist.txt (*setenv.[ch]): get from coreutils.
25515         * config/srclistvars.sh (COREUTILS): new var.
25516
25517 2006-03-17  Jim Meyering  <jim@meyering.net>
25518
25519         * m4/regex.m4 (gl_REGEX): Fix typo in last change:
25520         s/_REGEX_WIDE_OFFSETS/_REGEX_LARGE_OFFSETS/.
25521
25522 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
25523
25524         * m4/regex.m4 (gl_REGEX): Don't check for off_t, since the code
25525         no longer needs it.  Instead, check that regoff_t is as least
25526         as wide as ptrdiff_t.
25527
25528         Don't define _REGEX_WIDE_OFFSETS unless using the included regex,
25529         so that our regex.h stays compatible with the installed regex.
25530         This is helpful for installers who configure --without-included-regex.
25531         Problem reported by Emanuele Giaquinta.
25532
25533 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
25534
25535         * lib/regex.h (regoff_t) [defined _REGEX_LARGE_OFFSETS]:
25536         Typedef to long int, not to off_, as POSIX will likely change
25537         in that direction.
25538
25539 2006-03-15  Eric Blake  <ebb9@byu.net>
25540
25541         * m4/dirfd.m4 (gl_FUNC_DIRFD): Use AC_REQUIRE for AC_HEADER_DIRENT.
25542
25543 2006-03-13  Sergey Poznyakoff  <gray@gnu.org.ua>
25544
25545         * lib/argp-help.c (validate_uparams): Fix typo
25546         * lib/argp-parse.c (argp_default_options): Consistently begin help
25547         messages with a lowercase letter.
25548
25549 2006-03-11  Paul Eggert  <eggert@cs.ucla.edu>
25550
25551         * lib/time_r.h (asctime_r, ctime_r): Remove.  These functions can
25552         overrun buffers and shouldn't be used (much as gets shouldn't be
25553         used).
25554         * lib/time_r.c (asctime_r, ctime_r): Likewise.
25555
25556 2006-03-08  Simon Josefsson  <jas@extundo.com>
25557
25558         * m4/gc-random.m4: Permit 'no' as variable values and fix warnings,
25559         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
25560
25561 2006-03-08  Simon Josefsson  <jas@extundo.com>
25562
25563         * m4/gc-random.m4: Call AC_CANONICAL_HOST and use $host_os instead of
25564         $target, suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
25565
25566 2006-03-08  Simon Josefsson  <jas@extundo.com>
25567
25568         * lib/gc-gnulib.c (randomize): Don't open files called 'no', they
25569         signal that configure disabled the device.
25570
25571 2006-03-08  Simon Josefsson  <jas@extundo.com>
25572
25573         * build-aux/maint.mk: Fix refresh-po, to handle no translated
25574         languages.
25575
25576 2006-03-07  Simon Josefsson  <jas@extundo.com>
25577
25578         * modules/getopt (Depends-on): Add unistd.
25579
25580         * modules/unistd: New file.
25581
25582 2006-03-07  Simon Josefsson  <jas@extundo.com>
25583
25584         * modules/gc-random: New file.
25585
25586 2006-03-07  Simon Josefsson  <jas@extundo.com>
25587
25588         * m4/unistd_h.m4: New file.
25589
25590 2006-03-07  Simon Josefsson  <jas@extundo.com>
25591
25592         * m4/readline.m4 (gl_FUNC_READLINE): Rewrite the cached part of the
25593         test to be side-effect free by storing the result in the cache
25594         variable gl_cv_lib_readline, and moving the assignment of
25595         LIBREADLINE and LTLIBREADLINE outside the COMMANDS-TO-SET-IT.
25596         From Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
25597
25598 2006-03-07  Simon Josefsson  <jas@extundo.com>
25599
25600         * m4/gc-random.m4: New file, mostly from gc.m4.  Warn instead of
25601         error on missing devices (the functions will return an error).
25602
25603         * m4/gc.m4: Move random stuff to gc-random.m4
25604
25605 2006-03-07  Simon Josefsson  <jas@extundo.com>
25606
25607         * lib/unistd_.h: New file.
25608
25609 2006-03-07  Simon Josefsson  <jas@extundo.com>
25610
25611         * lib/gc-libgcrypt.c, gc-gnulib.c: Use GC_USE_RANDOM.
25612
25613 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
25614
25615         * m4/unistd_h.m4 (gl_HEADER_UNISTD): Rename, to match modules file.
25616         Problem reported by Juan Manuel Guerrero.
25617
25618 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
25619
25620         * lib/c-stack.c: Include unistd.h unconditionally, since we now assume
25621         the unistd module.
25622         * lib/getlogin_r.c: Likewise.
25623         * lib/getlogin_r.h: Likewise.
25624         * lib/glob.c: Likewise.
25625         * lib/pagealign_alloc.c: Likewise.
25626         * lib/unistd_.h: Remove; no longer needed.
25627
25628 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
25629
25630         * MODULES.html.sh (Support for systems lacking POSIX:2001):
25631         Add unistd.
25632         * modules/c-stack (Depends-on): Add unistd.
25633         * modules/getlogin_r: Likewise.
25634         * modules/glob: Likewise.
25635         * modules/pagealign_alloc: Likewise.
25636         * modules/unistd (Files): Remove lib/unistd_.h.
25637         (EXTRA_DIST): Remove.
25638         (unistd.h): Create using 'echo' rather than 'cp', so that we don't
25639         need unistd_.h.
25640         (MOSTLYCLEANFILES): Remove unistd.h-t.
25641
25642 2006-03-03  Simon Josefsson  <jas@extundo.com>
25643
25644         * build-aux/maint.mk: Add several syntax checks from CoreUtils.
25645
25646 2006-03-03  Simon Josefsson  <jas@extundo.com>
25647
25648         * build-aux/maint.mk: Add refresh-po rule, based on ideas from
25649         libidn and bison.
25650
25651 2006-03-03  Simon Josefsson  <jas@extundo.com>
25652
25653         * build-aux/maint.mk: Add indent target.
25654
25655 2006-03-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de> (tiny change)
25656
25657         * m4/poll.m4 (gl_FUNC_POLL): If we deem poll(2) unacceptable, use
25658         our replacement poll.h in any case, to avoid a differing
25659         declaration from a system header.  Seen on AIX.
25660
25661 2006-03-01  Simon Josefsson  <jas@extundo.com>
25662
25663         * lib/readline.c: Fix typo, tiny patch from Stepan Kasal
25664         <kasal@ucw.cz>.
25665
25666 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
25667
25668         * modules/gettime (Depends-on): Add extensions module.
25669         * modules/nanosleep (Depends-on): Likewise.
25670         * modules/settime (Depends-on): Likewise.
25671
25672 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
25673
25674         * m4/clock_time.m4 (gl_CLOCK_TIME): Require gl_USE_SYSTEM_EXTENSIONS,
25675         not merely AC_GNU_SOURCE, for the benefit of Solaris 10 when compiled
25676         pedantically.
25677         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
25678         * m4/timespec.m4 (gl_TIMESPEC): Likewise.
25679
25680         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use "=" with "test",
25681         not "==".  Reported by Ralf Wildenhues.
25682
25683 2006-03-01  Karl Berry  <karl@gnu.org>
25684
25685         * doc/Copyright/request-*: new files, synced from gnuorg.
25686
25687 2006-03-01  Karl Berry  <karl@gnu.org>
25688
25689         * config/srclist.txt (Copyright/*): new entries.
25690
25691 2006-02-28  Simon Josefsson  <jas@extundo.com>
25692
25693         * lib/getopt.c: Protect #include of unistd.h, for MSVS.
25694
25695 2006-02-27  Simon Josefsson  <jas@extundo.com>
25696
25697         * lib/base64.h: Indent #define's.  From Jim Meyering
25698         <jim@meyering.net>.
25699
25700 2006-02-27  Jim Meyering  <jim@meyering.net>
25701
25702         Revert the change of 2006-02-24, so these files can continue
25703         to be sync'd from gettext.
25704         * lib/mkdtemp.c, setenv.c, unsetenv.c: *Un*-normalize inclusion
25705         of `config.h'.
25706
25707 2006-02-26  Paul Eggert  <eggert@cs.ucla.edu>
25708
25709         * modules/intprops: New file.
25710         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
25711         Add intprops.
25712         * modules/getloadavg (Files): Remove lib/intprops.h.
25713         (Depends-on): Add intprops.
25714         * modules/human: Likewise.
25715         * modules/inttostr: Likewise.
25716         * modules/openat: Likewise.
25717         * modules/sig2str: Likewise.
25718         * modules/userspec: Likewise.
25719         * modules/utimecmp: Likewise.
25720         * modules/xnanosleep: Likewise.
25721         * modules/xstrtol: Likewise.
25722
25723 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny changes)
25724
25725         * modules/xstrtod: Omit xstrtod.h, xstrtod.c; they're in LIB_SOURCES.
25726         * modules/lock-tests (TESTS): Use $(EXEEXT).
25727         * modules/tls-tests: Likewise.
25728         * modules/argp-tests: Likewise.
25729         (check_PROGRAMS): New var, replacing...
25730         (noinst_PROGRAMS, test_argp_SOURCES): Remove.
25731
25732 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25733
25734         * lib/mkdtemp.c, lib/setenv.c, lib/unsetenv.c: Normalize inclusion of
25735         `config.h'.
25736
25737 2006-02-24  Paul Eggert  <eggert@cs.ucla.edu>
25738
25739         * lib/glob.c: Say "invalid" rather than "illegal" in comments.
25740
25741 2006-02-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25742
25743         Sync from coreutils.
25744         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Require gl_FUNC_LCHMOD and
25745         gl_CHDIR_SAFER.
25746
25747 2006-02-22  Jim Meyering  <jim@meyering.net>
25748
25749         Sync from coreutils.
25750         * m4/chdir-safer.m4: New file.
25751
25752 2006-02-20  Paul Eggert  <eggert@cs.ucla.edu>
25753
25754         * lib/getcwd.c (AT_FDCWD): Work around a bug in Solaris 9 and 10, where
25755         AT_FDCWD exceeds INT_MAX.
25756         * lib/openat.h (AT_FDCWD): Likewise.
25757
25758 2006-02-17  Eric Blake  <address@hidden>
25759
25760         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Fix caching error.
25761
25762 2006-02-16  Simon Josefsson  <jas@extundo.com>
25763
25764         * modules/getaddrinfo (Depends-on): Add sys_socket.
25765
25766 2006-02-15  Simon Josefsson  <jas@extundo.com>
25767
25768         * build-aux/maint.mk: Add dsyntax-check rule.
25769
25770 2006-02-15  Eric Blake  <ebb9@byu.net>
25771
25772         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Don't attempt using
25773         winsock2.h or ws2tcpip.h when sys/socket.h is present. Fixes
25774         'present but cannot compile' warnings on cygwin.
25775         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Use gl_HEADER_SYS_SOCKET.  Don't
25776         use ws2tcpip.h if sys/socket.h works.
25777         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Use gl_HEADER_SYS_SOCKET.
25778         (gl_GETADDRINFO): Don't use ws2tcpip.h when sys/socket.h is present.
25779
25780 2006-02-14  Simon Josefsson  <jas@extundo.com>
25781
25782         * modules/maintainer-makefile (Files): Rename.
25783
25784         * build-aux/GNUmakefile: Rename Makefile.maint to maint.mk
25785         and (the local) Makefile.cfg to maint-cfg.mk.
25786
25787         * build-aux/Makefile.maint, build-aux/maint.mk: Renamed the former
25788         to the latter.
25789
25790         * modules/maintainer-makefile: New module.
25791
25792         * build-aux/Makefile.maint: New file, from GNU CoreUtils, although
25793         severaly stripped to make it possible to build it up from scratch
25794         with reliable tests.
25795
25796         * build-aux/GNUmakefile: New file, from GNU CoreUtils with some
25797         fixes to permit overriding the default actions when configure and
25798         makefile are not available.
25799
25800 2006-02-14  Paul Eggert  <eggert@cs.ucla.edu>
25801
25802         Sync from coreutils.
25803         * modules/lstat (Depends-on): Don't depend on xalloc.
25804         (License): Change from GPL to LGPL, since this is now simply a
25805         replacement for a libc function.
25806
25807 2006-02-14  Jim Meyering  <jim@meyering.net>
25808
25809         Sync from coreutils.
25810
25811         Eliminate the unwelcome (albeit unlikely) possibility of xmalloc
25812         failure on deficient systems, and simplify gnulib lgpl dependencies.
25813         * lib/lstat.c (rpl_lstat): Rewrite to use stat() in place of the
25814         xmalloc/lstat combination.  Based on a patch from Bruno Haible.
25815
25816         * lib/xalloc-die.c: Remove unused definition of N_.
25817
25818 2006-02-14  Jim Meyering  <jim@meyering.net>
25819
25820         Sync from coreutils.
25821         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Invoke
25822         AC_CHECK_FUNCS(getmntent) unconditionally so that tests of
25823         $ac_cv_func_getmntent (e.g., in gl_LIST_MOUNTED_FILE_SYSTEMS) need not
25824         double-quote uses of that variable, to accommodate the rare case in
25825         which getmntent is available in none of the libraries checked.  This
25826         happens at least on FreeBSD 5.0.
25827
25828 2006-02-13  Simon Josefsson  <jas@extundo.com>
25829
25830         * gnulib-tool (Usage): Fix --import, from
25831         karl@freefriends.org (Karl Berry).
25832
25833 2006-02-13  Sergey Poznyakoff  <gray@gnu.org.ua>
25834
25835         * lib/argp-fmtstream.c: Restore another bugfix lost on 2005-12-12
25836
25837 2006-02-07  Sergey Poznyakoff  <gray@gnu.org.ua>
25838
25839         * lib/argp-namefrob.h: Restore changes accidentally lost during the
25840         "autoupdate" on 2005-12-12.
25841
25842 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
25843
25844         * modules/closeout (Depends-on): Remove atexit.
25845
25846 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
25847
25848         * lib/closeout.c (close_stdout): Don't assume 'bool' converts nonzero
25849         ints to 0 or 1, as this isn't true for the stdbool.h substitute.
25850
25851 2006-02-05  Paul Eggert  <eggert@cs.ucla.edu>
25852
25853         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Don't #define
25854         __EXTENSIONS__ if this causes compilation to fail.  Problem
25855         reported by Nelson H. F. Beebe with Solaris 10 and Sun C 5.7
25856         c89 -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED.
25857
25858 2006-01-27  Paul Eggert  <eggert@cs.ucla.edu>
25859
25860         * lib/fnmatch.c (L_): Renamed from L, to work around a bug in
25861         Mac OS X 10.3.9 with GCC 3 reported by Claudio Fontana in
25862         <http://lists.gnu.org/archive/html/bug-gnulib/2006-01/msg00074.html>.
25863         All uses changed.
25864
25865 2006-01-26  Simon Josefsson  <jas@extundo.com>
25866
25867         * lib/socket_.h: Set WINVER to 0x0501, to make sure getaddrinfo
25868         prototype is visible on mingw32.
25869
25870         * lib/getaddrinfo.h: Define EAI_ADDRFAMILY and EAI_SYSTEM if not set,
25871         for mingw32.
25872
25873         * lib/gai_strerror.c, getaddrinfo.h: Protect netdb.h #include (for
25874         mingw32).
25875
25876 2006-01-26  Paul Eggert  <eggert@cs.ucla.edu>
25877
25878         * lib/fts.c (diropen): Open with O_NOCTTY | O_NONBLOCK too.  Don't
25879         attempt to open for write; this always fails, at least on POSIX
25880         hosts.  This reinstates the 2006-01-09 change, which was
25881         inadvertently removed.
25882
25883 2006-01-26  Bruno Haible  <bruno@clisp.org>
25884
25885         * gnulib-tool (func_import): Use "trap 'exit $?' instead of "trap :".
25886         Reported by Paul Eggert.
25887
25888 2006-01-26  Bruno Haible  <bruno@clisp.org>
25889             Paul Eggert  <eggert@cs.ucla.edu>
25890
25891         * lib/stdbool_.h (_Bool)
25892         [(! (defined __cplusplus || defined __BEOS__)
25893           && !defined __GNUC__
25894           && !(defined __HP_cc || defined __xlc__
25895                || (defined __SUNPRO_C && (__SUNPRO_C < 0x550 || __STDC__ == 1))
25896                || defined __sgi))]:
25897         #define to signed char in these cases too; this simplifies
25898         the code (so that we don't have to worry about HP-UX, AIX, SunPRO,
25899         etc., separately) and makes it more conservative.
25900
25901 2006-01-25  Simon Josefsson  <jas@extundo.com>
25902
25903         * m4/getaddrinfo.m4: Look for getaddrinfo inside ws2tcip.h and
25904         -lws2_32.  Protect sys/socket.h and netdb.h #include's.  Include
25905         ws2tcpip.h with WINVER=0x0501.  All for mingw32.
25906
25907 2006-01-25  Sergey Poznyakoff  <gray@gnu.org.ua>
25908
25909         * lib/argp-namefrob.h: Bugfix. Remove stray #
25910
25911 2006-01-25  Paul Eggert  <eggert@cs.ucla.edu>
25912
25913         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for xlc bug if __GCC__ too,
25914         so that we test the test.
25915         Check for yet another HP-UX cc bug involving *bool |= bool.
25916
25917 2006-01-25  Karl Berry  <karl@gnu.org>
25918
25919         * config/srclist.txt (vasnprintf.c): sync lost.
25920
25921 2006-01-25  Jim Meyering  <jim@meyering.net>
25922
25923         Sync from the stable (b5) branch of coreutils:
25924
25925         * lib/fts.c (fts_children): Don't let close() clobber errno from
25926         failed fchdir().
25927
25928         * lib/fts.c (fts_stat): When following a symlink-to-directory,
25929         don't necessarily interpret stat-fails+lstat-succeeds as indicating
25930         a dangling symlink.  That can also happen at least for ELOOP.
25931         The fix: return FTS_SLNONE only when the stat errno is ENOENT.
25932         FYI, this bug predates the inclusion of fts.c in coreutils.
25933
25934         * lib/fts.c (fts_open): Put new maxarglen declaration and uses
25935         in their own block, so pre-c99 compilers don't object.
25936
25937         Avoid the double-free (first in fts_read, second in fts_close) that
25938         would occur when an `active' directory is made inaccessible (e.g.,
25939         via chmod a-x) during a traversal.
25940         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
25941         before returning.  Reproduce this failure by
25942         mkdir -p a/b; cd a; chmod a-x . b
25943         Reported by Stavros Passas.
25944
25945 2006-01-25  Jim Meyering  <jim@meyering.net>
25946
25947         * lib/fileblocks.c: Remove more useless parentheses.
25948         * lib/readutmp.h: Likewise.
25949
25950 2006-01-25  Bruno Haible  <bruno@clisp.org>
25951
25952         * lib/stdbool_.h (_Bool) [IRIX cc]: Define as 'signed char', to avoid
25953         warnings.
25954         Reported by Paul Eggert.
25955
25956 2006-01-25  Bruno Haible  <bruno@clisp.org>
25957
25958         * gnulib-tool (func_import): Use "trap :" instead of "trap -" to get
25959         rid of a trap command. For Solaris sh.
25960         Reported by Mark D. Baushke <mdb@gnu.org>.
25961
25962 2006-01-24  Simon Josefsson  <jas@extundo.com>
25963
25964         * lib/socket_.h (SHUT_WR, SHUT_RDWR): Don't hardcode, suggested by
25965         Bruno.
25966
25967 2006-01-24  Karl Berry  <karl@gnu.org>
25968
25969         * config/srclist.txt (argp-namefrob.h): sync lost.
25970
25971 2006-01-24  Jim Meyering  <jim@meyering.net>
25972
25973         * modules/openat (Files): Add lib/intprops.h.
25974         From Mark D. Baushke.
25975
25976 2006-01-24  Jim Meyering  <jim@meyering.net>
25977
25978         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBSOURCES([intprops.h]).
25979         Reported by Mark D. Baushke.
25980
25981 2006-01-24  Jim Meyering  <jim@meyering.net>
25982
25983         * lib/socket_.h: Remove useless parentheses in uses of cpp `defined'.
25984
25985 2006-01-24  Bruno Haible  <bruno@clisp.org>
25986
25987         * modules/strnlen (Maintainer): Change from glibc to all.
25988
25989 2006-01-24  Bruno Haible  <bruno@clisp.org>
25990
25991         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for IBM and HP-UX bugs.
25992         Patch by Paul Eggert.
25993
25994 2006-01-24  Bruno Haible  <bruno@clisp.org>
25995
25996         * lib/stdbool_.h (_Bool) [__cplusplus]: Don't define if the compiler
25997         already has it.
25998         Report and patch by Albert Chin-A-Young  <china@thewrittenword.com> on
25999         2005-11-26.
26000
26001         * lib/stdbool_.h (_Bool) [HP-UX cc, AIX cc,xlc]: Define as
26002         'signed char' to avoid problems with the built-in _Bool type.
26003         Reported by Paul Eggert on 2005-11-26.
26004
26005 2006-01-24  Bruno Haible  <bruno@clisp.org>
26006
26007         * gnulib-tool (func_import): Avoid constructing complicated sed
26008         expressions inside backquote.
26009         Report and solution by Mark D. Baushke <mdb@gnu.org>.
26010
26011 2006-01-23  Ulrich Drepper  <drepper@redhat.com>
26012
26013         These changes imported from libc.
26014         * lib/getopt.c: Use __fxprintf instead of inline stream orientation
26015         test and two separate function calls.
26016         * lib/strndup.c (__strndup): Add libc_hidden_def.
26017
26018 2006-01-23  Simon Josefsson  <jas@extundo.com>
26019
26020         * modules/lock-tests: Use check_PROGRAMS instead of noinst_PROGRAMS.
26021         Remove the test_*_SOURCES variable: automake infers it by default.
26022         * modules/tls-tests: Likewise.
26023
26024 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
26025
26026         Work around porting bugs reported by Dieter in
26027         <http://lists.gnu.org/archive/html/bug-bison/2006-01/msg00049.html>.
26028         * lib/getopt.c (_NOPROTO): Remove; no longer needed.
26029         Include <stdlib.h> and <unistd.h> in all environments; it's safe now.
26030         Include "getopt.h" first, to check interface.
26031         (getenv): Declare only if defined HAVE_DECL_GETENV &&
26032         !HAVE_DECL_GETENV.
26033         * lib/strndup.c [!_LIBC]: Include "strndup.h" to get prototype.
26034         (__strndup): Revert to K&R-style function dfns, the glibc style.
26035         * lib/strnlen.c: Don't claim it's taken from glibc; it's not.
26036         (strnlen, __strnlen): Remove #defines and #undefs; not needed.
26037         Include strnlen.h first, to get prototype properly.
26038         (strnlen): Renamed from __strnlen.
26039         Remove weak alias.
26040
26041 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
26042
26043         * m4/getopt.m4 (gl_PREREQ_GETOPT): Check for getenv decl.
26044
26045 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
26046
26047         * config/srclist.txt: Adjust to reflect glibc reorganization.
26048         This affects only comments.
26049
26050 2006-01-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
26051
26052          * gnulib-tool, build-aux/csharpcomp.sh.in: Do not pass `-q' to mktemp.
26053          Reported by Bruce Korb <bkorb@gnu.org>.
26054
26055 2006-01-22  Paul Eggert  <eggert@cs.ucla.edu>
26056
26057         * lib/quotearg.c (quotearg_buffer_restyled): Add "default: break;"
26058         to pacify gcc -Wswitch-default.
26059
26060 2006-01-22  Bruno Haible  <bruno@clisp.org>
26061
26062         * lib/vasnprintf.c (VASNPRINTF): In the computation of the size of the
26063         temporary buffer for sprintf, take into account the precision also
26064         for 'd', 'i', 'u', 'o', 'x', 'X'.
26065
26066 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
26067
26068         * modules/argp-tests: New module
26069         * tests/test-argp.c: New file
26070         * tests/test-argp-2.sh: New file
26071
26072 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
26073
26074         * lib/argp-help.c (usage_long_opt): Do not print DOC options.
26075         (__argp_base_name): Removed
26076         * lib/argp-namefrob.h (__argp_basename): Removed definition. Was a
26077         typo.
26078         (__argp_base_name): Provide macro definition or extern declaration
26079         depending on the configuration
26080
26081 2006-01-20  Simon Josefsson  <jas@extundo.com>
26082
26083         * modules/inet_ntop (Depends-on): Depend on sys_socket.
26084
26085 2006-01-20  Simon Josefsson  <jas@extundo.com>
26086
26087         * lib/inet_ntop.h: Unconditionally include sys/socket.h.
26088
26089 2006-01-20  Paul Eggert  <eggert@cs.ucla.edu>
26090
26091         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Use -Wl,-z,ignore
26092         rather than -Xlinker -z -Xlinker ignore, as it's more portable.
26093         Suggested by Bruno Haible.
26094
26095 2006-01-20  Karl Berry  <karl@gnu.org>
26096
26097         * config/srclist.txt (argp-fmtstream.h, localcharset.c): comment out
26098         until changes propagate, I guess.
26099
26100 2006-01-19  Simon Josefsson  <jas@extundo.com>
26101
26102         * m4/socklen.m4: Look in ws2tcpip.h too, for mingw32.
26103
26104 2006-01-19  Simon Josefsson  <jas@extundo.com>
26105
26106         * lib/socket_.h: Map SHUT_RD, SHUT_WR, SHUT_RDWR correctly.
26107
26108 2006-01-19  Simon Josefsson  <jas@extundo.com>
26109
26110         * gnulib-tool: Set check_PROGRAMS.
26111
26112         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
26113         modules/des-tests, modules/gc-arcfour-tests,
26114         modules/gc-arctwo-tests, modules/gc-des-tests,
26115         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
26116         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
26117         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
26118         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
26119         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
26120         modules/md5-tests, modules/readline, modules/rijndael-tests: Use
26121         check_PROGRAMS instead of noinst_PROGRAMS to be able to remove
26122         test_*_SOURCES.
26123
26124 2006-01-18  Simon Josefsson  <jas@extundo.com>
26125
26126         * modules/socklen (Depends-on): Depend on sys_socket.
26127
26128 2006-01-18  Simon Josefsson  <jas@extundo.com>
26129
26130         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
26131         modules/des-tests, modules/gc-arcfour-tests,
26132         modules/gc-arctwo-tests, modules/gc-des-tests,
26133         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
26134         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
26135         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
26136         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
26137         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
26138         modules/md5-tests, modules/readline, modules/rijndael-tests: Add
26139         $(EXEEXT) to automake TESTS variable, for mingw32.
26140
26141 2006-01-17  Simon Josefsson  <jas@extundo.com>
26142
26143         * modules/socklen (Include): Need sys/socket.h.
26144
26145 2006-01-17  Bruno Haible  <bruno@clisp.org>
26146
26147         * modules/ssize_t (Include): Add <sys/types.h>.
26148
26149 2006-01-16  Paul Eggert  <eggert@cs.ucla.edu>
26150
26151         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Don't use ldd, as
26152         it's not portable and it doesn't work with cross-compiles.
26153         Problem reported by Bruno Haible.  Fix missing-$ typo in
26154         'test "gl_cv_ignore_unused_libraries" ...' that prevented
26155         -zignore from being used with Sun's C compiler.
26156
26157 2006-01-12  Simon Josefsson  <jas@extundo.com>
26158
26159         * lib/base64.c: Fix warning, reported by Bruno Haible
26160         <bruno@clisp.org> and patch by Paul Eggert <eggert@CS.UCLA.EDU>.
26161
26162 2006-01-12  Bruno Haible  <bruno@clisp.org>
26163
26164         * modules/ldd: New file.
26165         * build-aux/ldd.sh.in: New file.
26166         * MODULES.html.sh (Support for building libraries and executables): Add
26167         ldd.
26168
26169 2006-01-12  Bruno Haible  <bruno@clisp.org>
26170
26171         * m4/ldd.m4: New file.
26172
26173 2006-01-12  Bruno Haible  <bruno@clisp.org>
26174
26175         * gnulib-tool (func_import, func_create_testdir): Don't go into an
26176         endless loop while replacing $auxdir with build-aux.
26177
26178 2006-01-11  Simon Josefsson  <jas@extundo.com>
26179
26180         * lib/stdint_.h (SIZE_MAX): Add missing (.
26181
26182 2006-01-11  Paul Eggert  <eggert@cs.ucla.edu>
26183
26184         Sync from coreutils.
26185         * lib/md5.c: Fix commentary typos.
26186         (alignof, UNALIGNED_P): No need for a GCC-specific version.
26187         * lib/md5.h (__attribute__): Remove; unused.
26188         * lib/sha1.c: Fix commentary to match md5 better.
26189         * lib/sha1.h (struct sha1_ctx): Use a word buffer, not a byte buffer,
26190         so that we don't need to worry about alignment.  All uses changed.
26191         This merges the 2005-10-28 md5 change into sha1.
26192
26193 2006-01-11  Jim Meyering  <jim@meyering.net>
26194
26195         Sync from coreutils.
26196         * lib/md5.c (OP): Fix spacing.
26197
26198 2006-01-11  Bruno Haible  <bruno@clisp.org>
26199
26200         Ensure automatic ordering between gl_LOCK and gl_ARGP.
26201         * m4/lock.m4 (gl_LOCK_BODY): Renamed from gl_LOCK.
26202         (gl_LOCK): New macro, requiring gl_LOCK_BODY.
26203
26204 2006-01-11  Bruno Haible  <bruno@clisp.org>
26205
26206         Ensure automatic ordering between gl_LOCK and gl_ARGP.
26207         * gnulib-tool (func_import, func_create_testdir): Put gl_LOCK into
26208         the "early" section as well.
26209
26210 2006-01-11  Bruno Haible  <bruno@clisp.org>
26211
26212         Avoid "ar: no archive members specified" error on MacOS X.
26213         * gnulib-tool (func_modules_add_dummy): New function.
26214         (func_import, func_create_testdir): Invoke it.
26215
26216 2006-01-11  Bruno Haible  <bruno@clisp.org>
26217
26218         * gnulib-tool (func_import, func_create_testdir): Replace build-aux
26219         with $auxdir in AC_CONFIG_FILES statements.
26220
26221 2006-01-11  Bruno Haible  <bruno@clisp.org>
26222
26223         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
26224         Initialize also noinst_HEADERS to empty.
26225
26226 2006-01-11  Bruno Haible  <bruno@clisp.org>
26227
26228         * gnulib-tool (AUTOMAKEPATH, AUTOCONF, ACLOCAL, AUTOMAKE): New
26229         variables.
26230         (func_create_megatestdir): Call aclocal, autoconf, automake here, not
26231         autoreconf.
26232
26233 2006-01-11  Bruno Haible  <bruno@clisp.org>
26234
26235         * gnulib-tool (AUTOCONF, ACLOCAL, AUTOMAKE, AUTORECONF): Make
26236         overridable by the user.
26237         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
26238
26239 2006-01-10  Simon Josefsson  <jas@extundo.com>
26240
26241         * modules/sys_socket: New file.
26242
26243 2006-01-10  Simon Josefsson  <jas@extundo.com>
26244
26245         * m4/sys_socket_h.m4: New file.
26246
26247 2006-01-10  Simon Josefsson  <jas@extundo.com>
26248
26249         * lib/socket_.h: New file.
26250
26251 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
26252
26253         * modules/readutmp (Maintainer): Add myself.
26254
26255 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
26256
26257         * m4/memcoll.m4 (gl_MEMCOLL): Don't require AC_FUNC_MEMCMP, undoing
26258         the 2002-12-31 change.  Problem and fix reported by Bruno Haible.
26259         People who are still concerned with buggy memcmp implementations
26260         can invoke gl_FUNC_MEMCMP themselves.
26261
26262 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
26263
26264         * lib/regex_internal.h (BITSET_WORD_BITS):
26265         Work around a bug in 64-bit PGC (before version 6.1-2), where the
26266         preprocessor mishandles large unsigned values as if they were signed.
26267         Problem reported by Claudio Fontana in
26268         <http://lists.gnu.org/archive/html/bug-gnulib/2005-12/msg00061.html>.
26269
26270 2006-01-10  Jim Meyering  <jim@meyering.net>
26271
26272         Avoid the double-free (first in fts_read, second in fts_close) that
26273         would occur when an `active' directory is made inaccessible (e.g.,
26274         via chmod a-x) during a traversal.
26275         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
26276         before returning.  Reproduce this failure by
26277         mkdir -p a/b; cd a; chmod a-x . b
26278         Reported by Stavros Passas.
26279
26280         Sync from coreutils.
26281         * lib/sha1.c: Tweak grammar in a comment.
26282
26283 2006-01-10  Jim Meyering  <jim@meyering.net>
26284
26285         * m4/fpending.m4: Also include <stdio.h>, for Dragonfly.
26286         Patch by Joerg Sonnenberger.
26287
26288 2006-01-10  Bruno Haible  <bruno@clisp.org>
26289
26290         * modules/readutmp: Depend on module free.
26291         * modules/strtok_r: Depend on module restrict.
26292
26293 2006-01-10  Bruno Haible  <bruno@clisp.org>
26294
26295         * modules/gettext (configure.ac): Add an invocation of
26296         AM_GNU_GETTEXT_VERSION. Needed since autoreconf is used by gnulib-tool.
26297
26298 2006-01-10  Bruno Haible  <bruno@clisp.org>
26299
26300         * m4/localcharset.m4 (gl_LOCALCHARSET): Also test for getc_unlocked.
26301         Reported by Werner Lemberg <wl@gnu.org>.
26302
26303 2006-01-10  Bruno Haible  <bruno@clisp.org>
26304
26305         * lib/localcharset.c: Update from GNU gettext.
26306
26307 2006-01-10  Bruno Haible  <bruno@clisp.org>
26308
26309         * lib/argp.h (__const): Remove macro. Use const instead.
26310         * lib/argp-fmtstream.h (__const): Likewise.
26311         * lib/glob_.h (__const): Remove macro.
26312         * lib/glob-libc.h: Use const instead of __const.
26313
26314 2006-01-10  Bruno Haible  <bruno@clisp.org>
26315
26316         * gnulib-tool (func_emit_tests_Makefile_am): Emit an empty SUBDIR
26317         variable.
26318         Needed to avoid an automake error regarding the 'gettext' module.
26319
26320 2006-01-09  Simon Josefsson  <jas@extundo.com>
26321
26322         * modules/inet_ntop (Depends-on): Add restrict.
26323
26324 2006-01-09  Simon Josefsson  <jas@extundo.com>
26325
26326         * modules/gc-rijndael-tests (License): Put under LGPL.
26327
26328         * modules/gc-des-tests (License): Likewise.
26329
26330         * modules/gc-arcfour-tests (License): Likewise.
26331
26332         * modules/gc-arctwo-tests (License): Likewise.
26333
26334         * modules/gc-pbkdf2-sha1-tests (License): Likewise.
26335
26336         * modules/gc-hmac-sha1-tests (Files): Likewise.
26337
26338         * modules/gc-hmac-md5-tests (License): Likewise.
26339
26340         * modules/gc-sha1-tests (License): Likewise.
26341
26342         * modules/gc-md5-tests (License): Likewise.
26343
26344         * modules/gc-md4-tests (License): Likewise.
26345
26346         * modules/gc-md2-tests (License): Likewise.
26347
26348         * modules/gc-tests (License): Likewise.
26349
26350         * modules/des-tests (License): Likewise.
26351
26352         * modules/md4-tests (License): Likewise.
26353
26354         * modules/md2-tests (License): Likewise.
26355
26356 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
26357
26358         Sync from coreutils:
26359
26360         * MODULES.html.sh (build_lib): New section, with new lib-ignore module.
26361         * modules/lib-ignore: New file.
26362         * modules/mkdir-p (Files): Add chdir-safer.c, chdir-safer.h, lchmod.h,
26363         chdir-safer.m4, lchmod.m4.
26364         * modules/openat: Add mkdirat.c, openat-priv.h.
26365
26366 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
26367
26368         Sync from coreutils.
26369         * m4/lib-ignore.m4: New file.
26370         * m4/lchmod.m4: New file.
26371
26372 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
26373
26374         Sync from coreutils.
26375         * lib/chdir-long.c (cdb_free): Don't bother trying to open directory
26376         for write access: POSIX says that must fail.
26377         * lib/fts.c (diropen): Likewise.
26378         * lib/save-cwd.c (save_cwd): Likewise.
26379         * lib/chdir-long.c (cdb_free): Open with O_NOCTTY | O_NONBLOCK as
26380         well, for minor improvements on hosts that lack O_DIRECTORY.
26381         * lib/chown.c (rpl_chown) [CHOWN_MODIFIES_SYMLINK]:
26382         Don't try O_WRONLY unless O_RDONLY failed wth EACCES.
26383         Fall back on chown if open failed with EACCES.
26384
26385         * lib/gettime.c (gettime) [!defined OK_TO_USE_1S_CLOCK]:
26386         Report an error at compile-time if only a 1-second nominal clock
26387         resolution is found.
26388
26389         * lib/lchmod.h: New file.
26390         * lib/mkdir-p.c: Include lchmod.h, lchown.h.
26391         (make_dir_parents): Use lchown rather than chown, and
26392         lchmod rather than chmod.
26393
26394         * lib/mountlist.c (ME_DUMMY): "none" and "proc" file systems are
26395         dummies too.  Problem with "none" reported by Bob Proulx.  Problem with
26396         "proc" reported by n0dalus.
26397
26398         * lib/mountlist.c: Include <limits.h>.
26399         (dev_from_mount_options)
26400         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]:
26401         New function.  It no longer assumes "dev=" has the System V meaning
26402         on Linux (since it doesn't).  It also parses "dev=" more carefully.
26403         (read_file_system_list)
26404         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]: Use it.
26405         MOUNTED_GETMNTENT2 is new here; the code didn't used to look for
26406         dev= in that case.
26407
26408         * lib/posixtm.h (PDS_PRE_2000): New macro.
26409         * lib/posixtm.c (year): Arg is now syntax_bits rather than
26410         allow_century.  All usages changed.  Reject dates outside the range
26411         1969-1999 if PDS_PRE_2000 is used.
26412
26413 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
26414
26415         Sync from coreutils.
26416         * doc/getdate.texi (General date syntax): Invalid dates are rejected.
26417         (Time of day items): Mention the possibility of leap seconds.
26418         Problem reported by Dr. David Alan Gilbert.
26419
26420 2006-01-09  Jim Meyering  <jim@meyering.net>
26421
26422         Sync from coreutils.
26423
26424         * lib/version-etc.c (COPYRIGHT_YEAR): Update to 2006.
26425
26426         * lib/chdir-safer.h, lib/chdir-safer.c: New files.
26427
26428         * lib/modechange.c (mode_compile): Reject an invalid mode string
26429         that starts with an octal digit.  From Andreas Gruenbacher.
26430
26431         * lib/openat.c: Include "fcntl--.h" and "unistd--.h", to map open
26432         and dup to open_safer and dup_safer, respectively.
26433         (openat_permissive): Fix typo in comment.
26434
26435         * lib/openat.c: Don't include <stdlib.h>, <unistd.h>, <fcntl.h>,
26436         "gettext.h"; either no longer needed or are guaranteed by openat.h.
26437         (_): Remove; no longer needed.
26438         (openat): Renamed from rpl_openat; no need for rpl_openat
26439         since openat.h renames openat for us.
26440         Replace most of the body with a call to openat_permissive,
26441         to avoid duplicate code.
26442         Port to (probably hypothetical) environments were mode_t is
26443         wider than int.
26444         (openat_permissive): Require mode arg, so that we can check
26445         types better.  Put it just after flags.  Change cwd failure
26446         indicator from pointer-to-bool to pointer-to-errno-value.
26447         All callers changed.
26448         Invoke openat_save_fail and/or openat_restore_fail if
26449         cwd_errno is null, so that openat can call us.
26450         (openat_permissive, fdopendir, fstatat, unlinkat):
26451         Simplify errno handling to avoid some duplicate code,
26452         as it's OK to set errno on success.
26453         * lib/openat.h: Revamp code so that function macros depend on
26454         __OPENAT_PREFIX only, not also on AT_FDCWD.
26455         (openat_ro): Remove.  Caller changed to use openat_permissive.
26456         (openat_permissive): Now a macro, if not a function.
26457         (openat_restore_fail, openat_save_fail): Now always functions,
26458         since mkdirat needs them even if __OPENAT_PREFIX is defined.
26459
26460         * lib/openat-priv.h: New file, defining macros used by mkdirat.c
26461         and openat.c.
26462         * lib/mkdirat.c: Include openat-priv.h.
26463         Remove definitions of macros defined therein.
26464         * lib/openat.c: Likewise.
26465
26466         * lib/mkdirat.c (mkdirat): New file and function.
26467         * lib/openat.h (mkdirat): Declare.
26468
26469         * lib/openat.c (fdopendir): Don't change errno when returning non-NULL.
26470
26471         * lib/openat.h (openat_permissive): Declare.
26472         (openat_ro): Define.
26473
26474         * lib/openat.c (EXPECTED_ERRNO): New macro.
26475         (openat_permissive): New function -- used in remove.c rewrite.
26476         (all functions): Set errno just before returning, only if there
26477         was an actual failure.
26478         Use EXPECTED_ERRNO rather than comparing against only ENOTDIR.
26479
26480         Emulate openat-family functions using Linux's procfs, if possible.
26481         Idea and some code based on Ulrich Drepper's glibc changes.
26482
26483         * lib/openat.c: (BUILD_PROC_NAME): New macro.
26484         Include <stdio.h>, <string.h>, "alloca.h" and "intprops.h".
26485         (rpl_openat): Emulate by trying to open /proc/self/fd/%d/%s,
26486         before falling back on save_cwd and restore_cwd.
26487         (fdopendir, fstatat, unlinkat): Likewise.
26488
26489         * lib/openat.c (fstatat, unlinkat): Perform the syscall directly,
26490         skipping the save_cwd...restore_cwd overhead, if FILE is absolute.
26491
26492         * lib/openat.c (rpl_openat): Use the promoted type (int), not mode_t,
26493         as second argument to va_arg.  Otherwise, some versions of gcc
26494         warn that `if this code is reached, the program will abort'.
26495
26496 2006-01-09  Jim Meyering  <jim@meyering.net>
26497
26498         Sync from coreutils.
26499         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile mkdirat.c.
26500         Require openat-priv.h.
26501
26502 2006-01-09  Bruno Haible  <bruno@clisp.org>
26503
26504         * modules/strnlen (Include): Use strnlen.h.
26505
26506 2006-01-09  Bruno Haible  <bruno@clisp.org>
26507
26508         * m4/stdint.m4 (gl_STDINT_H): Also test for <sys/bitypes.h>.
26509
26510 2006-01-09  Bruno Haible  <bruno@clisp.org>
26511
26512         * lib/sysexit_.h (EX_OK): New macro.
26513         Suggested by Martin Lambers <marlam@marlam.de>.
26514
26515 2006-01-09  Bruno Haible  <bruno@clisp.org>
26516
26517         * lib/stdint_.h: On Linux libc4 and libc5, include <sys/bitypes.h> and
26518         don't define _STDINT_H_NEED_SIGNED_INT_TYPES.
26519
26520 2006-01-09  Bruno Haible  <bruno@clisp.org>
26521
26522         * lib/stdint_.h (SIZE_MAX): Write the value without involving negative
26523         numbers.
26524
26525 2006-01-09  Bruno Haible  <bruno@clisp.org>
26526
26527         * lib/javacomp.sh.in: Move to ../build-aux/javacomp.sh.in.
26528         * lib/javaexec.sh.in: Move to ../build-aux/javaexec.sh.in.
26529         * lib/csharpcomp.sh.in: Move to ../build-aux/csharpcomp.sh.in.
26530         * lib/csharpexec.sh.in: Move to ../build-aux/csharpexec.sh.in.
26531
26532 2006-01-09  Bruno Haible  <bruno@clisp.org>
26533
26534         * build-aux/javacomp.sh.in: New file, moved from lib/.
26535         * modules/javacomp-script (Files): Update.
26536         (configure.ac): Add AC_CONFIG_FILES invocation.
26537         (EXTRA_DIST): Remove variable.
26538
26539         * build-aux/javaexec.sh.in: New file, moved from lib/.
26540         * modules/javaexec (Files): Update.
26541         (configure.ac): Add AC_CONFIG_FILES invocation.
26542         (EXTRA_DIST): Remove javaexec.sh.in.
26543
26544         * build-aux/csharpcomp.sh.in: New file, moved from lib/.
26545         * modules/csharpcomp-script (Files): Update.
26546         (configure.ac): Add AC_CONFIG_FILES invocation.
26547         (EXTRA_DIST): Remove variable.
26548
26549         * build-aux/csharpexec.sh.in: New file, moved from lib/.
26550         * modules/csharpexec (Files): Update.
26551         (configure.ac): Add AC_CONFIG_FILES invocation.
26552         (EXTRA_DIST): Remove csharpexec.sh.in.
26553
26554 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
26555
26556         Sync from coreutils.
26557
26558         Add POSIX ACL support
26559         * lib/acl.h (copy_acl, set_acl): Add declarations.
26560         * lib/acl.c (acl_entries): Add fallback implementation for POSIX ACL
26561         systems other than Linux.
26562         (chmod_or_fchmod): New function: use fchmod when possible,
26563         and chmod otherwise.
26564         (file_has_acl): Add a POSIX ACL implementation, with a
26565         Linux-specific subcase.
26566         (copy_acl): Add: copy an acl and S_ISUID, S_ISGID, and
26567         S_ISVTX from one file to another.  Fall back to fchmod/chmod when
26568         acls are unsupported.
26569         (set_acl): Add: set a file's acl and S_ISUID, S_ISGID, and
26570         S_ISVTX to a defined value.  Fall back to fchmod/chmod when acls
26571         are unsupported.
26572
26573 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
26574
26575         Sync from coreutils.
26576         * m4/acl.m4 (AC_FUNC_ACL): Add POSIX ACL and Linux-specific acl tests.
26577
26578 2006-01-07  Bruno Haible  <bruno@clisp.org>
26579
26580         * gnulib-tool (func_import): Add an AC_PROG_RANLIB dependency to
26581         gl_EARLY.
26582
26583 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
26584
26585         * lib/strftime.c (tzname): Don't declare if it is already #defined.
26586         Problem reported for Mingw by Mark Junker.
26587
26588 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
26589
26590         * README: Gnulib normally doesn't generate a tarball.
26591
26592 2006-01-03  Paul Eggert  <eggert@cs.ucla.edu>
26593
26594         * lib/xtime.h (xtime_make, xtime_nonnegative_nsec, xtime_nsec): Use
26595         long int, not int, for nanosecond counts, so that people who are
26596         used to POSIX struct timespec won't be surprised.  Reported by Jim
26597         Meyering.
26598
26599 2005-12-28  Bruno Haible  <bruno@clisp.org>
26600
26601         * build-aux/config.rpath: Update from GNU gettext.
26602
26603 2005-12-16  Jim Meyering  <jim@meyering.net>
26604
26605         * modules/fprintftime: New module.
26606         * MODULES.html.sh (Date and time <time.h>): Add fprintftime.
26607
26608 2005-12-16  Jim Meyering  <jim@meyering.net>
26609
26610         * m4/fprintftime.m4: New file.
26611
26612 2005-12-16  Jim Meyering  <jim@meyering.net>
26613
26614         * lib/fprintftime.c, lib/fprintftime.h: New files.
26615
26616 2005-12-15  Simon Josefsson  <jas@extundo.com>
26617
26618         * modules/socklen (configure.ac): Fix M4 macro name, to align with
26619         new m4/socklen.m4.
26620
26621 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
26622
26623         * m4/argp.m4: Define HAVE_DECL_PROGRAM_INVOCATION_NAME and
26624         HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME
26625
26626 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
26627
26628         * lib/argp-fmtstream.c (__argp_fmtstream_update): Fix coredump
26629         * lib/argp-help.c (fill_in_uparams): Check if the constructed
26630         struct uparams is valid. Fall back to the default values if it is
26631         not.
26632
26633 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
26634
26635         * modules/argp (Files): Add argp-pin.c
26636         (Depends-on): dirname
26637         (lib_SOURCES): Add argp-pin.c
26638
26639 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
26640
26641         * m4/argp.m4:  Check if program_invocation_name and
26642         program_invocation_short_name are declared and define appropriate
26643         macros if they are not.
26644
26645 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
26646
26647         * lib/argp-help.c (__argp_base_name): New function
26648         (__argp_short_program_name): Rewrite using __argp_base_name
26649         * lib/argp-namefrob.h: Define program_invocation_name and
26650         program_invocation_short_name if requested
26651         (__argp_base_name): Add prototype
26652         * lib/argp-parse.c (argp_def): Use gettext wrappers
26653         (argp_default_parser): Use __argp_base_name
26654         * lib/argp-pin.c: New file. Defines program_invocation_name and
26655         program_invocation_short_name on systems that lack them.
26656
26657 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
26658
26659         * m4/stat-time.m4 (gl_STAT_TIME): Add check for
26660         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
26661         porting problem reported by Georg Schwarz in
26662         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
26663
26664 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
26665
26666         * lib/stat-time.h (STATE_TIMESPEC, STAT_TIMESPEC_NS): Add check for
26667         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
26668         porting problem reported by Georg Schwarz in
26669         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
26670
26671 2005-12-05  Bruno Haible  <bruno@clisp.org>
26672
26673         * lib/csharpcomp.sh.in (options_csc): For -l option, add a .dll suffix.
26674         * lib/csharpcomp.c (compile_csharp_using_sscli): Likewise.
26675         Reported by Mark Junker <mjscod@gmx.de>.
26676
26677 2005-12-02  Paul Eggert  <eggert@cs.ucla.edu>
26678
26679         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Renamed from gl_SOCKLEN_T.
26680         Use implementation from Albert Chin, with some
26681         comments/corrections by Stepan Kasal and myself.
26682
26683 2005-12-02  Bruno Haible  <bruno@clisp.org>
26684
26685         * gnulib-tool (func_import): Accept GPLed build tool modules when
26686         --lgpl is given.
26687         * modules/csharpcomp-script: New file.
26688         * modules/csharpcomp: Depend on it.
26689         * modules/javacomp-script: New file.
26690         * modules/javacomp: Depend on it.
26691         Suggested by Simon Josefsson.
26692
26693 2005-12-01  Paul Eggert  <eggert@cs.ucla.edu>
26694
26695         * m4/regex.m4 (gl_REGEX): Check whether off_t can be used in a switch
26696         statement, to work around an HP-UX 10.20 compiler bug reported by
26697         Peter O'Gorman.
26698
26699 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
26700
26701         * modules/savedir (Depends-on): Add openat.
26702
26703 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
26704
26705         * lib/stdint_.h (intmax_t) [defined intmax_t]: Do not declare.
26706         (uintmax_t) [defined uintmax_t]: Do not declare.
26707         (SIZE_MAX) [defined SIZE_MAX]: Do not define.
26708         This works around a problem if intmax_t.m4 and/or uintmax_t.m4
26709         and/or size_max.m4 are also used.  Problem reported by Mark D. Baushke.
26710         (SIZE_MAX): Define to ((size_t) -1), not (~(size_t)0), for the
26711         sake of portability to weird hosts that C allows (though we don't
26712         know of any practical examples).
26713
26714         * lib/savedir.h (fdsavedir): New decl.
26715         * lib/savedir.c (fdsavedir, savedirstream): New functions; the latter
26716         contains most of the former guts of savedir.
26717         (savedir): Use savedirstream.
26718         Include "openat.h".
26719
26720 2005-11-25  Paul Eggert  <eggert@cs.ucla.edu>
26721
26722         * modules/obstack (Files): Add m4/ulonglong.m4.
26723         Problem reported by Davide Angelocola.
26724
26725 2005-11-15  Paul Eggert  <eggert@cs.ucla.edu>
26726
26727         * lib/xstrtod.c: Don't bother with #pragma STDC FENV_ACCESS ON, as
26728         coreutils no longer futzes with rounding modes.
26729
26730 2005-11-14  Jim Meyering  <jim@meyering.net>
26731
26732         * lib/mkstemp-safer.c: Include <config.h>, required for possible
26733         replacement of mkstemp.
26734
26735 2005-11-10  Simon Josefsson  <jas@extundo.com>
26736
26737         * lib/readline.c: Remove EOL.
26738
26739 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
26740
26741         * modules/gethrxtime (Depends-on): Add gettime.
26742
26743 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
26744
26745         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Don't require AC_HEADER_TIME
26746         or gettimeofday; no longer needed.
26747
26748 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
26749
26750         * lib/gethrxtime.c: Include "timespec.h" rather than the sys/time /
26751         time business.
26752         (gethrxtime) [! (HAVE_NANOUPTIME
26753         || (defined CLOCK_MONOTONIC && HAVE_CLOCK_GETTIME)
26754         || HAVE_MICROUPTIME)]: Fall back on gettime rather than rolling
26755         our own approximation.
26756
26757 2005-11-08  Eric Blake  <ebb9@byu.net>
26758
26759         * lib/inet_ntop.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
26760
26761 2005-11-08  Eric Blake  <ebb9@byu.net>
26762
26763         * lib/getaddrinfo.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
26764
26765 2005-11-04  Bruno Haible  <bruno@clisp.org>
26766
26767         * gnulib-tool: Implement --update mode.
26768
26769 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
26770
26771         Fix porting problem reported by Theodoros V. Kalamatianos.
26772         * lib/utimens.c (futimens) [HAVE_WORKING_UTIMES && HAVE_FUTIMES]:
26773         Don't assume that futimes failing means we must fail.
26774
26775 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
26776
26777         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Revamp wording and local
26778         variables to suggest the intended function of the PATH_MAX check.
26779
26780 2005-10-30  Kean Johnston  <jkj@sco.com>
26781
26782         Trivial changes to support SCO systems.
26783         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Check for MAXPATHLEN as well
26784         as PATH_MAX.
26785         * m4/fpending.m4 (gl_FUNC_FPENDING): Correct check for SCO systems,
26786         where __ptr is null when no I/O is pending.
26787
26788 2005-10-29  Paul Eggert  <eggert@cs.ucla.edu>
26789
26790         * lib/getcwd.c (__getcwd): Don't assume that system calls after readdir
26791         leave errno alone.  Problem reported by Dmitry V. Levin.
26792
26793 2005-10-28  Simon Josefsson  <jas@extundo.com>
26794
26795         * tests/test-gc-md4.c, tests/test-gc-md5.c, tests/test-gc-sha1.c:
26796         Test more.
26797
26798         * tests/test-gc-md2.c, tests/test-md2.c: New files.
26799
26800         * modules/md2, modules/md2-tests: New files.
26801
26802 2005-10-28  Simon Josefsson  <jas@extundo.com>
26803
26804         * m4/inet_ntop.m4: More tests.
26805
26806         * m4/gc-md2.m4, md2.m4: New file.
26807
26808 2005-10-28  Simon Josefsson  <jas@extundo.com>
26809
26810         * lib/inet_ntop.h, inet_ntop.c: Make it work under mingw32: Add
26811         "restrict" keywords, as per POSIX.  Protect the function
26812         declaration around HAVE_DECL_INET_NTOP rather than HAVE_INET_NTOP.
26813         Don't use K&R prototypes.  Check the sprintf return values.
26814         Re-define EAFNOSUPPORT if not present.  Indent.
26815
26816         * lib/md5.h, md5.c: Simplify buffer handling visavi alignment,
26817         suggested by Bruno Haible <bruno@clisp.org>.
26818
26819         * lib/gc-gnulib.c, gc-libgcrypt.c: Check calloc return value.
26820
26821         * lib/gc.h: Add MD2 and RMD160 length defines.  Add prototypes.
26822
26823         * lib/gc-libgcrypt.c: Add MD2 (which is not available through
26824         libgcrypt).
26825
26826         * lib/gc-gnulib.c: Add MD2.  Implement gc_hash_* API.
26827
26828         * lib/md2.h, lib/md2.c: New files.
26829
26830 2005-10-28  Paul Eggert  <eggert@cs.ucla.edu>
26831
26832         * lib/savedir.c (savedir): Don't assume that xrealloc etc. leave
26833         errno alone.  Problem reported by Frederic Jolliton.
26834
26835 2005-10-27  Paul Eggert  <eggert@cs.ucla.edu>
26836
26837         * modules/verify (License): Change from GPL to LGPL.  This is a
26838         tiny module and there are apparently near-equivalents that are
26839         under the BSD license.
26840
26841 2005-10-24  Simon Josefsson  <jas@extundo.com>
26842
26843         * modules/sha1: Relicense to LGPL.
26844
26845 2005-10-24  Simon Josefsson  <jas@extundo.com>
26846
26847         * lib/md4.h: Shrink buffer size, now that we changed the type.
26848
26849 2005-10-23  Simon Josefsson  <jas@extundo.com>
26850
26851         * gnulib-tool (func_import): Fix --tests-base.
26852
26853 2005-10-22  Simon Josefsson  <jas@extundo.com>
26854
26855         * modules/arcfour (Depends-on): Need stdint.
26856
26857 2005-10-22  Simon Josefsson  <jas@extundo.com>
26858
26859         * m4/gc.m4: Don't be fooled by --disable-*random-device parameters,
26860         suggested by Bruno Haible <bruno@clisp.org>.  Fix error messages.
26861
26862 2005-10-22  Simon Josefsson  <jas@extundo.com>
26863
26864         * lib/md4.h, md4.c: Simplify buffer handling visavi alignment,
26865         suggested by Bruno Haible <bruno@clisp.org>.
26866
26867 2005-10-22  Simon Josefsson  <jas@extundo.com>
26868
26869         * lib/crc.h: Include stddef.h, for size_t.
26870
26871 2005-10-22  Simon Josefsson  <jas@extundo.com>
26872
26873         * lib/arcfour.h, arcfour.c: Use fixed size indices in the
26874         arcfour_context struct (simplify test vector testing in GNU
26875         Shishi).
26876
26877 2005-10-21  Simon Josefsson  <jas@extundo.com>
26878
26879         * modules/des, modules/des-tests: New files.
26880
26881         * modules/gc-des, modules/gc-des-tests: New files.
26882
26883         * tests/test-des.c, tests/test-gc-des.c: New file.
26884
26885 2005-10-21  Simon Josefsson  <jas@extundo.com>
26886
26887         * modules/arctwo, modules/arctwo-tests: New files.
26888
26889         * tests/test-arctwo.c: New file.
26890
26891         * modules/gc-arctwo, modules/gc-arctwo-tests: New files.
26892
26893         * tests/test-gc-arctwo.c: New file.
26894
26895 2005-10-21  Simon Josefsson  <jas@extundo.com>
26896
26897         * m4/gc.m4: Don't use libgcrypt if gcrypt.h isn't found, suggested by
26898         Bruno Haible <bruno@clisp.org>.
26899
26900         * m4/gc-des.m4: New file.
26901
26902 2005-10-21  Simon Josefsson  <jas@extundo.com>
26903
26904         * m4/arctwo.m4: New file.
26905
26906         * m4/gc-arctwo.m4: New file.
26907
26908 2005-10-21  Simon Josefsson  <jas@extundo.com>
26909
26910         * lib/rijndael-api-fst.c: Fix bugs in CBC mode for more than one
26911         block.
26912
26913 2005-10-21  Simon Josefsson  <jas@extundo.com>
26914
26915         * lib/hmac-md5.c (hmac_md5): Add comments, suggested by Bruno Haible
26916         <bruno@clisp.org>.
26917
26918         * lib/hmac-sha1.c (hmac_sha1): Likewise.
26919
26920         * lib/crc.c (crc32_update): Actually use crc parameter, suggested by
26921         Bruno Haible <bruno@clisp.org>.
26922
26923         * lib/crc.h: Include stdint.h directly, suggested by Bruno Haible
26924         <bruno@clisp.org>.
26925
26926 2005-10-21  Simon Josefsson  <jas@extundo.com>
26927
26928         * lib/gc-libgcrypt.c (gc_cipher_open): Handle ECB.
26929
26930 2005-10-21  Simon Josefsson  <jas@extundo.com>
26931
26932         * lib/gc-gnulib.c: Support ARCTWO in CBC mode.
26933
26934 2005-10-21  Simon Josefsson  <jas@extundo.com>
26935
26936         * lib/des.h, lib/des.c: New files.
26937
26938         * lib/gc-gnulib.c: Support DES.c
26939
26940 2005-10-21  Simon Josefsson  <jas@extundo.com>
26941
26942         * lib/arctwo.h, lib/arctwo.c: New files.
26943
26944         * lib/gc-gnulib.c: Support ARCTWO.
26945
26946 2005-10-21  Simon Josefsson  <jas@extundo.com>
26947
26948         * lib/arctwo.h (arctwo_setkey): Protect variable in CPP macro,
26949         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
26950
26951 2005-10-21  Simon Josefsson  <jas@extundo.com>
26952
26953         * gnulib-tool (func_import, func_create_testdir): Define automake
26954         conditional GL_COND_LIBTOOL if libtool is used (to be used by modules
26955         Makefile.am snippet),
26956         suggested by Bruno Haible <bruno@clisp.org>.
26957
26958         * modules/gc (Makefile.am): Use it.
26959
26960 2005-10-21  Bruno Haible  <bruno@clisp.org>
26961
26962         * gnulib-tool (func_import, func_create_testdir): Add quoting to last
26963         patch.
26964
26965 2005-10-19  Simon Josefsson  <jas@extundo.com>
26966
26967         * tests/test-gc-rijndael.c: New file.
26968
26969         * modules/gc-rijndael, modules/gc-rijndael-test: New files.
26970
26971 2005-10-19  Simon Josefsson  <jas@extundo.com>
26972
26973         * tests/test-gc-md4.c, tests/test-gc-md5.c: Test gc_hash_buffer
26974         interface too.
26975
26976 2005-10-19  Simon Josefsson  <jas@extundo.com>
26977
26978         * tests/test-gc-arcfour.c: New file.
26979
26980         * modules/gc-arcfour, modules/gc-arcfour-tests: New files.
26981
26982 2005-10-19  Simon Josefsson  <jas@extundo.com>
26983
26984         * modules/gc-md4, modules/gc-md4-tests: New file.
26985
26986         * tests/test-gc-md4.c: New file.
26987
26988 2005-10-19  Simon Josefsson  <jas@extundo.com>
26989
26990         * m4/gc-md4.m4: New file.
26991
26992 2005-10-19  Simon Josefsson  <jas@extundo.com>
26993
26994         * m4/gc-hmac-md5.m4, gc-hmac-sha1.m4, gc-md4.m4,
26995         gc-md5.m4, gc-sha1.m4: Fix typo, suggested by Stepan Kasal
26996         <kasal@ucw.cz>.
26997
26998 2005-10-19  Simon Josefsson  <jas@extundo.com>
26999
27000         * m4/gc-arcfour.m4: New file.
27001
27002         * m4/gc-rijndael.m4: New file.
27003
27004 2005-10-19  Simon Josefsson  <jas@extundo.com>
27005
27006         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support MD4.
27007
27008 2005-10-19  Simon Josefsson  <jas@extundo.com>
27009
27010         * lib/gc-gnulib.c: Support ARCFOUR.
27011
27012 2005-10-19  Simon Josefsson  <jas@extundo.com>
27013
27014         * lib/gc-gnulib.c: Implement gc_cipher_* API, currently only with AES
27015         support.
27016
27017         * lib/gc.h: Add ECB enum type.
27018
27019         * lib/hmac-md5.c, hmac-sha1.c: Include memxor.h.
27020
27021 2005-10-18  Simon Josefsson  <jas@extundo.com>
27022
27023         * tests/test-md5.c: New file.
27024
27025         * modules/md5-tests: New file.
27026
27027 2005-10-18  Simon Josefsson  <jas@extundo.com>
27028
27029         * tests/test-md4.c: New file.
27030
27031         * modules/md4, modules/md4-tests: New files.
27032
27033 2005-10-18  Simon Josefsson  <jas@extundo.com>
27034
27035         * m4/md4.m4: New file.
27036
27037 2005-10-18  Simon Josefsson  <jas@extundo.com>
27038
27039         * lib/md4.h, lib/md4.c: New files, based on md5.?.
27040
27041 2005-10-17  Stepan Kasal  <kasal@ucw.cz>
27042
27043         * gnulib-tool (func_create_testdir): Omit the second check whether
27044         BUILT_SOURCES in nonempty.
27045
27046 2005-10-17  Simon Josefsson  <jas@extundo.com>
27047
27048         * tests/test-rijndael.c: New file.
27049
27050 2005-10-17  Simon Josefsson  <jas@extundo.com>
27051
27052         * modules/sha1: Depend on stdint instead of md5.
27053
27054         * modules/md5: Depend on stdint, remove uint32_t.
27055
27056 2005-10-17  Simon Josefsson  <jas@extundo.com>
27057
27058         * modules/gc-sha1-tests: New file.
27059
27060         * tests/test-gc-sha1.c: New file.
27061
27062 2005-10-17  Simon Josefsson  <jas@extundo.com>
27063
27064         * m4/md5.m4: Remove call to uint32_t.m4.
27065
27066 2005-10-17  Simon Josefsson  <jas@extundo.com>
27067
27068         * lib/sha1.c: Use uint32_t instead of md5_uint32.t
27069
27070         * lib/sha1.h: Use stdint.h and uint32_t instead of md5_uint32 from
27071         md5.h.
27072
27073         * lib/md5.c: Use uin32_t.  Fix non-gcc UNALIGNED_P macro.
27074
27075         * lib/md5.h: Use stdint.h and uint32_t.  Doc fix.
27076
27077 2005-10-17  Simon Josefsson  <jas@extundo.com>
27078
27079         * lib/gc.h, gc-libgcrypt.c: Add more hash types/functions.
27080
27081 2005-10-17  Simon Josefsson  <jas@extundo.com>
27082
27083         * lib/gc.h, gc-libgcrypt.c: Add ciphers.
27084
27085 2005-10-17  Simon Josefsson  <jas@extundo.com>
27086
27087         * lib/gc-libgcrypt.c (gc_hmac_sha1): Fix assert.
27088
27089         * lib/gc.h (gc_nonce, gc_pseudo_random, gc_random): Add prototypes.
27090
27091 2005-10-17  Bruno Haible  <bruno@clisp.org>
27092
27093         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Change the return statement so
27094         that it can also be used in a test.
27095
27096 2005-10-16  Bruno Haible  <bruno@clisp.org>
27097
27098         * gnulib-tool (func_emit_tests_Makefile_am): Also define
27099         TESTS_ENVIRONMENT, so that individual tests can augment it.
27100
27101         * gnulib-tool (func_create_testdir): Use an intermediate target for
27102         building $(BUILT_SOURCES). Needed because BUILT_SOURCES can contain
27103         macros, like $(ALLOCA_H), which cannot be passed through the command
27104         line.
27105
27106 2005-10-15  Simon Josefsson  <jas@extundo.com>
27107
27108         * modules/rijndael-tests: New file.
27109
27110         * modules/rijndael: New file.
27111
27112 2005-10-15  Simon Josefsson  <jas@extundo.com>
27113
27114         * m4/rijndael.m4: New file.
27115
27116 2005-10-15  Simon Josefsson  <jas@extundo.com>
27117
27118         * lib/rijndael-api-fst.h, lib/rijndael-api-fst.c: New files.
27119
27120         * lib/rijndael-alg-fst.h, lib/rijndael-alg-fst.c: New files.
27121
27122 2005-10-14  Simon Josefsson  <jas@extundo.com>
27123
27124         * tests/test-arcfour.c: New file.
27125
27126         * modules/arcfour, modules/arcfour-tests: New files.
27127
27128 2005-10-14  Simon Josefsson  <jas@extundo.com>
27129
27130         * m4/arcfour.m4: New file.
27131
27132 2005-10-14  Simon Josefsson  <jas@extundo.com>
27133
27134         * lib/arcfour.h, lib/arcfour.c: New files.
27135
27136 2005-10-14  Roland McGrath  <roland@redhat.com>
27137
27138         Import from libc.  [BZ #1331]
27139         * lib/obstack.h [!__STDC__] (obstack_int_grow_fast): Fix misnamed
27140         macro argument.
27141         Reported by Matej Vela <vela@debian.org>.
27142
27143 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
27144
27145         * lib/obstack.c [defined _LIBC && defined USE_IN_LIBIO]: Don't
27146         include <wchar.h>; no longer needed.
27147
27148 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
27149
27150         * config/srclist.txt: Add glibc bug 321 for obstack.c, obstack.h.
27151
27152 2005-10-14  Jakub Jelinek  <jakub@redhat.com>
27153         and  Ulrich Drepper  <drepper@redhat.com>
27154
27155         Import from libc.
27156         * lib/obstack.c (print_and_abort) [defined _LIBC]: Use __fxprintf
27157         instead of inline stream orientation test and two separate
27158         function calls.  Pay no attention to USE_IN_LIBIO.
27159
27160 2005-10-13  Simon Josefsson  <jas@extundo.com>
27161
27162         * modules/gc-hmac-md5-tests: New file.
27163
27164         * tests/test-gc-hmac-sha1.c: New file.
27165
27166         * tests/test-gc.c (main): Remove MD5 and HMAC-MD5 tests.
27167
27168         * modules/gc-hmac-md5-tests: New file.
27169
27170         * tests/test-gc-md5.c: New file.
27171
27172         * modules/gc-md5-tests: New file.
27173
27174 2005-10-13  Simon Josefsson  <jas@extundo.com>
27175
27176         * lib/gc-pbkdf2-sha1.c (gc_pbkdf2_sha1): Optimize CEIL computation.
27177         Move memory allocation outside of loop.
27178
27179 2005-10-13  Paul Eggert  <eggert@cs.ucla.edu>
27180
27181         * lib/mkdir-p.c (make_dir_parents): Don't report an error if an
27182         intermediate directory is in a read-only file system.  Problem
27183         reported by Eric Blake.
27184
27185 2005-10-13  Oskar Liljeblad  <oskar@osk.mine.nu>
27186
27187         * modules/human (Depends-on): Depend on xstrtoumax, not xstrtol.
27188
27189 2005-10-12  Simon Josefsson  <jas@extundo.com>
27190
27191         * tests/test-hmac-sha1.c: New file.
27192
27193         * modules/hmac-sha1-tests: New file.
27194
27195         * modules/hmac-sha1: New file.
27196
27197 2005-10-12  Simon Josefsson  <jas@extundo.com>
27198
27199         * modules/gc-sha1: New file.
27200
27201 2005-10-12  Simon Josefsson  <jas@extundo.com>
27202
27203         * modules/gc-pbkdf2-sha1, modules/gc-pbkdf2-sha1-tests: New files.
27204
27205         * tests/test-gc-pbkdf2-sha1.c: New file.
27206
27207 2005-10-12  Simon Josefsson  <jas@extundo.com>
27208
27209         * modules/gc-md5, modules/gc-hmac-md5: New files.
27210
27211         * modules/gc (Files): Remove md5, memxor and hmac files.
27212
27213 2005-10-12  Simon Josefsson  <jas@extundo.com>
27214
27215         * m4/gc-pbkdf2-sha1.m4: New file.
27216
27217         * m4/gc-hmac-sha1.m4: New file.
27218
27219         * m4/gc-sha1: New file.
27220
27221         * m4/hmac-sha1.m4: New file.
27222
27223 2005-10-12  Simon Josefsson  <jas@extundo.com>
27224
27225         * m4/gc-md5.m4, m4/gc-hmac-md5.m4: New files.
27226
27227         * m4/gc.m4: Don't call gl_MD5, gl_MEMXOR or gl_HMAC_MD5.
27228
27229 2005-10-12  Simon Josefsson  <jas@extundo.com>
27230
27231         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Use Gc_rc for return types,
27232         suggested by Bruno Haible <bruno@clisp.org>.
27233
27234 2005-10-12  Simon Josefsson  <jas@extundo.com>
27235
27236         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support SHA-1.
27237
27238 2005-10-12  Simon Josefsson  <jas@extundo.com>
27239
27240         * lib/gc-pbkdf2-sha1.c: New file.
27241
27242         * lib/gc.h: Add gc_pbkdf2_sha1 prototype.
27243
27244 2005-10-12  Simon Josefsson  <jas@extundo.com>
27245
27246         * lib/gc-libgcrypt.c (gc_hmac_sha1): New function.
27247
27248         * lib/gc-gnulib.c (gc_hmac_sha1): New function.
27249
27250 2005-10-12  Simon Josefsson  <jas@extundo.com>
27251
27252         * lib/gc-gnulib.c: Condition MD5 and HMAC-MD5 use on GC_USE_MD5 and
27253         GC_USE_HMAC_MD5, respectively.
27254
27255         * lib/gc-libgcrypt.c (gc_md5): Fix assert call.
27256         (gc_md5): Fix typo.
27257
27258         * lib/gc.h (gc_hash_buffer): Use gc_hash in prototype.
27259
27260         * lib/gc-libgcrypt.c (gc_hash_buffer): Ditto.
27261
27262         * lib/gc-gnulib.c (gc_hash_buffer): Ditto.
27263
27264 2005-10-12  Bruno Haible  <bruno@clisp.org>
27265
27266         * m4/stdbool.m4 (gl_STDBOOL_H): Define as an alias of AM_STDBOOL_H.
27267         Reported by Stepan Kasal <kasal@ucw.cz>.
27268
27269 2005-10-11  Simon Josefsson  <jas@extundo.com>
27270
27271         * tests/test-crc.c: New file.
27272
27273         * modules/crc, modules/crc-tests: New files.
27274
27275 2005-10-11  Simon Josefsson  <jas@extundo.com>
27276
27277         * m4/crc.m4: New file.
27278
27279 2005-10-11  Simon Josefsson  <jas@extundo.com>
27280
27281         * lib/gc.h: Add gc_hash and gc_hash_buffer.
27282
27283         * lib/gc-gnulib.c (gc_hash_buffer): Add.  Reorder #include's.
27284
27285         * lib/gc-libgcrypt.c (gc_hash_buffer): Add.
27286
27287 2005-10-11  Simon Josefsson  <jas@extundo.com>
27288
27289         * lib/crc.h, lib/crc.c: New files.
27290
27291         * lib/gc.h (gc_hash_buffer): Add doc.
27292
27293 2005-10-11  Bruno Haible  <bruno@clisp.org>
27294
27295         * modules/c-strcasestr: New file.
27296         * MODULES.html.sh (String handling <string.h>): Add c-strcasestr.
27297
27298 2005-10-11  Bruno Haible  <bruno@clisp.org>
27299
27300         * modules/c-strcase: New file.
27301         * MODULES.html.sh (String handling <string.h>): Add c-strcase.
27302
27303 2005-10-11  Bruno Haible  <bruno@clisp.org>
27304
27305         * lib/strcasecmp.c: Include limits.h.
27306         (strcasecmp): Avoid integer overflow on exotic platforms.
27307         * lib/strncasecmp.c: Include limits.h.
27308         (strncasecmp): Avoid integer overflow on exotic platforms.
27309         Reported by Paul Eggert.
27310
27311 2005-10-11  Bruno Haible  <bruno@clisp.org>
27312
27313         * lib/c-strcasestr.h: New file, from GNU gettext.
27314         * lib/c-strcasestr.c: New file, from GNU gettext.
27315
27316 2005-10-11  Bruno Haible  <bruno@clisp.org>
27317
27318         * lib/c-strcase.h: New file, from GNU gettext.
27319         * lib/c-strcasecmp.c: New file, from GNU gettext.
27320         * lib/c-strncasecmp.c: New file, from GNU gettext.
27321
27322 2005-10-10  Paul Eggert  <eggert@cs.ucla.edu>
27323
27324         * modules/mempcpy (License): GPL -> LGPL.
27325         * modules/strchrnul (License): Likewise.
27326         * modules/sysexits (License): Likewise.
27327
27328 2005-10-08  Simon Josefsson  <jas@extundo.com>
27329
27330         * config/srclist.txt: Bug 1423 is closed, but 1439 remains.
27331
27332 2005-10-07  Simon Josefsson  <jas@extundo.com>
27333
27334         * m4/memxor.m4: Remove gl_C_RESTRICT call.
27335
27336 2005-10-06  Simon Josefsson  <jas@extundo.com>
27337
27338         * tests/test-hmac-md5.c: New file.
27339
27340         * modules/hmac-md5-tests: New file.
27341
27342         * modules/hmac-md5: New file.
27343
27344 2005-10-06  Simon Josefsson  <jas@extundo.com>
27345
27346         * m4/hmac-md5.m4: New file.
27347
27348         * m4/memxor.m4: Require gl_C_RESTRICT.
27349
27350 2005-10-06  Simon Josefsson  <jas@extundo.com>
27351
27352         * lib/memxor.c (memxor): Avoid casts and warnings.
27353
27354 2005-10-06  Simon Josefsson  <jas@extundo.com>
27355
27356         * lib/hmac-md5.c: New file.
27357
27358         * lib/hmac.h: New file.
27359
27360 2005-10-06  Paul Eggert  <eggert@cs.ucla.edu>
27361
27362         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check that bool
27363         promotes to int, not unsigned int, to catch the AIX 5.3
27364         compiler bug.
27365
27366 2005-10-05  Simon Josefsson  <jas@extundo.com>
27367
27368         * modules/memxor: New file.
27369
27370         * modules/iconv (Files): Move config.rpath to havelib, it is used
27371         there.
27372
27373         * modules/havelib (Files): Add config.rpath.
27374
27375 2005-10-05  Simon Josefsson  <jas@extundo.com>
27376
27377         * m4/memxor.m4: New file.
27378
27379 2005-10-05  Simon Josefsson  <jas@extundo.com>
27380
27381         * lib/memxor.c (memxor): Fix compiler error.
27382
27383         * lib/md5.h (MD5_DIGEST_SIZE, MD5_BLOCK_SIZE): Add, see also
27384         <http://sourceware.org/bugzilla/show_bug.cgi?id=1423>.
27385
27386         * lib/memxor.h, lib/memxor.c: New files.
27387
27388         * lib/getaddrinfo.h: Don't protect sys/types.h with HAVE_SYS_TYPES_H,
27389         we assume all systems have it, suggested by Jim Meyering
27390         <jim@meyering.net>.  Remove HAVE_SYS_SOCKET_H test too, to see if
27391         any systems lack sys/socket.h; mingw32 is known to lack it, but we
27392         don't support it yet anyway.  Also remove HAVE_NETDB_H test, for
27393         same reasons.
27394
27395 2005-10-05  Simon Josefsson  <jas@extundo.com>
27396
27397         * config/srclist.txt: Add glibc bug 1423 for md5.h.
27398
27399 2005-10-05  Paul Eggert  <eggert@cs.ucla.edu>
27400
27401         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Don't check for
27402         sys/socket.h, netdb.h, sys/types.h; the checks areno longer
27403         needed, since the source code now assumes these .h files.
27404
27405 2005-10-05  Derek Price  <derek@ximbiot.com>
27406
27407         * lib/getdelim.c (SIZE_MAX): New macro, if not already defined.
27408
27409 2005-10-05  Bruno Haible  <bruno@clisp.org>
27410
27411         * modules/stdint (License): Change to LGPL.
27412
27413 2005-10-04  Simon Josefsson  <jas@extundo.com>
27414
27415         * lib/getaddrinfo.h: Move sys/types.h include first, reported by "Mark
27416         D. Baushke" <mdb@gnu.org>.
27417
27418 2005-10-04  Bruno Haible  <bruno@clisp.org>
27419
27420         * lib/verify.h (verify_true): Provide alternative definition for C++.
27421
27422 2005-10-03  Paul Eggert  <eggert@cs.ucla.edu>
27423
27424         * lib/getdelim.c: Include getdelim.h first.  Include <limits.h>.
27425         (SSIZE_MAX): New macro, if not already defined.
27426         (getdelim): Fix buffer overrun on 64-bit hosts with lines longer
27427         than 2 GiB.
27428
27429 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
27430
27431         Sync from coreutils.
27432         * m4/openat.m4 (gl_FUNC_OPENAT): Check for fdopendir.
27433         * m4/ullong_max.m4 (gl_ULLONG_MAX): Simplify so that it merely
27434         defines ULONG_MAX_LT_ULLONG_MAX.  Thomas M.Ott reports that
27435         ULLONG_MAX doesn't work with 2.7.2.1.
27436
27437 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
27438
27439         * modules/xreadlink (Makefile.am): Remove lib_SOURCES.
27440         From Ben Pfaff.
27441
27442         * modules/exclude (Depends-on): Depend on verify.
27443         * modules/strtoimax (Depends-on): Likewise.
27444         * modules/utimecmp (Depends-on): Likewise.
27445
27446 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
27447
27448         * lib/exclude.c: Include verify.h.
27449         (verify): Remove.  All callers changed to use verify.h's version.
27450         * lib/strtoimax.c: Likewise.
27451         * lib/utimecmp.c: Likewis.e
27452
27453         Sync from coreutils.
27454         * lib/.cppi-disable: Add getaddrinfo.h, getdelim.h, getline.h,
27455         getpass.c, mbchar.h, mbuiter.h, strcase.h, strnlen.h, strnlen1.h.
27456         * lib/.cvsignore: Add fts.h, search.h, t-fpending.
27457         * lib/settime.c (settime): Fix { typo in previous patch.  Also, don't
27458         bother returning ENOSYS if settimeofday or stime fails; just let
27459         them return whatever errno they want to return.
27460         * lib/utimens.c: Include unistd.h, for dup2.
27461         (futimens): Fix typo: HAVE_FUTIMESAT was misspelled in an #if.
27462         (futimens) [! HAVE_FUTIMESAT]: If !file, set errno before returning -1.
27463
27464 2005-10-02  Jim Meyering  <jim@meyering.net>
27465
27466         Sync from coreutils.
27467         * m4/utimes.m4 (gl_FUNC_UTIMES): Detect the version of utimes
27468         from glibc-2.2.5 that fails for read-only files.
27469
27470 2005-10-02  Jim Meyering  <jim@meyering.net>
27471
27472         Sync from coreutils.
27473         * lib/fts-cycle.c [HAVE_CONFIG_H]: Include <config.h>.
27474         * lib/openat-die.c: Use `#ifdef HAVE_CONFIG_H', not
27475         `#if HAVE_CONFIG_H'.
27476         * lib/openat.c (fdopendir): Do not define if HAVE_FDOPENDIR.
27477         Remove AT_FDCWD test.
27478         Do not consume the fd unless successful.
27479         * lib/openat.h (fdopendir): Do not define if HAVE_FDOPENDIR.
27480         * lib/settime.c (settime): Move the HAVE_STIME block `up' into an #elif
27481         block, so that we don't even try to compile it if settimeofday is
27482         available.  This works around a compilation failure on OSF1 V5.1,
27483         due to stime requiring a `long int*' while tv_sec is `int'.
27484
27485 2005-10-02  Alfred M. Szmidt  <ams@gnu.org>
27486
27487         Sync from coreutils.
27488         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Compare $gl_have_path...
27489         against `yes', rather than just testing for nonempty.
27490
27491 2005-10-01  Simon Josefsson  <jas@extundo.com>
27492
27493         * m4/getaddrinfo.m4: Include sys/types.h for sys/socket.h, on FreeBSD
27494         and Darwin.
27495
27496         * m4/getaddrinfo.m4: Use AC_GNU_SOURCE, GNU only declare getaddrinfo
27497         as an (POSIX) extension.  Check for sys/types.h, sys/socket.h, and
27498         netdb.h too, needed by getaddrinfo.h.  Check if getaddrinfo,
27499         freeaddrinfo and gai_strerror are declared by the POSIX headers.
27500         Check if struct addrinfo is declared.
27501
27502 2005-10-01  Simon Josefsson  <jas@extundo.com>
27503
27504         * lib/getaddrinfo.h: Protect #include's of sys/socket.h and netdb.h.
27505         Only define struct addrinfo if !HAVE_STRUCT_ADDRINFO.  Protect
27506         AI_* and EAI_* definitions.  Protect function declarations.
27507
27508 2005-10-01  Jim Meyering  <jim@meyering.net>
27509
27510         Sync from coreutils.
27511
27512         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Look for getservbyname in these
27513         libraries [inet nsl socket xnet].  Nelson Beebe reported that with
27514         native cc on Solaris 7, getaddrinfo.c requires -lsocket.
27515         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
27516         in the inet and nsl libraries.  Required on Solaris 5.7.
27517
27518 2005-10-01  Jim Meyering  <jim@meyering.net>
27519
27520         Sync from coreutils.
27521         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
27522         in the inet and nsl libraries.  Required on Solaris 5.7.
27523
27524 2005-10-01  Eric Blake  <ebb9@byu.net>  (tiny change)
27525
27526         * lib/getdelim.c (getdelim): Remove unused variables.
27527
27528 2005-09-29  Paul Eggert  <eggert@cs.ucla.edu>
27529
27530         * lib/xtime.h (XTIME_PRECISION): Now of type int, not long long int,
27531         so that the code works even with ancient cpp.  Portability problem
27532         with GCC 2.7.2.1 reported by Thomas M.Ott.
27533
27534 2005-09-27  Paul Eggert  <eggert@cs.ucla.edu>
27535
27536         * modules/regex (Depends-on): Add strcase.
27537
27538         * modules/gethostname (Licence): Change from GPL to LGPL, since
27539         gethostname.c is a trivial implementation of a standard library
27540         function.
27541         * modules/poll (License): Change from GPL to LGPL, since it's
27542         derived from LGPL code.
27543
27544 2005-09-27  Jim Meyering  <jim@meyering.net>
27545
27546         * lib/getcwd.c: Change #ifdef<TAB>HAVE_CONFIG_H to #ifdef
27547         HAVE_CONFIG_H.
27548
27549         * lib/intprops.h (signed_type_or_expr__): Define.
27550         (INT_STRLEN_BOUND) [__GNUC__]: Use a slightly tighter bound
27551         for unsigned types.
27552
27553 2005-09-26  Paul Eggert  <eggert@cs.ucla.edu>
27554
27555         * lib/verify.h (verify_expr): Remove, replacing with:
27556         (verify_true): New macro that returns true instead of void.
27557         (verify_type__): Remove.
27558         (verify): Use verify_true rather than verify_type__.
27559
27560 2005-09-26  Bruno Haible  <bruno@clisp.org>
27561
27562         * modules/mbchar (Include): Mention that HAVE_WCHAR_H && HAVE_WCTYPE_H
27563         is necessary.
27564         (lib_SOURCES): Remove mbchar.c.
27565         * modules/mbfile (Include): Mention that HAVE_MBRTOWC is necessary.
27566         (Files): Add m4/mbrtowc.m4.
27567         * modules/mbiter: Likewise.
27568         * modules/mbuiter: Likewise.
27569
27570 2005-09-26  Bruno Haible  <bruno@clisp.org>
27571
27572         * m4/mbchar.m4 (gl_MBCHAR): Check for wchar.h and wctype.h. Don't
27573         compile mbchar.c if they are not both present.
27574         * m4/mbfile.m4 (gl_MBFILE): Require gl_FUNC_MBRTOWC.
27575         * m4/mbiter.m4 (gl_MBITER): Likewise.
27576         * m4/strstr.m4 (gl_PREREQ_STRSTR): Use AC_REQUIRE.
27577         * m4/strcasestr.m4 (gl_PREREQ_STRCASESTR): Likewise.
27578         * m4/strcase.m4 (gl_PREREQ_STRCASECMP): Likewise.
27579
27580 2005-09-25  Jim Meyering  <jim@meyering.net>
27581
27582         * modules/inet_ntop (Depends-on): Add socklen, since inet_ntop.c
27583         also uses socklen_t.
27584
27585 2005-09-24  Paul Eggert  <eggert@cs.ucla.edu>
27586
27587         * lib/utimens.c (ENOSYS): Define if not already defined.
27588         (futimens): Support having a null PATH if the file descriptor
27589         is nonnegative.
27590
27591         * lib/regex_internal.h (__GNUC_PREREQ, always_inline, inline, pure):
27592         Remove.
27593         (__attribute): Define to empty unless GCC 3.1 or later.
27594         This works around a core dump on OpenBSD 3.4, which has GCC
27595         2.95.3, which dumps core when given __attribute__(()).  It also
27596         simplifies other tests, since we really don't want to bother with
27597         worrying about which ancient version of GCC supported what.
27598         Original problem reported by Yoann Vandoorselaere, with part of
27599         the fix suggested by Derek Price.
27600
27601 2005-09-24  Jim Meyering  <jim@meyering.net>
27602
27603         * lib/verify.h (verify_type__): Use `unsigned int' as the bitfield type
27604         so we can once again use a positive bitfield width of 1 -- now we
27605         don't have to explain why we were using a bitfield width of 2.
27606
27607 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
27608
27609         * m4/regex.m4 (gl_REGEX): If replacing, define regcomp to rpl_regcomp,
27610         and similarly for the other external symbols.  Problem reported
27611         by James Gallager.
27612
27613         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Catch Sun Studio 10u1 on Linux
27614         bug reported by Jim Meyering.
27615
27616         * m4/utimens.m4 (gl_UTIMENS): Check for futimesat.
27617         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Undo previous change;
27618         not needed, since socklen is a prerequisite module.
27619
27620 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
27621
27622         * lib/getaddrinfo.c [HAVE_NETINET_IN_H]: Include <netinet/in.h>.
27623         Problem reported by Eric Blake.
27624         (getaddrinfo): Initialize se so that it's not garbage.
27625         Redo internal storage allocation so that it doesn't make unportable
27626         assumptions about alignment.
27627         Fix a memory leak.
27628
27629         * lib/utimens.c (futimens): Use futimesat if available.
27630         Prefer it to futimes since it doesn't have the futimes bug.
27631
27632         * lib/verify.h (GL_CONCAT0, GL_CONCAT): Remove.
27633         (verify): Don't use the __LINE__ trick, as it doesn't work in general.
27634         Instead, declare a function that returns a pointer to an array,
27635         and use verify_type__ to declare the size of the array.
27636         Problem and germ of a solution reported by Bruno Haible.
27637         (verify_type__): Use 2, not 1, for bitfield size, to avoid
27638         a warning with Irix 6.5 cc.  Problem reported by Bruno Haible.
27639
27640 2005-09-23  Jim Meyering  <jim@meyering.net>
27641
27642         Sync from coreutils.
27643         Correct build failure (socklen_t not defined) on at least
27644         mips-sgi-irix6.5 and alphaev67-dec-osf5.1.
27645         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Require gl_SOCKLEN_T.
27646
27647 2005-09-23  Jim Meyering  <jim@meyering.net>
27648
27649         * modules/getaddrinfo (Depends-on): Add socklen.
27650
27651 2005-09-23  Bruno Haible  <bruno@clisp.org>
27652
27653         * tests/test-verify.c: New file.
27654
27655 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
27656
27657         Sync from coreutils.
27658
27659         * modules/argmatch (Depends-on): Add verify.
27660         * modules/getloadavg (Depends-on): Depend on fcntl-safer, not
27661         unistd-safer.
27662         * modules/save-cwd (Depends-on): Likewise.
27663
27664         * modules/openat (Files): Add lib/openat-die.c.
27665         (Depends-on): Remove error, exitfail.
27666         Add dirname.
27667
27668         * modules/verify: New file.
27669         * MODULES.html.sh (Diagnostics <assert.h>): New section,
27670         with "verify" module.
27671
27672 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
27673
27674         Sync from coreutils.
27675
27676         * m4/backupfile.m4, calloc.m4, chown.m4, cloexec.m4, dup2.m4:
27677         * m4/fileblocks.m4, free.m4, ftruncate.m4, getcwd.m4, getpagesize.m4:
27678         * m4/getugroups.m4, group-member.m4, idcache.m4, link-follow.m4:
27679         * m4/mkstemp.m4, mktime.m4, mountlist.m4, nanosleep.m4, pathmax.m4:
27680         * m4/physmem.m4, posixver.m4, putenv.m4, safe-read.m4, same.m4:
27681         * m4/save-cwd.m4, stdio-safer.m4, unistd-safer.m4, unlinkdir.m4:
27682         * m4/userspec.m4, xgetcwd.m4, xreadlink.m4:
27683         Don't bother checking for string.h, stdlib.h, unistd.h.
27684         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't require
27685         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK; that's now the lstat
27686         module's job.
27687         * m4/jm-macros.m4 (gl_MACROS): Likewise.
27688         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_LSTAT.
27689
27690         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): New macro.
27691         (gl_GETDATE): Use it.
27692
27693         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Don't bother checking for unistd.h.
27694
27695 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
27696
27697         Sync from coreutils.
27698
27699         * lib/.cppi-disable: Add regcomp.c, regex_internal.c, regex_internal.h,
27700         stat-time.h.
27701         * lib/argmatch.h: Include verify.h
27702         (ARGMATCH_VERIFY): Use verify rather than rolling our own.
27703         (ARGMATCH_ASSERT): Remove; unused.
27704         * lib/canonicalize.c: Assume STDC_HEADERS.
27705         * lib/exclude.c: Include "strcase.h".
27706         * lib/regex_internal.h [!defined _LIBC]: Likewise.
27707         * lib/getusershell.c: Include stdio--.h rather than stdio.h
27708         and stdio-safer.h.
27709         (getusershell): Call fopen, not fopen_safer.
27710         * lib/save-cwd.c: Include fcntl--.h rather than fcntl.h.
27711         Do not include unistd-safer.h.
27712         (save_cwd): Don't call fd_safer; no longer needed
27713         now that we include fcntl--.h.
27714
27715         * lib/getdate.y (relative_time): New type.
27716         (RELATIVE_TIME_0): New constant.
27717         (parser_control): Use relative_time instead of doing it ourselves.
27718         (%union): Add new relative_time rel member.
27719         (tYEAR_UNIT, tMONTH_UNIT, tHOUR_UNIT, tMINUTE_UNIT, tSEC_UNIT):
27720         Now typeless.
27721         (relunit, relunit_snumber): Now of type rel.
27722         (zone, rel, relunit, get_date): Adjust to above changes.
27723
27724         * lib/getloadavg.c: Include fcntl--.h rather than fcntl.h.
27725         Do not include unistd-safer.h.
27726         (getloadavg): Don't call fd_safer; no longer needed
27727         now that we include fcntl--.h.
27728
27729         * lib/mkdir-p.c (ENOSYS): Define to EEXIST if not defined.
27730         (make_dir_parents): Treat ENOSYS like EEXIST.
27731
27732         Improve quality of diagnostics on restore_cwd failure.
27733         * lib/mkdir-p.h (make_dir): Remove.  All uses replaced by mkdir.
27734         (make_dir_parents): Last arg is now int * (for errno), not bool *.
27735         * lib/mkdir-p.c (make_dir, make_dir_parents): Likewise.
27736         Rewrite "mkdir -p" algorithm to avoid the need for "stat"
27737         each time through the loop.  Do not diagnose restore_cwd failure;
27738         that is the caller's job (and perhaps the caller does not care).
27739
27740         * lib/mkdir-p.c (CLEANUP_CWD, CLEANUP): Remove.
27741         (make_dir_parents): Revamp to avoid need for CLEANUP_CWD, CLEANUP.
27742         If the file already exists but is not a directory, don't bother
27743         to try to make its parents.
27744         Close potential file descriptor leak if we can't chdir("/") (!).
27745         Don't always return true if chdir($PWD) fails; return true only
27746         if the requested action was done successfully (except for the
27747         chdir($PWD)).
27748         Don't log final directory unless we actually made it.
27749         Refactor to avoid duplicate code to fix up permissions.
27750         Don't attempt to fix up parent permissions if chdir($PWD) fails.
27751
27752         * lib/strftime.c (my_strftime): Rewrite the previous change slightly,
27753         to make it a bit faster and (I hope) clearer.
27754         * lib/strftime.c (my_strftime): Add support for %:z, %::z, %:::z.
27755         Fix bug in formats like %2N.
27756
27757         * lib/verify.h: New file.
27758
27759 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
27760
27761         Sync from coreutils.
27762         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Check for netinet/in.h.
27763
27764 2005-09-22  Jim Meyering  <jim@meyering.net>
27765
27766         Sync from coreutils.
27767
27768         * m4/lstat.m4 (gl_FUNC_LSTAT):
27769         Use AC_LIBSOURCES to require lstat.c and lstat.h.
27770         Remove obsolete comment.
27771         * m4/xreadlink.m4: Use AC_LIBSOURCES and AC_LIBOBJ.
27772         * m4/xstrtod.m4: Likewise.
27773
27774         * m4/openat.m4 (gl_FUNC_OPENAT): Add openat-die.c.
27775
27776 2005-09-22  Jim Meyering  <jim@meyering.net>
27777
27778         Sync from coreutils.
27779
27780         * lib/backupfile.c: Use ARGMATCH_VERIFY, just in case.
27781
27782         * lib/posixtm.c (posixtime) [lint]: Initialize *all* of tm0, not just
27783         the .tm_year member, since otherwise gcc-4.0 would now warn about
27784         tm_zone, tm_gmtoff, tm_isdst, tm_yday, tm_wday.
27785
27786         * lib/quotearg.c (quotearg_n_options): Change code to be suboptimal, in
27787         order to avoid an unsuppressible warning from gcc on 64-bit systems.
27788
27789         * lib/getdate.y (get_date): Undo part of the 2005-04-04 change, so that
27790         the command "date -d'2005-03-27 +1 day'" succeeds once again, even
27791         when run in a time zone for which daylight savings time is in effect
27792         for the starting date.
27793
27794         * lib/mkdir-p.c (make_dir_parents): Don't let a failed chdir($PWD)
27795         stop us from restricting permissions of just-created absolute-named
27796         directories.
27797         * lib/mkdir-p.c (CLEANUP_CWD): Return *true*, not false when failing
27798         to restore initial working directory.
27799         * lib/mkdir-p.c (make_dir_parents): New parameter:
27800         different_working_dir, to tell caller if/when we change the working
27801         directory and are unable to return to the initial one.
27802         * lib/mkdir-p.h (make_dir_parents): Update prototype.
27803         * lib/mkdir-p.c (CLEANUP_CWD): Change one more `return 1' to
27804         `return false'.  This fixes a bug introduced on 2004-07-30.
27805
27806         * lib/openat.c (fdopendir): Be sure to close the supplied
27807         file descriptor before returning.  This makes our replacement
27808         implementation a little closer to Solaris's, where fdopendir
27809         ties the file descriptor to the returned DIR* pointer.
27810         * lib/openat.c (unlinkat): New function.
27811         * lib/openat.h (unlinkat): Add prototype.
27812         * lib/openat-die.c (openat_save_fail): Rename from openat_save_die.
27813         (openat_restore_fail): Rename from openat_restore_die.
27814         * lib/openat.c, openat.h: Reflect s/_die/_fail/ renaming.
27815
27816         Provide an alternative to exiting immediately upon save_cwd or
27817         restore_cwd failure.  Now, an application can arrange e.g.,
27818         to perform a longjump in that case.
27819         * lib/openat.c: Include dirname.h.
27820         Use IS_ABSOLUTE_FILE_NAME rather than testing for leading slash.
27821         (rpl_openat, fdopendir, fstatat): Call openat_save_die
27822         and openat_restore_die rather than calling error directly.
27823         Don't include "error.h" or "exitfail.h"; they're no longer needed.
27824
27825         * lib/openat-die.c (openat_save_die, openat_restore_die): New file.
27826         * lib/openat.h (openat_save_die, openat_restore_die): Declare and
27827         define.
27828
27829         * lib/strftime.c [FPRINTFTIME] (fprintftime): Provide a new interface:
27830         size_t fprintftime (FILE *fp, char const *fmt, struct tm const *tm,
27831                             int utc, int nanoseconds);
27832         Background:
27833         date should not have to allocate a megabyte of virtual memory to
27834         handle a format argument like +%1048575T.  When implemented with
27835         strftime, it must allocate such a buffer, use strftime to fill it
27836         in, print it, then free it.
27837         With fprintftime, it simply prints everything and exits.
27838         With no need for memory allocation, that's one fewer way to fail.
27839         * lib/strftime.c (my_strftime): Parse the colons of %:::z *after* the
27840         optional field width, not before, so we accept %9:z, not %:9z.
27841         (my_strftime): Be sure to use L_('x') for literals.
27842
27843         * lib/backupfile.c, lib/canon-host.c, lib/canonicalize.c, lib/chown.c:
27844         * lib/cloexec.c, lib/dup-safer.c, lib/dup2.c, lib/euidaccess.c:
27845         * lib/fd-safer.c, lib/fileblocks.c, lib/fopen-safer.c, lib/fsusage.c:
27846         * lib/ftruncate.c, lib/getcwd.c, lib/getcwd.h, lib/getloadavg.c:
27847         * lib/getopt_.h, lib/getpagesize.h, lib/getugroups.c:
27848         * lib/group-member.c, lib/human.h, lib/idcache.c, lib/mkdir-p.c:
27849         * lib/mountlist.c, lib/nanosleep.c, lib/pathmax.h, lib/physmem.c:
27850         * lib/posixver.c, lib/putenv.c, lib/raise.c, lib/safe-read.c:
27851         * lib/same.c, lib/save-cwd.c, lib/setenv.c, lib/settime.c:
27852         * lib/tempname.c, lib/unlinkdir.c, lib/unsetenv.c, lib/userspec.c:
27853         * lib/xgethostname.c, lib/xreadlink.c:
27854         Assume HAVE_UNISTD_H, i.e., include <unistd.h> unconditionally.
27855
27856         * lib/chown.c, lib/cloexec.c, lib/dup-safer.c, lib/dup2.c:
27857         * lib/fsusage.c, lib/getcwd.c, lib/getloadavg.c, lib/mountlist.c:
27858         * lib/openat.h, lib/save-cwd.c, lib/tempname.c:
27859         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
27860         and don't include <sys/file.h>).
27861
27862 2005-09-22  Eric Blake  <ebb9@byu.net>  (tiny change)
27863
27864         Sync from coreutils.
27865
27866         * lib/getloadavg.c (getloadavg) [__CYGWIN__]: Port to cygwin.
27867         [__linux__]: Allocate a big enough buffer for /proc/loadavg.
27868         [!LDAV_DONE]: Avoid unused variable warning.
27869
27870 2005-09-21  Bruno Haible  <bruno@clisp.org>
27871
27872         * lib/unicodeio.h (unicode_to_mb): New declaration.
27873
27874 2005-09-20  Derek Price  <derek@ximbiot.com>
27875
27876         * lib/getaddrinfo.c: Don't include <netdb.h> included from
27877         getaddrinfo.h.
27878
27879 2005-09-20  Bruno Haible  <bruno@clisp.org>
27880
27881         * gnulib-tool: Remove trailing slashes from the values specified for
27882         --source-base, --m4-base, --tests-base, --aux-dir.
27883         Suggested by Simon Josefsson <jas@extundo.com>.
27884
27885 2005-09-20  Bruno Haible  <bruno@clisp.org>
27886
27887         * gnulib-tool (func_all_modules, func_modules_transitive_closure,
27888         func_modules_to_filelist, func_import, func_create_testdir): Make all
27889         sorting results locale-independent, so that gnulib-cache.m4 doesn't
27890         change when gnulib-tool is invoked in a different locale.
27891
27892 2005-09-19  Simon Josefsson  <jas@extundo.com>
27893
27894         * m4/socklen.m4: Fix typo.
27895
27896 2005-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27897
27898         Use a consistent style for including <config.h>.
27899         * lib/__fpending.c, lib/acl.c, lib/argmatch.c, lib/argp-help.c,
27900         lib/argp-parse.c, lib/argp-pvh.c, lib/backupfile.c, lib/basename.c,
27901         lib/c-stack.c, lib/calloc.c, lib/check-version.c, lib/cloexec.c,
27902         lib/closeout.c, lib/copy-file.c, lib/creat-safer.c, lib/cycle-check.c,
27903         lib/dirfd.c, lib/dirname.c, lib/dup-safer.c, lib/dup2.c,
27904         lib/euidaccess.c, lib/exclude.c, lib/exitfail.c, lib/fatal-signal.c,
27905         lib/fd-safer.c, lib/file-type.c, lib/fileblocks.c, lib/filemode.c,
27906         lib/filenamecat.c, lib/findprog.c, lib/fnmatch.c, lib/fopen-safer.c,
27907         lib/free.c, lib/fsusage.c, lib/ftruncate.c, lib/full-write.c,
27908         lib/fwriteerror.c, lib/getaddrinfo.c, lib/getcwd.c, lib/getdelim.c,
27909         lib/getline.c, lib/getlogin_r.c, lib/getndelim2.c, lib/getnline.c,
27910         lib/getopt1.c, lib/getpass.c, lib/group-member.c, lib/hard-locale.c,
27911         lib/hash-pjw.c, lib/hash.c, lib/human.c, lib/idcache.c,
27912         lib/inet_ntop.c, lib/isdir.c, lib/long-options.c, lib/malloc.c,
27913         lib/memcasecmp.c, lib/memcmp.c, lib/memcoll.c, lib/memcpy.c,
27914         lib/memmove.c, lib/mkdir-p.c, lib/modechange.c, lib/mountlist.c,
27915         lib/open-safer.c, lib/physmem.c, lib/pipe-safer.c, lib/pipe.c,
27916         lib/poll.c, lib/posixver.c, lib/progname.c, lib/progreloc.c,
27917         lib/putenv.c, lib/quote.c, lib/quotearg.c, lib/readline.c,
27918         lib/readlink.c, lib/realloc.c, lib/regex.c, lib/rename.c, lib/rmdir.c,
27919         lib/rpmatch.c, lib/safe-read.c, lib/same.c, lib/save-cwd.c,
27920         lib/savedir.c, lib/sig2str.c, lib/strcspn.c, lib/strerror.c,
27921         lib/stripslash.c, lib/strncasecmp.c, lib/strndup.c, lib/strnlen.c,
27922         lib/strnlen1.c, lib/strsep.c, lib/strstr.c, lib/strtod.c,
27923         lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c,
27924         lib/time_r.c, lib/userspec.c, lib/utimecmp.c, lib/version-etc-fsf.c,
27925         lib/version-etc.c, lib/wait-process.c, lib/xalloc-die.c, lib/xgetcwd.c,
27926         lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c, lib/xreadlink.c,
27927         lib/xsetenv.c, lib/xstrndup.c, lib/xstrtoimax.c, lib/xstrtol.c,
27928         lib/xstrtoumax.c, lib/yesno.c:
27929         Standardize inclusion of config.h.
27930         * lib/__fpending.h, lib/dirfd.h, lib/getdate.h, lib/human.h,
27931         lib/inttostr.h:  Removed inclusion of config.h from header files.
27932         * lib/inttostr.c:  Adjusted in-tree users.
27933         * lib/timespec.h: Remove superfluous warning to include config.h.
27934         * lib/atexit.c, lib/chdir-long.c, lib/chown.c, lib/fchown-stub.c,
27935         lib/getgroups.c, lib/gettimeofday.c, lib/lchown.c, lib/lstat.c,
27936         lib/mkdir.c, lib/mkstemp.c, lib/nanosleep.c, lib/openat.c, lib/raise.c,
27937         lib/readtokens0.c, lib/readutmp.c, lib/unlinkdir.c: Guard inclusion of
27938         config.h with HAVE_CONFIG_H.
27939
27940 2005-09-19  Jim Meyering  <jim@meyering.net>
27941
27942         * modules/pathmax (License): Change to LGPL.
27943
27944 2005-09-19  Derek Price  <derek@ximbiot.com>
27945
27946         * config/srclist.txt: glibc's glob.h is now in lib/glob-libc.h.
27947
27948 2005-09-19  Bruno Haible  <bruno@clisp.org>
27949
27950         * gnulib-tool (import): Provide default for --tests-base.
27951
27952 2005-09-19  Bruno Haible  <bruno@clisp.org>
27953
27954         * doc/quote.texi: New file, extracted from gnulib.texi.
27955         * doc/ctime.texi: New file, extracted from gnulib.texi.
27956         * doc/inet_ntoa.texi: New file, extracted from gnulib.texi.
27957         * doc/gnulib-tool.texi: New file, extracted from gnulib.texi.
27958         * doc/gnulib.texi: Include them.
27959
27960 2005-09-18  Bruno Haible  <bruno@clisp.org>
27961
27962         Portability fix.
27963         * gnulib-tool (func_readlink): New function.
27964         (func_ln_if_changed): Use it.
27965
27966 2005-09-18  Bruno Haible  <bruno@clisp.org>
27967
27968         * gnulib-tool: Support --with-tests also with --import.
27969         (func_emit_tests_Makefile_am): Use variables $m4base and $testsbase.
27970         (func_import): Use variables $testsbase and $inctests. Emit a
27971         gl_TESTS_BASE form into gnulib-cache.m4. Create $testsbase/Makefile.am.
27972         Remind the user to add AC_CONFIG_FILES($testsdir/Makefile) and
27973         SUBDIRS += $testsdir.
27974         (func_create_testdir): Update.
27975
27976 2005-09-18  Bruno Haible  <bruno@clisp.org>
27977
27978         * gnulib-tool: Revise --dry-run implementation. Use variable $doit
27979         instead of $dry_run.
27980         (func_cp_if_changed, func_mv_if_changed): Remove functions.
27981         (func_ln_if_changed): Don't handle dry-run here.
27982         (func_import): In dry-run mode, detect more precisely which actions
27983         would be performed, and don't use "...ing" verbs.
27984
27985 2005-09-18  Bruno Haible  <bruno@clisp.org>
27986
27987         * gnulib-tool (func_tmpdir): New function, taken from GNU gettextize.
27988         (func_import): Use join on two temporary files instead of three nested
27989         loops, in order to determine which files are new or old.
27990
27991 2005-09-18  Bruno Haible  <bruno@clisp.org>
27992
27993         * gnulib-tool (func_import): Comment out code that spits out the
27994         new files with --dry-run.
27995
27996 2005-09-18  Bruno Haible  <bruno@clisp.org>
27997
27998         * doc/gnulib.texi (Invoking gnulib-tool): 50% rewritten.
27999
28000 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
28001
28002         * lib/stat-time.h: New file.
28003         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP, ATIME_CMP, CTIME_CMP):
28004         (MTIME_CMP, TIMESPEC_NS): Remove.  Now done by stat-time.h,
28005         in a different way.
28006         (timespec_cmp): New function.
28007         * lib/utimecmp.c: Include stat-time.h.
28008         (SYSCALL_RESOLUTION): Depend on whether various struct stat
28009         members exist, not on the obsolescent ST_MTIM_NSEC.
28010         (utimecmp): Use the new stat-time functions rater than TIMESPEC_NS.
28011
28012 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
28013
28014         * config/srclist.txt: Remove glibc bug 1033 and uncomment mktime.c.
28015
28016 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
28017
28018         * MODULES.html.sh (File system functions): Add stat-time.
28019         * modules/stat-time: New file.
28020         * modules/timespec (Files): Remove m4/st_mtim.m4; this
28021         is now done in a different way, by the stat-time module.
28022         * modules/utimecmp (Depends-on): Add stat-time.
28023
28024 2005-09-15  Paul Eggert  <eggert@cs.ucla.edu>
28025
28026         * m4/st_mtim.m4: Remove.  Superseded by...
28027         * m4/stat-time.m4: New file.
28028         * m4/timespec.m4 (gl_TIMESPEC): Require AC_C_INLINE.
28029         Do not invoke AC_STRUCT_ST_MTIM_NSEC; no longer needed.
28030
28031 2005-09-15  Derek Price  <derek@ximbiot.com>
28032
28033         * m4/strstr.m4 (gl_FUNC_STRSTR): Don't define strstr here.
28034
28035 2005-09-15  Derek Price  <derek@ximbiot.com>
28036
28037         * lib/regex_internal.h: Blank `pure' for GNUC < 3.
28038         * lib/regex_internal.c: Ditto, using this...
28039         (__GNUC_PREREQ): ...new macro.
28040         * lib/regcomp.c, regexec.c: Blank `always_inline' for GNUC < 3.1
28041         using...
28042         (__GNUC_PREREQ): ...this new macro.
28043
28044         * lib/strstr.h: Include string.h. Define strstr as a macro here.
28045
28046 2005-09-15  Derek Price  <derek@ximbiot.com>
28047             Paul Eggert  <eggert@cs.ucla.edu>
28048
28049         * lib/regcomp.c, regexec.c, regex_internal.c: Back out previous
28050         changes, consolidating in...
28051         * lib/regex_internal.h: ...this file.
28052
28053 2005-09-13  Jim Meyering  <jim@meyering.net>
28054
28055         * lib/canon-host.c: Filter through gnu indent and reword comments
28056         slightly.
28057         * lib/canon-host.h (ch_strerror_r): Tweak cpp indentation and spacing.
28058
28059 2005-09-13  Derek Price  <derek@ximbiot.com>
28060
28061         * lib/canon-host.c (canon_host_r): Set *cherror on memory allocation
28062         failure.
28063         Reported by Jim Meyering  <jim@meyering.net>.
28064
28065 2005-09-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
28066
28067         * lib/base64.c: Typo.
28068         (base64_encode): Put b64str in initialized data section.
28069
28070 2005-09-12  Paul Eggert  <eggert@cs.ucla.edu>
28071
28072         Merge glibc and coreutils changes into gnulib, plus a few
28073         extra fixes.
28074         * lib/md5.c: Use #error rather than a string.
28075         (CYCLIC): New macro, from glibc source.  Use it instead of rol.
28076         * lib/md5.h (__GNUC_PREREQ, __THROW): Define if not defined already.
28077         (__attribute__): Define to empty for non recent-GCC.
28078         (__md5_buffer, __md5_finish_ctx, __md5_init_ctx, __md5_process_block):
28079         (__md5_process_bytes, __md5_read_ctx, __md5_stream):
28080         Renamed from their non-__ counterparts, with new macros replacing
28081         them if not _LIBC.  Add __THROW attribute.
28082         (rol): Remove.
28083         (struct md5_ctx): Align buffer if using GCC.
28084         * lib/sha1.h (struct sha1_ctx): Likewise.
28085         * lib/sha1.c (SWAP): Renamed from the NOTSWAP.  All uses changed.
28086         The old name was backwards.
28087         (NOTSWAP): Remove; not used.
28088         (rol): New macro, moved here from md5.h.
28089         (sha1_process_block): Remove a FIXME that doesn't make sense.
28090
28091 2005-09-12  Derek Price  <derek@ximbiot.com>
28092
28093         Return usable errors from canon-host.
28094         * lib/canon-host.h: New file.
28095         * lib/canon-host.c (canon_host): Wrap...
28096         (canon_host_r): ...this new function, which now relies exclusively on
28097         getaddrinfo.
28098         (ch_strerror): New function.
28099         (last_cherror): New global.
28100         * lib/getaddrinfo.c: Move include of getaddrinfo.h first to test
28101         interface.
28102         (getaddrinfo): Add AI_CANONNAME functionality.  Don't do arithmetic on
28103         void *.
28104         (freeaddrinfo): Free ai->ai_canonname when set.
28105
28106 2005-09-12  Derek Price  <derek@ximbiot.com>
28107
28108         Make canon-host require getaddrinfo.
28109         * m4/canon-host.m4 (gl_CANON_HOST): Remove most dependencies.
28110         AC_LIBSOURCE canon-host.h.  Call...
28111         (gl_PREREQ_CANON_HOST): ...this new function, which requires
28112         gl_GETADDRINFO.
28113         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Compile gai_strerror when needed.
28114
28115 2005-09-12  Derek Price  <derek@ximbiot.com>
28116
28117         * modules/canon-host: Add canon-host.h.  Depend on getaddrinfo.  Make
28118         LGPL.
28119         * modules/getaddrinfo: Add link to opengroup spec.  Depend on strdup.
28120
28121 2005-09-12  Derek Price  <derek@ximbiot.com>
28122
28123         * lib/gai_strerror.c: Include config.h when available.  Include
28124         getaddrinfo.h before other headers to test interface.
28125         Reported by Larry Jones <lawrence.jones@ugs.com>.
28126
28127 2005-09-12  Derek Price  <derek@ximbiot.com>
28128             Paul Eggert  <eggert@cs.ucla.edu>
28129
28130         * modules/glob (Files): Add glob-libc.h.
28131
28132 2005-09-12  Derek Price  <derek@ximbiot.com>
28133             Paul Eggert  <eggert@cs.ucla.edu>
28134
28135         * m4/glob.m4 (gl_GLOB_SUBSTITUTE): AC_LIBSOURCES for glob.c,
28136         glob_.h, glob-libc.h.
28137         (gl_PREREQ_GLOB): Remove _SYS_CDEFS_H hack; no longer needed.
28138
28139 2005-09-12  Derek Price  <derek@ximbiot.com>
28140             Paul Eggert  <eggert@cs.ucla.edu>
28141
28142         * lib/glob-libc.h: Renamed from glob_.h.  The new version is
28143         taken from libc's glob.h, except with '#ifdef __GLOB_GNULIB'
28144         protecting things that should be done only in gnulib contexts.
28145         * lib/glob_.h: New file, containing only the glob things needed for
28146         gnulib.
28147         (GLOB_PREFIX): Remove.  All uses changed to look for __GLOB_GNULIB.
28148         (__GLOB_CONCAT, __GLOB_XCONCAT, __GLOB_ID): Remove; no longer needed.
28149         (glob, globfree, glob_pattern_p): Now defined simply in terms of
28150         rpl_glob, rpl_globfree, rpl_glob_pattern_p.
28151         (__GLOB_GNULIB): New macro, to keep the glob.h changes clearer
28152         and to respect the namespace rules better.
28153
28154 2005-09-08  Simon Josefsson  <jas@extundo.com>
28155
28156         * modules/socklen: New file.
28157
28158 2005-09-08  Simon Josefsson  <jas@extundo.com>
28159
28160         * m4/socklen.m4: New file.
28161
28162 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
28163
28164         * modules/utimens (Files): Add m4/utimbuf.m4, since
28165         m4/utimens.m4 requires gl_CHECK_TYPE_STRUCT_UTIMBUF.
28166         Reported by Sergey Poznyakoff.
28167
28168 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
28169
28170         * lib/glob.c (glob, globfree, __glob_pattern_p): Use old-style function
28171         definitions, since that's the preferred style in glibc.
28172         Fix a minor spacing issue, and update copyright notice to match
28173         glibc's.
28174
28175 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
28176
28177         * config/srclist.txt: Remove glibc bug 1061; it's been fixed.
28178
28179 2005-09-06  Simon Josefsson  <jas@extundo.com>
28180
28181         * lib/getpass.c (getpass): Fix typo, test for HAVE_TCSETATTR and not
28182         TCSETATTR.  Reported by Derek Price <derek@ximbiot.com>.
28183
28184 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
28185
28186         * lib/regex_internal.h (bitset_not): Add parens to avoid gcc -Wall
28187         warning.
28188
28189 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
28190
28191         * config/srclist.txt: Add glibc bug 1302.
28192
28193 2005-09-05  Paul Eggert  <eggert@cs.ucla.edu>
28194
28195         Change bitset word type from unsigned int to unsigned long int,
28196         as this has better performance on typical 64-bit hosts.
28197         Port bitset code to hosts with unusual word sizes.
28198         * lib/regcomp.c (build_equiv_class, build_charclass, build_range_exp):
28199         (build_collating_symbol):
28200         Prefer bitset to re_bitset_ptr_t in prototypes, when the actual
28201         argument is a bitset.  This is merely a style issue, but it makes
28202         it clearer that an entire array is expected.
28203         (re_compile_fastmap_iter, init_dfa, init_word_char, optimize_subexps):
28204         * lib/regcomp.c (lower_subexp, parse_bracket_exp, built_charclass_op):
28205         Port to the case where bitset_word is not the same as unsigned int.
28206         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
28207         (bitset_not, bitset_merge, bitset_set_all, bitset_mask):
28208         Likewise.
28209         * lib/regexec.c (check_dst_limits_calc_pos_1,
28210         check_subexp_matching_top):
28211         (build_trtable, group_nodes_into_DFAstates):
28212         Likewise.
28213         * lib/regcomp.c (re_compile_fastmap_iter, utf8_sb_map, optimize_utf8):
28214         Don't assume that SBC_MAX is a multiple of BITSET_WORD_BITS.
28215         * lib/regex_internal.h (bitset_set_all, bitset_not): Likewise.
28216         * lib/regexec.c (group_nodes_into_DFAstates): Likewise.
28217         * lib/regcomp.c (utf8_sb_map): Don't assume UINT_MAX == 0xffffffff.
28218         * lib/regcomp.c (optimize_subexps, lower_subexp):
28219         Work even if bitset_word has holes in its bitwise representation.
28220         * lib/regex_internal.h (BITSET_WORD_BITS): Likewise.
28221         * lib/regexec.c (check_dst_limits_calc_pos_1,
28222         check_subexp_matching_top):
28223         Likewise.
28224         * lib/regex_internal.c (re_string_reconstruct):
28225         Don't assume UCHAR_MAX == 255.
28226         * lib/regex_internal.h (bitset_set_all): Likewise.
28227         * lib/regex_internal.h (BITSET_WORD_BITS): Renamed from UINT_BITS.
28228         All uses changed.
28229         (BITSET_WORDS): Renamed from BITSET_UINTS.  All uses changed.
28230         (bitset_word): New type, replacing 'unsigned int' for bitset uses.
28231         All uses changed.
28232         (BITSET_WORD_MAX): New macro.
28233         (bitset_set, bitset_clear, bitset_contain, bitset_empty):
28234         (bitset_set_all, bitset_copy):  Now inline functions, not macros.
28235         (bitset_empty, bitset_copy):
28236         Prefer sizeof (bitset) to multiplying it out ourselves.
28237         (bitset_not_merge): Remove; unused.
28238         (bitset_contain): Return bool, not unsigned int with one bit on.
28239         All callers changed.
28240         * lib/regexec.c (build_trtable): Don't assume bitset has no stricter
28241         alignment than re_node_set; do this by defining a new internal
28242         type struct dests_alloc and using it to allocate memory.
28243
28244 2005-09-05  Bruno Haible  <bruno@clisp.org>
28245
28246         * gnulib-tool (func_import): Fix comparison in handling of symbolic
28247         links.
28248
28249 2005-09-04  Martin Lambers  <marlam@marlam.de>  (tiny change)
28250
28251         * modules/size_max (Makefile.am): Add size_max.h
28252
28253 2005-09-04  Derek Price  <derek@ximbiot.com>
28254
28255         * gnulib-tool (func_import): Fix reversed $symbolic logic.
28256
28257 2005-09-03  Simon Josefsson  <jas@extundo.com>
28258
28259         * gnulib-tool: Fix typo.
28260
28261 2005-09-03  Simon Josefsson  <jas@extundo.com>
28262
28263         * config/srclist.txt: Add glibc bug 1293.
28264
28265 2005-09-03  Derek Price  <derek@ximbiot.com>
28266
28267         * m4/getlogin_r (gl_GETLOGIN_R): Fix cut & paste error.
28268         From Larry Jones <lawrence.jones@ugs.com>.
28269
28270 2005-09-02  Simon Josefsson  <jas@extundo.com>
28271
28272         * modules/socklen: New file.
28273
28274 2005-09-02  Simon Josefsson  <jas@extundo.com>
28275
28276         * modules/havelib: New module.
28277
28278         * modules/gettext, modules/iconv, modules/lock, modules/readline:
28279         Use havelib.
28280
28281 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
28282
28283         Check for arithmetic overflow when calculating sizes, to prevent
28284         some buffer-overflow issues.  These patches are conservative, in the
28285         sense that when I couldn't determine whether an overflow was possible,
28286         I inserted a run-time check.
28287         * lib/regex_internal.h (re_xmalloc, re_xrealloc, re_x2realloc): New
28288         macros.
28289         (SIZE_MAX) [!defined SIZE_MAX]: New macro.
28290         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc):
28291         (re_xnrealloc, re_x2nrealloc): New inline functions.
28292         * lib/regcomp.c (init_dfa, analyze, build_range_exp,
28293         parse_bracket_exp):
28294         (build_equiv_class, build_charclass): Check for arithmetic overflow
28295         in size expression calculations.
28296         * lib/regex_internal.c (re_string_realloc_buffers):
28297         (build_wcs_upper_buffer, re_node_set_add_intersect):
28298         (re_node_set_init_union, re_node_set_insert, re_node_set_insert_last):
28299         (re_dfa_add_node, register_state): Likewise.
28300         * lib/regexec.c (re_search_stub, re_copy_regs, re_search_internal):
28301         (prune_impossible_nodes, push_fail_stack, set_regs, check_arrival):
28302         (build_trtable, extend_buffers, match_ctx_init, match_ctx_add_entry):
28303         (match_ctx_add_subtop, match_ctx_add_sublast): Likewise.
28304
28305 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
28306
28307         * modules/inttostr (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
28308         m4/ulonglong.m4.  Problem reported by Martin Lambers.
28309
28310 2005-09-02  Bruno Haible  <bruno@clisp.org>
28311
28312         Support for lib vs. lib64 distinction on biarch platforms.
28313         * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): New macro.
28314         (AC_LIB_PREFIX): Require it. Use $acl_libdirstem instead of 'lib'.
28315         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Likewise.
28316
28317 2005-09-02  Bruno Haible  <bruno@clisp.org>
28318
28319         * gnulib-tool (import): In the other first-use case, provide defaults
28320         as well.
28321
28322 2005-09-02  Bruno Haible  <bruno@clisp.org>
28323
28324         * config/srclist.txt: lib-link.m4 and lib-prefix.m4 currently have
28325         patches not yet found in the latest gettext release.
28326
28327 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
28328
28329         * lib/glob.c (GET_LOGIN_NAME_MAX): Renamed from LOGIN_NAME_MAX,
28330         to avoid a collision with bits/local_lim.h in glibc.
28331         All uses changed.  Problem reported by Dmitry V. Levin in
28332         <http://sources.redhat.com/bugzilla/show_bug.cgi?id=1060>.
28333
28334         * lib/regex_internal.c (build_wcs_upper_buffer): Fix portability
28335         bugs in int versus size_t comparisons.
28336         (re_string_context_at): Fix bug where the code assumed that
28337         Idx is signed.
28338
28339         Use bool where appropriate.
28340         * lib/regcomp.c (re_set_fastmap): ICASE arg is bool, not int.
28341         All callers changed.
28342         (calc_eclosure_iter): Likewise, for ROOT arg.
28343         (parse_bracket_element): Likewise, for ACCEPT_HYPHEN arg.
28344         (build_charclass_op): Likewise, for NON_MATCH arg.
28345         * lib/regex_internal.c (re_string_allocate, re_string_construct):
28346         (re_string_construct_common): Likewise, for ICASE arg.
28347         * lib/regexec.c (re_search_2_stub, re_search_stub):
28348         Likewise, for RET_LEN arg.
28349         (check_matching): Likewise, for FL_LONGEST_MATCH arg.
28350         (set_regs): Likewise, for FL_BACKTRACK arg.
28351         * lib/regcomp.c (re_compile_fastmap_iter, optimize_utf8):
28352         (duplicate_node_closure, calc_inveclosure, calc_eclosure):
28353         (calc_eclosure_iter, parse_bracket_exp):
28354         Use bool for internal variables that are booleans.
28355         * lib/regexec.c (re_search_internal, check_matching,
28356         proceed_next_node):
28357         (set_regs, build_sifted_states, sift_states_bkref):
28358         (check_arrival_add_next_nodes, check_arrival_expand_ecl_sub):
28359         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
28360         (find_collation_sequence_value):
28361         Likewise.
28362         * lib/regex_internal.c (re_node_set_insert, re_node_set_insert_last):
28363         (re_node_set_compare):
28364         Return bool, not int. All callers changed.
28365         * lib/regexec.c (check_halt_node_context, check_dst_limits):
28366         (build_trtable, check_node_accept): Likewise.
28367         * lib/regex_internal.h: Include stdbool.h.
28368
28369         Fix bugs uncovered when converting to bool.
28370         * lib/regcomp.c (calc_eclosure_iter): Check for storage allocation
28371         failure instead of charging ahead blindly.
28372         * lib/regex_internal.c (register_state): Likewise.
28373         * lib/regexec.c (re_search_2_stub): Use simpler method than boolean
28374         for freeing internal storage.
28375         (group_nodes_into_DFA_states): Use unsigned int, not int, for
28376         bitset pieces used as boolean, to avoid undefined behavior
28377         on hosts that do int overflow checking.
28378
28379 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
28380
28381         * config/srclist.txt: Add glibc bugs 1285-1287.
28382
28383 2005-09-01  Jim Meyering  <jim@meyering.net>
28384
28385         * m4/lchown.m4: Require gl_FUNC_CHOWN, for the definition of
28386         CHOWN_MODIFIES_SYMLINK, which is used by lchown.c.
28387         Require gl_STAT_MACROS, too.
28388
28389 2005-09-01  Bruno Haible  <bruno@clisp.org>
28390
28391         * gnulib-tool (import): In the first-use case, provide defaults.
28392
28393 2005-09-01  Bruno Haible  <bruno@clisp.org>
28394
28395         * gnulib-tool (func_import): Remove the .tmp files.
28396
28397 2005-09-01  Bruno Haible  <bruno@clisp.org>
28398
28399         * gnulib-tool (func_import): Fix handling of symbolic links.
28400
28401 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
28402
28403         On 64-bit hosts (where size_t is 64 bits and int is 32 bits), the
28404         old glibc regex code mishandles strings longer than 2**31 bytes.
28405         This patch fixes this when the regex code is used in gnulib
28406         (i.e., outside glibc).
28407
28408         This patch should not affect the use of the regex code inside
28409         glibc.  No doubt this problem also needs to be handled for glibc
28410         as well, but the result will be an incompatible change to the
28411         glibc ABI, and the old ABI will have to be supported too.  That
28412         can be the the subject for another patch.
28413
28414         * lib/regex.h (_REGEX_LARGE_OFFSETS): New feature-test macro,
28415         governing whether the rest of this patch is active.  By default,
28416         the macro is disabled and the patch has no effect.
28417         (regoff_t) [defined _REGEX_LARGE_OFFSETS]: Define to off_t, not int.
28418         (__re_idx_t, __re_size_t, __re_long_size_t): New types.
28419         (struct re_pattern_buffer, re_search, re_search_2, re_match):
28420         (re_match_2, re_set_registers): Use the new types.
28421         * lib/regex_internal.h (Idx, re_hashval_t): New types.
28422         (REG_MISSING, REG_ERROR, REG_VALID_INDEX, REG_VALID_NONZERO_INDEX):
28423         New macros.
28424         (re_node_set, re_charset_t, re_token_t, re_string_realloc_buffers):
28425         (re_string_context_at, bin_tree_t, re_dfastate_t):
28426         (struct re_state_table_entry, state_array_t, re_sub_match_last_t):
28427         (re_sub_match_top_t, re_match_context_t, re_sift_context_t):
28428         (struct re_fail_stack_ent_t, struct re_fail_stack_t, struct re_dfa_t):
28429         (re_string_char_size_at, re_string_wchar_at):
28430         (re_string_elem_size_at):
28431         Use the new types and macros to port to 64-bit hosts.
28432         Use unsigned types for internal values, so that the code
28433         mostly works even for arrays larger than SSIZE_MAX.
28434         * lib/regcomp.c (re_compile_internal, init_dfa, duplicate_node):
28435         (search_duplicated_node, calc_eclosure_iter, fetch_number):
28436         (parse_reg_exp, parse_branch, parse_expression, parse_sub_exp):
28437         (build_equiv_class, build_charclass, re_compile_fastmap_iter):
28438         (free_dfa_content, create_initial_state, optimize_utf8, analyze):
28439         (optimize_subexps, calc_first, link_nfa_nodes, duplicate_node_closure):
28440         (calc_inveclosure, parse_dup_op, build_range_exp):
28441         (build_collating_symbol, parse_bracket_exp, build_charclass_op):
28442         (fetch_number, create_token_tree, mark_opt_subexp):
28443         Likewise.
28444         * lib/regex_internal.c (re_string_construct_common,
28445         create_ci_newstate):
28446         (create_cd_newstate, re_string_allocate, re_string_construct):
28447         (re_string_realloc_buffers, build_wcs_upper_buffer):
28448         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
28449         (re_string_reconstruct, re_string_peek_byte_case):
28450         (re_string_fetch_byte_case, re_string_context_at):
28451         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
28452         (re_node_set_init_copy, re_node_set_add_intersect):
28453         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
28454         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
28455         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
28456         (re_acquire_state, re_acquire_state_context, register_state):
28457         Likewise.
28458         * lib/regex.c (match_ctx_init, match_ctx_add_entry,
28459         search_cur_bkref_entry):
28460         (match_ctx_add_subtop, match_ctx_add_sublast, sift_ctx_init):
28461         (re_search_internal, re_search_2_stub, re_search_stub)
28462         (re_copy_regs, check_matching, check_halt_state_context, update_regs):
28463         (push_fail_stack, sift_states_iter_mb, build_sifted_states):
28464         (update_cur_sifted_state, check_dst_limits):
28465         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
28466         (check_subexp_limits, sift_states_bkref, merge_state_array):
28467         (check_subexp_matching_top, get_subexp, get_subexp_sub):
28468         (find_subexp_node, check_arrival, check_arrival_add_next_nodes):
28469         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
28470         (expand_bkref_cache, check_node_accept_bytes):
28471         (group_nodes_into_DFAstates, check_node_accept, regexec, re_match):
28472         (re_search, re_match_2, re_search_2, prune_impossible_nodes):
28473         (acquire_init_state_context, check_halt_node_context):
28474         (proceed_next_node, pop_fail_stack, set_regs, free_fail_stack_return):
28475         (sift_states_backward, clean_state_log_if_needed):
28476         (sub_epsilon_src_nodes, add_epsilone_src_nodes, merge_state_with_log):
28477         (find_recover_state, transit_state_sb, transit_state_mb):
28478         (transit_state_bkref, build_trtable, match_ctx_clean):
28479         Likewise.
28480         * lib/regcomp.c (parse_dup_op): Add an extra test if Idx is unsigned,
28481         to work around an assumption that REG_MISSING is negative.
28482
28483         * lib/regcomp.c (re_comp) [defined _REGEX_RE_COMP || defined _LIBC]:
28484         (seek_collating_symbol_entry) [defined _LIBC]:
28485         (lookup_collation_sequence_value) [defined _LIBC]:
28486         (build_range_exp, build_collating_symbol) [defined _LIBC]:
28487         Use prototypes rather than old-style function definitions.
28488         * lib/regexec.c (re_exec) [defined _REGEX_RE_COMP || defined _LIBC]:
28489         (transit_state_sb) [0]:
28490         (find_collation_sequence_value) [defined _LIBC]: Likewise.
28491
28492         * lib/regexec.c (re_search_internal): Simplify update of rm_so and
28493         rm_eo.
28494
28495         * lib/regcomp.c (re_compile_fastmap_iter, init_dfa, init_word_char):
28496         (optimize_subexps, lower_subexp):
28497         Don't assume 1<<31 has defined behavior on hosts with 32-bit int,
28498         since the signed shift might overflow.  Use 1u<<31 instead.
28499         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
28500         Likewise.
28501         * lib/regexec.c (check_dst_limits_calc_pos_1,
28502         check_subexp_matching_top): Likewise.
28503
28504         * lib/regcomp.c (optimize_subexps, lower_subexp):
28505         Use CHAR_BIT rather than 8, for clarity.
28506         * lib/regexec.c (check_dst_limits_calc_pos_1):
28507         (check_subexp_matching_top): Likewise.
28508         * lib/regcomp.c (init_dfa): Make table_size unsigned, so that we don't
28509         have to worry about portability issues when shifting it left.
28510         Remove no-longer-needed test for table_size > 0.
28511         * lib/regcomp.c (parse_sub_exp): Do not shift more bits than there are
28512         in a word, as the resulting behavior is undefined.
28513         * lib/regexec.c (check_dst_limits_calc_pos_1): Likewise;
28514         in one case, a <= should have been an <, and in another case the
28515         whole test was missing.
28516         * lib/regex_internal.h (BYTE_BITS): Remove.  All uses changed to
28517         the standard name CHAR_BIT.
28518         * lib/regexec.c (match_ctx_add_entry): Don't assume that ~0 == -1;
28519         this is not true on one's complement and signed-magnitude hosts.
28520
28521         * lib/regex_internal.h (re_sub_match_top_t): Remove unused member
28522         next_last_offset.
28523         (struct re_dfa_t): Remove unused member states_alloc.
28524         * lib/regcomp.c (init_dfa): Don't initialize unused members.
28525
28526 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
28527
28528         * m4/regex.m4 (gl_REGEX): Require AC_SYS_LARGEFILE, Define
28529         _REGEX_LARGE_OFFSETS).  Test for regoff_t/off_t bug in 64-bit
28530         and large-file glibc and in 32-bit large-file Solaris.
28531
28532 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
28533
28534         * lib/regex_internal.c (re_string_reconstruct): Don't assume buffer
28535         lengths fit in regoff_t; this isn't true if regoff_t is the same
28536         width as size_t.
28537         * lib/regex.c (re_search_internal): 5th arg is LAST_START
28538         (= START + RANGE) instead of RANGE.  This avoids overflow
28539         problems when regoff_t is the same width as size_t.
28540         All callers changed.
28541         (re_search_2_stub): Check for overflow when adding the
28542         sizes of the two strings.
28543         (re_search_stub): Check for overflow when adding START
28544         to RANGE; if it occurs, substitute the extreme value.
28545
28546 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
28547
28548         * config/srclist.txt: Add glibc bugs 1273, 1278-1282, 1284.
28549
28550 2005-08-31  Jim Meyering  <jim@meyering.net>
28551
28552         * lib/regcomp.c (search_duplicated_node): Make first pointer arg
28553         a pointer-to-const.
28554         * lib/regex_internal.c (create_ci_newstate, create_cd_newstate):
28555         (register_state): Likewise.
28556         * lib/regexec.c (search_cur_bkref_entry, check_dst_limits):
28557         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
28558         (group_nodes_into_DFAstates): Likewise.
28559
28560 2005-08-31  Jim Meyering  <jim@meyering.net>
28561
28562         * check-module: Add a FIXME comment.
28563
28564 2005-08-31  Eric Blake  <ebb9@byu.net>
28565
28566         * modules/unistd-safer (Files): Add unistd--.h.
28567         * modules/stdio-safer (Files): Add stdio--.h.
28568
28569 2005-08-31  Derek Price  <derek@ximbiot.com>
28570
28571         * lib/getdelim.c (getdelim): Return EOF on EOF.
28572         Reported by Larry Jones <lawrence.jones@ugs.com>.
28573
28574 2005-08-31  Bruno Haible  <bruno@clisp.org>
28575
28576         Avoid unnecessary diffs in the generated lib/Makefile.am.
28577         * gnulib-tool (func_emit_lib_Makefile_am): Don't write the cmd into
28578         the generated files.
28579         (func_import): Don't set cmd.
28580
28581 2005-08-31  Bruno Haible  <bruno@clisp.org>
28582
28583         * lib/strstr.c: Include <stddef.h>, for NULL.
28584         * lib/strcasestr.c: Likewise.
28585         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
28586
28587 2005-08-31  Bruno Haible  <bruno@clisp.org>
28588
28589         * gnulib-tool: New option --macro-prefix.
28590         (func_import): Use macro_prefix.
28591         (import): Handle option --macro-prefix.
28592
28593 2005-08-31  Bruno Haible  <bruno@clisp.org>
28594
28595         * gnulib-tool (import): Rename most ac_* variables to cached_*.
28596         Also use new variables cached_lgpl, cached_libtool.
28597
28598 2005-08-31  Bruno Haible  <bruno@clisp.org>
28599
28600         * gnulib-tool (func_import): Require AC_GNU_SOURCE etc. instead of
28601         always instantiating them.
28602
28603 2005-08-31  Bruno Haible  <bruno@clisp.org>
28604
28605         * gnulib-tool (func_import): Read the previous cached settings
28606         from gnulib-cache.m4 and gnulib-comp.m4. Remove files that were
28607         earlier added by gnulib but are now dropped. Warn when a gnulib file
28608         overwrites a non-gnulib file.
28609
28610 2005-08-31  Bruno Haible  <bruno@clisp.org>
28611
28612         * gnulib-tool (func_import): Generate two files gnulib-cache.m4 and
28613         gnulib-comp.m4 instead of a single gnulib.m4, to make it easy for
28614         projects that don't keep autogenerated files in CVS. Put into
28615         actioncmd only the specified modules, not the transitive closure.
28616
28617 2005-08-31  Bruno Haible  <bruno@clisp.org>
28618
28619         * gnulib-tool (func_import): Fix defaulting of $libname and $libtool.
28620         Create directories that shall be filled.
28621         (import): Don't look for gl_* macros in configure.ac. Recurse across
28622         all directories containing a gnulib-cache.m4 files, if meaningful.
28623
28624 2005-08-31  Bruno Haible  <bruno@clisp.org>
28625
28626         * gnulib-tool (func_import): Emit also a stub for gl_LIBTOOL.
28627         (import): Set seen_libtool when we see gl_LIBTOOL.
28628
28629 2005-08-31  Bruno Haible  <bruno@clisp.org>
28630
28631         * gnulib-tool (func_import): Also copy m4/gnulib-tool.m4. Omit
28632         declaration macro definitions from generated gnulib.m4.
28633
28634 2005-08-30  Oskar Liljeblad  <oskar@osk.mine.nu>
28635
28636         * lib/iconvme.h: Add prototype for iconv_alloc.
28637
28638 2005-08-29  Simon Josefsson  <jas@extundo.com>
28639
28640         * lib/iconvme.c: Fix errno.
28641
28642 2005-08-29  Bruno Haible  <bruno@clisp.org>
28643
28644         * gnulib-tool: Enclose all occurrences of $destdir in "...", so
28645         that it works when the directory contains spaces.
28646
28647 2005-08-29  Bruno Haible  <bruno@clisp.org>
28648
28649         * gnulib-tool (import): Avoid unnecessary spaces in $avoidlist.
28650
28651 2005-08-29  Bruno Haible  <bruno@clisp.org>
28652
28653         * gnulib-tool (func_import): Emit more comments into gnulib.m4.
28654         Emit more advice.
28655
28656 2005-08-29  Bruno Haible  <bruno@clisp.org>
28657         and Stepan Kasal  <kasal@ucw.cz>
28658
28659         * check-module: If more parameters are given, check each of them
28660         separately; add more exceptions, as noted by Jim Meyering.
28661         (check_module): New procedure.
28662         (%exempt_header): Now contains all exceptions.
28663
28664 2005-08-29  Ben Pfaff  <blp@cs.stanford.edu>
28665
28666         * modules/byteswap (Makefile.am): Fix rule to not assume GNU make.
28667
28668 2005-08-29  Oskar Liljeblad  <oskar@osk.mine.nu>
28669
28670         * lib/iconvme.c: Split iconv_string into iconv_alloc.
28671
28672 2005-08-28  Bruno Haible  <bruno@clisp.org>
28673
28674         * m4/gnulib-tool.m4: New file.
28675
28676 2005-08-27  Jim Meyering  <jim@meyering.net>
28677
28678         * modules/unistd-safer (Files): Add pipe-safer.c.
28679         * modules/fcntl-safer (Files): Add creat-safer.c.
28680
28681 2005-08-27  Jim Meyering  <jim@meyering.net>
28682
28683         * m4/stdlib-safer.m4: New file.  From coreutils.
28684         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add stdio--.h.
28685         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Add creat-safer.c to the
28686         AC_LIBSOURCES list and arrange to compile it via AC_LIBOBJ.
28687         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise, add pipe-safer.c.
28688         Add pipe-safer.c and unistd--.h to the AC_LIBSOURCES list.
28689
28690 2005-08-27  Jim Meyering  <jim@meyering.net>
28691
28692         * lib/fopen-safer.c: Merge minor changes from coreutils.
28693         * lib/dup-safer.c: Likewise.
28694         * lib/fd-safer.c: Likewise.
28695
28696         Merge from coreutils.
28697         * lib/stdio--.h: New file.
28698         * lib/stdlib--.h: New file.
28699         * lib/mkstemp-safer.c: New file.
28700
28701         GNU tar needs these.
28702         * lib/pipe-safer.c: New file.
28703         * lib/creat-safer.c: New file.
28704         * lib/fcntl--.h (creat): Define to creat_safer.
28705         * lib/fcntl-safer.h: Include <sys/types.h> and declare creat_safer.
28706         * lib/unistd--.h (pipe): Define to pipe_safer.
28707         * lib/unistd-safer.h: Declare pipe_safer.
28708
28709 2005-08-26  Simon Josefsson  <jas@extundo.com>
28710
28711         * lib/getpass.c: Use _WIN32 instead of WIN32, suggested by Bruno
28712         Haible <bruno@clisp.org>.
28713
28714 2005-08-26  Paul Eggert  <eggert@cs.ucla.edu>
28715
28716         * lib/regex_internal.h: Remove all references to
28717         RE_NO_INTERNAL_PROTOTYPES; no longer neeeded now that we assume C89
28718         or better.
28719         (bitset_not, bitset_merge, bitset_not_merge):
28720         (bitset_mask, re_string_allocate, re_string_construct):
28721         (re_string_reconstruct, re_string_destruct, re_string_elem_size_at):
28722         (re_string_char_size_at, re_string_wchar_at, re_string_peek_byte_case):
28723         (re_string_fetch_byte_case, re_node_set_alloc, re_node_set_init_1):
28724         (re_node_set_init_2, re_node_set_init_copy, re_node_set_add_intersect):
28725         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
28726         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
28727         (re_node_set_remove_at, re_dfa_add_node, re_acquire_state):
28728         (re_acquire_state_context):
28729         Remove unnecessary forward decls.
28730         (re_string_char_size_at, re_string_wchar_at, re_string_elem_size_at):
28731         Put __attribute at function definition,
28732         now that the function decl has been removed.
28733         * lib/regex_internal.c (re_string_peek_byte_case):
28734         (re_string_fetch_byte_case, re_node_set_compare, re_node_set_contains):
28735         Likewise.
28736
28737 2005-08-25  Stepan Kasal  <kasal@ucw.cz>
28738
28739         * m4/regex.m4: Add AC_PREREQ(2.50).
28740         (gl_REGEX): If --with-included-regex was given, skip the autodetection.
28741
28742 2005-08-25  Simon Josefsson  <jas@extundo.com>
28743
28744         * m4/getpass.m4: Check for termios.h, tcgetattr, tcsetattr, and
28745         __fsetlocking.
28746
28747 2005-08-25  Simon Josefsson  <jas@extundo.com>
28748
28749         * lib/getpass.c: Add WIN32 implementation.  Conditionalize use of
28750         termios.h, tcgetattr, tcsetattr and __fsetlocking.  Remove some
28751         GLIBC specific code.
28752
28753 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
28754
28755         Make regex safe for g++.  This fixes one real bug (an "err"
28756         that should have been "*err").  g++ problem reported by
28757         Sam Steingold.
28758         * lib/regex_internal.h (re_calloc): New macro, consistent with
28759         re_malloc etc.  All callers of calloc changed to use re_calloc.
28760         * lib/regex_internal.c (build_wcs_upper_buffer): Return reg_errcode_t,
28761         not int.  All callers changed.
28762         * lib/regcomp.c (re_compile_fastmap_iter): Don't use
28763         alloca (mb_cur_max); just use an array of size MB_LEN_MAX.
28764         * lib/regexec.c (push_fail_stack): Use re_realloc, not realloc.
28765         (find_recover_state): Change "err" to "*err"; this fixes what
28766         appears to be a real bug.
28767         (check_arrival_expand_ecl_sub): Be consistent about reg_errcode_t
28768         versus int.
28769
28770 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
28771
28772         * modules/regex (Depends-on): Add malloc, since the code
28773         assumes that !malloc(0) means failure.
28774
28775 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
28776
28777         * lib/regexec.c (set_regs): Don't alloca with an unbounded size.
28778
28779         alloca modernization/simplification for regex.
28780         * lib/regex.c: Remove portability cruft for alloca.  This no longer
28781         needs to be at the start of the file, and can be moved into
28782         regex_internal.h and simplified.
28783         * lib/regex_internal.h: Include <alloca.h>.
28784         (__libc_use_alloca) [!defined _LIBC]: New macro.
28785         * lib/regexec.c (build_trtable): Remove "#ifdef _LIBC", since the code
28786         now works outside glibc.
28787
28788 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
28789
28790         * config/srclist.txt: Add glibc bugs 1241, 1245.
28791
28792 2005-08-25  Jim Meyering  <jim@meyering.net>
28793
28794         * lib/open-safer.c: Include <config.h>.
28795         Otherwise, we'd lose LARGEFILE support in any file using
28796         e.g. "fcntl--.h"
28797
28798 2005-08-25  Bruno Haible  <bruno@clisp.org>
28799
28800         * m4/minmax.m4: Require autoconf 2.52.
28801         (gl_MINMAX_IN_HEADER): Add comments. Use m4_pushdef/m4_popdef instead
28802         of define/undefine. Use AS_TR_SH and AS_TR_CPP as more robust
28803         alternatives of translit over the alphabet.
28804         Based on a patch from Stepan Kasal <kasal@ucw.cz>.
28805
28806 2005-08-24  Simon Josefsson  <jas@extundo.com>
28807
28808         * tests/test-getpass.c: New file.
28809
28810 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
28811
28812         * m4/regex.m4 (gl_REGEX): Use POSIX-compliant spellings when testing
28813         for GNU regex features.
28814
28815 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
28816
28817         * lib/regcomp.c (regerror): 2nd arg is 'restrict', as per POSIX.
28818         * lib/regex.h (regerror): Likewise.
28819
28820         * lib/regex.c: Do not include <sys/types.h>, as POSIX no longer
28821         requires this.  (The code never needed it.)
28822
28823         * lib/regcomp.c, regex_internal.c, regex_internal.h, regexec.c:
28824         All uses of recently-renamed identifiers changed to use the new,
28825         POSIX-compliant names.  The code will build and run just fine
28826         without these changes, but it's better to eat our own dog food
28827         and use the standard-conforming names.
28828
28829         * lib/regex.h: Fix a multitude of POSIX name space violations.
28830         These changes have an effect only for programs that define
28831         _POSIX_C_SOURCE, _POSIX_SOURCE, or _XOPEN_SOURCE; they
28832         do not change anything for programs compiled in the normal way.
28833         Also, there is no effect on the ABI.
28834
28835         (_REGEX_SOURCE): New macro.
28836         Do not include <stddef.h> if _XOPEN_SOURCE and VMS are both
28837         defined and _GNU_SOURCE is not; this fixes a name space violation.
28838
28839         Rename the following macros to obey POSIX requirements.
28840         The old names are still visible as macros if _REGEX_SOURCE is defined.
28841         (REG_BACKSLASH_ESCAPE_IN_LISTS): renamed from
28842         RE_BACKSLASH_ESCAPE_IN_LISTS.
28843         (REG_BK_PLUS_QM): renamed from RE_BK_PLUS_QM.
28844         (REG_CHAR_CLASSES): renamed from RE_CHAR_CLASSES.
28845         (REG_CONTEXT_INDEP_ANCHORS): renamed from RE_CONTEXT_INDEP_ANCHORS.
28846         (REG_CONTEXT_INDEP_OPS): renamed from RE_CONTEXT_INDEP_OPS.
28847         (REG_CONTEXT_INVALID_OPS): renamed from RE_CONTEXT_INVALID_OPS.
28848         (REG_DOT_NEWLINE): renamed from RE_DOT_NEWLINE.
28849         (REG_DOT_NOT_NULL): renamed from RE_DOT_NOT_NULL.
28850         (REG_HAT_LISTS_NOT_NEWLINE): renamed from RE_HAT_LISTS_NOT_NEWLINE.
28851         (REG_INTERVALS): renamed from RE_INTERVALS.
28852         (REG_LIMITED_OPS): renamed from RE_LIMITED_OPS.
28853         (REG_NEWLINE_ALT): renamed from RE_NEWLINE_ALT.
28854         (REG_NO_BK_BRACES): renamed from RE_NO_BK_BRACES.
28855         (REG_NO_BK_PARENS): renamed from RE_NO_BK_PARENS.
28856         (REG_NO_BK_REFS): renamed from RE_NO_BK_REFS.
28857         (REG_NO_BK_VBAR): renamed from RE_NO_BK_VBAR.
28858         (REG_NO_EMPTY_RANGES): renamed from RE_NO_EMPTY_RANGES.
28859         (REG_UNMATCHED_RIGHT_PAREN_ORD): renamed from
28860         RE_UNMATCHED_RIGHT_PAREN_ORD.
28861         (REG_NO_POSIX_BACKTRACKING): renamed from RE_NO_POSIX_BACKTRACKING.
28862         (REG_NO_GNU_OPS): renamed from RE_NO_GNU_OPS.
28863         (REG_DEBUG): renamed from RE_DEBUG.
28864         (REG_INVALID_INTERVAL_ORD): renamed from RE_INVALID_INTERVAL_ORD.
28865         (REG_IGNORE_CASE): renamed from RE_ICASE.  This renaming is a bit
28866         unusual, since we can't clash with the POSIX REG_ICASE.
28867         (REG_CARET_ANCHORS_HERE): renamed from RE_CARET_ANCHORS_HERE.
28868         (REG_CONTEXT_INVALID_DUP): renamed from RE_CONTEXT_INVALID_DUP.
28869         (REG_NO_SUB): renamed from RE_NO_SUB.
28870         (REG_SYNTAX_EMACS): renamed from RE_SYNTAX_EMACS.
28871         (REG_SYNTAX_AWK): renamed from RE_SYNTAX_AWK.
28872         (REG_SYNTAX_GNU_AWK): renamed from RE_SYNTAX_GNU_AWK.
28873         (REG_SYNTAX_POSIX_AWK): renamed from RE_SYNTAX_POSIX_AWK.
28874         (REG_SYNTAX_GREP): renamed from RE_SYNTAX_GREP.
28875         (REG_SYNTAX_EGREP): renamed from RE_SYNTAX_EGREP.
28876         (REG_SYNTAX_POSIX_EGREP): renamed from RE_SYNTAX_POSIX_EGREP.
28877         (REG_SYNTAX_ED): renamed from RE_SYNTAX_ED.
28878         (REG_SYNTAX_SED): renamed from RE_SYNTAX_SED.
28879         (_REG_SYNTAX_POSIX_COMMON): renamed from _RE_SYNTAX_POSIX_COMMON.
28880         (REG_SYNTAX_POSIX_BASIC): renamed from RE_SYNTAX_POSIX_BASIC.
28881         (REG_SYNTAX_POSIX_MINIMAL_BASIC): renamed from
28882         RE_SYNTAX_POSIX_MINIMAL_BASIC.
28883         (REG_SYNTAX_POSIX_EXTENDED): renamed from RE_SYNTAX_POSIX_EXTENDED.
28884         (REG_SYNTAX_POSIX_MINIMAL_EXTENDED): renamed from
28885         RE_SYNTAX_POSIX_MINIMAL_EXTENDED.
28886         (REG_DUP_MAX): renamed from RE_DUP_MAX.  No need to undef it.
28887         (REG_UNALLOCATED): Renamed from REGS_UNALLOCATED.
28888         (REG_REALLOCATE): Renamed from REGS_REALLOCATE.
28889         (REG_FIXED): Renamed from REGS_FIXED.
28890         (REG_NREGS): Renamed from RE_NREGS.
28891
28892         (REG_ICASE, REG_NEWLINE, REG_NOSUB): Do not depend on the values
28893         of other REG_* macros, since POSIX says the user is allowed to
28894         #undef these macros selectively.
28895
28896         (reg_errcode_t): Update comment stating what other tables need
28897         to be consistent.
28898
28899         Rename the following enum values to obey POSIX requirements.
28900         The old names are still visible as macros.
28901         (_REG_ENOSYS): Renamed from REG_ENOSYS.  Define even if _XOPEN_SOURCE
28902         is not defined, since GNU is supposed to be a superset of POSIX as
28903         much as possible, and since we want reg_errcode_t to be a signed
28904         type for implementation consistency.
28905         (_REG_NOERROR): Renamed from REG_NOERROR.
28906         (_REG_NOMATCH): Renamed from REG_NOMATCH.
28907         (_REG_BADPAT): Renamed from REG_BADPAT.
28908         (_REG_ECOLLATE): Renamed from REG_ECOLLATE.
28909         (_REG_ECTYPE): Renamed from REG_ECTYPE.
28910         (_REG_EESCAPE): Renamed from REG_EESCAPE.
28911         (_REG_ESUBREG): Renamed from REG_ESUBREG.
28912         (_REG_EBRACK): Renamed from REG_EBRACK.
28913         (_REG_EPAREN): Renamed from REG_EPAREN.
28914         (_REG_EBRACE): Renamed from REG_EBRACE.
28915         (_REG_BADBR): Renamed from REG_BADBR.
28916         (_REG_ERANGE): Renamed from REG_ERANGE.
28917         (_REG_ESPACE): Renamed from REG_ESPACE.
28918         (_REG_BADRPT): Renamed from REG_BADRPT.
28919         (_REG_EEND): Renamed from REG_EEND.
28920         (_REG_ESIZE): Renamed from REG_ESIZE.
28921         (_REG_ERPAREN): Renamed from REG_ERPAREN.
28922         (REG_ENOSYS, REG_NOERROR, REG_NOMATCH, REG_BADPAT, REG_ECOLLATE):
28923         (REG_ECTYPE, REG_EESCAPE, REG_ESUBREG, REG_EBRACK, REG_EPAREN):
28924         (REG_EBRACE, REG_BADBR, REG_ERANGE, REG_ESPACE, REG_BADRPT, REG_EEND):
28925         (REG_ESIZE, REG_ERPAREN): Now macros, not enum constants.
28926
28927         (_REG_RE_NAME, _REG_RM_NAME): New macros.
28928         (REG_TRANSLATE_TYPE): Renamed from RE_TRANSLATE_TYPE.  All uses
28929         changed.  But support the old name if the new one is not defined
28930         and if _REGEX_SOURCE.
28931
28932         Change the following member names in struct re_pattern_buffer.
28933         The old names are still supported if !_REGEX_SOURCE.
28934         The new names are always supported, regardless of _REGEX_SOURCE.
28935         (re_buffer): Renamed from buffer.
28936         (re_allocated): Renamed from allocated.
28937         (re_used): Renamed from used.
28938         (re_syntax): Renamed from syntax.
28939         (re_fastmap): Renamed from fastmap.
28940         (re_translate): Renamed from translate.
28941         (re_can_be_null): Renamed from can_be_null.
28942         (re_regs_allocated): Renamed from regs_allocated.
28943         (re_fastmap_accurate): Renamed from fastmap_accurate.
28944         (re_no_sub): Renamed from no_sub.
28945         (re_not_bol): Renamed from not_bol.
28946         (re_not_eol): Renamed from not_eol.
28947         (re_newline_anchor): Renamed from newline_anchor.
28948
28949         Change the following member names in struct re_registers.
28950         The old names are still supported if !_REGEX_SOURCE.
28951         The new names are always supported, regardless of _REGEX_SOURCE.
28952         (rm_num_regs): Renamed from num_regs.
28953         (rm_start): Renamed from start.
28954         (rm_end): Renamed from end.
28955
28956         (re_set_syntax, re_compile_pattern, re_compile_fastmap):
28957         (re_search, re_search_2, re_match, re_match_2, re_set_registers):
28958         Prepend __ to parameter names.
28959
28960         Undo yesterday's changes.
28961
28962 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
28963
28964         * config/srclist.txt: Remove glibc bug 1233 and add 1236, which
28965         supersedes it. Add glibc bugs 1237, 1238, 1240.  Comment out
28966         lib/regex.c.
28967
28968 2005-08-24  Jim Meyering  <jim@meyering.net>
28969
28970         Sync from coreutils.
28971         * m4/fcntl-safer.m4: New file.
28972
28973         * m4/xgetcwd.m4: Use AC_LIBSOURCES and AC_LIBOBJ to indicate source
28974         and object files for this module.
28975
28976 2005-08-24  Jim Meyering  <jim@meyering.net>
28977
28978         Sync from coreutils.
28979         * lib/fcntl--.h, lib/fcntl-safer.h, lib/open-safer.c: New files.
28980
28981 2005-08-24  Jim Meyering  <jim@meyering.net>
28982
28983         * modules/xgetcwd (Makefile.am): Remove `lib_SOURCES += ...' line,
28984         now that xgetcwd.m4 requires xgetcwd.c and xgetcwd.h.
28985
28986 2005-08-24  Jim Meyering  <jim@meyering.net>
28987
28988         * modules/fcntl-safer: New module.
28989         * modules/fts (Depends-on): Add fcntl-safer.
28990         * MODULES.html.sh (File descriptor based Input/Output):
28991         Add fcntl-safer.
28992
28993 2005-08-24  Bruno Haible  <bruno@clisp.org>
28994
28995         Support for unit test modules.
28996         * modules/README: Mention tests modules.
28997         * modules/TEMPLATE-TESTS: New file.
28998         * gnulib-tool: New options --extract-tests-module, --with-tests and
28999         --tests-base (unused for the moment).
29000         (testsbase, inctests): New variables.
29001         (func_all_modules): Exclude TEMPLATE-TESTS and *-tests.
29002         (func_verify_module): Exclude TEMPLATE-TESTS.
29003         (func_verify_nontests_module, func_verify_tests_module): New functions.
29004         (func_get_dependencies): Add implicit dependency for tests modules.
29005         (func_get_tests_module): New function.
29006         (func_modules_transitive_closure): When --with-tests was specified,
29007         include the unit tests as well, unless explicitly avoided.
29008         (func_emit_lib_Makefile_am): Ignore the tests modules here.
29009         (func_emit_tests_Makefile_am): New function.
29010         (func_create_testdir): When --with-tests was specified, emit a
29011         tests/ directory.
29012         * MODULES.html.sh (Future developments): Update.
29013
29014 2005-08-24  Bruno Haible  <bruno@clisp.org>
29015
29016         * modules/tls-tests: New file.
29017         * tests/test-tls.c: New file, from GNU gettext.
29018
29019 2005-08-24  Bruno Haible  <bruno@clisp.org>
29020
29021         * modules/lock-tests: New file.
29022         * tests/test-lock.c: New file, from GNU gettext.
29023
29024 2005-08-24  Bruno Haible  <bruno@clisp.org>
29025
29026         * lib/lock.h: Add multiple inclusion guard.
29027         * lib/tls.h: Add multiple inclusion guard.
29028
29029 2005-08-24  Bruno Haible  <bruno@clisp.org>
29030
29031         * gnulib-tool: Add support for the --aux-dir option to
29032         --create-testdir, --create-megatestdir, --test, --megatest.
29033         (func_create_testdir, func_create_megatestdir): Optionally emit a
29034         AC_CONFIG_AUX_DIR directive.
29035         (create-testdir, create-megatestdir, test, megatest): Provide a
29036         default value for $auxdir.
29037
29038 2005-08-24  Bruno Haible  <bruno@clisp.org>
29039
29040         * gnulib-tool (import): Use compound statement instead of subshell
29041         where possible.
29042
29043 2005-08-24  Bruno Haible  <bruno@clisp.org>
29044
29045         * gnulib-tool (import): Change --aux-dir default to "build-aux".
29046
29047 2005-08-24  Bruno Haible  <bruno@clisp.org>
29048
29049         * gnulib-tool (func_version): Update.
29050
29051 2005-08-24  Bruno Haible  <bruno@clisp.org>
29052
29053         * gnulib-tool (func_import, func_create_testdir,
29054         func_create_megatestdir): Quote all autoconf macro arguments.
29055
29056 2005-08-24  Bruno Haible  <bruno@clisp.org>
29057
29058         * gnulib-tool (func_create_megatestdir): Call autoreconf without the
29059         option --force, because --force causes the aclocal.m4 of each
29060         subdirectory to be newer than the corresponding config.h.in.
29061
29062 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
29063
29064         * m4/regex.m4 (gl_INCLUDED_REGEX): Remove; no longer used.
29065         All contents moved to gl_REGEX.
29066         (gl_REGEX): Don't bother checking whether lib/regex.c exists;
29067         assume that it does.
29068
29069 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
29070
29071         * lib/regex.h (REG_NOSYS)
29072         [!defined _XOPEN_SOURCE && 200112L <= _POSIX_C_SOURCE]:
29073         Define, since POSIX requires it as of 2001.
29074         (_REG_ENOSYS)
29075         [! (defined _XOPEN_SOURCE || 200112L <= _POSIX_C_SOURCE)]:
29076         New private symbol, used to keep the enum signed in all cases.
29077         * lib/regex.h (RE_NO_EMPTY_RANGES): Fix doc bug reported by James
29078         Youngman in
29079         <http://lists.gnu.org/archive/html/bug-gnulib/2005-07/msg00132.html>.
29080
29081         * lib/regex_internal.c (re_string_skip_chars, register_state):
29082         (calc_state_hash):
29083         Remove forward decls; no longer needed now that we use prototypes.
29084         * lib/regexec.c (acquire_init_state_context, check_halt_node_context):
29085         (proceed_next_node, pop_fail_stack, sub_epsilon_src_nodes):
29086         (clean_state_log_if_needed): Likewise.
29087
29088 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
29089
29090         * config/srclist.txt: Add glibc bugs 1231-1233.
29091
29092 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
29093
29094         Fix problems reported by Sam Steingold in
29095         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00007.html>.
29096         * lib/regexec.c (sift_states_bkref): Fix portability bug: the code
29097         assumed that reg_errcode_t is a signed type, which is not
29098         necessarily true if _XOPEN_SOURCE is not defined.
29099         * lib/regex_internal.c (calc_state_hash): Put 'inline' before type,
29100         since some compilers warn about it otherwise.
29101
29102 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
29103
29104         * lib/regcomp.c (create_initial_state): Remove duplicate decl.
29105         (init_word_char, create_initial_state, duplicate_node_closure):
29106         (fetch_token, peek_token_bracket, build_range_exp):
29107         (build_collating_symbol): Remove forward decls; no longer needed
29108         now that we use prototypes.
29109
29110         * lib/regcomp.c:
29111         (re_compile_pattern, re_set_syntax, re_compile_fastmap):
29112         (re_compile_fastmap_iter, regcomp, regerror, regfree):
29113         (re_compile_internal, init_dfa, init_word_char, free_workarea_compile):
29114         (create_initial_state, optimize_utf8, analyze, postorder, preorder):
29115         (optimize_subexps, lower_subexps, lower_subexp, calc_first, calc_next):
29116         (link_nfa_nodes, duplicate_node_closure, search_duplicated_node):
29117         (duplicate_node, calc_inveclosure, calc_eclosure, calc_eclosure_iter):
29118         (fetch_token, peek_token, peek_token_bracket, parse, parse_reg_exp):
29119         (parse_branch, parse_expression, parse_sub_exp, parse_dup_op):
29120         (build_range_exp, build_collating_symbol, parse_bracket_exp):
29121         (parse_bracket_element, parse_bracket_symbol, build_equiv_class):
29122         (build_charclass, build_charclass_op, fetch_number, create_tree):
29123         (create_token_tree, mark_opt_subexp, duplicate_tree):
29124         Use prototypes rather than old-style definitions.
29125
29126         * lib/regex_internal.c:
29127         (re_string_allocate, re_string_construct, re_string_realloc_buffers):
29128         (re_string_construct_common, build_wcs_buffer, build_wcs_upper_buffer):
29129         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
29130         (re_string_reconstruct, re_string_peek_byte_case):
29131         (re_string_fetch_byte_case, re_string_destruct, re_string_context_at):
29132         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
29133         (re_node_set_init_copy, re_node_set_add_intersect):
29134         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
29135         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
29136         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
29137         (re_acquire_state, re_acquire_state_context, register_state):
29138         (create_ci_newstate, create_cd_newstate, free_state):
29139         Likewise.
29140         * lib/regexec.c (regexec, re_match, re_search, re_match_2,
29141         re_search_2):
29142         (re_search_2_stub, re_search_stub, re_copy_regs, re_set_registers):
29143         (re_search_internal, prune_impossible_nodes):
29144         (acquire_init_state_context, check_matching, static):
29145         (check_halt_node_context, check_halt_state_context, proceed_next_node):
29146         (push_fail_stack, pop_fail_stack, set_regs, free_fail_stack_return):
29147         (update_regs, sift_states_backward, build_sifted_states):
29148         (clean_state_log_if_needed, merge_state_array):
29149         (update_cur_sifted_state, add_epsilon_src_nodes):
29150         (sub_epsilon_src_nodes, check_dst_limits, check_dst_limits_calc_pos_1):
29151         (check_dst_limits_calc_pos, check_subexp_limits, sift_states_bkref):
29152         (sift_states_iter_mb, transit_state, merge_state_with_log, static):
29153         (find_recover_state, check_subexp_matching_top, transit_state_mb):
29154         (transit_state_bkref, get_subexp, get_subexp_sub, find_subexp_node):
29155         (check_arrival, check_arrival_add_next_nodes):
29156         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
29157         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
29158         (check_node_accept_bytes, check_node_accept, extend_buffers):
29159         (match_ctx_init, match_ctx_clean, match_ctx_free, match_ctx_add_entry):
29160         (search_cur_bkref_entry, match_ctx_add_subtop, match_ctx_add_sublast):
29161         (sift_ctx_init):
29162         Likewise.
29163
29164         * lib/regex_internal.h:
29165         (re_string_allocate, re_string_construct, re_string_reconstruct):
29166         (re_string_realloc_buffers, build_wcs_buffer, build_wcs_upper_buffer):
29167         (build_upper_buffer, re_string_translate_buffer, re_string_destruct):
29168         (re_string_elem_size_at, re_string_char_size_at, re_string_wchar_at):
29169         (re_string_context_at, re_string_peek_byte_case):
29170         (re_string_fetch_byte_case): Declare even if RE_NO_INTERNAL_PROTOTYPES
29171         is defined, since we now use prototypes always.
29172
29173         * lib/regex.h (_RE_ARGS): Remove.  No longer needed, since we assume
29174         C89 or better.  All uses removed.
29175
29176 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
29177
29178         * config/srclist.txt: Add glibc bugs 1220-1227.
29179
29180 2005-08-20  Jim Meyering  <jim@meyering.net>
29181
29182         * lib/regexec.c (regexec, re_search_stub) [!_LIBC]: Omit declaration
29183         of unused local, dfa.
29184
29185 2005-08-20  Bruno Haible  <bruno@clisp.org>
29186
29187         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_GNU_SOURCE.
29188
29189 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
29190
29191         * lib/regex_internal.c (re_string_realloc_buffers, re_node_set_insert):
29192         (re_node_set_insert_last, re_dfa_add_node):
29193         Rename local variables to avoid GCC shadowing warnings.
29194
29195 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
29196
29197         * lib/regex_internal.c (re_acquire_state, re_acquire_state_context)
29198         [defined lint]: Suppress bogus uninitialized-variable warnings.
29199
29200         * lib/regcomp.c (duplicate_node): Return new index, not an error code,
29201         and let the caller return REG_ESPACE if out of space.  This
29202         removes an uninitialied-variable warning with GCC 4.0.1, and also
29203         avoids taking the address of a local variable.  All callers
29204         changed.
29205
29206 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
29207
29208         * config/srclist.txt: Comment out $LIBCSRC/posix/regex_internal.c,
29209         $LIBCSRC/posix/regexec.c.
29210         Add glibc bug 1217 for regcomp.c.
29211
29212 2005-08-19  Jim Meyering  <jim@meyering.net>
29213
29214         * lib/regexec.c (proceed_next_node): Redo local variables to
29215         avoid GCC shadowing warnings.
29216
29217 2005-08-18  Bruno Haible  <bruno@clisp.org>
29218
29219         * lib/strstr.c (strstr): Fix return value in multibyte case.
29220         * lib/strcasestr.c (strcasestr): Likewise.
29221
29222 2005-08-17  Paul Eggert  <eggert@cs.ucla.edu>
29223
29224         * lib/regex.h: Remove useless space-before-tab.  From coreutils.
29225
29226 2005-08-17  Jim Meyering  <jim@meyering.net>
29227
29228         Make the %s format (seconds since the epoch) work for a negative
29229         number and when used with a zero-padded field width, e.g. %015s.
29230
29231         * lib/strftime.c (my_strftime): Move the `do_number_sign_and_padding'
29232         label so that it precedes the code to set `digits'.  Otherwise,
29233         %0Ns wouldn't work.  Before this change, `date -d @-22 +%05s' would
29234         print `00-22'.  Now, it prints `-0022', as it should.
29235
29236 2005-08-17  Bruno Haible  <bruno@clisp.org>
29237
29238         * modules/strstr (Files): Add m4/mbrtowc.m4.
29239         (Depends-on): Add mbuiter.
29240
29241 2005-08-17  Bruno Haible  <bruno@clisp.org>
29242
29243         * modules/strcasestr: New file.
29244         * MODULES.html.sh (String handling, based on ANSI C 89): Add
29245         strcasestr.
29246
29247 2005-08-17  Bruno Haible  <bruno@clisp.org>
29248
29249         * modules/strcase (Depends-on): Add mbuiter. Remove strnlen1, mbchar.
29250
29251 2005-08-17  Bruno Haible  <bruno@clisp.org>
29252
29253         * modules/mbuiter: New file.
29254         * MODULES.html.sh (Extended multibyte and wide character utilities):
29255         Add mbuiter.
29256
29257 2005-08-17  Bruno Haible  <bruno@clisp.org>
29258
29259         * m4/strstr.m4 (gl_FUNC_STRSTR): Use the replacement function always.
29260         (gl_PREREQ_STRSTR): Use gl_FUNC_MBRTOWC.
29261
29262 2005-08-17  Bruno Haible  <bruno@clisp.org>
29263
29264         * m4/strcasestr.m4: New file.
29265
29266 2005-08-17  Bruno Haible  <bruno@clisp.org>
29267
29268         * lib/strstr.h: Ignore HAVE_STRSTR, always declare the gnulib function.
29269         * lib/strstr.c: Completely rewritten, with multibyte locale support.
29270
29271 2005-08-17  Bruno Haible  <bruno@clisp.org>
29272
29273         * lib/strcasestr.h: New file.
29274         * lib/strcasestr.c: New file.
29275
29276 2005-08-17  Bruno Haible  <bruno@clisp.org>
29277
29278         * lib/strcasecmp.c: Use mbuiter.h.
29279
29280 2005-08-17  Bruno Haible  <bruno@clisp.org>
29281
29282         * lib/mbuiter.h: New file.
29283
29284 2005-08-16  Paul Eggert  <eggert@cs.ucla.edu>
29285
29286         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Do not override the results
29287         of gl_GETOPT_SUBSTITUTE.  That way, if both gl_GETOPT_SUBSTITUTE
29288         and gl_GETOPT are both invoked via different paths (as happens
29289         with GNU tar CVS because it uses both argp and getopt), the former
29290         wins.
29291
29292 2005-08-16  Bruno Haible  <bruno@clisp.org>
29293
29294         * modules/tls: New file.
29295         * MODULES.html.sh (Multithreading): Add tls.
29296
29297 2005-08-16  Bruno Haible  <bruno@clisp.org>
29298
29299         * modules/strnlen1: New file.
29300         * MODULES.html.sh (String handling): Add strnlen1.
29301
29302 2005-08-16  Bruno Haible  <bruno@clisp.org>
29303
29304         * modules/strcase (Files): Add m4/mbrtowc.m4.
29305         (Depends-on): Add strnlen1, mbchar.
29306
29307 2005-08-16  Bruno Haible  <bruno@clisp.org>
29308
29309         * modules/mbiter: New file.
29310         * MODULES.html.sh (Extended multibyte and wide character utilities):
29311         Add mbiter.
29312
29313 2005-08-16  Bruno Haible  <bruno@clisp.org>
29314
29315         * modules/mbfile: New file.
29316         * MODULES.html.sh (Extended multibyte and wide character utilities):
29317         Add mbfile.
29318
29319 2005-08-16  Bruno Haible  <bruno@clisp.org>
29320
29321         * modules/mbchar: New file.
29322         * MODULES.html.sh (Extended multibyte and wide character utilities):
29323         New section.
29324
29325 2005-08-16  Bruno Haible  <bruno@clisp.org>
29326
29327         * m4/tls.m4: New file, from GNU gettext.
29328
29329 2005-08-16  Bruno Haible  <bruno@clisp.org>
29330
29331         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Use the replacement function
29332         always.
29333         (gl_PREREQ_STRCASECMP): Use gl_FUNC_MBRTOWC.
29334
29335 2005-08-16  Bruno Haible  <bruno@clisp.org>
29336
29337         * m4/mbiter.m4: New file.
29338
29339 2005-08-16  Bruno Haible  <bruno@clisp.org>
29340
29341         * m4/mbfile.m4: New file.
29342
29343 2005-08-16  Bruno Haible  <bruno@clisp.org>
29344
29345         * m4/mbchar.m4: New file.
29346
29347 2005-08-16  Bruno Haible  <bruno@clisp.org>
29348
29349         * lib/tls.h: New file, from GNU gettext.
29350         * lib/tls.c: New file, from GNU gettext.
29351
29352 2005-08-16  Bruno Haible  <bruno@clisp.org>
29353
29354         * lib/strnlen1.h: New file.
29355         * lib/strnlen1.c: New file.
29356
29357 2005-08-16  Bruno Haible  <bruno@clisp.org>
29358
29359         * lib/strcasecmp.c (struct mbiter_multi): Remove at_end field.
29360         (mbi_init): Update.
29361         (mbi_avail, mbi_advance): Let the iteration end before the terminating
29362         NUL byte, not after it.
29363
29364 2005-08-16  Bruno Haible  <bruno@clisp.org>
29365
29366         * lib/strcase.h (strcasecmp): Add note in comments.
29367         * lib/strncasecmp.c: Use code from strcasecmp.c.
29368         * lib/strcasecmp.c: Use mbchar module. Define private mbiter variant.
29369         (strcasecmp): Work correctly in multibyte locales.
29370
29371 2005-08-16  Bruno Haible  <bruno@clisp.org>
29372
29373         * lib/mbiter.h: New file.
29374
29375 2005-08-16  Bruno Haible  <bruno@clisp.org>
29376
29377         * lib/mbfile.h: New file.
29378
29379 2005-08-16  Bruno Haible  <bruno@clisp.org>
29380
29381         * lib/mbchar.h: New file.
29382         * lib/mbchar.c: New file.
29383
29384 2005-08-16  Bruno Haible  <bruno@clisp.org>
29385
29386         * lib/mbchar.h (mb_cmp, mb_casecmp): Order the invalid characters after
29387         the valid ones. Makes the comparison operations transitive:
29388         cmp (a, b) < 0 && cmp (b, c) < 0 ==> cmp (a, c) < 0.
29389         * lib/strcasecmp.c (strcasecmp): Use mb_casecmp.
29390
29391 2005-08-15  Simon Josefsson  <jas@extundo.com>
29392
29393         * modules/ssize_t (License): Change to 'unlimited'.
29394
29395         * gnulib-tool (sed_extract_prog): Recognize 'unlimited' license.
29396
29397 2005-08-15  Paul Eggert  <eggert@cs.ucla.edu>
29398
29399         * config/srclist.txt: Comment out $LIBCSRC/posix/regex.h.
29400         Add comments for each pending glibc patch.
29401
29402 2005-08-15  Bruno Haible  <bruno@clisp.org>
29403
29404         * lib/regex.h (__restrict_arr): Don't define to __restrict if
29405         __cplusplus is defined.
29406
29407 2005-08-14  Jim Meyering  <jim@meyering.net>
29408
29409         Sync from coreutils.
29410
29411         * lib/fts-cycle.c (setup_dir, enter_dir, leave_dir, free_dir):
29412         Use the hash-table-based cycle-detection code not just when
29413         FTS_TIGHT_CYCLE_CHECK if specified, but also with FTS_LOGICAL.
29414         Reported by James Youngman in
29415         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00011.html>.
29416         * lib/fts_.h: Mention that with FTS_LOGICAL, we use
29417         FTS_TIGHT_CYCLE_CHECK.
29418         * lib/fts.c (fts_cross_check) [FTS_DEBUG]:
29419         s/active_dir_ht/fts_cycle.ht/. This lets us compile with -DFTS_DEBUG,
29420         once again.
29421         * lib/fts.c [! _LIBC]: Include "lstat.h" rather than rolling our own.
29422         * lib/fts.c (fd_safer): Remove decl.
29423         Include fcntl--.h rather than unistd-safer.h
29424         (fts_safe_changedir): Don't call fd_safer; no longer needed
29425         now that we include fcntl--.h.
29426
29427 2005-08-12  Simon Josefsson  <jas@extundo.com>
29428
29429         * modules/getndelim2: Use ssize_t module.
29430         * modules/getnline: Likewise.
29431         * modules/safe-read: Likewise.
29432         * modules/xreadlink: Likewise.
29433
29434         * modules/ssize_t: New file.
29435
29436 2005-08-12  Simon Josefsson  <jas@extundo.com>
29437
29438         * m4/readline.m4: Look for termcap, curses or ncurses if required.
29439
29440 2005-08-12  Simon Josefsson  <jas@extundo.com>
29441
29442         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
29443         ssize_t.
29444
29445 2005-08-12  Simon Josefsson  <jas@extundo.com>
29446
29447         * MODULES.html.sh (Extra functions based on ANSI C 89: Misc): Add
29448         readline, getdelim and check_version.
29449         (Support for systems lacking ISO C 99: Sizes of integer types):
29450         Add size_max.
29451
29452 2005-08-12  Bruno Haible  <bruno@clisp.org>
29453
29454         * m4/readline.m4 (gl_FUNC_READLINE): Look for ncurses first.
29455
29456 2005-08-11  Simon Josefsson  <jas@extundo.com>
29457
29458         * modules/readline: New file.
29459
29460         * modules/strnlen (Files): Add strnlen.h.
29461
29462 2005-08-11  Simon Josefsson  <jas@extundo.com>
29463
29464         * m4/readline.m4: New file.
29465
29466 2005-08-11  Simon Josefsson  <jas@extundo.com>
29467
29468         * lib/readline.h, readline.c: New file.
29469
29470 2005-08-11  Simon Josefsson  <jas@extundo.com>
29471
29472         * doc/gnulib.texi (Initial import, Finishing touches): Mention
29473         gl_AVOID.
29474
29475 2005-08-11  Bruno Haible  <bruno@clisp.org>
29476
29477         * lib/strnlen.h (strnlen): Change parameter name to match comment.
29478
29479 2005-08-10  Stepan Kasal  <kasal@ucw.cz>
29480
29481         * m4/onceonly_2_57.m4: Really require Autoconf 2.57.
29482
29483 2005-08-10  Simon Josefsson  <jas@extundo.com>
29484
29485         * tests/test-iconvme.c: New file.
29486
29487 2005-08-10  Simon Josefsson  <jas@extundo.com>
29488
29489         * m4/strnlen.m4: New file.
29490
29491         * m4/strndup.m4: Don't check for strnlen declaration, done in
29492         strnlen.m4.
29493
29494 2005-08-10  Simon Josefsson  <jas@extundo.com>
29495
29496         * lib/strndup.c: Use strnlen.h.
29497
29498         * lib/strnlen.h: New file.
29499
29500 2005-08-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
29501
29502         * README: Typos.
29503
29504 2005-08-02  Simon Josefsson  <jas@extundo.com>
29505
29506         * modules/readline: New file.
29507
29508 2005-08-02  Simon Josefsson  <jas@extundo.com>
29509
29510         * modules/getdelim: New file.
29511
29512         * modules/getline: Rewrite, don't use getndelim2.
29513
29514 2005-08-02  Simon Josefsson  <jas@extundo.com>
29515
29516         * m4/getline.m4: Separate out getdelim stuff into separate module.
29517
29518         * m4/getdelim.m4: New file.
29519
29520 2005-08-02  Simon Josefsson  <jas@extundo.com>
29521
29522         * lib/getline.h, getline.c: Rewrite.
29523
29524         * lib/getdelim.h, lib/getdelim.c: New files, ported from glibc.
29525
29526 2005-07-31  Bruno Haible  <bruno@clisp.org>
29527
29528         * lib/lock.h (gl_lock_initializer): New macro.
29529         (gl_lock_define_initialized): Use it.
29530         (gl_rwlock_initializer): New macro.
29531         (gl_rwlock_define_initialized): Use it.
29532         (gl_recursive_lock_initializer): New macro.
29533         (gl_recursive_lock_define_initialized): Use it.
29534
29535 2005-07-30  Karl Berry  <karl@gnu.org>
29536
29537         * doc/gnulib.texi (Initial import): mention -I$(top_builddir)/lib.
29538         Report from Ben Pfaff, regarding getopt.
29539
29540 2005-07-26  Paul Eggert  <eggert@cs.ucla.edu>
29541
29542         Add support to getopt for Emacs, which doesn't use LIBOBJS in the
29543         normal way.
29544         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE_HEADER): New macro.
29545         (gl_GETOPT_SUBSTITUTE): Use it.  Invoke gl_PREREQ_GETOPT.
29546         (gl_GETOPT_IFELSE, gl_GETOPT_CHECK_HEADERS): New macros.
29547         (gl_GETOPT): Use the new macros.  Most of the implementation
29548         is moved to the new macros.  This is for programs like Emacs
29549         that don't want all the functionality of gl_GETOPT.
29550
29551 2005-07-26  Bruno Haible  <bruno@clisp.org>
29552
29553         * m4/lock.m4: Update from GNU gettext.
29554
29555 2005-07-26  Bruno Haible  <bruno@clisp.org>
29556
29557         * lib/lock.h: Update from GNU gettext.
29558         * lib/lock.c: Update from GNU gettext.
29559
29560 2005-07-25  Paul Eggert  <eggert@cs.ucla.edu>
29561
29562         * m4/regex.m4 (gl_INCLUDED_REGEX): Use AC_RUN_IFELSE instead of the
29563         obsolescent AC_TRY_RUN.  Include the default includes files, for
29564         'exit'.
29565
29566 2005-07-24  Bruno Haible  <bruno@clisp.org>
29567
29568         * modules/visibility: New file.
29569         * MODULES.html.sh (Misc): Add visibility.
29570
29571 2005-07-24  Bruno Haible  <bruno@clisp.org>
29572
29573         * m4/visibility.m4: New file.
29574
29575 2005-07-24  Bruno Haible  <bruno@clisp.org>
29576
29577         * doc/visibility.texi: New file.
29578
29579 2005-07-22  Bruno Haible  <bruno@clisp.org>
29580
29581         * modules/alloca-opt (Makefile.am): Remove explicit dependency on
29582         $(ALLOCA_H), redundant through BUILT_SOURCES.
29583         * modules/argz (Makefile.am): Remove explicit dependency on $(ARGZ_H),
29584         redundant through BUILT_SOURCES.
29585         * modules/byteswap (Makefile.am): Remove explicit dependency on
29586         $(BYTESWAP_H), redundant through BUILT_SOURCES.
29587         * modules/fnmatch (Makefile.am): Remove explicit dependency on
29588         $(FNMATCH_H), redundant through BUILT_SOURCES.
29589         * modules/getopt (Makefile.am): Remove explicit dependency on
29590         $(GETOPT_H), redundant through BUILT_SOURCES.
29591         * modules/glob (Makefile.am): Remove explicit dependency on $(GLOB_H),
29592         redundant through BUILT_SOURCES.
29593         * modules/poll (Makefile.am): Remove explicit dependency on $(POLL_H),
29594         redundant through BUILT_SOURCES.
29595         * modules/stdbool (Makefile.am): Remove explicit dependency on
29596         $(STDBOOL_H), redundant through BUILT_SOURCES.
29597         * modules/stdint (Makefile.am): Remove explicit dependency on
29598         $(STDINT_H), redundant through BUILT_SOURCES.
29599         * modules/sysexits (Makefile.am): Add $(SYSEXITS_H) to BUILT_SOURCES.
29600         Remove explicit dependency on $(SYSEXITS_H).
29601         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>.
29602
29603 2005-07-18  Simon Josefsson  <jas@extundo.com>
29604
29605         * lib/check-version.c (check_version): Accept identical versions too.
29606
29607 2005-07-18  Bruno Haible  <bruno@clisp.org>
29608
29609         * modules/lock: New file.
29610         * MODULES.html.sh (Multithreading): New section.
29611
29612 2005-07-18  Bruno Haible  <bruno@clisp.org>
29613
29614         * m4/lock.m4: New file, from GNU gettext.
29615
29616 2005-07-18  Bruno Haible  <bruno@clisp.org>
29617
29618         * lib/lock.h: New file, from GNU gettext.
29619         * lib/lock.c: New file, from GNU gettext.
29620
29621 2005-07-18  Bruno Haible  <bruno@clisp.org>
29622
29623         * lib/lock.h (gl_once_t): New type.
29624         (gl_once_define, gl_once): New macros.
29625         * lib/lock.c (fresh_once): New variable.
29626         (glthread_once, glthread_once_call, glthread_once_singlethreaded): New
29627         functions.
29628
29629 2005-07-16  Simon Josefsson  <jas@extundo.com>
29630
29631         * doc/gnulib.texi (Library version handling): Add ELF symbol collision
29632         workaround, suggested by Bruno.
29633
29634 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
29635
29636         * modules/xalloc (Depends-on): Add xalloc-die.
29637         * modules/xvasprintf (Depends-on): Add xalloc-die.
29638
29639 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
29640
29641         * lib/quotearg.c: Add translator comment suggested by Bruno Haible,
29642         with a minor change.
29643
29644 2005-07-15  Bruno Haible  <bruno@clisp.org>
29645
29646         * m4/poll.m4 (gl_FUNC_POLL): Check against MacOS X 10.4 poll() bug.
29647         When using lib/poll.c, define poll as rpl_poll.
29648
29649 2005-07-14  Paul Eggert  <eggert@cs.ucla.edu>
29650
29651         * modules/argp (Depends-on): Remove unlocked-io.
29652
29653 2005-07-14  Derek Price  <derek@ximbiot.com>
29654
29655         * m4/glob.m4 (gl_GLOB): Cache glob interface check result.  Add check
29656         for glob symlink bug.
29657
29658 2005-07-14  Bruno Haible  <bruno@clisp.org>
29659
29660         * m4/argp.m4 (gl_ARGP): Remove invocation of gl_FUNC_GLIBC_UNLOCKED_IO.
29661         Instead, test for *_unlocked function declarations directly.
29662
29663 2005-07-11  Simon Josefsson  <jas@extundo.com>
29664
29665         * modules/size_max: New file.
29666
29667         * modules/xsize: Depend on size_max module for size_max.m4.
29668
29669 2005-07-11  Simon Josefsson  <jas@extundo.com>
29670
29671         * lib/size_max.h: New file.
29672
29673 2005-07-11  Paul Eggert  <eggert@cs.ucla.edu>
29674
29675         * lib/version-etc-fsf.c (version_etc_copyright): Parameterize the
29676         copyright symbol and the year.
29677         * lib/version-etc.c (COPYRIGHT_YEAR): New constant.
29678         (version_etc_va): Use parameterized copyright notice.
29679         Reword to conform to the current GNU coding standards.
29680
29681 2005-07-11  Karl Berry  <karl@gnu.org>
29682
29683         * doc/gnulib.texi (Quoting): new node.
29684         (Initial import): more info, from Patrice.
29685
29686 2005-07-11  Bruno Haible  <bruno@clisp.org>
29687
29688         * gnulib-tool (func_usage): Document option --avoid.
29689         (Command line options): Handle --avoid.
29690         (func_acceptable): New function.
29691         (func_modules_transitive_closure): Use it.
29692
29693 2005-07-11  Bruno Haible  <bruno@clisp.org>
29694
29695         * MODULES.html.sh: Use shortcut URLs to the www.opengroup.org site.
29696         Reported by Jim Meyering.
29697
29698 2005-07-10  Bruno Haible  <bruno@clisp.org>
29699
29700         * m4/size_max.m4 (gl_SIZE_MAX): Cast ~(size_t)0 back to size_t.
29701         Needed when size_t is smaller than 'unsigned int'.
29702         Reported by Paul Eggert.
29703
29704 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
29705
29706         * modules/argp (Depends-on): Add unlocked-io
29707
29708 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
29709
29710         * lib/argp-namefrob.h: Include unlocked-io.h. Removed unnecessary
29711         block of defines.
29712
29713 2005-07-08  Paul Eggert  <eggert@cs.ucla.edu>
29714
29715         * config/srclist.txt: Comment out regcomp.c, since we have a porting
29716         fix now.
29717
29718 2005-07-08  Eric Blake  <ebb9@byu.net>  (tiny change)
29719         and Paul Eggert  <eggert@cs.ucla.edu>
29720
29721         * lib/regcomp.c (init_dfa, build_range_exp): Store __btowc value
29722         in wint_t, not wchar_t.  Remove now-unnecessary cast.
29723
29724 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
29725
29726         * modules/regex (Files): Add lib/regex_internal.c,
29727         lib/regex_internal.h, lib/regexec.c, lib/regcomp.c, m4/codeset.m4.
29728         (Depends-on): Add extensions.
29729         (Makefile.am): Remove lib_SOURCES; now done by m4 code.
29730
29731 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
29732
29733         * m4/backupfile.m4 (gl_BACKUPFILE): Use AC_CHECK_FUNCS_ONCE on
29734         pathconf.
29735         * m4/same.m4 (gl_SAME): Likewise.
29736         Require AC_SYS_LONG_FILE_NAMES; bug reported by Gerrit P. Haase.
29737
29738         * m4/regex.m4: Adjust to new libc regex implementation.
29739         (gl_INCLUDED_REGEX): Add AC_LIBSOURCES for
29740         all the .c and .h parts of (the new) regex.
29741         Quote the m4 stuff better.
29742         Check for RE_ICASE bug of old gnulib.
29743         Check for REG_STARTEND of recent libc.
29744         Rename local variables from jm_* to gl_*.
29745         Quote operand of "test -f".
29746         Say "recent enough" version of libc, not "version 2".
29747         (gl_PREREQ_REGEX): Remove AC_FUNC_ALLOCA, since alloca is a
29748         prerequisite module.  Remove AC_HEADER_STDC; no longer needed.
29749         Check for locale.h, isblank, mbrtowc, wcrtomb, wcscoll.
29750         Remove check for btowc, isascii.
29751         Require AM_LANGINFO_CODESET.
29752
29753 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
29754
29755         * lib/regex.c, regex.h: Sync from libc.
29756         * lib/regcomp.c, lib/regexec_internal.c, lib/regex_internal.h:
29757         * lib/regexec.c:
29758         New files, synced from libc, except that regex_internal.h
29759         currently has a small porting fix.
29760
29761 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
29762
29763         * config/srclist.txt: Add regcomp.c, regex.c, regex.h,
29764         regex_internal.c, regexec.c.
29765         Add regex_internal.h too, but as a comment, since the libc version
29766         is currently broken in gnulib mode.
29767
29768 2005-07-06  Paul Eggert  <eggert@cs.ucla.edu>
29769
29770         Support programs like Emacs that use gnulib but not gettext.
29771         * MODULES.html.sh (Internationalization functions): Add gettext-h.
29772         * modules/gettext-h: New file.
29773         * modules/gettext (Files): Remove lib/gettext.h.
29774         (Depends-on): Add gettext-h.
29775         (Makefile.am): Remove lib_SOURCES.
29776         * modules/argmatch, modules/c-stack, modules/closeout:
29777         * modules/copy-file, modules/csharpcomp, modules/csharpexec:
29778         * modules/execute, modules/file-type, modules/getaddrinfo:
29779         * modules/getopt, modules/human, modules/javacomp:
29780         * modules/javaexec, modules/mkdir-p, modules/obstack:
29781         * modules/openat, modules/pagealign_alloc, modules/pipe:
29782         * modules/quotearg, modules/regex, modules/rpmatch:
29783         * modules/unicodeio, modules/userspec, modules/version-etc:
29784         * modules/wait-process, modules/xalloc-die, modules/xmemcoll:
29785         * modules/xsetenv:
29786         Depend on gettext-h, not gettext.
29787
29788 2005-07-05  Paul Eggert  <eggert@cs.ucla.edu>
29789
29790         * gnulib-tool (func_import): Add support for 'public domain' license.
29791         * modules/alloca, modules/atexit, modules/memmove:
29792         Now public domain, not GPL.
29793         * modules/dup2, modules/getpagesize, modules/malloc, modules/memset:
29794         * modules/realloc, modules/strerror, modules/strtod:
29795         Now LGPL, not GPL.
29796
29797 2005-07-05  Bruno Haible  <bruno@clisp.org>
29798
29799         * m4/mbrtowc.m4 (gl_FUNC_MBRTOWC): Upgrade to version from current
29800         autoconf CVS. Needed for mingw.
29801
29802 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
29803
29804         Remove the dependency of the strftime module on the tzset module.
29805         * modules/strftime (Depends-on): Remove dependency on tzset.
29806
29807 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
29808
29809         Remove the dependency of the strftime module on the tzset module.
29810         * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't require
29811         gl_FUNC_TZSET_CLOBBER.
29812
29813 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
29814
29815         Remove the dependency of the strftime module on the tzset module.
29816         * lib/strftime.c (my_strftime)
29817         [! defined _LIBC && ! HAVE_RUN_TZSET_TEST]:
29818         Copy the input structure, to work around some of the bug with
29819         Solaris 2.5.1 and Solaris 2.6.  If you still care about these old
29820         Solaris releases, you should also use the tzset module, but we won't
29821         require it as a dependency any more since we don't want LGPLed code
29822         to depend on GPLed code.
29823
29824 2005-07-02  Jim Meyering  <jim@meyering.net>
29825
29826         * m4/chown.m4, cloexec.m4, dup2.m4, fsusage.m4:
29827         * m4/getcwd-path-max.m4, getcwd.m4, mkstemp.m4, mountlist.m4:
29828         * m4/pagealign_alloc.m4, save-cwd.m4, unistd-safer.m4:
29829         Don't check for fcntl.h, and don't test for HAVE_FCNTL_H.
29830
29831 2005-07-02  Jim Meyering  <jim@meyering.net>
29832
29833         * lib/backupfile.c (backup_args): Change a `0' to NULL.
29834
29835 2005-07-01  Paul Eggert  <eggert@cs.ucla.edu>
29836
29837         * lib/xnanosleep.c: Include timespec.h, since OpenBSD 3.4 <time.h>
29838         declares only 'struct timespec;' (!).
29839
29840 2005-07-01  Jim Meyering  <jim@meyering.net>
29841
29842         * lib/chown.c, cloexec.c, dup-safer.c, dup2.c, fsusage.c, getcwd.c:
29843         * lib/getloadavg.c, mountlist.c, openat.h, pagealign_alloc.c:
29844         * lib/save-cwd.c, tempname.c:
29845         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
29846         and don't include <sys/file.h>).
29847
29848 2005-06-29  Jim Meyering  <jim@meyering.net>
29849
29850         * lib/mkdir-p.c (make_dir_parents): Don't apply sizeof to a hard-coded
29851         type name.  Use the variable name instead.
29852         * lib/idcache.c (getuser, getuidbyname, getgroup, getgidbyname):
29853         Likewise.
29854
29855 2005-06-28  Simon Josefsson  <jas@extundo.com>
29856
29857         * modules/check-version (Files): Add check-version.m4.
29858
29859 2005-06-28  Simon Josefsson  <jas@extundo.com>
29860
29861         * m4/check-version.m4: New file, suggested by Jim Meyering
29862         <jim@meyering.net>.
29863
29864 2005-06-28  Simon Josefsson  <jas@extundo.com>
29865
29866         * lib/check-version.h, lib/check-version.c: New files.
29867
29868 2005-06-28  Simon Josefsson  <jas@extundo.com>
29869
29870         * lib/base64.c (base64_encode): Indent.  Rename 'b64' to avoid
29871         collision with global variable.  Better indentation.  Don't
29872         increment buffer pointer beyond buffer end.  Based on comments
29873         from Paul Eggert <eggert@cs.ucla.edu>.
29874
29875         * lib/base64.h: Indent.
29876
29877 2005-06-28  Simon Josefsson  <jas@extundo.com>
29878
29879         * doc/gnulib.texi (Library version handling): New section.
29880
29881 2005-06-28  Jim Meyering  <jim@meyering.net>
29882
29883         * check-module (find_included_lib_files): Hard-code another
29884         pair of exceptions: fts.c includes fts-cycle.c and unistd-safer.h
29885         but modules/fts-lgpl (correctly) does not list those files.
29886
29887         * modules/canonicalize (Files): Add lib/pathmax.h.
29888
29889 2005-06-25  Simon Josefsson  <jas@extundo.com>
29890
29891         * modules/check-version: New file.
29892
29893 2005-06-24  Paul Eggert  <eggert@cs.ucla.edu>
29894
29895         * lib/canon-host.c (canon-host): Append trailing "," to 0 in
29896         initializer of struct addrinfo, as an indication that we don't
29897         care how many members the structure has.
29898
29899 2005-06-24  Derek Price  <derek@ximbiot.com>
29900         and Bruno Haible  <bruno@clisp.org>
29901
29902         Remove stat module & update lstat.
29903         * m4/lstat.m4 (gl_FUNC_LSTAT): Drop AC_FUNC_LSTAT in favor of
29904         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
29905         * m4/stat.m4: Remove this file.
29906
29907 2005-06-24  Derek Price  <derek@ximbiot.com>
29908         and Bruno Haible  <bruno@clisp.org>
29909
29910         Remove stat module & update lstat.
29911         * lib/stat.c: Remove this file...
29912         (slash_aware_lstat): ...moving this content and its support...
29913         * lib/lstat.c (rpl_lstat): ...into here.
29914         * lib/lstat.h: New file.
29915
29916 2005-06-24  Derek Price  <derek@ximbiot.com>
29917         and Bruno Haible  <bruno@clisp.org>
29918
29919         Remove stat module & update lstat.
29920         * config/srclist.txt (libc sources): Remove stat.
29921
29922 2005-06-24  Derek Price  <derek@ximbiot.com>
29923         and Bruno Haible  <bruno@clisp.org>
29924
29925         Remove stat module & update lstat.
29926         * MODULES.html.sh (stat): Remove.
29927         * MODULES.html: Regenerated.
29928         * modules/lstat (Description): Correct function name.
29929         (Files): Add "lstat.h".
29930         (Depends-on): Remove stat, add xalloc, stat-macros.
29931         * modules/stat: Remove this file.
29932         (Include): Add "lstat.h", remove <sys/stat.h>.
29933
29934 2005-06-23  Paul Eggert  <eggert@cs.ucla.edu>
29935
29936         * lib/mktime.c: Include <string.h> even if !DEBUG.  (From glibc.)
29937         (ranged_convert): Don't save conversion in a temporary struct.
29938         This causes a warning with GCC 4.0.0, and anyway in the typical
29939         case it's not worth the extra 100 bytes or so of code.
29940         (ranged_convert, __mktime_internal): When calling a function via a
29941         pointer P, use P () rather than (*P) (), as we now assume C89 or
29942         better.
29943
29944 2005-06-22  Paul Eggert  <eggert@cs.ucla.edu>
29945
29946         * lib/readutmp.c (desirable_utmp_entry): Fix bug where "who -b" and
29947         "who -r" failed to give output.  Problem reported by Tim Waugh.
29948
29949         * lib/xmalloc.c (HAVE_GNU_CALLOC): New constant.
29950         (xcalloc): Use it to avoid needless tests.
29951         Problem reported by Jim Meyering.
29952
29953 2005-06-20  Derek Price  <derek@ximbiot.com>
29954
29955         * m4/bison.m4: Note that precious decls of YACC & YFLAGS will be
29956         unnecessary for Autoconfs > 2.59c.
29957
29958 2005-06-16  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
29959
29960         * lib/argp.h (__option_is_short): Check upper limit of
29961         __key. Isprint() requires its argument to have the value
29962         of an unsigned char or EOF.
29963
29964 2005-06-16  Jim Meyering  <jim@meyering.net>
29965
29966         * lib/calloc.c (rpl_calloc): Allocate a 1-byte buffer (not 1xS or Nx1)
29967         when either N or S is zero.
29968
29969 2005-06-16  Derek Price  <derek@ximbiot.com>
29970
29971         * m4/bison.m4: Declare YACC & YFLAGS precious.
29972
29973 2005-06-10  Paul Eggert  <eggert@cs.ucla.edu>
29974
29975         * lib/fnmatch.c (fnmatch): If there is an encoding error in a
29976         multibyte string or pattern, fall back on unibyte matching.
29977         Problem reported by James Youngman.
29978
29979 2005-06-08  Bruno Haible  <bruno@clisp.org>
29980
29981         * modules/csharpcomp: New file.
29982         * MODULES.html.sh (C#): Add csharpcomp.
29983
29984 2005-06-08  Bruno Haible  <bruno@clisp.org>
29985
29986         * m4/csharpcomp.m4: New file, from GNU gettext.
29987
29988 2005-06-08  Bruno Haible  <bruno@clisp.org>
29989
29990         * lib/csharpcomp.h: New file, from GNU gettext.
29991         * lib/csharpcomp.c: New file, from GNU gettext.
29992         * lib/csharpcomp.sh.in: New file, from GNU gettext.
29993
29994 2005-06-08  Bruno Haible  <bruno@clisp.org>
29995
29996         * lib/binary-io.h (fileno): Undefine before defining it. Avoids a gcc
29997         warning on mingw.
29998
29999 2005-06-07  Derek Price  <derek@ximbiot.com>
30000
30001         Sync from CVS.
30002         * lib/glob_.h: Indent nested #ifdef.
30003
30004 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
30005
30006         Sync from coreutils.
30007         Use "file name" when talking about file names, instead of "filename"
30008         or "path", as per the GNU coding standards.
30009         * lib/mkdir-p.c: Renamed from makepath.c.
30010         (make_dir_parents): Renamed from make_path.  All callers changed.
30011         * lib/mkdir-p.h: Likewise.  All includers changed.
30012         * lib/filenamecat.c: Renamed from path-concat.c.
30013         (file_name_concat): Renamed from path_concat.  All callers changed.
30014         [TEST_FILE_NAME_CONCAT]: Renamed from TEST_PATH_CONCAT.
30015         * lib/filenamecat.h: Likewise.  All includers changed.
30016         * lib/acl.c: Don't use "path" or "filename" to mean "file name"
30017         in comments or local variable names.
30018         * lib/basename.c: Likewise.
30019         * lib/canonicalize.c, canonicalize.h: Likewise.
30020         * lib/dirname.c, dirname.h: Likewise.
30021         * lib/euidaccess.c: Likewise.
30022         * lib/exclude.c: Likewise
30023         * lib/fnmatch_.h, fnmatch_loop.c: Likewise.
30024         * lib/fsusage.c, fsuage.h: Likewise.
30025         * lib/fts.c, fts_.h: Likewise.
30026         * lib/getcwd.c: Likewise.
30027         * lib/getloadavg.c: Likewise.
30028         * lib/mkstemp.c: Likewise.
30029         * lib/mountlist.c, mountlist.h: Likewise.
30030         * lib/openat.c, openat.h: Likewise.
30031         * lib/readlink-stub.c: Likewise.
30032         * lib/readutmp.c, readutmp.h: Likewise.
30033         * lib/rename.c: Likewise.
30034         * lib/rmdir.c: Likewise.
30035         * lib/same.c: Likewise.
30036         * lib/savedir.c: Likewise.
30037         * lib/stripslash.c: Likewise.
30038         * lib/tempname.c: Likewise.
30039         * lib/xreadlink.c: Likewise.
30040         * lib/exclude.c (excluded_file_name): Renamed from excluded_filename.
30041         All uses changed.
30042         * lib/exclude.h: Likewise.
30043
30044         * lib/euidaccess.c (getuid, getgid, getuid, getegid)
30045         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
30046         * lib/idcache.c (getpwuid, getpwnam, getgrgid, getgrnam)
30047         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
30048         * lib/pathmax.h: Include <limits.h> unconditionally, since other
30049         files have been getting away with it for years (MORE/BSD 4.3
30050         is extinct now).
30051         * lib/userspec.c (getpwnam, getgrnam, getgrgid)
30052         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
30053
30054         * lib/pathmax.h (_POSIX_PATH_MAX) [!defined _POSIX_PATH_MAX]:
30055         Define to 256, not 255, as per modern POSIX.
30056
30057 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
30058
30059         Sync from coreutils.
30060         Use "file name" when talking about file names, instead of "filename"
30061         or "path", as per the GNU coding standards.
30062         * MODULES.html.sh: mkdir-p renamed from makepath.
30063         filenamecat renamed from path-concat.
30064         * modules/filenamecat: Renamed from modules/path-concat.
30065         (Files): filenamecat.h and filenamecat.c renamed from
30066         path-concat.h and path-concat.c.
30067         (configure.ac): gl_FILE_NAME_CONCAT, not gl_PATH_CONCAT.
30068         (Include): filenamecat.h, not path-concat.h.
30069         * modules/mkdir-p: Renamed from modules/makepath.
30070         (Files): mkdir-p.h and mkdir-p.c renamed from makepath.h and
30071         makepath.c.
30072         (configure.ac): gl_MKDIR_PARENTS, not gl_MAKEPATH.
30073         (Include): mkdir-p.h, not makepath.h.
30074
30075 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
30076
30077         Sync from coreutils.
30078         * m4/mkdir-p.m4: Renamed from makepath.m4.
30079         (gl_MKDIR_PARENTS): Renamed from gl_MAKEPATH.  All uses changed.
30080         Rename files from makepath.c to mkdir-p.c, and from
30081         makepath.h to mkdir-p.h.
30082         * m4/filenamecat.m4: Renamed from path-concat.m4.
30083         (gl_FILE_NAME_CONCAT): Renamed from gl_PATH_CONCAT.  All uses changed.
30084         Rename files from path-concat.c to filenamecat.c,
30085         and from path-concat.h to filenamecat.h.
30086         * m4/getcwd-path-max.m4: Don't use "path" or "filename" to mean
30087         "file name" in local variables or comments.
30088         * m4/rename.m4: Likewise.
30089
30090 2005-06-01  Bruno Haible  <bruno@clisp.org>
30091
30092         * modules/csharpexec: New file.
30093         * MODULES.html.sh (C#): New section.
30094
30095 2005-06-01  Bruno Haible  <bruno@clisp.org>
30096
30097         * m4/csharp.m4: New file, from GNU gettext.
30098         * m4/csharpexec.m4: New file, from GNU gettext.
30099
30100 2005-06-01  Bruno Haible  <bruno@clisp.org>
30101
30102         * lib/csharpexec.h: New file, from GNU gettext.
30103         * lib/csharpexec.c: New file, from GNU gettext.
30104         * lib/csharpexec.sh.in: New file, from GNU gettext.
30105
30106 2005-05-31  Derek Price  <derek@ximbiot.com>
30107             Paul Eggert  <eggert@cs.ucla.edu>
30108
30109         Sync from cvs.
30110         * m4/glob.m4: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
30111
30112 2005-05-31  Derek Price  <derek@ximbiot.com>
30113             Paul Eggert  <eggert@cs.ucla.edu>
30114
30115         Sync from cvs.
30116         * lib/glob_.h: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
30117
30118 2005-05-29  Derek Price  <derek@ximbiot.com>
30119
30120         * config/srclist.txt (glob_.h, glob.c): Add these files.
30121
30122 2005-05-29  Derek Price  <derek@ximbiot.com>
30123
30124         * MODULES.html.sh: Add glob to Enhanced POSIX.2001 section.
30125         * modules/glob: New file.
30126         * modules/getlogin_r: Add link to POSIX spec in description.
30127
30128 2005-05-29  Derek Price  <derek@ximbiot.com>
30129             Paul Eggert  <eggert@cs.ucla.edu>
30130
30131         * m4/glob.m4: New file.
30132
30133 2005-05-29  Derek Price  <derek@ximbiot.com>
30134             Paul Eggert  <eggert@cs.ucla.edu>
30135
30136         * lib/glob_.h, lib/glob.c: New files.
30137
30138 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
30139
30140         * modules/fts (Files): Remove m4/inttypes-pri.m4.
30141         * modules/fts-lgpl (Depends-on): Remove gettext.
30142
30143 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
30144
30145         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't check for inttypes.h or stdint.h,
30146         and don't require gt_INTTYPES_PRI.
30147
30148 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
30149
30150         * lib/getlogin_r.c (getlogin_r): Don't set errno to 0 on return.
30151
30152         * lib/fts.c: Don't worry about debugging on pre-C99-compatible hosts;
30153         the configuration hassle isn't worth it.
30154         Include inttypes.h and stdint.h unconditionally if FTS_DEBUG.
30155         (LONGEST_MODIFIER, PRIuMAX): Remove.
30156
30157 2005-05-27  Bruno Haible  <bruno@clisp.org>
30158
30159         * lib/getlogin_r.h: Remove second include of <stddef.h>.
30160
30161 2005-05-26  Paul Eggert  <eggert@cs.ucla.edu>
30162
30163         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Define
30164         _POSIX_PTHREAD_SEMANTICS for Solaris.
30165
30166 2005-05-25  Derek Price  <derek@ximbiot.com>
30167
30168         * MODULES.html.sh: Add getlogin_r to POSIX.2001 support section.
30169
30170 2005-05-25  Derek Price  <derek@ximbiot.com>
30171             Paul Eggert  <eggert@cs.ucla.edu>
30172
30173         * modules/getlogin_r, m4/getlogin_r.m4: New files.
30174         * lib/getlogin_r.c, getlogin_r.h: New files.
30175
30176 2005-05-25  Bruno Haible  <bruno@clisp.org>
30177             Derek Price  <derek@ximbiot.com>
30178
30179         * lib/getlogin_r.h: Simplify API documentation.
30180
30181 2005-05-23  Derek Price  <derek@ximbiot.com>
30182
30183         * modules/minmax (Files): Add m4/minmax.m4.
30184         (configure.ac): Add gl_MINMAX.
30185
30186 2005-05-22  Paul Eggert  <eggert@cs.ucla.edu>
30187
30188         * lib/fts.c (fd_safer) [_LGPL_PACKAGE]: New static function,
30189         so that unistd-safer.h (GPL'ed code) need not be included.
30190
30191 2005-05-22  Bruno Haible  <bruno@clisp.org>
30192
30193         * m4/minmax.m4: New file.
30194         Based on a patch by Derek Price <derek@ximbiot.com>.
30195
30196 2005-05-22  Bruno Haible  <bruno@clisp.org>
30197
30198         * lib/stdint_.h (_STDINT_H_HAVE_INT64): New macro. Use it in #ifdefs.
30199         (INT64_MIN): Fix definition.
30200         Suggested by Paul Eggert <eggert@cs.ucla.edu>.
30201
30202         * lib/stdint_.h (_STDINT_H_NEED_SIGNED_INT_TYPES): Renamed from
30203         NEED_SIGNED_INT_TYPES.
30204
30205         * lib/stdint_.h (_STDINT_H_HAVE_SYSTEM_INTTYPES): Renamed from
30206         HAVE_SYSTEM_INTTYPES.
30207
30208 2005-05-22  Bruno Haible  <bruno@clisp.org>
30209
30210         * lib/minmax.h: Include <limits.h> only when it defines MIN, MAX.
30211         Also include <sys/param.h> if it defines MIN, MAX.
30212         Based on a patch by Derek Price <derek@ximbiot.com>.
30213
30214 2005-05-21  Jim Meyering  <jim@meyering.net>
30215
30216         * modules/fts (Files): Add m4/inttypes-pri.m4.
30217         (Depends-on): Add lstat and remove gettext.  Alphabetize.
30218
30219 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
30220
30221         New fts module.
30222         * lib/fts.c: Don't include "cycle-check.h" or "hash.h".
30223         (setup_dir, free_dir): New functions.
30224         (enter_dir, leave_dir): Define trivial
30225         alternatives of _LGPL_PACKAGE.  Move to fts-cycle.c if !_LGPL_PACKAGE.
30226         (HT_INITIAL_SIZE, ENTER_DIR): Remove.  All uses removed.
30227         (LEAVE_DIR): Fix typo: pass Fts and Ent to leave_dir.
30228         (struct Active_dir, AD_compare, AD_hash, enter_dir, leave_dir):
30229         Move to fts-cycle.c.
30230         (fts_open): Use setup_dir.
30231         (fts_close): Use free_dir.
30232         (fts_read): Have just one copy of the ENTER_DIR code rather than three.
30233         This adds a label and some gotos, but the alternatives were messier.
30234         Check for memory allocation failure when entering a dir.
30235         (fts_stat) [_LGPL_PACKAGE]: Bring back glibc cycle detection code.
30236         * lib/fts_.h (_LGPL_PACKAGE) [defined _LIBC]: New macro.
30237         (FTS): New member fts_cycle, that is a union that contains the
30238         old active_dir_ht and cycle_state.  All uses changed to mention
30239         fts_cycle.ht and fts_cycle.state.
30240         * lib/fts-cycle.c: New file, containing GPL'ed code migrated out of
30241         fts.c, with the following changes:
30242         (setup_dir, free_dir): New functions.
30243         (enter_dir): Now returns bool.  Return true if successful, false
30244         if memory exhausted.  All callers changed.
30245         Do not bother partly cleaning up on
30246         memory allocation failure; that is free_dir's job.
30247         However, free ad if hash_insert fails, to avoid memory leak.
30248         (enter_dir, leave_dir): Accommodate change to FTS by inspecting
30249         fts->fts_options to see which union member to use.
30250
30251 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
30252
30253         * m4/fts.m4 (gl_FUNC_FTS_CORE): Renamed from gl_FUNC_FTS.
30254         (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): New macros.
30255
30256 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
30257
30258         * MODULES.html.sh (File system functions): Add fts, fts-lgpl.
30259
30260 2005-05-20  Jim Meyering  <jim@meyering.net>
30261
30262         * lib/unlinkdir.h (cannot_unlink_dir) [UNLINK_CANNOT_UNLINK_DIR]:
30263         Now a macro, to pacify GCC.
30264
30265 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
30266
30267         * m4/chown.m4 (gl_FUNC_CHOWN): Correct sense of test for honoring IDs
30268         of -1.
30269
30270 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
30271
30272         * lib/chown.c (rpl_chown): Return -1 on failure.
30273
30274 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
30275
30276         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME]):
30277         Don't check for stddef.h.
30278         * m4/fts.m4 (gl_FUNC_FTS): Don't require AC_HEADER_STDC, as we
30279         don't use its results.
30280         Don't check for fcntl.h, stddef.h, stdlib.h, string.h, unistd.h,
30281         since we include them unconditionally.  Don't require
30282         AM_STDBOOL_H, since stdbool is a prerequisite.
30283         Don't require AC_C_CONST, AC_TYPE_SIZE_T or check for ptrdiff_t
30284         since we assume C89 or better.
30285         Don't require AC_FUNC_CLOSEDIR_VOID, AC_FUNC_LSTAT, or AC_FUNC_STAT,
30286         as we don't use their results.
30287         Don't check for fchdir, memmove, memset, strrchr, as we use
30288         them unconditionally.
30289         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't define
30290         GETTIMEOFDAY_CLOBBERS_LOCALTIME_BUFFER, since nobody uses it.
30291
30292 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
30293
30294         * lib/canonicalize.c: Include canonicalize.h first, to test interface.
30295         Include <stddef.h> unconditionally, since we assume C89 now.
30296         All uses of PTR_INT_TYPE replaced by ptrdiff_t.
30297         * lib/fts.c: Include fts_.h first, to check interface.
30298         Do not include intprops.h; no longer needed.
30299         Include cycle-check.h and hash.h, since fts_.h no longer does.
30300         Remove unnecessary casts of closedir to void.
30301         (fts_build): Use a simpler method (not involving TYPE_SIGNED) to
30302         decide whether to decrement nlinks.
30303         * lib/fts_.h: Do not include hash.h or cycle-check.h; no longer needed.
30304         (FTS): Use struct hash_table * instead of Hash_table, so that
30305         we no longer need to include hash.h here.
30306
30307 2005-05-18  Jim Meyering  <jim@meyering.net>
30308
30309         * modules/dirfd (License): Change to LGPL.  Most of the code
30310         is already in the public domain.
30311
30312 2005-05-18  Jim Meyering  <jim@meyering.net>
30313
30314         * m4/fts.m4 (AC_LIBSOURCES): Add intprops.h to the list.
30315         Reported by Yoann Vandoorselaere.
30316
30317 2005-05-17  Jim Meyering  <jim@meyering.net>
30318
30319         * m4/fts.m4: New file, from coreutils.
30320
30321 2005-05-17  Jim Meyering  <jim@meyering.net>
30322
30323         * lib/fts.c, lib/fts_.h: New files, from coreutils.
30324
30325 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
30326
30327         Sync from coreutils.
30328         * m4/unlinkdir.m4: New file.
30329
30330 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
30331
30332         Sync from coreutils.
30333         * lib/unlinkdir.c, lib/unlinkdir.h: New files.
30334         * lib/gethrxtime.c, lib/gethrxtime.h, lib/getpass.h, lib/mountlist.h,
30335         lib/path-concat.c, lib/regex.h, lib/unlocked-io.h, lib/xtime.h:
30336         White space changes only.
30337         * lib/makepath.c (make_path): Port to hosts where leading "//" is
30338         special.
30339         * lib/yesno.c: Include getline.h, not ctype.h.
30340         (yesno): Don't remove leading white space; POSIX doesn't allow it.
30341         Use getline to remove arbitrary restriction on response length.
30342
30343 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
30344
30345         * config/srclist-update: Spell out "Street" in FSF postal
30346         mail address; this is the style the FSF seems to prefer.
30347
30348         * build-aux/depcomp, build-aux/install-sh, build-aux/mdate-sh,
30349         build-aux/missing, build-aux/mkinstalldirs: Sync from Automake;
30350         this updates FSF postal mail address.
30351
30352         Sync from coreutils.
30353         * modules/unlinkdir: New file.
30354         * modules/yesno (Depends-on): Add getline.
30355         * MODULES.html.sh (File system functions): Add unlinkdir.
30356
30357 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
30358
30359         * lib/byteswap_.h, lib/getsubopt.h, lib/iconvme.h, lib/strsep.c,
30360         lib/strsep.h:
30361         Change the initial comment to refer to GPL, not LGPL.
30362         gnulib-tool will change it to LGPL as needed.
30363
30364         * lib/__fpending.c, lib/acl.c, lib/acl.h, lib/alloca_.h, lib/allocsa.c,
30365         lib/allocsa.h, lib/argmatch.c, lib/argmatch.h, lib/argp-ba.c,
30366         lib/argp-eexst.c, lib/argp-fmtstream.c, lib/argp-fmtstream.h,
30367         lib/argp-fs-xinl.c, lib/argp-help.c, lib/argp-namefrob.h,
30368         lib/argp-parse.c, lib/argp-pv.c, lib/argp-pvh.c, lib/argp-xinl.c,
30369         lib/argp.h, lib/argz.c, lib/argz_.h, lib/asnprintf.c, lib/asprintf.c,
30370         lib/atanl.c, lib/backupfile.c, lib/backupfile.h, lib/base64.c,
30371         lib/base64.h, lib/basename.c, lib/binary-io.h, lib/byteswap_.h,
30372         lib/c-ctype.c, lib/c-ctype.h, lib/c-stack.c, lib/c-stack.h,
30373         lib/c-strtod.c, lib/calloc.c, lib/canon-host.c, lib/canonicalize.c,
30374         lib/canonicalize.h, lib/ceill.c, lib/chdir-long.c, lib/chdir-long.h,
30375         lib/chown.c, lib/classpath.c, lib/classpath.h, lib/cloexec.c,
30376         lib/closeout.c, lib/closeout.h, lib/concatpath.c, lib/config.charset,
30377         lib/copy-file.c, lib/copy-file.h, lib/cycle-check.c, lib/cycle-check.h,
30378         lib/diacrit.c, lib/diacrit.h, lib/dirfd.c, lib/dirfd.h, lib/dirname.c,
30379         lib/dirname.h, lib/dummy.c, lib/dup-safer.c, lib/dup2.c, lib/eealloc.h,
30380         lib/error.c, lib/error.h, lib/euidaccess.c, lib/exclude.c,
30381         lib/exclude.h, lib/execute.c, lib/execute.h, lib/exit.h,
30382         lib/exitfail.c, lib/exitfail.h, lib/expl.c, lib/fatal-signal.c,
30383         lib/fatal-signal.h, lib/fd-safer.c, lib/file-type.c, lib/file-type.h,
30384         lib/fileblocks.c, lib/filemode.c, lib/filemode.h, lib/findprog.c,
30385         lib/findprog.h, lib/floorl.c, lib/fnmatch.c, lib/fnmatch_.h,
30386         lib/fnmatch_loop.c, lib/fopen-safer.c, lib/free.c, lib/frexpl.c,
30387         lib/fsusage.c, lib/fsusage.h, lib/full-read.c, lib/full-read.h,
30388         lib/full-write.c, lib/full-write.h, lib/fwriteerror.c,
30389         lib/fwriteerror.h, lib/gai_strerror.c, lib/gcd.c, lib/gcd.h,
30390         lib/getaddrinfo.c, lib/getaddrinfo.h, lib/getcwd.c, lib/getcwd.h,
30391         lib/getdate.h, lib/getdate.y, lib/getdomainname.c, lib/getdomainname.h,
30392         lib/getgroups.c, lib/gethostname.c, lib/gethrxtime.c, lib/gethrxtime.h,
30393         lib/getline.c, lib/getline.h, lib/getloadavg.c, lib/getndelim2.c,
30394         lib/getndelim2.h, lib/getnline.c, lib/getnline.h, lib/getopt.c,
30395         lib/getopt1.c, lib/getopt_.h, lib/getopt_int.h, lib/getpagesize.h,
30396         lib/getpass.c, lib/getpass.h, lib/getsubopt.c, lib/getsubopt.h,
30397         lib/gettext.h, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c,
30398         lib/getusershell.c, lib/group-member.c, lib/group-member.h,
30399         lib/hard-locale.c, lib/hard-locale.h, lib/hash-pjw.c, lib/hash-pjw.h,
30400         lib/hash.c, lib/hash.h, lib/human.c, lib/human.h, lib/iconvme.c,
30401         lib/iconvme.h, lib/idcache.c, lib/inet_ntop.h, lib/intprops.h,
30402         lib/inttostr.c, lib/inttostr.h, lib/isdir.c, lib/javacomp.c,
30403         lib/javacomp.h, lib/javacomp.sh.in, lib/javaexec.c, lib/javaexec.h,
30404         lib/javaexec.sh.in, lib/lbrkprop.h, lib/lchown.c, lib/ldexpl.c,
30405         lib/linebreak.c, lib/linebreak.h, lib/linebuffer.c, lib/linebuffer.h,
30406         lib/localcharset.c, lib/localcharset.h, lib/logl.c, lib/long-options.c,
30407         lib/long-options.h, lib/lstat.c, lib/makepath.c, lib/makepath.h,
30408         lib/malloc.c, lib/mathl.h, lib/mbswidth.c, lib/mbswidth.h, lib/md5.c,
30409         lib/md5.h, lib/memcasecmp.c, lib/memcasecmp.h, lib/memchr.c,
30410         lib/memcmp.c, lib/memcoll.c, lib/memcoll.h, lib/memcpy.c, lib/memmem.c,
30411         lib/memmem.h, lib/mempcpy.c, lib/mempcpy.h, lib/memrchr.c,
30412         lib/memrchr.h, lib/memset.c, lib/minmax.h, lib/mkdir.c, lib/mkdtemp.c,
30413         lib/mkdtemp.h, lib/mkstemp.c, lib/mktime.c, lib/modechange.c,
30414         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
30415         lib/obstack.c, lib/obstack.h, lib/openat.c, lib/openat.h,
30416         lib/pagealign_alloc.c, lib/pagealign_alloc.h, lib/path-concat.c,
30417         lib/path-concat.h, lib/pathmax.h, lib/pathname.h, lib/physmem.c,
30418         lib/physmem.h, lib/pipe.c, lib/pipe.h, lib/poll.c, lib/poll_.h,
30419         lib/posixtm.c, lib/posixtm.h, lib/posixver.c, lib/printf-args.c,
30420         lib/printf-args.h, lib/printf-parse.c, lib/printf-parse.h,
30421         lib/progname.c, lib/progname.h, lib/progreloc.c, lib/putenv.c,
30422         lib/quote.c, lib/quote.h, lib/quotearg.c, lib/quotearg.h, lib/raise.c,
30423         lib/readlink.c, lib/readtokens.c, lib/readtokens.h, lib/readtokens0.c,
30424         lib/readtokens0.h, lib/readutmp.c, lib/readutmp.h, lib/realloc.c,
30425         lib/ref-add.sin, lib/ref-del.sin, lib/regex.c, lib/regex.h,
30426         lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c,
30427         lib/safe-read.h, lib/safe-write.c, lib/safe-write.h, lib/same.c,
30428         lib/same.h, lib/save-cwd.c, lib/save-cwd.h, lib/savedir.c,
30429         lib/savedir.h, lib/setenv.c, lib/setenv.h, lib/settime.c,
30430         lib/sh-quote.c, lib/sh-quote.h, lib/sha1.c, lib/sha1.h, lib/sig2str.c,
30431         lib/sig2str.h, lib/sincosl.c, lib/snprintf.c, lib/snprintf.h,
30432         lib/sqrtl.c, lib/stat-macros.h, lib/stat.c, lib/stdbool_.h,
30433         lib/stdint_.h, lib/stdio-safer.h, lib/stpcpy.c, lib/stpcpy.h,
30434         lib/stpncpy.c, lib/stpncpy.h, lib/strcase.h, lib/strcasecmp.c,
30435         lib/strchrnul.c, lib/strchrnul.h, lib/strcspn.c, lib/strdup.c,
30436         lib/strdup.h, lib/strerror.c, lib/strftime.c, lib/strftime.h,
30437         lib/stripslash.c, lib/strndup.c, lib/strndup.h, lib/strnlen.c,
30438         lib/strpbrk.c, lib/strpbrk.h, lib/strsep.c, lib/strsep.h, lib/strstr.c,
30439         lib/strstr.h, lib/strtod.c, lib/strtoimax.c, lib/strtok_r.c,
30440         lib/strtok_r.h, lib/strtol.c, lib/strtoll.c, lib/strtoul.c,
30441         lib/strtoull.c, lib/strverscmp.c, lib/strverscmp.h, lib/sysexit_.h,
30442         lib/tempname.c, lib/time_r.c, lib/time_r.h, lib/timegm.c, lib/timegm.h,
30443         lib/timespec.h, lib/trigl.c, lib/trigl.h, lib/ucs4-utf16.h,
30444         lib/ucs4-utf8.h, lib/unicodeio.c, lib/unicodeio.h, lib/unistd-safer.h,
30445         lib/unlocked-io.h, lib/unsetenv.c, lib/userspec.c, lib/utf16-ucs4.h,
30446         lib/utf8-ucs4.h, lib/utime.c, lib/utimecmp.c, lib/utimecmp.h,
30447         lib/utimens.c, lib/vasnprintf.c, lib/vasnprintf.h, lib/vasprintf.c,
30448         lib/vasprintf.h, lib/version-etc-fsf.c, lib/version-etc.c,
30449         lib/version-etc.h, lib/vsnprintf.c, lib/vsnprintf.h, lib/w32spawn.h,
30450         lib/wait-process.c, lib/wait-process.h, lib/xalloc-die.c, lib/xalloc.h,
30451         lib/xallocsa.c, lib/xallocsa.h, lib/xasprintf.c, lib/xgetcwd.c,
30452         lib/xgetcwd.h, lib/xgetdomainname.c, lib/xgetdomainname.h,
30453         lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c,
30454         lib/xreadlink.c, lib/xreadlink.h, lib/xsetenv.c, lib/xsetenv.h,
30455         lib/xsize.h, lib/xstrndup.c, lib/xstrndup.h, lib/xstrtod.c,
30456         lib/xstrtod.h, lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h,
30457         lib/xstrtoumax.c, lib/xtime.h, lib/xvasprintf.c, lib/xvasprintf.h,
30458         lib/yesno.c, lib/yesno.h:
30459         Update FSF postal mail address.
30460
30461 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
30462
30463         * MODULES.html.sh, README, gnulib-tool, tests/test-base64.c,
30464         tests/test-memmem.c, tests/test-stpncpy.c:
30465         Update FSF postal mail address.
30466
30467 2005-05-13  Bruno Haible  <bruno@clisp.org>
30468
30469         * lib/stdint_.h (int64_t, uint64_t, int_least64_t, uint_least64_t,
30470         int_fast64_t, uint_fast64_t, intmax_t, uintmax_t, INT64_MIN, INT64_MAX,
30471         UINT64_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX,
30472         INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTMAX_MIN,
30473         INTMAX_MAX, UINTMAX_MAX, INT64_C, UINT64_C, INTMAX_C, UINTMAX_C):
30474         Add support for 64-bit integers in the MSVC compiler.
30475
30476 2005-05-12  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
30477
30478         * modules/getdate (Makefile.am): Add getdate.c to EXTRA_DIST
30479
30480 2005-05-12  Eric Blake  <ebb9@byu.net>  (tiny change)
30481
30482         * gnulib-tool (func_import): Sort and uniquify recommended includes.
30483
30484 2005-05-11  Paul Eggert  <eggert@cs.ucla.edu>
30485
30486         * doc/getdate.texi (General date syntax): Don't say that date
30487         date --iso-8601=ns generates acceptable dates; it doesn't yet.
30488         Problem reported by Nic Ferrier.
30489
30490 2005-05-10  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
30491
30492         * lib/getaddrinfo.c: Don't fail when SOCK_STREAM or SOCK_DGRAM are
30493         specified in ai_socktype. Fix invalid ai_protocol
30494         check. ai_protocol is usually set to 0 or depending on
30495         ai_family/ai_socktype to IPPROTO_TCP / IPPROTO_UDP.  Checking for
30496         SOCK_STREAM / SOCK_DGRAM in ai_protocol was invalid.  Set
30497         ai_socktype / ai_protocol in the returned addrinfo structure.
30498
30499 2005-05-10  Simon Josefsson  <jas@extundo.com>
30500
30501         * m4/getaddrinfo.m4: Look in libnsl/libsocket for getaddrinfo, from
30502         Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
30503
30504 2005-05-10  Karl Berry  <karl@gnu.org>
30505
30506         * doc/fdl.texi, gpl.texi, lgpl.texi, COPYING: update FSF address
30507         (from http://www.gnu.org/licenses).
30508         * doc/COPYING.LIB: also rename to COPYING.LESSER.
30509         * doc/COPYING.DOC: remove; per rms, only needed in doc files, so
30510         fdl.texi suffices.
30511
30512 2005-05-10  Karl Berry  <karl@gnu.org>
30513
30514         * config/srclist.txt (COPYING.LESSER): rename from COPYING.LIB.
30515         (COPYING.DOC): remove.
30516
30517         * config/srclist-update: new FSF address.
30518
30519 2005-05-10  Derek Price  <derek@ximbiot.com>
30520
30521         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 bug, not decl, when
30522         possible.
30523
30524 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
30525             Bruno Haible  <bruno@clisp.org>
30526
30527         * modules/inet_ntop: New file.
30528         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
30529         inet_ntop.
30530
30531 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
30532             Bruno Haible  <bruno@clisp.org>
30533
30534         * m4/inet_ntop.m4: New file.
30535
30536 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
30537             Bruno Haible  <bruno@clisp.org>
30538
30539         * lib/inet_ntop.h: New file.
30540         * lib/inet_ntop.c: New file, from glibc with modifications.
30541
30542 2005-05-09  Paul Eggert  <eggert@cs.ucla.edu>
30543
30544         * modules/time_r (License): Change to LGPL.
30545         * modules/extensions (License): Change to LGPL.  Actually,
30546         the license is more permissive than that, but currently gnulib-tool
30547         doesn't know how to handle more-permissive licenses.
30548
30549         * modules/stat-macros (Depends-on): Don't depend on stat-macros (!).
30550         Problem reported by Dave Love.
30551
30552 2005-05-08  Jim Meyering  <jim@meyering.net>
30553
30554         * lib/classpath.c (PATH_SEPARATOR): Remove insignificant trailing
30555         blank.
30556
30557 2005-05-06  Paul Eggert  <eggert@cs.ucla.edu>
30558
30559         * modules/argmatch (Depends-on): Add stdbool.
30560         * modules/backupfile (Depends-on): Likewise.
30561         * modules/chdir-long (Depends-on): Likewise.
30562         * modules/closeout (Depends-on): Likewise.
30563         * modules/cycle-check (Depends-on): Likewise.
30564         * modules/dirname (Depends-on): Likewise.
30565         * modules/fnmatch (Depends-on): Likewise.
30566         * modules/fsusage (Depends-on): Likewise.
30567         * modules/fwriteerror (Depends-on): Likewise.
30568         * modules/getcwd (Depends-on): Likewise.
30569         * modules/getloadavg (Depends-on): Likewise.
30570         * modules/hard-locale (Depends-on): Likewise.
30571         * modules/makepath (Depends-on): Likewise.
30572         * modules/mountlist (Depends-on): Likewise.
30573         * modules/nanosleep (Depends-on): Likewise.
30574         * modules/posixtm (Depends-on): Likewise.
30575         * modules/quotearg (Depends-on): Likewise.
30576         * modules/readtokens (Depends-on): Likewise.
30577         * modules/readtokens0 (Depends-on): Likewise.
30578         * modules/readutmp (Depends-on): Likewise.
30579         * modules/save-cwd (Depends-on): Likewise.
30580         * modules/strftime (Depends-on): Likewise.
30581         * modules/userspec (Depends-on): Likewise.
30582         * modules/utimecmp (Depends-on): Likewise.
30583         * modules/xgetcwd (Depends-on): Likewise.
30584         * modules/xnanosleep (Depends-on): Likewise.
30585         * modules/xstrtod (Depends-on): Likewise.
30586         * modules/yesno (Depends-on): Likewise.
30587
30588 2005-05-05  Paul Eggert  <eggert@cs.ucla.edu>
30589
30590         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 getopt, and avoid
30591         needless checks.
30592
30593 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
30594
30595         Merge from coreutils.  Among other things,
30596         add bulletproofing for cases where stdin, stdout, or stderr are closed.
30597         * lib/fd-safer.c: New file.
30598         * lib/fcntl-safer.h, open-safer.c: Remove.
30599         * lib/chdir-long.c: Fix comment "fetish" -> "coreutils".
30600         * lib/dup-safer.c: Include unistd-safer.h first.
30601         Don't include errno.h.
30602         (dup_safer) [!defined F_DUPFD]: Let fd_safer do the real work.
30603         * lib/file-type.h: Don't assume invoker included sys/stat.h first.
30604         * lib/file-type.c: Rely on file-type.h change.
30605         * lib/getloadavg.c: Include unistd-safer.h.
30606         (getloadavg): Use safer open.
30607         * lib/getusershell.c: Include "stdio-safer.h".
30608         (getusershell): Use safer fopen.
30609         * lib/long-options.c (long_options): Use NULL rather than 0.
30610         * lib/modechange.h (mode_free): Remove; all callers changed to invoke
30611         'free'.
30612         * lib/modechange.c: Likewise.
30613         xstrtol.h, stdbool.h, stddef.h: Don't include; no longer needed.
30614         (MODE_DONE): New constant.
30615         (struct mode_change): Remove 'next' member.
30616         (make_node_op_equals): New function; like the old one of the
30617         same name, except it allocates an array.
30618         (mode_compile, mode_create_from_ref): Use it.
30619         (mode_compile): Allocate result as an array, not a linked list.
30620         Parse octal string ourself, so that we catch mistakes like "+0".
30621         (mode_adjust): Arg is an array, not a linked list.
30622         * lib/modechange.c: Include stat-macros.h, xalloc.h.
30623         (S_ISDIR, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR):
30624         (S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH, S_IRXWU):
30625         (S_IRWXG, S_IRWXO, CHMOD_MODE_BITS):
30626         Remove.  This is now stat-macros.h's job.
30627         (talloc): Remove.  All callers replaced by xalloc, so that
30628         our invokers don't have to worry about reporting memory failures.
30629         (make_node_op_equals): Remove.
30630         (MODE_ORDINARY_CHAGE, MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
30631         New constants.
30632         (struct mode_change): Moved here from modechange.h.
30633         (mode_append_entry): Remove.
30634         (mode_compile): Remove MASKED_OPS arg, since it encouraged
30635         apps to have incorrect behavior.  Use simpler algorithm for head
30636         and tail.  Don't futz with umask; that's now the job of mode_adjust.
30637         Detect more invalid usages rather than having somewhat-random behavior.
30638         Don't insert an "a=" action, as that leads to incorrect behavior.
30639         (mode_compile, mode_create_from_ref): Return NULL on error instead
30640         of an enum, since now there's only one way to have an error.  All
30641         callers changed.
30642         (mode_adjust): Accept new arg UMASK_VALUE, and interpret it
30643         at the correct time.  Simplify calculation of "+u" and its ilk.
30644         Don't mishandle "+X".
30645         (mode_free): Remove "register" and localize decls.
30646         * lib/modechange.h (MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
30647         (struct mode_change): Move to modechange.c; callers don't
30648         need to see this stuff.
30649         (MODE_MASK_EQUALS, MODE_MASK_PLUS, MODE_MASK_MINUS, MODE_MASK_ALL):
30650         (MODE_INVALID, MODE_MEMORY_EXHAUSTED, MODE_BAD_REFERENCE): Remove.
30651         (mode_change, mode_adjust): Reflect the new signatures noted above.
30652         * lib/nanosleep.c (rpl_nanosleep): Include "timespec.h" before macros
30653         that might redefine system include files.
30654         (siginterrupt) [!HAVE_SIGINTERRUPT]: New macro.
30655         (my_usleep): Use NULL rather than (void *) 0.
30656         (rpl_nanosleep) [!defined SA_NOCLDSTOP]:
30657         Use siginterrupt to specify that system calls should be interrupted.
30658         (rpl_nanosleep): Move initialization of suspended closer to call of
30659         my_usleep.
30660         * lib/readutmp.h (read_utmp): New arg OPTIONS.  All uses changed.
30661         * lib/readutmp.c: Likewise.  Include signal.h, stdbool.h.
30662         (desirable_utmp_entry): New function.
30663         (read_utmp) [defined UTMP_NAME_FUNCTION]: Redo memory allocation
30664         using x2nrealloc, to simplify logic.
30665         (read_utmp) [!defined UTMP_NAME_FUNCTION]: Check for overflow in
30666         size calculation.  Do not assume utmp file is a regular file.
30667         * lib/readutmp.h (UT_PID): Moved here from ../src/who.c.
30668         (READ_UTMP_CHECK_PIDS): New constant.
30669         * lib/save-cwd.c: Include unistd-safer.h.
30670         (save_cwd): Use fd_safer.
30671         * lib/tempname.c (S_ISDIR, S_IRUSR, S_IRUSR, S_IWUSR, S_IXUSR): Remove.
30672         [!_LIBC] Include "stat-macros.h" instead.
30673         * lib/unistd-safer.h (fd_safer): New decl.
30674
30675 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
30676
30677         * modules/getloadavg (Depends-on): Add unistd-safer.
30678         * modules/getusershell (Depends-on): Add stdio-safer.
30679         * modules/lstat (Depends-on): Remove xalloc.
30680         * modules/mkstemp (Depends-on): Add stat-macros.
30681         * modules/modechange (Depends-on): Remove xstrtol.
30682         Add stat-macros, xalloc.
30683         * modules/save-cwd (Depends-on): Add unistd-safer.
30684         * modules/stdio-safer (Makefile.am): Remove lib_SOURCES.
30685         * modules/unistd-safer (Files): Add lib/fd-safer.c
30686         (Makefile.am): Remove lib_SOURCES.
30687
30688         * MODULES.html.sh (Enhancements for POSIX:2001 functions):
30689         Remove fcntl-safer; unistd-safer supersedes it.
30690
30691 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
30692
30693         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Don't require
30694         AC_HEADER_STAT.
30695         * m4/lchown.m4 (gl_FUNC_CHOWN): Likewise.
30696         (gl_PREREQ_CHOWN): Remove.
30697         * m4/lstat.m4 (gl_FUNC_LSTAT): Require AC_FUNC_LSTAT instead of calling
30698         it.  Don't require AC_HEADER_STAT.
30699         (gl_PREREQ_LSTAT): Remove.
30700         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Check stdint.h only once.
30701         Don't require AC_HEADER_STAT.
30702         * m4/rmdir.m4 (gl_FUNC_RMDIR): Don't require AC_HEADER_STAT.
30703         (gl_PREREQ_RMDIR): Remove.
30704         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Don't
30705         mention stat-macros.h or AC_HEADER_STAT, since we'll make
30706         the stat-macros module a prerequisite.
30707         * m4/file-type.m4 (gl_FILE_TYPE): Likewise.
30708         * m4/filemode.m4 (gl_FILEMODE): Likewise.
30709         * m4/makepath.m4 (gl_MAKEPATH): Likewise.
30710         * m4/modechange.m4 (gl_MODECHANGE): Likewise.
30711         * m4/clock_time.m4 (gl_CLOCK_TIME): Use gl_ rather than fetish_ for
30712         variable names.
30713         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Renamed from
30714         fetish_FUNC_RMDIR_NOTEMPTY.  All uses changed.  Use gl_ for
30715         variable prefixes.
30716         * m4/fcntl-safer.m4: Remove.
30717         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Use AC_LIBSOURCES and AC_LIBOBJ.
30718         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise.
30719         Invoke gl_PREREQ_FD_SAFER.
30720         (gl_PREREQ_FD_SAFER): New macro.
30721         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Check for siginterrupt.
30722         * m4/readutmp.m4 (gl_READUTMP): Require AC_C_INLINE.
30723         Use AC_CHECK_HEADERS_ONCE and AC_CHECK_FUNCS_ONCE when possible.
30724         Remove duplicate call to AC_LIBOBJ(readutmp).
30725         (gl_PREREQ_READUTMP): Remove.  All uses inlined.
30726
30727         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Check for message, not for
30728         MAP_ANON.  Problem reported by Moriyoshi Koizumi to bug-cvs.
30729
30730 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
30731
30732         * MODULES.html.sh (Misc): Add byteswap.
30733
30734 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
30735
30736         * modules/getcwd (Depends-on): Add extensions.
30737         * modules/openat (Depends-on): Likewise.
30738
30739 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
30740
30741         * modules/byteswap: New file.
30742
30743 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
30744
30745         * m4/byteswap.m4: New file.
30746
30747 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
30748
30749         * lib/byteswap_.h: New file.
30750
30751 2005-04-25  Karl Berry  <karl@gnu.org>
30752
30753         * m4/gettext.m4: Update from GNU gettext 0.14.4.
30754
30755 2005-04-25  Albert Chin  <china@thewrittenword.com>
30756
30757         * lib/regex.c: Include <stdio.h>, as a workaround to a Compaq Desktop
30758         Toolkit C bug.
30759
30760 2005-04-21  Oskar Liljeblad  <oskar@osk.mine.nu>
30761
30762         * gnulib-tool (Options): Add -s for --symlink/--symbolic.
30763         (func_ln_if_changed) Remove forcibly for no error message
30764         in case file does not exist.
30765
30766 2005-04-19  Simon Josefsson  <jas@extundo.com>
30767
30768         * gnulib-tool (Options): Make --symlink mean --symbolic.
30769
30770 2005-04-18  Oskar Liljeblad  <oskar@osk.mine.nu>
30771
30772         * doc/gnulib.texi (Initial import): Fix.  Mention --aux-dir.
30773
30774 2005-04-16  Simon Josefsson  <jas@extundo.com>
30775
30776         * modules/getpass-gnu (Makefile.am): Don't mention getpass.h.
30777
30778 2005-04-15  Simon Josefsson  <jas@extundo.com>
30779
30780         * m4/getpass.m4 (gl_FUNC_GETPASS): Use AC_LIBSOURCES.
30781
30782 2005-04-15  Simon Josefsson  <jas@extundo.com>
30783
30784         * gnulib-tool: Rename --symlink to --symbolic.
30785
30786 2005-04-15  Oskar Liljeblad  <oskar@osk.mine.nu>
30787
30788         * gnulib-tool: Add -s, --symlink option to gnulib-tool to make
30789         symbolic links to files instead of copying/moving.  Add --aux-dir,
30790         specifying directory relative --dir where auxiliary build tools
30791         are placed.
30792
30793 2005-04-14  Bruno Haible  <bruno@clisp.org>
30794
30795         * modules/allocsa (License): Change to LGPL.
30796         Requested by Yoann Vandoorselaere <yoann@prelude-ids.org>.
30797
30798 2005-04-13  Paul Eggert  <eggert@cs.ucla.edu>
30799
30800         * lib/getdate.y (zone): Allow relunit_snumber after tZONE, so
30801         that "UTC +1 second" continues to work.  Problem reported
30802         by Dmitry V. Levin.
30803         (relunit_snumber): New rule.
30804         (relunit): Use it.
30805
30806 2005-04-12  Paul Eggert  <eggert@cs.ucla.edu>
30807
30808         * lib/getdate.y (universal_time_zone_table): New constant.
30809         (time_zone_table): Remove GMT, UT, UTC entries; they're now in
30810         universal_time_zone_table.
30811         (lookup_zone): Prefer universal_time_zone_table to
30812         local_time_zone_table, so that "GMT" time stamps are allowed in
30813         London during the summer.  Problem reported by Ian Abbott.
30814
30815 2005-04-12  Jim Meyering  <jim@meyering.net>
30816
30817         * lib/human.c (humblock): Set *options even when returning due to
30818         xstrtoumax conversion failure.  Thanks to a used-uninitialized
30819         warning from gcc-4.
30820
30821 2005-04-09  Jim Meyering  <jim@meyering.net>
30822
30823         * lib/posixtm.c (posixtime) [lint]: Avoid spurious warning from gcc-4's
30824         -Wuninitialized: initialize tm0.tm_year.
30825
30826 2005-04-04  Paul Eggert  <eggert@cs.ucla.edu>
30827
30828         * lib/getdate.y (parser_control): rels_seen is now a boolean, not a
30829         count, since there's no maximum.  All uses changed.
30830         Add member dsts_seen.
30831         (local_zone): Accumulate dsts_seen rather than relying on tm_isdst
30832         not being INT_MAX.
30833         (get_date): Initialize dsts_seen, and check that it doesn't go over 1.
30834         Use pc_rels_seen to decide whther a date is absolute.
30835
30836         * lib/getdate.y (number): Don't overwrite year.
30837         (get_date): Initialize pc.year.digits to 0, not 4, to enable above
30838         check.
30839
30840 2005-04-02  Simon Josefsson  <jas@extundo.com>
30841
30842         * lib/getaddrinfo.h: Fix OpenBSD compilation failure, inspired by tiny
30843         patch from Yoann Vandoorselaere <yoann@prelude-ids.org>.
30844
30845 2005-03-28  Eric Blake  <ebb9@byu.net>  (tiny change)
30846
30847         * m4/getcwd-path-max.m4: Return success on systems such as Cygwin
30848         where no absolute path name can be longer than PATH_MAX.
30849
30850 2005-03-27  Jim Meyering  <jim@meyering.net>
30851
30852         * lib/argmatch.c: Clarify comment: null-terminated -> NULL-terminated.
30853
30854 2005-03-26  Paul Eggert  <eggert@cs.ucla.edu>
30855
30856         * lib/intprops.h (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND):
30857         "one's complement" -> "ones' complement" in comment, as per Knuth.
30858         "value of type" -> "type or expression" in comment.
30859         * lib/mktime.c, strftime.c: Propagate intprops.h comment nits.
30860
30861 2005-03-26  Jim Meyering  <jim@meyering.net>
30862
30863         Comment nits.
30864         * lib/intprops.h: Add the apostrophe in `(one|two)'s complement'.
30865         Correct typos: s/or/of/.
30866
30867 2005-03-26  Jim Meyering  <jim@meyering.net>
30868
30869         * modules/check-include-files: Move to ../ and rename to...
30870         * check-module: ...this.
30871
30872 2005-03-25  Jim Meyering  <jim@meyering.net>
30873
30874         * modules/xvasprintf (Files): Add xalloc.h.
30875
30876 2005-03-23  Paul Eggert  <eggert@cs.ucla.edu>
30877
30878         * modules/gettext (Files): config/config.rpath ->
30879         build-aux/config.rpath
30880         * modules/iconv (Files): Likewise.
30881         Problem reported by Oskar Liljeblad.
30882
30883 2005-03-23  Jim Meyering  <jim@meyering.net>
30884
30885         * modules/check-include-files: New script to check for
30886         missing dependencies, multiple includes, etc.
30887
30888         * modules/c-strtold (Depends-on): Add xalloc.
30889         * modules/c-strtod (Depends-on): Add xalloc.
30890         * modules/hash (Depends-on): Add xalloc.
30891         (Files): Remove lib/xalloc.h.
30892
30893         * modules/gethrxtime (Files): Add lib/gethrxtime.h.
30894         * modules/userspec (Files): Add lib/inttostr.h.
30895
30896 2005-03-23  Jim Meyering  <jim@meyering.net>
30897
30898         * lib/canonicalize.c: Remove duplicate `#include "stat-macros.h"'.
30899
30900 2005-03-22  Jim Meyering  <jim@meyering.net>
30901
30902         * modules/stat-macros: New module.
30903         * modules/canonicalize, modules/euidaccess, modules/file-type,
30904         * modules/filemode, modules/lchown, modules/makepath,
30905         * modules/rmdir, modules/stat: Depend on new stat-macros module
30906         rather than listing lib/stat-macros.h manually.
30907         Don't add stat-macros.h to lib_SOURCES or list it in Files: section.
30908
30909 2005-03-22  Jim Meyering  <jim@meyering.net>
30910
30911         * m4/stat-macros.m4 (gl_STAT_MACROS): New file/macro.
30912
30913 2005-03-22  Bruno Haible  <bruno@clisp.org>
30914
30915         * config/srclist.txt: Replace target directory 'config' with
30916         'build-aux'.
30917         * config/config.guess, config.sub, config.rpath, depcomp, install-sh:
30918         * config/mdate-sh, missing, mkinstalldirs, texinfo.tex: Move to
30919         ../build-aux/.
30920
30921 2005-03-21  Paul Eggert  <eggert@cs.ucla.edu>
30922
30923         * modules/chdir-long (Depends-on): Add mempcpy.
30924
30925         * modules/acl, modules/backupfile, modules/c-strtod,
30926         modules/c-strtold, modules/canon-host, modules/canonicalize,
30927         modules/cloexec, modules/closeout, modules/dirfd, modules/dirname,
30928         modules/exclude, modules/exitfail, modules/file-type,
30929         modules/filemode, modules/fpending, modules/fsusage, modules/getcwd,
30930         modules/getdate, modules/getline, modules/getpagesize,
30931         modules/getpass, modules/getugroups, modules/group-member,
30932         modules/hard-locale, modules/hash, modules/human, modules/idcache,
30933         modules/inttostr, modules/long-options, modules/makepath,
30934         modules/md5, modules/memcasecmp, modules/memcoll,
30935         modules/modechange, modules/mountlist, modules/path-concat,
30936         modules/pathmax, modules/physmem, modules/posixtm, modules/posixver,
30937         modules/quote, modules/quotearg, modules/readtokens, modules/readutmp,
30938         modules/safe-read, modules/safe-write, modules/same, modules/savedir,
30939         modules/settime, modules/sha1, modules/sig2str, modules/strdup,
30940         modules/strftime, modules/strndup, modules/strverscmp,
30941         modules/timespec, modules/unlocked-io, modules/userspec,
30942         modules/utimecmp, modules/utimens, modules/xalloc, modules/xstrtol,
30943         modules/yesno:
30944         Remove lib_SOURCES line from Makefile.am section, as this is now
30945         done automatically by the corresponding Autoconf macro.
30946
30947 2005-03-21  Jim Meyering  <jim@meyering.net>
30948
30949         Changes imported from coreutils.
30950
30951         * lib/cycle-check.c: Don't include xalloc.h.
30952
30953         * lib/path-concat.c: Don't include assert.h.
30954         (path_concat): Remove assertion that would have triggered
30955         for ABASE starting with more than one slash.
30956         Reported by Andreas Schwab.
30957
30958         * lib/path-concat.c (path_concat): Set *BASE_IN_RESULT
30959         properly when ABASE is an absolute file name.
30960         Correct the description of this function.
30961         Include <assert.h>.
30962         Add an assertion and a test driver.
30963         This fixes a bug introduced on 2004-07-02.
30964         Andreas Schwab reported the resulting failure of cp --parents:
30965         http://lists.gnu.org/archive/html/bug-coreutils/2005-01/msg00130.html
30966
30967 2005-03-21  Jim Meyering  <jim@meyering.net>
30968
30969         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Invoke gl_FUNC_MEMRCHR.
30970         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Check for memrchr decl.
30971
30972 2005-03-21  Jim Meyering  <jim@meyering.net>
30973         and  Paul Eggert  <eggert@cs.ucla.edu>
30974
30975         * m4/acl.m4, m4/backupfile.m4, m4/c-strtod.m4, m4/canon-host.m4,
30976         m4/canonicalize.m4, m4/cloexec.m4, m4/closeout.m4, m4/dirfd.m4,
30977         m4/dirname.m4, m4/exclude.m4, m4/exitfail.m4, m4/file-type.m4,
30978         m4/filemode.m4, m4/fpending.m4, m4/fsusage.m4, m4/getcwd.m4,
30979         m4/getdate.m4, m4/getline.m4, m4/getpagesize.m4, m4/getpass.m4,
30980         m4/getugroups.m4, m4/group-member.m4, m4/hard-locale.m4, m4/hash.m4,
30981         m4/human.m4, m4/idcache.m4, m4/inttostr.m4, m4/long-options.m4,
30982         m4/makepath.m4, m4/md5.m4, m4/memcasecmp.m4, m4/memcoll.m4,
30983         m4/modechange.m4, m4/mountlist.m4, m4/nanosleep.m4, m4/path-concat.m4,
30984         m4/pathmax.m4, m4/physmem.m4, m4/posixtm.m4, m4/posixver.m4,
30985         m4/quote.m4, m4/quotearg.m4, m4/readtokens.m4, m4/readutmp.m4,
30986         m4/safe-read.m4, m4/safe-write.m4, m4/same.m4, m4/savedir.m4,
30987         m4/settime.m4, m4/sha1.m4, m4/sig2str.m4, m4/strdup.m4, m4/strftime.m4,
30988         m4/strndup.m4, m4/strverscmp.m4, m4/timespec.m4, m4/unlocked-io.m4,
30989         m4/userspec.m4, m4/utimecmp.m4, m4/utimens.m4, m4/xalloc.m4,
30990         m4/xnanosleep.m4, m4/xstrtol.m4, m4/yesno.m4:
30991         Use AC_LIBSOURCES and AC_LIBOBJ to indicate source and object files
30992         for these modules.
30993
30994 2005-03-18  Paul Eggert  <eggert@cs.ucla.edu>
30995
30996         * lib/strftime.c (my_strftime): If the underlying strftime returns 0
30997         (which shouldn't happen), generate nothing instead of returning 0
30998         immediately, so that nstrftime (NULL, ...) doesn't return 0.
30999
31000 2005-03-16  Bruno Haible  <bruno@clisp.org>
31001
31002         * modules/stdint (Makefile.am): Use HAVE_LONG_LONG_64BIT instead of
31003         HAVE_LONGLONG_64BIT.
31004
31005 2005-03-16  Bruno Haible  <bruno@clisp.org>
31006
31007         * m4/stdint.m4 (gl_STDINT_H): Define HAVE_LONG_LONG_64BIT instead of
31008         HAVE_LONGLONG_64BIT.
31009
31010 2005-03-16  Bruno Haible  <bruno@clisp.org>
31011
31012         * lib/stdint_.h: Use HAVE_LONG_LONG_64BIT instead of
31013         HAVE_LONGLONG_64BIT.
31014
31015 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
31016
31017         * lib/strftime.c (my_strftime): Prepend space to format so that we can
31018         reliably distinguish strftime failure from empty output on POSIX
31019         hosts.
31020
31021 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
31022
31023         * lib/iconvme.c (SIZE_MAX): New macro, if not already defined.
31024         (iconv_string): Don't guess a size-zero buffer, as that might cause
31025         buffer overrun.  Instead, avoid multiplying by MB_LEN_MAX if the
31026         result would be 'too large', where 'too large' is (heuristically)
31027         the square root of SIZE_MAX, divided by MB_LEN_MAX to allay
31028         overflow concerns.  This will prevent some unwanted malloc failures
31029         when the inputs are very large.
31030
31031 2005-03-15  Karl Berry  <karl@gnu.org>
31032
31033         * config/srclist.txt (config.rpath): from gettext.
31034         * config/config.rpath: update.
31035
31036 2005-03-15  Bruno Haible  <bruno@clisp.org>
31037
31038         * lib/regex.c (byte_re_match_2_internal): Rename local variable 'not'
31039         to 'negate'.
31040
31041         * lib/regex.c (byte_re_match_2_internal): Reduce scope of same_str_p
31042         variable.
31043
31044         * lib/regex.c (EXTEND_BUFFER, regcomp): Cast the realloc/malloc
31045         results.
31046
31047 2005-03-14  Simon Josefsson  <jas@extundo.com>
31048
31049         * lib/timegm.h: Use proper prototype CPP guards, reported by Dave Love
31050         <fx@gnu.org>.
31051
31052 2005-03-14  Paul Eggert  <eggert@cs.ucla.edu>
31053
31054         * lib/mktime.c (TYPE_TWOS_COMPLEMENT, TYPE_ONES_COMPLEMENT,
31055         TYPE_SIGNED_MAGNITUDE, TYPE_MINIMUM, TYPE_MAXIMUM): Sync from
31056         intprops.h.
31057         * lib/strtol.c: Likewise.
31058
31059 2005-03-14  Jim Meyering  <jim@meyering.net>
31060
31061         * lib/strftime.c (my_strftime) [HAVE_STRFTIME && ! (_NL_CURRENT
31062         && HAVE_STRUCT_ERA_ENTRY)]: Initialize the first byte of ubuf[]
31063         to be nonzero so that we (and caller) can detect the difference
31064         between a valid zero-length expansion and an error return, even
31065         when the underlying strftime fails before writing anything into
31066         that location.
31067
31068 2005-03-14  Bruno Haible  <bruno@clisp.org>
31069
31070         * m4/lib-link.m4, gettext.m4, nls.m4, po.m4:
31071         Update from GNU gettext 0.14.3.
31072
31073 2005-03-10  Jim Meyering  <jim@meyering.net>
31074
31075         * m4/save-cwd.m4 (gl_SAVE_CWD): Check for fchdir.
31076
31077 2005-03-10  Jim Meyering  <jim@meyering.net>
31078
31079         * lib/save-cwd.c [!HAVE_FCHDIR]: Define open, fchdir, and chdir_long
31080         so that this module works on systems without fchdir.
31081
31082 2005-03-09  Paul Eggert  <eggert@cs.ucla.edu>
31083
31084         Factor int-properties macros into a single file, except for
31085         glibc-related files.
31086         * lib/intprops.h: New file.
31087         * lib/getloadavg.c: Include it instead of limits.h.
31088         (INT_STRLEN_BOUND): Remove.
31089         * lib/human.c: Include intprops.h.
31090         (group_number): Use INT_STRLEN_BOUND instead of rolling it ourself.
31091         * lib/human.h (LONGEST_HUMAN_READABLE): Use 146/485 rather than
31092         302/1000.
31093         * lib/inttostr.h: Include intprops.h instead of limits.h.
31094         (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND): Remove.
31095         * lib/mktime.c (TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT): New macros,
31096         for consistency with intprops.h.
31097         (time_t_is_integer, twos_complement_arithmetic): Use them.
31098         * lib/sig2str.h: Include <signal.h>, intprops.h.
31099         (INT_STRLEN_BOUND): Remove.
31100         * lib/strftime.c (TYPE_SIGNED): Remove.
31101         (INT_STRLEN_BOUND): Switch to same implementation as intprops.h.
31102         * lib/strtol.c: Adjust comments to match intprops.h.
31103         * lib/userspec.c: Include intprops.h.
31104         (TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Remove.
31105         * lib/utimecmp.c, xnanosleep.c, xstrtol.c: Likewise.
31106         * lib/utimecmp.c (utimecmp): Use TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT
31107         instead of rolling our own expressions.
31108         * lib/xstrtol.c: Include xstrtol.h first, to test interface.
31109
31110         * lib/strftime.c: Include <stdbool.h>.  Use bool where appropriate,
31111         instead of int.
31112         (my_strftime): Do not mishandle years close to INT_MAX, by doing
31113         the right thing even if adding 1900 would overflow.  Similarly
31114         for tm_mon + 1 and tm_yday + 1.
31115         Make %Y always equivalent to %C%y, and similarly for %G and %g.
31116         (DO_NUMBER, DO_NUMBER_SPACEPAD): Set digits to d, not a conditional.
31117         (DO_SIGNED_NUMBER): New macro.
31118         (my_strftime) [HAVE_TZNAME]: Don't dump core if tp->tm_dst > 1.
31119
31120 2005-03-07  Bruno Haible  <bruno@clisp.org>
31121
31122         * m4/mmap-anon.m4 (MAP_FILE, MAP_FAILED): Remove definitions.
31123
31124 2005-03-07  Bruno Haible  <bruno@clisp.org>
31125
31126         * lib/pagealign_alloc.c (MAP_FILE, MAP_FAILED): Define fallbacks.
31127
31128 2005-03-04  Derek R. Price  <derek@ximbiot.com>
31129
31130         * gnulib-tool (func_cp_if_changed, func_mv_if_changed): New functions.
31131         (func_import): Only replace files via --import when they have actually
31132         changed.
31133
31134 2005-03-03  Derek R. Price  <derek@ximbiot.com>
31135
31136         * m4/mmap-anon.m4: New file.
31137         * m4/pagealign_alloc.m4: New file.
31138
31139 2005-03-03  Derek R. Price  <derek@ximbiot.com>
31140             Bruno Haible  <bruno@clisp.org>
31141
31142         * modules/pagealign_alloc: New file.
31143         * MODULES.html.sh (Memory management functions): Add pagealign_alloc.
31144
31145 2005-03-03  Derek R. Price  <derek@ximbiot.com>
31146             Bruno Haible  <bruno@clisp.org>
31147
31148         * lib/pagealign_alloc.h: New file.
31149         * lib/pagealign_alloc.c: New file.
31150
31151 2005-03-03  Bruno Haible  <bruno@clisp.org>
31152
31153         * m4/inttypes.m4, isc-posix.m4, once-only.m4:
31154         Use an all-permissive copyright notice, recommended by RMS.
31155
31156 2005-03-02  Bruno Haible  <bruno@clisp.org>
31157
31158         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Undo the replacement here. Because
31159         of AIX, the replacement has to be done only after <string.h> is
31160         included, therefore not in config.h. stpncpy.h does the replacement,
31161         and stpncpy.c uses it.
31162
31163 2005-03-02  Bruno Haible  <bruno@clisp.org>
31164
31165         * lib/stpncpy.h (stpncpy): Define as a macro without arguments, so that
31166         stpncpy.c uses it.
31167
31168 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
31169
31170         Remove workaround for bug in Linux kernel 2.6.8 or thereabouts.
31171         The workaround isn't strictly needed for POSIX conformance, and
31172         it's too much of a pain to configure and maintain.  We'll ask
31173         people to fix their kernels instead.
31174         * lib/xnanosleep.c: Don't include gethrxtime.h or xtime.h.
31175         (NANOSLEEP_BUG_WORKAROUND): Remove.
31176         (xnanosleep): Remove the workaround.
31177
31178 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
31179
31180         * modules/gettime (Makefile.am): Remove lib_SOURCES line.
31181         Reported by Derek Price.
31182         (Include): Add "timespec.h".
31183
31184         * modules/xnanosleep (Depends-on): Remove gethrxtime.
31185
31186 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
31187
31188         * m4/xnanosleep.m4 (gl_XNANOSLEEP): Remove configuration attempting
31189         to detect nanosleep bug.
31190
31191 2005-03-01  Bruno Haible  <bruno@clisp.org>
31192
31193         * lib/vasnprintf.c (EOVERFLOW): Define to a fallback if needed.
31194
31195 2005-02-26  Paul Eggert  <eggert@cs.ucla.edu>
31196
31197         * modules/gethrxtime: New file.
31198         * modules/xnanosleep (Files): Add m4/xnanosleep.m4.
31199         (Depends-on): Add gethrxtime.
31200         (configure.ac): Add gl_XNANOSLEEP.
31201         (Makefile.am): Remove lib_SOURCES line.
31202
31203 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
31204
31205         * m4/gethrxtime.m4, m4/xnanosleep.m4: New files.
31206         * m4/gettime.m4 (gl_GETTIME): Check for nanotime.
31207
31208 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
31209
31210         * lib/gethrxtime.h, lib/gethrxtime.c, lib/xtime.h: New files.
31211         * lib/timespec.h (gettime): Return void, since it always
31212         succeeds now.  All uses changed.
31213         * lib/gettime.c (gettime) Likewise.
31214         [HAVE_NANOTIME]: Prefer nanotime.
31215         Assume gettimeofday succeeds, as POSIX requires.
31216         Assime time () succeeds, since other code already does.
31217         * lib/xnanosleep.c: Include xtime.h and gethrxtime.h, not xalloc.h.
31218         (timespec_subtract): Remove.
31219         (NANOSLEEP_BUG_WORKAROUND): New constant.
31220         (xnanosleep): Use gethrxtime rather than gettime; this simplifies
31221         things considerably.  Use it only on GNU/Linux hosts, since the
31222         workaround shouldn't be needed elsewhere.
31223
31224 2005-02-24  Bruno Haible  <bruno@clisp.org>
31225
31226         * modules/gettext (Files): Add m4/glibc2.m4.
31227
31228 2005-02-24  Bruno Haible  <bruno@clisp.org>
31229
31230         * m4/gettext.m4, intdiv0.m4, intmax.m4, inttypes-pri.m4, lcmessage.m4:
31231         * m4/lib-link.m4, lib-prefix.m4, nls.m4, po.m4, printf-posix.m4:
31232         * m4/progtest.m4:
31233         Update from GNU gettext 0.14.2.
31234         * m4/glibc2.m4: New file, from GNU gettext 0.14.2.
31235
31236 2005-02-24  Bruno Haible  <bruno@clisp.org>
31237
31238         * lib/localcharset.c: Update from GNU gettext 0.14.2.
31239         * lib/config.charset: Update from GNU gettext 0.14.2.
31240
31241 2005-02-24  Bruno Haible  <bruno@clisp.org>
31242
31243         * lib/gettext.h: Update from GNU gettext 0.14.2.
31244
31245 2005-02-23  Simon Josefsson  <jas@extundo.com>
31246
31247         * m4/iconvme.m4: New file.
31248
31249 2005-02-23  Jim Meyering  <jim@meyering.net>
31250
31251         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Revert yesteday's
31252         change.
31253         Thanks to Bruno Haible for catching it.
31254
31255 2005-02-22  Simon Josefsson  <jas@extundo.com>
31256
31257         * modules/iconvme: New file.
31258
31259         * MODULES.html.sh: Add iconvme.
31260
31261 2005-02-22  Simon Josefsson  <jas@extundo.com>
31262
31263         * lib/iconvme.h, lib/iconvme.c: New files, from libc.
31264
31265 2005-02-22  Simon Josefsson  <jas@extundo.com>
31266
31267         * config/srclist.txt: Sync iconvme.h, iconvme.c from libc.
31268
31269 2005-02-22  Jim Meyering  <jim@meyering.net>
31270
31271         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Fix typo:
31272         s/ifndef/ifdef/.
31273
31274 2005-02-20  Neil Conway  <neilc@samurai.com>
31275
31276         * lib/xgethostname.c (xgethostname): Check for ENOMEM, which is
31277         returned by OSX/Darwin if the specified buffer is not large
31278         enough for the hostname.
31279
31280 2005-02-03  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
31281
31282         * lib/argp-help.c (__argp_help): Create a fake struct argp_state and
31283         pass it to _help, otherwise the latter coredumps trying to
31284         dereference state.root_argp.
31285
31286 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
31287
31288         * modules/chdir-long (Depends-on): Add memrchr.
31289         * modules/memrchr (Files): Add lib/memrchr.h.
31290         (Include): "memrchr.h".
31291
31292 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
31293
31294         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Add AC_LIBSOURCES, for memrchr.h.
31295
31296 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
31297
31298         * lib/memrchr.h: New file.
31299         * lib/chdir-long.c: Include it.
31300         * lib/memrchr.c [!defined _LIBC]: Include it rather than <string.h>
31301         Don't bother including stddef.h.
31302
31303 2005-02-01  Paul Eggert  <eggert@cs.ucla.edu>
31304
31305         * lib/mountlist.h (MOUNTLIST_H_): New macro, to protect against double
31306         inclusion.
31307         Include <sys/types.h>, for dev_t.
31308         (ME_DUMMY, ME_REMOTE): Move from here....
31309         * lib/mountlist.c (ME_DUMMY, ME_REMOTE): To here.
31310         (ME_DUMMY): Count "subfs" as a dummy.  Problem reported by
31311         Dmitry V. Levin.
31312         Include mountlist.h first, to test the interface.
31313
31314 2005-01-29  Bruno Haible  <bruno@clisp.org>
31315
31316         * lib/progname.c (program_name): Initialize.
31317         Needed when linking statically on MacOS X.
31318
31319 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
31320
31321         Sync from coreutils.
31322         * modules/getloadavg (Files): Remove m4/getloadavg.m4.
31323         (Depends-on): Add c-strtod.
31324         (configure.ac): Replace gl_FUNC_GETLOADAVG with AC_FUNC_GETLOADAVG.
31325
31326 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
31327
31328         Sync from coreutils.
31329         * m4/getloadavg.m4, glibc.m4, search-libs.m4: Remove.
31330
31331         Remove files that are specific to coreutils.
31332         * m4/check-decl.m4, jm-macros.m4, lib-check.m4, prereq.m4: Remove.
31333
31334 2005-01-28  Bruno Haible  <bruno@clisp.org>
31335
31336         * modules/javacomp: New file.
31337         * MODULES.html.sh (Java): Add javacomp.
31338
31339 2005-01-28  Bruno Haible  <bruno@clisp.org>
31340
31341         * m4/javacomp.m4: New file, from GNU gettext.
31342
31343 2005-01-28  Bruno Haible  <bruno@clisp.org>
31344
31345         * lib/javacomp.sh.in: New file, from GNU gettext.
31346         * lib/javacomp.h: New file, from GNU gettext.
31347         * lib/javacomp.c: New file, from GNU gettext.
31348
31349 2005-01-26  Simon Josefsson  <jas@extundo.com>
31350
31351         * lib/gai_strerror.c: Use GPL in header.
31352
31353 2005-01-26  Bruno Haible  <bruno@clisp.org>
31354
31355         * modules/javaexec: New file.
31356         * MODULES.html.sh (Java): Add javaexec.
31357
31358 2005-01-26  Bruno Haible  <bruno@clisp.org>
31359
31360         * m4/javaexec.m4: New file, from GNU gettext.
31361
31362 2005-01-26  Bruno Haible  <bruno@clisp.org>
31363
31364         * lib/javaexec.sh.in: New file, from GNU gettext.
31365         * lib/javaexec.h: New file, from GNU gettext.
31366         * lib/javaexec.c: New file, from GNU gettext.
31367
31368 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
31369
31370         * modules/lchown (Depends-on): Remove lchown.h
31371
31372 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
31373
31374         * m4/sysexits.m4 (gl_SYSEXITS): Reverted logic. SYSEXITS_H
31375         must be defined if the header file was not found, in order
31376         to provide a replacement. Reported by Todd Vierling <tv@duh.org>
31377
31378 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
31379
31380         * lib/argp-help.c (hol_entry_help): Avoid using non-constant
31381         initializers for struct pentry_state.
31382         (__argp_error): Check return value of __asprintf
31383         (__argp_failure): Translate error message
31384
31385         * lib/argp-parse.c: Removed braces around the expansion of N_()
31386
31387 2005-01-23  Paul Eggert  <eggert@cs.ucla.edu>
31388
31389         * m4/acl.m4, afs.m4, alloca.m4, argp.m4, assert.m4, atexit.m4,
31390         backupfile.m4, base64.m4, bison.m4, c-bs-a.m4, c-stack.m4,
31391         c-strtod.m4, calloc.m4, canon-host.m4, canonicalize.m4,
31392         clock_time.m4, cloexec.m4, closeout.m4, d-ino.m4, d-type.m4,
31393         dirfd.m4, dirname.m4, dos.m4, dup2.m4, error.m4, euidaccess.m4,
31394         exclude.m4, exitfail.m4, extensions.m4, fcntl-safer.m4,
31395         file-type.m4, fileblocks.m4, filemode.m4, fnmatch.m4, fpending.m4,
31396         free.m4, fstypename.m4, fsusage.m4, ftruncate.m4, getaddrinfo.m4,
31397         getcwd-path-max.m4, getcwd.m4, getdate.m4, getdomainname.m4,
31398         getgroups.m4, gethostname.m4, getline.m4, getndelim2.m4,
31399         getnline.m4, getopt.m4, getpagesize.m4, getpass.m4, getsubopt.m4,
31400         gettime.m4, gettimeofday.m4, getugroups.m4, getusershell.m4,
31401         group-member.m4, hard-locale.m4, hash.m4, host-os.m4, human.m4,
31402         idcache.m4, inttostr.m4, isdir.m4, jm-winsz1.m4, jm-winsz2.m4,
31403         link-follow.m4, long-options.m4, ls-mntd-fs.m4, lstat.m4,
31404         makepath.m4, mathl.m4, md5.m4, memcasecmp.m4, memchr.m4,
31405         memcmp.m4, memcoll.m4, memcpy.m4, memmem.m4, memmove.m4,
31406         memrchr.m4, memset.m4, mkdir-slash.m4, mkstemp.m4, mktime.m4,
31407         modechange.m4, mountlist.m4, nanosleep.m4, obstack.m4,
31408         path-concat.m4, pathmax.m4, perl.m4, physmem.m4, poll.m4,
31409         posixtm.m4, posixver.m4, putenv.m4, quote.m4, quotearg.m4,
31410         readdir.m4, readtokens.m4, readutmp.m4, regex.m4, rename.m4,
31411         restrict.m4, rmdir-errno.m4, rmdir.m4, rpmatch.m4, same.m4,
31412         savedir.m4, settime.m4, sha1.m4, sig2str.m4, snprintf.m4,
31413         sockpfaf.m4, st_dm_mode.m4, st_mtim.m4, stat.m4, stdint.m4,
31414         stdio-safer.m4, strchrnul.m4, strdup.m4, strerror.m4,
31415         strerror_r.m4, strftime.m4, strndup.m4, strnlen.m4, strsep.m4,
31416         strtod.m4, strtoimax.m4, strtok_r.m4, strtol.m4, strtoll.m4,
31417         strtoul.m4, strtoull.m4, strtoumax.m4, strverscmp.m4, sysexits.m4,
31418         time_r.m4, timegm.m4, timespec.m4, tm_gmtoff.m4, tzset.m4,
31419         uint32_t.m4, uintptr_t.m4, unistd-safer.m4, unlink-busy.m4,
31420         unlocked-io.m4, uptime.m4, userspec.m4, utimbuf.m4, utime.m4,
31421         utimecmp.m4, utimens.m4, utimes-null.m4, vsnprintf.m4, xalloc.m4,
31422         xgetcwd.m4, xreadlink.m4, xstrndup.m4, xstrtod.m4, xstrtoimax.m4,
31423         xstrtol.m4, xstrtoumax.m4, yesno.m4:
31424         Use an all-permissive copyright notice, recommended by RMS.
31425
31426 2005-01-21  Paul Eggert  <eggert@cs.ucla.edu>
31427
31428         * modules/chdir-long (Depends-on): Remove mempcpy.
31429
31430 2005-01-21  Jim Meyering  <jim@meyering.net>
31431
31432         * lib/openat.h (AT_SYMLINK_NOFOLLOW): Define to 4096, so it's the
31433         same value as for Solaris 9.
31434
31435         * lib/chdir-long.c (chdir_long): Rewrite to remove limitation on
31436         component length.  This included changing the parameter to be
31437         of type `char *' rather than `char const *'.
31438         * lib/chdir-long.h (chdir_long): Update prototype.
31439
31440         * lib/openat.c (fdopendir, fstatat): New functions.
31441         * lib/openat.h: Include headers required for use of DIR and struct
31442         stat.
31443         [AT_SYMLINK_NOFOLLOW]: Define.
31444         (fdopendir, fstatat): Add prototypes.
31445
31446 2005-01-21  Bruno Haible  <bruno@clisp.org>
31447
31448         * modules/classpath: New file.
31449         * MODULES.html.sh (Java): Add classpath.
31450
31451 2005-01-21  Bruno Haible  <bruno@clisp.org>
31452
31453         * lib/classpath.h: New file, from GNU gettext.
31454         * lib/classpath.c: New file, from GNU gettext.
31455
31456 2005-01-20  Simon Josefsson  <jas@extundo.com>
31457
31458         * modules/version-etc-fsf: New file.
31459
31460 2005-01-20  Simon Josefsson  <jas@extundo.com>
31461
31462         * lib/version-etc-fsf.c: New file, with version_etc_copyright.
31463         * lib/version-etc.c: Remove version_etc_copyright.
31464         * lib/version-etc.h (version_etc_copyright): Use [] instead of * in
31465         prototype, suggested by Paul Eggert <eggert@CS.UCLA.EDU>.
31466
31467 2005-01-20  Simon Josefsson  <jas@extundo.com>
31468
31469         * lib/base64.h (isbase64): Add.
31470
31471         * lib/base64.c (isb64): Rename to isbase64, use to_uchar instead of
31472         using a unsigned prototype, don't inline.
31473         (base64_decode): Use it.
31474
31475 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
31476
31477         * m4/save-cwd.m4 (gl_SAVE_CWD): Remove check for fcntl; we now assume
31478         it.
31479
31480 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
31481
31482         * lib/save-cwd.c (save_cwd): Remove code to support the case
31483         where fchdir is missing or flaky.
31484
31485 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
31486
31487         * MODULES.html.sh (Command-line arguments): Add version-etc-fsf.
31488
31489 2005-01-19  Paul Eggert  <eggert@cs.ucla.edu>
31490
31491         * modules/mempcpy (Makefile.am): Remove mention of mempcpy.h;
31492         AC_LIBSOURCES now does this.
31493         * MODULES.html.sh (Sizes of integer types <limits.h>): New element,
31494         with new ullong_max module.
31495
31496 2005-01-19  Bruno Haible  <bruno@clisp.org>
31497
31498         * modules/sh-quote: New file.
31499         * MODULES.html.sh (Executing programs): Add sh-quote.
31500
31501 2005-01-19  Bruno Haible  <bruno@clisp.org>
31502
31503         * lib/sh-quote.h: New file, from GNU gettext.
31504         * lib/sh-quote.c: New file, from GNU gettext.
31505
31506 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
31507
31508         Merge from coreutils.
31509         * m4/ullong_max.m4: New file.
31510         * m4/jm-macros.m4 (gl_MACROS): Require gl_ULLONG_MAX.
31511         (gl_MACROS): Assume localeconv exists.
31512
31513 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
31514
31515         Merge changes from coreutils, as described below in several
31516         changelogs dated today.
31517
31518         * lib/save-cwd.c: Include "save-cwd.h" before other include files.
31519         (O_DIRECTORY): Remove; not needed here, since "." must be
31520         a directory.  All uses removed.
31521         (save_cwd): Use __sgi || __sun, not sun || __sun.  __sun is
31522         universal on Suns, and we also need to test for IRIX.
31523         Revamp code to use 'if' rather than '#if'.
31524         Avoid unnecessary comparison of cwd->desc to 0.
31525
31526         * lib/utimens.c (futimens): Robustify the previous patch, by checking
31527         for known valid error numbers rather than observed invalid ones.
31528
31529 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
31530
31531         * modules/ullong_max: New file.
31532
31533         * modules/chdir-long, modules/openat: New files.
31534         * modules/save-cwd (Depends-on): Depend on chdir-long.
31535         (Makefile.am): Remove lib_SOURCES; now handled by AC_LIBSOURCES.
31536
31537 2005-01-18  Jim Meyering  <jim@meyering.net>
31538
31539         Merge from coreutils.
31540         * m4/chdir-long.m4, m4/openat.m4: New files.
31541         * m4/save-cwd.m4 (gl_SAVE_CWD): Add AC_LIBSOURCES for save-cwd.c,
31542         save-cwd.h.  Add AC_LIBOBJ for save-cwd.
31543         * m4/chown.m4 (gl_FUNC_CHOWN): When cross-compiling, assume that chown
31544         is sane and DOES follow symlinks.  Besides, testing 20 different
31545         systems found no broken chown implementations.
31546         Prompted by a change in rsync's copy of this macro.
31547         * m4/jm-macros.m4 (gl_MACROS): Require gl_FUNC_CHDIR_LONG.
31548
31549         * m4/lchown.m4 (gl_FUNC_LCHOWN): Use AC_LIBSOURCES.
31550
31551         * m4/utimes.m4: Work around tests/touch/empty-file failure on a system
31552         (sparc64, Linux-2.4.28, glibc-2.3.3) that didn't honor utimes'
31553         NULL-means-set-to-current-time semantics.
31554         Remove temporary file immediately, rather than waiting
31555         for configure's at-exit trap code to do it.
31556
31557 2005-01-18  Jim Meyering  <jim@meyering.net>
31558
31559         * lib/version-etc.c (version_etc_copyright): Update copyright date.
31560
31561         * lib/utimens.c (futimens): Account for the fact that futimes
31562         can also fail with errno == ENOSYS or errno == ENOENT.
31563         Patch from Dmitry V. Levin.
31564
31565         Change the name of the robust chdir function from chdir to chdir_long.
31566         * lib/save-cwd.c: Include chdir-long.h rather than chdir.h.
31567         (restore_cwd): Use chdir_long, not chdir.
31568         * lib/chdir-long.c: Renamed from chdir.c.
31569         * lib/chdir-long.h: Renamed from chdir.h.
31570         [!defined PATH_MAX]: Define chdir_long to chdir on systems like the
31571         Hurd.
31572
31573 2005-01-18  Bruno Haible  <bruno@clisp.org>
31574
31575         * m4/allocsa.m4, m4/codeset.m4, m4/copy-file.m4, m4/eaccess.m4:
31576         * m4/eealloc.m4, m4/eoverflow.m4, m4/execute.m4, m4/fatal-signal.m4:
31577         * m4/findprog.m4, m4/glibc21.m4, m4/iconv.m4, m4/intmax_t.m4:
31578         * m4/inttypes_h.m4, m4/lib-ld.m4, m4/lib-link.m4, m4/lib-prefix.m4:
31579         * m4/linebreak.m4, m4/localcharset.m4, m4/longdouble.m4:
31580         * m4/longlong.m4, m4/mbrtowc.m4, m4/mbstate_t.m4, m4/mbswidth.m4:
31581         * m4/mkdtemp.m4, m4/pipe.m4, m4/readlink.m4, m4/safe-read.m4:
31582         * m4/safe-write.m4, m4/setenv.m4, m4/sig_atomic_t.m4:
31583         * m4/signalblocking.m4, m4/signed.m4, m4/size_max.m4, m4/ssize_t.m4:
31584         * m4/stdbool.m4, m4/stdint_h.m4, m4/stpcpy.m4, m4/stpncpy.m4:
31585         * m4/strcase.m4, m4/strcspn.m4, m4/strpbrk.m4, m4/strstr.m4:
31586         * m4/ucs4-utf.m4, m4/uintmax_t.m4, m4/ulonglong.m4, m4/unicodeio.m4:
31587         * m4/utf-ucs4.m4, m4/vasnprintf.m4, m4/vasprintf.m4:
31588         * m4/wait-process.m4, m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4:
31589         Use an all-permissive copyright notice, recommended by RMS.
31590
31591 2005-01-18  Bob Proulx  <bob@proulx.com>
31592
31593         * lib/obstack.c [DEFAULT_ALIGNMENT]: Use an intermediate type to
31594         simplify offsetof() macro construct to avoid compile failure with
31595         native HP-UX 11.0 ANSI C compiler.
31596
31597 2005-01-17  Bruno Haible  <bruno@clisp.org>
31598
31599         * lib/stpncpy.c: Remove HAVE_STPNCPY and gnu_stpncpy renaming,
31600         redundant because stpncpy.m4 takes care of it.
31601
31602 2005-01-17  Bruno Haible  <bruno@clisp.org>
31603
31604         * lib/progreloc.c: Include xalloc.h instead of xmalloc.h.
31605
31606 2005-01-17  Bruno Haible  <bruno@clisp.org>
31607
31608         * lib/progreloc.c (xstrdup): Define as strdup if no xmalloc should be
31609         used.
31610
31611 2005-01-17  Bruno Haible  <bruno@clisp.org>
31612
31613         * lib/fwriteerror.h (fwriteerror): Change specification to include
31614         fclose.
31615         * lib/fwriteerror.c: Include <stdbool.h>.
31616         (fwriteerror): At the end, close the file stream. Record whether
31617         stdout was already closed.
31618
31619 2005-01-17  Bruno Haible  <bruno@clisp.org>
31620
31621         * lib/execute.c (environ): Declare if needed.
31622         * lib/pipe.c (environ): Likewise.
31623         Reported by Michael Schloh von Bennewitz <michael.schloh@cw.com>.
31624
31625 2005-01-11  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
31626
31627         * modules/argp: Depend on vsnprintf
31628
31629 2005-01-10  Jim Meyering  <jim@meyering.net>
31630
31631         * modules/closeout (Depends-on): Add atexit.
31632
31633 2005-01-06  Bruno Haible  <bruno@clisp.org>
31634
31635         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Rename stpncpy to gnu_stpncpy here.
31636
31637 2005-01-04  Paul Eggert  <eggert@cs.ucla.edu>
31638
31639         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Move these conditional
31640         definitions to be after all include files, to avoid collisions.
31641         Problem reported by Bob Proulx.
31642
31643 2005-01-04  Jim Meyering  <jim@meyering.net>
31644
31645         Changes imported from coreutils.
31646         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Rather than using "conftestXXXXXX"
31647         as the mkstemp template, use a temporary directory and an
31648         8.3-friendly template to avoid trouble on systems like DJGPP.
31649         Reported by Juan M. Guerrero via Stepan Kasal.
31650         * m4/(gl_FUNC_MKSTEMP): Include <unistd.h> for the declaration of
31651         close. Remove the temporary directory right away, rather than waiting
31652         for configure's at-exit trap code to do it.
31653         Suggestion from Stepan Kasal.
31654
31655 2005-01-01  Simon Josefsson  <jas@extundo.com>
31656
31657         * gnulib-tool: Print #include directives when --import'ing.
31658
31659 2004-12-28  Simon Josefsson  <jas@extundo.com>
31660
31661         * tests/test-base64.c: Include required header files.  Remove
31662         unused variables.
31663
31664 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
31665
31666         * modules/error (Depends-on): Remove gettext.
31667
31668 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
31669
31670         * lib/error.c [!_LIBC && !ENABLE_NLS]: Do not include "gettext.h";
31671         not needed.  This removes a dependency on the gettext module.
31672         [defined _LIBC]: Do not include <libintl.h>; not needed.
31673
31674 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
31675
31676         * m4/c-strtod.m4 (gl_C99_STRTOLD): New macro.
31677         (gl_C_STRTOD): Use it instead of AC_CHECK_DECLS_ONCE(strtold).
31678
31679 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
31680
31681         * lib/c-strtod.c (STRTOD): Depend on HAVE_C99_STRTOLD, not
31682         HAVE_DECL_STRTOLD.
31683
31684 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
31685
31686         * modules/getdate (Depends-on): Remove alloca-opt.
31687
31688 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
31689
31690         * m4/getdate.m4 (gl_GETDATE): Remove AC_FUNC_ALLOCA.
31691
31692 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
31693
31694         * lib/argp-parse.c: Include <stddef.h>.
31695         (alignof, alignto): New macros.
31696         (parser_init): Don't assume that void * is aligned sufficiently
31697         for struct option.
31698
31699         * lib/getdate.y (YYSTACK_USE_ALLOCA): Define to 0, since there's no
31700         need to extend the stack.
31701         (YYINITDEPTH): New macro, so that the initial stack isn't overly
31702         large.
31703
31704 2004-12-22  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
31705
31706         * lib/argp-parse.c (parser_init): Avoid arithmetics on void pointers.
31707
31708 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
31709
31710         * modules/regex (lib_SOURCES): Remove regex.c, undoing previous
31711         (2004-10-24) change.  Apparently this was a false alarm.
31712
31713         * modules/getdate: Depend on alloca-opt, not alloca.
31714
31715 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
31716
31717         * lib/alloca_.h: Conditionalize on _GNULIB_ALLOCA_H, not _ALLOCA_H.
31718         Remove now-obsolete comment about AIX.
31719         * lib/getdate.y: Include <alloca.h> only if HAVE_ALLOCA.
31720         (YYSTACK_USE_ALLOCA): Define to 0 if !HAVE_ALLOCA.
31721         (YYMAXDEPTH): New macro.
31722
31723 2004-12-18  Simon Josefsson  <jas@extundo.com>
31724
31725         * modules/alloca: Depend on alloca-opt, instead of duplicating it.
31726
31727 2004-12-18  Bruno Haible  <bruno@clisp.org>
31728
31729         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Also test for sigaction.
31730
31731 2004-12-18  Bruno Haible  <bruno@clisp.org>
31732
31733         * lib/fatal-signal.c (fatal_signals): Make non-const.
31734         (init_fatal_signals): New function.
31735         (uninstall_handlers, install_handlers): Ignore signals that were set to
31736         SIG_IGN.
31737         (at_fatal_signal): Call init_fatal_signals.
31738         (init_fatal_signal_set): Likewise. Ignore signals that were set to
31739         SIG_IGN.
31740         Reported by Paul Eggert.
31741
31742 2004-12-18  Bruno Haible  <bruno@clisp.org>
31743
31744         * doc/alloca.texi: New file.
31745         * doc/alloca-opt.texi: New file.
31746
31747 2004-12-17  Jim Meyering  <jim@meyering.net>
31748
31749         * config/install-sh: Use `(exit N); exit N', not `(exit N); exit'.
31750         Otherwise, install-sh could exit with improper exit status when
31751         exiting via a trapped interrupt.  Thanks to a report from Bob Proulx.
31752
31753 2004-12-16  Simon Josefsson  <jas@extundo.com>
31754
31755         * tests/test-base64.c: Add license.
31756
31757 2004-12-15  Stepan Kasal  <address@hidden>
31758
31759         * gnulib-tool (func_emit_lib_Makefile_am): Shorten a long sed command.
31760
31761 2004-12-12  Paul Eggert  <eggert@cs.ucla.edu>
31762
31763         * modules/getcwd (Files): Add m4/d-ino.m4.
31764         Suggested by Mark D. Baushke.
31765
31766 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
31767
31768         * lib/getdate.y (textint): New member "negative".
31769         (time_zone_hhmm): New function.
31770         Expect 14 shift-reduce conflicts, not 13.
31771         (o_colon_minutes): New rule.
31772         (time, zone): Use it to add support for +HH:MM, UTC+HH:MM.
31773         (yylex): Set the "negative" member of signed numbers.
31774
31775 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
31776
31777         * doc/getdate.texi (Time of day items, Time zone items):
31778         Describe new formats +00:00, UTC+00:00.
31779
31780 2004-12-07  Paul Eggert  <eggert@cs.ucla.edu>
31781
31782         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Fix typo in previous change:
31783         spurious "-l"s.  Problem reported by Stepan Kasal.
31784
31785 2004-12-06  Paul Eggert  <eggert@cs.ucla.edu>
31786
31787         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): New macro, to work around bug
31788         in Autoconf 2.59.  Problem reported by Mark D. Baushke.
31789
31790 2004-12-04  Simon Josefsson  <jas@extundo.com>
31791
31792         * modules/getaddrinfo (License): Add LGPL, reported by Yoann
31793         Vandoorselaere <yoann@prelude-ids.org>.
31794
31795 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
31796
31797         Changes imported from coreutils.
31798         * m4/hard-locale.m4 (gl_HARD_LOCALE): Assume locale.h and setlocale
31799         exist.
31800         * m4/human.m4 (gl_HUMAN): Assume locale.h and localeconv exist.
31801
31802 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
31803
31804         Changes imported from coreutils.
31805         * lib/hard-locale.c: Assume <locale.h> exists.
31806         Include "strdup.h".
31807         (GLIBC_VERSION): New macro.
31808         (hard_locale): Assume setlocale exists.
31809         Rewrite to avoid #ifdef.
31810         Use strdup rather than malloc + strcpy.
31811         * lib/human.c: Assume <locale.h> exists.
31812         (human_readable): Assume localeconv exists.
31813
31814 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
31815
31816         * modules/hard-locale (Depends-on): Add strdup.
31817
31818 2004-12-01  Jakub Jelinek  <jakub@redhat.com>
31819
31820         * lib/mktime.c (__mktime_internal): If SEC_REQUESTED != SEC,
31821         convert T2, not T.  (Imported from libc.)
31822
31823 2004-11-30  Simon Josefsson  <jas@extundo.com>
31824
31825         * modules/restrict (License): Change to LGPL.
31826
31827 2004-11-30  Simon Josefsson  <jas@extundo.com>
31828
31829         * m4/restrict.m4: Add copyright and copying conditions.
31830
31831 2004-11-30  Simon Josefsson  <jas@extundo.com>
31832
31833         * m4/base64.m4: New file.
31834
31835 2004-11-30  Simon Josefsson  <jas@extundo.com>
31836
31837         * MODULES.html.sh (Extra functions based on ANSI C 89): Add
31838         base64.
31839
31840         * tests/test-base64.c: New file.
31841
31842         * modules/base64: New file.
31843
31844 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
31845
31846         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX):
31847         Define HAVE_PARTLY_WORKING_GETCWD if getcwd is partly working.
31848
31849         * m4/readutmp.m4 (gl_READUTMP): Don't check for sys/param.h.
31850
31851 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
31852
31853         * lib/getcwd.c (is_ENAMETOOLONG): New macro.
31854         (__getcwd.c): Don't restore errno; glibc doesn't.
31855         [HAVE_PARTLY_WORKING_GETCWD && !defined AT_FDCWD]: Try system getcwd
31856         first, falling back to our code only if its results look suspicious.
31857         Ensure that the resulting buffer is only as large as necessary.
31858
31859         * lib/readutmp.c: Include readutmp.h first.
31860         Include <errno.h>, since readutmp.h no longer does that.
31861         * lib/readutmp.h: Don't include <errno.h>,
31862         <sys/param.h>, <time.h>; not needed to establish interface.
31863         (errno): Remove decl.
31864         (HAVE_STRUCT_XTMP_UT_TYPE): Remove; no longer needed.
31865         (UT_TYPE_EQ, UT_TYPE_NOT_DEFINED, UT_TYPE_BOOT_TIME,
31866         UT_TYPE_USER_PROCESS, IS_USER_PROCESS): New macros.
31867
31868 2004-11-28  Simon Josefsson  <jas@extundo.com>
31869
31870         * lib/base64.h, base64.c: New file.
31871
31872 2004-11-27  Paul Eggert  <eggert@cs.ucla.edu>
31873
31874         * lib/getcwd.h: New file, which I forgot to check in on 2004-11-25.
31875
31876 2004-11-26  Paul Eggert  <eggert@cs.ucla.edu>
31877
31878         * modules/getcwd (Files): Add lib/getcwd.h, m4/getcwd.m4.
31879         (Depends-on): Remove pathmax, same.  Add mempcpy.
31880         (configure.ac): GL_FUNC_GETCWD_PATH_MAX -> gl_FUNC_GETCWD.
31881         (Makefile.am): Append getcwd.h to lib_SOURCES.
31882         (Include): Add getcwd.h.
31883         (Maintainer): Change from Jim Meyering to "all, glibc",
31884         since getdate now uses intended-for-glibc code.
31885         * modules/xgetcwd (Files): Remove m4/getcwd.m4.
31886         (Depends-on): Depend on getcwd.  Do not depend on pathmax.
31887
31888 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
31889
31890         Fix problems reported by Scott S. Tinsley for HP-UX 11.11 using
31891         HP's ANSI C compiler.
31892         * lib/fsusage.c (statvfs) [HAVE_SYS_STATVFS_H]: Remove decl.
31893         Declaring int functions causes warnings on some modern systems and
31894         shouldn't be needed to compile on ancient ones.
31895         * lib/same.c (MIN) [defined MIN]: Don't define, since it's already
31896         defined.
31897
31898         * lib/getcwd.c: Replace by a copy of glibc/sysdeps/posix/getcwd.c, but
31899         with the following changes.
31900         (__set_errno): Parenthesize properly.
31901         Include <stdbool.h>.
31902         (MIN, MAX, MATCHING_INO): New macros.
31903         (__getcwd): Define with prototype, not K&R form.
31904         Use heuristics to allocate default buffer on stack if possible.
31905         If AT_FDCWD is defined, use openat and fstatat to avoid O(N**2)
31906         behavior, and to avoid the PATH_MAX limit when computing
31907         ../../../../...
31908         Use MATCHING_INO to compare inode number to file.
31909         Check for arithmetic overflow in size calculations.
31910         Fix bug in reallocation of dot array that caused getcwd to fail
31911         on directories nested deeper than 75.
31912         Be more careful about saving errno on error.
31913         Do not use realloc; use only free+malloc, as this is a bit
31914         more flexible and avoids a needless copy operation.
31915         Do not inspect st_dev and st_ino for symbolic links; POSIX
31916         doesn't specify the latter.
31917         Check for closedir errors.
31918         Avoid needless casts.
31919         Use "#ifdef weak_alias" around weak_alias, to be like other
31920         glibc code.
31921         The following changes to getcwd.c have effect only when used in
31922         gnulib; they have no effect inside glibc proper.
31923         (#pragma alloca) [defined _AIX && !defined __GNUC__]: Remove,
31924         as alloca isn't used.
31925         (alloca, __alloca): Likewise.
31926         [!_LIBC]: Include "getcwd.h", "mempcpy.h".
31927         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
31928         unconditionally, as gnulib assumes C89 or better.
31929         Do not include <sys/param.h>.
31930         (errno) [!defined __GNU_LIBRARY__ && !defined STDC_HEADERS]: Remove
31931         no-longer-necessary 'extern int errno' decl; gnulib assumes C89 or
31932         better.
31933         (NULL) [!defined NULL]: Remove; we assume C89 or better.
31934         Include <dirent.h> in a way that is compatible with modern Autoconf.
31935         (_D_ALLOC_NAMELEN, _D_EXACT_NAMLEN):
31936         New macros, if not already defined.
31937         Include <unistd.h> if _LIBC, not if __GNU_LIBRARY__.
31938         Use "_LIBC", not "defined _LIBC", for consistency.
31939         (HAVE_MEMPCPY): Remove; no longer needed now that gnulib has
31940         a mempcpy module.
31941         (__lstat, __closedir, __opendir, __readdir) [!_LIBC]: New macros.
31942         (GETCWD_RETURN_TYPE): Remove.  All uses replaced by char *.
31943         * lib/xgetcwd.c: David MacKenzie's old code was removed, so give
31944         credit only to Jim Meyering and adjust the copyright dates.
31945         Do not include <limits.h>, <stdio.h>, <sys/types.h>,
31946         <stdlib.h>, <unistd.h>, "pathmax.h".
31947         Instead, include "xgetcwd.h" (first) and "getcwd.h".
31948         (INITIAL_BUFFER_SIZE): Remove.
31949         (xgetcwd): Rely on getcwd, since we now depend on a reliable one.
31950
31951 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
31952
31953         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Renamed from
31954         GL_FUNC_GETCWD_PATH_MAX for consistency.  All uses changed.
31955         Use the _ONCE methods, for efficiency.
31956         Check for fcntl.h.  In test program, include <errno.h>
31957         and <fcntl.h> if available.  Remove old K&R cruft from
31958         test program.  Check for common errors in GNU/Linux,
31959         OpenBSD, and Solaris.  Just set gl_cv_func_getcwd_path_max;
31960         don't do AC_LIBOBJ, as that's getcwd.m4's job.
31961         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL): Renamed from
31962         AC_FUNC_GETCWD_NULL.  All used changed.  Change cache variable
31963         name accordingly.
31964         (gl_FUNC_GETCWD, gl_PREREQ_GETCWD): New macros.  Revamp to
31965         accommodate new getcwd.c.
31966         * m4/jm-macros.m4 (gl_MACROS): Don't require GL_FUNC_GETCWD_PATH_MAX.
31967         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_MEMPCPY.
31968         * m4/xgetcwd.m4 (gl_XGETCWD): Replace with gl_FUNC_GETCWD, since
31969         that's all we need now.
31970
31971 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
31972
31973         * m4/argp.m4 (gl_ARGP): Require gl_GETOPT_SUBSTITUTE unconditionally:
31974         argp-parse.c depends on getopt internals, that means we should
31975         always use our getopt, to be on the safe side.
31976         * m4/getopt.m4 (gl_GETOPT): Check if GETOPT_H is already set, in
31977         order not to spoil the result of an eventual previous invocation
31978         of gl_GETOPT_SUBSTITUTE.
31979
31980 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
31981
31982         * lib/getopt_.h: Re-addition of __getopt_argv_const caused
31983         redefinition warnings. To avoid them, include the defines
31984         in `#if !defined __need_getopt ... #endif'. The only place
31985         where __getopt_argv_const is used is in definitions
31986         of getopt_long and getopt_long_only below, which are as well
31987         protected by `#ifndef __need_getopt'.
31988         [defined __GETOPT_PREFIX && !defined __need_getopt]: Undef
31989         __need_getopt after including <stdio.h> and <unistd.h> These
31990         headers might have defined it.
31991
31992 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
31993
31994         * m4/utimens.m4 (gl_UTIMENS): Check for futimes function.
31995
31996 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
31997
31998         * lib/utimens.c (__attribute__, ATTRIBUTE_UNUSED): New macros.
31999         (futimens): New function, which uses futimes if available.
32000         (futimens, utimens): Support timespec==NULL, with same semantics
32001         as utime and utimens.
32002         * lib/utimens.h (futimens): New decl.
32003
32004 2004-11-23  Jim Meyering  <jim@meyering.net>
32005
32006         * lib/getopt_.h: Remove trailing blanks.
32007
32008 2004-11-23  Jim Meyering  <jim@meyering.net>
32009
32010         * lib/__fpending.c: Add comment.
32011
32012 2004-11-22  Paul Eggert  <eggert@cs.ucla.edu>
32013
32014         * modules/canonicalize (Depends-on): Add xreadlink.
32015         Problem reported by James Youngman.
32016
32017 2004-11-20  Paul Eggert  <eggert@cs.ucla.edu>
32018
32019         * lib/getopt_.h (__GETOPT_CONCAT, __GETOPT_XCONCAT, __GETOPT_ID):
32020         New macros.
32021         (getopt, getopt_long, getopt_long_only, optarg, opterr, optind,
32022         optopt): Use them instead of invoking ## directly; otherwise, the
32023         symbols will be __GETOPT_PREFIXgetopt rather than rpl_getopt.
32024
32025 2004-11-19  Bruno Haible  <bruno@clisp.org>
32026
32027         * lib/strtok_r.c: Move comments from here...
32028         * lib/strtok_r.h: ... to here.
32029
32030 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
32031
32032         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Check for buggy calloc
32033         implementations that mishandle size_t overflow.
32034
32035 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
32036
32037         * lib/realloc.c (rpl_realloc): Call 'free' if n==0, since realloc
32038         might fail.  Problem reported by Yoann Vandoorselaere.
32039         * lib/calloc.c (rpl_calloc): Defend against buggy calloc
32040         implementations that mishandle size_t overflow.
32041
32042 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
32043
32044         * modules/canon-host (Depends-on): Add strdup.
32045
32046 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
32047
32048         * m4/canon-host.m4 (gl_CANON_HOST): Check for getaddrinfo.
32049
32050 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
32051
32052         * lib/canon-host.c: Include "strdup.h".
32053         (canon_host): Use getaddrinfo if available, so that IPv6 works.
32054         Use strdup instead of malloc/strcpy to duplicate strings.
32055
32056         * lib/human.h (LONGEST_HUMAN_READABLE): Add 1 for space before unit.
32057         (human_space_before_unit): New constant.
32058         * lib/human.c (human_readable): Support it.
32059
32060         * lib/xgetcwd.c: Include <limits.h>, for PATH_MAX.
32061         (xgetcwd): Set errno correctly when failing.
32062         Work around Solaris 9 bug: getcwd sets errno==ERANGE even though
32063         the failure is actually due to a PATH_MAX problem.
32064
32065         Further getopt changes to make it more likely that glibc will
32066         buy the changes back.
32067         * lib/getopt.c (POSIXLY_CORRECT): New constant.
32068         (getopt): Use it, so to preserve glibc semantic
32069         * lib/getopt1.c (getopt_long, getopt_long_only): Arg is char * const *
32070         when compiling for libc.
32071         * lib/getopt_.h (__getopt_argv_const): Bring it back.
32072         (getopt_long, getopt_long_only): Use it.
32073
32074         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
32075         _getopt_internal): New arg POSIXLY_CORRECT.  All callers changed.
32076         (getopt): Argv is now char * const *, as per standard.
32077         (_getopt_internal_r, _getopt_internal): Argv is now char **,
32078         not char *__getopt_argv_const *.
32079         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
32080         _getopt_long_only_r): Likewise.
32081         * lib/getopt_.h (getopt, getopt_long, geopt_long_only): Likewise.
32082         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
32083         _getopt_long_r, _getopt_long_only_r): Likewise.
32084         * lib/getopt_.h (__getopt_argv_const): Remove.
32085         (getopt): Argv is now char * const *, as per standard.
32086
32087         * lib/getdate.y (tORDINAL): New token.
32088         (day, relunit): Allow it for relative times.
32089         (relative_time_table): Use tORDINAL for ordinals.
32090
32091 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
32092
32093         * doc/getdate.texi (General date syntax): "next" is 1, not 2.
32094         Document that "second" isn't allowed as an ordinal number.
32095
32096 2004-11-16  Jim Meyering  <jim@meyering.net>
32097
32098         * modules/closeout (Depends-on): Add fpending.
32099
32100 2004-11-15  Jim Meyering  <jim@meyering.net>
32101
32102         * lib/closeout.c: Include "__fpending.h" once again.
32103         Include <stdbool.h>.
32104         (close_stdout): Don't fail just because stdout was closed initially,
32105         since some programs don't write to stdout in the normal course of
32106         operation (other than --version and --help), and we don't want this
32107         function to make e.g. `touch file >&-' fail.
32108         But do fail if it was closed and someone has tried to write to it.
32109         E.g., `printf foo >&-' must fail.
32110
32111 2004-11-13  Jim Meyering  <jim@meyering.net>
32112
32113         * m4/jm-macros.m4: Do require gl_FUNC_FPENDING.
32114
32115 2004-11-12  Simon Josefsson  <jas@extundo.com>
32116
32117         * config/srclist.txt: Add strtok_r.c, glibc bought our changes, but a
32118         small doc fix is still pending.
32119
32120 2004-11-11  Simon Josefsson  <jas@extundo.com>
32121
32122         * modules/strtok_r: New file.
32123
32124         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
32125         strtok_r.
32126
32127 2004-11-11  Simon Josefsson  <jas@extundo.com>
32128
32129         * m4/strtok_r.m4: New file.
32130
32131         * m4/getopt.m4: Replace opterr.
32132
32133 2004-11-11  Simon Josefsson  <jas@extundo.com>
32134
32135         * lib/strtok_r.h, strtok_r.c: New file.
32136
32137 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
32138
32139         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): Define __GETOPT_PREFIX instead
32140         of replacing opterr, getopt, etc.  This should handle the
32141         powerpc-apple-darwin5.5 problem recently noted by Simon Josefsson.
32142
32143 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
32144
32145         * lib/getopt_.h (__getopt_argv_const): New macro, to be used so that
32146         we can stop lying to compilers about the constness of argv when we
32147         are compiled outside glibc.
32148         (getopt, getopt_long, getopt_long_only): Use it.
32149         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
32150         _getopt_internal, getopt): Likewise.
32151         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
32152         _getopt_long_only_r): Likewise.
32153         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
32154         _getopt_long_r, _getopt_long_only_r): Likewise.
32155
32156         * lib/getopt_.h [defined __GETOPT_PREFIX && !defined __need_getopt]:
32157         Include <stdlib.h> and <stdio.h>, and <unistd.h> if available.
32158         Then rename getopt to __GETOPT_PREFIX##getopt, and so forth for
32159         the other external symbols.
32160         (getopt) [!defined __GNU_LIBRARY]: Use prototype, not old-style
32161         declaration, since the above renaming now works around collisions.
32162
32163 2004-11-11  Jim Meyering  <jim@meyering.net>
32164
32165         * lib/linebreak.c: Remove trailing blanks.
32166         * lib/alloca_.h: Likewise.
32167         * lib/acosl.c: Likewise.
32168         * lib/euidaccess.c: Likewise.
32169         * lib/allocsa.h: Likewise.
32170
32171 2004-11-10  Simon Josefsson  <jas@extundo.com>
32172
32173         * m4/getaddrinfo.m4: New file.
32174
32175 2004-11-10  Simon Josefsson  <jas@extundo.com>
32176
32177         * lib/getaddrinfo.h, lib/getaddrinfo.c: New files.
32178
32179 2004-11-10  Simon Josefsson  <jas@extundo.com>
32180
32181         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
32182         getaddrinfo.
32183
32184         * modules/getaddrinfo: New file.
32185
32186 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
32187
32188         * m4/prereq.m4 (gl_PREREQ): Require gt_FUNC_SETENV.
32189
32190 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
32191
32192         * lib/mktime.c (SHR): New macro, which is a portable
32193         substitute for >> that should work even on Crays.
32194         (TIME_T_MIDPOINT, ydhms_diff, __mktime_internal): Use it.
32195         Problem reported by Mark D. Baushke in
32196         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00071.html>.
32197         * lib/getdate.y (SHR): Likewise.
32198         (tm_diff): Use it.
32199         * lib/strftime.c (SHR): Likewise.
32200         (tm_diff): Use it.
32201         * lib/quotearg.c (struct quoting_options): Use unsigned int for
32202         quote_these_too, so that right shifts are well defined.  All uses
32203         changed.
32204
32205 2004-11-10  Jim Meyering  <jim@meyering.net>
32206
32207         Ensure that no close failure goes unreported.
32208         * lib/closeout.c (close_stdout): Always close stdout.  I.e., don't
32209         return early when it seems there's nothing to flush.
32210         Don't include __fpending.h.
32211
32212 2004-11-10  Jim Meyering  <jim@meyering.net>
32213
32214         * modules/closeout (Depends-on): Remove fpending.
32215
32216 2004-11-10  Jim Meyering  <jim@meyering.net>
32217
32218         * m4/jm-macros.m4 (gl_MACROS): Don't require gl_FUNC_FPENDING.
32219
32220 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
32221
32222         * m4/strftime.m4 (_gl_STRFTIME_PREREQS): Remove.  Move its body to
32223         gl_FUNC_STRFTIME.
32224         (gl_FUNC_STRFTIME): Use AC_CHECK_FUNCS_ONCE and AC_CHECK_HEADERS_ONCE
32225         and AC_REQUIRE when possible, to avoid duplicate checks.
32226         Check for <wchar.h>.
32227
32228 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
32229
32230         * lib/strftime.c (DO_MULTIBYTE): Check for wchar.h, too.
32231
32232 2004-11-09  Bruno Haible  <bruno@clisp.org>
32233
32234         * m4/sockpfaf.m4: New file.
32235
32236 2004-11-05  Bruno Haible  <bruno@clisp.org>
32237
32238         * lib/readlink.c: Include stddef.h, needed for size_t on Woe32.
32239         Reported by Mark D. Baushke <mdb@cvshome.org>.
32240
32241 2004-11-04  Bruno Haible  <bruno@clisp.org>
32242
32243         2004-09-11  Bruno Haible  <bruno@clisp.org>
32244                 * allocsa.valgrind: New file.
32245         2004-02-06  Bruno Haible  <bruno@clisp.org>
32246                 * allocsa.h (sa_alignof): Define differently with HP-UX cc, to
32247                 avoid a bug of this cc on HP-UX 10.20 dealing with enums.
32248                 Reported by Christopher Seip <chris.seip@hp.com>.
32249
32250 2004-11-04  Bruno Haible  <bruno@clisp.org>
32251
32252         * modules/allocsa (Files): Add lib/allocsa.valgrind.
32253         (Makefile.am): Distribute it.
32254
32255 2004-11-03  Paul Eggert  <eggert@cs.ucla.edu>
32256
32257         * lib/xreadlink.c (xreadlink): AIX and HP-UX readlink return -1
32258         with errno == ERANGE if the buffer is too small.
32259         Problem reported by Mark D. Baushke.
32260
32261 2004-11-03  Albert Chin  <china@thewrittenword.com>
32262             Paul Eggert  <eggert@cs.ucla.edu>
32263
32264         * m4/uint32_t.m4 (gl_AC_TYPE_UINT32_T): When determining uint32_t
32265         equivalent, substitute $ac_type for equivalent type rather than
32266         blindly using uint32_t *always* which won't work if uint32_t is not
32267         available.  Define _UINT32_T to work around typedef of uint32_t if
32268         <sys/sched.h>, <pthread.h>, or <semaphore.h> used on Solaris
32269         2.5.1.
32270
32271 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
32272
32273         * m4/jm-macros.m4: Sync from coreutils.
32274         (gl_MACROS): Check for mbrlen, for pathchk.
32275         (gl_CHECK_ALL_TYPES): Require AC_TYPE_MBSTATE_T, for pathchk.
32276
32277 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
32278
32279         * lib/xreadlink.c (MAXSIZE): New macro.
32280         (xreadlink): Use it instead of SSIZE_MAX.  Ensure initial buffer
32281         size does not exceed MAXSIZE.  Avoid cast.
32282         As suggested by Mark D. Baushke in
32283         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00009.html>,
32284         if readlink fails with buffer size just under MAXSIZE, try again
32285         with MAXSIZE.
32286
32287 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
32288
32289         * config/srclist.txt: Add mktime.c; glibc bought all our changes.
32290
32291 2004-11-02  Derek R. Price  <derek@ximbiot.com>
32292         and  Paul Eggert  <eggert@cs.ucla.edu>
32293
32294         * lib/getdate.y [!TEST]: Include <stdio.h>, since we use sprintf now.
32295         (get_date): Overparenthesize to avoid GCC warning.
32296
32297 2004-11-02  Bruno Haible  <bruno@clisp.org>
32298
32299         * m4/setenv.m4 (gt_FUNC_SETENV): Define VOID_UNSETENV if unsetenv()
32300         returns void.
32301
32302 2004-11-02  Bruno Haible  <bruno@clisp.org>
32303
32304         * lib/setenv.h (unsetenv): Define as a macro if the system's unsetenv()
32305         function returns void.
32306
32307 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
32308
32309         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for declarations of
32310         fflush_unlocked, flockfile, funlockfile, funlockfile,
32311         fputs_unlocked, putc_unlocked.
32312
32313 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
32314
32315         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
32316         (funlockfile, fputs_unlocked, putc_unlocked): Don't define if
32317         already declared.
32318
32319 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
32320
32321         * modules/getdate (Files): Add doc/getdate.texi.
32322         (Depends-on): Add setenv, xalloc.
32323
32324 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
32325
32326         * lib/getdate.y: Add support for TZ="foo" within a date string.
32327         Fix some bugs near time_t boundaries.  Reject dates with
32328         out-of-range components, e.g., "Sept 31".
32329         Include <stdlib.h>, "setenv.h", "xalloc.h".
32330         (ISDIGIT_LOCALE): Remove; unused.
32331         Note that the TZ and time functions used here are not reentrant.
32332         (mktime_ok, get_tz): New functions.
32333         (TZBUFSIZE): New constant.
32334         (get_date): Parse leading TZ="foo".  Reject out-of-range components;.
32335         This requires that we sometimes generate our own TZ="XXX..." setting.
32336
32337 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
32338
32339         * doc/getdate.texi: New file, from coreutils with modifications for
32340         the new TZ parsing.
32341
32342 2004-10-27  Derek R. Price  <derek@ximbiot.com>
32343
32344         * lib/mktime.c (not_equal_tm): Remove redundant check.
32345
32346 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
32347
32348         * modules/regex (lib_SOURCES): Add regex.c.
32349         Reported by James Youngman in
32350         <http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00199.html>.
32351
32352 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
32353
32354         * lib/getdate.y: Use Bison 1.875 features, and some minor
32355         code cleanups.  This change does not affect semantics.
32356         Don't include <stdlib.h>; no longer needed.
32357         Don't include unlocked-io.h; only the "#if TEST" code uses
32358         stdio, and performance isn't crucial there.
32359         (PC, YYLEX_PARAM, YYPARSE_PARAM): Remove; replaced by
32360         Bison 1.875 features as described below.
32361         All uses of "PC." replaced by "pc->".
32362         (YYSTYPE): Add a forward declaration.
32363         (yylex, yyerror): Use full prototypes in forward decls.
32364         Use "%pure-parser" rather than obsolescent "%pure_parser".
32365         Use %parse-param and %lex-param instead of obsolescent
32366         YYPARSE_PARAM and YYLEX_PARAM.
32367         (meridian_table, month_and_day_table, time_units_table,
32368         relative_time_table, time_zone_table, military_table,
32369         lookup_zone, lookup_word, get_date):
32370         Use NULL instead of 0 where appropriate.
32371         (to_hour): Avoid abort (), to avoid a dependency on
32372         stdlib.h.
32373         (yyerror, yylex): Now accepts parser_control * arg.
32374         (main) [TEST]: Use '\0' rather than 0 for char.
32375
32376 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
32377
32378         * m4/getpagesize.m4 (gl_GETPAGESIZE): Check for <sys/param.h>.
32379
32380 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
32381
32382         * lib/getpagesize.c (getpagesize): Don't assume <sys/param.h> exists.
32383         It's now the caller's responsibility to handle the case where
32384         !HAVE_GETPAGESIZE && !defined getpagesize.
32385
32386         * lib/mktime.c (leapyear): Arg is long int, not int.
32387
32388 2004-10-18  Paul Eggert  <eggert@cs.ucla.edu>
32389
32390         * lib/argp-fs-xinl.c, argp-xinl.c: Update from glibc.
32391
32392 2004-10-17  Paul Eggert  <eggert@cs.ucla.edu>
32393
32394         * gnulib-tool (func_emit_lib_Makefile_am): Fix typo: a $ was
32395         missing.  Problem reported by James Youngman.
32396
32397 2004-10-16  Simon Josefsson  <jas@extundo.com>
32398
32399         * gnulib-tool: Fix comments.  Fix parse problem.
32400         (func_emit_lib_Makefile_am): Don't hard code a in libgl_a_SOURCES.
32401
32402 2004-10-15  Paul Eggert  <eggert@cs.ucla.edu>
32403
32404         * m4/getopt.m4 (gl_GETOPT): Detect and reject the incompatible BSD
32405         implementation of getopt_long.  Problem reported by Alexander Taler in:
32406         http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00103.html
32407
32408 2004-10-15  Bruno Haible  <bruno@clisp.org>
32409
32410         * gnulib-tool: Untabify. Initialize supplied_libname.
32411         (func_usage): More homogenous output.
32412         (func_modules_transitive_closure, func_modules_to_filelist,
32413         func_emit_lib_Makefile_am): New functions.
32414         (func_import): New function, extracted from big case statement. Use
32415         func_get_license, func_modules_transitive_closure,
32416         func_modules_to_filelist, func_emit_lib_Makefile_am. Initialize
32417         opt_lgpl. Don't use test -a, as it's not portable.
32418         (func_create_testdir): Use func_modules_transitive_closure,
32419         func_modules_to_filelist, func_emit_lib_Makefile_am.
32420
32421 2004-10-15  Bruno Haible  <bruno@clisp.org>
32422
32423         * gnulib-tool (func_import): Let gl_INIT define LTALLOCA when needed.
32424
32425 2004-10-15  Bruno Haible  <bruno@clisp.org>
32426
32427         * gnulib-tool (func_emit_lib_Makefile_am): Add markers to separate
32428         the portions belonging to each module.
32429         Suggested by Derek Robert Price <derek@ximbiot.com>.
32430
32431 2004-10-12  Simon Josefsson  <jas@extundo.com>
32432
32433         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
32434         (fputs_unlocked, putc_unlocked) [!_LIBCS && !USE_UNLOCKED_IO]: Map
32435         to real functions.
32436
32437 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
32438
32439         * modules/vsnprintf: New file.
32440
32441 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
32442
32443         * m4/vsnprintf.m4: New file.
32444
32445 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
32446
32447         * lib/vsnprintf.h: New file.
32448         * lib/vsnprintf.c: New file.
32449
32450 2004-10-11  Bruno Haible  <bruno@clisp.org>
32451
32452         * MODULES.html.sh (Support for systems lacking ISO C 99): Add
32453         vsnprintf.
32454
32455 2004-10-10  Paul Eggert  <eggert@cs.ucla.edu>
32456
32457         * config/srclistvars.sh: Add GNUSTANDARDS (for eggert only).
32458
32459 2004-10-07  Bruno Haible  <bruno@clisp.org>
32460
32461         * lib/snprintf.c (snprintf): Avoid a memory allocation if the result
32462         fits into the provided buffer.
32463
32464 2004-10-06  Paul Eggert  <eggert@cs.ucla.edu>
32465
32466         * lib/diacrit.c, diacrit.h: Add GPL notice.
32467
32468         * lib/atanl.c, logl.c: Add GPL notice, to match glibc's added LGPL
32469         notice.
32470         * lib/atanl.c (atanl): Keep the code as similar to glibc as possible.
32471         * lib/logl.c (logl): Keep the code as similar to glibc as possible.
32472         This avoids a potential constant-folding bug.
32473
32474 2004-10-05  Bruno Haible  <bruno@clisp.org>
32475
32476         * m4/strsep.m4 (gl_FUNC_STRSEP): Require AC_GNU_SOURCE. Don't check
32477         for the declaration of strsep.
32478
32479 2004-10-05  Bruno Haible  <bruno@clisp.org>
32480
32481         * lib/strsep.h: Don't declare strsep() if HAVE_STRSEP.
32482
32483 2004-10-04  Simon Josefsson  <jas@extundo.com>
32484
32485         * modules/memmem: New file.
32486         * tests/test-memmem.c: New file.
32487         * MODULES.html.sh (Extra functions based on ANSI C 89): Add memmem.
32488
32489 2004-10-04  Simon Josefsson  <jas@extundo.com>
32490
32491         * m4/memmem.m4: New file.
32492
32493 2004-10-04  Simon Josefsson  <jas@extundo.com>
32494
32495         * lib/memmem.h: New file.
32496         * lib/memmem.c: New file, taken from glibc.
32497
32498 2004-10-04  Simon Josefsson  <jas@extundo.com>
32499
32500         * lib/error.c, md5.c, regex.c: Use '#if USE_UNLOCKED_IO' instead of
32501         '#ifdef USE_UNLOCKED_IO'.
32502
32503 2004-10-04  Simon Josefsson  <jas@extundo.com>
32504
32505         * config/srclist.txt: Add memmem from glibc.
32506
32507 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
32508
32509         * modules/xalloc (Files, Makefile.am): Remove xstrdup.c.
32510
32511         * modules/argmatch, modules/argp, modules/closeout, modules/error,
32512         modules/exclude, modules/getdate, modules/getline,
32513         modules/getndelim2, modules/getpass, modules/getpass-gnu,
32514         modules/getusershell, modules/linebuffer, modules/md5,
32515         modules/mountlist, modules/posixtm, modules/readtokens,
32516         modules/readutmp, modules/regex, modules/sha1,
32517         modules/version-etc, modules/yesno:
32518         Remove dependency on unlocked-io.
32519
32520 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
32521
32522         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Remove.  All uses removed.
32523
32524         * m4/unlocked-io.m4: Add copyright notice.
32525         (gl_FUNC_GLIBC_UNLOCKED_IO): Define USE_UNLOCKED_IO.
32526
32527 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
32528
32529         * lib/xalloc.h (xmemdup): Renamed from xclone.  All uses changed.
32530         * lib/xmalloc.c (xmemdup): Likewise.
32531         * lib/xalloc.h (CCLONE, CLONE, NEW, XCALLOC, XMALLOC, XREALLOC,
32532         XFREE): Remove these long-obsolescent macros.
32533         * lib/xmalloc.c (xstrdup): Implementation moved here from xstrdup.c
32534         * lib/xstrdup.c: Remove.
32535
32536         * lib/regex.c (re_comp): Cast gettext return value to char *,
32537         Problem reported by Martin Neitzel via Mark D. Baushke.
32538
32539 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
32540
32541         * lib/argmatch.c, closeout.c, error.c, exclude.c, getdate.y,
32542         getndelim2.c, getpass.c, getusershell.c, linebuffer.c,
32543         md5.c, mountlist.c, posixtm.c, readtokens.c, readutmp.c,
32544         regex.c, sha1.c, version-etc.c, yesno.c:
32545         Include "unlocked-io.h" only if USE_UNLOCKED_IO.
32546         * lib/unlocked-io.h: Don't worry about USE_UNLOCKED_IO; that's now
32547         the includer's responsibility.
32548
32549         Sync from coreutils.
32550
32551         * lib/modechange.c (mode_compile): Don't decrement a pointer that
32552         points to the start of a string, as the C Standard says the
32553         resulting behavior is undefined.
32554
32555         * lib/backupfile.h (enum backuptype): Rename none -> no_backups,
32556         simple -> simple_backups, numbered_existing ->
32557         numbered_existing_backups, numbered -> numbered_backups
32558         to avoid shadowing problems.  All uses changed.
32559         * lib/argmatch.c (enum backuptype) [defined TEST]: Likewise.
32560         * lib/backupfile.c (check_extension, numbered_backup):
32561         Rename locals to avoid shadowing 'basename'.
32562         * lib/backupfile.h (VALID_BACKUP_TYPE): Don't evaluate arg more than
32563         once.
32564
32565         * lib/.cppi-disable: Add getopt_.h, getopt_int.h.
32566         * lib/.cvsignore: Add getopt.h.
32567
32568 2004-10-04  Bruno Haible  <bruno@clisp.org>
32569
32570         * modules/README: New file.
32571         * gnulib-tool (func_all_modules, func_verify_module): modules/README is
32572         not a module.
32573
32574 2004-10-02  Jim Meyering  <jim@meyering.net>
32575
32576         * lib/dirfd.h, getpagesize.h: Add copyright notice.
32577
32578 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
32579
32580         * modules/strsep: New file.
32581
32582 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
32583
32584         * m4/strsep.m4: New file.
32585
32586 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
32587
32588         * lib/strsep.h: New file.
32589         * lib/strsep.c: New file.
32590
32591 2004-10-01  Simon Josefsson  <jas@extundo.com>
32592
32593         * lib/snprintf.c (snprintf): Handle size==0.
32594
32595 2004-10-01  Simon Josefsson  <jas@extundo.com>
32596             Bruno Haible  <bruno@clisp.org>
32597
32598         * lib/snprintf.c: Include <stdarg.h>, <stdlib.h>, <string.h>.
32599         (snprintf): Declare 'args'.
32600
32601 2004-10-01  Paul Eggert  <eggert@cs.ucla.edu>
32602
32603         * lib/snprintf.c: Remove comments as to why each header is needed.
32604
32605 2004-10-01  Bruno Haible  <bruno@clisp.org>
32606
32607         * MODULES.html.sh: Add strsep.
32608
32609 2004-09-30  Simon Josefsson  <jas@extundo.com>
32610
32611         * modules/snprintf: New file.
32612
32613 2004-09-30  Simon Josefsson  <jas@extundo.com>
32614
32615         * m4/snprintf.m4: New file.
32616
32617 2004-09-30  Simon Josefsson  <jas@extundo.com>
32618
32619         * lib/snprintf.h, lib/snprintf.c: New files.
32620
32621 2004-09-30  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
32622
32623         * lib/argp-help.c (canon_doc_option): Fixed coredump if *name==NULL
32624         (hol_entry_help): Never translate an empty string.
32625         Do not translate option tag (opt->name) if OPTION_NO_TRANS is set
32626         * lib/argp.h (OPTION_NO_TRANS): New option.
32627
32628 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
32629
32630         * modules/argp (Maintainer): Replace Simon Josefsson
32631         by Sergey Poznyakoff.
32632
32633 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
32634
32635         * config/srclist.txt: Comment-out argp/argp.h, until we get the argp
32636         changes merged back into glibc.
32637
32638 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
32639
32640         * MODULES.html.sh (Support for systems lacking ISO C 99): Add snprintf.
32641
32642 2004-09-29  Oskar Liljeblad  <oskar@osk.mine.nu>
32643
32644         * lib/xvasprintf.c: Include xalloc.h.
32645         (xvasprintf): Use xalloc_die, not xmalloc_die.
32646
32647 2004-09-29  Bruno Haible  <bruno@clisp.org>
32648
32649         * modules/alloca-opt: New file, derived from modules/alloca.
32650         * modules/allocsa: Depend on alloca-opt instead of alloca.
32651         * modules/setenv: Likewise.
32652         * modules/vasnprintf: Likewise.
32653         * MODULES.html.sh: Add alloca-opt.
32654
32655 2004-09-28  Simon Josefsson  <jas@extundo.com>
32656
32657         * gnulib-tool: New parameter --lgpl, to asseert that modules are
32658         LGPL, and to replace license template from GPL to LGPL.
32659
32660 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
32661
32662         * modules/dummy: Change license to LGPL.
32663
32664 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
32665
32666         * lib/dummy.c: Change copyright notice to FSF, and license to GPL.
32667
32668 2004-09-24  Simon Josefsson  <jas@extundo.com>
32669
32670         * modules/minmax (License): Change from GPL to LGPL.
32671
32672 2004-09-23  Simon Josefsson  <jas@extundo.com>
32673
32674         * gnulib-tool (--import): Typo.
32675
32676 2004-09-23  Simon Josefsson  <jas@extundo.com>
32677
32678         * gnulib-tool (--import): Make sure *.m4 end up in m4/ by default.
32679
32680 2004-09-22  Bruno Haible  <bruno@clisp.org>
32681
32682         * modules/*: Add 'License' field.
32683         * gnulib-tool: Accept --extract-license option.
32684         (func_get_license): New function.
32685
32686 2004-09-21  Bruno Haible  <bruno@clisp.org>
32687
32688         * modules/vasnprintf (Files): Add m4/stdint_h.m4, m4/inttypes_h.m4.
32689         Reported by Simon Josefsson.
32690
32691 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
32692
32693         * modules/inttostr (Files): Add m4/longlong.m4, since it uses
32694         gl_AC_TYPE_LONG_LONG.
32695
32696 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
32697
32698         * config/srclist.txt: Add getsubopt.c, since libc bought our changes.
32699
32700 2004-09-18  Simon Josefsson  <jas@extundo.com>
32701         and  Paul Eggert  <eggert@cs.ucla.edu>
32702
32703         * gnulib-tool: Replace various ad-hoc automake/autoconf/aclocal
32704         calls with autoreconf.  Define GL_LIB.
32705
32706 2004-09-14  Karl Berry  <karl@gnu.org>
32707
32708         * config/srclist.txt: unsync setenv.c, sigh.
32709
32710 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
32711
32712         * lib/argp-pvh.c (argp_program_version_hook): Provide initial value.
32713         Problem reported by Bruno Haible in:
32714         http://lists.gnu.org/archive/html/bug-tar/2004-09/msg00023.html
32715
32716 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
32717
32718         * config/srclist.txt: Comment out argp-pvh.c.
32719
32720 2004-09-11  Paul Eggert  <eggert@cs.ucla.edu>
32721
32722         * lib/mempcpy.h: Wrap the entire include file inside #ifndef mempcpy,
32723         in case some system header has #define'd it.  Problem reported by
32724         Soeren D. Schulze in
32725         <http://lists.gnu.org/archive/html/bug-gnulib/2004-09/msg00017.html>.
32726
32727 2004-09-09  Karl Berry  <karl@gnu.org>
32728
32729         * regex.[ch]: delete from the root.  These were supposed to be
32730                 synced with emacs cvs, but this has not happened for about
32731                 a year, and anyway nothing else uses emacs regex.[ch].
32732                 bug-gnulib mail from Jeff Bailey, 9 Sep 2004 15:49:24 -0700.
32733                 lib/regex[.ch] is untouched.
32734
32735 2004-09-09  Bruno Haible  <bruno@clisp.org>
32736
32737         * modules/vasnprintf (Files): Add m4/eoverflow.m4.
32738
32739 2004-09-09  Bruno Haible  <bruno@clisp.org>
32740
32741         * m4/eoverflow.m4: New file, taken from GNU libiconv eilseq.m4 with
32742         modifications.
32743         * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Require gl_EOVERFLOW.
32744
32745 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
32746
32747         * modules/xvasprintf: New file.
32748         * MODULES.html.sh (Extra functions based on ANSI C 89): Add vasprintf.
32749
32750 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
32751
32752         * lib/xvasprintf.h: New file.
32753         * lib/xvasprintf.c: New file.
32754         * lib/xasprintf.c: New file.
32755
32756 2004-09-08  Bruno Haible  <bruno@clisp.org>
32757
32758         * m4/stdint.m4: New file, taken from GNU clisp with modifications.
32759
32760 2004-09-08  Bruno Haible  <bruno@clisp.org>
32761
32762         * lib/vasnprintf.c (VASNPRINTF): Signal EOVERFLOW if the resulting
32763         length is > INT_MAX.
32764         * lib/vasprintf.c (vasprintf): Don't test for length > INT_MAX any
32765         more.
32766
32767 2004-09-08  Bruno Haible  <bruno@clisp.org>
32768
32769         * lib/stdint_.h: New file, taken from GNU clisp.
32770
32771 2004-09-08  Bruno Haible  <bruno@clisp.org>
32772             Oskar Liljeblad  <oskar@osk.mine.nu>
32773
32774         * modules/stdint: New file.
32775         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdint.
32776
32777 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
32778
32779         Import from coreutils.
32780         * lib/userspec.c: Don't use <alloca.h>, so that we don't use alloca on
32781         strings on unbounded length.  alloca's performance benefits aren't
32782         that important here.
32783         (V_STRDUP): Remove.
32784         (parse_with_separator): New function, with most of the internals
32785         of the old parse_user_spec.  Allow user to omit both user and group,
32786         for compatibility with FreeBSD.
32787         Clone only the user name, not the entire spec.
32788         Do not set *uid, *gid unless entirely successful.
32789         Avoid memory leak in some failing cases.
32790         Fix regression for USER.GROUP reported by Dmitry V. Levin in
32791         <http://lists.gnu.org/archive/html/bug-coreutils/2004-08/msg00102.html>
32792         (parse_user_spec): Rewrite to use parse_with_separator.
32793
32794 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
32795
32796         * modules/userspec: Don't depend on alloca.
32797
32798 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
32799
32800         * m4/userspec.m4 (gl_USERSPEC): Don't require AC_FUNC_ALLOCA.
32801
32802 2004-08-17  Paul Eggert  <eggert@cs.ucla.edu>
32803
32804         * MODULES.html.sh: Add xalloc-die, c-strtod, c-strtold, raise,
32805         readtokens0, getcwd, fcntl-safer, canonicalize, cycle-check,
32806         utimecmp, utimens, xnanosleep.  Rename sha to sha1.
32807
32808 2004-08-16  Simon Josefsson  <jas@extundo.com>
32809
32810         * gnulib-tool: Use sed instead of autoconf --trace, inspired by
32811         libtoolize behaviour by "Gary V. Vaughan" <gary@gnu.org>.
32812         Add --dry-run for --import.
32813         Let user provided command line parameters override configure.ac
32814         settings.
32815
32816 2004-08-12  Simon Josefsson  <jas@extundo.com>
32817
32818         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): New macro,
32819         as discussed with Paul Eggert in threads rooted at
32820         <http://lists.gnu.org/archive/html/bug-gnulib/2004-06/msg00039.html>
32821         and
32822         <http://lists.gnu.org/archive/html/bug-gnulib/2004-07/msg00001.html>.
32823         Before, the test was empty, and relied on ELIDE_CODE in source
32824         code.)
32825         (gl_PREREQ_GETOPT): New macro.
32826         (gl_GETOPT): Use them.
32827
32828 2004-08-12  Simon Josefsson  <jas@extundo.com>
32829
32830         * lib/getopt.c, getopt1.c: Remove ELIDE_CODE hack.
32831         * lib/getopt_.h: Renamed from getopt.h.
32832
32833 2004-08-12  Simon Josefsson  <jas@extundo.com>
32834
32835         * gnulib-tool: Add --source-base, --m4-base, --libtool options.
32836         Change default library name from libfoo to libgnu.
32837         Now, if you have a configure.ac that says:
32838                 gl_SOURCE_BASE(gl)
32839                 gl_M4_BASE(gl/m4)
32840                 gl_MODULES(error getopt etcetera)
32841                 gl_INIT
32842         you can import all you need by running:
32843                 ../gnulib/gnulib-tool --import
32844
32845         * modules/getopt (Files): Rename getopt.h to getopt_.h.
32846         (Makefile.am): Rewrite, use logic from argz.
32847         (Include): Use <getopt.h> instead of "getopt.h".
32848
32849 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
32850
32851         * modules/argp (Files): Add m4/unlocked-io.m4.
32852         (Depends-on): Add extensions.
32853
32854 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
32855
32856         * m4/argp.m4 (gl_ARGP): Do not check for argp.h or argp_parse; nobody
32857         uses HAVE_ARGP_H or HAVE_ARGP_PARSE.
32858         Require gl_FUNC_GLIBC_UNLOCKED_IO, gl_USE_SYSTEM_EXTENSIONS.
32859         Check for program_invocation_name, program_invocation_short_name,
32860         flockfile, funlockfile, features.h, _getopt_long_only_r.
32861
32862 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
32863
32864         * lib/argp-help.c, argp-parse.c: Use "gettext.h" instead of
32865         its complicated substitute.
32866         * lib/argp-help.c: Include <errno.h>, for program_invocation_short_name
32867         and program_invocation_name.
32868         (__argp_basename) [!_LIBC]: Remove; the only use was
32869         replaced by its body.
32870         (__argp_short_program_name): Change condition from
32871         !defined __argp_short_program_name to
32872         ! (defined _LIBC || HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME),
32873         to match argp-namefrob.h.
32874         (__argp_failure): Don't assume strerror_r returns char *.
32875         * lib/argp-parse.c (N_): Define unconditionally.
32876         (argp_default_options): Fill out initializers with 0 to avoid
32877         gcc warnings.
32878
32879 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
32880
32881         * config/srclist.txt: Remove getopt.c, getopt.h (renamed to getopt_.h),
32882         getopt1.c.
32883
32884 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
32885
32886         Merge from coreutils.
32887
32888         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for wmemchr and wmemcpy.
32889
32890         * m4/obstack.m4 (gl_PREREQ_OBSTACK): Require
32891         gl_AC_HEADER_INTTYPES_H, gl_AC_HEADER_STDINT_H, gl_AC_TYPE_UINTMAX_T.
32892
32893 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
32894
32895         Merge from coreutils.
32896
32897         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Don't set to 1 if missing
32898         wmemchr or wmemcpy.  Problem reported by Robert Dahlem
32899         for Reliant Unix 5.43.
32900
32901         * lib/obstack.c: Include <inttypes.h> and <stdint.h> if available.
32902         (union fooround): Use uintmax_t, not long int.
32903         The rest is a merge from libc:
32904         [defined _LIBC]: Include <shlib-compat.h>.
32905         (_obstack) [defined _LIBC]: Remove after 2.3.4.
32906
32907         * lib/settime.c (settime): Recode to avoid warning with
32908         Sun Forte C 6U2.
32909
32910         * lib/strverscmp.c: Convert to UTF-8.
32911
32912 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
32913
32914         * modules/obstack (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
32915         m4/uintmax_t.m4.
32916
32917 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
32918
32919         * modules/xalloc-die: New file.
32920         * modules/xalloc: Remove dependencies on error, gettext, exitfail.
32921
32922         * modules/md5 (Files): Add m4/uint32_t.m4.
32923         * modules/sha1: Renamed from modules/sha.
32924         (Files):
32925         Rename lib/sha.h to lib/sha1.h.
32926         Rename lib/sha.c to lib/sha1.c.
32927         Rename m4/sha.m4 to m4/sha1.m4.
32928         (lib_SOURCES): Likewise.
32929         (configure.ac): Rename gl_SHA to gl_SHA1.
32930         (Include): sha.h -> sha1.h.
32931
32932 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
32933
32934         * m4/uint32_t.m4, m4/uintptr_t.m4: New files.
32935         * m4/sha1.m4: Renamed from sha.m4.
32936         (gl_SHA1): Renamed from gl_SHA.  All uses changed.
32937
32938 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
32939
32940         * lib/obstack.h (obstack_empty_p):
32941         Don't assume that chunk->contents is suitably aligned.
32942         * lib/obstack.c (_obstack_begin, _obstack_begin_1, _obstack_newchunk):
32943         Likewise. Problem reported by Benno in
32944         <http://sources.redhat.com/ml/libc-alpha/2004-08/msg00055.html>.
32945
32946         * lib/chown.c (rpl_chown): Work even if the file is writeable but not
32947         readable.  This could be improved further but it'd take some work.
32948
32949 2004-08-08  Simon Josefsson  <jas@extundo.com>
32950
32951         * modules/xgethostname (Depends-on): Remove exit and error (not
32952         used).
32953
32954         * modules/getpass-gnu: Add getpass.h.
32955         (Depends-on): Add stdbool.
32956         * modules/getpass: Add getpass.h.
32957
32958 2004-08-08  Simon Josefsson  <jas@extundo.com>
32959
32960         * m4/getpass.m4 (gl_FUNC_GETPASS, gl_FUNC_GETPASS_GNU):
32961         Check getpass declaration.
32962
32963 2004-08-08  Simon Josefsson  <jas@extundo.com>
32964
32965         * lib/xgethostname.c: Don't include error.h (not used).
32966
32967         * lib/getpass.h: Add.
32968         * lib/getpass.c: Include getpass.h first.
32969
32970 2004-08-08  Paul Eggert  <eggert@cs.ucla.edu>
32971
32972         * lib/xalloc-die.c: New file.
32973         * lib/xalloc.h (xalloc_fail_func, xalloc_msg_memory_exhausted): Remove.
32974         All uses removed.
32975         * lib/xmalloc.c (xalloc_fail_func, xalloc_msg_memory_exhausted):
32976         Likewise. Move inclusions of gettext.h, error.h, exitfail.h to
32977         xalloc-die.c.
32978         (_, N_, xalloc_die): Move to xalloc-die.c.
32979         * lib/userspec.c (parse_user_spaec): Use xstrdup rather than strdup,
32980         so that we needn't mess with xalloc_msg_memory_exhausted.
32981
32982         * lib/sha1.h: Renamed from sha.h.
32983         (SHA1_H): Renamed from _SHA_H.
32984         (sha1_ctx): Renamed from sha_ctx.
32985         (sha1_init_ctx): Renamed from sha_init_ctx.
32986         (sha1_process_block): Renamed from sha_process_block.
32987         (sha1_process_bytes): Renamed from sha_process_bytes.
32988         (sha1_finish_ctx): Renamed from sha_finish_ctx.
32989         (sha1_read_ctx): Renamed from sha_read_ctx.
32990         (sha1_stream): Renamed from sha_stream.
32991         (sha1_buffer): Renamed from sha_buffer.
32992         * lib/sha1.c: Likewise; renamed from sha.c.
32993         Do not include <sys/types.h>.
32994         Include <stddef.h> rather than <stdlib.h>.
32995
32996 2004-08-08  Bruno Haible  <bruno@clisp.org>
32997
32998         * lib/pathname.h (FILE_SYSTEM_PREFIX_LEN): Renamed from
32999         FILESYSTEM_PREFIX_LEN.
33000         * lib/progreloc.c: Likewise.
33001         * lib/concatpath.c (concatenated_pathname): Use FILE_SYSTEM_PREFIX_LEN.
33002
33003 2004-08-06  Simon Josefsson  <jas@extundo.com>
33004
33005         * modules/progname (Depends-on): Don't depend on stdbool.
33006
33007 2004-08-06  Simon Josefsson  <jas@extundo.com>
33008
33009         * modules/getsubopt: New file.
33010         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
33011         getsubopt.
33012
33013 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
33014
33015         More merge from coreutils.
33016
33017         * m4/utimens.m4, m4/utimecmp.m4: New files.
33018         * m4/backupfile.m4, euidacces.m4, acl.m4, afs.m4, calloc.m4, dirfd.m4,
33019         fsusage.m4, jm-macros.m4, ls-mntd-fs.m4, md5.m4, mountlist.m4,
33020         prereq.m4, sha.m4: Import changes from coreutils.
33021
33022 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
33023
33024         More merge from coreutils.
33025         * modules/raise, modules/readtokens0, modules/utimens:
33026         * modules/utimecmp, module/xnanosleep: New files.
33027         * modules/strftime: Add lib/strftime.h.
33028         Change include from <time.h> to "strftime.h".
33029         * modules/yesno: Add lib/yesno.h.
33030         * modules/backupfile: Remove lib/addext.c.
33031         * modules/euidaccess: Add stat-macros.h.
33032         * modules/canonicalize, modules/euidaccess,
33033         modules/filemode, modules/lchown, modules/makepath,
33034         modules/rmdir, modules/stat: Likewise.
33035
33036 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
33037
33038         Merge from tar.
33039         * lib/argp-help.c (make_hol, hol_append): Don't assume that
33040         SIZE_MAX is a valid preprocessor constant.
33041         (__argp_basename): Change from "#ifndef _LIBC"
33042         to "#ifndef __argp_short_program_name", so that
33043         we don't compile these functions for tar.
33044
33045         More merges from coreutils.
33046         * lib/raise.c, lib/readtokens0.h, lib/readtokens0.c, lib/strftime.h:
33047         * lib/utimens.h, lib/utimens.c, lib/utimecmp.h, lib/utimecmp.c:
33048         * lib/xnanosleep.h, lib/xnanosleep.c, lib/yesno.h: New files.
33049         * lib/addext.c: Remove; no longer needed.
33050         * lib/yesno.c, lib/argmatch.h, lib/argmatch.c, lib/backupfile.h,
33051         lib/backupfile.c, lib/euidaccess.c, lib/filemode.c, lib/closeout.c,
33052         lib/dup2.c, lib/exclude.c, lib/fileblocks.c, lib/filemode.c,
33053         lib/fnmatch.c, lib/fnmtahc_loop.c, lib/fopen-safer.c, lib/fsusage.c,
33054         lib/fsusage.h, lib/ftruncate.c, lib/full-write.c, lib/getdate.y,
33055         lib/getloadavg.c, lib/getugroups.c, lib/hard-locale.c,
33056         lib/hard-locale.h, lib/hash.c, lib/human.c, lib/human.h, lib/lchown.c,
33057         lib/lchown.h, lib/makepath.c, lib/makepath.h, lib/md5.c, lib/md5.h,
33058         lib/memchr.c, lib/memcoll.c, lib/memrchr.c, lib/modechange.c,
33059         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
33060         lib/posixtm.c, lib/putenv.c, quotearg.c, lib/quotearg.h,
33061         lib/readtokens.c, lib/readutmp.c, lib/readutmp.h, lib/rmdir.c,
33062         lib/safe-read.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c,
33063         lib/sig2str.c, lib/stat.c, lib/strtoimax.c, lib/strverscmp.c,
33064         lib/userspec.c, lib/utime.c, lib/version-etc.c., lib/xgethostname.c,
33065         lib/xmemcoll.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtod.h,
33066         lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h, lib/xstrtoumax.c:
33067         Import changes from coreutils.
33068
33069 2004-08-05  Simon Josefsson  <jas@extundo.com>
33070
33071         * m4/strdup.m4: Always run gl_PREREQ_STRDUP, since strdup.h need it.
33072
33073 2004-08-05  Simon Josefsson  <jas@extundo.com>
33074
33075         * m4/getsubopt.m4: New file.
33076
33077 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
33078
33079         Merge from coreutils.
33080
33081         * m4/c-strtod.m4, m4/canonicalize.m4, m4/fcntl-safer.m4:
33082         * m4/getcwd-path-max.m4: New files.
33083
33084         * m4/dos.m4 (gl_AC_DOS): filesystem -> file system renaming.
33085         FILESYSTEM_PREFIX_LEN ->
33086         FILE_SYSTEM_PREFIX_LEN.
33087         FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX ->
33088         FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX.
33089         FILESYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR ->
33090         FILE_SYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR.
33091
33092         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't require gl_AC_DOS, the
33093         prerequisite modules now handle the DOS stuff.
33094         Don't check for unistd.h.
33095
33096 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
33097
33098         Merge from coreutils.
33099
33100         * lib/.gdb-history: Remove; this doesn't belong here.
33101
33102         * lib/c-strtod.c, lib/c-strtod.h, lib/c-strtold.c, lib/cycle-check.c:
33103         * lib/cycle-check.h, lib/dev-ino.h, lib/canonicalize.h:
33104         * lib/canonicalize.c, lib/fcntl-safer.h, lib/fcntl-safer.c:
33105         * lib/getcwd.c: New files.
33106
33107         * lib/dirname.h: Include <stdbool.h>.
33108         (FILE_SYSTEM_PREFIX_LEN): Renamed from FILESYSTEM_PREFIX_LEN,
33109         for consistency with POSIX terminology.  All uses changed.
33110         (IS_ABSOLUTE_FILE_NAME, IS_RELATIVE_FILE_NAME): New macros.
33111         (strip_trailing_slashes): Use bool for booleans.
33112         * lib/stripslash.c (strip_trailing_slashes): Likewise.
33113
33114         * lib/error.c: Work around bug in OpenBSD 3.4 sterror_r: it
33115         sometimes returns a positive errno value even when it succeeds.
33116         (print_errno_message) [!LIBC]: Fall back on strerror if
33117         __strerror_r fails.
33118
33119         * lib/path-concat.c (mempcpy): Don't define if a system header defines
33120         it. Don't include stdio.h, stdlib.h, unistd.h, strdup.h.
33121         (longest_relative_suffix): New function.
33122         (path_concat): Use it.  Assume first argument is not NULL.
33123         Port to DOS.  Omit redundant separators.
33124         Report an error instead of returning NULL.
33125         Use mempcpy instead of memcpy.
33126         (xpath_concat): Remove: not declared or used.
33127
33128         * lib/same.h: Include <stdbool.h>
33129         (same_name): Return bool, not int.
33130         * lib/same.c (same_name): Likewise.
33131         (errno): Don't declare; we assume C89 or better now.
33132
33133         * lib/stat-macros (S_ISCTG, S_ISOFD, S_ISOFL): New macros,
33134         if not already defined.
33135
33136         * lib/xgetcwd.c (errno): Don't declare; we assume C89 or better now.
33137         * lib/dup-safer.c (errno): Likewise.
33138
33139 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
33140
33141         Merge from coreutils.
33142         * modules/c-strtod, modules/c-strtold, modules/canonicalize:
33143         * modules/cycle-check, modules/fcntl-safer, modules/getcwd: New files.
33144         * modules/path-concat: Don't depend on strdup.
33145
33146 2004-08-03  Simon Josefsson  <jas@extundo.com>
33147
33148         * lib/strdup.h: Only use HAVE_DECL_STRDUP if defined.
33149         * lib/progname.h: Don't include stdbool.h.
33150
33151 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
33152
33153         * modules/fatal: Remove, as the "fatal" module wasn't used or working.
33154         * MODULES.html.sh (func_all_modules): Remove fatal.
33155
33156 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
33157
33158         * m4/fatal.m4: Remove, as the "fatal" module wasn't used or working.
33159
33160 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
33161
33162         * lib/fatal.c, fatal.h: Remove as the "fatal" module wasn't used or
33163         working.
33164
33165 2004-08-02  Simon Josefsson  <jas@extundo.com>
33166
33167         * lib/getsubopt.h: New file, with comments from Bruno Haible.
33168         * lib/getsubopt.c: New file, from glibc, but slightly modified based on
33169         suggestions from Paul Eggert <eggert@cs.ucla.edu>.
33170
33171 2004-08-01  Simon Josefsson  <jas@extundo.com>
33172
33173         * lib/xgetdomainname.c: Include stdlib.h, for free().
33174
33175 2004-07-19  Bruno Haible  <bruno@clisp.org>
33176
33177         * MODULES.html.sh (func_all_modules): Add dummy.
33178
33179 2004-07-16  Simon Josefsson  <jas@extundo.com>
33180
33181         * modules/dummy: New file.
33182
33183 2004-07-16  Simon Josefsson  <jas@extundo.com>
33184
33185         * lib/dummy.c: New file.
33186
33187 2004-07-16  Bruno Haible  <bruno@clisp.org>
33188
33189         * lib/backupfile.h: Add extern "C" for C++.
33190         * lib/closeout.h: Likewise.
33191         * lib/copy-file.h: Likewise.
33192         * lib/findprog.h: Likewise.
33193         * lib/full-write.h: Likewise.
33194         * lib/pathname.h: Likewise.
33195         * lib/progname.h: Likewise.
33196         * lib/stpcpy.h: Likewise.
33197         * lib/stpncpy.h: Likewise.
33198         * lib/strcase.h: Likewise.
33199         * lib/strstr.h: Likewise.
33200         * lib/xalloc.h: Likewise.
33201
33202         * lib/mbswidth.h: Add extern "C" for C++.
33203         Reported by Albert Chin-A-Young <china@thewrittenword.com>.
33204
33205 2004-07-13  Robert Millan  <robertmh@gnu.org>
33206
33207         * m4/host-os.m4: s/KNetBSD/kNetBSD/g and s/KFreeBSD/kFreeBSD/g.
33208
33209 2004-07-09  Simon Josefsson  <jas@extundo.com>
33210
33211         * lib/getndelim2.c: Include stddef.h, for ptrdiff_t.  (FreeBSD 4.9
33212         failed without this.)
33213
33214 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
33215
33216         * modules/chown (Files): Add lib/fchown-stub.c, since
33217         gl_PREREQ_CHOWN invokes AC_LIBOBJ(fchown-stub).
33218
33219 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
33220
33221         * lib/fchown-stub.c: New file.
33222
33223 2004-06-24  Jim Meyering  <jim@meyering.net>
33224
33225         * lib/obstack.h (obstack_base): Cast to (void *), per documentation.
33226
33227 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
33228
33229         * modules/argz: Omit "#include".
33230
33231         * MODULES.html.sh (func_all_modules): Add calloc, to match
33232         2004-06-01 addition of calloc module.
33233
33234 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
33235
33236         * m4/argz.m4: New file, which is autoupdated from libtool.
33237
33238 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
33239
33240         * lib/argz.c, lib/argz_.h: New files, which are autoupdated from
33241         libtool.
33242
33243 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
33244
33245         * config/srclist-update: Don't insist on "USA." before the
33246         close-comment, as libtool omits the period and puts the */ on a
33247         separate line.
33248         * config/srclist.txt: Add argz.c, argz_.h, argz.m4.
33249         * config/srclistvars.sh: Add LIBTOOL (for eggert only).
33250
33251 2004-06-22  Gary V. Vaughan  <gary@gnu.org>
33252
33253         * modules/argz: New file.
33254         * MODULES.html.sh (func_all_modules): Add argz.
33255
33256 2004-06-12  Jim Meyering  <jim@meyering.net>
33257         and  Paul Eggert  <eggert@cs.ucla.edu>
33258
33259         * modules/hash (Files): Add lib/xalloc.h.
33260         * modules/pipe (Depends-on): Add wait-process.
33261         * modules/stat (Depends-on): Add xalloc.
33262         * modules/userspec (Files): Add lib/userspec.h.
33263         * modules/xstrto
33264
33265         Upgrade from gettext-0.13.
33266         * modules/gettext (Files): Add m4/intmax.m4, m4/longdouble.m4,
33267         m4/longlong.m4, m4/printf-posix.m4, m4/signed.m4, m4/size_max.m4,
33268         m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4.
33269
33270 2004-06-10  Jim Meyering  <jim@meyering.net>
33271
33272         * lib/calloc.c: New file.
33273
33274 2004-06-06  Paul Eggert  <eggert@cs.ucla.edu>
33275
33276         * lib/getdate.y (yylex): Allow space between sign and number.
33277         Problem reported by Dan Jacobson.
33278
33279 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
33280
33281         Merge from coreutils CVS.
33282
33283         * m4/backupfile.m4, dirname.m4, human.m4, inttypes.m4, longlong.m4,
33284         makepath.m4, memchr.m4, memcmp.m4, mountlist.m4, path-concat.m4,
33285         putenv.m4, quotearg.m4, readutmp.m4, strtoimax.m4, strtoll.m4,
33286         strtoull.m4, strtoumax.m4, ulonglong.m4, vasnprintf.m4,
33287         xstrtol.m4: Fix copyright date and/or serial number.
33288
33289         * m4/chown.m4 (gl_PREREQ_CHOWN): Check for fcntl.h.
33290         See if we need an fchown replacement.
33291         (gl_FUNC_CHOWN_FOLLOWS_SYMLINK): New macro.
33292         (gl_FUNC_CHOWN): Require gl_FUNC_CHOWN_FOLLOWS_SYMLINK,
33293         and use the replacement function if we detect either defect.
33294
33295         * m4/prereq.m4 (gl_PREREQ): Add gl_ALLOCSA, gl_CLOEXEC, gl_INTTOSTR,
33296         gl_UTIMECMP.
33297
33298 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
33299         and  Jim Meyering  <jim@meyering.net>
33300
33301         Merge from coreutils CVS.
33302
33303         * lib/stat-macros.h: New file, with contents from file-type.h
33304         and coreutils' system.h.
33305         * lib/file-type.c: Include "stat-macros.h".
33306         * lib/file-type.h (file_type): Move all macro definitions to new file,
33307         stat-macros.h.
33308
33309         * lib/chown.c (rpl_chown) [CHOWN_FAILS_TO_HONOR_ID_OF_NEGATIVE_ONE]:
33310         Wrap old code with this conditional.
33311         [CHOWN_MODIFIES_SYMLINK]: Try to work around a chown
33312         function that does not dereference symlinks.
33313         * lib/lchown.c (lchown) [CHOWN_MODIFIES_SYMLINK]: Just call chown.
33314
33315         * lib/xreadlink.c: Include xreadlink.h first, to catch .h file
33316         dependency problems.
33317         (xreadlink): Accept new arg SIZE, for efficiency.
33318         All decls and uses changed.
33319         * lib/xreadlink.h: Include <stddef.h>, for size_t.
33320
33321         * lib/.cppi-disable: Add alloca_.h, allocsa.h, exit.h, getndelim2.h,
33322         gettext.h, localcharset.h, strdup.h, strndup.h, strtoul.c, time_r.h.
33323
33324         * lib/.cvsignore: Add alloca.h, fnmatch.h, poll.h, stdbool.h,
33325         sysexits.h.
33326
33327 2004-06-01  Jim Meyering  <jim@meyering.net>
33328
33329         * m4/calloc.m4: New file.
33330
33331 2004-05-31  Paul Eggert  <eggert@cs.ucla.edu>
33332
33333         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Detect _Bool bug in HP aC++/ANSI
33334         C B3910B A.05.55 [Dec 04 2003].  Problem reported by Jim Meyering.
33335         Also, fix a typo in a diagnostic.
33336
33337 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
33338
33339         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Do not require AC_FUNC_MALLOC
33340         or AC_FUNC_REALLOC.
33341
33342 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
33343
33344         * lib/xmalloc.c (HAVE_MALLOC, HAVE_REALLOC): Do not require these
33345         macros to be defined.
33346         (xnmalloc_inline, xnrealloc_inline, xcalloc): Do not die if
33347         the allocator returns NULL because the requested size is zero.
33348
33349 2004-05-20  Paul Eggert  <eggert@cs.ucla.edu>
33350
33351         * lib/malloc/obstack.c (_obstack) [defined _LIBC]: Bring back this
33352         var.  Add comment explaining why libc still defines it.  This
33353         merges the following patch from glibc:
33354         http://sources.redhat.com/ml/libc-alpha/2004-05/msg00157.html
33355
33356 2004-05-20  Andreas Schwab  <schwab@suse.de>
33357
33358         * m4/free.m4: Replace free if it not known to work, not the other
33359         way round.
33360
33361 2004-05-19  Paul Eggert  <eggert@cs.ucla.edu>
33362
33363         * lib/obstack.c (_obstack): Remove unused variable.  It hasn't been
33364         present in glibc since revision 1.1 of this file.
33365         * lib/obstack.h (_obstack_free, obstack_1grow, obstack_1grow_fast,
33366         obstack_alignment_mask, obstack_alloc, obstack_base,
33367         obstack_blank, obstack_blank_fast, obstack_chunk_size,
33368         obstack_copy, obstack_copy0, obstack_finish, obstack_grow,
33369         obstack_grow0, obstack_init, obstack_int_grow,
33370         obstack_int_grow_fast, obstack_make_room, obstack_memory_used,
33371         obstack_next_free, obstack_object_size, obstack_ptr_grow,
33372         obstack_ptr_grow_fast, obstack_room): Remove declarations of
33373         nonexistent functions.
33374
33375 2004-05-18  Karl Berry  <karl@gnu.org>
33376
33377         * config/srclist.txt: break link for vasnprintf.c.
33378
33379 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
33380
33381         Port obstack to the AS/400, where pointers are 16 bytes wide and
33382         you cannot cast an integer to a valid pointer.  This patch is
33383         currently waiting to be integrated into glibc; see
33384         <http://sources.redhat.com/ml/libc-alpha/2004-05/msg00073.html>.
33385
33386         * lib/obstack.h (__PTR_TO_INT, __INT_TO_PTR): Remove.
33387         All uses of __INT_TO_PTR (PTR_TO_INT ...) replaced by __PTR_ALIGN.
33388         (__BPTR_ALIGN, __PTR_ALIGN): New macros.
33389         (struct obstack): temp member is now a union of a pointer and
33390         an integer, instead of an integer.  All integer uses changed.
33391         This does not affect the physical layout of struct obstack,
33392         except on hosts (like the AS/400) where the size or alignment of
33393         void * is greater than that of ptrdiff_t.
33394         (obstack_finish) [! (defined __GNUC__ && defined __STDC__ &&
33395         __STDC__)]: Store temporary in pointer member of union, not
33396         integer member.
33397         * lib/obstack.c: Include <stddef.h>, for offsetof.
33398         (struct fooalign): Remove; it doesn't need a name.
33399         (union fooround): Change double to long double, and add void *.
33400         (DEFAULT_ALIGNMENT): Use offsetof to compute.
33401         (DEFAULT_ALIGNMENT, DEFAULT_ROUNDING): Now an enum constant,
33402         not a macro.  Hence the values are always int; so remove all
33403         casts-to-int in uses.
33404
33405 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
33406
33407         * config/srclist.txt: Break link for argp-help.c and argp-parse.c until
33408         we can get this patch merged into glibc.
33409
33410 2004-05-17  Derek R. Price  <derek@ximbiot.com>
33411             Paul Eggert  <eggert@cs.ucla.edu>
33412
33413         * m4/argp: Depend on alloca.
33414
33415 2004-05-17  Derek R. Price  <derek@ximbiot.com>
33416             Paul Eggert  <eggert@cs.ucla.edu>
33417
33418         * lib/argp-help.c, argp-parse.c: Assume <alloca.h> rather than
33419         freecoding.
33420
33421 2004-05-17  Bruno Haible  <bruno@clisp.org>
33422
33423         * lib/vasnprintf.c (VASNPRINTF): Correctly handle the case of a
33424         precision that consists of a '.' followed by an empty digit string.
33425         Patch by Tor Lillqvist <tml@iki.fi>.
33426
33427 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
33428
33429         * m4/alloca.m4 (gl_FUNC_ALLOCA): Define HAVE_ALLOCA_H always,
33430         for backward compatibility with older code.  We need our own
33431         alloca.h if _AIX is defined.  Define HAVE_ALLOCA if we discover
33432         it under some other name, and our alloca.h will define it.
33433
33434 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
33435             Derek Price  <derek@ximbiot.com>
33436
33437         * lib/alloca.c: Include <alloca.h>, to get our interface.
33438         * lib/alloca_.h: Use __alloca on AIX, so that we don't have to
33439         include <alloca.h> first.  Use C89 prototype for alloca; this
33440         requires including <stddef.h> for size_t.  Use extern "C" if C++.
33441         Use #elif for simplicity, since we can assume C89 now.
33442         Don't try to source the system alloca.h since it will not be found
33443         and to prevent recursively including its replacement.
33444         * lib/fnmatch.c: Include <alloca.h> instead of opencoding.
33445         * lib/regex.c: Likewise.
33446
33447 2004-05-16  Derek Price  <derek@ximbiot.com>
33448             Paul Eggert  <eggert@cs.ucla.edu>
33449
33450         getline cleanup.  This changes the getndelim2 API: both order of
33451         arguments, and meaning of delim2 (now uses EOF, not 0, to indicate
33452         no delimiter).
33453
33454         * lib/getline.c: Don't include stddef.h or stdio.h, since our
33455         interface does that.
33456         (getline): Always use getdelim, so that we don't have two
33457         copies of this code.
33458         * lib/getndelim2.c: Include <limits.h>, <inttypes.h>, <stdint.h>
33459         if available.
33460         (PTRDIFF_MAX, SIZE_MAX, SSIZE_MAX): Define if not defined.
33461         (GETNDELIM2_MAXIMUM): New macro.
33462         (getndelim2): Reorder arguments.  delim==EOF now means no delimiter,
33463         instead of the old practice of delim2==0.  All callers changed.
33464         Return -1 on overflow, instead of returning junk.
33465         Do not set *linesize unless allocation succeeds.
33466         * lib/getndelim2.h: Do not include stddef.h; no longer needed, now
33467         that we include sys/types.h.
33468         * lib/getnline.h: Likewise.
33469         * lib/getndelim2.h (GETNLINE_NO_LIMIT): New macro.
33470         (getndelim2): Reorder arguments.
33471         * lib/getnline.c (getnline, getndelim):
33472         Don't discard the NMAX argument.
33473         (getnline): Invoke getndelim, to avoid code duplication.
33474         * lib/getnline.h (GETNLINE_NO_LIMIT): New macro, used instead
33475         of (size_t) -1 by callers of the getnline family.
33476
33477 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
33478
33479         * m4/gettime.m4 (gl_GETTIME): Require gl_TIMESPEC.
33480         Check for gettimeofday.
33481         * m4/settime.m4 (gl_SETTIME): Require gl_TIMESPEC.
33482         Check for settimeofday, stime.
33483
33484 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
33485
33486         * lib/nanosleep.c (suspended): Change its type from int to
33487         sig_atomic_t volatile.
33488         (first_call): Make it private to rpl_nanosleep, and have it
33489         be zero initially as that's a bit faster.
33490         (my_usleep): Round up fractional times instead of truncating them,
33491         as this is the usual meaning for 'sleep'.
33492
33493         * lib/gettime.c (gettime): Fall back on `time' if `gettimeofday'
33494         doesn't work.
33495         * lib/settime.c: Include <unistd.h>, for stime (on Solaris 8, anyway).
33496         (ENOSYS): Define if not defined.
33497         (settime): Fall back on stime if it exists and settimeofday fails.
33498         But don't bother with fallbacks if a method fails with errno == EPERM.
33499
33500 2004-05-11  Jim Meyering  <jim@meyering.net>
33501
33502         Prior to this change, the save_cwd caller required read access to the
33503         current directory on most systems (ones with the fchdir function).
33504
33505         * lib/save-cwd.c (save_cwd) [HAVE_FCHDIR]: If opening `.' read-only
33506         fails, try write-only, and finally, resort to using xgetcwd.
33507
33508 2004-05-06  Paul Eggert  <eggert@cs.ucla.edu>
33509
33510         * lib/obstack.c, obstack.h: Import changes from libc.
33511
33512 2004-04-28  Bruno Haible  <bruno@clisp.org>
33513
33514         * lib/findprog.c (find_in_path): Treat Cygwin like Windows, since it
33515         also implicitly appends .exe to executables.
33516         * lib/localcharset.c (ISSLASH): Treat Cygwin like Windows, since it now
33517         accepts Windows pathnames.
33518         * lib/pathname.h (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
33519         Treat Cygwin like Windows, since it now accepts Windows pathnames.
33520         * lib/progreloc.c (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
33521         Treat Cygwin like Windows, since it now accepts Windows pathnames.
33522         Reported by Derek Robert Price <derek@ximbiot.com>.
33523
33524 2004-04-21  Karl Berry  <karl@gnu.org>
33525
33526         * config/srclist.txt (localcharset.c): break sync.
33527
33528 2004-04-20  Paul Eggert  <eggert@twinsun.com>
33529
33530         * m4/host-os.m4: Add a copyright notice.
33531
33532 2004-04-20  Jim Meyering  <jim@meyering.net>
33533
33534         Change UTILS_ to gl_ in AC_DEFINE'd names.
33535         Change utils_- and jm_-prefixed variables, too.
33536         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Renamed from
33537         UTILS_FUNC_MKDIR_TRAILING_SLASH.
33538         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Renamed from UTILS_FUNC_MKSTEP.
33539
33540         * m4/dirfd.m4 (gl_FUNC_DIRFD): Rename from UTILS_FUNC_DIRFD.
33541         Don't emit trailing blanks.
33542         Also rename jm_-prefixed variables to have gl_ prefix.
33543
33544         * m4/host-os.m4 (gl_HOST_OS): Rename from UTILS_HOST_OS.
33545         Also rename jm_-prefixed variables to have gl_ prefix.
33546
33547         * m4/jm-macros.m4: Reflect the renamings.
33548         * m4/prereq.m4: Likewise.
33549
33550 2004-04-20  Jim Meyering  <jim@meyering.net>
33551
33552         * lib/getndelim2.c (getndelim2): Upon realloc failure, don't leak
33553         memory.
33554
33555 2004-04-20  Jim Meyering  <jim@meyering.net>
33556             Bruno Haible  <bruno@clisp.org>
33557
33558         * lib/localcharset.c (get_charset_aliases) [!VMS && !WIN32]: Don't leak
33559         memory when realloc fails.
33560
33561 2004-04-19  Jim Meyering  <jim@meyering.net>
33562
33563         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Require gl_FUNC_FREE,
33564         now that readutmp.c may call `free (0)'.
33565
33566 2004-04-19  Bruno Haible  <bruno@clisp.org>
33567
33568         * m4/mbrtowc.m4: Change jm_ to gl_ in cache variables as well.
33569         * m4/inttypes_h.m4: Likewise.
33570         * m4/stdint_h.m4: Likewise.
33571         * m4/intmax_t.m4: Likewise.
33572         * m4/uintmax_t.m4: Likewise.
33573
33574 2004-04-18  Jim Meyering  <jim@meyering.net>
33575
33576         * m4/prereq.m4: Don't forbid jm_ prefix.
33577
33578         * m4/afs.m4, m4/allocsa.m4, m4/assert.m4, m4/backupfile.m4:
33579         * m4/bison.m4, m4/check-decl.m4, m4/chown.m4, m4/d-ino.m4:
33580         * m4/d-type.m4, m4/dirname.m4, m4/dos.m4, m4/error.m4, m4/fpending.m4:
33581         * m4/fstypename.m4, m4/fsusage.m4, m4/ftruncate.m4, m4/getdate.m4:
33582         * m4/getgroups.m4, m4/gettext.m4, m4/glibc21.m4, m4/group-member.m4:
33583         * m4/human.m4, m4/intmax.m4, m4/intmax_t.m4, m4/inttostr.m4:
33584         * m4/inttypes.m4, m4/inttypes_h.m4, m4/jm-macros.m4, m4/jm-winsz1.m4:
33585         * m4/jm-winsz2.m4, m4/lchown.m4, m4/lib-check.m4, m4/link-follow.m4:
33586         * m4/localcharset.m4, m4/longlong.m4, m4/ls-mntd-fs.m4, m4/lstat.m4:
33587         * m4/makepath.m4, m4/mbrtowc.m4, m4/mbswidth.m4, m4/memchr.m4:
33588         * m4/memcmp.m4, m4/mkdtemp.m4, m4/mkstemp.m4, m4/mountlist.m4:
33589         * m4/nanosleep.m4, m4/path-concat.m4, m4/perl.m4, m4/prereq.m4:
33590         * m4/putenv.m4, m4/quotearg.m4, m4/regex.m4, m4/stat.m4:
33591         * m4/stdint_h.m4, m4/strftime.m4, m4/strtoimax.m4, m4/strtoll.m4:
33592         * m4/strtoull.m4, m4/strtoumax.m4, m4/timespec.m4, m4/uintmax_t.m4:
33593         * m4/ulonglong.m4, m4/unlink-busy.m4, m4/unlocked-io.m4, m4/uptime.m4,
33594         * m4/utimbuf.m4, m4/utime.m4, m4/utimes-null.m4, m4/vasnprintf.m4:
33595         * m4/xstrtoimax.m4, m4/xstrtol.m4, m4/xstrtoumax.m4:
33596         Change jm_ to gl_ in AC_DEFINE'd names. Update all uses.
33597
33598 2004-04-18  Jim Meyering  <jim@meyering.net>
33599
33600         * lib/readutmp.c (read_utmp) [UTMP_NAME_FUNCTION]: Upon realloc
33601         failure, don't leak memory and do call END_UTMP_ENT.
33602
33603 2004-04-16  Jim Meyering  <jim@meyering.net>
33604
33605         * m4/prereq.m4 (jm_PREREQ_STAT): Remove macro.  It is specific to
33606         coreutils' stat program.
33607         (gl_PREREQ): Don't require jm_PREREQ_STAT.
33608
33609 2004-04-11  Paul Eggert  <eggert@twinsun.com>
33610
33611         * lib/inttostr.h: Include <limits.h> unconditionally, since we assume
33612         C89.
33613         (CHAR_BIT): Remove, since we assume C89.
33614         Include <stdint.h> if available, as per current Autoconf CVS advice.
33615
33616 2004-03-31  Jim Meyering  <jim@meyering.net>
33617
33618         * m4/prereq.m4: Require AC_FUNC_MALLOC, not jm_FUNC_MALLOC.
33619         Require AC_FUNC_REALLOC, not jm_FUNC_REALLOC.
33620         * m4/xalloc.m4: Likewise.
33621
33622 2004-03-30  Paul Eggert  <eggert@twinsun.com>
33623
33624         Merge from coreutils.
33625
33626         * m4/inttostr.m4: New file.
33627         * m4/getdate.m4 (gl_GETDATE): Remove time-related stuff.
33628         Require AM_STDBOOL_H and gl_TIMESPEC instead.
33629         Require gl_CLOCK_TIME.
33630         * m4/clock_time.m4 (gl_CLOCK_TIME): Require AC_GNU_SOURCE.
33631
33632 2004-03-30  Paul Eggert  <eggert@twinsun.com>
33633
33634         * lib/cloexec.h, cloexec.c (set_cloexec_flag): Return int
33635         not bool, to be more consistent with Unix conventions.
33636         Suggested by Bruno Haible.
33637
33638         Merge from coreutils.
33639
33640         * lib/imaxtostr.c, lib/inttostr.c, lib/inttostr.h, lib/offtostr.c:
33641         * lib/umaxtostr.c: New files.
33642
33643         * lib/getdate.h: Include stdbool.h, and timespec.h instead of
33644         the usual <time.h> dance.
33645         (get_date): Change signature to support fractional time stamps.
33646         All callers changed.
33647         * lib/getdate.y: Include "getdate.h" first, as we can now
33648         assume C89 and don't need to worry about 'const'.
33649         Similarly, include "unlocked-io.h" near start, not in middle.
33650         Include <limits.h>.
33651         (textint.value): Use long int rather than int.
33652         (textint.digits): Use size_t rather than int.
33653         (BILLION, LOG10_BILLION): New constants.
33654         (parser_control): New member rel_ns.  Members day_ordinal,
33655         time_zone, month, day, hour, minutes, rel_year, rel_month,
33656         rel_day, rel_hour, rel_minutes, rel_seconds
33657         are now long int, not int.  Member seconds is now struct timespec,
33658         not int.  New member timespec_seen.  Members dates_seen, days_seen,
33659         local_zones_seen, rels_seen, times_seen, zones_seen are now size_t,
33660         not int.
33661         (%union.intval): Now long int, not int.
33662         New member timespec.
33663         (tSDECIMAL_NUMBER, tUDECIMAL_NUMBER): New tokens.
33664         (seconds, signed_seconds, unsigned_seconds): New nonterminals.
33665         (spec): Now is a timespec or an item list.
33666         (timespec, items): New nonterminals.
33667         (time, rel, relunit, number, get_date):
33668         Add support for fractional seconds.
33669         (time): Fix bug: seconds weren't cleared in "00:00 +0000" syntax.
33670         (gmtime, localtime, mktime): Remove decls; not needed with C89.
33671         (to_hour): First arg is now long int, not int.
33672         (to_year): Returns long int, not int.
33673         Don't treat year -70 like 70.
33674         (tm_diff): Returns long int, not int.
33675         (lookup_word): Use bool instead of int when appropriate.
33676         (yylex): Use size_t for count, not int.
33677         Detect overflow when parsing large integer constants.
33678         Add support for fractions.
33679         (get_date): Make pointers 'const' if possible.
33680         Use more-portable code to detect integer overflow.
33681         (main) [TEST]: Adjust to above changes.  Test for localtime failure.
33682         Don't use ctime; it's not reliable if the year has >4 digits.
33683
33684         * lib/human.c (humblock): Inspect BLOCKSIZE if BLOCK_SIZE isn't set.
33685         This is for compatibility with BSD.
33686
33687         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP): Define.
33688         (ATIME_CMP, CTIME_CMP, MTIME_CMP, TIMESPEC_NS): Likewise.
33689         From coreutils' system.h.
33690
33691         * lib/userspec.c: Don't include "posixver.h".
33692         (parse_user_spec): Fall back on USER.GROUP parsing, regardless
33693         of POSIX version, as POSIX 1003.1-2001 allows that behavior as a
33694         compatible extension.  Simplify code by removing a boolean int
33695         that was always nonzero if a string was nonnull.
33696
33697 2004-03-30  Jim Meyering  <jim@meyering.net>
33698
33699         Merge from coreutils.
33700
33701         Avoid a configure-time warning about sys/ucred.h on OSF V4.0.
33702         * m4/ls-mntd-fs.m4: Test for sys/ucred.h separately, since
33703         on some systems one must include <grp.h> before it.
33704         Reported by Christian Krackowizer.
33705
33706 2004-03-30  Jim Meyering  <jim@meyering.net>
33707
33708         Merge from coreutils.
33709
33710         * lib/mountlist.c [HAVE_SYS_UCRED_H]: Include grp.h before sys/ucred.h.
33711
33712         * lib/readtokens.c (readtoken): Don't leak 64 bytes when reading
33713         an empty input stream.
33714
33715         * lib/readtokens.c: Include <stdbool.h>.
33716         (readtoken): Use `size_t' rather than int/long.
33717         All callers adjusted.
33718         Use `bool' rather than `int' where appropriate.
33719         Use memset rather than an explicit loop.
33720         Use x2nrealloc rather than xrealloc.
33721         Allow the use of `\0' as a delimiter.
33722         (readtokens): Likewise.
33723         * lib/readtokens.h (readtoken, readtokens): Update prototypes.
33724
33725 2004-03-30  Jim Meyering  <jim@meyering.net>
33726
33727         * m4/realloc.m4: Remove file, since now it does no more than
33728         AC_REQUIRE([AC_FUNC_REALLOC]), and that can be done via
33729         the `configure.ac' section of module/realloc.
33730         * m4/malloc.m4: Likewise, but for AC_FUNC_MALLOC.
33731
33732 2004-03-30  Bruno Haible  <bruno@clisp.org>
33733
33734         * lib/getloadavg.c (getloadavg): Don't assume setlocale returns
33735         nonnull.
33736
33737 2004-03-29  Paul Eggert  <eggert@twinsun.com>
33738
33739         Merge changes to getloadavg.c from coreutils and Emacs.
33740
33741         * lib/getloadavg.c [!defined HAVE_SETLOCALE] (setlocale):
33742         Define to an expression, not to the empty string.
33743         Include cloexec.h and xalloc.h.
33744         (getloadavg): Restore LC_NUMERIC locale after setting it temporarily.
33745         Use set_cloexec_flag rather than rolling our own.
33746         * lib/cloexec.c, lib/cloexec.h: New files.
33747
33748 2004-03-29  Paul Eggert  <eggert@twinsun.com>
33749
33750         * m4/cloexec.m4: New file.
33751
33752 2004-03-18  Paul Eggert  <eggert@twinsun.com>
33753
33754         * lib/getopt.h: Sync with libc CVS.
33755
33756 2004-03-18  Paul Eggert  <eggert@twinsun.com>
33757             Bruno Haible  <bruno@clisp.org>
33758
33759         * m4/mbswidth.m4 (gl_MBSWIDTH): Also test whether <wchar.h> declares
33760         mbswidth.
33761
33762 2004-03-18  Paul Eggert  <eggert@twinsun.com>
33763             Bruno Haible  <bruno@clisp.org>
33764
33765         * lib/mbswidth.h: Include <wchar.h> only if
33766         HAVE_DECL_MBSWIDTH_IN_WCHAR_H, not on all platforms that have
33767         <wchar.h>.
33768         * lib/mbswidth.c: Include <stdio.h> and <time.h> before <wchar.h>.
33769
33770 2004-03-09  Paul Eggert  <eggert@twinsun.com>
33771
33772         * lib/argp-parse.c, getopt.c, getopt.h, getopt1.c:
33773         Sync with libc CVS.
33774         * lib/getopt_int.h: New file, also synced from libc.
33775
33776 2004-03-09  Paul Eggert  <eggert@twinsun.com>
33777
33778         * config/srclistvars.sh: Add GNUWWWLICENSES for eggert.
33779         * config/srclist.txt: Sync getopt with libc.  Add getopt_int.h.
33780         Bring back getopt.c, getopt.h, getopt1.c.
33781
33782 2004-03-07  Paul Eggert  <eggert@twinsun.com>
33783
33784         * m4/c-stack.m4 (gl_PREREQ_C_STACK): Renamed from jm_PREREQ_C_STACK.
33785         All uses changed.  Check for sa_sigaction member; this fixes
33786         a bug first reported by Jason Andrade in
33787         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
33788
33789 2004-03-07  Paul Eggert  <eggert@twinsun.com>
33790
33791         * lib/c-stack.c (SIGACTION_WORKS): New macro.  Use it instead of long
33792         '#if' expressions.  Unlike the code it replaces, it does not
33793         depend on (defined _SC_PAGESIZE).  However, it does depend on
33794         HAVE_STRUCT_SIGACTION_SA_SIGACTION; this last change fixes a bug
33795         first reported by Jason Andrade in
33796         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
33797
33798 2004-02-25  Simon Josefsson  <jas@extundo.com>
33799
33800         * m4/strdup.m4 (gl_PREREQ_STRDUP): Check whether strdup is declared.
33801
33802 2004-02-25  Simon Josefsson  <jas@extundo.com>
33803
33804         * lib/strdup.h: New file.
33805         * lib/strdup.c: Include it.
33806         * lib/path-concat.c: Include strdup.h. Drop strdup declaration.
33807         * lib/userspec.c: Include strdup.h. Drop strdup declaration.
33808
33809 2004-02-23  Karl Berry  <karl@gnu.org>
33810
33811         * doc/maintain.texi, doc/standards.texi, doc/make-stds.texi: new files
33812         (from fencepost.gnu.org:/gd/gnuorg).
33813
33814 2004-02-23  Karl Berry  <karl@gnu.org>
33815
33816         * config/srclistvars.sh (GNUORG) [karl]: redefine.
33817         * config/srclist.txt: add maintain/standards documents.
33818
33819 2004-02-18  Bruno Haible  <bruno@clisp.org>
33820
33821         * m4/xsize.m4 (gl_XSIZE): Require AC_C_INLINE.
33822         Reported by Derek Robert Price <derek@ximbiot.com>.
33823
33824 2004-02-16  Karl Berry  <karl@gnu.org>
33825
33826         * config/mkinstalldirs, install-sh: update from automake.
33827
33828 2004-02-06  Karl Berry  <karl@gnu.org>
33829
33830         * m4/po.m4: update from gettext 0.14.1.
33831
33832 2004-02-06  Karl Berry  <karl@gnu.org>
33833
33834         * lib/config.charset: update from gettext 0.14.1.
33835
33836 2004-02-05  Paul Eggert  <eggert@twinsun.com>
33837
33838         Add comments and code, prompted by suggestions from Bruno Haible
33839         for sh-quote.
33840         * lib/quotearg.h (quotearg_alloc): New decl.  Improve the comments
33841         describing the enum quoting_style values.
33842         * lib/quotearg.c (quotearg_alloc): New function.
33843         (quotearg_buffer_restyled): Treat lone { and } as special.
33844         Treat = as special.  Work around bug with older shells
33845         that "see" a '\' that is really the 2nd byte of a multibyte char.
33846         Quote empty string with shell_quoting_style.
33847
33848 2004-02-03  Bruno Haible  <bruno@clisp.org>
33849
33850         * m4/pipe.m4: New file, from GNU gettext.
33851
33852 2004-02-03  Bruno Haible  <bruno@clisp.org>
33853
33854         * lib/pipe.h: New file, from GNU gettext.
33855         * lib/pipe.c: New file, from GNU gettext.
33856
33857 2004-01-27  Bruno Haible  <bruno@clisp.org>
33858
33859         * m4/execute.m4: New file, from GNU gettext.
33860
33861 2004-01-27  Bruno Haible  <bruno@clisp.org>
33862
33863         * lib/execute.h: New file, from GNU gettext.
33864         * lib/execute.c: New file, from GNU gettext.
33865         * lib/w32spawn.h: New file, from GNU gettext.
33866
33867 2004-01-24  Paul Eggert  <eggert@twinsun.com>
33868
33869         Merge from diffutils.
33870
33871         * lib/file-type.c (file_type): Add typed memory objects.
33872         * lib/file-type.h (S_TYPEISTMO): New macro.
33873
33874         * lib/c-stack.h (c_stack_action): Remove argv argument.
33875         * lib/c-stack.c (c_stack_action): Likewise.  All uses changed.
33876         (die): Don't calculate message unless segv_action returns.
33877         (get_stack_location, min_address_from_argv, max_address_from_argv,
33878         volatile stack_base, volatile_stack_size): Remove.
33879         (segv_handler): If ! HAVE_XSI_STACK_OVERFLOW_HEURISTIC, assume
33880         that every segmentation violation is a stack overflow.  (Ouch!)
33881         See Debian bug 136249 (still outstanding) for more info about why
33882         HAVE_XSI_STACK_OVERFLOW_HEURISTIC fails on Linux kernels.
33883
33884 2004-01-24  Paul Eggert  <eggert@twinsun.com>
33885
33886         Exit-status fix from coreutils.
33887
33888         Use exit_failure consistently in place of EXIT_FAILURE,
33889         so that program exit statuses are consistent on failure.
33890
33891         * lib/argmatch.c (ARGMATCH_DIE) [! defined ARGMATCH_DIE]:
33892         Include "exitfail.h", and use exit_failure rather than EXIT_FAILURE.
33893         * lib/argmatch.h: Comment fix to match the above.
33894         * lib/obstack.c (obstack_exit_failure) [!defined _LIBC]:
33895         Now a macro referring to exit_failure, instead of a separate
33896         variable.  Include "exitfail.h" to get it.
33897         * lib/xstrtol.h: Include "exitfail.h".
33898         (STRTOL_FATAL_ERROR): Exit with status exit_failure, not 2.
33899
33900         * lib/long-options.c (parse_long_options): Use prototype
33901         for usage function arg.  Pass it EXIT_SUCCESS rather than 0,
33902         for clarity.
33903
33904 2004-01-21  Jim Meyering  <jim@meyering.net>
33905
33906         * lib/mktime.c (__mktime_internal) [!_LIBC]: Define to mktime_internal
33907         so as not to conflict with a different-sized __mktime_internal
33908         function in GNU libc.
33909         * lib/timegm.c (__mktime_internal) [!_LIBC]: Likewise.
33910         Problem building statically-linked `ls' reported by Michael Brunnbauer.
33911
33912 2004-01-20  Karl Berry  <karl@gnu.org>
33913
33914         * config/config.guess: update from config.
33915
33916         * config/srclistvars.sh: GNUWWWLICENSES for karl.
33917
33918 2004-01-20  Bruno Haible  <bruno@clisp.org>
33919
33920         Safer stack allocation.
33921         * lib/setenv.c: Include allocsa.h.
33922         (alloca): Remove fallback definition.
33923         (freea): Remove macro.
33924         (__add_to_environ) [!_LIBC]: Use allocsa instead of alloca. Use freesa
33925         instead of freea.
33926
33927 2004-01-20  Bruno Haible  <bruno@clisp.org>
33928
33929         * m4/eealloc.m4: New file, from GNU gettext.
33930
33931 2004-01-20  Bruno Haible  <bruno@clisp.org>
33932
33933         * m4/allocsa.m4: New file, from GNU gettext.
33934
33935 2004-01-20  Bruno Haible  <bruno@clisp.org>
33936
33937         * lib/xallocsa.h: New file, from GNU gettext.
33938         * lib/xallocsa.c: New file, from GNU gettext.
33939
33940 2004-01-20  Bruno Haible  <bruno@clisp.org>
33941
33942         * lib/wait-process.c: On Windows, include windows.h. Needed on mingw.
33943
33944 2004-01-20  Bruno Haible  <bruno@clisp.org>
33945
33946         * lib/wait-process.c (wait_subprocess): Add ignore_sigpipe argument.
33947         * lib/wait-process.c (wait_subprocess): Likewise. Handle SIGPIPE
33948         specially.
33949
33950 2004-01-20  Bruno Haible  <bruno@clisp.org>
33951
33952         * lib/wait-process.c (wait_process): Disable the 2003-10-31 waitid()
33953         patch.
33954
33955 2004-01-20  Bruno Haible  <bruno@clisp.org>
33956
33957         * lib/wait-process.c (cleanup_slaves): Use ANSI C declaration.
33958
33959 2004-01-20  Bruno Haible  <bruno@clisp.org>
33960
33961         * lib/eealloc.h: New file.
33962
33963 2004-01-20  Bruno Haible  <bruno@clisp.org>
33964
33965         * lib/binary-io.h: Avoid warnings on Cygwin.
33966
33967 2004-01-20  Bruno Haible  <bruno@clisp.org>
33968
33969         * lib/allocsa.h: New file, from GNU gettext.
33970         * lib/allocsa.c: New file, from GNU gettext.
33971
33972 2004-01-18  Karl Berry  <karl@gnu.org>
33973
33974         * doc/gpl.texi, doc/lgpl.texi: new files.
33975
33976 2004-01-18  Karl Berry  <karl@gnu.org>
33977
33978         * config/srclistvars.sh (GNUWWWLICENSES): new variable.
33979         * config/srclist.txt ({fdl,gpl,lgpl}.text): get from there.
33980
33981 2004-01-15  Paul Eggert  <eggert@twinsun.com>
33982
33983         Merge from coreutils.
33984
33985         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for uintptr_t.
33986         * m4/posixver.m4 (gl_POSIXVER): Require gl_DEFAULT_POSIX2_VERSION.
33987         (gl_DEFAULT_POSIX2_VERSION): Move
33988         the documentation from 'configure' into 'config.hin',
33989         so that 'configure --help' isn't burdened by it and
33990         we don't have to worry about its formatting there.
33991         Reword the documentation so that it's more succinct
33992         and can be run together into a single paragraph.
33993         * m4/same.m4 (gl_SAME): Check for pathconf.
33994
33995 2004-01-15  Paul Eggert  <eggert@twinsun.com>
33996
33997         Merge from coreutils.
33998
33999         * lib/posixver.c: Include posixver.h.
34000
34001         * lib/same.c: Include <stdbool.h>, <limits.h>.
34002         (_POSIX_NAME_MAX): Define if not defined.
34003         (MIN): New macro.
34004         (same_name): If file names are silently truncated, report
34005         that the file names are the same if they are the same after
34006         the silent truncation.
34007
34008         * lib/xstrtod.h (xstrtod): Accept an extra arg, specifying the
34009         conversion function.
34010         * lib/xstrtod.c (xstrtod): Likewise.  All callers changed to
34011         include c-strtod.h and use c_strtod.  Don't include stdlib.h; no
34012         longer needed.
34013
34014 2004-01-15  Jim Meyering  <jim@meyering.net>
34015
34016         Merge from coreutils.
34017
34018         * m4/clock_time.m4 (gl_CLOCK_TIME): Don't set LIB_CLOCK_GETTIME
34019         if no library is required.
34020         * m4/jm-macros.m4: Don't require UTILS_SYS_OPEN_MAX.
34021         * m4/jm-macros.m4 (jm_MACROS): Require gl_FUNC_FREE.
34022         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.58.
34023         (AC_LANG_SOURCE): Remove definition, now that we require autoconf-2.58.
34024         * m4/jm-macros.m4 (jm_MACROS): Don't require AC_FUNC_FTW.
34025         * m4/lib-check.m4 (jm_LIB_CHECK): Do not set LIB_CRYPT to the
34026         value, $ac_cv_search_crypt, if it's "none required".
34027         * m4/posixver.m4 (gl_DEFAULT_POSIX2_VERSION): New macro.
34028         * m4/prereq.m4 (jm_PREREQ): Require AC_FUNC_GETLOADAVG,
34029         not gl_FUNC_GETLOADAVG.
34030         * m4/prereq.m4 (jm_PREREQ): Require gl_READTOKENS, gl_MD5, gl_MAKEPATH,
34031         gl_LONG_OPTIONS, and gl_IDCACHE, gl_GETUGROUPS.
34032
34033 2004-01-15  Jim Meyering  <jim@meyering.net>
34034
34035         Merge from coreutils.
34036
34037         * lib/md5.h (rol) [__GNUC__ && __i386__]: Don't use `asm' code.  These
34038         days, gcc-3.x does better all by itself.  Patch from Dean Gaudet:
34039         http://mail.gnu.org/archive/html/bug-coreutils/2003-11/msg00144.html
34040
34041         * lib/posixver.c (DEFAULT_POSIX2_VERSION): Use definition of new,
34042         optional configure-time default.
34043
34044         * lib/version-etc.c (version_etc_copyright): Update copyright date.
34045
34046         * lib/xreadlink.c (xreadlink): Correct outdated comment.
34047
34048 2004-01-15  Alexandre Duret-Lutz  <adl@gnu.org>
34049
34050         Merge from coreutils.
34051
34052         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Do not set LIB_NANOSLEEP to the
34053         value, $ac_cv_search_nanosleep, if it's "none required".
34054
34055 2004-01-14  Paul Eggert  <eggert@twinsun.com>
34056
34057         * lib/fnmatch_loop.c (ALLOCA_LIMIT): Remove macro, which collided
34058         with like-named macro in fnmatch.c.
34059         (EXT): Use an internal constant instead.
34060
34061         Merge fnmatch patches from glibc.
34062         * lib/fnmatch.c (mbsinit): Remove define.
34063         Add libc_hidden_ver (__fnmatch, fnmatch).
34064         * lib/fnmatch_loop.c (FCT): Cast to int32_t and UCHAR when appropriate.
34065         Adjust to renaming of collseq_table_lookup to __collseq_table_lookup.
34066
34067 2004-01-14  Karl Berry  <karl@gnu.org>
34068
34069         * config/install-sh: update from automake.
34070
34071 2004-01-13  Karl Berry  <karl@gnu.org>
34072
34073         * config/install-sh: update from automake.
34074
34075 2004-01-09  Karl Berry  <karl@gnu.org>
34076
34077         * config/install-sh: update from automake.
34078
34079 2004-01-05  Karl Berry  <karl@gnu.org>
34080
34081         * config/config.{sub,guess}: update from config.
34082
34083 2003-12-31  Karl Berry  <karl@gnu.org>
34084
34085         * config/depcomp: update from automake.
34086
34087 2003-12-14  Karl Berry  <karl@gnu.org>
34088
34089         * lib/config.charset: update from gettext-runtime.
34090
34091 2003-12-03  Paul Eggert  <eggert@twinsun.com>
34092
34093         * lib/getgroups.c (getgroups): xmalloc takes one argument, not two.
34094         Bug reported by Alfred M. Szmidt.
34095
34096 2003-12-03  Bruno Haible  <bruno@clisp.org>
34097
34098         * m4/gettext.m4: Upgrade from gettext-0.13.
34099         * m4/po.m4: Upgrade from gettext-0.13.
34100         * m4/size_max.m4 (gl_SIZE_MAX): Don't use the _ONCE macros here.
34101         * m4/intmax.m4: New file, from gettext-0.13.
34102         * m4/printf-posix.m4: New file, from gettext-0.13.
34103
34104 2003-11-29  Karl Berry  <karl@gnu.org>
34105
34106         * lib/argp-{help.c,parse.c,namefrob.h}, argp.h: update from libc.
34107
34108 2003-11-25  Paul Eggert  <eggert@twinsun.com>
34109             Bruno Haible  <bruno@clisp.org>
34110
34111         * lib/printf-parse.h: Don't include sys/types.h.
34112         (ARG_NONE): New macro.
34113         (char_directive): Change type of *arg_index fields to size_t.
34114         * lib/printf-parse.c: Don't include sys/types.h.
34115         (SSIZE_MAX): Remove macro.
34116         (PRINTF_PARSE): Change the type of the arg_index variables to size_t.
34117         Remove unnecessary overflow check.
34118         * lib/vasnprintf.c (VASNPRINTF): Update for type change of *arg_index
34119         fields.
34120
34121 2003-11-25  Bruno Haible  <bruno@clisp.org>
34122
34123         * modules/vasnprintf (Files): Remove m4/ssize_t.m4.
34124
34125 2003-11-25  Bruno Haible  <bruno@clisp.org>
34126
34127         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Don't require
34128         gt_TYPE_SSIZE_T.
34129
34130 2003-11-24  Paul Eggert  <eggert@twinsun.com>
34131
34132         * modules/alloca: Remove dependency on xalloc.
34133
34134 2003-11-24  Paul Eggert  <eggert@twinsun.com>
34135
34136         * lib/alloca.c: Remove dependency on xalloc module.
34137         (xalloc_die): Remove.
34138         (memory_full) [!defined emacs]: New macro.
34139         [!defined emacs]: Don't include xalloc.h.
34140         (alloca): Invoke memory_full, not xalloc_die, if malloc fails or
34141         address arithmetic overflows.  Change datatypes a bit to avoid
34142         unnecessary casts.
34143
34144 2003-11-22  Jim Meyering  <jim@meyering.net>
34145
34146         * lib/xmalloc.c (x2nrealloc_inline): Fix typos in comments:
34147         s/size/size_t/.
34148
34149 2003-11-21  Karl Berry  <karl@gnu.org>
34150
34151         * config/config.{sub,guess}: update from config.
34152
34153 2003-11-18  Karl Berry  <karl@gnu.org>
34154
34155         * config/config.{sub,guess}: update from config.
34156
34157         * config/(printf-{parse,args}.[ch]): sync broken, sigh.
34158
34159 2003-11-17  Paul Eggert  <eggert@twinsun.com>
34160
34161         * README: Mention that S+T cannot overflow if S is the size of
34162         an existing object and T is sufficiently small.
34163
34164 2003-11-17  Jim Meyering  <jim@meyering.net>
34165
34166         On systems without utime and without a utimes function capable of
34167         dealing with a NULL struct utimbuf* argument, this utime replacement
34168         could -- in unusual circumstances -- leak a file descriptor.
34169         * lib/utime.c: Include <unistd.h> and <errno.h>.
34170         (utime_null): Be sure to close `fd' and to preserve errno.
34171         Reported by Geoff Collyer via Arnold Robbins.
34172
34173 2003-11-17  Bruno Haible  <bruno@clisp.org>
34174
34175         * modules/vasnprintf (Files): Add m4/ssize_t.m4.
34176         (Depends-on): Add xsize.
34177
34178 2003-11-17  Bruno Haible  <bruno@clisp.org>
34179
34180         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Require gt_TYPE_SSIZE_T.
34181
34182 2003-11-17  Bruno Haible  <bruno@clisp.org>
34183
34184         * lib/vasnprintf.c (alloca): Remove fallback definition.
34185         (freea): Remove definition.
34186         (VASNPRINTF): Use alloca only for small sizes, say <= 4000 bytes.
34187         Reported by Paul Eggert.
34188
34189 2003-11-16  Paul Eggert  <eggert@twinsun.com>
34190             Bruno Haible  <bruno@clisp.org>
34191
34192         Protect against address arithmetic overflow.
34193         * lib/printf-args.h: Include stddef.h.
34194         (arguments): Change type of field 'count' to size_t.
34195         * lib/printf-args.c (printf_fetchargs): Use size_t instead of
34196         'unsigned int' where appropriate.
34197         * lib/printf-parse.h: Include sys/types.h.
34198         (char_directive): Change type of *arg_index fields to ssize_t.
34199         (char_directives): Change type of fields 'count', max_*_length to
34200         size_t.
34201         * lib/printf-parse.c: Include sys/types.h and xsize.h.
34202         (SSIZE_MAX): Define fallback value.
34203         (PRINTF_PARSE): Use size_t instead of 'unsigned int' and ssize_t
34204         instead of 'int' where appropriate. Check a_allocated, d_allocated
34205         against overflow. Reject %m$ argument numbers > SSIZE_MAX + 1.
34206         * lib/vasnprintf.c: Include xsize.h.
34207         (VASNPRINTF): Use size_t instead of 'unsigned int' where appropriate.
34208         Check alloca, malloc, realloc, ENSURE_ALLOCATION arguments against
34209         overflow. Avoid wraparound when converting a width or precision from
34210         decimal to binary.
34211
34212 2003-11-16  Bruno Haible  <bruno@clisp.org>
34213
34214         Update from GNU gettext.
34215         * lib/printf-parse.c: Generalize to it can be compiled for wide
34216         strings.
34217         (PRINTF_PARSE, CHAR_T, DIRECTIVE, DIRECTIVES): New macros.
34218         * lib/vasnprintf.c: Generalize to it can be compiled for wide strings.
34219         (VASNPRINTF, CHAR_T, DIRECTIVE, DIRECTIVES, PRINTF_PARSE, USE_SNPRINTF,
34220         SNPRINTF): New macros.
34221         Don't include <alloca.h> if the file is used inside libintl.
34222         (local_wcslen): New function, for Solaris 2.5.1.
34223         (VASNPRINTF): Use it instead of wcslen.
34224
34225 2003-11-16  Bruno Haible  <bruno@clisp.org>
34226
34227         * lib/xsize.h (xmax): New function.
34228         (xsum, xsum3, xsum4): Declare as "pure" functions.
34229
34230 2003-11-12  Paul Eggert  <eggert@twinsun.com>
34231
34232         * modules/xalloc (Files): Undo latest change, since xalloc.h
34233         no longer needs SIZE_MAX or PTRDIFF_MAX.
34234
34235 2003-11-12  Paul Eggert  <eggert@twinsun.com>
34236
34237         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Do not require gl_SIZE_MAX or
34238         gl_PTRDIFF_MAX.
34239
34240 2003-11-12  Paul Eggert  <eggert@twinsun.com>
34241
34242         * lib/xstrtol.c (__xstrtol): Remove "break" immediately after
34243         "return", to pacify some unknown compiler.  Problem reported
34244         by Joerg Schilling.
34245
34246 2003-11-12  Paul Eggert  <eggert@twinsun.com>
34247
34248         * lib/xalloc.h: Do not include <limits.h> or <stdint.h>.
34249         (xalloc_oversized): Use sizeof (ptrdiff_t) and sizeof (size_t) for
34250         the heuristic, rather than PTRDIFF_MAX and SIZE_MAX.  This
34251         heuristic is just as accurate as far as we know, and it removes a
34252         dependency on size_max.m4 and ptrdiff_max.m4.
34253
34254 2003-11-11  Bruno Haible  <bruno@clisp.org>
34255
34256         * modules/xsize (Files): Add m4/size_max.m4.
34257         * modules/xalloc (Files): Add m4/size_max.m4, m4/ptrdiff_max.m4.
34258
34259 2003-11-11  Bruno Haible  <bruno@clisp.org>
34260
34261         * m4/size_max.m4: New file.
34262         * m4/ptrdiff_max.m4: New file.
34263         * m4/xsize,m4 (gl_XSIZE): Require gl_SIZE_MAX.
34264         * m4/xalloc.m4 (gl_PREREQ_XALLOC): New macro.
34265         (gl_XALLOC): Invoke it.
34266
34267 2003-11-11  Bruno Haible  <bruno@clisp.org>
34268
34269         * lib/xsize.h (SIZE_MAX): Remove fallback definition.
34270         * lib/xalloc.h: Include limits.h. Assume SIZE_MAX and PTRDIFF_MAX are
34271         defined.
34272
34273 2003-11-10  Paul Eggert  <eggert@twinsun.com>
34274
34275         * lib/xalloc.h (xalloc_oversized): [! (defined PTRDIFF_MAX &&
34276         PTRDIFF_MAX < SIZE_MAX)]: Fix off-by-one error that would have
34277         rejected some allocations of exactly SIZE_MAX - 2 bytes.
34278         From Bruno Haible.
34279         [defined PTRDIFF_MAX && PTRDIFF_MAX < SIZE_MAX]: Use SIZE_MAX,
34280         not (size_t) -1, since it's defined here.
34281
34282 2003-11-09  Karl Berry  <karl@gnu.org>
34283
34284         * config/mkinstalldirs, depcomp, mdate-sh: update from automake.
34285
34286 2003-11-06  Paul Eggert  <eggert@twinsun.com>
34287
34288         * lib/xalloc.h [HAVE_STDINT_H]: Include <stdint.h>.
34289         (xalloc_oversized) [! (PTRDIFF_MAX < SIZE_MAX)]:
34290         Reject sizes of exactly SIZE_MAX bytes.
34291         * lib/xreadlink.c: Include "xalloc.h" before checking whether SIZE_MAX
34292         is defined, since "xalloc.h" now defines SIZE_MAX on modern hosts.
34293
34294 2003-11-05  Bruno Haible  <bruno@clisp.org>
34295
34296         * lib/xsize.h: Include limits.h, to avoid a possible collision with
34297         SIZE_MAX defined in <limits.h> on Solaris.
34298
34299 2003-11-04  Jim Meyering  <jim@meyering.net>
34300
34301         * modules/sysexits: Use the `$(VAR)' notation for AC_SUBST'd
34302         variable names, rather than @VAR@.
34303         * modules/poll: Likewise.
34304
34305 2003-11-04  Bruno Haible  <bruno@clisp.org>
34306
34307         * modules/xsize: New file.
34308         * modules/linebreak: Depend on xsize.
34309         * MODULES.html.sh (func_all_modules): Add xsize.
34310
34311 2003-11-04  Bruno Haible  <bruno@clisp.org>
34312
34313         * m4/xsize.m4: New file.
34314
34315 2003-11-04  Bruno Haible  <bruno@clisp.org>
34316
34317         * lib/xsize.h: New file.
34318         * lib/linebreak.c: Include xsize.h.
34319         (mbs_possible_linebreaks, mbs_width_linebreaks): Check malloc()
34320         argument for overflow.
34321         Suggested by Paul Eggert.
34322
34323 2003-11-03  Karl Berry  <karl@gnu.org>
34324
34325         * config/config.{guess,sub}: update from config.
34326
34327 2003-11-03  Jim Meyering  <jim@meyering.net>
34328
34329         * modules/userspec (lib_SOURCES): Add userspec.h.
34330         (Include): Add "userspec.h".
34331         Improve description.
34332
34333 2003-11-03  Jim Meyering  <jim@meyering.net>
34334
34335         * lib/userspec.c: Include "userspec.h".
34336         * lib/userspec.h: New file.
34337
34338 2003-11-03  Bruno Haible  <bruno@clisp.org>
34339
34340         * m4/wait-process.m4 (gl_WAIT_PROCESS): Also check for waitid.
34341
34342 2003-11-03  Bruno Haible  <bruno@clisp.org>
34343
34344         * lib/wait-process.c (wait_process): Use waitid with WNOWAIT if
34345         available, to avoid (extremely rare) race condition.
34346         Suggested by Paul Eggert.
34347
34348 2003-11-02  Karl Berry  <karl@gnu.org>
34349
34350         * config/srclist.txt (vasprintf.c): sync broken, sigh.
34351
34352 2003-10-31  Paul Eggert  <eggert@twinsun.com>
34353
34354         * lib/mountlist.h (struct mount_entry.me_type_malloced): New member.
34355         * lib/mountlist.c (SIZE_MAX): Define if not defined already.
34356         (read_filesystem_list): Set and use me_type_malloced.
34357         Use "sizeof *me" rather than "sizeof (struct mount_entry)" (or
34358         whatever the type happens to be), for brevity and consistency.
34359         Check for size calculation overflow on Alphas running OSF/1.
34360
34361 2003-10-31  Jim Meyering  <jim@meyering.net>
34362
34363         * lib/hash.c: Include "xalloc.h" for use of xalloc_oversized.
34364
34365         * lib/linebuffer.c: Include <string.h> for declaration of memset.
34366
34367 2003-10-30  Paul Eggert  <eggert@twinsun.com>
34368             Bruno Haible  <bruno@clisp.org>
34369
34370         * lib/vasprintf.c: Include <limits.h>, <stdlib.h>.
34371         (vasprintf): Fail if the resulting length doesn't fit in an 'int'.
34372
34373 2003-10-30  Paul Eggert  <eggert@cs.ucla.edu>
34374
34375         * m4/host-os.m4 (UTILS_HOST_OS): Change netbsd*-gnu pattern back to
34376         netbsd*-gnu*.  Suggested by Robert Millan.
34377
34378 2003-10-29  Paul Eggert  <eggert@twinsun.com>
34379
34380         * modules/group-member: Depend on stdbool.
34381
34382 2003-10-29  Paul Eggert  <eggert@twinsun.com>
34383
34384         * m4/xalloc.m4 (gl_XALLOC): Undo previous change.
34385
34386 2003-10-29  Paul Eggert  <eggert@twinsun.com>
34387
34388         * m4/host-os.m4 (UTILS_HOST_OS): Resurrect netbsd*-gnu.  Add comments
34389         to it, and to knetbsd*-gnu and kfreebsd*-gnu.  Remove the '*' from
34390         after the 'gnu' in these cases.  This fixes some bugs in the
34391         previous change, and is based on suggestions by Robert Millan.
34392
34393 2003-10-29  Paul Eggert  <eggert@twinsun.com>
34394
34395         * lib/xalloc.h (xalloc_oversized): Now a macro, not a function,
34396         so that it works even if SIZE_MAX < N.  Do not include <stdbool.h>;
34397         no longer needed.
34398         * lib/quotearg.c (quotearg_n_options): Use it.
34399         * lib/group-member.c: Include <stdbool.h>.
34400         (free_group_info): Arg is now const *; don't free arg.
34401         (get_group_info): Now returns bool and accepts struct group_info *,
34402         rather than returning a malloc'ed struct group_info *.
34403         All uses changed.  Check for overflow in internal size calculation.
34404
34405         * lib/getusershell.c (readname): Simplify the code by using x2nrealloc
34406         rather than xmalloc/xrealloc.
34407         * lib/linebuffer.c (initbuffer, readlinebuffer): Simplify the code by
34408         using x2realloc rather than xmalloc/xrealloc.  Also, fix a C
34409         conformance bug: the old code used a pointer after freeing the
34410         storage that it addressed.
34411         * lib/hash.c (hash_initialize): Simplify the code by using
34412         xalloc_oversized rather than doing it by hand.
34413         * lib/getgroups.c (getgroups): Don't use xrealloc, since we don't need
34414         the buffer preserved.  Use free and xmalloc instead.
34415         * lib/quotearg.c (quotearg_n_options): Likewise.
34416         Use a simpler test for size overflow.  Don't use xalloc_oversized
34417         because unsigned int might be wider than size_t (!); this suggests
34418         that we should switch from unsigned int to size_t for slot numbers.
34419
34420 2003-10-28  Paul Eggert  <eggert@twinsun.com>
34421
34422         * m4/host-os.m4 (UTILS_HOST_OS): Identify GNU/KFreeBSD and
34423         GNU/KNetBSD.  These implementations use glibc atop the FreeBSD and
34424         NetBSD kernels.  Requested by Richard Stallman.
34425
34426 2003-10-27  Paul Eggert  <eggert@twinsun.com>
34427
34428         * lib/exclude.c (new_exclude): Use xzalloc rather than xmalloc
34429         to allocate the returned structure.  Do not allocate a subarray,
34430         as x2nrealloc will do that.
34431         (add_exclude): Use x2nrealloc to reallocate ex->exclude,
34432         instead of xnrealloc.
34433         (add_exclude_file): Use x2realloc instead of malloc + xnrealloc.
34434
34435 2003-10-27  Bruno Haible  <bruno@clisp.org>
34436
34437         * lib/stdbool_.h: Better support for BeOS.
34438
34439 2003-10-26  Paul Eggert  <eggert@twinsun.com>
34440
34441         * m4/xalloc.m4 (gl_XALLOC): Requore AC_C_INLINE, since xalloc.h
34442         now uses inline.
34443
34444 2003-10-26  Paul Eggert  <eggert@twinsun.com>
34445
34446         * lib/xalloc.h (xalloc_oversized): New static inline function, for
34447         callers that want to do their own size-overflow checking.  Include
34448         <stdbool.h>, since xalloc_oversized returns bool.
34449         * lib/xalloc.c (array_size_overflow): Remove.  All callers changed
34450         to use xalloc_oversized.
34451
34452         Add two functions x2realloc, x2nrealloc, for programs that grow
34453         arrays dynamically by doubling their sizes.
34454         * lib/xalloc.h (x2realloc, x2nrealloc): New decls.
34455         * lib/xmalloc.c (x2nrealloc_inline, x2nrealloc, x2realloc):
34456         New functions.
34457
34458         Port to C99 semantics for 'inline' of external functions.
34459         Bug reported by Bruno Haible.
34460         * lib/xmalloc.c (xnmalloc_inline): New static inline function,
34461         with the old contents of xnmalloc.
34462         (xnmalloc, xmalloc): Use it.
34463         (xnrealloc_inline): New static inline function,
34464         with the old contents of xnrealloc.
34465         (xnrealloc, xrealloc): Use it.
34466
34467         * lib/alloc.c (alloca): xmalloc cannot return NULL, so don't test for
34468         that.
34469
34470 2003-10-26  Karl Berry  <karl@gnu.org>
34471
34472         * config/srclist.txt (COPYING.DOC): no longer available from
34473         /gd/gnuorg; don't know where the ultimate source is.
34474
34475 2003-10-25  Paul Eggert  <eggert@twinsun.com>
34476
34477         Fix several address-calculation bugs in the hash modules,
34478         plus some minor code cleanup.
34479
34480         * lib/hash.h: Include <stdbool.h>, for bool.
34481         * lib/hash.c: Don't include <stdbool.h>, since hash.h does it now.
34482         * lib/hash.h (Hash_hasher, hash_get_n_buckets, hash_get_n_buckets_used,
34483         hash_get_n_entries, hash_get_max_bucket_length,
34484         hash_get_entries, hash_do_for_each, hash_string, hash_initialize,
34485         hash_rehash): Use size_t rather than unsigned.
34486         * lib/hash.c (struct hash_table, hash_get_n_buckets,
34487         hash_get_n_buckets_used, hash_get_n_entries,
34488         hash_get_max_bucket_length, hash_table_ok, hash_print_statistics,
34489         hash_get_entries, hash_do_for_each, hash_string, is_prime,
34490         next_prime, hash_initialize, hash_rehash, hash_delete, hash_print):
34491         Likewise.
34492         (SIZE_MAX): Define if not defined.
34493         (hash_get_max_bucket_length, hash_table_ok, hash_lookup,
34494         hash_get_first, hash_get_next, hash_get_entries, hash_do_for_each,
34495         hash_print):
34496         Use const * when possible.
34497         (hash_string): Use (unsigned char) *P rather than *(unsigned char *) P.
34498         (check_tuning): Fix bug: if tuning parameters were very close to
34499         0 or 1, rounding errors could have caused subscript violations.
34500         (hash_initialize, allocate_entry, hash_print): Remove unnecessary cast.
34501         (hash_initialize): Add 'fail:' label
34502         to free table and return NULL, and use it to simplify code.
34503         Use calloc rather than clearing the storage ourself.
34504         (hash_initialize, hash_rehash): Check for arithmetic overflow in
34505         buffer size calculations.
34506         * lib/hash-pjw.h (hash_pjw): Use size_t, not unsigned.
34507         Include <stddef.h>, for size_t.
34508         * lib/hash-pjw.c (hash_pjw): Likewise.
34509         Switch to method described by Bruno Haible.
34510         Include <limits.h>, for CHAR_BIT.
34511         (SIZE_BITS): New macro.
34512
34513 2003-10-23  Paul Eggert  <eggert@twinsun.com>
34514
34515         * m4/getline.m4 (AM_FUNC_GETLINE):
34516         Don't include getndelim2.o twice into LIBOBJS; this breaks on some
34517         hosts.  Problem reported by Derek Robert Price in
34518         <http://mail.gnu.org/archive/html/bug-gnulib/2003-10/msg00092.html>.
34519         This patch can be withdrawn after Autoconf 2.58 is required for gnulib.
34520         * m4/getndelim2.m4 (gl_GETNDELIM2): Likewise.
34521
34522 2003-10-21  Paul Eggert  <eggert@twinsun.com>
34523
34524         * lib/getndelim2.c (getndelim2): When size calculation overflows,
34525         ceiling the allocation at NMAX bytes rather than silently
34526         discarding input bytes before NMAX is reached.  This makes
34527         a difference only if NMAX exceeds SIZE_MAX / 2.
34528
34529         * lib/obstack.c: Merge from glibc.
34530         [defined _LIBC]: Include <obstack.h>, not "obstack.h".
34531         Add libc_hidden_def (_obstack_newchunk).
34532         (_obstack_free) [! defined _LIBC]: Remove.
34533         [defined _LIBC]: Make a strong alias from obstack_free, rather than
34534         a clone of the function body.
34535         (fputs) [defined _LIBC && defined USE_IN_LIBIO]: Remove.
34536         [defined _LIBC && !defined USE_IN_LIBIO]: Include <libio/iolibio.h>.
34537
34538         * lib/obstack.h: Indenting cleanup, to make it easier to merge with
34539         glibc.
34540         (obstack_grow, obstack_grow0): Remove unnecessary parentheses around
34541         arg to memcpy.
34542
34543         * lib/obstack.h (obstack_1grow_fast): Properly parenthesize arg.
34544         (obstack_ptr_grow_fast, obstack_int_grow_fast):
34545         Don't use lvalue casts, as GCC plans to remove support for them
34546         in GCC 3.5.  Reported by Joseph S. Myers.  This bug
34547         was also present in the non-GCC version, indicating that this
34548         code had always been buggy and had never been widely used.
34549         (obstack_1grow, obstack_ptr_grow, obstack_int_grow, obstack_blank):
34550         Use the fast variant of each macro, rather than copying the
34551         definiens of the fast variant; that way, we'll be more likely to
34552         catch future bugs in the fast variants.
34553
34554 2003-10-20  Bruno Haible  <bruno@clisp.org>
34555
34556         * modules/wait-process: New file.
34557         * MODULES.html.sh (func_all_modules): Add wait-process.
34558
34559 2003-10-20  Bruno Haible  <bruno@clisp.org>
34560
34561         * m4/wait-process.m4: New file.
34562
34563 2003-10-20  Bruno Haible  <bruno@clisp.org>
34564
34565         * lib/wait-process.h: New file, from GNU gettext.
34566         * lib/wait-process.c: New file, from GNU gettext.
34567
34568 2003-10-19  Jim Meyering  <jim@meyering.net>
34569
34570         * lib/vasnprintf.c (vasnprintf): Work around losing snprintf on
34571         HPUX 10.20.
34572
34573 2003-10-18  Karl Berry  <karl@gnu.org>
34574
34575         * config/config.guess: update from config.
34576
34577 2003-10-16  Paul Eggert  <eggert@twinsun.com>
34578
34579         * lib/getgroups.c: Include <errno.h>, <stdlib.h>.
34580         (getgroups): First arg is int, not size_t.
34581         Don't let 'free' mangle errno.
34582
34583 2003-10-16  Paul Eggert  <eggert@twinsun.com>
34584
34585         * README: Mention that gnulib assumes that (foo *) NULL + 0 == NULL.
34586
34587 2003-10-16  Karl Berry  <karl@gnu.org>
34588
34589         * config/config.{guess,sub}: update from config.
34590
34591 2003-10-16  Jim Meyering  <jim@meyering.net>
34592
34593         * lib/xmalloc.c: Include <string.h>, for declarations of memset and
34594         memcpy.
34595
34596 2003-10-15  Paul Eggert  <eggert@twinsun.com>
34597
34598         * lib/exclude.c: Do not include <inttypes.h> or <stdint.h>.
34599         (SIZE_MAX): Remove.
34600         (new_exclude, add_exclude_file): Initial size no longer needs to
34601         be a power of 2.
34602         (add_exclude, add_exclude_file): Use xnrealloc instead of rolling
34603         our own address arithmetic overflow checking.
34604
34605         * lib/fnmatch.c (SIZE_MAX): Define if standard headers don't.
34606         (fnmatch): Do not alloca more than 2000 wide characters;
34607         instead, use malloc for large buffers.
34608         Check for address arithmetic overflow, and return -1
34609         with errno set to ENOMEM in that case.
34610         * lib/fnmatch_loop.c (ALLOCA_LIMIT): New macro.
34611         (NEW_PATTERN): Do not alloca more than 8000 bytes;
34612         instead, return -1.  Check for address arithmetic overflow.
34613
34614 2003-10-14  Paul Eggert  <eggert@twinsun.com>
34615
34616         Handle invalid suffixes and overflow independently, so that
34617         callers can treat them independently as needed.  Fix some bugs in
34618         suffix handling, e.g., "100k@" was not diagnosed as an invalid
34619         suffix for a human-readable blocksize.  The major caller-visible
34620         change is the addition of a new
34621         LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW enum value, indicating
34622         that both overflow and suffix chars were found.
34623
34624         * lib/human.c (humblock): Don't check separately for invalid suffix
34625         char; that is xstrtoumax's job (now that its bug is fixed).
34626         * lib/xstrtoimax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [defined
34627         INTMAX_MAX]: New macros.
34628         * lib/xstrtol.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM, TYPE_MINIMUM,
34629         TYPE_MAXIMUM): New macros.
34630         (bkm_scale, bkm_scale_by_power): Return strtol_error, not int.
34631         (bkm_scale, bkm_scale_by_power, __xstrtol): Return maximal values
34632         if overflow occurs, as it's what __strtol does and it's more useful
34633         in practice.
34634         (__xstrtol): If __strtol reports some error other than ERANGE,
34635         reflect it to the caller as LONGINT_INVALID.  If it reports
34636         ERANGE, continue the rest of parsing, and report LONGINT_OVERFLOW
34637         | LONGINT_INVALID_SUFFIX_CHAR if both errors occur.
34638         * lib/xstrtol.h (LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW): New enum
34639         value.
34640         (_STRTOL_ERROR): Handle it.  Abort when given unknown error codes.
34641         * lib/xstrtoul.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM): New macros.
34642         * lib/xstrtoumax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM)
34643         [defined UINTMAX_MAX]: New macros.
34644
34645 2003-10-14  Bruno Haible  <bruno@clisp.org>
34646
34647         * modules/fatal-signal: Add m4/sig_atomic_t.m4 to file list.
34648
34649 2003-10-14  Bruno Haible  <bruno@clisp.org>
34650
34651         * m4/sig_atomic_t: New file, from GNU gettext.
34652         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Require gt_TYPE_SIG_ATOMIC_T.
34653
34654 2003-10-14  Bruno Haible  <bruno@clisp.org>
34655
34656         * lib/fatal-signal.h: Improved comments. Suggested by Paul Eggert.
34657         * lib/fatal-signal.c: Use sig_atomic_t. Suggested by Paul Eggert.
34658         Also use volatile where needed.
34659
34660 2003-10-12  Paul Eggert  <eggert@twinsun.com>
34661
34662         * modules/xalloc: Do not depend on 'exit'.  Depend on 'stdbool'.
34663         Change maintainer from Bruno Haible to 'all'.
34664
34665 2003-10-12  Paul Eggert  <eggert@twinsun.com>
34666
34667         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Require AC_C_INLINE.
34668
34669 2003-10-12  Paul Eggert  <eggert@twinsun.com>
34670
34671         * lib/xalloc.h (xnmalloc, xzalloc, xnrealloc, xclone): New decls.
34672         (XMALLOC, XCALLOC, XREALLOC, XFREE, CCLONE, CLONE): Deprecate,
34673         and define in terms of the other primitives.
34674         * lib/xmalloc.c: Include stdbool.h; do not include exit.h.
34675         (SIZE_MAX): Define if not already defined.
34676         (array_size_overflow): New function.
34677         (xalloc_die): Abort instead of exiting if 'error' returns.
34678         (xnmalloc, xnrealloc, xzalloc, xclone): New functions.
34679         (xmalloc, xrealloc): Use them.
34680         (xcalloc): Check for address arithmetic overflow.
34681         * lib/xstrdup.c (xstrdup): Use xclone, since memcpy should be
34682         a bit faster than strcpy.
34683
34684 2003-10-10  Simon Josefsson  <jas@extundo.com>
34685
34686         * modules/argp (Depends-on): Add restrict and strcase.
34687
34688 2003-10-10  Simon Josefsson  <jas@extundo.com>
34689
34690         * m4/argp.m4: Add AC_C_INLINE.
34691
34692 2003-10-08  Paul Eggert  <eggert@twinsun.com>
34693
34694         Merge getpass from libc, plus a few fixes.
34695
34696         * lib/getpass.c (HAVE_STDIO_EXT) [_LIBC]: Define to 1.
34697         Include <stdbool.h>.
34698         Include <stdio_ext.h> if HAVE_STDIO_H, otherwise define
34699         __fsetlocking to empty.
34700         [_LIBC]: Do not include "getline.h" or "unlocked-io.h", but
34701         do include <bits/libc-lock.h>.
34702         Do not include <fcntl.h>; not needed.
34703         [_LIBC]: Include <wchar.h>.
34704         (NOTCANCEL_MODE): New macro.
34705         (flockfile, funlockfile) [_LIBC]: New macros.
34706         (__libc_cleanup_push, __libc_cleanup_pop, __getline, __tcgetattr)
34707         [!_LIBC]: New macros.
34708         (call_fclose): New function.
34709         (getpass): Use it.  Save tty stream separately; this simplifies the
34710         code and makes it more reliable if stdin happens to equal stdout.
34711         Invoke __fsetlocking on tty.
34712         Handle thread cancellation if needed.
34713         Namespace cleanup (use __tcgetattr, __getline).
34714         Use bool for Booleans.
34715         [USE_IN_LIBIO]: Handle wide streams.
34716         [!_LIBC]: Unconditionally do the fseek, since we don't know what
34717         stream might go where.
34718
34719         * lib/unlocked-io.h: Include <stdio.h>, so that the caller
34720         doesn't have to include <stdio.h> before us.
34721         (clearerr_unlocked, feof_unlocked, ferror_unlocked,
34722         fflush_unlocked, fgets_unlocked, fputc_unlocked, fputs_unlocked,
34723         fread_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked,
34724         putc_unlocked, putchar_unlocked): Define to the unlocked counterpart
34725         if not declared, so that we can use getpass.c code from libc without
34726         rewriting it.
34727         (flockfile, ftrylockfile, funlockfile): New macros.
34728
34729 2003-10-08  Paul Eggert  <eggert@twinsun.com>
34730
34731         * modules/getpass: Depend on stdbool.
34732
34733 2003-10-08  Paul Eggert  <eggert@twinsun.com>
34734
34735         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for stdio_ext.h.
34736
34737 2003-10-07  Karl Berry  <karl@gnu.org>
34738
34739         * config/config.{guess,sub}: update from config.
34740
34741 2003-10-06  Jim Meyering  <jim@meyering.net>
34742             Bruno Haible  <bruno@clisp.org>
34743
34744         This lets translators provide better translations for the
34745         "Written by ..." part of --version output.
34746         * lib/version-etc.h: Include stdarg.h.
34747         (version_etc_copyright): Declare as readonly.
34748         (version_etc): Make this function variadic with a NULL-terminated list
34749         of author name strings.
34750         (version_etc_va): New declaration.
34751         * lib/version-etc.c: Include stdarg.h, stdlib.h.
34752         (version_etc_copyright): Declare as readonly.
34753         (version_etc_va): New function. Provide a different translatable string
34754         for each possible number of authors < 10. Abbreviate when there are 10
34755         authors or more.
34756         (version_etc): Make this function variadic. Call version_etc_va.
34757         Suggestion from Gary V. Vaughan.
34758
34759         * lib/long-options.h (parse_long_options): Change prototype: the
34760         authors string is moved to the end and becomes variadic.
34761         * lib/long-options.c: Include stdarg.h.
34762         (parse_long_options): Make this function variadic, too.
34763         Call version_etc_va, not version_etc.
34764
34765 2003-10-06  Bruno Haible  <bruno@clisp.org>
34766
34767         * modules/version-etc-2: Remove file.
34768         * MODULES.html.sh (func_all_modules): Remove version-etc-2.
34769
34770 2003-10-06  Bruno Haible  <bruno@clisp.org>
34771
34772         * modules/fatal-signal: New file.
34773         * MODULES.html.sh (func_all_modules): Add fatal-signal.
34774
34775 2003-10-06  Bruno Haible  <bruno@clisp.org>
34776
34777         * m4/fatal-signal.m4: New file.
34778         * m4/signalblocking.m4: New file, from GNU gettext.
34779
34780 2003-10-06  Bruno Haible  <bruno@clisp.org>
34781
34782         * lib/version-etc-2.h: Remove file.
34783         * lib/version-etc-2.c: Remove file.
34784
34785 2003-10-06  Bruno Haible  <bruno@clisp.org>
34786
34787         * lib/fatal-signal.h: New file, from GNU gettext.
34788         * lib/fatal-signal.c: New file, from GNU gettext.
34789
34790 2003-10-05  Paul Eggert  <eggert@twinsun.com>
34791
34792         * README: Rework advice for preventing empty .o files.
34793         Don't recommend ELIDE constructs.  Recommend <stddef.h>,
34794         not <sys/types.h>.
34795
34796 2003-10-04  Karl Berry  <karl@gnu.org>
34797
34798         * lib/argp*: update from libc.
34799
34800 2003-10-04  Karl Berry  <karl@gnu.org>
34801
34802         * config/config.{guess,sub}: update from config.
34803
34804 2003-10-02  Bruno Haible  <bruno@clisp.org>
34805
34806         * modules/lchown (Include): Add lchown.h.
34807         * modules/time_r (Include): Use "..." syntax.
34808         * modules/xgetdomainname (Include): Add xgetdomainname.h.
34809
34810 2003-10-01  Simon Josefsson  <jas@extundo.com>
34811
34812         * MODULES.html.sh (func_all_modules): Move gethostname from section
34813         'based on' to section 'lacking' POSIX:2001.
34814
34815 2003-10-01  Larry Jones  <lawrence.jones@eds.com>
34816
34817         * lib/getpass.c (getpass): Use a no-op fseek when switching from input
34818         to output mode on the same stream.
34819
34820 2003-09-29  Paul Eggert  <eggert@twinsun.com>
34821
34822         * lib/strftime.c (tm_diff) [! HAVE_TM_GMTOFF]:
34823         Fix arg typo in previous patch.
34824
34825 2003-09-28  Jim Meyering  <jim@meyering.net>
34826
34827         * lib/error.c: Correct cpp indentation.
34828
34829 2003-09-27  Paul Eggert  <eggert@twinsun.com>
34830
34831         * modules/free: New file.
34832
34833 2003-09-27  Paul Eggert  <eggert@twinsun.com>
34834
34835         * m4/free.m4: New file.
34836
34837 2003-09-27  Paul Eggert  <eggert@twinsun.com>
34838
34839         * lib/minmax.h (MIN, MAX)
34840         [__STDC__ && defined __GNUC__ && __GNUC__ >= 2]:
34841         Omit the special code that used __typeof__, since we worry that
34842         it could be more trouble than it's worth.  See:
34843         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00090.html
34844         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00095.html
34845
34846         * lib/free.c: New file.
34847
34848 2003-09-27  Oskar Liljeblad  <oskar@osk.mine.nu>
34849
34850         Trivial fixes to Makefile.am parts of module listings.
34851         * modules/strstr: Append strstr.h to lib_SOURCES.
34852         * modules/strcase: Likewise, for strcase.h.
34853
34854 2003-09-27  Karl Berry  <karl@gnu.org>
34855
34856         * config/mkinstalldirs: update from automake.
34857
34858 2003-09-26  Paul Eggert  <eggert@twinsun.com>
34859
34860         * lib/error.c (SIZE_MAX) [!defined SIZE_MAX]: Define.
34861         (error_tail): Do not loop, reallocating temporary buffer, since
34862         the output cannot contain more wide characters than the input
34863         contains bytes, the size must be big enough already.  This avoids
34864         one potential size overflow calculation.  Check for size overflow
34865         when calculating temporary buffer size.  Free temporary buffer
34866         when done, if it was allocated with malloc; this plugs a memory
34867         leak.  Remove casts from void * to pointers, that are no longer
34868         needed now that we're assuming C89 or better.
34869
34870         Merge error changes from glibc.
34871
34872         * lib/error.c, error.h: Update copyright notice header to match glibc.
34873         * lib/error.c [defined _LIBC]: Include <errno.h>, <bits/libc-lock.h>.
34874         (error, error_at_line) [defined _LIBC && defined __libc_ptf_call]:
34875         Disable cancellation while printing error.
34876         * lib/error.h: Prepend __ to parameter names.
34877
34878 2003-09-26  Jim Meyering  <jim@meyering.net>
34879
34880         * lib/error.c (error_tail): Move some declarations
34881         into inner scope where the local variables are used.
34882
34883 2003-09-26  Bruno Haible  <bruno@clisp.org>
34884
34885         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Add comments about the AIX
34886         stpncpy().
34887         Don't define stpncpy through config.h; it's now done through stpncpy.h.
34888
34889 2003-09-26  Bruno Haible  <bruno@clisp.org>
34890
34891         * lib/stpncpy.h (gnu_stpncpy): New declaration.
34892         (stpncpy): Define as alias for gnu_stpncpy.
34893         * lib/stpncpy.c [!_LIBC]: Define gnu_stpncpy, not stpncpy.
34894
34895 2003-09-25  Simon Josefsson  <jas@extundo.com>
34896
34897         * lib/xgetdomainname.h: New file.
34898         * lib/xgetdomainname.c: New file.
34899
34900 2003-09-25  Simon Josefsson  <jas@extundo.com>
34901             Bruno Haible  <bruno@clisp.org>
34902
34903         * modules/getdomainname: New file.
34904         * modules/xgetdomainname: New file.
34905         * MODULES.html.sh (func_all_modules): Add getdomainname,
34906         xgetdomainname.
34907
34908 2003-09-25  Simon Josefsson  <jas@extundo.com>
34909             Bruno Haible  <bruno@clisp.org>
34910
34911         * m4/getdomainname.m4: New file.
34912
34913 2003-09-25  Simon Josefsson  <jas@extundo.com>
34914             Bruno Haible  <bruno@clisp.org>
34915
34916         * lib/getdomainname.h: New file.
34917         * lib/getdomainname.c: New file.
34918
34919 2003-09-25  Karl Berry  <karl@gnu.org>
34920
34921         * lib/argp-fmtstream.c, argp-help.c: update from libc.
34922
34923 2003-09-25  Karl Berry  <karl@gnu.org>
34924
34925         * config/install-sh: update from automake.
34926
34927 2003-09-25  Bruno Haible  <bruno@clisp.org>
34928
34929         * modules/version-etc-2: New file, from modules/version-etc with
34930         modifications.
34931         * MODULES.html.sh (func_all_modules): Add version-etc-2.
34932
34933 2003-09-25  Bruno Haible  <bruno@clisp.org>
34934
34935         * lib/version-etc-2.h: New file, from version-etc.h with modifications.
34936         * lib/version-etc-2.c: New file, from version-etc.c with modifications.
34937
34938 2003-09-24  Simon Josefsson  <jas@extundo.com>
34939
34940         * modules/xgethostname: Add xgethostname.h.
34941
34942 2003-09-24  Paul Eggert  <eggert@twinsun.com>
34943
34944         * lib/linebuffer.c (freebuffer): Don't free the argument, just
34945         the buffer associated with the argument.  Bug reported by
34946         Simon Josefsson.
34947
34948 2003-09-24  Paul Eggert  <eggert@twinsun.com>
34949
34950         * README: Document assumptions that 'int' is at least 32 bits
34951         wide, that integer arithmetic is 2's complement without overflow,
34952         that there are no holes in integer values, that adding sizes of
34953         two nonoverlapping objects can't overflow, and that all-bits-zero
34954         yields scalar zero.  Fix spelling and capitalization typos.
34955
34956 2003-09-19  Karl Berry  <karl@gnu.org>
34957
34958         * lib/argp.h: update from libc.
34959
34960 2003-09-17  Paul Eggert  <eggert@twinsun.com>
34961
34962         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Call AC_BEFORE first,
34963         to avoid spurious warnings like "AC_RUN_IFELSE was called before
34964         gl_USE_SYSTEM_EXTENSIONS" from autoreconf.
34965
34966 2003-09-17  Paul Eggert  <eggert@twinsun.com>
34967
34968         * gnulib-tool: Use "test -h", not "test -L", for portability
34969         to Solaris 8 /bin/sh.  (This bug is fixed in Solaris 9.)
34970         (tags_regexp): Remove, since \| doesn't conform to POSIX.
34971         (sed_extract_prog): Issue s commands one-by-one, rather than
34972         using \| in one s command.
34973
34974 2003-09-16  Paul Eggert  <eggert@twinsun.com>
34975
34976         * lib/linebuffer.c (readlinebuffer): Return NULL immediately upon
34977         input error, instead of returning NULL the next time we are called
34978         (and therefore losing track of errno).
34979
34980 2003-09-16  Bruno Haible  <bruno@clisp.org>
34981
34982         * gnulib-tool (func_create_testdir): Warn about duplicated
34983         dependencies.
34984
34985 2003-09-15  Paul Eggert  <eggert@twinsun.com>
34986
34987         * modules/argmatch, modules/fatal, modules/obstack,
34988         modules/xalloc, modules/xgethostname: Sort dependencies by
34989         importance, not alphabetically.
34990
34991 2003-09-15  Paul Eggert  <eggert@twinsun.com>
34992
34993         * lib/getndelim2.c (getndelim2): Don't trash errno when a read
34994         fails, so that the caller gets the proper errno.
34995
34996         * lib/readutmp.c (read_utmp): Likewise.
34997         Check for fstat error.  Close stream and free storage
34998         when failing.
34999
35000 2003-09-14  Karl Berry  <karl@gnu.org>
35001
35002         * config/srclist.txt (strdup.c): disable for c89 changes.
35003
35004 2003-09-14  Jim Meyering  <jim@meyering.net>
35005
35006         * lib/getloadavg.c: Correct cpp indentation.
35007         * lib/strdup.c: Likewise.
35008         * lib/vasnprintf.c: Likewise.
35009
35010 2003-09-14  Bruno Haible  <bruno@clisp.org>
35011
35012         * modules/fwriteerror: New file.
35013         * MODULES.html.sh (func_all_modules): Add fwriteerror.
35014
35015 2003-09-14  Bruno Haible  <bruno@clisp.org>
35016
35017         * lib/fwriteerror.h: New file.
35018         * lib/fwriteerror.c: New file.
35019
35020 2003-09-12  Paul Eggert  <eggert@twinsun.com>
35021
35022         * modules/argmatch, modules/exitfail, modules/fatal, modules/obstack,
35023         modules/xgethostname, modules/xalloc: Depend on exit.
35024
35025 2003-09-12  Paul Eggert  <eggert@twinsun.com>
35026
35027         * m4/error.m4: Require AC_FUNC_STRERROR_R rather than invoking it.
35028
35029         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Require AC_AIX
35030         and AC_MINIX, too, so that their extensions are available.
35031
35032         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Remove.  All uses removed.
35033         This macro has been superseded by gl_BACKUPFILE.
35034
35035         More patches to assume C89 or better.
35036
35037         * m4/error.m4 (gl_ERROR): Don't check for vprintf.
35038
35039         * m4/check-decl.m4 (jm_CHECK_DECLS): Include <string.h>, <stdlib.h>
35040         unconditionally.
35041         * m4/closeout.m4 (gl_CLOSEOUT): Don't check for stdlib.h.
35042         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER):
35043         Include <string.h>, <stdlib.h> unconditionally.
35044         * m4/lstat.m4 (gl_PREREQ_LSTAT): Don't check for stdlib.h, free.
35045         * m4/readdir.m4 (GL_FUNC_READDIR): Don't check for string.h.
35046         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Don't check for standard C
35047         headers or for string.h.
35048         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Don't check for stdlib.h
35049         or strtoul.
35050
35051         * m4/mkstemp.m4 (jm_PREREQ_TEMPNAME): Do not require standard C
35052         headers.
35053         * m4/strdup.m4 (gl_PREREQ_STRDUP): Likewise.
35054         * m4/userspec.m4 (gl_USERSPEC): Likewise.
35055         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Likewise.
35056         * m4/xstrtod.m4 (gl_XSTRTOD): Likewise.
35057         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
35058         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't check for limits.h,
35059         memcpy, memset.
35060         (jm_FUNC_GNU_STRFTIME): Don't require standard C headers.
35061         * m4/strtod.m4 (gl_FUNC_STRTOD): Do not check for float.h.
35062         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Do not check for stdlib.h,
35063         strtol.
35064         * m4/strtol.m4 (gl_FUNC_STRTOL): Do not check for limits.h.
35065         * m4/userspec.m4 (gl_USERSPEC): Do not check for string.h.
35066         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Do not check for string.h, strtol,
35067         strtoul.
35068
35069 2003-09-12  Paul Eggert  <eggert@twinsun.com>
35070
35071         * lib/argmatch.c, fatal.c, xgethostname.c, xmalloc.c: Include exit.h.
35072         * lib/obstack.c [!defined _LIBC]: Likewise.
35073         * lib/argmatch.c (EXIT_FAILURE): Remove; now done by exit.h
35074         * lib/exitfail.c, fatal.c, xgethostname.c, xmalloc.c: Likewise.
35075         * lib/exitfail.c: Don't include stdlib.h; no longer needed.
35076
35077         More changes to assume C89 or better.
35078
35079         * lib/error.c (error_tail): Assume vprintf.
35080
35081         * lib/argmatch.c (getenv): Remove decl.
35082         * lib/progreloc.c (get_full_program_name): Define via prototype.
35083         * lib/setenv.c (clearenv): Likewise.
35084         * lib/stpncpy.c: Do not include <string.h> or <sys/types.h>; not
35085         needed.
35086         * lib/strdup.c: Include <stdlib.h>, <string.h> unconditionally.
35087         (malloc, memcpy): Remove decls.
35088         * lib/strftime.c (HAVE_LIMITS_H, STDC_HEADERS) [defined _LIBC]: Remove.
35089         (HAVE_MEMCPY) [defined emacs && !defined HAVE_BCOPY]: Remove.
35090         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
35091         (memcpy): Remove macro.
35092         (MEMCPY) [!defined COMPILE_WIDE]: Define to memcpy unconditionally.
35093         (__P): Remove.  All uses removed.
35094         (PTR): Remove.  All uses changed to void *.
35095         (CHAR_BIT, NULL): Remove.
35096         (spaces, zeros, memset_space, memset_zero)
35097         [!defined memset && !defined HAVE_MEMSET && !defined _LIBC]:
35098         Remove.
35099         (LOCALE_PARAM, LOCALE_PARAM_DECL): Remove.
35100         (memcpy_lowcase, memcpy_uppcase, tm_diff, iso_week_days):
35101         Define with prototype.
35102         Remove now-unnecessary prototype decl.
35103         (extra_args_spec): Assume ANSI C.  All uses changed.
35104         (extra_args_spec_iso): Remove.
35105         (my_strftime, emacs_strftimeu): Define via prototype.
35106         * lib/strtod.c: Include <float.h>, <stdlib.h>, <string.h>
35107         unconditionally.
35108         (DBL_MAX, DBL_MIN, HUGE_VAL, NULL): Remove decls.
35109         * lib/strtoimax.c: Include <stdlib.h> unconditionally.
35110         (strtoul, strtol): Remove decls.
35111         * lib/strtol.c (STDC_HEADERS, HAVE_LIMITS_H, NULL, ULONG_MAX,
35112         LONG_MAX): Remove.
35113         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
35114         (LOCALE_PARAM_DECL): Remove.  All uses changed to LOCALE_PARAM_PROTO.
35115         (LOCALE_PARAM_PROTO): New macro.
35116         (INTERNAL, INTERNAL1, WEAKNAME): Assume ANSI C, not K&R.
35117         (INTERNAL (strtol), strtol): Define with a prototype.
35118         (PARAMS): Remove.  All uses removed.
35119         * lib/tempname.c: Include <string.h> unconditionally.
35120         * lib/userspec.c: Include <stdlib.h>, <string.h> unconditionally.
35121         * lib/xgethostname.c (main): Define with a prototype.
35122         * lib/xmalloc.c: Include "xalloc.h" first, to check interface.
35123         Include <stdlib.h> unconditionally.
35124         (calloc, malloc, realloc, free): Remove decls.
35125         * lib/xstrtod.c: Include "xstrtod.h" first, to check interface.
35126         Include <stdlib.h> unconditionally.  Sort include file names.
35127         (strtod): Remove.
35128         (xstrtod): Define with a prototype.
35129         * lib/xstrtol.c: Include <stdlib.h>, <string.h> unconditionally.
35130         (strtol, strtoul): Remove decls.
35131
35132 2003-09-11  Paul Eggert  <eggert@twinsun.com>
35133
35134         More patches to assume C89 or better.
35135         * m4/strndup.m4 (gl_PREREQ_STRNDUP): Remove STDC_HEADERS check.
35136         * m4/strnlen.m4 (gl_PREREQ_STRNLEN): Don't check for memory.h,
35137         string.h, memchr, STDC_HEADERS.
35138
35139 2003-09-11  Paul Eggert  <eggert@twinsun.com>
35140
35141         * lib/strndup.c: Don't include <stdio.h>, <sys/types.h>.
35142         Include <stdlib.h>, <string.h> unconditionally.
35143         Remove now-unnecessary cast to char *.
35144         * lib/strnlen.c: Include <string.h> unconditionally.
35145         * lib/yesno.c (yesno): Define with a prototype.
35146
35147 2003-09-11  Bruno Haible  <bruno@clisp.org>
35148
35149         * config/srclist.txt (setenv.c, unsetenv.c): Disable for the moment.
35150
35151 2003-09-10  Jim Meyering  <jim@meyering.net>
35152
35153         * lib/error.c: Correct indentation of cpp directives.
35154
35155 2003-09-10  Bruno Haible  <bruno@clisp.org>
35156
35157         * m4/strcspn.m4 (gl_PREREQ_STRCSPN): Remove <string.h> check.
35158         * m4/strpbrk.m4 (gl_PREREQ_STRPBRK): Remove <string.h> check.
35159         * m4/strstr.m4 (gl_PREREQ_STRSTR): Remove <string.h> check.
35160         * m4/unicodeio.m4 (gl_UNICODEIO): Remove <string.h> check.
35161         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove
35162         <stdlib.h> and <string.h> checks.
35163         * m4/xreadlink.m4 (gl_XREADLINK): Remove <stdlib.h> check.
35164         * m4/yesno.m4 (gl_YESNO): Remove <stdlib.h> check.
35165
35166 2003-09-10  Bruno Haible  <bruno@clisp.org>
35167
35168         * lib/strcspn.c: Include <string.h> unconditionally.
35169         * lib/strpbrk.c: Include <string.h> unconditionally.
35170         * lib/strstr.c: Include <string.h> unconditionally.
35171         * lib/unicodeio.c: Include <string.h> unconditionally.
35172         * lib/setenv.c: Include <stdlib.h> and <string.h> unconditionally.
35173         * lib/unsetenv.c: Likewise.
35174         * lib/xreadlink.c: Include <stdlib.h> unconditionally.
35175         * lib/yesno.c: Include <stdlib.h> unconditionally.
35176         (rpmatch): Add prototype.
35177
35178 2003-09-09  Paul Eggert  <eggert@twinsun.com>
35179
35180         More patches to assume C89 or better.
35181         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Don't check for stdlib.h.
35182         * m4/getopt.m4 (gl_GETOPT): Don't check for string.h.
35183         * m4/getugroups.m4 (gl_GETUGROUPS): Do not check for standard C headers
35184         or for string.h.
35185         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Do not check for
35186         stdlib.h.
35187         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): Do not require standard
35188         C headers.
35189         * m4/hard-locale.m4 (gl_HARD_LOCALE): Do not check for stdlib.h,
35190         string.h.
35191         * m4/hash.m4 (gl_HASH): Do not check for stdlib.h, malloc, free.
35192         * m4/human.m4 (gl_HUMAN): Do not check for stdlib.h, string.h, getenv.
35193         * m4/idcache.m4 (gl_IDCACHE): Do not check for standard C headers,
35194         or for string.h.
35195         * m4/long-options.m4 (gl_LONG_OPTIONS): Do not check for stdlib.h.
35196         * m4/makepath.m4 (gl_MAKEPATH): Do not check for string.h or standard
35197         C headers.
35198         * m4/md5.m4 (gl_MD5): Don't check for limits.h, standard C headers,
35199         memcpy.
35200         * m4/sha.m4 (gl_SHA): Don't check for standard Cheaders, memcpy.
35201         * m4/memchr.m4 (jm_PREREQ_MEMCHR): Don't check for limits.h, stdlib.h.
35202         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): Don't check for string.h.
35203         * m4/memcoll.m4 (gl_MEMCOLL): Likewise.
35204         * m4/memrchr.c (gl_PREREQ_MEMRCHR): Don't check for limits.h.
35205         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): Don't check for stdlib.h,
35206         string.h, free.
35207         * m4/mktime.m4 (gl_PREREQ_MKTIME): Don't check for standard C headers.
35208         * m4/modechange.m4 (gl_MODECHANGE): Don't check for standard C headers.
35209         * m4/mountlist.m4 (gl_PREREQ_MOUNTLIST_EXTRA): Don't check for standard
35210         C headers, or for string.h.
35211         * m4/obstack.m4 (gl_OBSTACK): Don't check for stddefe.h, string.h.
35212         (gl_PREREQ_OBSTACK): Don't check for stdlib.h.
35213         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't check for standard C
35214         headers, memory.h, stdlib.h, string.h, strings.h.
35215         * m4/posixtm.m4 (gl_POSIXTM): Don't check for stdlib.h, string.h.
35216         * m4/posixver.m4 (gl_POSIXVER): Don't check for getenv.
35217         * m4/putenv.m4 (gl_PREREQ_PUTENV): Don't check for string.h, memcpy,
35218         strchr.
35219         * m4/readtokens.m4 (gl_READTOKENS): Don't check for standard C
35220         headers, memory.h, string.h.
35221         * m4/regex.m4 (jm_PREREQ_REGEX): Do not check for limits.h, string.h.
35222         * m4/rename.m4 (gl_PREREQ_RENAME): Do not check for stdlib.h, string.h,
35223         free.
35224         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Don't check for standard C
35225         headers.
35226         * m4/same.m4 (gl_SAME): Don't check for stdlib.h, string.h, free.
35227         * m4/save-cwd.m4 (gl_SAVE_CWD): Don't check for standard C headers.
35228         * m4/savedir.m4 (gl_SAVEDIR): Don't check for standard C headers.
35229         * m4/strchrnul.m4 (gl_PREREQ_STRCHRNUL): Don't check for string.h.
35230         * m4/xgetcwd.m4 (gl_XGETCWD): Don't check for stdlib.h.
35231
35232 2003-09-09  Paul Eggert  <eggert@twinsun.com>
35233
35234         More K&R removal.
35235
35236         * lib/acosl.c (main): Use a prototype.
35237         * lib/asinl.c, cosl.c, expl.c, frexpl.c, ldexpl.c, sinl.c,
35238         tanl.c: Likewise.
35239
35240         * lib/getloadavg.c (getloadavg, main): Define via prototypes.
35241
35242         * lib/getopt.h (struct option.name): Assume C89, and use 'const'.
35243         (getopt, etopt_long, getopt_long_only, _getopt_internal)
35244         [defined __GNU_LIBRARY__]: Assume C89, so we can always declare
35245         with a prototype.
35246         * lib/getopt.c (const): Remove macro.
35247         Include <string.h> unconditionally.
35248         (my_index): Remove; all uses changed to strchr.
35249         (strlen): Remove decl.
35250         (exchange): Remove forward decl; no longer needed.
35251         (exchange, _getopt_initialize, _getopt_internal, getopt, main):
35252         Define with prototype.
35253         * lib/getopt1.c (const): Remove macro.
35254         (getopt_long, getopt_long_only, main): Define with prototype.
35255
35256         * lib/getugroups.c: Include <string.h> unconditionally.
35257
35258         * lib/getusershell.c: Include <stdlib.h> unconditionally.
35259         (getusershell, setusershell, endusershell, readname, main):
35260         Define with prototypes.
35261
35262         * lib/group-member.c: Include group-member.h first.
35263         Include <stdlib.h> unconditionally.
35264
35265         * lib/hard-locale.c: Include hard-locale.h first.
35266         Include <stdlib.h>, <string.h> unconditionally.
35267
35268         * lib/hash.c (free, malloc): Remove decls.
35269         Include <stdlib.h> unconditionally.
35270
35271         * lib/human.c: Include <stdlib.h>, <string.h> unconditionally.
35272         (getenv): Do not declare.
35273
35274         * lib/idcache.c: Include <string.h> unconditionally.
35275
35276         * lib/long-options.c: Include long-options.h first, to test interface.
35277         Include <stdlib.h> unconditionally.
35278
35279         * lib/makepath.c: Include makepath.h first, to test interface.
35280         Include <stdlib.h> and <string.h> unconditionally.
35281
35282         * lib/linebuffer.c: Include <stdlib.h>.
35283         (free): Remove decl.
35284
35285         * lib/malloc.c: Include <stdlib.h>, for malloc; don't bother with
35286         stddef.h. rpl_malloc returns void *, not char *.
35287         * lib/realloc.c (rpl_realloc): Likewise.  Also, define with a
35288         prototype.
35289
35290         * lib/md5.h: Include <limits.h> unconditionally.
35291         (UINT_MAX_32_BITS): Don't worry about non-__STDC__ case.
35292         (__P): Remove; all uses removed.
35293         * lib/md5.c: Include "md5.h" first.
35294         (md5_init_ctx, md5_read_ctx, md5_finish_ctx, md5_stream,
35295         md5_buffer, md5_process_bytes, md5_process_block):
35296         Define with prototypes.
35297         * lib/sha.h (__P): Remove all uses.  (It wasn't defined??)
35298         * lib/sha.c: Include "sha.h" first.
35299         Include <stdlib.h>, <string.h> unconditionally.
35300
35301         * lib/memchr.c (__ptr_t): Remove; all uses changed to void *.
35302         * lib/memcmp.c (__ptr_t): Likewise.
35303         * lib/memrchr.c (__ptr_t): Likewise.
35304         * lib/memchr.c, memcmp.c, memcoll.c, memrchr.c:
35305         Include <string.h> unconditionally.
35306         * lib/memchr.c, memrchr.c: Include <limits.h> unconditionally.
35307         * lib/memchr.c: Include <stdlib.h> unconditionally.
35308         * lib/memchr.c (LONG_MAX): Remove.
35309         * lib/memrchr.c (LONG_MAX): Likewise.
35310         * lib/memchr.c (__memchr): Define via a prototype.
35311         * lib/memrchr.c (__memrchr): Likewise.
35312         * lib/memcmp.c (__P): Remove, and remove all uses.
35313         (memcmp_bytes, memcmp_common_alignment, memcmp_not_common_alignment):
35314         Remove forward decls; no longer needed.
35315         * lib/memcpy.c, memmove.c, memset.c: Include <stddef.h>.
35316         Use types required by C89 in prototype.
35317
35318         * lib/mkdir.c: Include <stdlib.h>, <string.h> unconditionally.
35319         * lib/savedir.c: Likewise.
35320         * lib/mkdir.c (free): Remove decl.
35321         * lib/rmdir.c (rmdir): Define with a prototype.
35322         * lib/savedir.c: Include savedir.h first, to test interface.
35323
35324         * lib/mktime.c (STDC_HEADERS): Remove.
35325         Include <stdlib.h>, <string.h> unconditionally.
35326
35327         * lib/modechange.c: Include <stdlib.h> unconditionally.
35328         (malloc): Remove decl.
35329
35330         * lib/mountlist.c: Include <stdlib.h>, <string.h> unconditionally.
35331         (free): Remove decl.
35332
35333         * lib/obstack.h (PTR_INT_TYPE) [!defined __PTRDIFF_TYPE__]:
35334         Define to ptrdiff_t, without bothering to check HAVE_STDDEF_H.
35335         (This type really should be intptr_t, but that's a C99ism.)
35336         (_obstack_memcpy): Remove: all uses changed to memcpy.
35337         Include <string.h> unconditionally.
35338         (struct obstack): Assume __STDC__ for types of members
35339         chunkfun, freefun, extra_arg.
35340         (_obstack_newchunk, _obstack_free, _obstack_begin, _obstack_begin_1,
35341         _obstack_memory_used, obstack_alloc_failed_handler, obstack_init,
35342         obstack_begin, obstack_specify_allocation,
35343         obstack_specify_allocation_with_arg, obstack_chunkfun,
35344         obstack_freefun, obstack_free) [! (defined __STDC__ && __STDC__)]:
35345         Remove unprototyped decls and the macros that use them.
35346         * lib/obstack.c (POINTER): Remove.  All uses changed to void *.
35347         (obstack_alloc_failed_handler, CALL_CHUNKFUN, CALL_FREEFUN,
35348         _obstack_begin, _obstack_begin_1, _obstack_allocated_p)
35349         (defined __STDC__ && __STDC__)]:
35350         Remove nonprototyped code.
35351         Include <stdlib.h> unconditionally.
35352         (_obstack_begin, _obstack_begin_1, _obstack_newchunk,
35353         _obstack_allocated_p, _obstack_free, obstack_free,
35354         _obstack_memory_used, print_and_abort):
35355         Define using prototypes.
35356         (obstack_1grow, obstack_1grow_fast, obstack_alloc, obstack_base,
35357         obstack_blank, obstack_blank_fast, obstack_copy, obstack_copy0,
35358         obstack_finish, obstack_grow, obstack_grow0, obstack_make_room,
35359         obstack_next_free, obstack_object_size, obstack_room) [0]:
35360         Remove unused, unprototyped code.
35361
35362         * lib/path-concat.c: Include <stdlib.h>, <string.h> unconditionally.
35363
35364         * lib/physmem.c (physmem_total, physmem_available, main): Define
35365         with prototypes.
35366
35367         * lib/posixtm.c: Include <stdlib.h>, <string.h> unconditionally.
35368         (main): Define with a prototype.
35369
35370         * lib/posixver.c (getenv): Remove decl.
35371
35372         * lib/putenv.c (malloc): Returns void *, not char *.
35373         Include <string.h> unconditionally.
35374         (strchr, memcpy, NULL): Do not define.
35375
35376         * lib/readtokens.c: Include readtokens.h first, to test interface.
35377         Include <stdlib.h>, <string.h> unconditionally.
35378         (init_tokenbuffer): Define with a prototype.
35379
35380         * lib/regex.c (PARAMS): Remove.  All uses removed.
35381         All uses of _RE_ARGS removed, too.
35382         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
35383         unconditionally.
35384         (bzero): Assume memset exists.
35385         (memcmp, memcpy, NULL): Remove.
35386         (SIGN_EXTEND_CHAR): Remove; all uses replaced by casts to signed
35387         char, or assignments to local vars of type signed char.
35388         (init_syntax_once, PREFIX(extract_number_and_incr),
35389         PREFIX(print_partial_compiled_pattern),
35390         PREFIX(print_compiled_pattern), PREFIX(print_double_string),
35391         convert_mbs_to_wcs, print_fastmap, re_set_syntax,
35392         PREFIX(regex_grow_registers), PREFIX(regex_compile),
35393         PREFIX(store_op1), PREFIX(store_op2), PREFIX(insert_op1),
35394         PREFIX(insert_op2), PREFIX(at_begline_loc_p),
35395         PREFIX(at_endline_loc_p), group_in_compile_stack, insert_space,
35396         wcs_compile_range, byte_compile_range, truncate_wchar,
35397         PREFIX(re_compile_fastmap), re_compile_fastmap, re_set_registers,
35398         re_search, re_search_2, PREFIX(re_search_2), re_match, re_match_2,
35399         count_mbs_length, wcs_re_match_2_internal,
35400         byte_re_match_2_internal, PREFIX(group_match_null_string_p),
35401         PREFIX(alt_match_null_string_p),
35402         PREFIX(common_op_match_null_string_p), PREFIX(bcmp_translate),
35403         re_compile_pattern, re_comp, re_exec, regcomp, regexec, regerror,
35404         regfree, PREFIX(extract_number)): Define with prototype.  Remove
35405         now-unnecessary declaration, if any.
35406         (byte_compile_range, PREFIX(regex_compile), re_comp, re_exec,
35407         regcomp, regexec):
35408         Remove now-unnecessary casts among pointer types.
35409         * lib/regex.h (_RE_ARGS): Remove.  All uses removed.
35410
35411         * lib/rename.c: Include <stdlib.h>, <string.h> unconditionally.
35412         (free): Remove decl.
35413
35414         * lib/rpmatch.c: Include <stdlib.h> unconditionally.
35415
35416         * lib/same.c: Include <stdlib.h>, <string.h> unconditionally.
35417         (free): Remove decl.
35418
35419         * lib/save-cwd.c: Include <stdlib.h> unconditionally.
35420         * lib/xgetcwd.c: Likewise.
35421
35422         * lib/stat.c: Include <stdlib.h>, <string.h> unconditionally.
35423         (free): Remove decl.
35424
35425         * lib/strchrnul.c (strchrnul): Define with a prototype.
35426         Fix bug: c_in was not converted to char before searching.
35427
35428         The following changes are not K&R related:
35429
35430         * lib/group-member.h: Include <sys/types.h>, so that this file is
35431         self-contained.
35432         * lib/makepath.h: Likewise.
35433
35434         * lib/getusershell.c (readname, default_index, line_size, readname):
35435         Use size_t, not int, for sizes.
35436         (readname): If the size overflows, report an error instead of
35437         looping forever.
35438
35439 2003-09-09  Paul Eggert  <eggert@twinsun.com>
35440
35441         * config/srclist.txt: Do not get getopt.h, getopt1.c, or regex.h from
35442         libc.
35443
35444 2003-09-09  Paul Eggert  <eggert@twinsun.com>
35445
35446         * README: New section: portability guidelines.
35447
35448 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
35449
35450         * m4/getndelim2.m4 (gl_PREREQ_GETNDELIM2): Assume stdlib.h per the
35451         C89 spec.
35452
35453 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
35454
35455         * lib/getndelim2.c: Assume stdlib.h per the C89 spec.
35456
35457 2003-09-08  Paul Eggert  <eggert@twinsun.com>
35458
35459         Assume C89 or better; remove K&R cruft.
35460         A few of these changes were first proposed by Derek Robert Price
35461         in <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00105.html>.
35462
35463         * lib/addext.c: Include <string.h> unconditionally.
35464         * lib/backupfile.c: Include <string.h>, <stdlib.h> unconditionally.
35465         Don't declare getenv or malloc.
35466
35467         * lib/alloca.c: Include <string.h>, <stdlib.h> unconditionally.
35468         (POINTER_TYPE, pointer): Remove; all uses changed to void *.
35469         (NULL): Remove.
35470         (find_stack_direction, alloca): Use prototypes.
35471
35472         * lib/atexit.c (atexit): Define using a prototype.
35473
35474         * lib/basename.c, dirname.c, stripslash.c:
35475         Include <string.h> unconditionally.
35476
35477         * lib/bcopy.c: Include <stddef.h>.
35478         (bcopy): Define with prototype, using 'const' and 'void' and 'size_t'.
35479
35480         * lib/canon-host.c: Include <stdlib.h>, <string.h> unconditionally.
35481
35482         * lib/error.h (error, error_at_line, error_print_progname)
35483         [! (defined (__STDC__) && __STDC__)]: Remove decls.
35484         * lib/error.c: Include error.h first, to check interface.
35485         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
35486         (VA_START): Remove; all uses changeed to va_start.
35487         (exit, strerror): Remove decls.
35488         (error_print_progname): Prototype uncondionally.
35489         Don't include <errno.h>; no longer needed.
35490         (private_strerror): Remove.
35491         (error_tail): Always define.
35492         (error, error_at_line): Assume C89 or better; always use prototypes.
35493         * lib/fatal.c: Include "fatal.h" first, to test interface.
35494         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
35495         (VA_START): Remove; all uses changed to va_start.
35496         [! (HAVE_VPRINTF || HAVE_DOPRNT || _LIBC)]: Remove support for
35497         this case.
35498         (exit): Remove decl.
35499         (fatal): Prototype unconditionally.  Assume va_start works.
35500         Abort at end, to pacify gcc.
35501
35502         * lib/euidaccess.c (main): Define with a prototype.
35503
35504         * lib/exclude.c: Include <stdlib.h>, <string.h> unconditionally.
35505
35506         * lib/exitfail.c: Include <stdlib.h> unconditionally.
35507
35508         * lib/fnmatch_.h (__P): Remove.  All uses changed to assume
35509         prototypes.
35510         * lib/fnmatch.c: Include fnmatch.h first, to test interface.
35511         Include <string.h>, <stddef.h>, <stdlib.h> unconditionally.
35512         (getenv): Remove decl.
35513         (fnmatch): Define using a prototype.
35514         * lib/fnmatch_loop.c (FCT): Remove forward decl; no longer needed.
35515         (FCT): Define using a prototype.
35516
35517         * lib/getdate.y: Include <stdlib.h>, <string.h> unconditionally.
35518
35519         * lib/gethostname.c: Include <stddef.h>.
35520         (gethostname): Define with prototype.  Length is size_t, not int.
35521
35522 2003-09-08  Paul Eggert  <eggert@twinsun.com>
35523
35524         Assume C89 or better; remove K&R cruft.
35525         * m4/alloca.m4 (gl_PREREQ_ALLOCA): Don't check for stdlib.h, string.h.
35526         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for stdlib.h,
35527         string.h, getenv, malloc.
35528         * m4/dirname.m4 (gl_DIRNAME): Don't check for string.h or C standard
35529         headers.
35530         * m4/canon-host.m4 (gl_CANON_HOST): Don't check for string.h, stdlib.h.
35531         * m4/error.m4 (jm_PREREQ_ERROR): Do not require STDC headers, and
35532         do not check for strerror.
35533         * m4/exclude.m4: Do not check for stdlib.h, string.h, strings.h.
35534         * m4/exitfail.m4 (gl_EXITFAIL): Do not check for stdlib.h.
35535         * m4/fatal.m4 (gl_FATAL): Do not require STDC headers, and
35536         do not check for doprnt or vprintf.
35537         * m4/fnmatch.m4 (gl_PREREQ_FNMATCH_EXTRA): Remove.  All uses removed.
35538         * m4/getdate.m4 (gl_GETDATE): Don't check for stdlib.h or string.h.
35539
35540 2003-09-08  Paul Eggert  <eggert@twinsun.com>
35541
35542         * lib/getversion.c: Remove; was migrated to backupfile.c in 1997.
35543         getversion.c should have been removed then, but was accidentally
35544         preserved.
35545
35546         * lib/utime.c [!HAVE_UTIMES_NULL]: Include <sys/stat.h>, <fcntl.h>.
35547         (utime_null): Fix typo: 'st' was sometimes called 'sb'.
35548
35549 2003-09-08  Karl Berry  <karl@gnu.org>
35550
35551         * config/config.sub, config.guess, srclistvars.sh: update from savannah
35552                 config, forget about prep.
35553
35554         * config/depcomp, missing: update from automake.
35555
35556 2003-09-07  Paul Eggert  <eggert@twinsun.com>
35557
35558         * modules/time_r: Depend on 'restrict'.  Fix from Simon Josefsson in
35559         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
35560
35561 2003-09-07  Paul Eggert  <eggert@twinsun.com>
35562
35563         * lib/time_r.c (gmtime_r, localtime_r): Fix silly typo: missing arg to
35564         copy_tm_result.  Bug reported by Simon Josefsson in
35565         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
35566
35567 2003-09-06  Paul Eggert  <eggert@twinsun.com>
35568
35569         * m4/time_r.m4: New file.
35570         * m4/mktime.m4 (gl_PREREQ_MKTIME): Remove check for limits.h.
35571         * m4/timegm.m4 (gl_FUNC_TIMEGM): Assume that timegm is buggy if mktime
35572         is. Check for timegm declaration.
35573         (gl_PREREQ_TIMEGM): Require gl_FUNC_MKTIME.
35574         Do not check for gmtime_r.
35575         Replace mktime if __mktime_internal does not exist and if mktime
35576         hasn't been replaced already.
35577
35578 2003-09-06  Paul Eggert  <eggert@twinsun.com>
35579
35580         * lib/time_r.c, lib/time_r.h: New files.
35581
35582         * lib/mktime.c (my_mktime_localtime_r): Remove; all uses changed to
35583         __localtime_r.
35584         (__localtime_r) [!defined _LIBC]: New macro.  Include <time_r.h>.
35585         (__mktime_internal) [!defined _LIBC]: Now extern, not static.
35586
35587         * lib/strftime.c (my_strftime_gmtime_r): Remove; all uses changed to
35588         __gmtime_r.
35589         (my_strftime_localtime_r): Remove; all uses changed to __localtime_r.
35590         (__gtime_r, __localtime_r) [!HAVE_TM_GMTOFF]: New macros.
35591         Include <time_r.h>.
35592
35593         * lib/timegm.c: Switch to glibc implementation, with the following
35594         changes:
35595         [defined HAVE_CONFIG_H]: Include <config.h>.
35596         [!defined _LIBC]: Include "timegm.h" rather than <time.h>.
35597         (__mktime_internal) [!defined _LIBC]: New decl.
35598         (__gmtime_r) [!defined _LIBC]: New macro and function.
35599         (timegm): Use a prototype, since gnulib assumes C89.
35600         Do not bother declaring tmp to be const, as it's not really usefu.
35601         * lib/timegm.h: Hoist "#include <time.h>" out of #ifdef.
35602         (timegm): Declare only if HAVE_DECL_TIMEGM.
35603
35604 2003-09-06  Paul Eggert  <eggert@twinsun.com>
35605
35606         * MODULES.html.sh (func_all_modules): Add time_r.
35607         * modules/time_r: New file.
35608         * modules/mktime, modules/strftime, modules/timegm: Depend on time_r.
35609         * modules/timegm: Depend on mktime.  Change maintainer to "all, glibc".
35610
35611 2003-09-03  Paul Eggert  <eggert@twinsun.com>
35612
35613         * lib/human.c (human_readable): Fix bug that rounded 10501 to 10k.
35614         Bug reported by Lute Kamstra in
35615         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00003.html>.
35616
35617         * lib/getdate.y (relative_time_table): Use tDAY_UNIT for "tomorrow",
35618         "yesterday", "today", and "now" rather than tMINUTE_UNIT.  Of
35619         course with correspondingly smaller numbers for tomorrow and
35620         yesterday.  From Tadayoshi Funaba.  Originally installed into
35621         sh-utils on 1999-08-07, but the patch got lost (I guess during the
35622         coreutils merge?).
35623
35624 2003-08-31  Simon Josefsson  <jas@extundo.com>
35625
35626         * modules/timegm: New file.
35627         * MODULES.html.sh (func_all_modules): Add timegm.
35628
35629 2003-08-31  Simon Josefsson  <jas@extundo.com>
35630
35631         * m4/timegm.m4: New file.
35632
35633 2003-08-31  Simon Josefsson  <jas@extundo.com>
35634
35635         * lib/timegm.h: New file.
35636         * lib/timegm.c: New file.  Based on
35637         wget-1.8.2/src/http.c:mktime_from_utc.
35638
35639 2003-08-31  Karl Berry  <karl@gnu.org>
35640
35641         * lib/argp.h: update from libc.
35642
35643 2003-08-28  Bruno Haible  <bruno@clisp.org>
35644
35645         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Remove AC_DEFINE of fnmatch here.
35646         This avoids havoc on compilers for which '#define fnmatch rpl_fnmatch'
35647         followed by '#define fnmatch fnmatch_posix' gives an error.
35648
35649 2003-08-28  Bruno Haible  <bruno@clisp.org>
35650
35651         * lib/binary-io.h: Undefine O_BINARY before defining it. This avoids a
35652         warning on QNX, which defines O_BINARY to 000000.
35653
35654 2003-08-27  Jim Meyering  <jim@meyering.net>
35655
35656         * m4/mkstemp.m4: Require that the system mkstemp be able to create
35657         70 temporary files, not just 30.  Tru64 V4.0F's mkstemp function
35658         would fail after 32.  Reported by Danny Levinson.  Details here:
35659         http://mail.gnu.org/archive/html/bug-coreutils/2003-08/msg00124.html
35660
35661 2003-08-24  Bruno Haible  <bruno@clisp.org>
35662
35663         * lib/binary-io.h: Include <stdio.h>, to avoid a compilation error when
35664         MSVC7 <stdio.h> is included later.
35665
35666 2003-08-22  Simon Josefsson  <jas@extundo.com>
35667
35668         * modules/strndup (Makefile.am): Add strndup.h to lib_SOURCES.
35669
35670 2003-08-20  Karl Berry  <karl@gnu.org>
35671
35672         * m4/lib-ld.m4: serial 1003 from gettext, no changes besides serial.
35673
35674 2003-08-20  Bruno Haible  <bruno@clisp.org>
35675
35676         * modules/progname: New file.
35677         * MODULES.html.sh (func_all_modules): Add progname.
35678
35679 2003-08-20  Bruno Haible  <bruno@clisp.org>
35680
35681         * lib/progname.h: New file, from GNU gettext.
35682         * lib/progname.c: New file, from GNU gettext.
35683         * lib/progreloc.c: New file, from GNU gettext.
35684
35685 2003-08-19  Jim Meyering  <jim@meyering.net>
35686
35687         * m4/lib-ld.m4: Revert yesterday's change, per Bruno's request here:
35688         http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00155.html
35689
35690 2003-08-19  Bruno Haible  <bruno@clisp.org>
35691
35692         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Don't check for <string.h> any
35693         more.
35694
35695 2003-08-19  Bruno Haible  <bruno@clisp.org>
35696
35697         * lib/xstrdup.c: Assume <string.h> exists.
35698
35699 2003-08-18  Paul Eggert  <eggert@twinsun.com>
35700
35701         * modules/stdbool: Add BUILT_SOURCES.  Prefer $@ to target name
35702         in makefile rules.
35703
35704 2003-08-18  Jim Meyering  <jim@meyering.net>
35705
35706         * m4/getloadavg.m4: Use [\t ], not [ \t] (where \t is a literal TAB).
35707         * m4/lib-ld.m4: Likewise.
35708
35709 2003-08-18  Jim Meyering  <jim@meyering.net>
35710
35711         * lib/setenv.h: Indent nested cpp directive.
35712         * lib/vasnprintf.c: Remove trailing blanks.
35713
35714 2003-08-17  Simon Josefsson  <jas@extundo.com>
35715
35716         * modules/xstrndup: New file.
35717         * MODULES.html.sh (func_all_modules): Add xstrndup.
35718
35719 2003-08-17  Simon Josefsson  <jas@extundo.com>
35720
35721         * modules/argp: Fix autoconf macro name. Add more dependencies.
35722
35723 2003-08-17  Simon Josefsson  <jas@extundo.com>
35724
35725         * m4/xstrndup.m4: New file.
35726
35727 2003-08-17  Simon Josefsson  <jas@extundo.com>
35728
35729         * m4/argp.m4: New file.
35730
35731 2003-08-17  Simon Josefsson  <jas@extundo.com>
35732             Bruno Haible  <bruno@clisp.org>
35733
35734         * lib/xstrndup.h: New file.
35735         * lib/xstrndup.c: New file.
35736
35737 2003-08-17  Bruno Haible  <bruno@clisp.org>
35738
35739         * modules/strndup (Files, Include): Add lib/strndup.h.
35740
35741 2003-08-17  Bruno Haible  <bruno@clisp.org>
35742
35743         * modules/euidaccess (Files): Add lib/euidaccess.h.
35744
35745 2003-08-17  Bruno Haible  <bruno@clisp.org>
35746
35747         * lib/strndup.h: New file.
35748
35749 2003-08-17  Bruno Haible  <bruno@clisp.org>
35750
35751         * gnulib-tool (func_create_testdir): Handle gl_USE_SYSTEM_EXTENSIONS
35752         like AC_GNU_SOURCE.
35753         * modules/extensions (configure.ac): Comment out the invocation of
35754         gl_USE_SYSTEM_EXTENSIONS.
35755
35756 2003-08-16  Paul Eggert  <eggert@twinsun.com>
35757
35758         Merges from coreutils, etc.
35759         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Insert ':' to prevent a syntax
35760         error in gl_FUNC_MATCH.  This fixes a bug I introduced on 2003-05-28.
35761         * m4/readlink.m4 (gl_PREREQ_READLINK): Renamed from gl_PREREQ_READLINE,
35762         fixing a typo.
35763         * m4/host-os.m4 (UTILS_HOST_OS): Add GNU/NetBSD, GNU/FreeBSD.
35764         * m4/hash.m4 (gl_HASH): Use AM_STDBOOL_H, not AC_HEADER_STDBOOL.
35765
35766 2003-08-16  Paul Eggert  <eggert@twinsun.com>
35767
35768         Document merge from coreutils.
35769         * modules/alloca: Append $(ALLOCA_H) to BUILT_SOURCES.
35770         * modules/fnmatch: Append $(FNMATCH_H) to BUILT_SOURCES.
35771         * modules/utime: Add m4/utimes-null.m4.
35772
35773 2003-08-16  Paul Eggert  <eggert@twinsun.com>
35774
35775         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Do not normalize white
35776         space, undoing this 2003-08-12 change:
35777         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
35778
35779 2003-08-16  Paul Eggert  <eggert@twinsun.com>
35780
35781         * config/srclist.txt: Get regex.h, strdup.c, strtoll.c,
35782         strtoul.c from libc, undoing this 2003-08-12 change:
35783         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
35784
35785 2003-08-16  Jim Meyering  <jim@meyering.net>
35786
35787         Merges from coreutils.
35788         * m4/readdir.m4 (GL_FUNC_READDIR): Change name to have GL_ (not jm_)
35789         prefix.  Adjust cache variables similarly.  Create 500 rather than
35790         just 300 files, to exercise bug on Darwin6.5, too.
35791         * m4/perl.m4 (jm_PERL): Use $am_missing_run, not undefined
35792         $missing_dir.
35793         * m4/jm-winsz1.m4: Require AC_SYS_POSIX_TERMIOS, not
35794         AM_SYS_POSIX_TERMIOS.
35795         Reported by mkc@mathdogs.com.
35796         Also change use of $am_cv_sys_posix_termios
35797         to $ac_cv_sys_posix_termios.  Reported by Andreas Schwab.
35798         * m4/getgroups.m4 (jm_FUNC_GETGROUPS): Rewrite to use AC_FUNC_GETGROUPS
35799         and (if needed) to call AC_LIBOBJ and to set GETGROUPS_LIB.
35800         * m4/fsusage.m4 [__GLIBC__]: GNU libc's statvfs stats each mount point
35801         in /proc/mounts until it finds one with matching device number.  This
35802         is unnecessary when the FILE argument *is* a mount point.  No stat call
35803         is necessary in that case.  So, disable the statvfs-testing code on
35804         systems with GNU libc.  Reported by Andrei Gaponenko via Tim Waugh
35805         as RedHat bug# 84846.
35806         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
35807         to 1MB, so as not to render systems with no stack size limit (e.g.,
35808         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
35809         Include <unistd.h>.  On some systems,
35810         it is required for the definition of _SC_PAGESIZE.
35811
35812 2003-08-16  Jim Meyering  <jim@meyering.net>
35813
35814         Merge from coreutils.
35815         * lib/xstrtoimax.c: #else #if -> #elif.
35816         * lib/xstrtoumax.c: Likewise.
35817
35818 2003-08-16  Jim Meyering  <jim@meyering.net>
35819
35820         * m4/utimes.m4 (gl_FUNC_UTIMES): New file.
35821         * m4/utimes.m4: Removed.
35822         * m4/utimes-null.m4: Renamed from utimes.m4.
35823
35824         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
35825         to 1MB, so as not to render systems with no stack size limit (e.g.,
35826         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
35827         Include <unistd.h>.  On some systems,
35828         it is required for the definition of _SC_PAGESIZE.
35829
35830 2003-08-16  Jim Meyering  <jim@meyering.net>
35831         and Paul Eggert  <eggert@cs.ucla.edu>
35832
35833         Merges from coreutils, etc.
35834
35835         * m4/jm-macros.m4 (AC_LANG_SOURCE(C)): New macro, undefine, then define
35836         using the latest version from cvs.  This avoids problems with #line
35837         directives using a vendor (Sun) compiler.
35838         (jm_MACROS): Bump prerequisite from 2.52g to 2.57.
35839         Don't set GETGROUPS_LIB here; now it's
35840         done via getgroups.m4's wrapper function.
35841         AC_SUBST OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, and MAN here,
35842         rather than just in sh-util/configure.in, so that the
35843         now-shared-by-fileutils-and-textutils lib/Makefile.am are all the
35844         same.
35845         Use AC_CONFIG_LIBOBJ_DIR(lib) to tell the new
35846         AC_FUNC_GETLOADAVG where to find getloadavg.c.
35847         Require AC_FUNC_FTW, gt_INTTYPES_PRI, gl_CLOCK_TIME,
35848         UTILS_SYS_OPEN_MAX, GL_FUNC_GETCWD_PATH_MAX, GL_FUNC_READDIR,
35849         gl_FSUSAGE, gl_MOUNTLIST, AC_FUNC_CANONICALIZE_FILE_NAME.
35850         Remove code that is now done by the newly-required macros.
35851         Append $(EXEEXT) to DF_PROG.
35852         AC_LIBOBJ fchdir-stub if fchdir doesn't exist; similarly for fchown.
35853         Do not invoke or require the following here,
35854         since prereq.m4 or some gnulib .m4 now does this for us:
35855         gl_REGEX, UTILS_FUNC_MKDIR_TRAILING_SLASH, jm_BISON, gl_FUNC_MKTIME,
35856         jm_FUNC_LSTAT, jm_FUNC_STAT, jm_FUNC_REALLOC, jm_FUNC_MALLOC,
35857         jm_FUNC_NANOSLEEP, jm_FUNC_READDIR, jm_FUNC_MEMCMP,
35858         jm_FUNC_GLIBC_UNLOCKED_IO, AC_FUNC_FNMATCH_GNU, jm_FUNC_PUTENV,
35859         jm_AC_PREREQ_XSTRTOUMAX, jm_AC_PREREQ_XSTRTOIMAX,
35860         AC_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, AC_FUNC_VPRINTF,
35861         vb_FUNC_RENAME, UTILS_FUNC_MKSTEP, jm_FUNC_UTIME, AM_FUNC_GETLINE,
35862         AC_FUNC_OBSTACK.
35863         Do not replace the following functions, as this is now the job
35864         of some gnulib .m4: strcasecmp, strncasecmp, dup2, gethostname,
35865         getusershell, sig2str, strcspn, stpcpy, strstr, strtol, strtoul
35866         strpbrk, euidaccess, memcmp, rmdir, rpmatch, strndup, strverscmp,
35867         atexit getpass, strdup, getpagesize.
35868         Replace 'raise'.
35869         Do not check for the following functions, as this is now the job
35870         of some gnulib .m4: bcopy, canonicalize_file_name, fchdir, ftime,
35871         getcwd, getmntinfo, resolvepath.  But check for sysctl, setreuid,
35872         setregid.
35873         (jm_CHECK_ALL_HEADERS): Do not check for fenv.h.
35874         Check for sys/sysctl.h.
35875         (jm_CHECK_ALL_TYPES): Do not require AC_STRUCT_TM, AC_STRUCT_TIMEZONE,
35876         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Invoke gt_TYPE_SSIZE_T instead
35877         of checking for ssize_t ourselves.
35878
35879         * m4/prereq.m4 (jm_PREREQ): Don't invoke macros; AC_REQUIRE them.
35880         Require every macro that gnulib/modules/* suggests for us.
35881         (jm_PREREQ_ADDEXT): New macro.
35882         (jm_PREREQ_STAT): Check for 'struct statfs' on Ultrix 4.4.
35883         Require jm_AC_TYPE_LONG_LONG instead of invoking it.
35884
35885         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): New macro.
35886         (gl_PHYSMEM): Use it.
35887         Also check for `table' function.
35888         Check for new headers and functions.
35889         Add check for sys/sysmp.h.
35890         With suggestions from Kaveh Ghazi.
35891         Ignore headers that are present but cannot be compiled.  This
35892         avoids spurious warnings on Solaris 9 sparc with Forte Developer 7
35893         C 5.4.
35894
35895 2003-08-15  Paul Eggert  <eggert@twinsun.com>
35896
35897         Document merge from coreutils.
35898         * modules/userspec: Depend on posixver.
35899         * modules/strftime: Depend on tzset.
35900
35901 2003-08-15  Paul Eggert  <eggert@twinsun.com>
35902
35903         * lib/config.charset, ref-add.sin, ref-del.sin: Use three spaces,
35904         rather than tab, after '#' in shell-script copyright notices.
35905         Suggested by Bruno Haible.
35906
35907 2003-08-15  Paul Eggert  <eggert@twinsun.com>
35908
35909         * config/srclist-update: Use three spaces, rather than tab, after '#'
35910         in shell-script copyright notices.  Suggested by Bruno Haible.
35911         Remove unnecessary parenthesization in regular expression.
35912
35913 2003-08-15  Jim Meyering  <jim@meyering.net>
35914
35915         Merge from coreutils.
35916         * lib/xgethostname.c: Include <stdlib.h>.
35917         (xghostname): Don't exit for anything other than memory-related
35918         failure; just return NULL.
35919         * lib/userspec.c: Include "posixver.h".
35920         (parse_user_spec): Accept `.' as a separator only
35921         in pre-POSIX-200112 mode.
35922         * lib/strtoimax.c: Use #elif rather than #else #if.
35923         * lib/strftime.c (my_strftime) [!_LIBC && HAVE_TZNAME && HAVE_TZSET]:
35924         Remove function, now that we can rely on a working tzset function.
35925         [!_LIBC]: Ensure that the required autoconf test has been run.
35926         [!defined _NL_CURRENT && HAVE_STRFTIME]:
35927         Use underlying_strftime for %r.
35928         * lib/sha.c: Merge in some clean-up and optimization changes from
35929         glibc.
35930         * lib/sha.c (sha_stream) [BLOCKSIZE]: Move definition to top of file.
35931         Ensure that it is a multiple of 64.
35932         Rearrange loop exit tests so as to avoid performing an
35933         additional fread after encountering an error or EOF.
35934         * lib/realloc.c: Update copyright date.
35935
35936 2003-08-15  Jim Meyering  <jim@meyering.net>
35937         and Paul Eggert  <eggert@twinsun.com>
35938
35939         Merge from coreutils.
35940         * lib/readutmp.h (HAVE_UTMPX_H): Undef if struct utmp has the ut_exit
35941         member but strut utmpx does not.  Needed for AIX 4.3.3.
35942         (UT_EXIT_E_TERMINATION, UT_EXIT_E_EXIT): Define.
35943
35944 2003-08-15  Jim Meyering  <jim@meyering.net>
35945         and Paul Eggert  <eggert@cs.ucla.edu>
35946
35947         Merges from coreutils, etc.
35948         * m4/strftime.m4 (_jm_STRFTIME_PREREQS):
35949         Require gl_FUNC_TZSET_CLOBBER.
35950         * m4/readutmp.m4 (gl_READUTMP): Check for ut_exit.ut_exit,
35951         ut_exit.e_exit, ut_exit.ut_termination, and ut_exit.e_termination
35952         members.
35953
35954 2003-08-14  Paul Eggert  <eggert@twinsun.com>
35955
35956         Help the merge from coreutils.
35957         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): New macro.
35958         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use it.
35959         * m4/tzset.m4: Use it too.
35960
35961 2003-08-14  Paul Eggert  <eggert@twinsun.com>
35962
35963         * modules/tzset: New file.
35964
35965 2003-08-14  Jim Meyering  <jim@meyering.net>
35966
35967         Merges from coreutils.
35968         * modules/fnmatch: Use the `$(FNMATCH_H)' notation for AC_REPLACED
35969         variable names, rather than @FNMATCH_H@.
35970         * modules/alloca: Likewise for $(ALLOCA_H).
35971
35972         * modules/fnmatch (fnmatch.h): Use `$@' in the commands, in place of
35973         the three copies of the literal target, `fnmatch.h'.
35974         * modules/alloca (alloca.h): Likewise.
35975
35976 2003-08-14  Jim Meyering  <jim@meyering.net>
35977
35978         Merge from coreutils.
35979         * m4/tzset.m4: New file.
35980         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Move the
35981         MOUNTED_VMOUNT test to precede the MOUNTED_GETMNTENT1 tests, since
35982         otherwise, AIX 5.1 systems would end up using the latter.
35983         MOUNTED_GETMNTENT1 support is inadequate on such systems: 1) detecting
35984         whether a file system is remote doesn't work  2) the MOUNTED_VMOUNT
35985         code reports the HOSTNAME:/MOUNT_POINT, while the MOUNTED_GETMNTENT1
35986         code reports merely /MOUNT_POINT.  Reported by Mike Jetzer.
35987
35988 2003-08-14  Jim Meyering  <jim@meyering.net>
35989
35990         Merge from coreutils.
35991         * lib/obstack.h: Whitespace changes.
35992         * lib/mountlist.c: Remove anachronistic casts of xmalloc, xrealloc,
35993         and xcalloc return values.
35994         (read_filesystem_list) [MOUNTED_GETFSSTAT]:
35995         Use MNT_NOWAIT, rather than MNT_WAIT.  Otherwise, `df DIR' could
35996         hang on OSF/1 5.1 for DIR on both local and remote file systems.
35997         Reported by (and fix confirmed by) Nelson H. F. Beebe.
35998         (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
35999         error from mntctl.
36000         Use mntctl's return value to drive the entry-processing loop, since
36001         we can't rely on the value of the vmt_length member in the last
36002         entry.  On some systems doing so could result in exhausting
36003         virtual memory.  Based in part on a patch from Mike Jetzer.
36004
36005 2003-08-14  Jim Meyering  <jim@meyering.net>
36006         and Paul Eggert  <eggert@twinsun.com>
36007
36008         Merges from coreutils, plus other fixes.
36009         * lib/physmem.c: Merge in portability changes from gcc/libiberty
36010         to support AIX, IRIX, Tru64, and Windows.  See the ChangeLog there
36011         for credits and details.  Thanks to Kaveh Ghazi for helping
36012         to keep these files in sync.
36013         (ARRAY_SIZE): Define it.
36014         (physmem_total, physmem_available): Add comments. From Kaveh Ghazi.
36015         * lib/memcasecmp.c: Remove unnecessary parentheses after 'defined'.
36016         (memcasecmp): Don't assume size_t fits in unsigned int.
36017         Remove casts and duplicate code.
36018         * lib/md5.c: Include <string.h> and <stdlib.h> unconditionally.
36019         (memcpy): Remove definition.
36020         Merge in some clean-up and optimization changes from glibc.
36021         [BLOCKSIZE]: Move definition to top of file.
36022         Ensure that it is a multiple of 64.
36023         Rearrange loop exit tests so as to avoid performing an
36024         additional fread after encountering an error or EOF.
36025         * lib/md5.h (md5_uintptr): Define.
36026         * lib/makepath.c (CLEANUP_CWD): Report an error if we failed to
36027         return to the initial working directory.  Preserve errno
36028         for caller.
36029         * lib/idcache.c: Include "xalloc.h".
36030         (xmalloc, xrealloc): Remove decls.
36031         (getuser): Remove casts no longer required in C89.
36032         * lib/human.c: Include stdio.h, for sprintf.
36033         * lib/group-member.c: Include "xalloc.h".
36034         (xmalloc, xrealloc): Remove decls.
36035         (get_group_info): Remove casts no longer required in C89.
36036         * lib/getusershell.c (readname): Remove casts no longer required in
36037         C89.
36038         * lib/gettimeofday.c (rpl_gmtime, rpl_tzset): New functions.
36039         * lib/getline.c: Whitespace fix, from coreutils.
36040
36041 2003-08-13  Paul Eggert  <eggert@twinsun.com>
36042
36043         * m4/exclude.m4 (gl_EXCLUDE): Require AC_C_INLINE, AC_HEADER_STDC.
36044         Check for isascii.
36045
36046         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
36047         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
36048         Undo previous (whitespace-only) change.
36049
36050 2003-08-13  Paul Eggert  <eggert@twinsun.com>
36051
36052         * lib/exclude.c: Include <ctype.h>
36053         (IN_CTYPE_DOMAIN): New macro.
36054         (is_space): New fn.
36055         (add_exclude_file): If LINE_END is a space, ignore trailing spaces
36056         and empty lines.
36057
36058         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
36059         Undo previous (whitespace-only) change.
36060
36061 2003-08-13  Paul Eggert  <eggert@twinsun.com>
36062
36063         * config/srclist-update: Change update back to the old behavior,
36064         leaving whitespace alone.  Use one 'sed' command rather than a
36065         pipeline.
36066         (fixlicense): Now a variable, not a function.
36067         (remove_trailing_blanks): Remove.
36068         (fixfile): Don't invoke unexpand or cat, or remove trailing blanks.
36069         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
36070         Undo previous (whitespace-only) change.
36071
36072 2003-08-12  Paul Eggert  <eggert@twinsun.com>
36073
36074         Merge from coreutils.
36075         * modules/euidaccess: Add lib_SOURCES, include for new
36076         file euidaccess.h
36077
36078 2003-08-12  Paul Eggert  <eggert@twinsun.com>
36079
36080         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
36081         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
36082         Normalize leading white space and remove trailing white space.
36083
36084         Merge from coreutils
36085         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): Check for euidaccess decl.
36086
36087         * m4/lib-ld.m4, lib-link.m4, lib-prefix.m4: Regenerate from gettext
36088         0.12.1.  These files are now being upgraded automatically by
36089         ../config/srclist-update.
36090
36091 2003-08-12  Paul Eggert  <eggert@twinsun.com>
36092
36093         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
36094         Normalize leading white space and remove trailing white space.
36095         * lib/ref-add.sin, ref-del.sin: Use '#' before empty line in copyright
36096         notice, as per ../config/srclist-update.
36097
36098         Merge from coreutils.
36099         * lib/euidaccess.h: New file.
36100         * lib/euidaccess.c: Include it.
36101         * lib/.cppi-disable: Add printf-args.h, printf-parse.h, stdbool_.h,
36102         vasnprintf.h, vasprintf.h.  Remove strdup.c, gettext.h.
36103         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Normalize white space.
36104
36105 2003-08-12  Paul Eggert  <eggert@twinsun.com>
36106
36107         * config/srclist-update: Add copyright notice.
36108         (remove_id_lines, remove_trailing_blanks): New constants.
36109         (fixfile): Use them to normalize spacing a bit in copied files.
36110         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
36111         Normalize leading white space and remove trailing white space.
36112
36113         * config/texinfo.tex: Sync with texinfo.
36114
36115         * config/srclist.txt: Don't get regex.h, strdup.c, strtoll.c,
36116         strtoul.c from libc, to merge coreutils whitespace changes.
36117
36118         * config/srclist.txt: Get the following m4 files from gettext:
36119         codeset.m4, gettext.m4, glibc21.m4, iconv.m4, intdiv0.m4,
36120         inttypes-pri.m4, lcmessage.m4, lib-ld.m4, lib-link.m4, lib-prefix.m4,
36121         longdouble.m4, nls.m4, po.m4, progtest.m4, signed.m4, wchar_t.m4,
36122         wint_t.m4.
36123
36124 2003-08-12  Karl Berry  <karl@gnu.org>
36125
36126         * config/srclist.txt: can't sync vasnprintf.c any more, changes have
36127         been made.
36128
36129 2003-08-11  Paul Eggert  <eggert@twinsun.com>
36130
36131         * modules/gnu-source, m4/gnu-source.m4:
36132         Remove; we're assuming Autoconf 2.54 or later now.
36133         Suggested by Bruno Haible.
36134         * MODULES.html.sh (func_all_modules): Remove gnu-source.
36135
36136 2003-08-11  Bruno Haible  <bruno@clisp.org>
36137
36138         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Also check for wcslen.
36139
36140 2003-08-11  Bruno Haible  <bruno@clisp.org>
36141
36142         * lib/vasnprintf.c (local_wcslen): New function, for Solaris 2.5.1.
36143         (vasnprintf): Use it instead of wcslen.
36144
36145 2003-08-11  Bruno Haible  <bruno@clisp.org>
36146
36147         * lib/stdbool_.h (_Bool): Undo last change; instead use a negative enum
36148         value to ensure that _Bool promotes to int. Use #define for _Bool when
36149         using the Solaris C compiler. Adds comments suggested by Paul Eggert.
36150
36151 2003-08-10  Karl Berry  <karl@gnu.org>
36152
36153         * lib/regex.h: update from libc (whitespace fix).
36154
36155 2003-08-09  Paul Eggert  <eggert@twinsun.com>
36156
36157         Merge some files from coreutils.  These changes were
36158         originally made by Jim Meyering.
36159         * lib/acl.c: Include <sys/types.h> before <sys/stat.h>;
36160         many older Unixes require this.
36161         * lib/alloca.c (alloca): Remove cast to argument of free;
36162         no longer needed in C89.
36163         * lib/alloca_.h, regex.h: Fix white space to match
36164         what GNU indent does.
36165
36166 2003-08-09  Paul Eggert  <eggert@twinsun.com>
36167
36168         * m4/regex.m4 (jm_INCLUDED_REGEX): Change "\201" to "\371";
36169         apparently Emacs's Unicode mode got confused before my 2003-08-05
36170         checkin.
36171
36172 2003-08-08  Paul Eggert  <eggert@twinsun.com>
36173
36174         * m4/extensions.m4: New file.
36175         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC):
36176         Require gl_USE_SYSTEM_EXTENSIONS.
36177         * m4/unlocked-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO):
36178         Require gl_USE_SYSTEM_EXTENSIONS rather than AC_GNU_SOURCE.
36179
36180 2003-08-08  Paul Eggert  <eggert@twinsun.com>
36181
36182         * MODULES.html.sh (func_all_modules): Add extensions, gnu-source.
36183         * modules/extensions, modules/gnu-source: New files.
36184         * modules/timespec, modules/unlocked-io: Depend on extensions.
36185
36186 2003-08-07  Paul Eggert  <eggert@twinsun.com>
36187
36188         * modules/restrict: New file.
36189         * MODULES.html.sh (func_all_modules): Add restrict.
36190         * modules/regex: Depend on restrict.
36191
36192 2003-08-07  Paul Eggert  <eggert@twinsun.com>
36193
36194         * m4/restrict.m4: New file.
36195         * m4/regex.m4 (jm_PREREQ_REGEX): Add gl_C_RESTRICT.
36196
36197 2003-08-07  Bruno Haible  <bruno@clisp.org>
36198
36199         * modules/getndelim2 (Makefile.am): Add the files to EXTRA_DIST, not
36200         lib_SOURCES, because getndelim2.m4 now uses AC_LIBOBJ(getndelim2).
36201
36202 2003-08-07  Bruno Haible  <bruno@clisp.org>
36203
36204         * m4/getndelim2.m4 (gl_GETNDELIM2): Use AC_LIBOBJ(getndelim2). This
36205         makes the module 'getndelim2' compatible with the module 'getline'.
36206
36207 2003-08-05  Paul Eggert  <eggert@twinsun.com>
36208
36209         * m4/regex.m4 (jm_INCLUDED_REGEX): Replace a single non-ASCII
36210         byte with "\201" to avoid glitches when editing that source file
36211         with multi-gnome-terminal.
36212
36213 2003-08-05  Paul Eggert  <eggert@twinsun.com>
36214
36215         * lib/bumpalloc.h: Remove.
36216
36217 2003-08-05  Paul Eggert  <eggert@twinsun.com>
36218
36219         * MODULES.html.sh (func_all_modules): Remove bumpalloc.
36220         * modules/bumpalloc: Remove.
36221
36222 2003-08-04  Paul Eggert  <eggert@twinsun.com>
36223
36224         * lib/getloadavg.c: Change copyright notice and spacing to conform to
36225         GNU coding style.
36226
36227         Merge from coreutils.
36228         * lib/error.c [!USE_IN_LIBIO]: Omit this case; assume USE_IN_LIBIO is
36229         1. From glibc.
36230         * lib/getdate.y (date): Also accept dates like May-23-2003; suggestion
36231         from Karl Berry, implemented by Jim Meyering.
36232         * lib/getgroups.c: Include "xalloc.h" instead of declaring xalloc fns;
36233         from Dmitry V. Levin.
36234         Remove anachronistic cast of xrealloc.
36235         * lib/fnmatch_.h (__const): Remove.  Use 'const'.
36236         * lib/fnmatch_loop.c (NEW_PATTERN): Cast alloca return value to proper
36237         type. Otherwise, it wouldn't compile with at least /bin/cc on
36238         ymp-cray-unicos9.0.2.X.
36239         Combine two mostly-identical uses of alloca into one.
36240         Thanks to the Cray-Cyber project for access to a Cray Y-MP.
36241
36242 2003-08-04  Dave Love  <d.love@dl.ac.uk>
36243
36244         [From Emacs.]
36245
36246         * lib/getloadavg.c: Check `__unix' as well as `unix'.  Use #ifdef, not
36247         #if.  Check HAVE_LIBKSTAT as well as LOAD_AVE_TYPE.  Check
36248         F_SETFD, not FD_SETFD.  Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not
36249         obsolete NLIST_NAME_UNION.
36250         [__GNU__]: Undef BSD and FSCALE.
36251         [!NLIST_STRUCT]: Remove conditional definition of NLIST_STRUCT.
36252
36253 2003-08-03  Paul Eggert  <eggert@twinsun.com>
36254
36255         * lib/stdbool_.h (_Bool): Make it signed char, instead of
36256         an enum type, so that it's guaranteed to promote to int.  See:
36257         <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00124.html>
36258
36259 2003-08-03  Karl Berry  <karl@gnu.org>
36260
36261         * config/depcomp: update from automake.
36262
36263 2003-07-31  Paul Eggert  <eggert@twinsun.com>
36264
36265         * lib/strerror.c: Include config.h, limits.h.  Declare sprintf.
36266         (strerror): Don't assume that a printable int fits in 14 bytes.
36267
36268 2003-07-31  Bruno Haible  <bruno@clisp.org>
36269
36270         * modules/getpass-gnu: New file.
36271         * MODULES.html.sh (func_all_modules): Add getpass-gnu.
36272
36273 2003-07-31  Bruno Haible  <bruno@clisp.org>
36274
36275         * m4/getpass.m4 (gl_FUNC_GETPASS_GNU): New macro.
36276
36277 2003-07-24  Karl Berry  <karl@gnu.org>
36278
36279         * config/missing: update from automake.
36280
36281 2003-07-24  Derek Robert Price  <derek@ximbiot.com>
36282             Bruno Haible  <bruno@clisp.org>
36283
36284         * lib/getline.h (getline, getdelim): Change return type to ssize_t.
36285         * lib/getline.c (getline, getdelim): Likewise.
36286         Remove _GNU_SOURCE define; now it's defined in config.h through
36287         m4/getline.m4.
36288
36289 2003-07-23  Karl Berry  <karl@gnu.org>
36290
36291         * config/config.sub: update from prep.
36292
36293 2003-07-22  Paul Eggert  <eggert@twinsun.com>
36294
36295         * modules/xalloc (Depends-on): Add exitfail.
36296         * modules/xmemcoll: Likewise.
36297
36298 2003-07-22  Paul Eggert  <eggert@twinsun.com>
36299
36300         * lib/xalloc.h (XCALLOC, XREALLOC, CCLONE): Fix under- and
36301         over-parenthesization in macros.
36302
36303         Sync with coreutils.
36304
36305         * lib/xalloc.h (XMALLOC, XCALLOC, XREALLOC): Remove casts not
36306         required by C99.
36307
36308         Use `exit_failure' for xalloc and xmemcoll instead of their own
36309         private exit-failure variables.
36310         * lib/xalloc.h (xalloc_exit_failure): Remove.
36311         * lib/xmalloc.c: Likewise.  Include exitfail.h.
36312         (xalloc_die): Use exit_failure instead of xalloc_exit_failure.
36313         * lib/xmemcoll.h (xmemcoll_exit_failure): Remove.
36314         * lib/xmemcoll.c: Likewise.  Include exitfail.h.
36315         (xmemcoll): Use exit_failure instead of xalloc_exit_failure.
36316
36317 2003-07-20  Jim Meyering  <jim@meyering.net>
36318
36319         * modules/closeout (Depends-on): Add exitfail.
36320         Suggestion from Bruno Haible.
36321
36322 2003-07-19  Karl Berry  <karl@gnu.org>
36323
36324         * config/config.sub: update from prep.
36325
36326 2003-07-18  Paul Eggert  <eggert@twinsun.com>
36327
36328         * lib/closeout.h (close_stdout_set_status, close_stdout_status):
36329         Remove.
36330         * lib/closeout.c: Likewise.  Include "closeout.h" right after config.h,
36331         to test that it can stand by itself.  Include "exitfail.h".
36332         Clients should set exit_failure instead.
36333         (EXIT_FAILURE): Remove; no longer needed.  Do not include <stdlib.h>.
36334
36335 2003-07-18  Bruno Haible  <bruno@clisp.org>
36336
36337         * modules/getndelim2: New file.
36338         * modules/getline: Share files with module getndelim2.
36339         * modules/getnline: Depend on getndelim2 instead of sharing files with
36340         it. Add getnline.c to lib_SOURCES.
36341         * MODULES.html.sh (func_all_modules): Add getndelim2.
36342
36343 2003-07-18  Bruno Haible  <bruno@clisp.org>
36344
36345         * m4/getndelim2.m4: New file.
36346         * m4/getline.m4 (AM_FUNC_GETLINE): Add AC_LIBOBJ of getndelim2.c and
36347         invoke gl_PREREQ_GETNDELIM2.
36348         (gl_PREREQ_GETLINE): Drop AC_HEADER_STDC, now done by
36349         gl_PREREQ_GETNDELIM2.
36350         * m4/getnline.m4 (gl_GETNLINE): Drop AC_HEADER_STDC, now done by
36351         gl_GETNDELIM2.
36352
36353 2003-07-18  Bruno Haible  <bruno@clisp.org>
36354
36355         * lib/getndelim2.h: New file.
36356         * lib/getndelim2.c: Make into a module of its own. Include config.h,
36357         getndelim2.h.
36358         (getndelim2): Make non-static. Change return type to ssize_t.
36359         * lib/getline.h: Change argument names.
36360         * lib/getline.c: Include getndelim2.h instead of getndelim2.c.
36361         * lib/getnline.c: Include getndelim2.h.
36362
36363 2003-07-18  Andreas Schwab  <schwab@suse.de>
36364
36365         * lib/memcoll.c (memcoll) [!HAVE_STRCOLL]: Clear errno.
36366
36367 2003-07-17  Karl Berry  <karl@gnu.org>
36368
36369         * config/config.sub: update from prep.
36370
36371 2003-07-17  Bruno Haible  <bruno@clisp.org>
36372
36373         * modules/getnline: New file.
36374         * modules/getline: Add lib/getndelim2.c to source file list.
36375         * MODULES.html.sh (func_all_modules): Add getnline.
36376
36377 2003-07-17  Bruno Haible  <bruno@clisp.org>
36378
36379         * m4/getnline.m4: New file.
36380
36381 2003-07-17  Bruno Haible  <bruno@clisp.org>
36382
36383         * m4/Makefile.am.in: Remove file.
36384         * m4/Makefile.am: Remove file.
36385         * m4/Makefile.in: Remove file.
36386
36387 2003-07-17  Bruno Haible  <bruno@clisp.org>
36388
36389         * lib/getnline.h: New file.
36390         * lib/getnline.c: New file.
36391         * lib/getndelim2.c: New file, extracted from getline.c.
36392         (getndelim2): Renamed from getdelim2, with added nmax argument.
36393         * lib/getline.c: Include getndelim2.c.
36394         (getdelim2): Moved out to getndelim2.c.
36395         (getline, getdelim): Update.
36396
36397 2003-07-17  Bruno Haible  <bruno@clisp.org>
36398
36399         * lib/Makefile.am: Remove file.
36400         * lib/Makefile.in: Remove file.
36401
36402 2003-07-17  Bruno Haible  <bruno@clisp.org>
36403
36404         * configure.in: Remove file.
36405         * Makefile.in: Remove file.
36406
36407 2003-07-17  Bruno Haible  <bruno@clisp.org>
36408
36409         * MODULES.html.sh: Put the </BODY> right before </HTML>.
36410
36411 2003-07-16  Karl Berry  <karl@gnu.org>
36412
36413         * config/srclist-update: was running fixlicense twice, which caused
36414                 texinfo.tex to be nullified for some reason.  Simplify,
36415                 $gplsrc is no longer needed as far as I can see?
36416
36417 2003-07-16  Jim Meyering  <jim@meyering.net>
36418
36419         * modules/save-cwd: Depend on xgetcwd.  From Derek Price.
36420
36421 2003-07-15  Paul Eggert  <eggert@twinsun.com>
36422
36423         * config/srclist.txt: Get the following files from gettext-runtime/intl
36424         instead: config.charset, localcharset.c, localcharset.h, ref-add.sin,
36425         ref-del.sin.  From Bruno Haible.
36426         * config/srclist-update (fixfile): Change grep pattern again, since the
36427         previous fix didn't work (there was another trailing $).  Use
36428         '[$]' to escape the $s.
36429
36430 2003-07-15  Karl Berry  <karl@gnu.org>
36431
36432         * lib/vasnprintf.c: update from gettext.
36433
36434 2003-07-15  Karl Berry  <karl@gnu.org>
36435
36436         * config/srclist-update (fixfile): Change grep pattern, since 'Id'
36437         gets expanded when surrounded by '$'.
36438
36439 2003-07-15  Jim Meyering  <jim@meyering.net>
36440
36441         * modules/save-cwd: Don't depend on error.  From Derek Price.
36442
36443 2003-07-15  Jim Meyering  <jim@meyering.net>
36444
36445         * lib/makepath.c (make_path): Enclose diagnostic in _(...).
36446
36447 2003-07-14  Simon Josefsson  <jas@extundo.com>
36448
36449         * modules/mempcpy: New file.
36450         * MODULES.html.sh (func_all_modules): Add mempcpy.
36451
36452 2003-07-14  Simon Josefsson  <jas@extundo.com>
36453
36454         * m4/mempcpy.m4: New file.
36455
36456 2003-07-14  Simon Josefsson  <jas@extundo.com>
36457
36458         * lib/mempcpy.h: New file.
36459         * lib/mempcpy.c: New file.
36460
36461 2003-07-14  Paul Eggert  <eggert@twinsun.com>
36462
36463         * modules/getdate, modules/posixtm: Depend on mktime.
36464
36465 2003-07-14  Paul Eggert  <eggert@twinsun.com>
36466
36467         * lib/ceill.c, expl.c, floorl.c, frexpl.c, ldexpl.c, mathl.h,
36468         sincosl.c, sqrtl.c, trigl.c, trigl.h, poll.c, poll_.h, mkstemp.c,
36469         unicodeio.c, unicodeio.h, unlocked-io.h:
36470         Switch from LGPL to GPL.
36471
36472 2003-07-14  Paul Eggert  <eggert@twinsun.com>
36473
36474         * lib/asnprintf.c, asprintf.c, config.charset, gettext.h,
36475         localcharset.c, localcharset.h, mkdtemp.c, printf-args.c,
36476         printf-args.h, printf-parse.c, printf-parse.h, ref-add.sin,
36477         ref-del.sin, setenv.c, unsetenv.c, vasnprintf.c, vasnprintf.h,
36478         vasprintf.c, vasprintf.h: Regenerate.  These files are now being
36479         updated automatically by ../config/srclist-update.  This changes
36480         their license from LPGL to GPL.
36481
36482 2003-07-14  Paul Eggert  <eggert@twinsun.com>
36483
36484         * config/srclist.txt: Add tons more gettext files.  $GETTEXT is now
36485         assumed to refer to the root of the most recent stable gettext version.
36486         * config/srclistvars.sh: Add defaults for eggert.
36487         * config/srclist-update: Convert LGPL to GPL in shell scripts, too.
36488         Match "This program" as well as "The program".  This is needed
36489         for gettext.
36490
36491 2003-07-14  Jim Meyering  <jim@meyering.net>
36492
36493         Don't emit diagnostics.  Let callers do that.
36494         * lib/save-cwd.c: Don't include "error.h".
36495         (save_cwd): Don't call error.  Ensure that errno is valid
36496         when returning nonzero.
36497
36498         * lib/save-cwd.h (restore_cwd): Update prototype.
36499         * lib/save-cwd.c (restore_cwd): Remove two parameters.
36500         Simplify.  Don't call error upon failure.  Let callers do that.
36501         (save_cwd): Mention that Irix 5.3 has the same problem as SunOS 4
36502         when auditing is enabled.  But don't bother updating the #if.
36503
36504 2003-07-11  Alexandre Duret-Lutz  <adl@gnu.org>
36505
36506         * lib/obstack.h (__INT_TO_PTR): Revert change of 2003-03-13;
36507         it breaks C++ compilation.
36508         [!__GNUC__ || !__STDC__] (obstack_finish): Cast result to void*.
36509
36510 2003-07-10  Simon Josefsson  <jas@extundo.com>
36511
36512         * modules/strchrnul (Makefile.am): Add strchrnul.h.
36513
36514 2003-07-10  Jim Meyering  <jim@meyering.net>
36515
36516         * m4/clock_time.m4: Remove trailing blank.
36517         * m4/intmax_t.m4: Likewise.
36518
36519 2003-07-10  Jim Meyering  <jim@meyering.net>
36520
36521         * lib/vasnprintf.c: Remove trailing blanks.
36522         Make cpp indentation consistent.
36523
36524 2003-07-09  Paul Eggert  <eggert@twinsun.com>
36525
36526         * lib/alloca_.h, euidaccess.c, getpass.c, memrchr.c, obstack.h,
36527         posixver.c, strftime.c, strnlen.c, strverscmp.c:
36528         Switch from LGPL to GPL.
36529
36530 2003-07-09  Paul Eggert  <eggert@twinsun.com>
36531
36532         * config/srclist.txt: Sort sublists.  Add
36533         $LIBCSRC/sysdeps/generic/strtoul.c. In comments, add more libc files
36534         that differ from gnulib for one reason or another; we'd like this list
36535         to be smaller but for now let's document what we have.
36536
36537 2003-07-08  Paul Eggert  <eggert@twinsun.com>
36538
36539         * config/srclist-update: Port to POSIX 1003.1-2001 hosts by avoiding
36540         the use of GNU extensions.  Change "x=`eval echo $x`" to the shorter
36541         and sweeter "eval x=$x".
36542         * config/srclist.txt: Get lib/argp* from glibc.
36543
36544 2003-07-07  Paul Eggert  <eggert@twinsun.com>
36545
36546         * lib/mktime.c: Fix some boundary cases and remove need for floating
36547         point.
36548
36549         Issue a compile-time diagnostic if time_t is floating point, or if
36550         two's complement arithmetic is not in effect, or if arithmetic
36551         right shift does not propagate the sign.  These assumptions were
36552         all in the original code but they weren't checked.
36553
36554         (TIME_T_MIDPOINT, verify): New macros.
36555         (__isleap): Remove; it has integer overflow problems.
36556         (leapyear): New function, without those problems.
36557         (ydhms_tm_diff): Remove; splitting into two parts.
36558         (ydhms_diff): New function, containing the arithmetic part of
36559         the old ydhms_tm_diff function.  Issue a compile-time
36560         diagnostic if we are not using C99 integer division.
36561         Avoid casts when possible.
36562         (guess_time_tm): New function, containing the checking part of
36563         the old ydhms_tm_diff function.  Return the new value, rather than
36564         the difference between it and the old.  Accept a new argument T
36565         so that *T specifies the old value.  Check for overflow in the result.
36566
36567         (__mktime_internal): Use a time_t offset, not a long int offset.
36568         This undoes the 2003-06-04 change, which is no longer needed now
36569         that we have better overflow checking.
36570         (localtime_offset): Likewise.
36571
36572         (__mktime_internal): Avoid harmful overflow on hosts where time_t
36573         and long are 64-bit but int is only 32-bit.
36574         (ydhms_diff): Use long int to store year1 and yday1.
36575         Issue a compile-time diagnostic if long int is not wide enough.
36576
36577         (__mktime_internal): Use long int to store adjusted year and yday.
36578         Use plain C rather than preprocessor commands, if that doesn't
36579         affect efficiency.
36580         Check for overflow (and try to repair) after each probe
36581         rather than checking only at the very end.  This avoids some bugs
36582         (e.g., southern hemisphere, behind GMT, and GMT offset at minimum time
36583         does not equal GMT offset at maximum time).
36584         Use integer to check for overflow rather than floating point; this
36585         is more portable to non-IEEE hosts, and is a tad faster.
36586         When we detect that we are oscillating between two values,
36587         don't check whether tm_isdst has the requested value, since
36588         we already know the answer.  When tm_isdst has the wrong value,
36589         use a different heuristic to find the right one, based on the
36590         extreme values actually observed in practice in tz2003a,
36591         rather than the (overly optimistic) "previous 3 calendar quarters".
36592
36593         (not_equal_tm, print_tm, check_result): Use "const T" rather than
36594         "T const" to accommodate glibc style.
36595         (check_result): Use less-confusing report format.  "long" -> "long int.
36596         (main): Likewise.
36597         Don't loop if the iteration overflows time_t.
36598         Allow a negative step in the iteration.
36599
36600 2003-07-06  Karl Berry  <karl@gnu.org>
36601
36602         * config/depcomp: update from automake.
36603         * config/config.sub: update from prep.
36604
36605 2003-07-03  Karl Berry  <karl@gnu.org>
36606
36607         * config/config.guess: update from prep.
36608
36609 2003-07-01  Paul Eggert  <eggert@twinsun.com>
36610
36611         * m4/xreadlink.m4 (gl_XREADLINK): Don't check for sys/types.h, since
36612         xreadlink.c now includes it unconditionally.
36613
36614 2003-07-01  Paul Eggert  <eggert@twinsun.com>
36615
36616         * lib/xreadlink.c: Include <sys/types.h> unconditionally, instead of
36617         having it depend on HAVE_SYS_TYPES_H.
36618
36619 2003-07-01  Bruno Haible  <bruno@clisp.org>
36620
36621         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Don't include <unistd.h>.
36622         <sys/types.h> should be sufficient.
36623         Reported by Paul Eggert.
36624
36625 2003-06-26  Karl Berry  <karl@gnu.org>
36626
36627         * config/depcomp: update from automake.
36628
36629 2003-06-26  Bruno Haible  <bruno@clisp.org>
36630
36631         * modules/human: Depend on module stdbool.
36632
36633 2003-06-25  Bruno Haible  <bruno@clisp.org>
36634
36635         * modules/readlink: New file.
36636         * modules/xreadlink: Depend on it.
36637         * MODULES.html.sh (func_all_modules): Add readlink.
36638
36639 2003-06-25  Bruno Haible  <bruno@clisp.org>
36640
36641         * m4/readlink.m4: New file.
36642
36643 2003-06-25  Bruno Haible  <bruno@clisp.org>
36644
36645         * lib/readlink.c: New file.
36646
36647 2003-06-22  Karl Berry  <karl@gnu.org>
36648
36649         * config/srclist.txt: update mkinstalldirs from automake.
36650         * config/mkinstalldirs: update.
36651
36652 2003-06-22  Bruno Haible  <bruno@clisp.org>
36653
36654         Portability to mingw32.
36655         * m4/ssize_t.m4: New file, from GNU gettext.
36656         * m4/safe-read.m4 (gl_PREREQ_SAFE_READ): Require gt_TYPE_SSIZE_T.
36657         * m4/xreadlink.m4 (gl_XREADLINK): Require gt_TYPE_SSIZE_T.
36658
36659 2003-06-22  Bruno Haible  <bruno@clisp.org>
36660
36661         * modules/safe-read: Add m4/ssize_t.m4.
36662         * modules/xreadlink: Add m4/ssize_t.m4.
36663
36664 2003-06-20  Bruno Haible  <bruno@clisp.org>
36665
36666         Assume C89, so PARAMS isn't needed.
36667         * lib/unicodeio.h (PARAMS): Remove.
36668         * lib/unicodeio.c: Don't use PARAMS.
36669
36670 2003-06-18  Karl Berry  <karl@gnu.org>
36671
36672         * config/config.{guess,sub}: update from prep.
36673
36674 2003-06-18  Jim Meyering  <jim@meyering.net>
36675
36676         Merge changes from coreutils.
36677         * lib/readutmp.c: Include <string.h> and <stdlib.h> unconditionally.
36678         Remove explicit declarations of xmalloc and realloc.
36679         Include xalloc.h.
36680         (read_utmp): Remove anachronistic cast of xmalloc.
36681
36682 2003-06-17  Paul Eggert  <eggert@twinsun.com>
36683
36684         Assume C89, so PARAMS isn't needed.
36685         * lib/backupfile.h (PARAMS): Remove.  All uses removed.
36686         * lib/closeout.h, lib/dirname.h, lib/filemode.h, lib/fsusage.h,
36687         lib/getdate.h, lib/getline.h, lib/group-member.h, lib/hard-locale.h,
36688         lib/hash.h, lib/linebuffer.h, lib/long-options.h, lib/makepath.h,
36689         lib/memcasecmp.h, lib/memcoll.h, lib/modechange.h, lib/mountlist.h,
36690         lib/path-concat.h, lib/physmem.h, lib/posixtm.h, lib/quote.h,
36691         lib/readutmp.h, lib/same.h, lib/save-cwd.h, lib/savedir.h,
36692         lib/stdio-safer.h, lib/strtoimax.c, lib/strverscmp.h,
36693         lib/unistd-safer.h, lib/version-etc.h, lib/xalloc.h, lib/xreadlink.h,
36694         lib/xstrtod.h, lib/xstrtol.h: Likewise.
36695         * lib/filemode.h, lib/hard-locale.h, lib/memcoll.h, lib/modechange.h,
36696         lib/physmem.h, lib/same.h, lib/strverscmp.h: Do not include config.h;
36697         no longer needed. Anyway, config.h should always be included before any
36698         other file.
36699
36700 2003-06-11  Simon Josefsson  <jas@extundo.com>
36701
36702         * modules/sysexits: New file.
36703         * MODULES.html.sh (func_all_modules): Add sysexits.
36704
36705 2003-06-11  Simon Josefsson  <jas@extundo.com>
36706
36707         * lib/sysexit_.h: New file.
36708
36709 2003-06-11  Derek Price  <derek@ximbiot.com>
36710
36711         * lib/stat.c [LSTAT]: Compile/use slash_aware_lstat only if it is
36712         necessary.
36713
36714 2003-06-11  Bruno Haible  <bruno@clisp.org>
36715
36716         * m4/sysexits.m4: New file.
36717
36718 2003-06-10  Simon Josefsson  <jas@extundo.com>
36719
36720         * lib/argp.h: New file, from glibc.
36721         * lib/argp-ba.c: New file, from glibc.
36722         * lib/argp-eexst.c: New file, from glibc.
36723         * lib/argp-fmtstream.c: New file, from glibc.
36724         * lib/argp-fmtstream.h: New file, from glibc.
36725         * lib/argp-fs-xinl.c: New file, from glibc.
36726         * lib/argp-help.c: New file, from glibc.
36727         * lib/argp-namefrob.h: New file, from glibc.
36728         * lib/argp-parse.c: New file, from glibc.
36729         * lib/argp-pv.c: New file, from glibc.
36730         * lib/argp-pvh.c: New file, from glibc.
36731         * lib/argp-xinl.c: New file, from glibc.
36732
36733 2003-06-10  Simon Josefsson  <jas@extundo.com>
36734
36735         * modules/strchrnul: New file.
36736
36737 2003-06-10  Simon Josefsson  <jas@extundo.com>
36738
36739         * modules/argp: New file.
36740
36741 2003-06-10  Simon Josefsson  <jas@extundo.com>
36742
36743         * m4/strchrnul.m4: New file.
36744
36745 2003-06-10  Simon Josefsson  <jas@extundo.com>
36746
36747         * lib/strchrnul.h: New file.
36748         * lib/strchrnul.c: New file.
36749
36750 2003-06-10  Bruno Haible  <bruno@clisp.org>
36751
36752         * MODULES.html.sh (func_all_modules): Add strchrnul and argp.
36753
36754 2003-06-07  Karl Berry  <karl@gnu.org>
36755
36756         * config/config.{guess,sub}: update from prep.
36757
36758 2003-06-07  Jim Meyering  <jim@meyering.net>
36759
36760         * modules/strtod: Use $(...) notation, not @...@ for
36761         AC_REPLACE'd variables.
36762         * modules/localcharset: Likewise.
36763
36764 2003-06-07  Jim Meyering  <jim@meyering.net>
36765
36766         * lib/readtokens.h: Put `Free Software Foundation, Inc.'
36767         in place of my name in the copyright comment.
36768         Remove definition and uses of __P.
36769
36770         From coreutils.
36771         * lib/stat.c: Don't declare xmalloc explicitly.
36772         Instead, include "xalloc.h".
36773         * lib/readtokens.c (readtokens): Remove anachronistic casts of xmalloc,
36774         xrealloc, and xcalloc return values.
36775         * lib/xgetcwd.c (xgetcwd): Include "xgetcwd.h".
36776         Improve comment.
36777         * lib/xgetcwd.h: Remove definition/uses of PARAMS.
36778
36779 2003-06-07  Bruno Haible  <bruno@clisp.org>
36780
36781         * modules/poll (Makefile.am): Use explicit creation rule for poll.h, to
36782         avoid AC_CONFIG_LINKS.
36783         * modules/fnmatch (Makefile.am): Use explicit creation rule for
36784         fnmatch.h, to avoid AC_CONFIG_LINKS.
36785         * modules/alloca (Makefile.am): Make creation of alloca.h Ctrl-C safe.
36786
36787 2003-06-07  Bruno Haible  <bruno@clisp.org>
36788
36789         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH, gl_FUNC_FNMATCH_POSIX,
36790         gl_FUNC_FNMATCH_GNU): Set FNMATCH_H instead of invoking
36791         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
36792         directory.
36793         * m4/poll.m4 (gl_FUNC_POLL): Set POLL_H instead of invoking
36794         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
36795         directory.
36796
36797 2003-06-06  Jim Meyering  <jim@meyering.net>
36798
36799         Merge from coreutils.
36800         * lib/same.c: (same_name): Declare *_basename locals to be `const'.
36801         Consolidate declarations and initializations of *_base* locals.
36802
36803         Merge from coreutils.
36804         This avoids a core dump on systems without GNU putenv,
36805         when running `env -u SOME_ALREADY_UNSET_VARIABLE'.
36806         * lib/putenv.c (__set_errno, LOCK, UNLOCK): Define.
36807         (unsetenv): New static function, from GNU libc.
36808         (rpl_putenv): Use it.
36809
36810         * lib/modechange.c: Remove trailing blanks.
36811
36812         Merge from coreutils.
36813         * lib/fsusage.c: Remove declaration of statfs.
36814         It conflicted with one from OSF/1 5.1 in <sys/mount.h>.
36815
36816         * lib/posixtm.c: Include <stdbool.h> unconditionally.
36817
36818 2003-06-06  Jim Meyering  <jim@meyering.net>
36819
36820         * lib/stdbool_.h: Renamed from stdbool.h.in.
36821
36822 2003-06-06  Jim Meyering  <jim@meyering.net>
36823             Bruno Haible  <bruno@clisp.org>
36824
36825         * modules/stdbool: Reflect renaming: stdbool.h.in -> stdbool_.h.
36826         Adjust Makefile.am snippet not to redirect directly to target.
36827         Use $(STDBOOL_H) notation, not @STDBOOL_H@ for AC_REPLACE'd variables.
36828
36829 2003-06-05  Paul Eggert  <eggert@twinsun.com>
36830
36831         * lib/mktime.c (__mktime_internal): When resolving a tm_isdst
36832         mismatch, look in future quarters as well as past.  This fixes a
36833         bug when processing fall-backwards gaps immediately after a long
36834         period of daylight-saving time.
36835
36836         * lib/mktime.c: Assume freestanding C89 or better.
36837         (HAVE_LIMITS_H): Remove.  Assume it's 1.
36838         (__P): Remove; not used.
36839         (CHAR_BIT, INT_MIN, INT_MAX): Remove; <limits.h> defines them.
36840         (mktime, not_equal_tm, print_tm, check_result,
36841         main): Use prototypes.  Use const * where appropriate.
36842         (main): Fix typo in testing code that uncovered by above changes.
36843         (Local Variables): Remove -DHAVE_LIMITS_H from compile-command.
36844
36845 2003-06-04  Paul Eggert  <eggert@twinsun.com>
36846
36847         * m4/human.m4 (gl_HUMAN): Require AM_STDBOOL_H.  Check for
36848         locale.h, localeconv.  This merges changes from coreutils.
36849
36850         * m4/mktime.m4 (AC_FUNC_MKTIME): New macro, taken from Autoconf CVS.
36851         It can be removed after the next Autoconf is released.
36852         * m4/exclude.m4 (gl_EXCLUDE): Don't check for sys/types.h; no loner
36853         needed.
36854
36855 2003-06-04  Paul Eggert  <eggert@twinsun.com>
36856
36857         * lib/mktime.c: Fix Debian bug 177940
36858         <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=177940>.
36859         (localtime_offset): Now long int, not time_t, because we want it
36860         to be guaranteed to be signed.  All uses changed.
36861         (__mktime_internal): If overflow would occur when adding offset,
36862         don't add it.
36863
36864         Merge 'human' changes from coreutils.  Rewrite to support
36865         locale-specific notations like thousands separators.
36866         * lib/human.c: Simplify authorship notice.
36867         Include human.h immediately after config.h.
36868         <sys/types.h>, <stdio.h>: Do not include; no longer needed.
36869         <limits.h>: Do not include, since human.h does.
36870         (SIZE_MAX, UINTMAX_MAX): New macros.
36871         <strings.h>: Include if HAVE_STRINGS_H, not if !HAVE_STRING_H.
36872         <locale.h>: Include if HAVE_LOCALE_H and HAVE_LOCALECONV.
36873         (HUMAN_READABLE_SUFFIX_LENGTH_MAX): New macro.
36874         (power_letter): Renamed from suffixes.
36875         (generate_suffix_backwards): Remove.
36876         (adjust_value): Now takes int style (because of human.h changes)
36877         and long double value (for greater precision on some platforms).
36878         (group_number): New function.
36879         (human_readable): Use it.  Use integer options, not enum.
36880         Put the options before the sizes in the arg list.
36881         Support all the new options.
36882         The old human_readable function has been removed;
36883         use inttostr.h instead.
36884         (human_readable, default_block_size, humblock):
36885         Use uintmax_t, not int, for block sizes.
36886         (human_readable_inexact, block_size_types): Remove.
36887         (block_size_opts): New constant.
36888         (human_options): Renamed from human_block_size, with new signature
36889         that allows block sizes up to UINTMAX_MAX.  All callers changed.
36890         * lib/human.h: Add copyright and authorship notice.
36891         Include <limits.h> and <stdbool.h> unconditionally.
36892         (PARAMS): Remove.  All uses removed.
36893         (LONGEST_HUMAN_READABLE): Add support for thousands separator.
36894         (enum human_inexact_style): Remove tag; now a nameless enum.
36895         (human_floor, human_ceiling, human_round_to_even): Now have
36896         values 2, 0, 1 rather than -1, 1, 0.
36897         (human_group_digits, human_suppress_point_zero, human_autoscale,
36898         human_base_1024, human_SI, human_B): New constants.
36899         (human_readable_inexact, human_block_size): Remove.
36900         (human_readable): Size args are now uintmax_t, not int.
36901         (human_options): New decl.
36902
36903         * lib/exclude.c: (new_exclude, add_exclude): Remove casts that are
36904         unnecessary now that we assume C89 or better.  This change
36905         imported from coreutils.
36906
36907         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
36908         arbitrarily.  This is the same patch as 2003-05-28, but it got lost
36909         in the 2003-05-30 sync from glibc.
36910
36911         .h files should stand alone, but we shouldn't include <sys/types.h>
36912         if we can get away with just <stddef.h>.
36913
36914         * lib/__fpending.h, addext.c, backupfile.c, exclude.c, getline.c,
36915         malloc.c, putenv.c, realloc.c, strcasecmp.c: Include <stddef.h>
36916         rather than <sys/types.h>, as we merely need size_t.
36917         * lib/dirname.h, memcoll.h, xalloc.h, xmemcoll.h: Include <stddef.h>,
36918         to get size_t.
36919         * lib/hash.h, linebuffer.h, readtokens.h, stdio-safer.h, version-etc.h:
36920         Include <stdio.h>, to get FILE.
36921         * lib/memcasecmp.c: Don't include <sys/types.h>, as we can assume
36922         memcasecmp.h has included <stddef.h> and all we need is size_t.
36923         * lib/memcoll.c: Include "memcoll.h", which gets us size_t and checks
36924         our interface, instead of including <sys/types.h>
36925
36926 2003-06-04  Paul Eggert  <eggert@twinsun.com>
36927
36928         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): Comment out for
36929         now, as glibc mktime is buggy on non-glibc systems.
36930
36931 2003-06-03  Karl Berry  <karl@gnu.org>
36932
36933         * config/config.sub: update from prep.
36934
36935 2003-06-02  Paul Eggert  <eggert@twinsun.com>
36936
36937         [from coreutils]
36938         Fix some minor time-related bugs with POSIX time arguments.
36939         Some valid time stamps were being rejected (notably -1, and
36940         time stamps before 1900 on 64-bit hosts).  And some invalid
36941         time stamps were being accepted, e.g. September 31.
36942
36943         * lib/posixtm.h (posixtime): Return bool instead of time_t, so
36944         that we can return (time_t) -1 successfully.
36945         * lib/posixtm.c: Likewise.
36946         [HAVE_STDBOOL_H]: Include <stdbool.h>.
36947         (bool, false, true) [!HAVE_STDBOOL_H]: New type.
36948         (t): Remove static var.
36949         (year, posix_time_parse): Now takes struct tm * arg to modify, instead
36950         of static var.  All uses changed.
36951         (year): Do not reject years before 1900; they can occur with
36952         64-bit time_t.
36953         (posix_time_parse): Do not check for out-of-range components;
36954         that is now the caller's responsibility, since our checks were
36955         only approximations.
36956         (posixtime): Use mktime to check for out-of-range components,
36957         since it knows them exactly.
36958         If mktime returns (time_t) -1, check whether an error actually occurred
36959         by invoking localtime on -1.
36960         (main) [TEST_POSIXTIME]: Check for input data errors, and report
36961         posixtime failures better.
36962         Improve the test data (in comments only).
36963
36964 2003-06-02  Karl Berry  <karl@gnu.org>
36965
36966         * config/mkinstalldirs (version): new variable.
36967         (--version): new option.
36968         (usage): improve message.
36969
36970 2003-05-30  Karl Berry  <karl@gnu.org>
36971
36972         * lib/mktime.c: update from libc.
36973
36974 2003-05-30  Bruno Haible  <bruno@clisp.org>
36975
36976         * modules/gettext: Add files m4/nls.m4 and m4/po.m4.
36977         * config/config.rpath: Upgrade to gettext-0.12.1.
36978
36979 2003-05-30  Bruno Haible  <bruno@clisp.org>
36980
36981         * m4/gettext.m4: Upgrade to gettext-0.12.1.
36982         * m4/nls.m4: New file, from gettext-0.12.1.
36983         * m4/po.m4: New file, from gettext-0.12.1.
36984         * m4/progtest.m4: Upgrade to gettext-0.12.1.
36985
36986 2003-05-30  Bruno Haible  <bruno@clisp.org>
36987
36988         * lib/config.charset: Upgrade to gettext-0.12.1 and libiconv-1.9.1.
36989         * lib/localcharset.h: Likewise.
36990         * lib/localcharset.c: Likewise.
36991
36992 2003-05-29  Karl Berry  <karl@gnu.org>
36993
36994         * config/config.rpath: update from gettext.
36995
36996 2003-05-28  Paul Eggert  <eggert@twinsun.com>
36997
36998         Assume the headers required for C89 freestanding compilers.
36999         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for limits.h.
37000         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Likewise.
37001         * m4/human.m4 (gl_HUMAN): Likewise.
37002         * m4/pathmax.m4 (gl_PATHMAX): Likewise.
37003         * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Likewise.
37004         * m4/userspec.m4 (gl_USERSPEC): Likewise.
37005         * m4/xreadlink.m4 (gl_XREADLINK): Likewise.
37006         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
37007         * m4/quote.m4 (gl_QUOTE): Don't check for stddef.h.
37008
37009 2003-05-28  Paul Eggert  <eggert@twinsun.com>
37010
37011         Assume the headers required for C89 freestanding compilers.
37012         * lib/addext.c, lib/backupfile.c, lib/fsusage.c, lib/human.c,
37013         lib/pathmax.h, lib/rpmatch.c, lib/userspec.c, lib/xreadlink.c,
37014         lib/xstrtol.c: Include <limits.h> without checking for HAVE_LIMITS_H.
37015         * lib/backupfile.c, lib/fsusage.c, lib/hash.c, lib/human.c,
37016         lib/safe-read.c, lib/userspec.c, lib/xstrtol.c (CHAR_BIT): Don't
37017         define, since <limits.h> is guaranteed to do that.
37018         * lib/fatal.c: Include <stdarg.h> without checking for __STDC__.
37019         * lib/exclude.c: Include <stdbool.h> unconditionally.
37020         * lib/tempname.c: Include <stddef.h> unconditionally.
37021         * lib/hash.c: Include <limits.h>, since we no longer define CHAR_BIT.
37022         * lib/modechange.c, rpmatch.c (NULL): Don't define, since
37023         <stddef.h> does that.
37024         * lib/quote.c: Dont include <stddef.h> or <sys/types.h>; not needed.
37025         * lib/safe-read.c (INT_MAX): Don't define, since <limits.h> does that.
37026         * lib/safe-read.c (TYPE_MINIMUM, TYPE_MAXIMUM): Remove; no longer
37027         needed.
37028         * lib/xstrtol.c: Likewise.
37029         * lib/safe-read.c: Remove TYPE_SIGNED; no longer needed.
37030         * lib/savedir.c: Include <stddef.h> instead of defining NULL.
37031
37032         * lib/addext.c (addext): Use assignment rather than cast, to avoid
37033         warnings on some platforms.
37034
37035         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
37036         arbitrarily.
37037
37038 2003-05-26  Jim Meyering  <jim@meyering.net>
37039
37040         Merge in a change from coreutils:
37041         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Test the cache variable, not one
37042         that is guaranteed to be `no'.  Use `no_such_member' to indicate
37043         that condition, rather than `-1' which is slightly misleading.
37044         Change the name of the cache variable to have the gl_ prefix.
37045         Prompted by a patch from Richard Dawe for DJGPP.
37046
37047 2003-05-24  Karl Berry  <karl@gnu.org>
37048
37049         * config/config.guess: update from prep.
37050
37051 2003-05-22  Karl Berry  <karl@gnu.org>
37052
37053         * gnulib-tool (func_usage): =LIBRARY not =libRARY in help msg.
37054
37055 2003-05-20  Karl Berry  <karl@gnu.org>
37056
37057         * config/config.guess: update from prep.
37058
37059 2003-05-18  Karl Berry  <karl@gnu.org>
37060
37061         * config/srclistvars.sh (TEXMF): use TEXMFROOT instead, since TEXMF
37062         might actually be set by the user.
37063
37064         * config/depcomp, install-sh, mdate-sh: update from automake.
37065
37066 2003-05-17  Bruno Haible  <bruno@clisp.org>
37067
37068         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Fix a quoting bug leading to an
37069         invalid expansion for AC_EGREP_CPP.
37070         * m4/strtoimax.m4 (gl_FUNC_STRTOIMAX): Likewise.
37071         * m4/strtoumax.m4 (gl_FUNC_STRTOUMAX): Likewise.
37072         Suggested by Akim Demaille <akim@epita.fr> in
37073         http://mail.gnu.org/archive/html/bug-autoconf/2003-05/threads.html
37074
37075 2003-05-12  Jim Meyering  <jim@meyering.net>
37076
37077         * lib/strftime.c (my_strftime): Let the `-' (no-pad) flag affect
37078         the space-padded-by-default conversion specifiers, %e, %k, %l.
37079
37080 2003-05-12  Bruno Haible  <bruno@clisp.org>
37081
37082         * lib/linebreak.c (iconv_string_length): Don't return -1 just because
37083         the string is longer than 4 KB.
37084
37085 2003-05-11  Karl Berry  <karl@gnu.org>
37086
37087         * config/config.{guess,sub}: update from prep.
37088
37089 2003-05-09  Bruno Haible  <bruno@clisp.org>
37090
37091         * modules/error: Add m4/strerror_r.m4 to file list.
37092
37093 2003-05-03  Bruno Haible  <bruno@clisp.org>
37094
37095         Upgrade to Unicode-4.0.
37096         * lib/linebreak.c (nonspacing_table_data): Change width of U+00AD,
37097         U+0350..U+0357, U+035D..U+035F, U+0600..U+0603, U+0610..U+0615,
37098         U+0656..U+0658, U+0A01, U+0AE2..U+0AE3, U+0CBC, U+17B4..U+17B5,
37099         U+17DD, U+1920..U+1922, U+1927..U+192B, U+1932, U+1939..U+193B
37100         from 1 to 0. Change width of U+0CBF, U+0CC6, U+180E from 0 to 1.
37101         (uc_width): Change width of U+4DC0..U+4DFF from 2 to 1. Change width
37102         of U+2A6D7..U+2F7FF, U+2FA1E..U+2FFFD, U+30000..U+3FFFD from 1 to 2.
37103         Change width of U+E0100..U+E01EF from 1 to 0.
37104
37105 2003-04-25  Jim Meyering  <jim@meyering.net>
37106
37107         * lib/copy-file.c (copy_file_preserving): Declare buf_size to be
37108         of type size_t, not int.
37109
37110 2003-04-25  Bruno Haible  <bruno@clisp.org>
37111
37112         * lib/copy-file.c: Include <stddef.h>, for size_t.
37113
37114 2003-04-21  Paul Eggert  <eggert@twinsun.com>
37115
37116         * m4/error.m4 (gl_ERROR): Do not put under dynamic conditions some
37117         code which expansion is under static control.  Patch imported from
37118         Akim Demaille's patch to Bison; see
37119         <http://mail.gnu.org/archive/html/bison-patches/2003-03/msg00057.html>.
37120
37121 2003-04-14  Bruno Haible  <bruno@clisp.org>
37122
37123         * m4/error.m4 (jm_PREREQ_ERROR): Use AC_FUNC_VPRINTF.
37124
37125 2003-04-11  Jim Meyering  <jim@meyering.net>
37126
37127         Merge changes from Coreutils.
37128
37129         2003-03-22  Jim Meyering  <jim@meyering.net>
37130
37131         * lib/strftime.c (widen): Cast alloca return value to proper type.
37132
37133         2003-01-19  Ulrich Drepper  <drepper@redhat.com>
37134
37135         From GNU libc.
37136         * lib/strftime.c (my_strftime): Handle very large width
37137         specifications for numeric values correctly.  Improve checks for
37138         overflow.
37139
37140         2003-01-19  Jim Meyering  <jim@meyering.net>
37141
37142         * lib/strftime.c (widen) [COMPILE_WIDE]: Merge nearly-identical
37143         definitions.
37144         (nl_get_alt_digit) [! defined my_strftime]: Define.
37145         (my_strftime) [_NL_CURRENT]: Merge nearly-identical uses of
37146         _nl_get_alt_digit and _nl_get_walt_digit.
37147
37148         * lib/strftime.c (my_strftime): Merge in locale-related changes from
37149         libc. These changes have no effect outside of _LIBC.
37150
37151 2003-04-10  Bruno Haible  <bruno@clisp.org>
37152
37153         * modules/findprog: New file.
37154         * MODULES.html.sh (func_all_modules): Add it.
37155
37156 2003-04-10  Bruno Haible  <bruno@clisp.org>
37157
37158         * m4/findprog.m4: New file.
37159         * m4/eaccess.m4: New file.
37160
37161 2003-04-10  Bruno Haible  <bruno@clisp.org>
37162
37163         * lib/findprog.h: New file, from GNU gettext.
37164         * lib/findprog.c: New file, from GNU gettext.
37165
37166 2003-04-05  Jim Meyering  <jim@meyering.net>
37167
37168         Merge changes from Coreutils.
37169
37170         * lib/exclude.h (PARAMS): Remove definition and uses.
37171         * lib/exclude.c: Remove uses of `PARAMS'.
37172
37173         * lib/dirname.c [TEST_DIRNAME]: Update build instructions for test.
37174         Add test-cases for DOS filenames. Declare program_name.
37175         (main): Set up program_name.  Patch by Rich Dawe.
37176
37177         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
37178         error from mntctl.
37179         Use mntctl's return value to drive the entry-processing loop, since
37180         we can't rely on the value of the vmt_length member in the last
37181         entry.  On some systems doing so could result in exhausting
37182         virtual memory.  Based in part on a patch from Mike Jetzer.
37183
37184 2003-04-04  Bruno Haible  <bruno@clisp.org>
37185
37186         * modules/linebreak: New file.
37187         * MODULES.html.sh (func_all_modules): Add it.
37188
37189 2003-04-04  Bruno Haible  <bruno@clisp.org>
37190
37191         * m4/linebreak.m4: New file.
37192
37193 2003-04-04  Bruno Haible  <bruno@clisp.org>
37194
37195         * lib/linebreak.h: New file, from GNU gettext.
37196         * lib/linebreak.c: New file, from GNU gettext with slight
37197         modifications.
37198         * lib/lbrkprop.h: New file, from GNU gettext.
37199
37200 2003-04-03  Bruno Haible  <bruno@clisp.org>
37201
37202         * modules/utf8-ucs4: New file.
37203         * modules/utf16-ucs4: New file.
37204         * modules/ucs4-utf8: New file.
37205         * modules/ucs4-utf16: New file.
37206         * MODULES.html.sh (func_all_modules): Add them.
37207
37208 2003-04-03  Bruno Haible  <bruno@clisp.org>
37209
37210         * m4/utf-ucs4.m4: New file.
37211         * m4/ucs4-utf.m4: New file.
37212
37213 2003-04-03  Bruno Haible  <bruno@clisp.org>
37214
37215         * lib/utf8-ucs4.h: New file, from GNU gettext.
37216         * lib/utf16-ucs4.h: New file, from GNU gettext.
37217         * lib/ucs4-utf8.h: New file, from GNU gettext.
37218         * lib/ucs4-utf16.h: New file, from GNU gettext.
37219
37220 2003-04-02  Bruno Haible  <bruno@clisp.org>
37221
37222         * modules/binary-io: New file.
37223         * MODULES.html.sh (func_all_modules): Add it.
37224
37225 2003-04-02  Bruno Haible  <bruno@clisp.org>
37226
37227         * lib/binary-io.h: New file, from GNU gettext.
37228
37229 2003-04-01  Bruno Haible  <bruno@clisp.org>
37230
37231         * modules/pathname: New file.
37232         * MODULES.html.sh (func_all_modules): Add it.
37233
37234 2003-04-01  Bruno Haible  <bruno@clisp.org>
37235
37236         * lib/pathname.h: New file, from GNU gettext.
37237         * lib/concatpath.c: New file, from GNU gettext.
37238
37239 2003-03-30  Bruno Haible  <bruno@clisp.org>
37240
37241         * m4/copy-file.m4 (gl_COPY_FILE): Add check for chown().
37242
37243 2003-03-30  Bruno Haible  <bruno@clisp.org>
37244
37245         * lib/copy-file.c (copy_file_preserving): Don't set owner if the
37246         function chown() doesn't exist.
37247
37248 2003-03-28  Bruno Haible  <bruno@clisp.org>
37249
37250         * modules/copy-file: New file.
37251         * MODULES.html.sh (func_all_modules): Add it.
37252
37253 2003-03-28  Bruno Haible  <bruno@clisp.org>
37254
37255         * m4/copy-file.m4: New file.
37256
37257 2003-03-28  Bruno Haible  <bruno@clisp.org>
37258
37259         * lib/copy-file.h: New file, from GNU gettext.
37260         * lib/copy-file.c: New file, from GNU gettext.
37261
37262 2003-03-18  Jim Meyering  <jim@meyering.net>
37263
37264         * lib/quote.c (quote_n): Fix typo in comment.
37265
37266 2003-03-18  Bruno Haible  <bruno@clisp.org>
37267
37268         * m4/onceonly.m4: Use m4_defn instead of defn, for better error
37269         checking.
37270         * m4/onceonly_2_57.m4: Likewise.
37271
37272 2003-03-17  Bruno Haible  <bruno@clisp.org>
37273
37274         * m4/onceonly.m4: Require autoconf 2.54 or newer.
37275         (m4_quote): Remove macro.
37276         * m4/onceonly_2_57.m4: Require autoconf 2.54 or newer.
37277
37278 2003-03-14  Jim Meyering  <jim@meyering.net>
37279
37280         Merge changes from Coreutils.
37281         * lib/obstack.h (obstack_object_size): Declare temporary, __o,
37282         to be const, in order to avoid warnings.
37283         (obstack_room): Likewise.
37284         (obstack_empty_p): Likewise.
37285
37286 2003-03-14  Bruno Haible  <bruno@clisp.org>
37287
37288         * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE,
37289         AC_CHECK_DECLS_ONCE): Quote AC_FOREACH variable-expansions properly.
37290
37291 2003-03-13  Paul Eggert  <eggert@twinsun.com>
37292
37293         Merge changes from Bison.
37294         * lib/obstack.h: (__INT_TO_PTR) [__STDC__]: Cast result to
37295         (void *) to avoid diagnostic with native c89 on SGI IRIX 6.5
37296         when compiling Bison 1.875's `bitset bset = obstack_alloc
37297         (bobstack, bytes);'.  Problem reported by Nelson H. F. Beebe.
37298         * lib/hash.c: Include <stdbool.h> unconditionally.
37299
37300 2003-03-13  Paul Eggert  <eggert@twinsun.com>
37301
37302         * m4/onceonly.m4 (m4_quote): New macro.
37303         (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE, AC_CHECK_DECLS_ONCE):
37304         Quote AC_FOREACH variable-expansions properly.
37305
37306 2003-03-13  Paul Eggert  <eggert@twinsun.com>
37307
37308         * doc/COPYING.DOC, fdl.texi: Sync with latest FSF version.
37309
37310 2003-03-09  Paul Eggert  <eggert@twinsun.com>
37311
37312         * lib/argmatch.c (EXIT_FAILURE): Define if the system doesn't.
37313         Reported by Bruce Becker; see:
37314         http://mail.gnu.org/archive/html/bug-bison/2003-03/msg00017.html
37315
37316 2003-03-03  Paul Eggert  <eggert@twinsun.com>
37317             Bruno Haible  <bruno@clisp.org>
37318
37319         * lib/mbswidth.h: Include <wchar.h>. Needed for UnixWare 7.1.1.
37320         Reported by John Hughes, see
37321         http://mail.gnu.org/archive/html/bug-bison/2003-02/msg00030.html
37322
37323 2003-02-20  Bruno Haible  <bruno@clisp.org>
37324
37325         * MODULES.html.sh (func_all_modules): Add poll.
37326
37327 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
37328
37329         * modules/poll: New file.
37330
37331 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
37332
37333         * lib/poll_.h: New file.
37334         * lib/poll.c: New file.
37335
37336 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
37337
37338         * m4/poll.m4: New file.
37339
37340 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
37341
37342         * modules/mathl: New file.
37343
37344 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
37345
37346         * lib/mathl.h: New file.
37347         * lib/acosl.c: New file.
37348         * lib/asinl.c: New file.
37349         * lib/atanl.c: New file.
37350         * lib/ceill.c: New file.
37351         * lib/cosl.c: New file.
37352         * lib/expl.c: New file.
37353         * lib/floorl.c: New file.
37354         * lib/frexpl.c: New file.
37355         * lib/ldexpl.c: New file.
37356         * lib/logl.c: New file.
37357         * lib/sincosl.c: New file.
37358         * lib/sinl.c: New file.
37359         * lib/sqrtl.c: New file.
37360         * lib/tanl.c: New file.
37361         * lib/trigl.c: New file.
37362         * lib/trigl.h: New file.
37363
37364 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
37365
37366         * m4/mathl.m4: New file.
37367
37368 2003-02-18  Bruno Haible  <bruno@clisp.org>
37369
37370         * MODULES.html.sh (func_all_modules): Add mathl.
37371
37372 2003-02-17  Bruno Haible  <bruno@clisp.org>
37373
37374         * modules/mkdtemp: New module.
37375         * MODULES.html.sh (func_all_modules): Add it.
37376
37377 2003-02-17  Bruno Haible  <bruno@clisp.org>
37378
37379         * m4/mkdtemp.m4: New file, from GNU gettext with modifications.
37380
37381 2003-02-17  Bruno Haible  <bruno@clisp.org>
37382
37383         * lib/mkdtemp.h: New file, from GNU gettext.
37384         * lib/mkdtemp.c: New file, from GNU gettext.
37385
37386 2003-02-02  Jim Meyering  <jim@meyering.net>
37387
37388         * m4/regex.m4 (jm_INCLUDED_REGEX): Detect broken re_search in
37389         e.g. glibc-2.2.93.
37390
37391 2003-01-31  Bruno Haible  <bruno@clisp.org>
37392
37393         * m4/rename.m4 (vb_FUNC_RENAME): Add a redirection from 'rename' to
37394         'rpl_rename'.
37395         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Add a redirection from 'strnlen' to
37396         'rpl_strnlen'.
37397         * m4/strtod.m4 (gl_FUNC_STRTOD): Add a redirection from 'strtod' to
37398         'rpl_strtod'.
37399         * m4/utime.m4 (jm_FUNC_UTIME): Add a redirection from 'utime' to
37400         'rpl_utime'.
37401
37402 2003-01-31  Bruno Haible  <bruno@clisp.org>
37403
37404         * lib/rename.c: #undef rename before defining rpl_rename.
37405         * lib/strnlen.c: #undef strnlen, define rpl_strnlen instead of strnlen.
37406
37407 2003-01-30  Bruno Haible  <bruno@clisp.org>
37408
37409         * modules/vasnprintf, modules/vasprintf: New modules.
37410         * MODULES.html.sh (func_all_modules): Add them.
37411
37412 2003-01-30  Bruno Haible  <bruno@clisp.org>
37413
37414         * m4/signed.m4: New file, from GNU gettext.
37415         * m4/longdouble.m4: New file, from GNU gettext.
37416         * m4/wchar_t.m4: New file, from GNU gettext.
37417         * m4/wint_t.m4: New file, from GNU gettext.
37418         * m4/vasnprintf.m4: New file.
37419         * m4/vasprintf.m4: New file.
37420
37421 2003-01-30  Bruno Haible  <bruno@clisp.org>
37422
37423         * lib/printf-args.h: New file, from GNU gettext.
37424         * lib/printf-args.c: New file, from GNU gettext.
37425         * lib/printf-parse.h: New file, from GNU gettext.
37426         * lib/printf-parse.c: New file, from GNU gettext.
37427         * lib/vasnprintf.h: New file, from GNU gettext.
37428         * lib/vasnprintf.c: New file, from GNU gettext.
37429         * lib/asnprintf.c: New file, from GNU gettext.
37430         * lib/vasprintf.h: New file, from GNU gettext with modifications.
37431         * lib/vasprintf.c: New file, from GNU gettext.
37432         * lib/asprintf.c: New file, from GNU gettext.
37433
37434 2003-01-29  Bruno Haible  <bruno@clisp.org>
37435
37436         * modules/stpncpy: New module.
37437         * MODULES.html.sh (func_all_modules): Add it.
37438
37439 2003-01-29  Bruno Haible  <bruno@clisp.org>
37440
37441         * m4/stpncpy.m4: New file.
37442
37443 2003-01-29  Bruno Haible  <bruno@clisp.org>
37444
37445         * lib/stpncpy.h: New file, from GNU gettext with modifications.
37446         * lib/stpncpy.c: New file, from GNU gettext with modifications.
37447
37448 2003-01-28  Bruno Haible  <bruno@clisp.org>
37449
37450         * modules/c-ctype: New module.
37451         * MODULES.html.sh (func_all_modules): Add it.
37452
37453 2003-01-28  Bruno Haible  <bruno@clisp.org>
37454
37455         * lib/c-ctype.h: New file, from GNU gettext, with changes suggested by
37456         Paul Eggert.
37457         * lib/c-ctype.c: New file, from GNU gettext, with changes suggested by
37458         Paul Eggert.
37459
37460 2003-01-27  Bruno Haible  <bruno@clisp.org>
37461
37462         * modules/xsetenv: New module.
37463         * MODULES.html.sh (func_all_modules): Add it.
37464
37465 2003-01-27  Bruno Haible  <bruno@clisp.org>
37466
37467         * lib/xsetenv.h: New file, from GNU gettext.
37468         * lib/xsetenv.c: New file, from GNU gettext.
37469
37470 2003-01-23  Jim Meyering  <jim@meyering.net>
37471
37472         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Correct typo: s/-1/no/ that kept this
37473         from working on systems without dirfd (at least Irix and OSF1/Tru64).
37474
37475 2003-01-23  Bruno Haible  <bruno@clisp.org>
37476
37477         * modules/minmax: New module.
37478         * MODULES.html.sh (func_all_modules): Add it.
37479
37480 2003-01-23  Bruno Haible  <bruno@clisp.org>
37481
37482         * lib/minmax.h: New file, from GNU gettext, with comments from Paul
37483         Eggert.
37484
37485 2003-01-22  Bruno Haible  <bruno@clisp.org>
37486
37487         * modules/exit: New module.
37488         * MODULES.html.sh (func_all_modules): Add it.
37489
37490 2003-01-22  Bruno Haible  <bruno@clisp.org>
37491
37492         * lib/exit.h: New file, from GNU gettext.
37493
37494 2003-01-19  Bruno Haible  <bruno@clisp.org>
37495
37496         * gnulib-tool: Recognize option --extract-maintainer.
37497         (func_get_maintainer): New function.
37498         * modules/*: Add Maintainer entry.
37499
37500 2003-01-16  Jim Meyering  <jim@meyering.net>
37501
37502         * m4/regex.m4: The `regex' struct is both input and output.
37503         Initialize it before each use.  Patch by Tim Waugh.
37504
37505 2003-01-16  Bruno Haible  <bruno@clisp.org>
37506
37507         * MODULES.html.sh: Add a table of contents. Add the module name as
37508         leftmost column. Add hyperlinks.
37509
37510 2003-01-15  Bruno Haible  <bruno@clisp.org>
37511
37512         * m4/md5.m4 (gl_MD5): Require AC_C_INLINE.
37513
37514 2003-01-15  Bruno Haible  <bruno@clisp.org>
37515
37516         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): Also test the LL suffix.
37517         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Also test the ULL
37518         suffix.
37519
37520 2003-01-15  Bruno Haible  <bruno@clisp.org>
37521
37522         * m4/alloca.m4 (gl_FUNC_ALLOCA): Invoke AC_EGREP_CPP prerequisites.
37523
37524 2003-01-15  Bruno Haible  <bruno@clisp.org>
37525
37526         * lib/stpcpy.h (stpcpy): Use ANSI C function declarations.
37527         * lib/strcase.h (strcasecmp, strncasecmp): Likewise.
37528
37529 2003-01-14  Jim Meyering  <jim@meyering.net>
37530
37531         * lib/same.c (same_name): Tweak a comment.
37532
37533 2003-01-14  Bruno Haible  <bruno@clisp.org>
37534
37535         * lib/same.c (same_name): Reorder tests so as to avoid calling stat()
37536         when a string comparison is sufficient.
37537
37538 2003-01-14  Bruno Haible  <bruno@clisp.org>
37539
37540         * lib/readtokens.c (readtoken): Cast character to 'unsigned char', not
37541         'unsigned int'.
37542
37543 2003-01-14  Bruno Haible  <bruno@clisp.org>
37544
37545         * lib/hash-pjw.c: Add comment about low quality of this function.
37546
37547 2003-01-13  Bruno Haible  <bruno@clisp.org>
37548
37549         * modules/stpcpy: Distribute lib/stpcpy.h.
37550         * modules/setenv: Depend on alloca. Distribute lib/setenv.h.
37551
37552 2003-01-13  Bruno Haible  <bruno@clisp.org>
37553
37554         * modules/*: Add a description.
37555         * modules/strpbrk: Fix Makefile.am snippet.
37556         * modules/strtoimax: Fix dependencies.
37557         * modules/strtoumax: Likewise.
37558
37559 2003-01-13  Bruno Haible  <bruno@clisp.org>
37560
37561         * gnulib-tool (func_create_testdir): Substitute lib_OBJECTS.
37562         * modules/alloca (Makefile.am): All object files depend on alloca.h.
37563         * modules/stdbool (Makefile.am): All object files depend on stdbool.h.
37564
37565 2003-01-13  Bruno Haible  <bruno@clisp.org>
37566
37567         * gnulib-tool (func_create_testdir): Store config/* files in the main
37568         directory.
37569         * config.rpath: Move to ...
37570         * config/config.rpath: ... here.
37571         * modules/gettext: Contains config/config.rpath, not config.rpath.
37572         * modules/iconv: Likewise.
37573
37574 2003-01-12  Paul Eggert  <eggert@twinsun.com>
37575
37576         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
37577         to avoid collisions with libcurses and libreadline.
37578
37579         * m4/getstr.m4: Remove.
37580         * m4/getline.m4 (gl_PREREQ_GETLINE): Require AC_HEADER_STDC.
37581
37582 2003-01-12  Paul Eggert  <eggert@twinsun.com>
37583
37584         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
37585         to avoid collisions with libcurses and libreadline.
37586
37587         * lib/Makefile.am (libfetish_a_SOURCES): Remove getstr.c, getstr.h.
37588         * lib/getstr.h, getstr.c: Remove.
37589         * lib/getline.c: Include "getline.h", to check interface.
37590         Move body of old getstr.c here: this defines MIN_CHUNK and
37591         declares getdelim2, which is renamed from getstr.
37592         (getline, getdelim): Adjust to renaming of getstr -> getdelim2.
37593
37594         * lib/linebuffer.c (readlinebuffer): Renamed from readline.
37595         All uses changed.
37596         * lib/linebuffer.h: Likewise.
37597         (readline): Remove backward-compatibility macro.
37598
37599 2003-01-12  Paul Eggert  <eggert@twinsun.com>
37600
37601         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
37602         to avoid collisions with libcurses and libreadline.
37603         * getstr: Remove.
37604         * MODULES.html.sh: Remove getstr.
37605         * modules/getline: Depend on unlocked-io, not getstr.
37606
37607 2003-01-12  Jim Meyering  <jim@meyering.net>
37608
37609         * lib/makepath.c: Don't test HAVE_ERRNO_H.  It's not necessary.
37610
37611 2003-01-10  Bruno Haible  <bruno@clisp.org>
37612
37613         * modules/alloca: Change Makefile.am requirements. Simplify Include
37614         requirements. Add lib/alloca_.h to file list.
37615
37616 2003-01-10  Bruno Haible  <bruno@clisp.org>
37617
37618         * m4/alloca.m4 (gl_FUNC_ALLOCA): Also define ALLOCA_H.
37619
37620 2003-01-10  Bruno Haible  <bruno@clisp.org>
37621
37622         * lib/alloca_.h: New file.
37623         * lib/getdate.y: Unconditionally include alloca.h.
37624         * lib/makepath.c: Likewise.
37625         * lib/setenv.c: Likewise.
37626         * lib/userspec.c: Likewise.
37627
37628 2003-01-09  Karl Berry  <karl@gnu.org>
37629
37630         * MODULES.html.sh: include `dirname $0` in PATH, to find
37631         gnulib-tool.
37632
37633 2003-01-09  Bruno Haible  <bruno@clisp.org>
37634
37635         * modules/stdbool: Change configure.ac, Makefile.am requirements.
37636         Simplify Include requirements. Add lib/stdbool.h.in to file list.
37637
37638 2003-01-09  Bruno Haible  <bruno@clisp.org>
37639
37640         * m4/stdbool.m4 (AM_STDBOOL_H): New macro.
37641
37642 2003-01-09  Bruno Haible  <bruno@clisp.org>
37643
37644         * lib/stdbool.h.in: New file.
37645
37646 2003-01-09  Bruno Haible  <bruno@clisp.org>
37647
37648         * gnulib-tool (func_all_modules): Ignore files ending in ~.
37649         * MODULES.html.sh: Likewise.
37650
37651 2003-01-08  Jim Meyering  <jim@meyering.net>
37652
37653         * lib/full-write.c: Undefine and define-away `const' after inclusion
37654         of errno.h, not before.  Suggestion from Bruno Haible.
37655
37656 2003-01-08  Bruno Haible  <bruno@clisp.org>
37657
37658         * modules/full-read: Depend on full-write.
37659
37660 2003-01-08  Bruno Haible  <bruno@clisp.org>
37661
37662         * lib/safe-read.c: Include specification header first, to ensure its
37663         selfcontainedness.
37664         * lib/full-write.c: Likewise.
37665
37666 2003-01-07  Jim Meyering  <jim@meyering.net>
37667
37668         * lib/full-write.c: Rework so that it may serve to define full_read,
37669         too.
37670         * lib/full-read.c: Simply #define FULL_READ and include full-write.c.
37671
37672 2003-01-07  Bruno Haible  <bruno@clisp.org>
37673
37674         * lib/strtoimax.c: Include <stdint.h> as an alternative to
37675         <inttypes.h>.
37676         * lib/xstrtol.h: Likewise.
37677         * lib/xstrtoimax.c: Likewise.
37678         * lib/xstrtoumax.c: Likewise.
37679         * lib/human.h: Likewise.
37680
37681         * lib/tempname.c: Include <inttypes.h> too. Avoids a compilation error
37682         on systems that have <inttypes.h> but not <stdint.h>.
37683
37684 2003-01-07  Bruno Haible  <bruno@clisp.org>
37685
37686         * MODULES.html.sh: Add copyright notice.
37687         (missed_files): Omit CVS directory entries.
37688         (func_module): Make it work with sed-3.02.
37689         * MODULES.txt: Remove file.
37690
37691 2003-01-06  Jim Meyering  <jim@meyering.net>
37692
37693         * lib/version-etc.c: Update year in translatable copyright string.
37694
37695 2003-01-03  Karl Berry  <karl@gnu.org>
37696
37697         * config/config.{guess,sub}: update from prep.
37698
37699 2003-01-02  Karl Berry  <karl@gnu.org>
37700
37701         * doc/COPYING.DOC: belatedly updated to 1.2.
37702
37703 2003-01-01  Karl Berry  <karl@gnu.org>
37704
37705         * gnulib-tool (func_verify_module): report module name $module in
37706         error message, not $1.
37707         * gnulib-tool (create-testdir): don't complain if destdir couldn't
37708         be created, only if it doesn't exist.
37709         * gnulib-tool (last_checkin_date): don't expand the $Date here.
37710
37711 2002-12-31  Paul Eggert  <eggert@twinsun.com>
37712
37713         * m4/memcoll.m4 (gl_MEMCOLL): Require AC_FUNC_MEMCMP.
37714
37715 2002-12-31  Paul Eggert  <eggert@twinsun.com>
37716
37717         * lib/memcoll.c (memcoll): Fall back on a simple algorithm using
37718         memcmp if strcoll doesn't work.
37719
37720 2002-12-31  Bruno Haible  <bruno@clisp.org>
37721
37722         * lib/utime.c (utime_null): No need to call ftruncate if the file was
37723         nonempty.
37724
37725 2002-12-31  Bruno Haible  <bruno@clisp.org>
37726
37727         * lib/memcoll.c (STRCOLL): New macro.
37728         (memcoll): Use it.
37729
37730 2002-12-31  Bruno Haible  <bruno@clisp.org>
37731
37732         * lib/localcharset.h: New file.
37733         * lib/localcharset.c: Include it.
37734         * lib/unicodeio.c: Likewise.
37735
37736 2002-12-31  Bruno Haible  <bruno@clisp.org>
37737
37738         * lib/getstr.h (getstr): Define, to avoid clash with libcurses.
37739         * lib/linebuffer.h (readline): Define, to avoid clash with libreadline.
37740
37741 2002-12-31  Bruno Haible  <bruno@clisp.org>
37742
37743         * lib/getline.h: Include <stddef.h>, for size_t.
37744
37745         * lib/unicodeio.h: Include <stddef.h>, for size_t.
37746         * lib/unicodeio.c: Don't include <stddef.h>.
37747
37748 2002-12-31  Bruno Haible  <bruno@clisp.org>
37749
37750         * lib/getdate.y (get_date): Test HAVE_STRUCT_TM_TM_ZONE, not
37751         HAVE_TM_ZONE.
37752
37753 2002-12-24  Karl Berry  <karl@gnu.org>
37754
37755         * config/config.guess: update from prep.
37756
37757 2002-12-24  Bruno Haible  <bruno@clisp.org>
37758
37759         General infrasructure.
37760         * m4/README: Rewritten.
37761         * m4/onceonly.m4: New file.
37762         * m4/onceonly_2_57.m4: New file.
37763
37764         Module atexit.
37765         * m4/atexit.m4: New file.
37766
37767         Module strtod.
37768         * m4/strtod.m4: New file.
37769
37770         Module strtol.
37771         * m4/strtol.m4: New file.
37772
37773         Module strtoul.
37774         * m4/strtoul.m4: New file.
37775
37776         Module memchr.
37777         * m4/memchr.m4: New file.
37778
37779         Module memcmp.
37780         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): New macro.
37781         (jm_FUNC_MEMCMP): Invoke it.
37782
37783         Module memcpy.
37784         * m4/memcpy.m4: New file.
37785
37786         Module memmove.
37787         * m4/memmove.m4: New file.
37788
37789         Module memset.
37790         * m4/memset.m4: New file.
37791
37792         Module strcspn.
37793         * m4/strcspn.m4: New file.
37794
37795         Module strpbrk.
37796         * m4/strpbrk.m4: New file.
37797
37798         Module strstr.
37799         * m4/strstr.m4: New file.
37800
37801         Module strerror.
37802         * m4/strerror.m4: New file.
37803
37804         Module mktime.
37805         * m4/mktime.m4: Renamed from jm-mktime.m4.
37806         (gl_PREREQ_MKTIME): New macro.
37807         (gl_FUNC_MKTIME): Renamed from jm_FUNC_MKTIME. Invoke gl_PREREQ_MKTIME.
37808
37809         Module malloc.
37810         * m4/malloc.m4 (gl_PREREQ_MALLOC): New macro.
37811         (jm_FUNC_MALLOC): Use AC_FUNC_MALLOC. Invoke gl_PREREQ_MALLOC.
37812         Don't define HAVE_DONE_WORKING_MALLOC_CHECK, since nothing uses it.
37813
37814         Module realloc.
37815         * m4/realloc.m4 (gl_PREREQ_REALLOC): New macro.
37816         (jm_FUNC_REALLOC): Use AC_FUNC_REALLOC. Invoke gl_PREREQ_REALLOC.
37817         Don't define HAVE_DONE_WORKING_REALLOC_CHECK, since nothing uses it.
37818
37819         Module strftime.
37820         * m4/tm_gmtoff.m4: New file, extracted from strftime.m4.
37821         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Use AC_FUNC_STRFTIME.
37822         Don't test for bcopy (we are not emacs). Invoke AC_TYPE_MBSTATE_T and
37823         gl_TM_GMTOFF.
37824         (_jm_STRFTIME_PREREQS, jm_FUNC_GNU_STRFTIME): Use onceonly macros.
37825
37826         Module xalloc.
37827         * m4/xalloc.m4: New file.
37828
37829         Module alloca.
37830         * m4/alloca.m4: New file.
37831
37832         Module putenv.
37833         * m4/putenv.m4 (gl_PREREQ_PUTENV): New macro.
37834         (jm_FUNC_PUTENV): Invoke it.
37835
37836         Module setenv.
37837         * m4/setenv.m4 (gt_FUNC_SETENV): New macro.
37838         (gt_CHECK_VAR_DECL): Fix quoting error that led to infinite loop in m4
37839         when invoked twice.
37840         (gt_PREREQ_SETENV, gt_PREREQ_UNSETENV): New macros, replacing old
37841         gt_FUNC_SETENV.
37842
37843         Module memrchr.
37844         * m4/memrchr.m4: New file.
37845
37846         Module stpcpy.
37847         * m4/stpcpy.m4: New file.
37848
37849         Module strcase.
37850         * m4/strcase.m4: New file.
37851
37852         Module strdup.
37853         * m4/strdup.m4: New file.
37854
37855         Module strnlen.
37856         * m4/strnlen.m4: New file.
37857
37858         Module strndup.
37859         * m4/strndup.m4: New file.
37860
37861         Module xstrtod.
37862         * m4/xstrtod.m4: New file.
37863
37864         Module xstrtol.
37865         * m4/xstrtol.m4: New file.
37866
37867         Module getdate.
37868         * m4/getdate.m4: New file.
37869
37870         Module unlocked-io.
37871         * m4/unlocked-io.m4: Renamed from jm-glibc-io.m4.
37872         (jm_FUNC_GLIBC_UNLOCKED_IO): Invoke AC_GNU_SOURCE. Use onceonly macros.
37873         * m4/jm-glibc-io.m4n: Remove file.
37874
37875         Module long-options.
37876         * m4/long-options.m4: New file.
37877
37878         Module md5.
37879         * m4/md5.m4: New file.
37880
37881         Module sha.
37882         * m4/sha.m4: New file.
37883
37884         Module getstr.
37885         * m4/getstr.m4: New file.
37886
37887         Module getline.
37888         * m4/getline.m4 (gl_PREREQ_GETLINE): New macro.
37889         (AM_FUNC_GETLINE): Invoke AC_GNU_SOURCE. Use <stdlib.h>, not
37890         <sys/types.h>, for size_t. Use the function name gnu_getline, not
37891         simply getline. Infoke gl_PREREQ_GETLINE.
37892
37893         Module obstack.
37894         * m4/obstack.m4: New file.
37895
37896         Module hash.
37897         * m4/hash.m4: New file.
37898
37899         Module readtokens.
37900         * m4/readtokens.m4: New file.
37901
37902         Module strverscmp.
37903         * m4/strverscmp.m4: New file.
37904
37905         Module stdbool.
37906         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Add test for _Bool. Needed for
37907         OSF/1.
37908
37909         Module strtoll.
37910         * m4/strtoll.m4: New file.
37911
37912         Module strtoull.
37913         * m4/strtoull.m4: New file.
37914
37915         Module strtoimax.
37916         * m4/strtoimax.m4: New file.
37917
37918         Module strtoumax.
37919         * m4/strtoumax.m4: New file.
37920
37921         Module xstrtoimax.
37922         * m4/xstrtoimax.m4 (jm_XSTRTOIMAX): Renamed from
37923         jm_AC_PREREQ_XSTRTOIMAX.
37924         Moved the strtol prerequisites to strtol.m4.
37925         Moved the strtoll prerequisites to strtoll.m4.
37926         Moved the strtoimax prerequisites to strtoimax.m4.
37927
37928         Module xstrtoumax.
37929         * m4/xstrtoumax.m4 (jm_XSTRTOUMAX): Renamed from
37930         jm_AC_PREREQ_XSTRTOUMAX.
37931         Moved the strtoul prerequisites to strtoul.m4.
37932         Moved the strtoull prerequisites to strtoull.m4.
37933         Moved the strtoumax prerequisites to strtoumax.m4.
37934
37935         Module chown.
37936         * m4/chown.m4 (gl_PREREQ_CHOWN): New macro.
37937         (jm_FUNC_CHOWN): Use AC_FUNC_CHOWN. Invoke gl_PREREQ_CHOWN.
37938
37939         Module dup2.
37940         * m4/dup2.m4: New file.
37941
37942         Module ftruncate.
37943         * m4/ftruncate.m4 (gl_PREREQ_FTRUNCATE): New macro.
37944         (jm_FUNC_FTRUNCATE): Use AC_REPLACE_FUNCS. Invoke gl_PREREQ_FTRUNCATE.
37945
37946         Module getgroups.
37947         * m4/getgroups.m4 (gl_PREREQ_GETGROUPS): New macro.
37948         (jm_FUNC_GETGROUPS): Use AC_FUNC_GETGROUPS. Invoke gl_PREREQ_GETGROUPS.
37949
37950         Module gettimeofday.
37951         * m4/gettimeofday.m4 (gl_PREREQ_GETTIMEOFDAY): New macro.
37952         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use onceonly macros. Invoke
37953         gl_PREREQ_GETTIMEOFDAY.
37954
37955         Module mkdir.
37956         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): New macro.
37957         (UTILS_FUNC_MKDIR_TRAILING_SLASH): Invoke gl_PREREQ_MKDIR.
37958
37959         Module mkstemp.
37960         * m4/mkstemp.m4 (gl_PREREQ_MKSTEMP): New macro.
37961         (jm_PREREQ_TEMPNAME): New macro, from prereq.m4. Also invoke
37962         jm_AC_TYPE_UINTMAX_T.
37963         (UTILS_FUNC_MKSTEMP): Invoke gl_PREREQ_MKSTEMP and jm_PREREQ_TEMPNAME.
37964
37965         Module stat.
37966         * m4/stat.m4 (gl_PREREQ_STAT): New macro.
37967         (jm_FUNC_STAT): Use AC_FUNC_STAT. Invoke gl_PREREQ_STAT.
37968
37969         Module lstat.
37970         * m4/lstat.m4 (gl_PREREQ_LSTAT): New macro.
37971         (jm_FUNC_LSTAT): Use AC_FUNC_LSTAT. Invoke gl_PREREQ_LSTAT.
37972
37973         Module timespec.
37974         * m4/timespec.m4 (gl_TIMESPEC): New macro.
37975         (jm_CHECK_TYPE_STRUCT_TIMESPEC): Add check for <sys/time.h>.
37976         * m4/st_mtim.m4: Indentation.
37977
37978         Module nanosleep.
37979         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): New macro.
37980         (jm_FUNC_NANOSLEEP): Add check for <sys/time.h>. Invoke
37981         gl_PREREQ_NANOSLEEP.
37982
37983         Module regex.
37984         * m4/regex.m4 (jm_PREREQ_REGEX): New macro.
37985         (jm_INCLUDED_REGEX): Invoke jm_PREREQ_REGEX.
37986         (gl_REGEX): New macro.
37987
37988         Module rename.
37989         * m4/rename.m4 (gl_PREREQ_RENAME): New macro.
37990         (vb_FUNC_RENAME): Invoke gl_PREREQ_RENAME.
37991
37992         Module rmdir.
37993         * m4/rmdir.m4: New file.
37994
37995         Module utime.
37996         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Use onceonly macros.
37997         * m4/utime.m4 (gl_PREREQ_UTIME): New macro.
37998         (jm_FUNC_UTIME): Invoke gl_PREREQ_UTIME.
37999
38000         Module dirname.
38001         * m4/dirname.m4: New file.
38002
38003         Module getopt.
38004         * m4/getopt.m4: New file.
38005
38006         Module unistd-safer.
38007         * m4/unistd-safer.m4: New file.
38008
38009         Module fnmatch.
38010         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Include <stdlib.h>, for exit()
38011         declaration.
38012         (gl_PREREQ_FNMATCH_EXTRA): New macro.
38013         (gl_FUNC_FNMATCH_POSIX): New macro.
38014         (gl_FUNC_FNMATCH_GNU): Renamed from AC_FUNC_FNMATCH_GNU. Invoke
38015         gl_PREREQ_FNMATCH_EXTRA. Use the function name gnu_fnmatch, not
38016         simply fnmatch.
38017
38018         Module exclude.
38019         * m4/exclude.m4: New file.
38020
38021         Module human.
38022         * m4/human.m4: New file.
38023
38024         Module acl.
38025         * m4/acl.m4: Nop.
38026
38027         Module backupfile.
38028         * m4/backupfile.m4: New file.
38029         * m4/d-ino.m4: Indentation.
38030
38031         Module fsusage.
38032         * m4/fsusage.m4 (gl_FSUSAGE): New macro.
38033         (jm_STATFS_TRUNCATES): New macro, from coreutils-4.5.4/configure.ac.
38034         (gl_PREREQ_FSUSAGE_EXTRA): New macro.
38035
38036         Module dirfd.
38037         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Invoke some AC_EGREP_CPP
38038         requirements.
38039
38040         Module euidaccess.
38041         * m4/euidaccess.m4: New file.
38042
38043         Module file-type.
38044         * m4/file-type.m4: New file.
38045
38046         Module fileblocks.
38047         * m4/fileblocks.m4: New file.
38048
38049         Module filemode.
38050         * m4/filemode.m4: New file.
38051
38052         Module isdir.
38053         * m4/isdir.m4: New file.
38054
38055         Module lchown.
38056         * m4/lchown.m4 (gl_PREREQ_LCHOWN): New macro.
38057         (jm_FUNC_LCHOWN): Invoke gl_PREREQ_LCHOWN.
38058
38059         Module makepath.
38060         * m4/makepath.m4: New file.
38061
38062         Module modechange.
38063         * m4/modechange.m4: New file.
38064
38065         Module mountlist.
38066         * m4/mountlist.m4: New file.
38067         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Use onceonly macros.
38068         Indentation.
38069
38070         Module path-concat.
38071         * m4/path-concat.m4: New file.
38072
38073         Module pathmax.
38074         * m4/pathmax.m4: New file.
38075
38076         Module same.
38077         * m4/same.m4: New file.
38078
38079         Module save-cwd.
38080         * m4/save-cwd.m4: New file.
38081
38082         Module savedir.
38083         * m4/savedir.m4: New file.
38084
38085         Module xgetcwd.
38086         * m4/xgetcwd.m4: New file.
38087         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Use onceonly macros.
38088
38089         Module xreadlink.
38090         * m4/xreadlink.m4: New file.
38091
38092         Module safe-read.
38093         * m4/safe-read.m4: New file.
38094
38095         Module safe-write.
38096         * m4/safe-write.m4: New file.
38097
38098         Module closeout.
38099         * m4/closeout.m4: New file.
38100
38101         Module stdio-safer.
38102         * m4/stdio-safer.m4: New file.
38103
38104         Module getpass.
38105         * m4/getpass.m4: New file.
38106
38107         Module getugroups.
38108         * m4/getugroups.m4: New file.
38109
38110         Module group-member.
38111         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): New macro.
38112         (jm_FUNC_GROUP_MEMBER): Invoke AC_GNU_SOURCE, gl_PREREQ_GROUP_MEMBER.
38113
38114         Module idcache.
38115         * m4/idcache.m4: New file.
38116
38117         Module userspec.
38118         * m4/userspec.m4: New file.
38119
38120         Module gettime.
38121         * m4/clock_time.m4: New file.
38122         * m4/gettime.m4: New file.
38123
38124         Module settime.
38125         * m4/settime.m4: New file.
38126
38127         Module posixtm.
38128         * m4/posixtm.m4: New file.
38129
38130         Module gethostname.
38131         * m4/gethostname.m4: New file.
38132
38133         Module canon-host.
38134         * m4/canon-host.m4: New file.
38135
38136         Module gettext.
38137         * m4/codeset.m4: New file, from gettext-0.11.5.
38138         * m4/gettext.m4: New file, from gettext-0.11.5.
38139         * m4/glibc21.m4: New file, from gettext-0.11.5.
38140         * m4/iconv.m4: New file, from gettext-0.11.5.
38141         * m4/intdiv0.m4: New file, from gettext-0.11.5.
38142         * m4/inttypes-pri.m4: New file, from gettext-0.11.5.
38143         * m4/inttypes.m4: New file, from gettext-0.11.5.
38144         * m4/inttypes_h.m4: New file, from gettext-0.11.5 with modifications.
38145         * m4/isc-posix.m4: New file, from gettext-0.11.5.
38146         * m4/lcmessage.m4: New file, from gettext-0.11.5.
38147         * m4/lib-ld.m4: New file, from gettext-0.11.5.
38148         * m4/lib-link.m4: New file, from gettext-0.11.5.
38149         * m4/lib-prefix.m4: New file, from gettext-0.11.5.
38150         * m4/progtest.m4: New file, from gettext-0.11.5.
38151         * m4/stdint_h.m4: New file, from gettext-0.11.5 with modifications.
38152         * m4/uintmax_t.m4: New file, from gettext-0.11.5 with modifications.
38153         * m4/ulonglong.m4: New file, from gettext-0.11.5 with modifications.
38154
38155         Module localcharset.
38156         * m4/localcharset.m4: New file.
38157
38158         Module hard-locale.
38159         * m4/hard-locale.m4: New file.
38160
38161         Module mbswidth.
38162         * m4/mbswidth.m4 (gl_MBSWIDTH): Renamed from jm_PREREQ_MBSWIDTH. Use
38163         onceonly macros.
38164         * m4/mbrtowc.m4: Add comment.
38165
38166         Module memcasecmp.
38167         * m4/memcasecmp.m4: New file.
38168
38169         Module memcoll.
38170         * m4/memcoll.m4: New file.
38171
38172         Module unicodeio.
38173         * m4/unicodeio.m4: New file.
38174
38175         Module rpmatch.
38176         * m4/rpmatch.m4: New file.
38177
38178         Module yesno.
38179         * m4/yesno.m4: New file.
38180
38181         Module exitfail.
38182         * m4/exitfail.m4: New file.
38183
38184         Module c-stack.
38185         * m4/c-stack.m4 (gl_C_STACK): New macro.
38186         (jm_PREREQ_C_STACK): Check for <sys/time.h>. Use onceonly macros.
38187
38188         Module error.
38189         * m4/error.m4 (gl_ERROR): New macro.
38190         (jm_PREREQ_ERROR): Use onceonly macros.
38191
38192         Module fatal.
38193         * m4/fatal.m4: New file.
38194
38195         Module getloadavg.
38196         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Use onceonly macros.
38197         (gl_FUNC_GETLOADAVG, gl_PREREQ_GETLOADAVG): New macros.
38198
38199         Module getpagesize.
38200         * m4/getpagesize.m4: New file.
38201
38202         Module getusershell.
38203         * m4/getusershell.m4: New file.
38204
38205         Module physmem.
38206         * m4/physmem.m4: New file.
38207
38208         Module posixver.
38209         * m4/posixver.m4: New file.
38210
38211         Module quotearg.
38212         * m4/quotearg.m4: New file.
38213
38214         Module quote.
38215         * m4/quote.m4: New file.
38216
38217         Module readutmp.
38218         * m4/readutmp.m4: New file, based on jm_PREREQ_READUTMP from prereq.m4.
38219
38220         Module sig2str.
38221         * m4/sig2str.m4: New file.
38222
38223         Other.
38224         * m4/longlong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Remove, moved to
38225         ulonglong.m4.
38226         * m4/intmax_t.m4: New file.
38227         * m4/d-type.m4: Indentation.
38228         * m4/jm-macros.m4: Update.
38229         * m4/prereq.m4 (jm_PREREQ): Update.
38230         (jm_PREREQ_ADDEXT): Remove, obsoleted by backupfile.m4.
38231         (jm_PREREQ_CANON_HOST): Remove, obsoleted by canon-host.m4.
38232         (jm_PREREQ_DIRNAME): Remove, obsoleted by dirname.m4.
38233         (jm_PREREQ_EXCLUDE): Remove, obsoleted by exclude.m4.
38234         (jm_PREREQ_GETPAGESIZE): Remove, obsoleted by getpagesize.m4.
38235         (jm_PREREQ_HARD_LOCALE): Remove, obsoleted by hard-locale.m4.
38236         (jm_PREREQ_HASH): Remove, obsoleted by hash.m4.
38237         (jm_PREREQ_HUMAN): Remove, obsoleted by human.m4.
38238         (jm_PREREQ_MEMCHR): Remove, obsoleted by memchr.m4.
38239         (jm_PREREQ_PHYSMEM): Remove, obsoleted by physmem.m4.
38240         (jm_PREREQ_POSIXVER): Remove, obsoleted by posixver.m4.
38241         (jm_PREREQ_QUOTEARG): Remove, obsoleted by quotearg.m4.
38242         (jm_PREREQ_READUTMP): Remove, obsoleted by readutmp.m4.
38243         (jm_PREREQ_REGEX): Remove, obsoleted by regex.m4.
38244         (jm_PREREQ_STRNLEN): Remove, obsoleted by strnlen.m4.
38245         (jm_PREREQ_TEMPNAME): Remove, obsoleted by mkstemp.m4.
38246         (jm_PREREQ_XGETCWD): Remove, obsoleted by xgetcwd.m4.
38247         (jm_PREREQ_XREADLINK): Remove, obsoleted by xreadlink.m4.
38248         * m4/readdir.m4 (jm_FUNC_READDIR): Use onceonly macros.
38249
38250 2002-12-24  Bruno Haible  <bruno@clisp.org>
38251
38252         * MODULES.txt: Update according to m4/ changes.
38253
38254         Module gettext.
38255         * config.rpath: New file, from gettext-0.11.5.
38256
38257         * modules/*: New module descriptions.
38258         * gnulib-tool: New file.
38259         * MODULES.html.sh: New file.
38260
38261 2002-12-21  Karl Berry  <karl@gnu.org>
38262
38263         * doc/fdl.texi: update to version 1.2.
38264
38265 2002-12-19  Karl Berry  <karl@gnu.org>
38266
38267         * config/config.guess: update from prep.
38268
38269 2002-12-18  Bruno Haible  <bruno@clisp.org>
38270
38271         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't test for localtime_r.
38272         * m4/jm-mktime.m4 (jm_FUNC_MKTIME): Likewise.
38273
38274 2002-12-17  Bruno Haible  <bruno@clisp.org>
38275
38276         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Remove checks for limits.h,
38277         stdlib.h, string.h.
38278
38279 2002-12-17  Bruno Haible  <bruno@clisp.org>
38280
38281         * lib/canon-host.c (strdup): Remove unused declaration.
38282
38283         * lib/fsusage.c: Include full_read.h.
38284         (get_fs_usage): Use full_read instead of safe_read.
38285
38286         * lib/utime.c (utime_null): Use SAFE_READ_ERROR.
38287
38288 2002-12-12  Karl Berry  <karl@gnu.org>
38289
38290         * config/config.guess: update from prep.
38291
38292 2002-12-11  Bruno Haible  <bruno@clisp.org>
38293
38294         * m4/setenv.m4: New file, from gettext-0.11.5.
38295
38296 2002-12-11  Bruno Haible  <bruno@clisp.org>
38297
38298         * lib/setenv.h: Rewritten to cope with systems that have setenv() but
38299         not unsetenv().
38300         * lib/setenv.c, unsetenv.c: Taken from glibc-2.2.4 with the following
38301         modifications:
38302
38303         2002-12-11  Bruno Haible  <bruno@clisp.org>
38304
38305                 * setenv.c (alloca): Fall back to malloc.
38306                 (freea): New macro.
38307                 (setenv): Use freea() to free memory allocated with alloca().
38308
38309         2002-11-13  Bruno Haible  <bruno@clisp.org>
38310
38311                 * setenv.c (compar_fn_t, __add_to_environ, setenv): Use ANSI C
38312                 function declarations.
38313                 * unsetenv.c (unsetenv): Likewise.
38314
38315         2002-03-04  Bruno Haible  <bruno@clisp.org>
38316
38317                 Portability to AIX 4.3.3.
38318                 * unsetenv.c: New file, extracted from setenv.c.
38319                 * setenv.c: Move the unsetenv() function to unsetenv.c.
38320
38321         2001-12-20  Bruno Haible  <bruno@clisp.org>
38322
38323                 * setenv.c (__add_to_environ): Don't call realloc(NULL,...),
38324                 use malloc instead. For SunOS 4.
38325
38326         2001-12-11  Bruno Haible  <bruno@clisp.org>
38327
38328                 * setenv.c: Declare alloca.
38329                 (compar_fn_t): New typedef.
38330                 (KNOWN_VALUE, STORE_VALUE): Use it.
38331
38332         * lib/Makefile.am (libfetish_a_SOURCES): Add setenv.c, unsetenv.c,
38333         setenv.h.
38334
38335 2002-12-10  Paul Eggert  <eggert@twinsun.com>
38336
38337         Port exclude.c and exclude.h to more non-GNU systems, e.g. Solaris 7.
38338         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE, EXCLUDE_WILDCARDS):
38339         Choose values that are less likely to collide with system fnmatch
38340         options.
38341         * lib/exclude.c (FNM_CASEFOLD, FNM_LEADING_DIR): Define to 0 if not
38342         defined (e.g., a pure POSIX system).
38343         (EXCLUDE_macros_do_not_collide_with_FNM_macros): Use FNM_PATHNAME
38344         instead of FNM_FILE_NAME, for compatibility with pure POSIX sytems.
38345
38346 2002-12-06  Paul Eggert  <eggert@twinsun.com>
38347
38348         Undo the 2001-07-02 change for jm-glibc-io, as it was too much of
38349         a pain in practice to deal with generated m4 files.  This change
38350         goes together with the 2002-12-04 unlocked-io.h change in ../lib.
38351
38352         * m4/Makefile.am.in (Makefile.am): Don't mention jm-glibc-io.m4n
38353         and jm-glibc-io.m4, as they are no longer a special case.
38354         * m4/jm-glibc-io.m4: Rename from jm-glibc-io.m4n, and remove the
38355         kludge and the auto-generation stuff.  Check only whether the
38356         functions are declared, not whether they exist, since older hosts
38357         that don't declare the functions can't use the optimization anyway.
38358
38359 2002-12-06  Jim Meyering  <jim@meyering.net>
38360
38361         * lib/error.c: Be consistent: change `#ifndef _LIBC' to `#if !_LIBC'.
38362
38363         Merge in changes from libc's misc/error.c, in preparation
38364         for the merge of gnulib's changes back into libc.
38365
38366         * lib/error.c (_): Define only if not already defined.
38367         Move definition to follow all #include directives.
38368         Include unlocked-io.h only if !_LIBC.
38369         [_LIBC]: Include <libio/libioP.h>.
38370         [USE_IN_LIBIO]: Include <libio/iolibio.h>
38371         (fflush): Tweak definition to use INTUSE.
38372         (putc): Define.
38373
38374 2002-12-05  Paul Eggert  <eggert@twinsun.com>
38375
38376         * lib/alloca.c [defined emacs]: Include "lisp.h".
38377         (xalloc_die) [defined emacs]: New macro.
38378         (free) [defined emacs && defined EMACS_FREE]: Define to EMACS_FREE.
38379         [! defined emacs]: Include <xalloc.h>.
38380         (POINTER_TYPE) [!defined POINTER_TYPE]: New macro.
38381         (pointer): Typedef to POINTER_TYPE *.
38382         (malloc): Remove decl; we now always use xmalloc.
38383         (alloca): Use old-style definition, since Emacs needs this.
38384         Check for arithmetic overflow when computing combined size.
38385
38386 2002-12-04  Paul Eggert  <eggert@twinsun.com>
38387
38388         Do not generate unlocked-io.h automatically, since it's easier to
38389         maintain it by hand.
38390
38391         * lib/unlocked-io.h: New file, from GNU diffutils,
38392         but with proper copyright notice and attribution.
38393         * lib/gen-uio: Remove.
38394         * lib/Makefile.am: Add copyright notice.
38395         (libfetish_a_SOURCES): Add unlocked-io.h.
38396         (BUILT_SOURCES, all-local): Remove unlocked-io.h.
38397         (DISTCLEANFILES, io_functions): Remove macros.
38398         (EXTRA_DIST): Remove gen_uio.
38399         (unlocked-io.h): Remove rule.
38400
38401 2002-12-04  Jim Meyering  <jim@meyering.net>
38402
38403         Reflect the fact that stat.c and lstat.c are no longer generated.
38404         * lib/Makefile.am (BUILT_SOURCES): Remove stat.c and lstat.c.
38405         (DISTCLEANFILES): Likewise.
38406         (EXTRA_DIST): Likewise.
38407         (all_local): Don't depend on stat.c or lstat.c.
38408         (stat.c, lstat.c): Remove rules.
38409         (EXTRA_DIST): Remove xstat.in.
38410
38411         * lib/xstat.in: Remove file.  Contents moved into stat.c.
38412         * lib/stat.c: New file.  Contents mostly from xstat.in.
38413         * lib/stat.c: Rework so that it may serve to define rpl_lstat, too.
38414         * lib/lstat.c: New file. Simply #define LSTAT and include stat.c.
38415
38416         * lib/safe-read.c: Rework so that it may serve to define safe_write,
38417         too.
38418         * lib/safe-write.c: Simply #define SAFE_WRITE and include safe-read.c.
38419
38420 2002-12-03  Jim Meyering  <jim@meyering.net>
38421
38422         * lib/safe-read.c, safe-write.c: Change variable names and comments,
38423         but not semantics, to minimize the differences between these two files.
38424         (safe_read): Change comment to mention SAFE_READ_ERROR.
38425
38426         * lib/safe-read.c (IS_EINTR): Define.
38427         (safe_read): Use IS_EINTR in place of in-function cpp directives.
38428
38429 2002-12-02  Jim Meyering  <jim@meyering.net>
38430
38431         * lib/safe-read.c (EINTR): Define.
38432         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
38433         (INT_MAX): Provide fallback.
38434         (safe_read): Rewrite to iterate IFF the read fails with EINTR.
38435
38436         * lib/safe-read.h (SAFE_READ_ERROR): Define.
38437
38438 2002-12-02  Bruno Haible  <bruno@clisp.org>
38439
38440         * lib/safe-write.c (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM):
38441         Define, taken from safe-read.c.
38442         (INT_MAX): Provide fallback.
38443         (safe_write): Rewrite to iterate IFF the write fails with EINTR.
38444         * lib/safe-write.h (SAFE_WRITE_ERROR): Define.
38445
38446         * lib/safe-read.c (EINTR): Remove definition.
38447         (safe_read): Don't use EINTR if it is absent.
38448
38449 2002-12-01  Jim Meyering  <jim@meyering.net>
38450
38451         * lib/safe-read.c: (safe_read): Also exit the loop when read returns
38452         zero.
38453         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM, INT_MAX): Define.
38454
38455 2002-11-27  Paul Eggert  <eggert@twinsun.com>
38456
38457         * lib/hash.c (hash_lookup, hash_get_first, hash_get_next,
38458         hash_find_entry, hash_rehash): Replace `if (limit <= value) abort ();'
38459         with `if (! (value < limit)) abort ();', for readability.
38460
38461 2002-11-26  Karl Berry  <karl@gnu.org>
38462
38463         * lib/strdup.c: copy from libc again, with jim's ok.
38464         * lib/.cppi-disable: re-add strdup.c
38465
38466 2002-11-25  Karl Berry  <karl@gnu.org>
38467
38468         * lib/strtoll.c: copy from libc, meaning we now #include <strtol.c>
38469         instead of "strtol.c".
38470
38471 2002-11-25  Karl Berry  <karl@gnu.org>
38472
38473         * config/install-sh: update from automake for variable quoting, $0 in
38474         error msgs, etc.
38475
38476         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): new entry.
38477         * config/srclist.txt ($LIBCSRC/sysdeps/generic/strtoll.c lib gpl): new
38478         entry.
38479
38480 2002-11-25  Jim Meyering  <jim@meyering.net>
38481
38482         * lib/mktime.c: Sync from libc, now that it has the latest fix.
38483
38484 2002-11-24  Karl Berry  <karl@gnu.org>
38485
38486         * lib/error.c, getopt.c, getopt.h, getopt1.c, obstack.c, regex.c,
38487         regex.h, strdup.c, strtoll.c, tempname.c: change license to gpl.
38488
38489 2002-11-24  Jim Meyering  <jim@meyering.net>
38490
38491         Update from coreutils:
38492
38493         * lib/mktime.c: Merge in changes from libc.
38494
38495         Avoid a link-time failure on some Linux systems.
38496         * lib/mktime.c (STATIC): Define to be empty (_LIBC) or `static'
38497         (otherwise).
38498         (__mon_yday): Declare with the STATIC attribute.
38499         (__mktime_internal): Likewise.
38500         Based on a report from Greg Schafer.
38501
38502 2002-11-23  Jim Meyering  <jim@meyering.net>
38503
38504         * lib/sig2str.c (str2signum, sig2str): Avoid a warning from gcc:
38505         Use `unsigned', not `int', as type of index.
38506
38507         * lib/xstat.in [@BEGIN_LSTAT_ONLY@]: Include <string.h>.
38508
38509         * lib/fsusage.c: Remove unneeded parentheses around operands of
38510         `defined'.
38511
38512 2002-11-22  Paul Eggert  <eggert@twinsun.com>
38513
38514         * lib/quotearg.h: Allow multiple inclusion by surrounding with
38515         "#ifndef QUOTEARG_H_".  Include <stddef.h>, for size_t,
38516         so that we can be included first.
38517         (PARAMS): Remove; we now assume C89 or later.  All uses removed.
38518         * lib/quotearg.c: Include quotearg.h immediately after config.h.
38519         No need to include stddef.h or sys/types.h any more.
38520         Surround local include files with "", not "<>".
38521         Assume HAVE_LIMITS_H unconditionally, as we assume C89.
38522         Similarly, assume HAVE_C_BACKSLASH_A, CHAR_BIT, UCHAR_MAX, UINT_MAX,
38523         HAVE_STDLIB_H, HAVE_STRING_H, STDC_HEADERS.
38524         (HAVE_MBSINIT): Undef if !HAVE_MBRTOWC.
38525         (mbsinit): Define to 1 if !defined mbsinit && !HAVE_MBSINIT.
38526         (ISPRINT): Remove; no longer needed now that we assume C89.
38527
38528         (clone_quoting_options, quotearg_buffer, quotearg_n_options):
38529         Preserve errno.
38530
38531         (quotearg_buffer_restyled, quotearg_n, quotearg_n_style,
38532         quotearg_char): Use SIZE_MAX rather than
38533         (size_t) -1 when we are talking about "infinity".
38534
38535         (quotearg_buffer_restyled): Fix bug when quoting trigraphs.
38536
38537 2002-11-22  Paul Eggert  <eggert@twinsun.com>
38538
38539         * lib/hash.c: Avoid use of <assert.h>, as the GNU Coding Standards
38540         hint that one should use `if (! x) abort ();' rather than `assert
38541         (x);', and anyway it's one less thing to worry about configuring.
38542         (hash_lookup, hash_get_first, hash_get_next, hash_find_entry,
38543         hash_rehash, hash_insert): Use abort rather than assert.
38544
38545 2002-11-22  Bruno Haible  <bruno@clisp.org>
38546
38547         * lib/safe-read.h: Assume C89. Add comments.
38548         (safe_read): Change return type to size_t.
38549         * lib/safe-read.c (safe_read): Change return type to size_t. Handle
38550         byte counts > SSIZE_MAX correctly.
38551         * lib/safe-write.h: New file.
38552         * lib/safe-write.c: New file.
38553         * lib/full-read.h: New file.
38554         * lib/full-read.c: New file.
38555         * lib/full-write.h: Assume C89. Add comments.
38556         * lib/full-write.c: Include safe-write.h.
38557         (full_write): Rewritten to use safe_write.
38558         Suggested by Jim Meyering and Paul Eggert.
38559
38560 2002-11-21  Jim Meyering  <jim@meyering.net>
38561
38562         * lib/strdup.c (strdup): Tweak comment and initial #if/#include.
38563
38564         Merge in changes from the coreutils.
38565
38566         2002-09-25  Paul Eggert  <eggert@twinsun.com>
38567         * lib/fsusage.c [! HAVE_INTTYPES_H && HAVE_STDINT_H] Include
38568         <stdint.h>.
38569         (UINTMAX_MAX) [!defined UINTMAX_MAX]: New macro.
38570         (PROPAGATE_ALL_ONES): Work even if X is unsigned and narrower than
38571         int.  Work more efficiently if X is the same width as uintmax_t.
38572         Do not compare X to -1, to avoid bogus compiler warning.
38573         (get_fs_usage): (uintmax_t) -1 -> UINTMAX_MAX to avoid a cast.
38574         Don't assume that f_frsize and f_bsize are the same type.
38575
38576         * lib/mountlist.c: #undef MNT_IGNORE before defining it, to avoid
38577         warning on FreeBSD.
38578
38579         * lib/makepath.c (make_path): Restore umask *before* creating the final
38580         component.
38581         (make_path): Minor reformatting.
38582
38583         * lib/xmalloc.c: Adjust to work with new autoconf macros,
38584         AC_FUNC_MALLOC and AC_FUNC_REALLOC: test #ifndef
38585         HAVE_MALLOC/HAVE_REALLOC.
38586
38587         * lib/mountlist.h (ME_DUMMY): Don't count entries of type `auto' as
38588         dummy ones.  At least on GNU/Linux systems, `auto' means something
38589         else.
38590         From Michael Stone.
38591
38592 2002-11-21  Bruno Haible  <bruno@clisp.org>
38593
38594         Remove case insensitive option matching.
38595         * lib/argmatch.h (argcasematch): Remove declaration.
38596         (ARGCASEMATCH): Remove macro.
38597         (__xargmatch_internal): Remove case_sensitive argument.
38598         (XARGMATCH): Update.
38599         (XARGCASEMATCH): Remove macro.
38600         * lib/argmatch.c (argmatch): Renamed from __argmatch_internal. Remove
38601         case_sensitive argument.
38602         (argcasematch): Remove function.
38603         (__xargmatch_internal): Remove case_sensitive argument.
38604         (main): Use XARGMATCH instead of XARGCASEMATCH.
38605
38606         * lib/xmalloc.c: Change compile-time error message. Add comment about
38607         required autoconf version.
38608
38609 2002-11-20  Paul Eggert  <eggert@twinsun.com>
38610
38611         Merge argmatch cleanups from Bison.  Assume C89.
38612
38613         * lib/argmatch.c: Include config.h here, not in argmatch.h.
38614         Include stdlib.h, for EXIT_FAILURE.
38615         Always include <string.h>, since we assume C89.
38616         (EXIT_FAILURE): Remove pre-C89 bug workaround.
38617         * lib/argmatch.h: Do not include <config.h> or <sys/types.h>.
38618         Include <stddef.h> instead, since it's all we need for size_t.
38619         (PARAMS): Remove.  All uses removed.
38620         (ARRAY_CARDINALITY): Do not bother to #undef.
38621         (ARRAY_CARDINALITY, ARGMATCH, ARGCASEMATCH, invalid_arg,
38622         ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
38623         Remove unnecessary parentheses.
38624         (ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
38625         Insert necessary parentheses.
38626         (ARGMATCH_CONSTRAINT, ARGMATCH_VERIFY): New macros.
38627         (ARGMATCH_ASSERT): Use ARGMATCH_CONSTRAINT.
38628
38629 2002-11-19  Bruno Haible  <bruno@clisp.org>
38630
38631         * lib/mbswidth.c: Include mbswidth.h right at the beginning.
38632         * lib/mbswidth.h: Include <stddef.h>, for size_t.
38633
38634         * lib/mbswidth.h (PARAMS): Remove macro.
38635         (mbswidth, mbsnwidth): Use ANSI C function declarations.
38636         * lib/mbswidth.c (mbswidth, mbsnwidth): Likewise.
38637
38638         * lib/gcd.h (PARAMS): Remove macro.
38639         (gcd): Use ANSI C function declarations.
38640         * lib/gcd.c (gcd): Likewise.
38641
38642 2002-11-15  Bruno Haible  <bruno@clisp.org>
38643
38644         * lib/strcspn.c: Include <stddef.h>.
38645         (strcspn): Use ANSI C function declaration. Change return type to
38646         size_t. Use NULL.
38647         * lib/strpbrk.c: Minimize diffs to glibc. Include <stddef.h>.
38648         (strpbrk): Use NULL.
38649         * lib/strpbrk.h (PARAMS): Remove macro.
38650         (strpbrk): Use ANSI C function declaration.
38651         * lib/strstr.c: Don't include <sys/types.h>.
38652         * lib/strstr.h (PARAMS): Remove macro.
38653         (strstr): Use ANSI C function declarations.
38654
38655 2002-11-14  Karl Berry  <karl@gnu.org>
38656
38657         * config/mkinstalldirs: `do' on separate line, instead of
38658         `for var; do'.
38659
38660 2002-11-06  Bruno Haible  <bruno@clisp.org>
38661
38662         * lib/gcd.h (gcd): Change argument type to 'unsigned long'.
38663         * lib/gcd.c (gcd): Likewise.
38664
38665 2002-11-05  Bruno Haible  <bruno@clisp.org>
38666
38667         * lib/gcd.h: New file, from gettext-0.11.5.
38668         * lib/gcd.c: New file, from gettext-0.11.5.
38669
38670 2002-11-05  Bruno Haible  <bruno@clisp.org>
38671
38672         * lib/error.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
38673         * lib/getopt.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
38674         * lib/obstack.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
38675         * lib/regex.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
38676
38677         * lib/argmatch.c: Include gettext.h instead of <locale.h> and
38678         <libintl.h>.
38679         * lib/makepath.c: Include gettext.h instead of <locale.h> and
38680         <libintl.h>.
38681
38682         * lib/closeout.c: Include gettext.h instead of <libintl.h>.
38683         * lib/human.c: Include gettext.h instead of <libintl.h>.
38684         * lib/quotearg.c: Include gettext.h instead of <libintl.h>.
38685         * lib/rpmatch.c: Include gettext.h instead of <libintl.h>.
38686         * lib/unicodeio.c: Include gettext.h instead of <libintl.h>.
38687         * lib/userspec.c: Include gettext.h instead of <libintl.h>.
38688         * lib/version-etc.c: Include gettext.h instead of <libintl.h>.
38689         * lib/xmalloc.c: Include gettext.h instead of <libintl.h>.
38690         (textdomain): Remove definition.
38691         * lib/xmemcoll.c: Include gettext.h instead of <libintl.h>.
38692
38693         * lib/long-options.c: Remove include of <libintl.h> and definition of
38694         _.
38695         * lib/same.c: Remove include of <libintl.h> and definition of _.
38696
38697 2002-11-04  Owen Taylor  <otaylor@redhat.com>
38698
38699         * lib/config.charset: A few additions for Solaris.
38700
38701 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
38702
38703         Make it possible to build libcharset with CC=gcc CFLAGS="-x c++".
38704         * lib/localcharset.c (locale_charset): Declare as extern "C".
38705
38706 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
38707
38708         * lib/config.charset: msdos in uk_UA uses CP1125.
38709
38710 2002-11-04  Bruno Haible  <bruno@clisp.org>
38711
38712         * lib/stpcpy.h: New file, from GNU gettext-0.11.5.
38713         * lib/strcase.h: New file, from GNU gettext-0.11.5.
38714         * lib/strpbrk.h: New file, from GNU gettext-0.11.5.
38715         * lib/strstr.h: New file, from GNU gettext-0.11.5.
38716         * lib/xgetcwd.h: New file, from GNU gettext-0.11.5.
38717
38718 2002-11-04  Bruno Haible  <bruno@clisp.org>
38719
38720         * lib/localcharset.c (locale_charset): Don't return an empty string.
38721
38722 2002-11-04  Bruno Haible  <bruno@clisp.org>
38723
38724         * lib/localcharset.c (get_charset_aliases): Add more Windows specific
38725         aliases.
38726
38727 2002-11-04  Bruno Haible  <bruno@clisp.org>
38728
38729         * lib/config.charset: Update for newest glibc. Add canonical names
38730         ISO-8859-14, KOI8-T, TCVN5712-1, GEORGIAN-PS.
38731
38732 2002-11-04  Bruno Haible  <bruno@clisp.org>
38733
38734         * lib/config.charset: Add support for NetBSD.
38735
38736 2002-11-04  Bruno Haible  <bruno@clisp.org>
38737
38738         * lib/config.charset [msdosdjgpp]: For Russian, use CP866.
38739
38740 2002-11-01  Bruno Haible  <bruno@clisp.org>
38741
38742         * configure.in: Add AC_CONFIG_AUX_DIR call.
38743         (AC_OUTPUT): Add m4/Makefile, lib/Makefile. Remove doc/Makefile,
38744         test/Makefile.
38745         * Makefile.in (subdirs): Add m4, lib. Remove doc, test.
38746
38747 2002-09-28  Karl Berry  <karl@gnu.org>
38748
38749         * config/srclist.txt: can't copy install-sh/mkinstalldirs from
38750         installed automake until the next release, since changes have been
38751         made.
38752
38753 2002-09-25  Karl Berry  <karl@gnu.org>
38754
38755         * lib/strdup.c: copy from libc/string (via ../config/srclist*).
38756         * lib/getopt*: copy from libc/posix.
38757         * lib/gettext.h: copy from gettext.
38758         * lib/.cppi-disable: add strdup.c, gettext.h.
38759
38760 2002-09-25  Karl Berry  <karl@gnu.org>
38761
38762         * config/srclist.txt: enable gettext.h check.
38763         * config/config.{guess,sub}: update from prep.
38764         * config/depcomp, install-sh, mdate-sh, missing, mkinstalldirs: update
38765                 from automake 1.6.3.
38766         See srclist*.
38767
38768 2002-08-23  Stefan Monnier  <monnier@cs.yale.edu>
38769
38770         * regex.c (PATFETCH): Remove the translating fetch.
38771         (PATFETCH_RAW): Rename to PATFETCH.
38772         (set_image_of_range): New fun.
38773         (SET_RANGE_TABLE_WORK_AREA): Use it.
38774         (regex_compile): Don't translate the pattern chars so eagerly.
38775         Only do it when inserting an `exactn' bytecode or when handling
38776         a char-range.
38777         (mutually_exclusive_p): Avoid empty statement.
38778
38779 2002-07-06  Jim Meyering  <meyering@lucent.com>
38780
38781         * m4/README: Don't mention Makefile.am.in.
38782         Outline how I've tested changes to .m4 files.  Yep, it's a pain.
38783
38784 2002-07-01  Jim Meyering  <meyering@lucent.com>
38785
38786         * lib/c-stack.c: Include sys/time.h.
38787         From Volker Borchert.
38788
38789 2002-06-26  Paul Eggert  <eggert@twinsun.com>
38790
38791         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for btowc.
38792
38793 2002-06-26  Paul Eggert  <eggert@twinsun.com>
38794
38795         * lib/fnmatch.c, fnmatch_loop.c (WIDE_CHAR_SUPPORT):
38796         New macro.  Use it uniformly instead of
38797         (defined HAVE_WCTYPE_H && defined HAVE_WCHAR_H).
38798         It also uses HAVE_BTOWC, to fix a porting bug on Solaris 2.5.1
38799         reported by Vin Shelton.
38800
38801 2002-06-22  Paul Eggert  <eggert@twinsun.com>
38802
38803         * lib/c-stack.h (segv_handler, c_stack_action) [! defined SA_SIGINFO]:
38804         Do not assume SA_SIGINFO behavior.
38805         Bug reported by Jim Meyering on NetBSD 1.5.2.
38806
38807 2002-06-22  Jim Meyering  <meyering@lucent.com>
38808
38809         * m4/c-stack.m4: New file, from diffutils-2.8.2.
38810         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_C_STACK.
38811
38812         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Don't require AC__GNU_SOURCE,
38813         now that configure.ac uses AC_GNU_SOURCE.
38814         (jm_MACROS): Rename: jm_FUNC_FNMATCH to AC_FUNC_FNMATCH_GNU.
38815         * m4/prereq.m4 (jm_PREREQ_EXCLUDE): Likewise, wrt jm_FUNC_FNMATCH.
38816
38817         Update to latest tools.  Suggestions from Paul Eggert.
38818         * m4/stdbool.m4: New file, from diffutils-2.8.2.
38819         * m4/gnu-source.m4: Update from diffutils-2.8.2.
38820         * m4/fnmatch.m4: Likewise.
38821         * m4/prereq.m4: Change each use of AC_CHECK_HEADERS(stdbool.h)
38822         to AC_HEADER_STDBOOL
38823
38824 2002-06-22  Jim Meyering  <meyering@lucent.com>
38825
38826         * lib/fnmatch.c (ISASCII, ISPRINT): Undefine, to avoid warning about
38827         redefinition due to Solaris 2.6's definition in /usr/include/sys/euc.h.
38828
38829 2002-06-22  Jim Meyering  <meyering@lucent.com>
38830
38831         * lib/c-stack.c, lib/c-stack.h: New files, from diffutils-2.8.2.
38832
38833         * lib/exitfail.c, exitfail.h: Likewise.
38834         * lib/Makefile.am (libfetish_a_SOURCES): Add exitfail.c and exitfail.h.
38835
38836         * lib/Makefile.am (libfetish_a_SOURCES): Add fnmatch_.h in place
38837         of fnmatch.h.
38838         (EXTRA_DIST): Add fnmatch_loop.c.
38839         (libfetish_a_SOURCES): Add c-stack.c and c-stack.h.
38840
38841         * lib/fnmatch_loop.c: New file, from diffutils-2.8.2.
38842         * lib/fnmatch.c: Update from diffutils-2.8.2.
38843         * lib/fnmatch_.h: New file.  From diffutils-2.8.2.
38844         * lib/fnmatch.h: Remove file.
38845
38846 2002-06-21  Jim Meyering  <meyering@lucent.com>
38847
38848         * m4/c-bs-a.m4: Add comment, from diffutils-2.8.2.
38849         * m4/mbrtowc.m4: Likewise.
38850
38851         * m4/mbstate_t.m4: Update from diffutils-2.8.2.
38852         * m4/mbswidth.m4: Reflect name change:
38853         s/AC_MBSTATE_T/AC_TYPE_MBSTATE_T.
38854         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
38855
38856         * m4/lib-link.m4: Update from gettext-0.11.2.
38857         * m4/gettext.m4: Likewise.
38858
38859         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for hurd.h.
38860         From Alfred M. Szmidt.
38861
38862 2002-06-18  Paul Eggert  <eggert@twinsun.com>
38863
38864         * lib/file-type.h: Report an error if neither S_ISREG nor
38865         S_IFREG is defined, instead of using a test specific to glibc
38866         2.2.  This should be safe, since POSIX requires S_ISREG and
38867         Unix Version 7 had S_IFREG.  We don't need to check for
38868         <sys/types.h> since we don't use any symbols that it defines.
38869
38870 2002-06-15  Richard Dawe  <richdawe@bigfoot.com>
38871
38872         * lib/Makefile.am (lstat.c, stat.c, .sin.sed): Use t-$@, rather than
38873         $@-t, so that each temporary file name is unique and valid in the first
38874         8 characters, for operation under DOS.
38875
38876 2002-06-15  Paul Eggert  <eggert@twinsun.com>
38877
38878         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for st_author.
38879
38880 2002-06-15  Jim Meyering  <meyering@lucent.com>
38881
38882         Work even with DJGPP 2.03, which lacks support for symlinks.
38883         From Richard Dawe.
38884         * lib/xstat.in (S_ISLNK): Define to 0 if neither S_ISLNK nor S_IFLNK
38885         is defined.
38886         * lib/lchown.c (S_ISLNK): Likewise.
38887
38888 2002-06-15  Jim Meyering  <meyering@lucent.com>
38889
38890         * lib/file-type.h (FILE_TYPE_H): Guard entire contents with #ifndef.
38891         For GNU libc 2.2 and newer, ensure that <sys/types.h> and <sys/stat.h>
38892         have been included before this file.
38893
38894 2002-06-14  Jim Meyering  <meyering@lucent.com>
38895
38896         * lib/file-type.h: Use the version from diffutils-2.8.2.
38897         * lib/file-type.c: Likewise.
38898
38899 2002-06-07  Jim Meyering  <meyering@lucent.com>
38900
38901         * m4/prereq.m4 (jm_PREREQ_STAT): Check for sys/param.h and sys/mount.h.
38902         They're needed at least for NetBSD 1.5.2.
38903         ($statxfs_includes): Include those same headers.
38904         ($statxfs_includes): Include sys/vfs.h if available.
38905         ($statxfs_includes): Likewise for sys/statvfs.h.
38906         Check for the following members in both structs statfs and statvfs:
38907         f_basetype, f_type, f_fsid.__val, f_namemax, f_namelen.
38908
38909 2002-06-01  Jim Meyering  <meyering@lucent.com>
38910
38911         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename macro:
38912         s/D_TYPE_IN_DIRENT/HAVE_STRUCT_DIRENT_D_TYPE/.
38913
38914 2002-05-28  Jim Meyering  <meyering@lucent.com>
38915
38916         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `mkdir', not `rmdir'.
38917         Reported by Volker Borchert.
38918
38919 2002-05-27  Jim Meyering  <meyering@lucent.com>
38920
38921         Fix a problem seen only on nonconforming systems whereby ls.c's
38922         use of localtime, and then of gettimeofday would cause trouble:
38923         the localtime call used to initialize rpl_gettimeofday's save
38924         mechanism would clobber ls's current local time information so
38925         that in any long listing the first file would always be listed
38926         with date 1970-01-01.  Analysis by Volker Borchert.
38927
38928         * lib/gettimeofday.c (localtime): Undefine.
38929         (rpl_localtime): New function.
38930
38931 2002-05-27  Jim Meyering  <meyering@lucent.com>
38932
38933         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Also replace
38934         localtime.
38935
38936         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `rmdir' so we don't try to
38937         use the replacement function; it wouldn't resolve at link time.
38938         Reported by Volker Borchert.
38939
38940 2002-05-22  Jim Meyering  <meyering@lucent.com>
38941
38942         * lib/Makefile.am (libfetish_a_SOURCES): Add file-type.c and
38943         file-type.h.
38944         * lib/file-type.h: New file.
38945         * lib/file-type.c (file_type): New file/function.  Extracted from
38946         diffutils.
38947
38948 2002-04-30  Jim Meyering  <meyering@lucent.com>
38949
38950         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_STAT.
38951
38952 2002-04-29  Paul Eggert  <eggert@twinsun.com>
38953
38954         * m4/prereq.m4 (jm_PREREQ_SIG2STR): Remove; all callers changed.
38955
38956 2002-04-29  Paul Eggert  <eggert@twinsun.com>
38957
38958         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): Check for stdlib.h.
38959         Do not check for alloca.h (no longer used) or stdbool.h (was never
38960         used?).  Add AM_C_PROTOTYPES since hard-locale.h uses it.
38961
38962 2002-04-29  Paul Eggert  <eggert@twinsun.com>
38963
38964         * lib/hard-locale.c: Upgrade to version used in GNU Diffutils 2.8.1.
38965
38966 2002-04-29  Jim Meyering  <meyering@lucent.com>
38967
38968         * m4/jm-macros.m4 (jm_MACROS): Remove use of AC_FUNC_STRNLEN.
38969         * m4/prereq.m4: Add jm_PREREQ_STRNLEN.
38970         Use AC_FUNC_STRNLEN here instead.
38971
38972         * m4/jm-macros.m4: Don't AC_REQUIRE([AC_PROG_CC_STDC]).
38973         With autoconf-2.53a, it's part of AC_PROG_CC.
38974
38975 2002-04-28  Paul Eggert  <eggert@twinsun.com>
38976
38977         * m4/jm-macros.m4 (jm_MACROS): Add AC_REPLACE_FUNCS(sig2str).
38978         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_SIG2STR.
38979
38980 2002-04-28  Paul Eggert  <eggert@twinsun.com>
38981
38982         * lib/sig2str.h, lib/sig2str.c: New files.
38983         * lib/Makefile.am (libfetish_a_SOURCES): Add sig2str.h.
38984
38985 2002-04-28  Paul Eggert  <eggert@twinsun.com>
38986
38987         * lib/sig2str.h (SIGNUM_BOUND): Do not use WTERMSIG, to avoid
38988         depending on <sys/wait.h> and WTERMSIG.  Default to 64 instead
38989         of 127, since 64 is the largest conceivable number for ancient
38990         nonstandard hosts.
38991         * lib/sig2str.c: Do not include <sys/wait.h>; no longer needed.
38992
38993 2002-04-28  Jim Meyering  <meyering@lucent.com>
38994
38995         * lib/sig2str.c (WTERMSIG): Remove definition (unused).
38996
38997 2002-04-24  Jim Meyering  <meyering@lucent.com>
38998
38999         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): New macro.
39000         (jm_PREREQ): Use it.
39001
39002         * m4/getloadavg.m4: Check for these headers: locale.h unistd.h
39003         mach/mach.h fcntl.h.
39004         Check for this function: setlocale.
39005
39006 2002-04-24  Jim Meyering  <meyering@lucent.com>
39007
39008         * lib/gettext.h: New file, from Gettext.
39009         * lib/Makefile.am (INCLUDES): Remove -I../intl.
39010         (libfetish_a_SOURCES): Add gettext.h.
39011
39012 2002-04-16  Jim Meyering  <meyering@lucent.com>
39013
39014         * m4/prereq.m4 (jm_PREREQ_READUTMP): Also check for these members:
39015         ut_pid, ut_id, ut_exit.
39016
39017 2002-04-16  Jim Meyering  <meyering@lucent.com>
39018
39019         * lib/readutmp.h (UT_TYPE): Remove definition (now in who.c).
39020         (HAVE_STRUCT_XTMP_UT_EXIT, HAVE_STRUCT_XTMP_UT_ID): Define.
39021         (HAVE_STRUCT_XTMP_UT_PID, HAVE_STRUCT_XTMP_UT_TYPE): Define.
39022
39023 2002-04-12  Jim Meyering  <meyering@lucent.com>
39024
39025         * m4/ls-mntd-fs.m4 (checking for getmntinfo function...): Remove
39026         now-bogus check for f_type in sys/mount.h.  Instead, just test for the
39027         existence of the getmntinfo function.  Needed for Darwin 5.3.
39028
39029         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Also detect when dirfd is a macro.
39030         This is necessary at least on Darwin 5.3.
39031
39032         * m4/jm-macros.m4: Don't AC_REPLACE(strnlen), now that we use
39033         AC_FUNC_STRNLEN.  Otherwise, we'd end up putting two copies of
39034         strnlen.o in the library, and that makes some versions of ranlib
39035         object.
39036
39037 2002-04-12  Jim Meyering  <meyering@lucent.com>
39038
39039         * lib/dirfd.h (dirfd): Elide prototype if dirfd is a macro.
39040
39041 2002-04-09  Jim Meyering  <meyering@lucent.com>
39042
39043         * m4/malloc.m4: (jm_FUNC_MALLOC): Change the `checking ...' message
39044         to be more precise.  Rather than saying we're checking whether the
39045         function `works', say what we're testing.
39046         * m4/realloc.m4 (jm_FUNC_REALLOC): Likewise.
39047         Reported by Bruno Haible.
39048
39049 2002-03-10  Jim Meyering  <meyering@lucent.com>
39050
39051         * lib/makepath.c (make_path): Remove a comma from a diagnostic.
39052         Suggestion from Santiago Vila.
39053
39054 2002-03-08  Jim Meyering  <meyering@lucent.com>
39055
39056         * lib/rename.c: Mention that this wrapper is needed also on
39057         mips-dec-ultrix4.4 systems.
39058
39059 2002-03-02  Jim Meyering  <meyering@lucent.com>
39060
39061         * lib/gettime.c (gettime): Test HAVE_CLOCK_GETTIME,
39062         not HAVE_CLOCK_SETTIME.
39063
39064 2002-02-27  Paul Eggert  <eggert@twinsun.com>
39065
39066         * m4/jm-macros.m4 (jm_MACROS): Do not replace stime; no longer used.
39067         Check for clock_settime.
39068
39069 2002-02-27  Paul Eggert  <eggert@twinsun.com>
39070
39071         * lib/nanosleep.h: Rename to....
39072         * lib/timespec.h: New name for nanosleep.h.  All uses changed.
39073
39074         * lib/gettime.c: New file.
39075         * lib/settime.c: New file.
39076         * lib/stime.c: Remove.
39077
39078         * lib/Makefile.am (libfetish_a_SOURCES): Add gettime.c, settime.c,
39079         timespec.h.  Remove nanosleep.h.
39080
39081 2002-02-25  Paul Eggert  <eggert@twinsun.com>
39082
39083         * m4/acl.m4: New file.
39084         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_ACL.
39085         Do not check for acl or sys/acl.h, as AC_FUNC_ACL does that now.
39086
39087 2002-02-25  Paul Eggert  <eggert@twinsun.com>
39088
39089         * lib/acl.c, lib/acl.h: New files.
39090         * lib/Makefile.am (libfetish_a_SOURCES): Add acl.h, acl.c.
39091
39092 2002-02-24  Jim Meyering  <meyering@lucent.com>
39093
39094         * lib/strnlen.c (strnlen): Define-away/undef so that an inconsistent
39095         prototype in string.h (on at least AIX4.3.2.0 w/gcc-2.95.3) doesn't
39096         cause trouble.  Reported by Nelson Beebe.
39097
39098 2002-02-23  Paul Eggert  <eggert@twinsun.com>
39099
39100         * lib/path-concat.c (xpath_concat): Reorder code to pacify
39101         compilers that don't know that xalloc_die never returns.
39102
39103 2002-02-20  Jim Meyering  <meyering@lucent.com>
39104
39105         * lib/getdate.c: Regenerate using bison-1.33.
39106
39107 2002-02-17  Jim Meyering  <meyering@lucent.com>
39108
39109         * config/config.guess (main): Don't use `head -1'; it's no longer
39110         portable. Use `sed 1q' instead.
39111
39112 2002-02-16  gettextize  <bug-gnu-gettext@gnu.org>
39113
39114         * m4/codeset.m4: Upgrade to gettext-0.11.
39115         * m4/gettext.m4: Upgrade to gettext-0.11.
39116         * m4/glibc21.m4: Upgrade to gettext-0.11.
39117         * m4/iconv.m4: Upgrade to gettext-0.11.
39118         * m4/isc-posix.m4: Upgrade to gettext-0.11.
39119         * m4/lcmessage.m4: Upgrade to gettext-0.11.
39120         * m4/lib-ld.m4: New file, from gettext-0.11.
39121         * m4/lib-link.m4: New file, from gettext-0.11.
39122         * m4/lib-prefix.m4: New file, from gettext-0.11.
39123         * m4/progtest.m4: Upgrade to gettext-0.11.
39124
39125 2002-02-15  Paul Eggert  <eggert@twinsun.com>
39126
39127         * m4/prereq.m4 (jm_PREREQ_POSIXVER): New macro.
39128         (jm_PREREQ): Use it.
39129
39130 2002-02-15  Paul Eggert  <eggert@twinsun.com>
39131
39132         * lib/posixver.c, lib/posixver.h: New files.
39133         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
39134
39135 2002-02-02  Paul Eggert  <eggert@twinsun.com>
39136             Bruno Haible  <bruno@clisp.org>
39137
39138         * lib/unicodeio.h (print_unicode_char): Add exit_on_error argument.
39139         (fwrite_success_callback): New declaration.
39140         * lib/unicodeio.c (unicode_to_mb): New function, extracted from
39141         print_unicode_char. Call failure callback instead of error.
39142         (fwrite_success_callback): New function.
39143         (exit_failure_callback): New function.
39144         (fallback_failure_callback): New function.
39145         (print_unicode_char): Call unicode_to_mb.
39146
39147 2002-01-26  Jim Meyering  <meyering@lucent.com>
39148
39149         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.52g.
39150         * m4/strnlen.m4: Remove file, now that it's part of autoconf.
39151
39152 2002-01-26  Jim Meyering  <meyering@lucent.com>
39153
39154         * lib/Makefile.am (getdate$U.o): Depend on unlocked-io.h.
39155
39156 2002-01-22  Paul Eggert  <eggert@twinsun.com>
39157
39158         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_FSEEKO.
39159
39160 2002-01-22  Jim Meyering  <meyering@lucent.com>
39161
39162         * lib/Makefile.am (Makefile): Don't depend on $(BUILT_SOURCES).
39163         Otherwise, some versions of automake would omit the rule that makes
39164         Makefile from Makefile.in.
39165
39166 2002-01-21  Paul Eggert  <eggert@twinsun.com>
39167
39168         * lib/xmemcoll.h, lib/xmemcoll.c: New files.
39169         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
39170         * lib/memcoll.c: Include errno.h, and declare errno if not defined.
39171         (memcoll): Set errno to zero if there is no error.
39172
39173         * lib/quotearg.c (quotearg_buffer_restyled):
39174         Fix bug with quoting buffers containing NUL when backslashing escapes.
39175         This bug was exposed by the other changes in this patch.
39176         (quotearg_n_options): New arg ARGSIZE.
39177         All callers changed.
39178         (quoting_options_from_style): New function.
39179         (quotearg_n_style): Use it.
39180         (quotearg_n_style_mem): New function.
39181
39182         * lib/quotearg.h (quotearg_n_style_mem): New function.
39183
39184 2002-01-19  Jim Meyering  <meyering@lucent.com>
39185
39186         * m4/jm-macros.m4 (jm_MACROS): Use AC_FUNC_STRNLEN.
39187         Remove useless quotes: DF_PROG="df".
39188         * m4/strnlen.m4: New file.
39189
39190 2002-01-16  Paul Eggert  <eggert@twinsun.com>
39191
39192         * lib/backupfile.c (ISDIGIT): Comment fix.
39193         * lib/getdate.y (ISDIGIT): Likewise.
39194         * lib/posixtm.c (ISDIGIT, year): Likewise.
39195         * lib/strverscmp.c (ISDIGIT): Likewise.
39196         * lib/userspec.c (ISDIGIT): Likewise.
39197
39198 2002-01-16  Jim Meyering  <meyering@lucent.com>
39199
39200         * lib/getdate.y: Add three semicolons, each just before a closing
39201         brace. Bison (as of version 1.31) no longer papers over that mistake.
39202
39203 2002-01-05  Jim Meyering  <meyering@lucent.com>
39204
39205         * lib/version-etc.c (version_etc_copyright): Update copyright year.
39206
39207 2001-12-19  Paul Eggert  <eggert@twinsun.com>
39208
39209         * lib/closeout.c (close_stdout_status): If ferror (stdout), do
39210         not silently exit merely because the output buffer happens to
39211         have nothing pending.
39212
39213 2001-12-18  Paul Eggert  <eggert@twinsun.com>
39214
39215         See the big note in ../ChangeLog.
39216         * lib/human.c (suffixes): Prefer K to k for 1024.
39217         (generate_suffix_backwards): New function.
39218         (human_readable_inexact): Use it.
39219         * lib/xstrtol.c (__xstrtol): If there is no number but there
39220         is a valid suffix, assume 1.  "MB" now means decimal, "MiB" binary.
39221         Accept 'K' as well as 'k'.
39222
39223 2001-12-15  Jim Meyering  <meyering@lucent.com>
39224
39225         * lib/regex.h (__restrict_arr): Update from libc.
39226
39227         * lib/mountlist.h (ME_REMOTE): Recognize file systems of type smbfs
39228         as `remote' if the name starts with `//'.  Suggested by Michael Stone.
39229         (STREQ): Define.
39230
39231 2001-12-14  Jim Meyering  <meyering@lucent.com>
39232
39233         * m4/jm-macros.m4 (jm_MACROS): Check for iswspace.
39234         Suggestion from Bruno Haible.
39235
39236 2001-12-10  Jim Meyering  <meyering@lucent.com>
39237
39238         * lib/linebuffer.c: Remove explicit declarations of xmalloc and
39239         xrealloc, Instead, include "xalloc.h".
39240         (initbuffer): Don't cast xmalloc return value to char*.
39241         (readline): Reword comment.
39242         Don't cast xrealloc return value to char*
39243         Return NULL, not 0.
39244
39245 2001-12-09  Jim Meyering  <meyering@lucent.com>
39246
39247         * lib/modechange.c (mode_compile): Add cast to avoid pedantic warning
39248         about `signed and unsigned type in conditional expression'.
39249         * lib/posixtm.c (posix_time_parse): Likewise.
39250
39251         * lib/xreadlink.c (xreadlink): Add cast to avoid a pedantic warning.
39252
39253         * lib/readtokens.c (readtoken): Declare an index to be of type unsigned
39254         to avoid a pedantic warning.
39255
39256         * lib/getstr.c: Don't include assert.h.
39257         (getstr): Remove warning-evoking assertions.
39258         Return -1 if offset parameter is out of bounds.
39259         Change the type of a local from int to size_t.
39260
39261         * lib/strftime.c (my_strftime_localtime_r): Include this function
39262         definition in the `#if ! HAVE_TM_GMTOFF' block.
39263
39264         * lib/xgethostname.c: Remove declarations of xmalloc and xrealloc.
39265         Include xalloc.h instead.
39266
39267 2001-12-02  Jim Meyering  <meyering@lucent.com>
39268
39269         * lib/tempname.c: Don't declare getenv, thus reverting the change of
39270         2001-11-18.  It's no longer necessary, now that stdlib.h is always
39271         included.
39272
39273         * lib/regex.c [!__BOUNDED_POINTERS__]: Define away __bounded,
39274         __unbounded, and __ptrvalue.  Reported by Uwe H. Steinfeld.
39275
39276 2001-11-30  Akim Demaille  <akim@epita.fr>
39277
39278         * lib/xstrdup.c: Include xalloc.h, so that xstrdup is declared
39279         before being defined.
39280
39281 2001-11-27  Paul Eggert  <eggert@twinsun.com>
39282
39283         * lib/quotearg.h (quotearg_n, quotearg_n_style):
39284         First arg is int, not unsigned.
39285         * lib/quotearg.c (quotearg_n, quotearg_n_style): Likewise.
39286         (SIZE_MAX, UINT_MAX): New macros.
39287         (quotearg_n_options): Abort if N is negative.
39288         Avoid overflow check on hosts where size_t is 64 bits and int
39289         is 32 bits, as overflow is impossible there.
39290         Fix off-by-one typo that caused unnecessary reallocation.
39291
39292 2001-11-27  Jim Meyering  <meyering@lucent.com>
39293
39294         * lib/tempname.c: Merge with version from libc.
39295         * lib/regex.c: Likewise.
39296
39297         * lib/tempname.c: Include stdlib.h unconditionally.  On some old
39298         systems for which STDC_HEADERS is 0, it was not included, resulting in
39299         a warning about an integer-to-pointer conversion problem with getenv.
39300         Reported by Volker Borchert.
39301
39302 2001-11-26  Jim Meyering  <meyering@lucent.com>
39303
39304         * lib/gtod.h: Remove file.
39305         * lib/Makefile.am (libfetish_a_SOURCES): Remove gtod.h.
39306         * lib/gettimeofday.c: Don't include gtod.h.
39307         (GTOD_init): Remove function.
39308         (rpl_gettimeofday): Do its job here instead, rather than aborting.
39309         Suggestion from Volker Borchert.
39310
39311 2001-11-23  Jim Meyering  <meyering@lucent.com>
39312
39313         * lib/hash.h (struct hash_table): Don't define here.  Merely declare
39314         it.
39315         * lib/hash.c (struct hash_table): Define it here instead.
39316
39317 2001-11-22  Jim Meyering  <meyering@lucent.com>
39318
39319         * lib/hash.h: Bracket contents of file with #ifndef HASH_H_ ... #endif.
39320
39321 2001-11-20  Jim Meyering  <meyering@lucent.com>
39322
39323         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Update comment to reflect that
39324         SunOS 4.1.4 and Solaris 2.5.1 lose, too.
39325
39326 2001-11-19  Jim Meyering  <meyering@lucent.com>
39327
39328         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Don't bother with a temporary
39329         directory.  Use "conftestXXXXXX" as the template.
39330         Suggestion from Paul Eggert.
39331
39332         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Close each descriptor
39333         immediately, so the test doesn't mistakenly hit the max-open-files
39334         limit.
39335
39336 2001-11-18  Paul Eggert  <eggert@twinsun.com>
39337
39338         * lib/tempname.c (TMP_MAX): Remove; no longer needed.
39339         (TEMPORARIES): New macro.
39340         (__gen_tempname): Use TEMPORARIES rather than TMP_MAX.  This
39341         removes an artificial limitation (e.g. HP-UX 10.20, where
39342         TMP_MAX is 17576).
39343
39344 2001-11-18  Jim Meyering  <meyering@lucent.com>
39345
39346         * m4/prereq.m4 (jm_PREREQ_TEMPNAME): Check for declaration of getenv.
39347
39348 2001-11-18  Jim Meyering  <meyering@lucent.com>
39349
39350         * lib/tempname.c [!HAVE_DECL_GETENV]: Declare getenv to avoid warning
39351         on SunOS 4.
39352
39353         * lib/Makefile.am (Makefile): Depend on $(BUILT_SOURCES), so those
39354         files will be created before anything else.
39355
39356 2001-11-17  Paul Eggert  <eggert@twinsun.com>
39357
39358         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): Do not define
39359         WINSIZE_IN_PTEM if <termios.h> defines struct winsize.
39360
39361 2001-11-17  Jim Meyering  <meyering@lucent.com>
39362
39363         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): New file and macro.
39364         Prompted by a report from Bob Proulx.
39365
39366         * m4/jm-macros.m4 (jm_MACROS): Don't test for mkstemp here.
39367         Instead, require UTILS_FUNC_MKSTEMP.
39368
39369 2001-11-17  Jim Meyering  <meyering@lucent.com>
39370
39371         * m4/jm-macros.m4 (jm_MACROS): Remove code to set POW_LIBM.
39372         Now, that's done as part of AC_FUNC_STRTOD.
39373
39374 2001-11-17  Jim Meyering  <meyering@lucent.com>
39375
39376         * lib/modechange.c (mode_adjust): Fix error introduced on 1999-04-26
39377         that made e.g., `chmod a=,o=w,g=o F' cause F to be group readable
39378         rather than group writable.  Patch by Juan F. Codagnone.
39379
39380         * lib/readtokens.c: Remove explicit declarations of xmalloc and
39381         xrealloc, Instead, include "xalloc.h".
39382
39383         * lib/mountlist.c: Include unlocked-io.h after all system headers.
39384         Remove explicit declarations of xmalloc, xrealloc,
39385         and xstrdup.  Instead, include "xalloc.h".
39386
39387         * lib/argmatch.c, closeout.c, error.c, exclude.c: Include
39388         unlocked-io.h.
39389         * lib/fatal.c, getdate.y, getpass.c, getstr.c, getusershell.c:
39390         Likewise.
39391         * lib/mountlist.c, posixtm.c, readtokens.c, readutmp.c: Likewise.
39392
39393         * lib/regex.c, sha.c, version-etc.c, yesno.c: Likewise.
39394         Reported by Padraig Brady.
39395
39396         * lib/mkstemp.c: #undef mkstemp.
39397         Include config.h.
39398         (rpl_mkstemp): Rename from mkstemp.
39399         Protoize.
39400
39401 2001-11-16  Jim Meyering  <meyering@lucent.com>
39402
39403         * lib/physmem.c [HAVE_SYS_PSTAT_H]: Include <sys/pstat.h>.
39404         (physmem_total) [HAVE_PSTAT_GETSTATIC]: If sysconf couldn't be used to
39405         determine the amount of total physical memory, use pstat_getstatic.
39406         HPUX-11 doesn't define _SC_PHYS_PAGES.
39407         (physmem_available) [HAVE_PSTAT_GETSTATIC && HAVE_PSTAT_GETDYNAMIC]:
39408         If sysconf couldn't be used to determine the amount of available
39409         physical memory, use both pstat_getstatic and pstat_getdynamic.
39410         Based on a patch from Bob Proulx.
39411
39412 2001-11-10  Jim Meyering  <meyering@lucent.com>
39413
39414         * m4/prereq.m4 (jm_PREREQ_PHYSMEM): New function.
39415         (jm_PREREQ): Use it.
39416
39417 2001-11-09  Jim Meyering  <meyering@lucent.com>
39418
39419         * m4/jm-macros.m4: Require autoconf-2.52f.
39420         (AC_FUNC_ERROR_AT_LINE, AC_FUNC_OBSTACK, AC_FUNC_STRTOD):
39421         Use these AC_-prefixed names, not the AM_-prefixed ones.
39422
39423         * m4/afs.m4 (jm_AFS): Quote the body.  Patch by Akim Demaille.
39424
39425 2001-11-05  Jim Meyering  <meyering@lucent.com>
39426
39427         * lib/xstat.in (slash_aware_lstat): Correct a misleading comment.
39428
39429 2001-11-04  Jim Meyering  <meyering@lucent.com>
39430
39431         * m4/fpending.m4: Remove unused cruft that saved, set, and restored
39432         $DEFS.
39433
39434 2001-11-03  Jim Meyering  <meyering@lucent.com>
39435
39436         * m4/jm-glibc-io.m4n (jm_FUNC_GLIBC_UNLOCKED_IO): Quote first arg
39437         of AC_DEFUN.
39438
39439         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Rework so dirfd.c doesn't have to
39440         know the name of the variable in the macro definition.
39441
39442 2001-11-03  Jim Meyering  <meyering@lucent.com>
39443
39444         * lib/argmatch.h (ARGMATCH_TO_ARGUMENT): Remove casts of first two args
39445         in argmatch_to_argument call.
39446
39447         * lib/dirfd.c (dirfd): Reflect the fact that DIR_TO_FD now takes an
39448         argument.
39449
39450         * lib/hash.c (hash_clear): Fix a bug that could lead to an infloop or
39451         e.g., a fault due to an attempt to free a NULL pointer.
39452
39453 2001-11-01  Jim Meyering  <meyering@lucent.com>
39454
39455         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): New macro.
39456         * m4/jm-macros.m4 (jm_MACROS): Require UTILS_FUNC_DIRFD.
39457
39458 2001-11-01  Jim Meyering  <meyering@lucent.com>
39459
39460         * lib/dirfd.c, lib/dirfd.h: New files.
39461         * lib/Makefile.am (libfetish_a_SOURCES): Add dirfd.h.
39462
39463         * lib/hash.c (hash_print) [TESTING]: Clean up.
39464
39465 2001-10-22  Paul Eggert  <eggert@twinsun.com>
39466
39467         * lib/hard-locale.c (alloca): Define to __builtin_alloca if __GNUC__,
39468         to avoid a warning if -Wall.
39469
39470 2001-10-22  Jeff Bailey  <jbailey@outpost.dnsalias.org>
39471
39472         * README: New file
39473         * doc/*: Add COPYING, COPYING.LIB, COPYING.DOC, fdl.texi
39474         (per RMS's instructions, this is now the canonical source)
39475         * lgpl/, gpl/: New directories.
39476
39477 2001-10-21  Paul Eggert  <eggert@twinsun.com>
39478
39479         * lib/regex.c (uintptr_t): Remove macro and decl; it's config.h's job.
39480
39481 2001-10-21  Jim Meyering  <meyering@lucent.com>
39482
39483         * lib/obstack.c (_): Honor the setting of ENABLE_NLS.  Otherwise,
39484         this code would end up calling gettext even in packages built
39485         with --disable-nls.
39486         * lib/getopt.c (_): Likewise.
39487         * lib/regex.c (_): Likewise.
39488
39489 2001-10-20  Paul Eggert  <eggert@twinsun.com>
39490
39491         * m4/error.m4 (jm_PREREQ_ERROR):
39492         Do not invoke AC_CHECK_FUNCS with strerror_r, as
39493         AC_FUNC_STRERROR_R does that.
39494         Check for strerror declaration.
39495
39496         * m4/strerror_r.m4: Add copyright notice, as nontrivial m4 files
39497         are supposed to have them these days.
39498         (AC_FUNC_STRERROR_R): Always do char* test, so that it gets cached.
39499         Merge changes from latest Autoconf CVS.
39500         Rename ac_cv_func_strerror_r_works to ac_cv_func_strerror_r_char_p,
39501         and rename HAVE_WORKING_STRERROR_R to STRERROR_R_CHAR_P, since
39502         POSIX decided to standardize on the int flavor of strerror_r.
39503
39504 2001-10-20  Paul Eggert  <eggert@twinsun.com>
39505
39506         * lib/error.c (strerror_r): Do not declare unless !_LIBC.
39507         Do not check for HAVE_DECL_STRERROR_R missing unless STRERROR_R_CHAR_P.
39508         Use strerror_r that is only a macro, even if it is not a function.
39509         (strerror): Check for HAVE_DECL_STRERROR before declaring.
39510         (private_strerror): Use prototypes, not old-style function definition.
39511         (print_errno_message): New function.
39512         Support the POSIX 'int'-flavored strerror_r, as well as the traditional
39513         char*-flavored one.
39514         (error_tail, error, error_at_line): Use it.
39515
39516 2001-10-11  Jim Meyering  <meyering@lucent.com>
39517
39518         * lib/argmatch.c (argmatch_invalid): Use quotearg_n_style (0, ...
39519         and quote_n (1, ... to avoid clobbering a buffer.
39520
39521 2001-10-05  Jim Meyering  <meyering@lucent.com>
39522
39523         * lib/Makefile.am: (libfetish_a_SOURCES): Add hash-pjw.c and
39524         hash-pjw.h.
39525         * lib/hash-pjw.c: New file (factored out of fileutils' remove.c).
39526         * lib/hash-pjw.h: New file.
39527
39528 2001-09-30  Jim Meyering  <meyering@lucent.com>
39529
39530         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): See if
39531         `struct fsstat' has the `f_fstypename' member.
39532         Use that to define FS_TYPE, which is now used to make
39533         the getfsstat link test tighter.
39534
39535 2001-09-30  Jim Meyering  <meyering@lucent.com>
39536
39537         * lib/mountlist.c [MOUNTED_GETFSSTAT]:
39538         Include <sys/ucred.h>, for Apple Darwin.
39539         Include sys/mount.h and sys/fs_types.h only if available.
39540         (FS_TYPE): Define.
39541         (read_filesystem_list): Use FS_TYPE.
39542
39543 2001-09-29  Paul Eggert  <eggert@twinsun.com>
39544
39545         * lib/exclude.c (excluded_filename): 0 -> false, since it's
39546         a boolean context.
39547
39548 2001-09-29  Jim Meyering  <meyering@lucent.com>
39549
39550         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
39551         [one-argument getmntent function]): Include stdio.h before mntent.h.
39552         SunOS 4.1.x needs it for the declaration of `FILE'.
39553         Patch by Volker Borchert.
39554
39555         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
39556         Check for these headers: sys/param.h sys/ucred.h sys/mount.h
39557         sys/fs_types.h, and make the link-test for getfsstat guard #include
39558         directives with appropriate #if HAVE_*_H tests so that we can
39559         detect getfsstat on Apple Darwin1.3.7 systems.
39560         Reported by Nelson Beebe.
39561         Fix harmless typo in cache variable name: s/getsstat/getfsstat/.
39562
39563 2001-09-28  Paul Eggert  <eggert@twinsun.com>
39564
39565         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
39566         #defines strtoimax.  Also treat the other strto* functions
39567         like strtoimax.
39568
39569         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
39570         Check for strtoul and strtoumax,
39571         as those declarations are made even in the signed case.
39572         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX):
39573         Likewise, for strtol and strtoimax.
39574
39575 2001-09-28  Paul Eggert  <eggert@twinsun.com>
39576
39577         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
39578         #defines strtoimax.  Also treat the other strto* functions
39579         like strtoimax.
39580
39581         * lib/xstrtol.c (strtol): Do not declare if HAVE_DECL_STRTOL.
39582         (strtoul): Do not declare if HAVE_DECL_STRTOUL.
39583         (strtoimax, strtoumax): Do not declare if already defined as a macro.
39584
39585 2001-09-26  Jim Meyering  <meyering@lucent.com>
39586
39587         Most macros in unlocked-io.h had the wrong number of arguments.
39588         * lib/gen-uio: New script.
39589         (USE_UNLOCKED_IO): Define to 1 if not already defined.
39590         * lib/unlocked-io.hin: Remove file.
39591         * lib/Makefile.am (unlocked-io.h): Rewrite to use a separate script,
39592         rather than trying to embed it here.
39593         (EXTRA_DIST): Add gen-uio.  Remove unlocked-io.hin
39594         Reported by Padraig Brady.
39595
39596 2001-09-25  Volker Borchert  <bt@teknon.de>
39597
39598         * lib/gettimeofday.c (rpl_gettimeofday): Declare local variable
39599         `result'.
39600
39601 2001-09-24  Jim Meyering  <meyering@lucent.com>
39602
39603         * m4/gettext.m4: Use the version from gettext-0.10.40, not CVS.
39604
39605 2001-09-23  Jim Meyering  <meyering@lucent.com>
39606
39607         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add a compile-test
39608         instead of the mere test for existence of mntent.h.  The latter
39609         would get a false-positive on AIX 3.4 systems.
39610         In the outer getmntent if-block, don't die if neither of the getmntent
39611         tests succeeds.  Instead, just fall through and continue with the
39612         remaining tests.
39613
39614 2001-09-23  Jim Meyering  <meyering@lucent.com>
39615
39616         * lib/mountlist.c: Remove useless parentheses in #if directives.
39617         (MOUNTED) [!defined MOUNTED]: Define to _PATH_MOUNTED, for when
39618         the deprecated MOUNTED symbol is no longer defined in mntent.h.
39619
39620 2001-09-22  Jim Meyering  <meyering@lucent.com>
39621
39622         * m4/gettext.m4: New file.  From gettext.
39623         * m4/lcmessage.m4: Sync with gettext -- this changes only comments.
39624         * m4/progtest.m4: Likewise
39625         * m4/isc-posix.m4: Decrement serial number to sync with gettext.
39626         * m4/glibc21.m4: Likewise.
39627
39628         * m4/libintl.m4: Remove.  No longer used.
39629
39630 2001-09-22  Jim Meyering  <meyering@lucent.com>
39631
39632         * lib/localcharset.c: Update from latest gettext.
39633         * lib/config.charset: Likewise.
39634
39635 2001-09-20  Jim Meyering  <meyering@lucent.com>
39636
39637         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX): Check for declaration of
39638         strtoimax.
39639         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check for declaration of
39640         strtoumax.
39641
39642 2001-09-20  Jim Meyering  <meyering@lucent.com>
39643
39644         * lib/xstrtol.c (strtoimax): Guard declaration with
39645         `#if !HAVE_DECL_STRTOIMAX', rather than just `#ifndef strtoimax'.
39646         The latter fails because some systems (at least rs6000-ibm-aix4.3.3.0)
39647         have their own, conflicting declaration of strtoimax in sys/inttypes.h.
39648         (strtoumax): Likewise, for completeness (it wasn't necessary).
39649
39650 2001-09-17  Paul Eggert  <eggert@twinsun.com>
39651
39652         * lib/strtoimax.c (HAVE_LONG_LONG):
39653         Redefine to HAVE_UNSIGNED_LONG_LONG if unsigned.
39654         (strtoimax): Use sizeof (long), not sizeof strtol (ptr, endptr, base),
39655         to work around bug in IBM C compiler.
39656
39657 2001-09-17  Jim Meyering  <meyering@lucent.com>
39658
39659         * m4/chown.m4, fstypename.m4, getgroups.m4, gettimeofday.m4,
39660         * m4/jm-mktime.m4, lstat.m4, malloc.m4, memcmp.m4, mkdir-slash.m4,
39661         * m4/nanosleep.m4, putenv.m4, readdir.m4, realloc.m4, rename.m4,
39662         * m4/st_dm_mode.m4, stat.m4, strerror_r.m4, timespec.m4, utimbuf.m4,
39663         * m4/utimes.m4: Use AC_DEFINE rather than AC_DEFINE_UNQUOTED,
39664         whenever the right hand side need not be expanded by the shell.
39665
39666 2001-09-16  Paul Eggert  <eggert@twinsun.com>
39667
39668         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): Remove test for GNU C
39669         library.  It's not correct, as some older glibcs are buggy.
39670         fnmatch wasn't fixed until glibc 2.2.
39671
39672         Use AC_DEFINE, not AC_DEFINE_UNQUOTED, as there's no
39673         special shell magic here.
39674
39675 2001-09-16  Jim Meyering  <meyering@lucent.com>
39676
39677         * m4/mkdir-slash.m4 (UTILS_FUNC_MKDIR_TRAILING_SLASH): New file/macro.
39678         * m4/jm-macros.m4: Require it.
39679
39680 2001-09-16  Jim Meyering  <meyering@lucent.com>
39681
39682         * lib/mkdir.c: New file.
39683
39684 2001-09-15  Jim Meyering  <meyering@lucent.com>
39685
39686         * m4/jm-macros.m4: Check for help2man.
39687
39688 2001-09-11  Jim Meyering  <meyering@lucent.com>
39689
39690         * m4/host-os.m4 (UTILS_HOST_OS): New file/macro.
39691         The body, by Paul Eggert, was moved here from configure.in.
39692         * m4/jm-macros.m4: Require UTILS_HOST_OS.
39693
39694 2001-09-04  Paul Eggert  <eggert@twinsun.com>
39695
39696         * m4/prereq.m4 (jm_PREREQ_XREADLINK): New macro.
39697         (jm_PREREQ): Use it.
39698
39699 2001-09-04  Paul Eggert  <eggert@twinsun.com>
39700
39701         * lib/xreadlink.c (xreadlink): Omit size_t* arg.  All uses changed.
39702         Use ssize_t, not int, to store result of readlink.
39703         Check for ssize_t overflow as well as size_t overflow,
39704         as POSIX says the result of readlink is implementation-defined
39705         when ssize_t overflows.
39706         Remove unnecessary cast to char*.
39707         Use free+malloc instead of realloc, as the storage doesn't need
39708         to be preserved and it's clearer and can be more efficient that way.
39709         (SIZE_MAX, SSIZE_MAX): New macros, if <limits.h> doesn't declare.
39710         * lib/xreadlink.h (xreadlink): Update prototype.
39711
39712 2001-09-04  Paul Eggert  <eggert@twinsun.com>
39713
39714         * lib/xgetcwd.c: Revert some of the previous change; intead,
39715         fix the HAVE_GETCWD_NULL code to behave more like the
39716         !HAVE_GETCWD_NULL code used to.
39717
39718         Include "xalloc.h".
39719         (xgetcwd): Do not return NULL when memory is exhausted; instead,
39720         invoke xalloc_die.
39721
39722 2001-09-03  Paul Eggert  <eggert@twinsun.com>
39723
39724         * m4/prereq.m4 (jm_PREREQ_XGETCWD): Check for limits.h and
39725         sys/param.h, as pathmax.h includes them.
39726
39727 2001-09-03  Paul Eggert  <eggert@twinsun.com>
39728
39729         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_XGETCWD.
39730         (jm_PREREQ_XGETCWD): New macro.
39731
39732         * m4/getcwd.m4: New file.
39733
39734 2001-09-03  Paul Eggert  <eggert@twinsun.com>
39735
39736         * lib/xgetcwd.c: Fix the !HAVE_GETCWD_NULL code to behave more
39737         like the HAVE_GETCWD_NULL code.
39738         Include pathmax.h if not HAVE_GETCWD.
39739         Do not include xalloc.h.
39740         (INITIAL_BUFFER_SIZE): New symbol.
39741         Do not use xmalloc / xrealloc, since the caller is responsible for
39742         handling errors.  Preserve errno around `free' during failure.
39743         Do not overrun buffer when using getwd.
39744
39745 2001-09-03  Paul Eggert  <eggert@twinsun.com>
39746
39747         * lib/xgetcwd.c (xgetcwd): Use HAVE_GETCWD_NULL, not (defined
39748         __GLIBC__ && __GLIBC__ >= 2), to decide whether to use
39749         getcwd (NULL, 0).
39750
39751 2001-09-03  Paul Eggert  <eggert@twinsun.com>
39752
39753         * lib/exclude.c (fnmatch_no_wildcards): Fix confusion between
39754         usage of FNM_CASEFOLD and FNM_LEADING_DIR.  The bug was
39755         spotted by Jim Meyering.
39756
39757 2001-09-03  Jim Meyering  <meyering@lucent.com>
39758
39759         * lib/xreadlink.c (xreadlink): Preserve errno around `free' during
39760         failure.
39761
39762 2001-09-02  Jim Meyering  <meyering@lucent.com>
39763
39764         * lib/error.c: Update from GNU libc.
39765
39766 2001-09-01  Jim Meyering  <meyering@lucent.com>
39767
39768         * m4/jm-macros.m4 (jm_MACROS): Check for canonicalize_file_name.
39769         Used by df.
39770
39771 2001-09-01  Jim Meyering  <meyering@lucent.com>
39772
39773         * lib/xreadlink.c: New file.
39774         * lib/xreadlink.h: New file.
39775         * lib/Makefile.am (libfetish_a_SOURCES): Add xreadlink.c and
39776         xreadlink.h.
39777
39778         * lib/regex.c (uintptr_t) [!_LIBC]: Define to private_uintptr_t, so it
39779         doesn't conflict with sparc Solaris 7's definition in
39780         /usr/include/sys/int_types.h.
39781
39782         * lib/exclude.c: Use `""', not `<>' to #include non-system header
39783         files.
39784         (fnmatch_no_wildcards): Rewrite not to use function names, strcasecmp
39785         and strncasecmp as r-values.  Unixware didn't have declarations.
39786
39787 2001-08-31  Paul Eggert  <eggert@twinsun.com>
39788
39789         * lib/xstrtol.h: Add copyright notice.
39790         (_DECLARE_XSTRTOL): Improve quality of diagnostic for
39791         LONGINT_INVALID_SUFFIX_CHAR.
39792
39793 2001-08-31  Paul Eggert  <eggert@twinsun.com>
39794
39795         * lib/xstrtol.c (strtoimax): New decl.
39796
39797 2001-08-31  Paul Eggert  <eggert@twinsun.com>
39798
39799         * lib/xgetcwd.c: Don't include pathmax.h.
39800         Include stdlib.h and unistd.h if available.
39801         Include xalloc.h.
39802         (xmalloc, xstrdup, free): Remove decls.
39803         (xgetcwd): Don't assume sizes fit in unsigned.
39804         Check for overflow when computing sizes.
39805         Simplify reallocation code.
39806
39807 2001-08-31  Paul Eggert  <eggert@twinsun.com>
39808
39809         * lib/savedir.c (savedir): Remove size parameter, as POSIX says that
39810         a directory's st_size can have an arbitrary value, so the old
39811         usage could waste an arbitrary amount of memory.  All uses
39812         changed.
39813         * lib/savedir.h: Update prototype.
39814
39815 2001-08-31  Paul Eggert  <eggert@twinsun.com>
39816
39817         * lib/Makefile.am (libfetish_a_SOURCES): Remove strtoxmax.c.
39818
39819         * lib/strtoimax.c: Renamed from strtoxmax.c, removing the
39820         old strtoimax.c.
39821
39822         Also, make the following further changes to make this file's
39823         configuration more similar to that of strtol.c:
39824         (UNSIGNED): Renamed from STRTOUXMAX_UNSIGNED.  All uses changed.
39825         (strtoumax, uintmax_t, strtoull, strtol): Remove.
39826         (intmax_t, strtoimax, strtol, strtoll): New macros, if UNSIGNED.
39827         (strtoimax): Renamed from strtoumax.  All uses of unsigned values
39828         changed to signed values.
39829
39830         And make the following changes as well:
39831         Fix copyright notice, as 1999 was missing.
39832         (verify): New macro.
39833         (strtoimax): Check sizes at compile-time, not run-time.
39834         Prefer strtol to strtoll if both work.
39835         (main): Remove; it was not that useful and was a pain to maintain.
39836
39837         * lib/strtoumax.c: Include strtoimax.c, not strtouxmax.c.
39838
39839 2001-08-31  Jim Meyering  <meyering@lucent.com>
39840
39841         * lib/xgetcwd.c (xgetcwd): Reorganize to avoid some duplication.
39842         Use an initial, malloc'd, buffer of length 128 rather than
39843         a statically allocated one of length 1024.
39844
39845 2001-08-30  Paul Eggert  <eggert@twinsun.com>
39846
39847         Simplify code, partly by assuming autoconf 2.52 semantics.
39848
39849         * m4/Makefile.am (EXTRA_DIST): Remove uintmax_t.m4.
39850
39851         * m4/inttypes.m4 (AC_PREREQ): Bump to 2.52.
39852         (jm_AC_HEADER_INTTYPES_H): Remove; now done by autoconf in 2.52.
39853         All uses removed.
39854         (jm_AC_TYPE_INTMAX_T, jm_AC_TYPE_UINTMAX_T):
39855         Move AC_REQUIRE to next-to-top level, to avoid confusion.
39856         Use 2.52's AC_CHECK_TYPE instead of merely looking for the header.
39857         * m4/prereq.m4 (jm_PREREQ_HUMAN): Don't require
39858         jm_AC_HEADER_INTTYPES_H.
39859         * m4/jm-macros.m4 (jm_MACROS): Likewise.
39860
39861         * m4/uintmax_t.m4: Remove, as it duplicates inttypes.m4.
39862
39863         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
39864         Quote first arg of AC_DEFUN.
39865         Require jm_AC_TYPE_UINTMAX_T and jm_AC_TYPE_UNSIGNED_LONG_LONG
39866         since they are needed to parse the include file even if we need
39867         only xstrtoimax.  Simplify logic behind the args to AC_REPLACE.
39868         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Likewise,
39869         but with opposite signedness.
39870
39871 2001-08-30  Paul Eggert  <eggert@twinsun.com>
39872
39873         Merge 'exclude' changes from tar 1.13.22.
39874         This fixes one or two unlikely storage allocation overflow bugs,
39875         but doesn't change user-visible behavior otherwise.
39876
39877 2001-08-30  Paul Eggert  <eggert@twinsun.com>
39878
39879         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_EXCLUDE.
39880         (jm_PREREQ_EXCLUDE): New macro.
39881
39882 2001-08-30  Paul Eggert  <eggert@twinsun.com>
39883
39884         * lib/quotearg.c: BSD/OS 4.1 wchar.h requires FILE and struct
39885         tm to be declared.
39886
39887 2001-08-30  Paul Eggert  <eggert@twinsun.com>
39888
39889         * lib/hash.c: Remove '2001' from copyright notice.
39890
39891 2001-08-30  Paul Eggert  <eggert@twinsun.com>
39892
39893         * lib/full-write.h: New file.
39894         * lib/Makefile.am (libfetish_a_SOURCES): Add full-write.h.
39895         * lib/full-write.c: Correct credits, as cccp.c no longer
39896         exists and anyway it was so heavily changed from the old cccp
39897         code as to be unrecognizable.  Include full-write.h.
39898         (full_write) Return size_t, with short writes meaning failure.
39899         All callers changed.  This fixes a bug with large buffers
39900         on 64-bit hosts.
39901         * lib/utime.c: Include full-write.h.
39902
39903 2001-08-30  Paul Eggert  <eggert@twinsun.com>
39904
39905         * lib/exclude.c (bool): Declare, perhaps by including stdbool.h.
39906         (<sys/types.h>): Include only if HAVE_SYS_TYPES_H.
39907         (<stdlib.h>, <string.h>, <strings.h>, <inttypes.h>, <stdint.h>):
39908         Include if available.
39909         (<xalloc.h>): Include
39910         (SIZE_MAX): Define if <stdint.h> or <inttypes.h> doesn't.
39911         (verify): New macro.  Use it to verify that EXCLUDE macros do not
39912         collide with FNM macros.
39913         (struct patopts): New struct.
39914         (struct exclude): Use it, as exclude patterns now come with options.
39915         (new_exclude): Support above changes.
39916         (new_exclude, add_exclude_file):
39917         Initial size must now be a power of two to simplify overflow checking.
39918         (free_exclude, fnmatch_no_wildcards): New function.
39919         (excluded_filename): No longer requires options arg, as the options
39920         are determined by add_exclude.  Now returns bool, not int.
39921         (excluded_filename, add_exclude):
39922         Add support for the fancy new exclusion options.
39923         (add_exclude, add_exclude_file): Now takes int options arg.
39924         Check for arithmetic overflow when computing sizes.
39925         (add_exclude_file): xrealloc might modify errno, so don't
39926         realloc until after errno might be used.
39927
39928         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE,EXCLUDE_WILDCARDS):
39929         New macros.
39930         (free_exclude): New decl.
39931         (add_exclude, add_exclude_file): Now takes int options arg.
39932         (excluded_filename): No longer requires options arg, as the options
39933         are determined by add_exclude.  Now returns bool, not int.
39934
39935 2001-08-30  Paul Eggert  <eggert@twinsun.com>
39936
39937         * lib/alloca.c (alloca): Arg is of type size_t, not unsigned.
39938
39939 2001-08-27  Jim Meyering  <meyering@lucent.com>
39940
39941         * lib/Makefile.am (libfetish_a_SOURCES): Add strtoxmax.c
39942
39943         * lib/version-etc.c (N_): Remove definition.
39944         Revert most of last change.
39945         Instead, simply don't mark the `Copyright...' string for translation.
39946         Based on advice from Paul Eggert.
39947
39948         * lib/strtoxmax.c: Tweak comment.
39949
39950 2001-08-26  Jim Meyering  <meyering@lucent.com>
39951
39952         * m4/jm-macros.m4: Require jm_AC_PREREQ_XSTRTOIMAX.
39953
39954         * m4/xstrtoimax.m4: New file.
39955         * m4/xstrtoumax.m4: Add comments explaining why we
39956         AC_REPLACE_FUNCS(strtol).
39957
39958 2001-08-26  Jim Meyering  <meyering@lucent.com>
39959
39960         * lib/version-etc.c (version_etc_copyright_fmt): Replace literal year
39961         of copyright with `%s' so translators don't get an untranslated
39962         message in 2002.
39963         (COPYRIGHT_YEAR): Define.
39964         (version_etc): Use fprintf rather than fputs.
39965         Suggestion from Ulrich Drepper.
39966
39967         * lib/Makefile.am (libfetish_a_SOURCES): Add xstrtoimax.c.
39968
39969         * lib/strtoll.c: New file, from GNU libc.
39970         * lib/xstrtoimax.c: New file.
39971
39972         * lib/xstrtol.h: Add xstrtoimax.
39973         * lib/strtoumax.c: New file.  Simply include "strtoumax.c".
39974         * lib/strtoimax.c: New file.  Likewise, but first define
39975         STRTOUXMAX_SIGNED.
39976
39977         * lib/strtoumax.c: Factor to work both for unsigned and signed types,
39978         ...
39979         * lib/strtoxmax.c: ... then renamed to this.
39980
39981 2001-08-18  Paul Eggert  <eggert@twinsun.com>
39982
39983         * m4/inttypes.m4: Add AC_PREREQ(2.13).
39984         (jm_AC_HEADER_INTTYPES_H): Test for intmax_t, too.
39985         (jm_AC_TYPE_INTMAX_T): New macro.
39986         (jm_AC_TYPE_UINTMAX_T): Moved here from uintmax_t.m4.
39987
39988         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): New macro.
39989
39990         * m4/longlong.m4: Renamed from ulonglong.m4.
39991         * m4/inttypes.m4: Renamed from inttypes_h.m4.
39992         * m4/uintmax_t.m4: Removed.
39993
39994 2001-08-13  Paul Eggert  <eggert@twinsun.com>
39995
39996         * lib/Makefile.am (unlocked-io.h): Do not append "_unlocked" twice.
39997         Port to Solaris 8, where 'sed' requires a space after the 'r'
39998         command, and where sh dislikes "$/".  Clean up the spacing a bit.
39999         Redirect output to $tmp just once.
40000
40001 2001-08-12  Paul Eggert  <eggert@sic.twinsun.com>
40002
40003         * lib/addext.c (<errno.h>): Include.
40004         (errno): Declare if not defined.
40005         (addext): Work correctly when pathconf returns -1 and leaves
40006         errno alone because there is no limit.  Also, work even if
40007         pathconf returns a value greater than SIZE_MAX.
40008
40009 2001-08-12  Jim Meyering  <meyering@lucent.com>
40010
40011         * m4/afs.m4, assert.m4, bison.m4, check-decl.m4, chown.m4, d-ino.m4,
40012         d-type.m4, dos.m4, error.m4, fnmatch.m4, fpending.m4, fstypename.m4,
40013         fsusage.m4, ftruncate.m4, getgroups.m4, glibc.m4, gnu-source.m4,
40014         group-member.m4, jm-glibc-io.m4, jm-macros.m4, jm-mktime.m4,
40015         jm-winsz1.m4, jm-winsz2.m4, lchown.m4, lib-check.m4, libintl.m4,
40016         link-follow.m4, ls-mntd-fs.m4, lstat.m4, malloc.m4, mbrtowc.m4,
40017         mbstate_t.m4, mbswidth.m4, memcmp.m4, nanosleep.m4, perl.m4,
40018         prereq.m4, putenv.m4, readdir.m4, realloc.m4, regex.m4, rename.m4,
40019         rmdir-errno.m4, search-libs.m4, st_dm_mode.m4, st_mtim.m4, stat.m4,
40020         strftime.m4, timespec.m4, unlink-busy.m4, uptime.m4, utimbuf.m4,
40021         utime.m4, utimes.m4, xstrtoumax.m4:
40022         Quote the first argument in each use of AC_DEFUN.
40023
40024 2001-08-12  Jim Meyering  <meyering@lucent.com>
40025
40026         * lib/xgetcwd.c (xgetcwd) [defined __GLIBC__ && __GLIBC__ >= 2]:
40027         Simply `return getcwd (NULL, 0);'.
40028         [! (defined __GLIBC__ && __GLIBC__ >= 2)]:
40029         Use 1300 as initial value for length, not PATH_MAX.
40030
40031         * lib/pathmax.h: Clean up cpp syntax.
40032
40033 2001-08-12  Jim Meyering  <meyering@lucent.com>
40034
40035         * lib/gettimeofday.c: New file.
40036         * lib/gtod.h: New file.
40037         * lib/Makefile.am (libfetish_a_SOURCES): Add gtod.h.
40038
40039 2001-08-05  Jim Meyering  <meyering@lucent.com>
40040
40041         * m4/jm-macros.m4: Require autoconf-2.52.
40042
40043 2001-08-04  Jim Meyering  <meyering@lucent.com>
40044
40045         * lib/error.h (__attribute__): Remove `|| __STRICT_ANSI__' from #if
40046         stmt, to get in sync with glibc.
40047
40048 2001-08-03  Paul Eggert  <eggert@twinsun.com>
40049
40050         The following changes are from gettext 0.10.39 as maintained by
40051         Bruno Haible.
40052
40053         * lib/mbswidth.h (MBSW_REJECT_UNPRINTABLE, MBSW_REJECT_INVALID):
40054         Renamed from MBSW_ACCEPT_UNPRINTABLE and MBSW_ACCEPT_INVALID
40055         with inverted sense.  All uses changed.
40056
40057         * lib/mbswidth.c: Don't include <limits.h>.
40058         Include <stdlib.h> and <string.h> unconditionally.
40059         (iswcntrl, mbsinit, ISCNTRL): New macros.
40060         (mbsnwidth): Use K&R style function declarations.
40061         Don't bother checking for MB_LEN_MAX == 1, since the compiler
40062         can optimize it when MB_CUR_MAX == 1.
40063         The width of control characters is zero, not 1.
40064
40065 2001-08-03  Paul Eggert  <eggert@twinsun.com>
40066
40067         The following changes are from gettext 0.10.39 as maintained by
40068         Bruno Haible, except that getline.m4 continues to use AC_LIBOBJ.
40069
40070         * m4/codeset.m4: Upgrade to serial AM1.
40071         (AM_LANGINFO_CODESET): Renamed from jm_LANGINFO_CODESET;
40072         all uses changed.  Quote first arg of AC_DEFUN.
40073         (am_cv_langinfo_codeset): Renamed from jm_cv_langinfo_codeset.
40074
40075         * m4/iconv.m4: Upgrade to serial AM2.
40076         (AM_ICONV): Renamed from jm_ICONV; all uses changed.
40077         Add --with-libconv-prefix.
40078         Quote first arg of AC_DEFUN.  Add description for ICONV_CONST.
40079         (am_cv_func_iconv): Renamed from jm_cv_func_iconv.
40080         (am_cv_lib_iconv): Renamed from jm_cv_lib_iconv.
40081         (am_cv_proto_iconv): Renamed from jm_cv_proto_iconv.
40082         * m4/jm-macros.m4 (jm_MACROS): Reflect s/jm_/AM_/ renamings.
40083
40084         * m4/c-bs-a.m4 (AC_C_BACKSLASH_A): Quote first arg of AC_DEFUN.
40085         * m4/getline.m4 (AM_FUNC_GETLINE): Likewise.
40086         * m4/glibc21.m4 (jm_GLIBC21): Likewise.
40087         * m4/inttypes_h.m4 (jm_AC_HEADER_INTTYPES_H): Likewise.
40088         * m4/isc-posix.m4 (AC_ISC_POSIX): Likewise.
40089         * m4/lcmessage.m4 (AM_LC_MESSAGES): Likewise.
40090         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): Likewise.
40091         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Likewise.
40092         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Likewise.
40093
40094         * m4/getline.m4 (AM_FUNC_GETLINE): Don't bother checking for
40095         string.h any more.
40096
40097         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): If not found, print "no",
40098         not the default value.
40099
40100         2001-06-25  Bruno Haible  <haible@clisp.cons.org>
40101         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Don't require AM_C_PROTOTYPES.
40102         Also check for mbsinit.  Needed for SCO 3.2v5.0.2.
40103         Also include <string.h>; this is where AIX 3.2.5 declares wcwidth.
40104         Also check for iswcntrl, used for wcwidth fallback.
40105         Use AC_TRY_COMPILE to emulate AC_CHECK_DECLS, for portability
40106         to Autoconf 2.13.
40107
40108 2001-08-03  Jim Meyering  <meyering@lucent.com>
40109
40110         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Use `#include', not `@%:@include',
40111         as it was in the original.  Reported by Paul Eggert.
40112
40113 2001-07-16  Jim Meyering  <meyering@lucent.com>
40114
40115         * m4/gettimeofday.m4: New file.
40116         Prompted by a report from Bernhard Baehr.
40117
40118 2001-07-15  Jim Meyering  <meyering@lucent.com>
40119
40120         * m4/Makefile.am.in (Makefile.am): Remove most of the unlocked-io.h
40121         stuff. Now it's in ../Makefile.cfg.
40122
40123 2001-07-15  Jim Meyering  <meyering@lucent.com>
40124
40125         * lib/Makefile.am (EXTRA_DIST): Add unlocked-io.hin.
40126         (BUILT_SOURCES): Add unlocked-io.h.
40127         (io_functions): Define.
40128         (unlocked-io.h): New rule.
40129         (DISTCLEANFILES): Add unlocked-io.h.
40130         (all-local): Depend on unlocked-io.h, to ensure it is created.
40131
40132         * lib/unlocked-io.hin: New file
40133
40134         * lib/regex.c: Update from glibc.
40135
40136 2001-07-05  Jim Meyering  <meyering@lucent.com>
40137
40138         * lib/Makefile.am (noinst_HEADERS): Remove definition, per new automake
40139         recommendation.
40140         (libfetish_a_SOURCES): Put all .h files here instead.
40141         Remove a thus-exposed (better checks in automake) duplicate and
40142         two unnecessary .h files.
40143
40144 2001-07-04  Jim Meyering  <meyering@lucent.com>
40145
40146         * m4/Makefile.am.in (glibc-io.struct): New target.  Rework the code
40147         that generates jm-glibc-io.m4 so that it doesn't trigger any make
40148         distcheck failure.
40149
40150 2001-07-02  Jim Meyering  <meyering@lucent.com>
40151
40152         The following changes were prompted by suggestions from Bruno Haible.
40153
40154         * m4/jm-glibc-io.m4n: New file, the template from which jm-glibc-io.m4
40155         is now generated.
40156         * m4/Makefile.am.in (Makefile.am): Include jm-glibc-io.m4n in emitted
40157         definition of EXTRA_DIST.
40158         (Makefile.am): Emit the dependency, `all-local: jm-glibc-io.m4' to
40159         ensure that the generated file is created/updated whenever the list
40160         of $(unlocked_functions) is changed.
40161         (jm-glibc-io.m4): New rule.
40162         (unlocked-io.h): New rule -- currently unused.
40163
40164 2001-06-24  Jim Meyering  <meyering@lucent.com>
40165
40166         * m4/regex.m4 (jm_INCLUDED_REGEX): Use a quadrigraph to represent an
40167         unmatched right bracket, rather than kludging it with an extra,
40168         falsely-matching quote in a comment.  Patch by Akim Demaille.
40169
40170 2001-06-11  Jim Meyering  <meyering@lucent.com>
40171
40172         * lib/regex.c: Update from GNU libc.
40173
40174 2001-05-27  Jim Meyering  <meyering@lucent.com>
40175
40176         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for ut_type in struct utmpx.
40177         Check for ut_type in struct utmp.
40178
40179 2001-05-27  Jim Meyering  <meyering@lucent.com>
40180
40181         * lib/readutmp.h (UT_TYPE): Define.
40182
40183 2001-05-24  Jim Meyering  <meyering@lucent.com>
40184
40185         * lib/argmatch.c: Include "quote.h".
40186         (argmatch_invalid): Remove explicit `' quotes.  Instead, use the
40187         quote function.  Reported by Göran Uddeborg.
40188
40189 2001-05-22  Jim Meyering  <meyering@lucent.com>
40190
40191         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't use AC_LIBOBJ(strftime),
40192         now that we use the package-supplied version unconditionally.
40193         (jm_FUNC_STRFTIME): Don't replace strftime, for the same reason.
40194
40195 2001-05-21  Jim Meyering  <meyering@lucent.com>
40196
40197         * m4/regex.m4: Change a couple backticks to single quotes to avoid
40198         shell syntax errors.
40199
40200 2001-05-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
40201
40202         * m4/dos.m4 (jm_AC_DOS): Check for _WIN32, __WIN32__, and __MSDOS__.
40203
40204 2001-05-20  Paul Eggert  <eggert@twinsun.com>
40205
40206         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME):
40207         Don't bother to check library strftime, since
40208         we'll be using our own my_strftime function anyway.
40209         Define my_strftime instead of strftime.
40210
40211 2001-05-20  Alexandre Duret-Lutz  <duret_g@epita.fr>
40212
40213         * lib/dirname.c (dir_name): Compute append_dot using path, not newpath
40214         which is not yet declared.
40215
40216 2001-05-15  Jim Meyering  <meyering@lucent.com>
40217
40218         * m4/regex.m4: Use proper quoting so brackets appear in the test
40219         program.
40220         Reported by, and with help from, Bruno Haible.
40221
40222 2001-05-13  Jim Meyering  <meyering@lucent.com>
40223
40224         * m4/jm-macros.m4 (major_t, minor_t): Define to unsigned int if
40225         undefined.
40226
40227 2001-05-11  Paul Eggert  <eggert@twinsun.com>
40228
40229         dirname code cleanup.  base_name now behaves more compatibly
40230         with POSIX basename when given file names that have trailing
40231         slashes, and similarly for dir_name.  Add new primitives
40232         base_len and dir_len.  Put the directory-name-related decls
40233         into dirname.h.
40234
40235         * lib/addext.c (ISSLASH, base_name): Remove; now in dirname.h.
40236         * lib/backupfile.c (base_name): Likewise.
40237         * lib/basename.c (FILESYSTEM_PREFIX_LEN, PARAMS, ISSLASH): Likewise.
40238         * lib/dirname.c (FILESYSTEM_PREFIX_LEN, ISSLASH): Likewise.
40239         * lib/makepath.c (strip_trailing_slashes): Likewise.
40240         * lib/path-concat.c (DIRECTORY_SEPARATOR, FILESYSTEM_PREFIX_LEN,
40241         ISSLASH): Likewise.
40242         * lib/rename.c (strip_trailing_slashes): Likewise.
40243         * lib/same.c (base_name): Likewise.
40244         * lib/stripslash.c (ISSLASH): Likewise.
40245
40246         * lib/addext.c: Include <dirname.h> after size_t is defined.
40247         * lib/backupfile.c: Likewise.
40248
40249         * lib/addext.c (addext): Use base_len to trim redundant
40250         trailing slashes instead of doing it ourselves.
40251         But do not trim the last slash if it is not redundant.
40252
40253         * lib/backupfile.c (find_backup_file_name,
40254         max_backup_version): Use base_len instead of rolling it ourselves.
40255         Handle the case of "" and (on DOS) "C:" correctly.
40256
40257         * lib/basename.c: Do not include <stdio.h>, <assert.h>; no longer
40258         needed. Include <string.h>, <dirname.h>.
40259         (base_name): Allow file names ending in slashes, other than names
40260         that are all slashes.  In this case, return the basename followed
40261         by the slashes.  This is more general, and can be used in places
40262         where the original base_name purposely had an assertion failure.
40263         (base_len): New function.
40264
40265         * lib/dirname.c: Include <string.h> instead of <stdlib.h>.
40266         Do not include <assert.h>; no longer needed.
40267         Include xalloc.h.
40268         (memrchr): Remove decl.
40269         (dir_name_r): Remove.
40270         (dir_len): Renamed from dirlen.  All callers changed.
40271         Rewrite in terms of base_name, for simplicity and consistency.
40272         (dir_name): Never return NULL.  All callers changed.
40273         Do not include <stdlib.h> in test program; no longer needed.
40274         return 0; is fine for test program.
40275
40276         * lib/dirname.h (DIRECTORY_SEPARATOR, ISSLASH, FILESYSTEM_PREFIX_LEN):
40277         New macros.
40278         (base_name, base_len, dir_len, strip_trailing_slashes): New decls.
40279
40280         * lib/path-concat.c (path_concat): Use base_len to compute
40281         base length, not strlen; this means we cannot rely on memcpy
40282         to null-terminate.
40283
40284         * lib/same.c (STREQ): Remove.
40285         (same_name): Handle the case where the basename ends in trailing '/'.
40286
40287         * lib/stripslash.c (strip_trailing_slashes): Return nonzero if
40288         a slash was stripped.  Do not strip the last slash after a
40289         file system prefix.
40290
40291 2001-05-11  Paul Eggert  <eggert@twinsun.com>
40292
40293         * lib/Makefile.am (libfetish_a_SOURCES):
40294         Add strftime.c, since we now compile it on all hosts.
40295
40296         * lib/strftime.c (my_strftime):
40297         Define to nstrftime if emacs, but only if my_strftime is not defined.
40298         (extra_args, extra_args_spec, extra_args_spec_iso): Rename from
40299         ut_argument, ut_argument_spec, ut_argument_spec_iso, respectively.
40300         Add one more extra argument: a nanoseconds value.
40301         All uses changed.
40302         (ns): New macro.
40303         (my_strftime function): Add %N format.
40304         (emacs_strftimeu): Renamed from emacs_strftime,
40305         with extra ut argument.
40306
40307 2001-05-09  Paul Eggert  <eggert@twinsun.com>
40308
40309         * m4/jm-macros.m4 (jm_MACROS): Do not check for fseeko; no longer used.
40310
40311 2001-04-21  Jim Meyering  <meyering@lucent.com>
40312
40313         * m4/rmdir-errno.m4: Write to a new file, so that a restrictive umask
40314         doesn't interfere.
40315
40316 2001-04-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
40317
40318         * m4/ftruncate.m4: Check for chsize.
40319         Link with ftruncate.o unconditionally if ftruncate is missing.
40320         This was required when cross-compiling to i586-mingw32msvc.
40321
40322 2001-04-08  Jim Meyering  <meyering@lucent.com>
40323
40324         * lib/getdate.y (get_date): Set tm_isdst to -1 to ensure that it is
40325         recomputed; that's necessary when the offset spans a DST transition.
40326         Patch by David J. MacKenzie.  Reported by Hon-Yin Kok.
40327
40328 2001-04-02  Jim Meyering  <meyering@lucent.com>
40329
40330         * lib/regex.h, regex.c: Update from GNU libc.
40331
40332 2001-03-24  Jim Meyering  <meyering@lucent.com>
40333
40334         * m4/jm-macros.m4: Require autoconf-2.49d.
40335
40336 2001-03-20  Bruno Haible  <haible@clisp.cons.org>
40337
40338         * m4/iconv.m4 (jm_ICONV): Recommend GNU libiconv.
40339
40340 2001-03-19  Paul Eggert  <eggert@twinsun.com>
40341
40342         * lib/version-etc.c (version_etc_copyright): Update to 2001.
40343
40344 2001-03-17  Jim Meyering  <meyering@lucent.com>
40345
40346         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Remove my copy of AC_FUNC_MEMCMP,
40347         now that the version in autoconf is equivalent.
40348         (jm_FUNC_MEMCMP): Adjust to use AC_FUNC_MEMCMP.
40349
40350         * m4/error.m4 (jm_PREREQ_ERROR): Invoke AC_FUNC_STRERROR_R.
40351         Suggestion from Akim Demaille.
40352
40353         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_TEMPNAME.
40354         (jm_PREREQ_TEMPNAME): New function.
40355
40356 2001-03-16  Paul Eggert  <eggert@twinsun.com>
40357
40358         * lib/tempname.c (uint64_t): Define to uintmax_t if
40359         not defined, and if UINT64_MAX is not defined.
40360         Required at least for Vax Ultrix4.3, which doesn't define uint64_t.
40361         Reported by John David Anglin.
40362
40363 2001-03-15  Bruno Haible  <haible@clisp.cons.org>
40364
40365         * lib/localcharset.c (locale_charset): Allow wildcard syntax. Also
40366         resolve alias if codeset is empty.
40367         * lib/config.charset (BeOS): Use wildcard syntax.
40368
40369 2001-03-13  Jim Meyering  <meyering@lucent.com>
40370
40371         * lib/path-concat.c (path_concat)
40372         [FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't insert a backslash when
40373         concatenating e.g., `C:' and `foo'.
40374         From Bruno Haible.
40375
40376 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
40377
40378         * lib/localcharset.c (locale_charset): Don't use
40379         setlocale(LC_CTYPE,NULL). Don't return NULL.
40380         * lib/unicodeio.c (print_unicode_char): Simplify accordingly.
40381
40382 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
40383
40384         * lib/config.charset: Update for FreeBSD 4.2 and OSF/1 5.1. Add
40385         support for DOS/DJGPP.
40386
40387 2001-03-01  Paul Eggert  <eggert@twinsun.com>
40388
40389         * m4/jm-macros.m4 (jm_MACROS): Use mkstemp replacement if the system
40390         lacks mkstemp.  Compile our own tempname.c if we compile our own
40391         mkstemp.c, as mkstemp relies on tempname.
40392
40393 2001-03-01  Jim Meyering  <meyering@lucent.com>
40394
40395         * m4/dos.m4 (jm_AC_DOS): Remove extra backslashes, now that
40396         AH_VERBATIM really does output its argument verbatim.
40397
40398 2001-02-28  Paul Eggert  <eggert@twinsun.com>
40399
40400         * lib/Makefile.am (libfetish_a_SOURCES):
40401         Add dup-safer.c, fopen-safer.c.
40402         (noinst_HEADERS): Add stdio-safer.h, unistd-safer.h.
40403
40404         * lib/dup-safer.c, lib/fopen-safer.c, lib/stdio-safer.h:
40405         * lib/unistd-safer.h: New files.
40406
40407 2001-02-25  Paul Eggert  <eggert@twinsun.com>
40408
40409         The mkstemp replacement is taken from glibc 2.2.2, with some
40410         portability fixes for use outside glibc, as follows:
40411
40412         * lib/tempname.c (struct_stat64): New macro.
40413         (direxists, __gen_tempname): Use it.
40414         This avoids a portability problem with Solaris 8.
40415
40416         * lib/tempname.c (<config.h>): Include if HAVE_CONFIG_H.
40417         (<stddef.h>, <stdint.h>, <string.h>):
40418         Include only if STDC_HEADERS || _LIBC.
40419         (<fcntl.h>): Include only if HAVE_FCNTL_H || _LIBC.
40420         (<unistd.h>): Include only if HAVE_UNISTD_H || _LIBC.
40421         (<sys/time.h>): Include only if HAVE_SYS_TIME_H || _LIBC.
40422         (__set_errno): Define this macro if <errno.h> doesn't.
40423         (P_tmpdir, TMP_MAX, __GT_FILE, __GT_BIGFILE, __GT_DIR, __GT_NOCREATE):
40424         Define these macros if <stdio.h> doesn't.
40425         (S_ISDIR, S_IRUSR, S_IWUSR, S_IXUSR):
40426         Define these macros if <sys/stat.h>
40427         doesn't.  Ignore <sys/stat.h> S_ISDIR if STAT_MACROS_BROKEN.
40428         (stat64, __getpid, __gettimeofday, __mkdir, __open, __open64, lxstat64,
40429         __xstat64): Define if not _LIBC.
40430         (__secure_getenv): Define if ! (HAVE___SECURE_GETENV || _LIBC).
40431         (__gen_tempname): Invoke gettimeofday only if
40432         HAVE_GETTIMEOFDAY || _LIBC;
40433         otherwise, fall back on plain "time".
40434         Use macros like S_IRUSR | S_IWUSR rather than octal values like 0600.
40435
40436         * lib/mkstemp.c (__GT_FILE): Define to zero if not defined.
40437
40438         * lib/mkstemp.c, lib/tempname.c: New files, taken from glibc 2.2.2.
40439
40440 2001-02-18  Paul Eggert  <eggert@twinsun.com>
40441
40442         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for sys/resource.h.
40443
40444 2001-02-17  Paul Eggert  <eggert@twinsun.com>
40445
40446         * m4/mbrtowc.m4: New file, defining jm_FUNC_MBRTOWC.
40447         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH):
40448         Use jm_FUNC_MBRTOWC, not AC_CHECK_FUNCS(mbrtowc).
40449         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
40450
40451 2001-02-17  Paul Eggert  <eggert@twinsun.com>
40452
40453         * lib/mbswidth.c, quotearg.c (mbrtowc, mbsinit):
40454         Remove workaround macros for hosts that have mbrtowc but not
40455         mbstate_t, as we now insist on proper declarations for both
40456         before using mbrtowc.
40457
40458 2001-02-17  Jim Meyering  <meyering@lucent.com>
40459
40460         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Don't check for
40461         getmntent via AC_CHECK_FUNCS, since that would get a `no' and disrupt
40462         further attempts by AC_FUNC_GETMNTENT to check with e.g., -lgen on
40463         UnixWare 7.1.1.
40464
40465         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Adapt to use AC_CACHE_CHECK etc.,
40466         rather than AC_CACHE_VAL.
40467
40468 2001-02-17  Jim Meyering  <meyering@lucent.com>
40469
40470         * lib/strtoul.c: Sync from GNU libc.  Use double quotes, not <...>
40471         around included file name.
40472
40473         * lib/strnlen.c (__strnlen): Merge in a change from GNU libc.
40474
40475         * lib/strftime.c: Update from GNU libc (the only changes were to
40476         comments).
40477
40478 2001-02-17  Jim Meyering  <meyering@lucent.com>
40479
40480         * lib/regex.c: Update from libc.
40481
40482 2001-02-17  Bruno Haible  <haible@clisp.cons.org>
40483
40484         * lib/mbswidth.h (mbswidth): Also define as macro, to avoid prototype
40485         clash.
40486
40487 2001-02-16  Paul Eggert  <eggert@twinsun.com>
40488
40489         * lib/alloca.c (malloc): Undef before defining, since stdlib.h
40490         may have defined it.  Needed for Encore Umax-3.0.9.16b systems.
40491         Reported by Mark Hounschell via Paul Eggert.
40492
40493 2001-02-07  Jim Meyering  <meyering@lucent.com>
40494
40495         * m4/regex.m4 (jm_INCLUDED_REGEX): Add a test for the latest bug.
40496
40497 2001-02-05  Jim Meyering  <meyering@lucent.com>
40498
40499         * m4/jm-macros.m4: Require autoconf-2.14d (not yet released), because
40500         it includes the patch required for `large file' support with at least
40501         HP-UX's 10.20 /bin/cc.
40502
40503 2001-02-03  Jim Meyering  <meyering@lucent.com>
40504
40505         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Restore prior use of
40506         AS_IF, now that it works once again (mysteriously).
40507         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
40508
40509 2001-01-30  Jim Meyering  <meyering@lucent.com>
40510
40511         Don't use filenames that are 8.3-equivalent to "conftest" on DOS.
40512         * m4/chown.m4: Rename conftestchown to conftest.chown.
40513         * m4/rename.m4: s/conftestdir/conftest.d1/ and
40514         s/conftestdir2/conftest.d2/.
40515         * m4/utimes.m4: s/conftestdata/conftest.data/
40516         Inspired by Pavel Roskin's change in autoconf.
40517
40518 2001-01-30  Bruno Haible  <haible@clisp.cons.org>
40519
40520         * lib/config.charset: Update for FreeBSD 4.2.
40521
40522 2001-01-27  Jim Meyering  <meyering@lucent.com>
40523
40524         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Open-code what was
40525         a use of AS_IF.
40526         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
40527
40528 2001-01-26  Jim Meyering  <meyering@lucent.com>
40529
40530         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Check for stddef.h, now that
40531         quotearg.c includes it.
40532
40533 2001-01-26  Jim Meyering  <meyering@lucent.com>
40534
40535         * lib/quotearg.c: Include stddef.h.
40536         * lib/quote.c: Include stddef.h.
40537         Reported by Axel Kittenberger.
40538
40539         * lib/xmalloc.c [HAVE_DONE_WORKING_MALLOC_CHECK]: Enclose error-evoking
40540         line in double quotes so that it evokes a better diagnostic.
40541         [HAVE_DONE_WORKING_REALLOC_CHECK]: Likewise.
40542         Reported by Axel Kittenberger.
40543
40544 2001-01-24  Stefan Monnier  <monnier@cs.yale.edu>
40545
40546         * regex.c (mutually_exclusive_p): Don't blindly handle `charset_not'
40547         as if it was a `charset'.
40548
40549 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
40550
40551         * m4/iconv.m4 (jm_ICONV): Also check whether the iconv declaration
40552         has const.
40553
40554 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
40555
40556         * lib/unicodeio.c (print_unicode_char): Cast the second iconv() arg,
40557         to avoid a warning.  Add back 'const' to inptr.
40558
40559 2001-01-20  Jim Meyering  <meyering@lucent.com>
40560
40561         Be sure that headers are checked before used in code compiled
40562         for the type checks.
40563         * m4/jm-macros.m4 (jm_MACROS): Remove all header checks.
40564         In place of that, invoke jm_CHECK_ALL_TYPES.
40565         (jm_CHECK_ALL_HEADERS): New functions with the above checks.
40566         (jm_CHECK_ALL_TYPES): Require jm_CHECK_ALL_HEADERS.
40567         Alan Iwi reported a build failure on an f300-fujitsu-uxpv4.1_ES;
40568         The check for ssize_t was mistakenly run before the test for unistd.h.
40569
40570         The configure-time check for stdbool.h was missing.
40571         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_HASH.
40572         (jm_PREREQ_HASH): New function.
40573
40574 2001-01-17  Jim Meyering  <meyering@lucent.com>
40575
40576         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use AS_IF, not AS_IFELSE,
40577         for autoconf-2.49c.
40578         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Likewise.
40579
40580 2001-01-16  Jim Meyering  <meyering@lucent.com>
40581
40582         * lib/basename.c: Include <stdio.h>, needed by assert on SunOS 4.
40583         From Bruno Haible.
40584
40585 2001-01-14  Jim Meyering  <meyering@lucent.com>
40586
40587         * m4/rename.m4: Use temporary directories named conftestdir{,2}, not
40588         foo and bar.  Create conftestdir/ in the script, not in the C code.
40589         Remove directories in the script, not in the C code.
40590         Remove conftestdir{,2} before trying to create the directory.
40591         Make the entire configure script fail if the mkdir fails.
40592
40593 2001-01-14  Jim Meyering  <meyering@lucent.com>
40594
40595         * lib/rename.c: New file.  From Volker Borchert.
40596         Include stdlib.h, string.h or strings.h, and xalloc.h.
40597         Use strip_trailing_slashes rather than open-coding it.
40598
40599 2001-01-03  Paul Eggert  <eggert@twinsun.com>
40600
40601         * lib/strftime.c: Sync with glibc time/strftime.c 1.81.
40602
40603 2001-01-03  Jim Meyering  <meyering@lucent.com>
40604
40605         * lib/unicodeio.c (print_unicode_char): Remove `const' from declaration
40606         of local `inptr' to avoid warning with some system declarations of
40607         iconv.
40608
40609 2001-01-02  Volker Borchert  <bt@teknon.de>
40610
40611         * m4/rename.m4: New file.
40612         * m4/jm-macros.m4 (jm_MACROS): Require vb_FUNC_RENAME.
40613
40614 2001-01-01  Jim Meyering  <meyering@lucent.com>
40615
40616         * m4/prereq.m4 (jm_PREREQ_READUTMP): Include utmp.h (if available),
40617         even on systems with utmpx.h.  It's necessary for the declaration of
40618         utmp's ut_user member.  Reported by Andreas Jaeger.
40619
40620         * m4/check-decl.m4 (jm_CHECK_DECLS): Include grp.h and pwd.h if
40621         available. They are required for the declarations of getgrgid and
40622         getpwuid resp.
40623         (_jm_DECL_HEADERS): Check for grp.h and pwd.h.
40624         Reported by Andreas Jaeger.
40625
40626 2001-01-01  Alexandre Duret-Lutz  <duret_g@epita.fr>
40627
40628         * m4/libintl.m4 (AM_GNU_GETTEXT): Define MKINSTALLDIRS by
40629         expanding the value of $ac_aux_dir, as in AM_MISSING_HAS_RUN,
40630         so `make install' also works in VPATH builds.
40631
40632 2000-12-31  Alexandre Duret-Lutz  <duret_g@epita.fr>
40633
40634         * m4/libintl.m4 (AM_WITH_NLS): When using AC_CONFIG_AUX_DIR,
40635         prepend $(top_srcdir) to the value of MKINSTALLDIRS so that it
40636         can be used in subdirectories.
40637
40638 2000-12-29  Paul Eggert  <eggert@twinsun.com>
40639
40640         * lib/modechange.c: Do not assume that mode_t uses the
40641         traditional octal encoding.  E.g. "chmod 1 FOO" should set
40642         the other-execute bit of FOO even if S_IXOTH != 1.
40643
40644         (SUID, SGID, SVTX, RUSR, WUSR, XUSR, RGRP, WGRP, XGRP, ROTH,
40645         WOTH, XOTH, ALLM): New macros.
40646         (S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR,
40647          S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH):
40648         Use them.
40649         (S_ISGID): Fix typo; it was defaulting to the same value as S_ISUID.
40650         (S_IRWXU, S_IRWXG, S_IRWXO): Specify defaults in terms of the above.
40651         (mode_compile):
40652         No need to use uintmax_t; unsigned long is long enough.
40653         Don't bother to get suffix since we don't use it.
40654
40655 2000-12-26  Jim Meyering  <meyering@lucent.com>
40656
40657         * m4/dos.m4 (jm_AC_DOS): Rewrite (though it's still a stub) to work
40658         better with autoheader.
40659
40660 2000-12-24  Jim Meyering  <meyering@lucent.com>
40661
40662         * lib/hash.c (is_prime): Return explicit boolean values.
40663         (hash_get_first): Return NULL to appease Irix5.6's 89.
40664         Reported by Nelson Beebe.
40665
40666 2000-12-19  Bruno Haible  <haible@clisp.cons.org>
40667
40668         * lib/localcharset.c (locale_charset): Add support for Win32.
40669
40670 2000-12-18  Paul Eggert  <eggert@twinsun.com>
40671
40672         * lib/physmem.h, lib/physmem.c: New files.
40673
40674         * lib/Makefile.am (libfetish_a_SOURCES): Add physmem.c.
40675         (noinst_HEADERS): Add physmem.h.
40676
40677         * lib/xstrtol.c (__xstrtol): Add undocumented suffixes 'g' and
40678         't' for compatibility with Solaris 8 sort.
40679
40680 2000-12-18  Bruno Haible  <haible@clisp.cons.org>
40681
40682         * lib/config.charset: Add support for BeOS.
40683
40684 2000-12-17  Jim Meyering  <meyering@lucent.com>
40685
40686         * m4/dos.m4 (jm_AC_DOS): New file and macro.
40687         * m4/jm-macros.m4 (jm_MACROS): Require jm_AC_DOS.
40688
40689 2000-12-16  Jim Meyering  <meyering@lucent.com>
40690
40691         This bug had a serious impact on chown: `chown N:M FILE' (for integer
40692         N and M) would have treated it like `chown N:N FILE'.
40693
40694         * lib/userspec.c (parse_user_spec): Fix typo: s/u/g/.
40695
40696 2000-12-16  Jim Meyering  <meyering@lucent.com>
40697
40698         * lib/getusershell.c [!SHELLS_FILE && __DJGPP__]: Define
40699         SHELLS_FILE to a file name that's useful on djgpp systems.
40700         Include stdlib.h.
40701         (ADDITIONAL_DEFAULT_SHELLS): Define.
40702         (default_shells): Prepend ADDITIONAL_DEFAULT_SHELLS.
40703         Based mostly on a patch from Prashant TR.
40704
40705 2000-12-16  Bruno Haible  <haible@clisp.cons.org>
40706
40707         * lib/config.charset: Add ISO-8859-3, BIG5HKSCS, GB18030, JOHAB,
40708         VISCII, CP874, CP949, CP950, CP1250, CP1253, CP1254, CP1255, CP1256,
40709         CP1257 to the list of canonical encodings. Rename EUC-CN to GB2312.
40710
40711 2000-12-08  Andreas Schwab  <schwab@suse.de>
40712
40713         * lib/mbswidth.c (mbsnwidth): Don't loop endlessly when called with an
40714         invalid mulitbyte sequence and with the MBSW_ACCEPT_INVALID flag set.
40715
40716 2000-12-07  Jim Meyering  <meyering@lucent.com>
40717
40718         * lib/stripslash.c (ISSLASH): Define.
40719         (strip_trailing_slashes): Use ISSLASH rather than comparing against
40720         `/'.
40721         From Prashant TR.
40722
40723         * lib/dirname.c (FILESYSTEM_PREFIX_LEN): Define.
40724         (dir_name_r): Declare this function as static.
40725         [BACKSLASH_IS_PATH_SEPARATOR]: Fix a bug that'd
40726         manifest itself on a name containing a mix of slashes and
40727         backslashes.
40728         Make this function work with names starting with a DOS-style
40729         drive letter and colon prefix.
40730         (dir_name): Append `.' if necessary.
40731         Based mostly on patches from Prashant TR and Eli Zaretskii.
40732
40733         * lib/dirname.h (dir_name_r): Remove prototype.
40734
40735 2000-12-06  Paul Eggert  <eggert@twinsun.com>
40736
40737         * m4/off_t-format.m4: Remove this file.
40738         * m4/jm-macros.m4 (jm_MACROS): Remove jm_SYS_OFF_T_PRINTF_FORMAT.
40739
40740 2000-12-06  Jim Meyering  <meyering@lucent.com>
40741
40742         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): If we need the
40743         replacement strtoull, we may well need the replacement strtoul, too.
40744         Check for declarations of strtoul and strtoull.
40745         Check for strtol.  Mainly as a cue to cause automake to include
40746         strtol.c -- that file is included by each of strtoul.c and strtoull.c.
40747         Check for limits.h -- strtol.c needs it.
40748
40749 2000-12-05  Jim Meyering  <meyering@lucent.com>
40750
40751         * lib/dirname.c (dir_name_r): Add `const' in a few local declarations.
40752
40753 2000-12-04  Jim Meyering  <meyering@lucent.com>
40754
40755         * lib/path-concat.c: [!HAVE_DECL_MALLOC]: Declare malloc.
40756         Also include memory.h, stdlib.h, unistd.h if appropriate.
40757         Reported by Andreas Jaeger (conflicting declaration of malloc).
40758
40759 2000-12-02  Jim Meyering  <meyering@lucent.com>
40760
40761         * m4/off_t-format.m4 (OFF_T_PRINTF_FORMAT_STRING): New file/macro.
40762         * m4/jm-macros.m4 (jm_MACROS): require it.
40763
40764 2000-12-02  Jim Meyering  <meyering@lucent.com>
40765
40766         * lib/closeout.h: Make idempotent, to avoid some obscure warnings.
40767
40768 2000-12-01  Paul Eggert  <eggert@twinsun.com>
40769
40770         * lib/memrchr.c: Include <config.h> before any system include file.
40771
40772 2000-11-30  Jim Meyering  <meyering@lucent.com>
40773
40774         * m4/jm-macros.m4 (jm_MACROS): Check for stdint.h.
40775
40776 2000-11-30  Jim Meyering  <meyering@lucent.com>
40777
40778         * m4/getloadavg.m4: s/ifval/m4_ifval/ to accommodate new autoconf.
40779
40780 2000-11-29  Paul Eggert  <eggert@twinsun.com>
40781
40782         * lib/dirname.c (dir_name_r): Fix typo: int -> size_t.
40783
40784 2000-11-26  Jim Meyering  <meyering@lucent.com>
40785
40786         * lib/memcoll.c: Include sys/types.h.  From Werner Almesberger.
40787
40788 2000-11-22  Paul Eggert  <eggert@twinsun.com>
40789
40790         * lib/strftime.c (my_strftime): Do not invoke mbrlen with a
40791         size of (size_t) -1; it's not portable.
40792
40793 2000-11-17  Jim Meyering  <meyering@lucent.com>
40794
40795         * lib/strstr.c: Update from GNU libc.
40796
40797 2000-11-17  Akim Demaille  <akim@epita.fr>
40798
40799         * lib/obstack.h: Formatting changes.
40800         (obstack_grow, obstack_grow0): Don't cast WHERE at all: that would
40801         prevent type checking.
40802         (obstack_ptr_grow, obstack_ptr_grow_fast): When assigning, don't
40803         cast the value to (void *): assigning a `foo *' to a `void *'
40804         variable is valid.
40805         (obstack_int_grow, obstack_int_grow_fast): Don't cast AINT to int.
40806
40807 2000-11-16  Jim Meyering  <meyering@lucent.com>
40808
40809         * lib/strverscmp.c: Incorporate weak-alias-related changes from glibc.
40810
40811 2000-11-11  Jim Meyering  <meyering@lucent.com>
40812
40813         * lib/error.c: Add a couple #includes, merging from GNU libc version.
40814
40815 2000-11-10  Jim Meyering  <meyering@lucent.com>
40816
40817         * lib/obstack.h: Update from GNU libc.
40818         * lib/obstack.c: Likewise.
40819
40820 2000-11-08  Bruno Haible  <haible@clisp.cons.org>
40821
40822         * m4/jm-macros.m4 (jm_MACROS): Add test for wcrtomb.
40823
40824 2000-11-06  Paul Eggert  <eggert@twinsun.com>
40825
40826         * lib/getusershell.c (setusershell): Use rewind rather than
40827         fseek/fseeko, to avoid configuration hassles with fseeko.
40828         Don't bother opening SHELLS_FILE if shellstream is NULL;
40829         it's not necessary.
40830
40831 2000-11-05  Jim Meyering  <meyering@lucent.com>
40832
40833         * lib/makepath.h (make_dir): Declare.
40834         * lib/makepath.c (make_dir): Remove `static' attribute.
40835         Tweak a comment.
40836
40837 2000-11-04  Jim Meyering  <meyering@lucent.com>
40838
40839         * m4/regex.m4: Use the `m4_' prefix on `syscmd' and `m4_sysval'.
40840
40841 2000-11-04  Alexandre Duret-Lutz  <duret_g@epita.fr>
40842
40843         * lib/hash.c (hash_get_next): Fix a thinko:  when ENTRY is the
40844         last one in a bucket, advance to the next bucket.
40845
40846 2000-11-02  Vesselin Atanasov  <vesselin@bgnet.bg>
40847
40848         * lib/fnmatch.c: Do not comment out all the code if we are using
40849         the GNU C library, because in some cases we are replacing buggy
40850         code in the GNU C library itself.
40851
40852 2000-10-30  Stefan Monnier  <monnier@cs.yale.edu>
40853
40854         * regex.c (re_iswctype, re_wctype_to_bit): Fix braino.
40855         (regex_compile): Catch bogus \(\1\).
40856
40857 2000-10-30  Paul Eggert  <eggert@twinsun.com>
40858
40859         * lib/fnmatch.c (FOLD): Do not assume that characters are unsigned.
40860         (fnmatch): Fix some FNM_FILE_NAME and FNM_LEADING_DIR bugs,
40861         e.g. fnmatch("d*/*1", "d/s/1", FNM_FILE_NAME) incorrectly yielded zero.
40862
40863 2000-10-30  Paul Eggert  <eggert@twinsun.com>
40864
40865         * lib/error.h, getline.h, modechange.h:
40866         Remove "2000" from Copyright line, as the file hasn't been
40867         changed this year other than in the copyright notice.
40868
40869         * lib/xalloc.h: Add "2000" to Copyright line, as this file
40870         was changed this year.
40871
40872 2000-10-29  Jim Meyering  <meyering@lucent.com>
40873
40874         * m4/fsusage.m4: s/AC_SHELL_IFELSE/AS_IFELSE/ to match autoconf
40875         renaming.
40876         * m4/ls-mntd-fs.m4: Likewise
40877
40878 2000-10-29  Jim Meyering  <meyering@lucent.com>
40879
40880         * lib/xstat.in: Fix grammar in comment.
40881
40882 2000-10-29  Greg Louis  <glouis@dynamicro.on.ca>
40883
40884         * lib/regex.h (__restrict_arr): Move definition out of #ifndef block.
40885         Required because egcs-2.91.66 (aka 1.1.2) defines __restrict, but
40886         doesn't define __restrict_arr.
40887
40888 2000-10-28  Jim Meyering  <meyering@lucent.com>
40889
40890         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_MEMCHR.
40891         (jm_PREREQ_MEMCHR): New function.
40892
40893 2000-10-28  Jim Meyering  <meyering@lucent.com>
40894
40895         * lib/memchr.c: Update from libc.
40896         Adjust for portability:
40897         [HAVE_STDLIB_H]: Include stdlib.h.
40898         [HAVE_BP_SYM_H || _LIBC]: Guard inclusion of bp-sym.h.
40899         Undef __memchr, too.
40900         [!weak_alias]: Define __memchr to memchr.
40901
40902         * lib/regex.c: Update from libc.
40903         * lib/regex.h: Likewise.
40904         * lib/getopt1.c: Likewise.
40905         * lib/memcmp.c: Likewise.
40906
40907         * lib/getusershell.c (setusershell) [HAVE_FSEEKO]: Use fseeko.
40908         Avoid using fseek, when possible -- it's broken by design.
40909         Patch by Ulrich Drepper.
40910
40911 2000-10-27  Stefan Monnier  <monnier@cs.yale.edu>
40912
40913         * regex.c (POP_FAILURE_REG_OR_COUNT, re_match_2_internal)
40914         (re_match_2_internal, re_match_2_internal, re_match_2_internal):
40915         Giving in to popular pressure to shut up the compiler with casts.
40916
40917 2000-10-26  Jim Meyering  <meyering@lucent.com>
40918
40919         * lib/strftime.c: Update from libc.
40920
40921 2000-10-25  Stefan Monnier  <monnier@cs.yale.edu>
40922
40923         * regex.c: More `unsigned char' -> `re_char' changes.
40924         Also change several `int' into `re_wchar_t'.
40925         (PATTERN_STACK_EMPTY, PUSH_PATTERN_OP, POP_PATTERN_OP): Remove.
40926         (PUSH_FAILURE_POINTER): Don't cast any more.
40927         (POP_FAILURE_REG_OR_COUNT): Remove the cast that strips `const'.
40928         We want GCC to complain, since this piece of code makes
40929         re_match non-reentrant, which *should* be fixed.
40930         (GET_BUFFER_SPACE): Use size_t rather than unsigned long.
40931         (EXTEND_BUFFER): Use RETALLOC.
40932         (SET_LIST_BIT): Don't cast.
40933         (re_wchar_t): New type.
40934         (re_iswctype, re_wctype_to_bit): Make it crystal clear to GCC
40935         that those two functions will always properly return.
40936         (IMMEDIATE_QUIT_CHECK): Cast to void.
40937         (analyse_first): Use recursion rather than an explicit stack.
40938         (re_compile_fastmap): Can't fail anymore.
40939         (re_search_2): Don't check re_compile_fastmap for failure.
40940         (PUSH_NUMBER): Renamed from PUSH_FAILURE_COUNT.
40941         Now also sets the new value (passed in a new argument).
40942         (re_match_2_internal): Use it.
40943         Also, use a new var `reg' of type size_t when looping through regs
40944         rather than reuse the inappropriate `mcnt'.
40945
40946 2000-10-25  Jim Meyering  <meyering@lucent.com>
40947
40948         * lib/obstack.c: Update from libc.
40949
40950 2000-10-24  Kenichi Handa  <handa@etl.go.jp>
40951
40952         * regex.c (regex_compile): Change the way of handling a range from
40953         a char less than 256 to a char not less than 256.
40954
40955 2000-10-24  Andrew Innes  <andrewi@gnu.org>
40956
40957         * regex.c (IMMEDIATE_QUIT_CHECK): New macro, which does QUIT on
40958         NT-Emacs only.
40959         (re_match_2_internal): Use IMMEDIATE_QUIT_CHECK instead of QUIT,
40960         so that re_search functions only quit when callers expect them to.
40961
40962 2000-10-23  Jim Meyering  <meyering@lucent.com>
40963
40964         * lib/hard-locale.c (hard_locale): Revert last change -- it was simply
40965         wrong.  That set_locale call must not have any side effects.
40966         From Paul Eggert.
40967
40968 2000-10-22  Jim Meyering  <meyering@lucent.com>
40969
40970         * lib/md5.c (md5_process_block) [OP]: Use `rol', not CYCLIC.
40971         [CYCLIC]: Remove now-unused definition.
40972
40973         * lib/save-cwd.c (O_DIRECTORY): Define, if needed.
40974         (save_cwd) [HAVE_FCHDIR]: Use O_DIRECTORY when opening ".".
40975         Suggestion from Ulrich Drepper.
40976
40977 2000-10-21  Jim Meyering  <meyering@lucent.com>
40978
40979         * m4/check-decl.m4 (jm_CHECK_DECLS): Also check for memrchr.
40980         * m4/prereq.m4 (jm_PREREQ_DIRNAME): New macro.
40981         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memrchr.
40982
40983 2000-10-21  Jim Meyering  <meyering@lucent.com>
40984
40985         * lib/dirname.c (memrchr): Declare if necessary.
40986         (dir_name): Remove the restriction that there be no
40987         trailing slashes.  Now, this code skips past them, effectively
40988         ignoring them.
40989         [TEST_DIRNAME] (main): New unit tests.
40990
40991         * lib/memrchr.c: New file from GNU libc.
40992         Undef __memrchr, too.
40993         [!weak_alias]: Define __memrchr to memrchr.
40994         Guard weak_alias use with `#ifdef weak_alias'.
40995
40996 2000-10-21  Jim Meyering  <meyering@lucent.com>
40997
40998         * lib/dirname.c (dir_name_r): New function, factored out of dir_name.
40999         (dir_name): Use dir_name_r.
41000         * lib/dirname.h (dir_name_r): Declare it.
41001
41002 2000-10-17  Jim Meyering  <meyering@lucent.com>
41003
41004         * lib/quote.h (PARAMS): Define and use.
41005         Reported by Akim Demaille.
41006
41007         * lib/getopt.c: Update from libc.
41008
41009 2000-10-16  Jim Meyering  <meyering@lucent.com>
41010
41011         * lib/hard-locale.c (hard_locale): Use "", not 0 as 2nd arg to
41012         setlocale.
41013         From Jan Fedak.
41014
41015 2000-10-15  Stefan Monnier  <monnier@cs.yale.edu>
41016
41017         * regex.c (WIDE_CHAR_SUPPORT): Define if _LIBC as well.
41018
41019 2000-09-25  Jim Meyering  <meyering@lucent.com>
41020
41021         * lib/md5.h (rol): Define (from GnuPG).
41022
41023         * lib/sha.c: Give credit (GnuPG) where due.
41024         (M): Use rol rather than open-coding it.
41025         Add a FIXME comment.
41026
41027 2000-09-21  Jim Meyering  <meyering@lucent.com>
41028
41029         * lib/userspec.c (parse_user_spec): Remove debugging printf I'd added.
41030         Reported by Michael Stone.
41031
41032 2000-09-20  Jim Meyering  <meyering@lucent.com>
41033
41034         * lib/Makefile.am (libfetish_a_SOURCES): Add sha.c.
41035         (noinst_HEADERS): Add sha.h.
41036         Based on code from Scott G. Miller and from GnuPG.
41037
41038 2000-09-18  Jim Meyering  <meyering@lucent.com>
41039
41040         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Restore the initial value of
41041         LIBS. Otherwise, everyone ends up linking with -lelf for some
41042         configurations.
41043         Reported by Mike Stone.
41044
41045 2000-09-15  Jim Meyering  <meyering@lucent.com>
41046
41047         * lib/regex.c: Update from libc.
41048
41049 2000-09-10  Jim Meyering  <meyering@lucent.com>
41050
41051         * lib/getopt.c (_getopt_internal): Update from glibc.
41052
41053 2000-09-09  Jim Meyering  <meyering@lucent.com>
41054
41055         * lib/quotearg.c: Rename ISASCII to IN_CTYPE_DOMAIN, so people don't
41056         think it should be used as a general replacement for isascii.
41057         * lib/fnmatch.c: Likewise.
41058         * lib/mbswidth.c: Likewise
41059         * lib/regex.c: Likewise.
41060
41061         Don't use atoi.
41062         * lib/userspec.c: Include sys/param.h and limits.h.
41063         Include xstrtol.h.
41064         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
41065         (UID_T_MAX, GID_T_MAX, MAXUID, MAXGID): Define.
41066         (parse_user_spec): Use xstrtoul, not atoi when converting numeric
41067         UID, GID.  Check range.
41068
41069 2000-09-06  Jim Meyering  <meyering@lucent.com>
41070
41071         * lib/getopt.c (_getopt_internal): Update from glibc.
41072
41073 2000-08-30  Jim Meyering  <meyering@lucent.com>
41074
41075         * lib/strftime.c: Merge in changes from GNU libc.
41076
41077 2000-08-26  Jim Meyering  <meyering@lucent.com>
41078
41079         * m4/jm-macros.m4: Use jm_FUNC_FPENDING.
41080         * m4/fpending.m4: New file.
41081
41082 2000-08-26  Jim Meyering  <meyering@lucent.com>
41083
41084         * lib/closeout.c: Include "__fpending.h".
41085         (close_stdout_status): Return right away if there's nothing to flush.
41086
41087         * lib/Makefile.am (noinst_HEADERS): Add __fpending.h.
41088         * lib/__fpending.c: New file.
41089         * lib/__fpending.h: New file.
41090
41091 2000-08-20  Jim Meyering  <meyering@lucent.com>
41092
41093         * m4/check-decl.m4: Include utmp.h `#if HAVE_UTMP_H', rather than
41094         `#if !HAVE_UTMPX_H'.  The latter would lose on systems with neither
41095         utmp.h nor utmpx.h.  Reported by Eli Zaretskii.
41096
41097 2000-08-11  J. David Anglin  <dave@hiauly1.hia.nrc.ca>
41098
41099         Improve fileutils installation on systems where running
41100         programs (like install) can't be unlinked.
41101         * m4/unlink-busy.m4 (jm_FUNC_UNLINK_BUSY_TEXT): New file/macro.
41102         * m4/jm-macros.m4: Use jm_FUNC_UNLINK_BUSY_TEXT.
41103
41104 2000-08-07  Paul Eggert  <eggert@twinsun.com>
41105
41106         Standardize on "memory exhausted" instead of "Memory exhausted"
41107         or "virtual memory exhausted".
41108         * lib/obstack.c (print_and_abort): Use "memory exhausted", not
41109         "virtual memory exhausted".
41110         * lib/same.c (same_name): Invoke xalloc_die instead of printing
41111         our own message.
41112         * lib/userspec.c (parse_user_spec): Likewise.
41113         * lib/bumpalloc.h: comment fix
41114         * lib/same.c, userspec.c: Include xalloc.h.
41115
41116         * lib/xalloc.h (xalloc_msg_memory_exhausted): Now char const[],
41117         not char *const and pointing to a constant array.
41118         * lib/xmalloc.c (xalloc_msg_memory_exhausted): Likewise.
41119         (xrealloc): Comment fix.
41120
41121         * lib/userspec.c (parse_user_spec):
41122         Don't translate a message until just before returning,
41123         to avoid unnecessary translation.
41124
41125 2000-08-07  Jim Meyering  <meyering@lucent.com>
41126
41127         * lib/addext.c, argmatch.c, argmatch.h, backupfile.h, bumpalloc.h,
41128         chown.c, diacrit.h, dirname.h, dup2.c, exclude.h, fileblocks.c,
41129         fnmatch.c, fnmatch.h, fsusage.c, fsusage.h, getdate.h,
41130         getgroups.c, gethostname.c, getopt.h, group-member.c,
41131         hard-locale.c, hash.h, isdir.c, lchown.c, linebuffer.c,
41132         linebuffer.h, long-options.h, malloc.c, md5.c, md5.h, memchr.c,
41133         memcmp.c, memcoll.c, memset.c, mktime.c, modechange.h, obstack.h,
41134         pathmax.h, realloc.c, rmdir.c, safe-read.c, save-cwd.c, stime.c,
41135         stpcpy.c, strcasecmp.c, strcspn.c, strdup.c, stripslash.c,
41136         strstr.c, strtod.c, strtol.c, strtoul.c, strtoull.c, strtoumax.c,
41137         utime.c, version-etc.h, xalloc.h, xstrdup.c, xstrtoumax.c,
41138         yesno.c: Back out Copyright date changes for each file with no change
41139         this year.  This eases coordination with other programs using the same
41140         source code modules.  From Paul Eggert.
41141
41142 2000-08-06  Paul Eggert  <eggert@twinsun.com>
41143
41144         * m4/mbstate_t.m4 (AC_MBSTATE_T): Define mbstate_t to be int,
41145         not char, for compatibility with glibc 2.1.3 strftime.c.
41146
41147 2000-08-03  Greg McGary  <greg@mcgary.org>
41148
41149         * lib/regex.c (SET_HIGH_BOUND, MOVE_BUFFER_POINTER,
41150         ELSE_EXTEND_BUFFER_HIGH_BOUND): New macros.
41151         (EXTEND_BUFFER): Use them.
41152
41153 2000-08-01  Jim Meyering  <meyering@lucent.com>
41154
41155         * lib/dirname.c (ISSLASH): Define.
41156         (BACKSLASH_IS_PATH_SEPARATOR): Define.
41157         (dir_name) [BACKSLASH_IS_PATH_SEPARATOR]: Handle the case in which
41158         both `\' and `/' may be use as path separators.
41159         Based on a patch from Prashant TR.
41160
41161 2000-07-31  Paul Eggert  <eggert@twinsun.com>
41162
41163         * lib/quotearg.c (quotearg_n_options): Don't make the initial
41164         slot vector a constant, since it might get modified.
41165
41166 2000-07-31  Jim Meyering  <meyering@lucent.com>
41167
41168         * lib/xmalloc.c: Use `virtual memory exhausted', not
41169         `Memory exhausted'.
41170         * lib/obstack.c (print_and_abort): Likewise.
41171
41172 2000-07-30  Paul Eggert  <eggert@twinsun.com>
41173
41174         * lib/quotearg.c (quotearg_n_options): Preallocate a slot 0
41175         buffer, so that the caller can always quote one small
41176         component of a "memory exhausted" message in slot 0.
41177         From a suggestion by Jim Meyering.
41178
41179 2000-07-30  Jim Meyering  <meyering@lucent.com>
41180
41181         * lib/makepath.c (make_path): Quote the other instance, too.
41182
41183         * lib/quotearg.c (N_STATIC_SLOTVECS): Define.
41184         (STATIC_BUF_SIZE): Define.
41185         (quotearg_n_options): Use only statically allocated storage when
41186         N < N_STATIC_SLOTVECS and the length of the quoted result is smaller
41187         than STATIC_BUF_SIZE.
41188
41189 2000-07-29  Jim Meyering  <meyering@lucent.com>
41190
41191         * lib/diacrit.c (diacrit_diac): Use __MSDOS__ in favor of MSDOS.
41192         * lib/dirname.c (dir_name): Likewise.
41193
41194         * lib/basename.c (base_name): Use ISSLASH rather than comparing against
41195         `/'.
41196
41197         * lib/dirname.c (dir_name) [MSDOS]: Declare `lim' to be const.
41198         (dir_name): Assert that there are no trailing slashes.
41199
41200 2000-07-29  Bruno Haible  <haible@clisp.cons.org>
41201
41202         * lib/mbswidth.h (mbswidth): Add a flags argument.
41203         (mbswidth): New declaration.
41204         (MBSW_ACCEPT_INVALID, MBSW_ACCEPT_UNPRINTABLE): New macros.
41205         * lib/mbswidth.c (mbswidth): Add a flags argument.
41206         (mbsnwidth): New function.
41207
41208 2000-07-24  Jim Meyering  <meyering@lucent.com>
41209
41210         * lib/mbswidth.c: Remove useless #else.  From Bruno Haible.
41211
41212 2000-07-23  Paul Eggert  <eggert@twinsun.com>
41213
41214         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Check for wcwidth declaration.
41215
41216 2000-07-23  Paul Eggert  <eggert@twinsun.com>
41217
41218         * lib/quotearg.c: Streamline by invoking multibyte code only if needed.
41219         <wchar.h>: Include only if HAVE_MBRTOWC && 1 < MB_LEN_MAX.
41220         (MB_CUR_MAX): Redefine to 1 if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX).
41221         (quotearg_buffer_restyled): If a unibyte locale, don't bother to
41222         invoke multibyte primitives.
41223
41224 2000-07-23  Paul Eggert  <eggert@twinsun.com>
41225
41226         * lib/quotearg.c:
41227         Include <wchar.h> even if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX),
41228         so that mbstate_t is always defined.
41229
41230         Do not inspect MB_LEN_MAX, since it's incorrectly defined to
41231         be 1 in at least one GCC installation, and this configuration
41232         error is likely to be common.  Ignoring MB_LEN_MAX hurts
41233         performance on hosts that have mbrtowc but have only unibyte
41234         locales, but I assume these hosts are rare.
41235
41236 2000-07-23  Paul Eggert  <eggert@twinsun.com>
41237
41238         * lib/mbswidth.c (_XOPEN_SOURCE):
41239         Don't define; this causes problems on Solaris 7.
41240         (wcwidth) [!HAVE_DECL_WCWIDTH]: Declare.
41241
41242 2000-07-23  Jim Meyering  <meyering@lucent.com>
41243
41244         * m4/check-decl.m4 (jm_CHECK_DECLS): Check for declarations of these,
41245         too: getgrgid, getpwuid, getuid.
41246
41247 2000-07-23  Jim Meyering  <meyering@lucent.com>
41248
41249         * lib/basename.c (base_name): Add an assertion.
41250
41251 2000-07-23  Bruno Haible  <haible@clisp.cons.org>
41252
41253         * lib/quotearg.c: When the system forces us to redefine mbstate_t,
41254         shadow its mbsinit function.
41255
41256 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
41257
41258         * lib/mbswidth.h: New file.
41259         * lib/mbswidth.c: New file.
41260         * lib/Makefile.am (libfetish_a_SOURCES): Add mbswidth.c.
41261         (noinst_HEADERS): Add mbswidth.h.
41262
41263 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
41264
41265         * lib/config.charset: Add support for FreeBSD. Improve support for
41266         HP-UX and IRIX 6.
41267
41268 2000-07-16  Bruno Haible  <haible@clisp.cons.org>
41269
41270         * m4/mbswidth.m4: New file.
41271         * m4/prereq.m4 (jm_PREREQ): Call jm_PREREQ_MBSWIDTH.
41272
41273 2000-07-15  Jim Meyering  <meyering@lucent.com>
41274
41275         * lib/makepath.c: Include quote.h.
41276         (make_path): Convert "`%s'" in format strings to "%s", and wrap each
41277         corresponding argument in a `quote (...)' call.
41278         Give better diagnostics.
41279
41280         * lib/Makefile.am (libfetish_a_SOURCES): Add quote.c.
41281         (noinst_HEADERS): Add quote.h.
41282
41283         * lib/quote.c (quote, quote_n): New file.  Two functions taken verbatim
41284         from tar's src/misc.c.
41285         * lib/quote.h: New file.  Prototypes for same.
41286
41287 2000-07-14  Paul Eggert  <eggert@twinsun.com>
41288
41289         From a suggestion by Bruno Haible.
41290         * lib/quotearg.c (mbrtowc): Do not use HAVE_WCHAR_H in the definition.
41291         Use defined mbstate_t, not HAVE_MBSTATE_T_OBJECT,
41292         to decide whether to define the BeOS workaround macro;
41293         this adjusts to the change to AC_MBSTATE_T.
41294
41295 2000-07-14  Jim Meyering  <meyering@lucent.com>
41296
41297         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Require
41298         jm_AC_TYPE_UINTMAX_T.
41299
41300 2000-07-13  Paul Eggert  <eggert@twinsun.com>
41301
41302         * lib/quotearg.h (enum quoting style): New enum clocale_quoting_style.
41303
41304         * lib/quotearg.c (quoting_style_args, quoting_style_vals,
41305         quotearg_buffer_restyled): Add support for
41306         clocale_quoting_style.  Undo previous change to
41307         locale_quoting_style behavior, and undo the "{LEFT QUOTATION MARK}"
41308         and "{RIGHT QUOTATION MARK}" msgids.
41309
41310 2000-07-10  Paul Eggert  <eggert@twinsun.com>
41311
41312         From a suggestion by Bruno Haible.
41313         * m4/mbstate_t.m4 (AC_MBSTATE_T):
41314         Renamed from AC_MBSTATE_T_OBJECT.  All uses changed.
41315         Change from a two-part test, which defines both HAVE_MBSTATE_T_OBJECT
41316         and mbstate_t, to a single-part test that simply defines mbstate_t.
41317         * m4/prereq.m4 (jm_PREREQ_QUOTEARG):
41318         s/AC_MBSTATE_T_OBJECT/AC_MBSTATE_T/.
41319
41320 2000-07-10  Jim Meyering  <meyering@lucent.com>
41321
41322         * m4/strerror_r.m4: Mirror the correction made in autoconf.
41323
41324         * m4/gnu-source.m4: Output to confdefs.h directly.
41325         Suggestion from Akim Demaille.
41326
41327 2000-07-09  Paul Eggert  <eggert@twinsun.com>
41328
41329         The old behavior of quoting `like this' doesn't look good with
41330         newer, ISO-style fonts.  See:
41331         http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html
41332
41333         Instead, quote "like this" by default.  Let the translator
41334         tailor the locale-specific quoting behavior by providing
41335         translations for {LEFT QUOTATION MARK} and {RIGHT QUOTATION MARK}.
41336
41337         * lib/quotearg.c (N_): New macro.
41338         (gettext_default): New function.
41339         (quotearg_buffer_restyled): Use
41340         gettext_default ("{LEFT QUOTATION MARK}", "\"") for left quote, and
41341         gettext_default ("{RIGHT QUOTATION MARK}", "\"") for right quote.
41342
41343 2000-07-09  Jim Meyering  <meyering@lucent.com>
41344
41345         * m4/jm-macros.m4 (jm_MACROS): Add a test to see if -lm is required
41346         to link seq.  If so, set SEQ_LIBM to -lm.  From Bruno Haible.
41347
41348         * m4/gnu-source.m4 (AC__GNU_SOURCE): New file/macro.
41349         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require it.
41350
41351 2000-07-09  Jim Meyering  <meyering@lucent.com>
41352
41353         * lib/Most files: Update copyright dates to include 2000.
41354
41355 2000-07-08  Jim Meyering  <meyering@lucent.com>
41356
41357         * lib/xgethostname.c (ENAMETOOLONG): Define to an unlikely value
41358         if not defined.
41359         (xgethostname): Remove now-unnecessary #ifdef.
41360         Move declaration of `err' into loop where it's used.
41361
41362 2000-07-05  Paul Eggert  <eggert@twinsun.com>
41363         and Bruno Haible  <haible@clisp.cons.org>
41364
41365         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Test for mbstate_t
41366         only if the test for an object-type mbstate_t fails.  This
41367         prevents us from mistakenly reporting that mbstate_t is a
41368         system object type after we "#define mbstate_t int" to work
41369         around its lack.
41370
41371 2000-07-05  Paul Eggert  <eggert@twinsun.com>
41372         and Bruno Haible  <haible@clisp.cons.org>
41373
41374         * lib/quotearg.c (mbrtowc): Declare returned type, since BeOS doesn't.
41375
41376 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
41377
41378         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Pass a reasonably large buffer
41379         to strerror_r.
41380         Include <ctype.h> for use of isalpha.
41381
41382 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
41383
41384         * lib/xgethostname.c (xgethostname): Protect against the SunOS 5.5 bug
41385         by allocating a larger buffer. Test the gethostname return value for
41386         being >= 0, not == 0, for BeOS.  Don't exhaust memory if gethostname
41387         returns an error and ENAMETOOLONG isn't defined.
41388
41389 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
41390
41391         * lib/quotearg.c (struct quoting_options): Simplify quote_these_too
41392         dimension.
41393
41394 2000-07-04  Jim Meyering  <meyering@lucent.com>
41395
41396         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use plain old `echo' instead
41397         of the deprecated AC_CHECKING.
41398
41399 2000-07-04  Jim Meyering  <meyering@lucent.com>
41400
41401         * lib/strndup.c: [!HAVE_DECL_STRNLEN]: Declare strnlen.
41402         Reported by Bruno Haible.
41403
41404 2000-07-04  Jim Meyering  <meyering@lucent.com>
41405
41406         * lib/quotearg.c: Make inclusion of <wchar.h> independent of whether
41407         HAVE_MBRTOWC is set.  Required at least for irix-5.6, which
41408         lacks mbrtowc.
41409
41410 2000-07-03  Paul Eggert  <eggert@twinsun.com>
41411
41412         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Port to autoconf 2.13.
41413         Add AC_CHECK_HEADERS(stdlib.h), since we use HAVE_STDLIB_H.
41414
41415 2000-07-03  Paul Eggert  <eggert@twinsun.com>
41416         and Bruno Haible  <haible@clisp.cons.org>
41417
41418         * lib/quotearg.c (mbrtowc):
41419         Assign to *pwc, and return 1 only if result is nonzero.
41420         (iswprint): Use ISPRINT when substituting our own mbrtowc.
41421
41422 2000-07-03  Jim Meyering  <meyering@lucent.com>
41423
41424         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strnlen.
41425
41426 2000-07-03  Jim Meyering  <meyering@lucent.com>
41427
41428         * lib/readutmp.h: [HAVE_UTMPX_H]: Include <utmp.h> if HAVE_UTMP_H.
41429         This is necessary to get a definition of e.g., UTMP_FILE on
41430         HP-UX 10.20.
41431         From Bob Proulx.
41432
41433 2000-07-02  Jim Meyering  <meyering@lucent.com>
41434
41435         * m4/mbstate_t.m4: Also define mbstate_t, if necessary.
41436
41437         * m4/chown.m4: Replace each use of AC_SUBST(LIBOBJS)/LIBOBJS=... with
41438         AC_LIBOBJ(function_name).
41439         * m4/chown.m4: Likewise.
41440         * m4/fnmatch.m4: Likewise.
41441         * m4/ftruncate.m4: Likewise.
41442         * m4/getgroups.m4: Likewise.
41443         * m4/getline.m4: Likewise.
41444         * m4/group-member.m4: Likewise.
41445         * m4/jm-macros.m4: Likewise.
41446         * m4/lstat.m4: Likewise.
41447         * m4/malloc.m4: Likewise.
41448         * m4/memcmp.m4: Likewise.
41449         * m4/nanosleep.m4: Likewise.
41450         * m4/putenv.m4: Likewise.
41451         * m4/realloc.m4: Likewise.
41452         * m4/regex.m4: Likewise.
41453         * m4/stat.m4: Likewise.
41454         * m4/strftime.m4: Likewise.
41455
41456 2000-07-02  Jim Meyering  <meyering@lucent.com>
41457
41458         * lib/quotearg.c (mbstate_t): Don't define here.
41459
41460 2000-07-02  Jim Meyering  <meyering@lucent.com>
41461
41462         * lib/nanosleep.c (SIGCONT): Define if not already defined.
41463
41464 2000-07-01  Jim Meyering  <meyering@lucent.com>
41465
41466         * m4/uptime.m4: Put double quotes around use of $cross_compiling.
41467
41468 2000-07-01  Jim Meyering  <meyering@lucent.com>
41469
41470         * m4/ls-mntd-fs.m4: Remove a `FIXME' comment and fix the associated
41471         problem.
41472
41473 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
41474
41475         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Rename BeOS specific
41476         macro from MOUNTED_NEXT_DEV to MOUNTED_FS_STAT_DEV.
41477
41478 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
41479
41480         * lib/mountlist.c: Use MOUNTED_FS_STAT_DEV instead of MOUNTED_NEXT_DEV,
41481         per change in ../m4/ls-mntd-fs.m4.
41482         (read_filesystem_list): Ignore symbolic links.
41483
41484 2000-06-29  Jim Meyering  <meyering@lucent.com>
41485
41486         * lib/same.c: Include <string.h> or <strings.h>, as appropriate,
41487         for declaration of strcmp.
41488
41489         * lib/long-options.c: Include <stdlib.h>, for declaration of exit.
41490
41491         * lib/mountlist.c (fsp_to_string) [HAVE_F_FSTYPENAME_IN_STATFS]:
41492         Avoid warning by casting result to `char *' to remove `const'.
41493
41494 2000-06-28  Jim Meyering  <meyering@lucent.com>
41495
41496         * m4/mbstate_t.m4: Use stdlib.h, not stdio.h.  The latter is not
41497         included by quotearg.c, for which we perform this test.  From
41498         Bruno Haible.
41499
41500 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
41501
41502         * m4/check-decl.m4 (_jm_DECL_HEADERS): Check for utmp.h as well.
41503         * m4/prereq.m4 (jm_PREREQ_READUTMP): Likewise. If either <utmp.h> or
41504         <utmpx.h> exists, put readutmp.o into LIBOBJS.
41505
41506 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
41507
41508         * lib/Makefile.am (libfetish_a_SOURCES): Remove readutmp.c.
41509
41510 2000-06-26  Paul Eggert  <eggert@twinsun.com>
41511
41512         savedir now sets errno on failure and invokes xmalloc to get memory.
41513         Fix a couple of other minor bugs while we're at it.
41514
41515         * lib/savedir.c (<unistd.h>): Do not include; there's no need.
41516         (NAMLEN): Remove macro.
41517         (malloc, realloc): Remove decls.
41518         (stpcpy): Likewise.
41519         ("xalloc.h"): Include.
41520         (NAME_SIZE_DEFAULT): New macro.
41521         (savedir): Use xmalloc / xrealloc to allocate memory.
41522         Use NAME_SIZE_DEFAULT if name_size is negative or overflows to zero.
41523         Skip "" directory entries.
41524         Use strlen to calculate directory entry length, since the old method
41525         is rarely used these days and isn't worth supporting.
41526         Don't use a pointer after freeing it.
41527         Check for integer overflow when calculating allocation size.
41528         Use memcpy to copy entries, instead of stpcpy.
41529         Set errno properly when returning NULL.
41530         Check for readdir error.
41531
41532 2000-06-26  Jim Meyering  <meyering@lucent.com>
41533
41534         * lib/posixtm.c [HAVE_STDLIB_H]: Include stdlib.h, for decl of abort.
41535
41536 2000-06-25  Jim Meyering  <meyering@lucent.com>
41537
41538         * m4/mbstate_t.m4: Include stdio.h before wchar.h to work around
41539         Linux header bug when _XOPEN_SOURCE is defined to 500.
41540
41541 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
41542
41543         * lib/unicodeio.c (print_unicode_char): Work around ansi2knr
41544         deficiency.
41545
41546 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
41547
41548         * lib/getusershell.c (xmalloc, xrealloc): Remove functions.
41549         Include xalloc.h.
41550         Don't include <stdlib.h>.  Don't declare malloc, realloc.
41551
41552 2000-06-24  Jim Meyering  <meyering@lucent.com>
41553
41554         * m4/strerror_r.m4: Revive this file -- to try out an experimental
41555         version of AC_FUNC_STRERROR_R that may work even on BeOS, a system
41556         for which strerror does return char*, but which lacks a conveniently
41557         accessible declaration of the function.  If the compile-test says
41558         strerror_r doesn't work, then resort to a `run'-test that works on
41559         BeOS and segfaults on DEC Unix.
41560
41561 2000-06-24  Jim Meyering  <meyering@lucent.com>
41562
41563         * lib/error.c [!HAVE_DECL_STRERROR_R]: Declare strerror_r.
41564
41565 2000-06-23  Paul Eggert  <eggert@twinsun.com>
41566
41567         * m4/mbstate_t.m4: New file, defining AC_MBSTATE_T_OBJECT.
41568         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Use it.  Add check for iswprint.
41569
41570 2000-06-23  Paul Eggert  <eggert@twinsun.com>
41571
41572         * lib/quotearg.c: Include <wctype.h> after <wchar.h>, for Solaris 2.5.
41573         (mbrtowc, mbstate_t): Define substitutes if
41574         HAVE_MBRTOWC && HAVE_WCHAR_H && !HAVE_MBSTATE_T_OBJECT.
41575         (iswprint): Define to 1 if !defined iswprint && !HAVE_ISWPRINT,
41576         not if ! (HAVE_MBRTOWC && HAVE_WCHAR_H).
41577
41578 2000-06-23  Jim Meyering  <meyering@lucent.com>
41579
41580         * m4/afs.m4: Add missing AC_MSG_RESULT.
41581         Reported by Bruno Haible.
41582
41583         * m4/fsusage.m4: s/AC_MSG_CHECKING/AC_CHECKING/.
41584         Suggestion from Bruno Haible.
41585
41586 2000-06-23  Jim Meyering  <meyering@lucent.com>
41587
41588         * lib/getpass.c: New file, from Bruno Haible.  Required for BeOS.
41589
41590 2000-06-21  Jim Meyering  <meyering@lucent.com>
41591
41592         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add getpass.
41593
41594 2000-06-21  Jim Meyering  <meyering@lucent.com>
41595
41596         * lib/Makefile.am (libfetish_a_SOURCES): Add getstr.c.
41597         (noinst_HEADERS): Add getstr.h.
41598
41599         * lib/getline.c (getstr): Move into a separate file.
41600         * lib/getstr.c (getstr): New file, extracted from getline.c, with
41601         the following changes: new parameter, delim2; both delim[12]
41602         parameters have type `int', not `char'.  The latter would lose
41603         with 8-bit delimiters.
41604         * lib/getstr.h: New file.
41605
41606 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
41607
41608         * lib/xgetcwd.c (xgetcwd): If the required pathname length is smaller
41609         than 1024, return a memory chunk of least possible size, instead
41610         of size PATH_MAX + 2. In the loop, increment the size proportionally.
41611         Use free/xmalloc instead of xrealloc to avoid copying for very long
41612         paths.
41613
41614 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
41615
41616         * lib/path-concat.c (path_concat): Don't access dir[-1] if dir is
41617         the empty string.
41618
41619 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
41620
41621         * lib/canon-host.c (canon_host): Use malloc and memcpy to copy an
41622         address, not strdup.  Include <stdlib.h> and don't declare free().
41623
41624 2000-06-19  Jim Meyering  <meyering@lucent.com>
41625
41626         * lib/getloadavg.c [HAVE_NLIST_H] (NLIST_STRUCT): Define.
41627
41628 2000-06-18  Jim Meyering  <meyering@lucent.com>
41629
41630         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Remove mkdir.
41631
41632         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): Change the
41633         `checking whether...' message to be consistent with that of the
41634         lstat test.
41635
41636 2000-06-18  Jim Meyering  <meyering@lucent.com>
41637
41638         * lib/mkdir.c: Remove file, due mainly to copyright incompatibility.
41639         Besides, these days every porting target provides a mkdir function.
41640
41641         * lib/strnlen.c: Include memory.h, string.h, and/or strings.h as
41642         needed. (this snippet comes from src/system.h).
41643
41644 2000-06-16  Bruno Haible  <haible@clisp.cons.org>
41645
41646         * m4/glibc21.m4 (jm_GLIBC21): Define GLIBC21 for Makefiles, not for C.
41647
41648 2000-06-15  Paul Eggert  <eggert@twinsun.com>
41649
41650         * lib/human.c (adjust_value): New function.
41651         (human_readable_inexact): Apply rounding style even when
41652         printing approximate values.
41653
41654 2000-06-14  Paul Eggert  <eggert@twinsun.com>
41655
41656         * lib/human.c (human_readable_inexact): Allow an input block
41657         size that is not a multiple of the output block size, and vice versa.
41658         Reported by Piergiorgio Sartor.
41659
41660 2000-06-14  Paul Eggert  <eggert@twinsun.com>
41661
41662         * lib/getdate.y (get_date): Apply relative times after time
41663         zone indicator, not before.  Reported by Todd A. Jacobs.
41664
41665 2000-06-13  Jim Meyering  <meyering@lucent.com>
41666
41667         * lib/Makefile.am (all-local): Depend on lstat.c and stat.c.
41668
41669         * lib/xstat.in [!HAVE_DECL_FREE]: Declare free in lstat.c.
41670
41671 2000-06-12  Paul Eggert  <eggert@twinsun.com>
41672
41673         * lib/xstat.in: Include <stdlib.h> in lstat, to declare "free".
41674
41675 2000-06-12  Jim Meyering  <meyering@lucent.com>
41676
41677         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Replace with
41678         AC_FUNC_GETLOADAVG from autoconf, and tweak the latter to accept an
41679         optional argument.
41680         * m4/jm-macros.m4: s/AM_FUNC_GETLOADAVG/AC_FUNC_GETLOADAVG/, and supply
41681         the optional argument, `lib'.
41682
41683 2000-06-08  Jim Meyering  <meyering@lucent.com>
41684
41685         * m4/largefile.m4: Remove file (now that it's part of autoconf).
41686
41687 2000-06-04  Paul Eggert  <eggert@twinsun.com>
41688
41689         Rewrite largefile configuration so that we don't need to run
41690         getconf and don't need AC_CANONICAL_HOST.  [I'm leaving the use of
41691         AC_CANONICAL_HOST in configure.in -- jmm]
41692
41693         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS,
41694         AC_SYS_LARGEFILE_SPACE_APPEND): Remove.
41695         (AC_SYS_LARGEFILE_TEST_INCLUDES): New macro.
41696         (AC_SYS_LARGEFILE_MACRO_VALUE): Change arguments from
41697         CODE-TO-SET-DEFAULT to VALUE, INCLUDES, FUNCTION-BODY.
41698         All uses changed.
41699         Instead of inspecting the output of getconf, try to compile the
41700         test program without and with the macro definition.
41701         (AC_SYS_LARGEFILE): Do not require AC_CANONICAL_HOST or check
41702         for getconf.  Instead, check for the needed flags by compiling
41703         test programs.
41704
41705 2000-06-04  Paul Eggert  <eggert@twinsun.com>
41706
41707         * lib/strnlen.c: Include <config.h> if HAVE_CONFIG_H.
41708
41709 2000-06-04  Jim Meyering  <meyering@lucent.com>
41710
41711         * lib/getugroups.c (getugroups): Cast -1 to gid_t, for systems like
41712         SunOS 4.1.4 for which gid_t is an unsigned type.
41713
41714 2000-06-03  Jim Meyering  <meyering@lucent.com>
41715
41716         * m4/prereq.m4 (jm_PREREQ_HUMAN): Use []-quoted list in AC_CHECK_DECLS,
41717         now that autoconf requires that.
41718
41719         * m4/jm-glibc-io.m4: Add a kludge to make autoheader emit the required
41720         #undefs.  E.g., #undef HAVE_DECL_FERROR_UNLOCKED.
41721         Use []-quoted list in AC_CHECK_DECLS, now that autoconf requires that.
41722
41723 2000-06-03  Jim Meyering  <meyering@lucent.com>
41724
41725         * lib/strnlen.c [!HAVE_DECL_MEMCHR]: Declare memchr.
41726
41727 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
41728
41729         * m4/glibc21.m4: New file.
41730         * m4/jm-macros.m4 (jm_MACROS): Call jm_GLIBC21.
41731
41732 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
41733
41734         * lib/Makefile.am (install-exec-local): On systems with glibc-2.1 or
41735         newer, don't install charset.alias.
41736         * lib/config.charset: Change the Linux/glibc rules so they become empty
41737         on glibc-2.1 or newer.
41738
41739 2000-06-02  Jim Meyering  <meyering@lucent.com>
41740
41741         * lib/mountlist.c: Back out last change.  Instead, do this...
41742         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Set the
41743         me_dummy member using the same `ignore'-testing code.
41744         * lib/mountlist.h (ME_DUMMY): Add `autofs' to the list of ignored
41745         fs_type strings.
41746         From Mark D. Roth.
41747
41748 2000-05-29  Jim Meyering  <meyering@lucent.com>
41749
41750         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Ignore
41751         mounts with the `ignore' attribute.  Based on a patch from
41752         Mark D. Roth.
41753
41754 2000-05-28  Jim Meyering  <meyering@lucent.com>
41755
41756         * m4/jm-macros.m4 (AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK): Rename from
41757         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
41758         * m4/stat.m4: Likewise.
41759         * m4/lstat.m4: Likewise.
41760         * m4/lstat-slash.m4: Remove file (absorbed into autoconf).
41761
41762         * m4/jm-macros.m4 (AC_FUNC_STRERROR_R): Rename from jm_FUNC_STRERROR_R.
41763         * m4/strerror_r.m4: Remove file (absorbed into autoconf).
41764
41765 2000-05-26  Jim Meyering  <meyering@lucent.com>
41766
41767         * m4/uptime.m4: Use `$cross_compiling', not `$ac_cv_prog_cc_cross'.
41768
41769 2000-05-24  Jim Meyering  <meyering@lucent.com>
41770
41771         * m4/prereq.m4: Use []-quoted list in AC_CHECK_MEMBERS, now that
41772         autoconf requires that.
41773         * m4/lib-check.m4: Likewise.
41774         * m4/jm-macros.m4: Likewise.
41775         * m4/strftime.m4: Likewise.
41776
41777         * m4/check-decl.m4 (jm_CHECK_DECLS): Use []-quoted list in
41778         AC_CHECK_DECLS, now that autoconf requires that.
41779
41780 2000-05-22  Jim Meyering  <meyering@lucent.com>
41781
41782         * m4/stat.m4: Require jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
41783         * m4/lstat.m4: Likewise.
41784
41785 2000-05-22  Jim Meyering  <meyering@lucent.com>
41786
41787         * lib/makepath.c: Remove old, now-unnecessary `#ifdef __MSDOS__' block.
41788
41789 2000-05-20  Jim Meyering  <meyering@lucent.com>
41790
41791         * m4/prereq.m4 (jm_PREREQ_HUMAN): New macro.
41792         (jm_PREREQ): Use it.
41793
41794 2000-05-18  Jim Meyering  <meyering@lucent.com>
41795
41796         * lib/hash.c (hash_rehash): Fix a nasty bug: copy the free entry list
41797         back, too, since it may have been modified by allocate_entry.
41798         (hash_delete): Rewrite to use neither the assignment operator
41799         nor the comma operator in an if-expression.
41800
41801 2000-05-15  Paul Eggert  <eggert@twinsun.com>
41802
41803         * lib/closeout.c:
41804         <sys/stat.h>, <sys/types.h>, <unistd.h>, (STDOUT_FILENO):
41805         Remove; no longer needed.
41806         "quotearg.h": Add include.
41807         (file_name): Do not bother to explicitly initialize to NULL; it's less
41808         efficient on some hosts.
41809         (close_stdout_status): Remove test as to whether stdout was already
41810         closed; it breaks for the case "echo x | sort >&-".
41811         Quote file name colons.
41812         Do not assume that _("write error") lacks format strings.
41813
41814 2000-05-15  Jim Meyering  <meyering@lucent.com>
41815
41816         * lib/version-etc.c (version_etc_copyright): Update the copyright
41817         string used in all --version output.
41818
41819 2000-05-14  Jim Meyering  <meyering@lucent.com>
41820
41821         * lib/closeout.c (close_stdout_set_file_name): New function.
41822         (close_stdout_status): Use new file-scoped global.
41823         Return right away if fstat says the stdout file descriptor is invalid.
41824         * lib/closeout.h (close_stdout_set_file_name): Declare.
41825
41826 2000-05-10  Jim Meyering  <meyering@lucent.com>
41827
41828         * lib/closeout.c [default_exit_status]: New file-scoped variable.
41829         (close_stdout_set_status): New function.
41830         * lib/closeout.h (close_stdout_set_status): Declare.
41831
41832 2000-05-09  Jim Meyering  <meyering@lucent.com>
41833
41834         * m4/gettext.m4: Rename this...
41835         * m4/libintl.m4: ...to this.
41836
41837 2000-05-08  Jim Meyering  <meyering@lucent.com>
41838
41839         * lib/long-options.c: Don't include closeout.h.
41840         (parse_long_options): Don't call close_stdout for --version.
41841
41842 2000-05-06  Paul Eggert  <eggert@twinsun.com>
41843
41844         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _XOPEN_SOURCE to
41845         be 500, instead of _GNU_SOURCE to be 1, to work around glibc
41846         2.1.3 bug.  This avoids a clash when files like regex.c define
41847         _GNU_SOURCE.
41848
41849 2000-05-06  Jim Meyering  <meyering@lucent.com>
41850
41851         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add atexit.
41852         (AC_REPLACE_FUNCS): Add strnlen.
41853
41854         * m4/rmdir-errno.m4 (fetish_FUNC_RMDIR_NOTEMPTY): New macro and file.
41855         * m4/jm-macros.m4: Require fetish_FUNC_RMDIR_NOTEMPTY.
41856
41857         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Save and restore LIBS around
41858         AC_SEARCH_LIBS call for nanosleep.
41859         (LIB_NANOSLEEP): Set and AC_SUBST.
41860
41861 2000-05-06  Jim Meyering  <meyering@lucent.com>
41862
41863         * lib/strnlen.c: Undefine __strnlen and strnlen.
41864         [!weak_alias]: Define __strnlen to strnlen.
41865
41866         * lib/atexit.c: New file, from libiberty.
41867
41868 2000-05-06  Jim Meyering  <meyering@lucent.com>
41869
41870         * lib/closeout.c (close_stdout_status): Also check for errors on the
41871         stderr stream.
41872
41873 2000-05-05  Jim Meyering  <meyering@lucent.com>
41874
41875         * m4/jm-macros.m4 (jm_MACROS): Save and restore LIBS around
41876         AC_SEARCH_LIBS call for clock_gettime.
41877         (LIB_CLOCK_GETTIME): Set and AC_SUBST.
41878
41879         * m4/search-libs.m4: Update from autoconf.
41880
41881         su doesn't work on Solaris 2.6.
41882         * m4/lib-check.m4: When checking for struct spwd.sp_pwdp, also include
41883         <shadow.h>.  Reported by Dragos Harabor.
41884
41885 2000-05-05  Bruno Haible  <haible@clisp.cons.org>
41886
41887         * lib/localcharset.c (get_charset_aliases): Use malloc, realloc and
41888         memcpy instead of xmalloc, xrealloc, path_concat.
41889         (locale_charset): Treat empty environment variables as absent.
41890         (DIRECTORY_SEPARATOR, ISSLASH): New macros.
41891
41892 2000-05-04  Jim Meyering  <meyering@lucent.com>
41893
41894         * lib/getopt.c: Update from glibc.
41895         * lib/obstack.c: Likewise.
41896         * lib/obstack.h: Likewise.
41897         * lib/regex.c: Likewise.  NB: K&R compiler support is dropped for this
41898         file
41899
41900         * lib/regex.h: Likewise.
41901         * lib/strndup.c: Likewise.
41902         * lib/strnlen.c: New file, from glibc.
41903
41904 2000-05-03  Jim Meyering  <meyering@lucent.com>
41905
41906         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strndup.
41907
41908 2000-05-02  Paul Eggert  <eggert@twinsun.com>
41909
41910         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _GNU_SOURCE if
41911         this is needed to make ftello visible (e.g. glibc 2.1.3).  Use
41912         compile-time test, rather than inspecting host and OS, to
41913         decide whether to define _LARGEFILE_SOURCE.
41914
41915 2000-05-01  Jim Meyering  <meyering@lucent.com>
41916
41917         * m4/fsusage.m4: Use AC_MSG_CHECKING instead of obsolete AC_CHECKING.
41918
41919         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add BeOS support.
41920         Based on a patch from Bruno Haible.
41921
41922 2000-05-01  Jim Meyering  <meyering@lucent.com>
41923
41924         * lib/full-write.c (full_write): Remove `FIXME' part of comment.
41925
41926 2000-04-29  Jim Meyering  <meyering@lucent.com>
41927
41928         * lib/path-concat.c: Declare strdup only if it's not defined.
41929         * lib/canon-host.c: Likewise.
41930
41931 2000-04-28  Jim Meyering  <meyering@lucent.com>
41932
41933         * lib/rpmatch.c [HAVE_LIMITS_H]: Include limits.h before regex.h to
41934         avoid redefinition warning on some systems (HPUX).  Otherwise, regex.h
41935         is included first, then limits.h is included by locale.h by libintl.h.
41936         From John David Anglin.
41937
41938 2000-04-25  Jim Meyering  <meyering@lucent.com>
41939
41940         * lib/makepath.c (S_IRWXUGO): Define.
41941         (make_path): Always perform explicit chmod if MODE specifies any
41942         of the `special' permission bits.  Prompted by a bug report against
41943         install from Mate Wierdl and Joost van Baal.
41944
41945 2000-04-18  Jim Meyering  <meyering@lucent.com>
41946
41947         * m4/prereq.m4 (jm_PREREQ_GETPAGESIZE): New macro.
41948         (jm_PREREQ): Use it.
41949
41950 2000-04-18  Jim Meyering  <meyering@lucent.com>
41951
41952         * lib/README: New file.
41953
41954         * lib/getpagesize.h [!getpagesize && HAVE_OS_H && B_PAGE_SIZE]: Define
41955         getpagesize.  For BeOS.  Based on a patch from Bruno Haible.
41956
41957 2000-04-17  Jim Meyering  <meyering@lucent.com>
41958
41959         Get it right :-)
41960         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Emit the
41961         actual #define via AH_VERBATIM.  Don't need separate AC_DEFINE.
41962         Suggestion from Akim Demaille.
41963
41964 2000-04-17  Jim Meyering  <meyering@lucent.com>
41965
41966         * lib/strftime.c (my_strftime) [strftime]: Declare strftime here, since
41967         the definition of it to rpl_strftime also defined-away the system's
41968         declaration.
41969
41970 2000-04-15  Jim Meyering  <meyering@lucent.com>
41971
41972         Use `C' to denote so-called `contiguous' files, the same way
41973         that tar does.
41974         * lib/filemode.c (S_ISCTG) [!S_ISCTG && S_IFCTG]: Define.
41975         (ftypelet): Use S_ISCTG.
41976         From Michael Deutschmann.
41977
41978 2000-04-14  Jim Meyering  <meyering@lucent.com>
41979
41980         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use the one-arg
41981         form of AC_DEFINE.  Otherwise, the #ifndef in AH_VERBATIM gets
41982         clobbered.
41983
41984 2000-04-14  Jim Meyering  <meyering@lucent.com>
41985
41986         * lib/strftime.c (my_strftime) [#ifdef strftime]: Declare strftime.
41987
41988 2000-04-13  Jim Meyering  <meyering@lucent.com>
41989
41990         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use new
41991         AH_VERBATIM to insert required #ifndef into config.h.in.
41992         Suggestion from Akim Demaille.
41993
41994 2000-04-12  Jim Meyering  <meyering@lucent.com>
41995
41996         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Use AC_CHECK_HEADERS, not
41997         `AC_CHECK_HEADER' to check for locale.h.  Thanks to a report from
41998         Christian Krackowizer.
41999
42000         More code moved from ../configure.in into (jm_CHECK_ALL_TYPES).
42001         * m4/jm-macros.m4 (_GNU_SOURCE): Define.
42002         (AC_SYS_LARGEFILE): Require.
42003         (AM_C_PROTOTYPES): Require.
42004
42005 2000-04-08  Jim Meyering  <meyering@lucent.com>
42006
42007         * lib/Makefile.am (charset.alias): Use t-$@, not $@-t so the DOS 8.3
42008         names don't conflict.  Reported by Eli Zaretskii.
42009
42010 2000-04-07  Jim Meyering  <meyering@lucent.com>
42011
42012         * lib/putenv.c: Move inclusion of errno.h so it follows that of
42013         sys/types.h, to work around system header problems on AIX 3.2.5.
42014         From Bruno Haible.
42015
42016 2000-04-07  Bruno Haible  <haible@clisp.cons.org>
42017
42018         * lib/unicodeio.c (print_unicode_char): Avoid triggering Solaris iconv
42019         bug.  Deal with the different error behavior of Irix iconv.
42020
42021 2000-04-05  Paul Eggert  <eggert@twinsun.com>
42022
42023         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Don't use -n32 on
42024         IRIX if the installer said otherwise.
42025
42026 2000-04-05  Jim Meyering  <meyering@lucent.com>
42027
42028         Portability tweaks required for ultrix4.3.
42029         * m4/check-decl.m4 [!HAVE_UTMPX_H] (headers): Include <utmp.h>.
42030         (jm_CHECK_DECLS): Add getutent to the list of functions.
42031         (_jm_DECL_HEADERS): Add utmpx.h.
42032         From John David Anglin.
42033
42034         * m4/strftime.m4: Back out the 2000-04-02 change.
42035         Instead of that change, simply undefine putenv in the test program.
42036
42037 2000-04-05  Jim Meyering  <meyering@lucent.com>
42038
42039         Portability tweaks required for ultrix4.3.
42040         * lib/readutmp.h [HAVE_UTMPX_H && !HAVE_DECL_GETUTENT]: Declare
42041         getutent.
42042         * lib/readutmp.c: Include sys/types.h before sys/stat.h.
42043         * lib/canon-host.c: Declare strdup.
42044         * lib/path-concat.c: Likewise.
42045         From John David Anglin.
42046
42047 2000-04-04  Jim Meyering  <meyering@lucent.com>
42048
42049         Be more DOS 8.3-friendly.
42050         * lib/ref-add.sin: Renamed from ref-add.sed.in.
42051         * lib/ref-del.sin: Renamed from ref-del.sed.in.
42052         * lib/Makefile.am: Reflect renaming.
42053         Reported by Eli Zaretskii.
42054
42055         Use a temporary file name that won't clash with `charset.alias'
42056         in the DOS 8.3 name space.
42057         * lib/Makefile.am (charset_tmp): Define.
42058         (install-exec-local): Use $(charset_tmp) instead of $(charset_alias)-t.
42059         (uninstall-local): Likewise.
42060         Reported by Eli Zaretskii.
42061
42062 2000-04-03  Jim Meyering  <meyering@lucent.com>
42063
42064         * m4/gettext.m4: Fix typo in comment.
42065
42066         * m4/codeset.m4 (AC_CHECK_HEADERS): Add langinfo.h (moved here from
42067         textutils/configure.in).  Suggestion from Paul Eggert.
42068         (AC_CHECK_FUNCS): Add nl_langinfo.  (also from textutils/configure.in)
42069
42070 2000-04-02  Paul Eggert  <eggert@twinsun.com>
42071
42072         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Set TZ environment
42073         variable in the shell rather than using putenv, which isn't
42074         portable.  This avoids the configure-time inter-test dependency
42075         on the potentially-renamed putenv function.
42076
42077 2000-03-30  Paul Eggert  <eggert@twinsun.com>
42078
42079         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Include <sys/stat.h>
42080         before checking struct stat.st_blksize, so that
42081         HAVE_STRUCT_STAT_ST_BLKSIZE is defined correctly.
42082
42083 2000-03-29  Paul Eggert  <eggert@twinsun.com>
42084
42085         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Check for strftime,
42086         since strftime.c uses HAVE_STRFTIME to decide whether to use
42087         the underlying strftime.
42088
42089 2000-03-29  Paul Eggert  <eggert@twinsun.com>
42090
42091         * lib/time/strftime.c (my_strftime): Make sure we call the system
42092         strftime, not ourselves, when invoking the underlying strftime.
42093
42094 2000-03-24  Jim Meyering  <meyering@lucent.com>
42095
42096         * lib/Makefile.am (EXTRA_DIST): Add ref-add.sed.in and ref-del.sed.in.
42097         (charset_alias): Define.
42098         (install-exec-local): Factor out common code.
42099         (uninstall-local): Split lines longer than 80.
42100         (ref-add.sed, ref-del.sed): Remove rules... (do the following instead)
42101         (SUFFIXES): Define.
42102         (.sed.in.sed): New rule.  Don't redirect directly to $@.
42103         (CLEANFILES): Add ref-add.sed and ref-del.sed.
42104
42105 2000-03-19  Bruno Haible  <haible@clisp.cons.org>
42106
42107         * lib/config.charset: Output a line containing "Packages using this
42108         file".
42109         * lib/ref-add.sed.in, lib/ref-del.sed.in: New files.
42110         * lib/Makefile.am (install-exec-local, uninstall-local, ref-add.sed,
42111         ref-del.sed): New rules.
42112
42113 2000-03-17  Jim Meyering  <meyering@lucent.com>
42114
42115         * lib/unicodeio.c (<string.h>): Include only #if HAVE_STRING_H.
42116         Otherwise, include <strings.h>
42117
42118 2000-03-17  Bruno Haible  <haible@clisp.cons.org>
42119
42120         * lib/unicodeio.c (utf8_wctomb): New function.
42121         (print_unicode_char): Pass the Unicode character to iconv in UTF-8
42122         format instead of in UCS-4 with platform dependent endianness.
42123
42124 2000-03-10  Jim Meyering  <meyering@lucent.com>
42125
42126         * m4/lib-check.m4: Look for getspnam in -lgen, too.
42127         From Marco Franzen.
42128
42129 2000-03-07  Paul Eggert  <eggert@twinsun.com>
42130
42131         * lib/savedir.c (savedir): Work even if directory size is
42132         negative; this can happen with some screwy NFS configurations.
42133
42134 2000-03-06  Jim Meyering  <meyering@lucent.com>
42135
42136         * lib/localcharset.c (get_charset_aliases): Don't try to free file_name
42137         if it's NULL (because we ran out of memory).  From Bruno Haible.
42138
42139 2000-03-05  Jim Meyering  <meyering@lucent.com>
42140
42141         * lib/localcharset.c ("path-concat.h"): Include.
42142         (get_charset_aliases): Use path_concat instead of ANSI string
42143         concatenation.
42144
42145         * lib/unicodeio.h (PARAMS): Define.
42146         Use it to guard prototype.
42147
42148 2000-03-04  Jim Meyering  <meyering@lucent.com>
42149
42150         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require AC_C_VOLATILE,
42151         for lib/localcharset.c.
42152
42153 2000-03-04  Jim Meyering  <meyering@lucent.com>
42154
42155         * lib/Makefile.am (install-exec-local): Create $(libdir) before
42156         installing into it.
42157         (uninstall-local): Uncomment this rule so `make distcheck' works
42158         once again.
42159
42160         * lib/unicodeio.c (<errno.h>): Include it.
42161         (errno): Declare if not defined.
42162
42163         * lib/localcharset.c: Add Bruno's comment justifying use of volatile.
42164
42165         * lib/config.charset: New version, incorporating remarks from a linux
42166         i18n mailing list.  From Bruno Haible.
42167
42168 2000-03-04  Bruno Haible  <haible@clisp.cons.org>
42169
42170         * m4/codeset.m4: New file.
42171         * m4/iconv.m4: New file.
42172         * m4/jm-macros.m4 (jm_MACROS): Call jm_LANGINFO_CODESET and jm_ICONV.
42173
42174 2000-03-03  Jim Meyering  <meyering@lucent.com>
42175
42176         * m4/regex.m4: Make sure re_compile_pattern accepts patterns like `{1'.
42177
42178 2000-03-02  Jim Meyering  <meyering@lucent.com>
42179
42180         * m4/timespec.m4: Require AC_HEADER_TIME before the cache check so
42181         the messages come out on separate lines.
42182
42183         * m4/jm-glibc-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO): Use AC_CHECK_DECLS,
42184         rather than jm_CHECK_DECLARATIONS.
42185         * m4/decl.m4: Remove now-unused file.
42186
42187         * m4/check-decl.m4 (AC_CHECK_DECLS): Add getlogin, ttyname, and
42188         geteuid.
42189
42190 2000-03-02  Jim Meyering  <meyering@lucent.com>
42191
42192         * lib/Makefile.am (EXTRA_DIST): Add config.charset.
42193
42194 2000-03-01  Jim Meyering  <meyering@lucent.com>
42195
42196         * lib/localcharset.c: Guard some #includes with `#if HAVE_...'.
42197         * lib/unicodeio.c: Likewise.
42198
42199 2000-03-01  Bruno Haible  <haible@clisp.cons.org>
42200
42201         * lib/config.charset: New file.
42202         * lib/localcharset.c: New file.
42203         * lib/unicodeio.h, lib/unicodeio.c: New files.
42204         * lib/Makefile.am (DEFS): Add -DLIBDIR=...
42205         (libfetish_a_SOURCES): Add localcharset.c and unicodeio.c.
42206         (noinst_HEADERS): Add unicodeio.h.
42207         (all-local, install-exec-local, charset.alias): New targets.
42208
42209 2000-02-28  Paul Eggert  <eggert@twinsun.com>
42210
42211         * lib/quotearg.c (ALERT_CHAR): New macro.
42212         (quotearg_buffer_restyled): Use it.
42213
42214 2000-02-27  Jim Meyering  <meyering@lucent.com>
42215
42216         * m4/check-decl.m4: Add getenv to the list.
42217
42218 2000-02-27  Jim Meyering  <meyering@lucent.com>
42219
42220         * lib/strtoumax.c: Fix typo in decl of strtoul: s/long long/long/.
42221         Guard declaration of strtoull also with `&& HAVE_UNSIGNED_LONG_LONG'.
42222
42223         * lib/backupfile.c: Guard inclusion of stdlib.h with
42224         `#if HAVE_STDLIB_H', not `#if STDC_HEADERS'.
42225         Declare malloc if needed.
42226
42227         * lib/backupfile.c: Use `#if !HAVE_DECL...' instead of
42228         `#ifndef HAVE_DECL..'
42229         now that autoconf always defines the HAVE_DECL_ symbols.
42230         * lib/human.c: Likewise.
42231         * lib/same.c: Likewise.
42232         * lib/strtoumax.c: Likewise.
42233
42234         * lib/backupfile.c: Arrange for cpp to fail if the configure-time
42235         declaration check was not run.
42236         * lib/hash.c: Likewise.
42237         * lib/human.c: Likewise.
42238         * lib/same.c: Likewise.
42239         * lib/strtoumax.c: Likewise.
42240
42241         * lib/userspec.c (parse_user_spec): If there is no `:' but there is a
42242         `.', then first look up the entire `.'-containing string as a login
42243         name.
42244
42245 2000-02-23  Jim Meyering  <meyering@lucent.com>
42246
42247         * m4/check-decl.m4: Now that we have the new AC_CHECK_DECLS, use it
42248         in place of my hack.
42249
42250 2000-02-18  Paul Eggert  <eggert@twinsun.com>
42251
42252         * lib/getdate.y: Handle two-digit years with leading zeros correctly.
42253         (textint): New typedef.
42254         (parser_control): Member year changed from int to textint.
42255         All uses changed.
42256         (YYSTYPE): Removed; replaced by %union with int and textint members.
42257         (tDAY, tDAY_UNIT, tDAYZONE, tHOUR_UNIT, tID, tLOCAL_ZONE, tMERIDIAN,
42258         tMINUTE_UNIT, tMONTH, tMONTH_UNIT tSEC_UNIT, tSNUMBER, tUNUMBER,
42259         tYEAR_UNIT, tZONE, o_merid): Now of type <intval>.
42260         (tSNUMBER, tUNUMBER): Now of type <textintval>.
42261         (date, number, to_year): Use width of number in digits, not its value,
42262         to determine whether it's a 2-digit year, or a 2-digit time.
42263         (yylex): Store number of digits of numeric tokens.
42264         Reported by John Kendall.
42265
42266         (parser_control): Changed from struct parser_control to typedef (for
42267         consistency).  All uses changed.
42268
42269         (tID): Removed; not used.
42270         (yylex): Return '?' for unknown identifiers, rather than (unused) tID.
42271
42272 2000-02-14  Paul Eggert  <eggert@twinsun.com>
42273
42274         * lib/getpagesize.h (getpagesize): Port to VMS for Alpha;
42275         adapted from changes to grep getpagesize.h by Martin P.J. Zinser.
42276
42277 2000-02-12  Jim Meyering  <meyering@lucent.com>
42278
42279         * lib/userspec.c (ISDIGIT): Define it.
42280         (isdigit): Remove definition.
42281         (is_number): Use ISDIGIT, not isdigit.
42282         <libintl.h>: Include.
42283         (_ and N_): Define.
42284         (parse_user_spec): Mark translatable strings.
42285
42286 2000-02-10  Jim Meyering  <meyering@lucent.com>
42287
42288         With these changes, nanosleep.[ch] are finally enough like the other
42289         lib/* replacement files to compile on a few more losing systems.
42290
42291         * lib/nanosleep.h: Don't include config.h.
42292         Remove prototype from declaration of nanosleep.
42293         (PARAMS): Remove now-unneeded definition.
42294         * lib/nanosleep.c: #undef nanosleep.
42295         (rpl_nanosleep): Rename from nanosleep.
42296
42297 2000-02-10  Jim Meyering  <meyering@lucent.com>
42298
42299         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Rename replacement function from
42300         gnu_nanosleep to rpl_nanosleep.
42301
42302 2000-02-09  Jim Meyering  <meyering@lucent.com>
42303
42304         * m4/lib-check.m4 (jm_LIB_CHECK): Fix typo: check for sp_pwdp in
42305         struct spwd, rather than in struct passwd.  Reported by Gaël Quéri.
42306
42307 2000-02-08  Akim Demaille  <akim@epita.fr>
42308
42309         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Quote square brackets with
42310         `[' and `]' and remove uses of `changequote'.
42311         (AC_SYS_LARGEFILE_MACRO_VALUE): Likewise.
42312         (AC_SYS_LARGEFILE): Likewise.
42313         * m4/gettext.m4 (AM_GNU_GETTEXT): Likewise.
42314         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Remove now-unnecessary use
42315         of changequote.
42316         * m4/regex.m4 (jm_INCLUDED_REGEX): Likewise.
42317         * m4/readdir.m4 (jm_FUNC_READDIR): Likewise
42318         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Likewise, and add `int' for main.
42319         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Likewise.
42320
42321 2000-02-05  Jim Meyering  <meyering@lucent.com>
42322
42323         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require most macros.
42324         Remove explicit use of AC_HEADER_TIME.  It is required by
42325         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Using AC_HEADER_TIME and
42326         `AC_REQUIRE'ing jm_CHECK_TYPE_STRUCT_TIMESPEC provoked a but
42327         in autoconf whereby the expansion of the latter ended up preceding
42328         the expansion of its prerequisite, AC_HEADER_TIME.
42329         Reported by Volker Borchert.
42330
42331 2000-02-03  Jim Meyering  <meyering@lucent.com>
42332
42333         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for utmpxname.
42334
42335 2000-02-03  Jim Meyering  <meyering@lucent.com>
42336
42337         * lib/readutmp.c (read_utmp): Guard with `#ifdef UTMP_NAME_FUNCTION',
42338         rather than with `#if HAVE_UTMPNAME'.
42339
42340 2000-02-02  Jim Meyering  <meyering@lucent.com>
42341
42342         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Fix typo that resulted in no
42343         definition of HAVE_PATHCONF: s/AC_CHECK_FUNC/AC_CHECK_FUNCS/.
42344         Reported by Eli Zaretskii.
42345
42346 2000-02-01  Jim Meyering  <meyering@lucent.com>
42347
42348         * lib/readutmp.h (UT_USER): Add parens.  From Andreas Schwab.
42349
42350 2000-01-31  Jim Meyering  <meyering@lucent.com>
42351
42352         * m4/check-decl.m4 (jm_CHECK_DECLS): Add nanosleep to the list of
42353         functions.  Add the time.h and sys/time.h headers along with the
42354         AC_REQUIRE'ment of AC_HEADER_TIME.
42355
42356 2000-01-31  Jim Meyering  <meyering@lucent.com>
42357
42358         * lib/nanosleep.h (nanosleep): Guard declaration with
42359         `#if ! HAVE_DECL_NANOSLEEP'.
42360         Without this, OFS gets a redeclaration error for rpl_nanosleep, due to
42361         the declaration in that vendor's sys/timers.h.
42362         Reported by Christian Krackowizer.
42363
42364         * lib/quotearg.c (ISASCII): Add #undef and move definition to follow
42365         inclusion of wctype.h to work around Solaris 2.6 namespace pollution.
42366         (ISPRINT): Likewise.
42367         Reported by Tom Tromey.
42368
42369 2000-01-30  Jim Meyering  <meyering@lucent.com>
42370
42371         * m4/lib-check.m4: Clean up some kludgy old shadow password tests.
42372
42373         * m4/prereq.m4 (utmp_includes): Define.
42374         Check for ut_user and ut_name members in both struct utmpx
42375         and struct utmp.
42376
42377 2000-01-30  Jim Meyering  <meyering@lucent.com>
42378
42379         * lib/readutmp.c (extract_trimmed_name): Use UT_USER instead of
42380         hard-coding uses of ->ut_name.  The latter doesn't work with new Linux
42381         header files where only utmpx.ut_user is declared.
42382
42383         * lib/readutmp.h (UT_USER): Define.
42384
42385 2000-01-29  Jim Meyering  <meyering@lucent.com>
42386
42387         * m4/lib-check.m4: New file containing library-related checks from
42388         fileutils and sh-utils (textutils had none).
42389
42390 2000-01-28  Jim Meyering  <meyering@lucent.com>
42391
42392         * m4/perl.m4: Change format of warning message to look more like that
42393         from the missing script.  Suggestion from François Pinard.
42394
42395 2000-01-25  Jim Meyering  <meyering@lucent.com>
42396
42397         * m4/timespec.m4: Require AC_HEADER_TIME, and include sys/time.h as
42398         well as time.h in the compile check.
42399         * m4/nanosleep.m4: Require AC_HEADER_TIME rather than simply using it.
42400         Fix typo in cross-compiling case: s/yes/no/.
42401
42402 2000-01-23  Jim Meyering  <meyering@lucent.com>
42403
42404         * m4/jm-macros.m4: Move df-related tests here from
42405         fileutils/configure.in
42406
42407         * m4/ls-mntd-fs.m4: s/list_mounted_fs/ac_list_mounted_fs/
42408         (jm_LIST_MOUNTED_FILESYSTEMS): Take two parameters.
42409
42410         * m4/fsusage.m4: New file.  Extracted from fileutils/configure.in.
42411         s/space/ac_fsusage_space/.
42412         (jm_FILE_SYSTEM_USAGE): Take two parameters.
42413
42414         * m4/ftruncate.m4: New file (derived from part of
42415         fileutils/configure.in).
42416         * m4/jm-macros.m4 (jm_FUNC_FTRUNCATE): AC_REQUIRE it.
42417         (jm_CHECK_ALL_TYPES): Require AC_HEADER_MAJOR and AC_HEADER_DIRENT.
42418
42419         * m4/jm-macros.m4 (OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, MAN):
42420         AC_SUBST these here, rather than just in sh-util/configure.in, so
42421         that the now-shared-by-fileutils-and-textutils lib/Makefile.am are
42422         all the same.
42423         (AM_FUNC_OBSTACK): Add (from fileutils/configure.in).
42424         (AC_CHECK_FUNCS): Merge all checks from fileutils, textutils, sh-utils.
42425         (AM_FUNC_STRTOD): Added (from textutils', sh-utils' configure.in).
42426         (AC_SUBST(POW_LIBM)): Likewise.
42427         (AC_SUBST(DF_PROG)): Moved from fileutils/configure.in.
42428
42429 2000-01-23  Jim Meyering  <meyering@lucent.com>
42430
42431         * lib/Makefile.am (libfetish_a_SOURCES): Remove explicit mention of
42432         obstack.c.
42433
42434 2000-01-22  Jim Meyering  <meyering@lucent.com>
42435
42436         * m4/jm-macros.m4: Call AC_PROG_CC_STDC just before AC_C_CONST.
42437
42438         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Add wctype.h.
42439
42440         * m4/jm-macros.m4 (AC_CHECK_HEADERS): Add checks from fileutils'
42441         configure.in
42442         (AC_CHECK_HEADERS): Likewise for sh-utils.
42443         (AC_CHECK_HEADERS): Likewise for textutils.
42444         Merge the three lists of headers.
42445
42446         * m4/prereq.m4 (jm_PREREQ_ADDEXT): New macro.  Parts moved here
42447         from fileutils' configure.in.
42448
42449         * m4/decl.m4: Remove kludgy `test -z $ac_...AC_CHECK_HEADERS(...)'
42450         code. Moved tests into their own function (_jm_DECL_HEADERS) in
42451         check-decl.m4.
42452
42453         * m4/check-decl.m4: Use #if rather than #ifdef.
42454         Add HAVE_DECL_STRTOUL and HAVE_DECL_STRTOULL.
42455         (jm_CHECK_DECLARATIONS): Add strtoul strtoull.
42456         (_jm_DECL_HEADERS): Define new function.
42457         (jm_CHECK_DECLARATIONS): Require it.
42458
42459 2000-01-22  Jim Meyering  <meyering@lucent.com>
42460
42461         * lib/strtoumax.c: [! HAVE_DECL_STRTOUL]: Declare strtoul.
42462         [! HAVE_DECL_STRTOULL]: Declare strtoull.
42463         Required for some AIX systems.  Reported by Christian Krackowizer.
42464         [TESTING] (main): New function.
42465
42466         1997-10-17  Eli Zaretskii  <eliz@is.elta.co.il>
42467         * lib/dirname.c (dir_name): Support for DOS-style file names with drive
42468         letters.
42469
42470         * lib/quotearg.c [HAVE_WCTYPE_H]: Include <wctype.h> for decl of
42471         iswprint.
42472
42473         * lib/strverscmp.c (ISDIGIT): Define.
42474         (strverscmp): Use ISDIGIT, not isdigit.
42475
42476 2000-01-19  Jim Meyering  <meyering@lucent.com>
42477
42478         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Include <sys/time.h>, too.
42479         Use AC_HEADER_TIME.  Volker Borchert reported that OpenBSD-2.3/sparc
42480         defines `struct timespec' in <sys/time.h>
42481
42482         * m4/c-bs-a.m4: Remove uses of changequote altogether.
42483         Thanks to Akim for explaining.
42484
42485 2000-01-17  Paul Eggert  <eggert@twinsun.com>
42486
42487         * lib/nanosleep.c (nanosleep):
42488         Don't use SA_INTERRUPT to decide whether to call sigaction, as
42489         POSIX.1 doesn't require SA_INTERRUPT and some systems
42490         (e.g. Solaris 7) don't define it.  Use SA_NOCLDSTOP instead;
42491         it's been part of POSIX.1 since day 1 (in 1988).
42492
42493 2000-01-17  Jim Meyering  <meyering@lucent.com>
42494
42495         * lib/interlock: Remove unused file.  Reported by François Pinard.
42496
42497 2000-01-16  Paul Eggert  <eggert@twinsun.com>
42498
42499         * lib/quotearg.c (quotearg_buffer_restyled): Do not quote
42500         alert, backslash, formfeed, and vertical tab unnecessarily in
42501         shell quoting style.
42502
42503 2000-01-16  Jim Meyering  <meyering@lucent.com>
42504
42505         * m4/jm-macros.m4: Require jm_FUNC_GROUP_MEMBER, jm_FUNC_PUTENV,
42506         AM_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, jm_FUNC_MKTIME,
42507         jm_FUNC_GETGROUPS AC_FUNC_VPRINTF, AC_FUNC_ALLOCA,
42508         AM_FUNC_GETLOADAVG, and jm_SYS_PROC_UPTIME.
42509
42510 2000-01-16  Jim Meyering  <meyering@lucent.com>
42511
42512         * m4/c-bs-a.m4: Use `changequote(<<,>>)', rather than `changequote(, )'
42513         because the latter didn't work.
42514
42515 2000-01-15  Jim Meyering  <meyering@lucent.com>
42516
42517         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add gethostname and getusershell.
42518         (AC_REPLACE_FUNCS): Add memcpy and memset.
42519         Add these, too: stime strcspn stpcpy strstr strtol strtoul.
42520         Add strpbrk.
42521         Add these: euidaccess memcmp mkdir rmdir rpmatch strndup strverscmp.
42522
42523 2000-01-12  Jim Meyering  <meyering@lucent.com>
42524
42525         * m4/prereq.m4 (jm_PREREQ_CANON_HOST): New macro.
42526         (jm_PREREQ): Use it.
42527         (jm_PREREQ_READUTMP): New macro.
42528         (jm_PREREQ): Use it.
42529
42530 2000-01-11  Paul Eggert  <eggert@twinsun.com>
42531
42532         Quote multibyte characters correctly.
42533         * m4/c-bs-a.m4: New file.
42534         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): New macro.
42535         (jm_PREREQ): Use it.
42536
42537 2000-01-11  Paul Eggert  <eggert@twinsun.com>
42538
42539         * m4/uintmax_t.m4: Port to autoconf 2.13.
42540
42541 2000-01-08  Jim Meyering  <meyering@ascend.com>
42542
42543         * m4/strerror_r.m4 (jm_FUNC_STRERROR_R): New file/macro.
42544         * m4/jm-macros.m4 (jm_FUNC_STRERROR_R): Require it.
42545
42546 2000-01-04  Jim Meyering  <meyering@ascend.com>
42547
42548         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename from
42549         jm_STRUCT_DIRENT_D_TYPE.
42550         * m4/d-ino.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_INO): Rename from
42551         jm_STRUCT_DIRENT_D_INO.
42552         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Rename from
42553         jm_STRUCT_UTIMBUF.
42554         * m4/jm-macros.m4: Reflect s/jm_STRUCT_/jm_CHECK_TYPE_STRUCT_/
42555         renamings.
42556         * m4/utime.m4: Likewise.
42557
42558         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): New file, macro.
42559         * m4/jm-macros.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): Require it.
42560
42561 2000-01-03  Paul Eggert  <eggert@twinsun.com>
42562
42563         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Search for nanosleep in -lrt
42564         (for Solaris 7) and in -lposix4 (for Solaris 2.5.1).
42565
42566 2000-01-02  Jim Meyering  <meyering@ascend.com>
42567
42568         * m4/search-libs.m4: Escape `$' in $3 of dnl comment.  I no longer
42569         remember if this is necessary.
42570
42571 1999-12-26  Jim Meyering  <meyering@ascend.com>
42572
42573         * m4/jm-macros.m4: Use it here.
42574         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): New file/macro.
42575
42576 1999-12-23  Jim Meyering  <meyering@ascend.com>
42577
42578         * m4/jm-macros.m4: Check for clock_gettime (moved from
42579         fileutils/configure.in)
42580         Check for gettimeofday.
42581
42582 1999-12-20  Jim Meyering  <meyering@ascend.com>
42583
42584         * m4/strftime.m4: Remove kludge, now that I'm using the fixed
42585         autoconf-2.14a-1999-12-20.
42586
42587 1999-12-19  Jim Meyering  <meyering@ascend.com>
42588
42589         * m4/lstat-slash.m4: New file.
42590         * m4/jm-macros.m4: Use the new macro:
42591         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
42592
42593 1999-12-07  Jim Meyering  <meyering@ascend.com>
42594
42595         * m4/perl.m4: Require that File::Compare be available, too.
42596         Too many systems seem to lack it.
42597
42598         * m4/strftime.m4: Add checks for most of the cpp macros tested in
42599         GNU's strftime.c.  Prompted by a patch from Paul Eggert.
42600
42601 1999-11-18  Paul Eggert  <eggert@twinsun.com>
42602
42603         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around a
42604         problem with the QNX 4.25 shell, which doesn't propagate exit
42605         status of failed commands inside shell assignments.
42606
42607 1999-11-17  Jim Meyering  <meyering@ascend.com>
42608
42609         * m4/gettext.m4: Use new AC_CONFIG_LINKS in place of AC_LINK_FILES.
42610
42611 1999-11-07  Jim Meyering  <meyering@ascend.com>
42612
42613         * m4/getloadavg.m4: Add `, 1, [FIXME]' to each use of AC_DEFINE.
42614
42615 1999-11-06  Jim Meyering  <meyering@ascend.com>
42616
42617         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): New file/macro.
42618         * m4/jm-macros.m4 (jm_MACROS): Use it here.
42619
42620 1999-11-05  Jim Meyering  <meyering@ascend.com>
42621
42622         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Move some tests from
42623         configure.in of textutils, fileutils, and sh-utils into this one
42624         (shared between those packages) file.
42625         Use `AC_CHECK_MEMBERS((struct stat.st_blksize))' instead of deprecated
42626         AC_STRUCT_ST_BLKSIZE.
42627
42628 1999-11-03  Jim Meyering  <meyering@ascend.com>
42629
42630         * m4/ssize_t.m4: Remove file.  No longer needed since the new version
42631         of AC_CHECK_TYPE checks includes unistd.h.
42632         * m4/jm-macros.m4: Use straight `AC_CHECK_TYPE(ssize_t, int)'.
42633         Suggestion from Akim Demaille.
42634
42635 1999-10-30  Jim Meyering  <meyering@ascend.com>
42636
42637         * m4/uintmax_t.m4: Require 2.14a.  Remove backslash before backtick in
42638         m4-quoted string.
42639         * m4/ls-mntd-fs.m4: Likewise.
42640         * m4/jm-macros.m4: Likewise.  Also, use AC_TYPE_SSIZE_T instead
42641         * m4/jm-winsz1.m4: Likewise.
42642
42643         * m4/const.m4: Remove file, since the fix made it into the experimental
42644         version of autoconf.
42645         * m4/mktime.m4: Likewise.
42646
42647         * m4/check-type.m4: Remove file, now that the latest version of
42648         AC_CHECK_TYPE takes a third arg to specify additional #includes.
42649
42650         * m4/ssize_t.m4: New file, requires experimental version of autoconf.
42651         * m4/jm-macros.m4: Use new AC_TYPE_SSIZE_T instead of my hacked
42652         AC_CHECK_TYPE.
42653
42654 1999-10-04  Jim Meyering  <meyering@ascend.com>
42655
42656         * m4/jm-macros.m4: Don't require autoconf-2.14.1.
42657
42658 1999-09-22  Paul Eggert  <eggert@twinsun.com>
42659
42660         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around GCC
42661         2.95.1 bug with HP-UX 10.20.
42662
42663 1999-09-17  Jim Meyering  <meyering@ascend.com>
42664
42665         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add strdup.
42666         Paul Nevai reported a link failure on a NeXT CUBE with NeXTSTEP 3.3
42667         due to missing strdup (against sh-utils-2.0).
42668
42669 1999-08-29  Jim Meyering  <meyering@ascend.com>
42670
42671         * m4/jm-macros.m4: Require jm_BISON.
42672         * m4/bison.m4: New file.
42673
42674 1999-08-17  Paul Eggert  <eggert@twinsun.com>
42675
42676         * m4/largefile.m4 (AC_SYS_LARGEFILE): Fix typo: missing comma
42677         in value for _FILE_OFFSET_BITS, which broke ports to HP-UX 10.20.
42678
42679 1999-08-05  Jim Meyering  <meyering@ascend.com>
42680
42681         * m4/getline.m4: Rename test file from conftestdata to conftest.data
42682         to avoid conflicts with `conftest' on 8+3 filesystems.
42683         Suggestion from Eli Zaretskii.
42684
42685 1999-08-04  Jim Meyering  <meyering@ascend.com>
42686
42687         * m4/jm-macros.m4: Move a 4-line block of code from the configure.in of
42688         fileutils and sh-utils (textutils's getline test was inadequate).
42689         (AM_FUNC_GETLINE): Run this test.
42690         (AC_CHECK_FUNCS): Check for getdelim.
42691         Reported by Bob Proulx.
42692
42693 1999-08-02  Jim Meyering  <meyering@ascend.com>
42694
42695         * m4/jm-macros.m4: Add a comment.
42696
42697 1999-08-01  Paul Eggert  <eggert@twinsun.com>
42698
42699         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check whether
42700         <inttypes.h> defines strtoumax as a macro (and not as a
42701         function).
42702
42703 1999-08-01  Paul Eggert  <eggert@twinsun.com>
42704
42705         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Make sure
42706         that we can shift, multiply and divide unsigned long long
42707         values; Ultrix cc can't do it.
42708
42709 1999-08-01  Paul Eggert  <eggert@twinsun.com>
42710
42711         * m4/mktime.m4: New file, which is a preview of what should appear
42712         in the next public autoconf release.
42713
42714 1999-08-01  Paul Eggert  <eggert@twinsun.com>
42715
42716         * m4/lfs.m4: Remove this file.
42717         * m4/largefile.m4: New file.  It contains the old contents of
42718         lfs.m4, except that all names with prefix AC_LFS have been
42719         changed to use the prefix AC_SYS_LARGEFILE instead, to be
42720         compatible with future autoconf versions.  Also, some minor m4
42721         quoting problems have been fixed.
42722
42723 1999-08-01  Paul Eggert  <eggert@twinsun.com>
42724
42725         * m4/gettext.m4 (AM_WITH_NLS): Remove unnecessary lines.
42726         Fix typo: $nls_cv_header_intl was misspelled as $nsl_cv_header_intl.
42727         (AM_GNU_GETTEXT): Fix problem with brackets and m4 quoting,
42728         and simplify the shell code.
42729
42730 1999-08-01  Jim Meyering  <meyering@ascend.com>
42731
42732         * m4/mktime.m4 (AC_FUNC_MKTIME): Undefine to avoid syntax errors from
42733         m4.
42734
42735 1999-07-20  Jim Meyering  <meyering@ascend.com>
42736
42737         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memmove.
42738
42739 1999-07-15  Jim Meyering  <meyering@ascend.com>
42740
42741         * m4/jm-macros.m4 (AC_CHECK_FUNCS): Check for getpagesize.
42742
42743 1999-05-22  Jim Meyering  <meyering@ascend.com>
42744
42745         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memchr.
42746
42747 1999-05-20  Jim Meyering  <meyering@ascend.com>
42748
42749         * m4/search-libs.m4 [AC_SEARCH_LIBS]: Quote name in undefine.
42750         Add a colon after each `then' in case $4 is empty.
42751
42752 1999-05-16  Jim Meyering  <meyering@ascend.com>
42753
42754         * m4/search-libs.m4: New file to override autoconf's AC_SEARCH_LIBS.
42755
42756 1999-05-10  Jim Meyering  <meyering@ascend.com>
42757
42758         * m4/jm-mktime.m4: Reflect renaming: AM_FUNC_MKTIME -> AC_FUNC_MKTIME.
42759
42760         * m4/jm-macros.m4: Require 2.14.1, since we use newly-renamed
42761         AC_FUNC_MKTIME.
42762
42763 1999-05-10  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
42764
42765         * m4/jm-mktime.m4, putenv.m4: Fix typos in config.h comments.
42766
42767 1999-05-04  Paul Eggert  <eggert@twinsun.com>
42768
42769         * m4/lfs.m4 (AC_LFS): -n32, -o32, and -n64 should be in CFLAGS,
42770         not CPPFLAGS, so that linking works correctly in IRIX.
42771
42772 1999-04-30  Paul Eggert  <eggert@twinsun.com>
42773
42774         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add dup2.
42775
42776 1999-04-20  Paul Eggert  <eggert@twinsun.com>
42777
42778         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Move unsigned long
42779         long check into new jm_AC_TYPE_UNSIGNED_LONG_LONG macro.
42780         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require
42781         jm_AC_TYPE_UNSIGNED_LONG_LONG.
42782         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): New file/macro.
42783
42784         * m4/lfs.m4: Port to AIX and HP-UX.  Support cross-compilation.
42785
42786 1999-04-20  Jim Meyering  <meyering@ascend.com>
42787
42788         * m4/xstrtoumax.m4: Require jm_AC_TYPE_UNSIGNED_LONG_LONG.
42789         AC_REPLACE xstroull if necessary.  From Paul Eggert.
42790         (AC_CHECK_FUNCS): Remove strtoull, strtoumax, strtouq.
42791
42792 1999-04-18  Jim Meyering  <meyering@ascend.com>
42793
42794         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): New file/macro.
42795         * m4/jm-macros.m4: Use it.
42796
42797 1999-04-06  Jim Meyering  <meyering@ascend.com>
42798
42799         * m4/strftime.m4: Remove test for %f.
42800
42801 1999-03-29  Jim Meyering  <meyering@ascend.com>
42802
42803         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): New macro, contains the
42804         superset of the AC_TYPE_* checks in the textutils, fileutils,
42805         and sh-utils, plus AC_TYPE_PID_T.  Paul Eggert suggested adding
42806         AC_TYPE_PID_T.
42807
42808 1999-03-28  Jim Meyering  <meyering@ascend.com>
42809
42810         * m4/jm-macros.m4: Define GNU_PACKAGE here.
42811         Be sure to AC_SUBST it, once again, so that @GNU_PACKAGE@ is
42812         replaced e.g., in the *.sh files of the sh-utils.
42813
42814 1999-03-20  Jim Meyering  <meyering@ascend.com>
42815
42816         * m4/jm-macros.m4: s/jm_WITH_REGEX/jm_INCLUDED_REGEX/.
42817         * m4/regex.m4 (jm_INCLUDED_REGEX): Rename from jm_WITH_REGEX.
42818         Don't depend on AM_GLIBC.  Suggestions from Alain Magloire.
42819
42820 1999-03-19  Jim Meyering  <meyering@ascend.com>
42821
42822         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): New macro.
42823
42824 1999-03-12  Jim Meyering  <meyering@ascend.com>
42825
42826         * m4/jm-macros.m4: Use AC_FUNC_SETVBUF_REVERSED.
42827
42828 1999-03-07  Jim Meyering  <meyering@ascend.com>
42829
42830         * m4/jm-glibc-io.m4: Use only those *_unlocked macros that are
42831         declared.
42832
42833 1999-02-17  Jim Meyering  <meyering@ascend.com>
42834
42835         * m4/gettext.m4 (AM_GNU_GETTEXT): Do `changequote' around use of
42836         brackets in macro definition.  From Eli Zaretskii and Alain Magloire.
42837
42838 1999-02-07  Jim Meyering  <meyering@ascend.com>
42839
42840         * m4/group-member.m4: New file -- extracted from sh-utils'
42841         configure.in.
42842
42843         1999-02-05  Eli Zaretskii  <eliz@is.elta.co.il>
42844         * m4/gettext.m4: Support DOS-style d:/foo/bar absolute file names.
42845
42846 1999-02-06  Jim Meyering  <meyering@ascend.com>
42847
42848         * m4/chown.m4: Use `AC_SUBST(LIBOBJS)' since we set LIBOBJS.
42849         * m4/fnmatch.m4: Likewise.
42850         * m4/getgroups.m4: Likewise.
42851         * m4/lstat.m4: Likewise.
42852         * m4/malloc.m4: Likewise.
42853         * m4/putenv.m4: Likewise.
42854         * m4/realloc.m4: Likewise.
42855         * m4/regex.m4: Likewise.
42856         * m4/stat.m4: Likewise.
42857         * m4/strftime.m4: Likewise.
42858         Suggestion from Alain Magloire.
42859
42860         * m4/chown.m4: Use `.$ac_objext', not `.o'.
42861         * m4/fnmatch.m4: Likewise.
42862         * m4/getgroups.m4: Likewise.
42863         * m4/getline.m4: Likewise.
42864         * m4/lstat.m4: Likewise.
42865         * m4/malloc.m4: Likewise.
42866         * m4/memcmp.m4: Likewise.
42867         * m4/putenv.m4: Likewise.
42868         * m4/realloc.m4: Likewise.
42869         * m4/regex.m4: Likewise.
42870         * m4/stat.m4: Likewise.
42871         * m4/strftime.m4: Likewise.
42872         Suggestion from Alain Magloire.
42873
42874         * m4/jm-macros.m4: Actually invoke jm_WITH_REGEX now that it requires
42875         an argument.
42876
42877         * m4/regex.m4: Add a run-time Test for proper operation of
42878         re_compile_pattern.
42879
42880 1999-01-31  Jim Meyering  <meyering@ascend.com>
42881
42882         * m4/getloadavg.m4: Check for locale.h and the function, setlocale.
42883
42884 1999-01-30  Jim Meyering  <meyering@ascend.com>
42885
42886         * m4/check-type.m4: Use 3-arg form of AC_DEFINE.
42887
42888         * m4/jm-mktime.m4: Make this a wrapper around the official
42889         AM_FUNC_MKTIME rather than my private copy, now that the official one
42890         is up to date.
42891         * m4/mktime.m4: Remove file.
42892
42893         * m4/getloadavg.m4: Use 3-arg form of AC_DEFINE.
42894         * m4/uptime.m4: Likewise.
42895         * m4/uintmax_t.m4: Likewise.
42896
42897 1999-01-28  Jim Meyering  <meyering@ascend.com>
42898
42899         * m4/jm-macros.m4: Use jm_AFS.
42900         * m4/afs.m4: New file (from fileutils' configure.in).
42901
42902         * m4/assert.m4: Use the 3-argument forms of AC_DEFINE* macros.
42903         * m4/chown.m4: Likewise.
42904         * m4/d-ino.m4: Likewise.
42905         * m4/d-type.m4: Likewise.
42906         * m4/fnmatch.m4: Likewise.
42907         * m4/getgroups.m4: Likewise.
42908         * m4/gettext.m4: Likewise.
42909         * m4/jm-mktime.m4: Likewise.
42910         * m4/jm-winsz2.m4: Likewise.
42911         * m4/lcmessage.m4: Likewise.
42912         * m4/ls-mntd-fs.m4: Likewise.
42913         * m4/malloc.m4: Likewise.
42914         * m4/memcmp.m4: Likewise.
42915         * m4/putenv.m4: Likewise.
42916         * m4/realloc.m4: Likewise.
42917         * m4/st_mtim.m4: Likewise.
42918         * m4/strftime.m4: Likewise.
42919
42920 1999-01-16  Jim Meyering  <meyering@ascend.com>
42921
42922         * m4/jm-macros.m4 (ARGMATCH_DIE): Define.
42923         (ARGMATCH_DIE_DECL): Define.
42924
42925 1999-01-12  Jim Meyering  <meyering@ascend.com>
42926
42927         * m4/Makefile.am.in: Rewrite to avoid using fmt.
42928         Reported by Lars Hecking.
42929
42930 1999-01-10  Jim Meyering  <meyering@ascend.com>
42931
42932         * m4/fstypename.m4: Use the new 3-arg form of AC_DEFINE instead of my
42933         gross kludge.
42934         * m4/inttypes_h.m4: Likewise.
42935         * m4/lstat.m4: Likewise.
42936         * m4/malloc.m4: Likewise.
42937         * m4/readdir.m4: Likewise.
42938         * m4/realloc.m4: Likewise.
42939         * m4/st_dm_mode.m4: Likewise.
42940         * m4/stat.m4: Likewise.
42941         * m4/utimbuf.m4: Likewise.
42942         * m4/utimes.m4: Likewise.
42943
42944         * m4/check-decl.m4: Use the new 3-arg form of AC_DEFINE instead of the
42945         AC_CHECK_FUNCS hack.  Now, it's still a hack, but at least the
42946         comments in config.h.in are meaningful.
42947
42948         * m4/jm-macros.m4: Require autoconf-2.13 here.
42949
42950         * m4/regex.m4: By default, don't use the included regex.c on systems
42951         with glibc 2.  Suggestion from Uli Drepper.
42952
42953 1999-01-02  Jim Meyering  <meyering@ascend.com>
42954
42955         * m4/jm-macros.m4: Replace strcasecmp and strncasecmp.
42956
42957 1998-12-18  Jim Meyering  <meyering@ascend.com>
42958
42959         * m4/Makefile.am.in (Makefile.am): Simplify rule.
42960         Based on a suggestion from Lars Hecking.
42961
42962 1998-11-16  Paul Eggert  <eggert@twinsun.com>
42963
42964         * m4/lfs.m4 (AC_LFS): Add support for HP-UX 10.20 and HP-UX 11.
42965
42966 1998-11-16  Jim Meyering  <meyering@ascend.com>
42967
42968         * m4/lfs.m4: Double-quote the `uname...` expression.
42969
42970 1998-11-14  Jim Meyering  <meyering@ascend.com>
42971
42972         * m4/lstat.m4: Correct comment.  POSIX does not permit it to succeed.
42973         * m4/stat.m4: Likewise.
42974
42975 1998-11-03  Jim Meyering  <meyering@ascend.com>
42976
42977         * m4/stat.m4: Rewrite to set HAVE_STAT_EMPTY_STRING_BUG.
42978         * m4/lstat.m4: Rewrite to set HAVE_LSTAT_EMPTY_STRING_BUG.
42979
42980 1998-10-18  Jim Meyering  <meyering@ascend.com>
42981
42982         * m4/check-decl.m4 (jm_CHECK_DECL_LOCALTIME_R): Remove macro.
42983
42984 1998-10-17  Jim Meyering  <meyering@ascend.com>
42985
42986         * m4/decl.m4 (jm_CHECK_DECLARATION): Don't hard-code which headers to
42987         include, though we still hard-code the `require'-like AC_CHECK_HEADERS
42988         calls for those previously hard-coded headers.  Instead, take a new
42989         parameter.
42990         (jm_CHECK_DECLARATIONS): Reflect interface change.
42991         * m4/check-decl.m4 (jm_CHECK_DECLS): Likewise.
42992         (jm_CHECK_DECL_LOCALTIME_R): New macro.
42993
42994         * m4/mktime.m4: Test for spring-forward gap before long-running test.
42995
42996 1998-10-14  Jim Meyering  <meyering@ascend.com>
42997
42998         * m4/mktime.m4: Use the more portable "TZ=PST8PDT,M4.1.0,M10.5.0"
42999         instead of "TZ=America/Vancouver".  From Paul Eggert.
43000
43001 1998-10-11  Jim Meyering  <meyering@ascend.com>
43002
43003         * m4/mktime.m4 (jm_AM_FUNC_MKTIME): New file and macro.
43004         This adds a test for a recently added compatibility fix for mktime.c.
43005         * m4/jm-mktime.m4: Require jm_AM_FUNC_MKTIME, not AM_FUNC_MKTIME.
43006
43007 1998-09-27  Jim Meyering  <meyering@ascend.com>
43008
43009         * m4/jm-macros.m4 (jm_MACROS): Require jm_FUNC_FNMATCH.
43010
43011         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): New file/macro.  Extracted from
43012         ../configure.in, including a change from Gordon Matzigkeit to allow
43013         cross-compiling for the Hurd.
43014
43015         * m4/glibc.m4: New file/macro to test for the GNU C Library
43016         versions 1 and 2.  From Gordon Matzigkeit.
43017         Indent.
43018
43019 1998-09-21  Jim Meyering  <meyering@ascend.com>
43020
43021         * m4/chown.m4: Declare locals: before, after.  From Andries Brouwer.
43022
43023 1998-08-18  Paul Eggert  <eggert@twinsun.com>
43024
43025         Port nanosecond-resolution times to UnixWare 2.1.2 and
43026         pedantic Solaris 2.6.
43027
43028         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC): Renamed from
43029         AC_STRUCT_ST_MTIM.
43030         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC):
43031         Generate name of ns member, instead of just 1 or undef.
43032         Allow for UnixWare 2.1.2 and Solaris 2.6 if in pedantic mode.
43033
43034 1998-08-15  Jim Meyering  <meyering@ascend.com>
43035
43036         * m4/ssize_t.m4 (jm_TYPE_SSIZE_T): Remove file.
43037         * m4/check-type.m4: New file.  Replacement for AC_CHECK_TYPE.
43038         * m4/jm-macros.m4: Use the new AC_CHECK_TYPE(ssize_t, int)
43039         instead of jm_TYPE_SSIZE_T.
43040
43041 1998-08-12  Jim Meyering  <meyering@ascend.com>
43042
43043         * m4/st_dm_mode.m4: New file.  From Johan Danielsson.
43044
43045 1998-08-02  Jim Meyering  <meyering@ascend.com>
43046
43047         * m4/st_mtim.m4: Use hack to avoid having to put #undef HAVE_ST_MTIM
43048         in acconfig.h manually.
43049
43050 1998-07-31  Paul Eggert  <eggert@twinsun.com>
43051
43052         * m4/st_mtim.m4: New file.
43053
43054 1998-07-28  Jim Meyering  <meyering@ascend.com>
43055
43056         * m4/utimes.m4: Undef stat.
43057
43058 1998-07-25  Jim Meyering  <meyering@ascend.com>
43059
43060         * m4/utime.m4 (jm_FUNC_UTIME): New file and macro.
43061         * m4/utimes.m4 (jm_FUNC_UTIMES_NULL): New file and macro.
43062
43063 1998-07-09  Manfred Hollstein  <manfred@s-direktnet.de>
43064
43065         * m4/chown.m4 (jm_FUNC_CHOWN): Add a check to verify that the
43066         uid and gid actually remain unchanged.
43067
43068 1998-07-07  Jim Meyering  <meyering@ascend.com>
43069
43070         * m4/jm-glibc-io.m4: Remove fclose_unlocked.
43071
43072 1998-07-04  Jim Meyering  <meyering@ascend.com>
43073
43074         * m4/regex.m4: Use syscmd, ifelse, and sysval.  Mainly as an exercise
43075         to prove that this macro can be used in packages without regex.c.
43076
43077 1998-07-04  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
43078
43079         * m4/gettext.m4 (AM_WITH_NLS): Remove intl/libintl.h if <libintl.h>
43080         is to be used.
43081
43082 1998-07-03  Jim Meyering  <meyering@ascend.com>
43083
43084         * m4/gettext.m4: Add -lintl if it's found to be necessary.
43085
43086         * m4/gettext.m4: New file -- from gettext-0.10.35.
43087         * m4/lcmessage.m4: Likewise.
43088         * m4/progtest.m4: Likewise.
43089
43090         * m4/regex.m4 (jm_WITH_REGEX): New file and macro.
43091         * m4/jm-macros.m4: Require the new macro.
43092
43093 1998-06-29  Jim Meyering  <meyering@ascend.com>
43094
43095         * m4/fstypename.m4: Include sys/param.h.  NetBSD 1.3.1 requires this
43096         for the definition of NGROUPS (used in a system header included
43097         by sys/mount.h).
43098
43099 1998-06-28  Jim Meyering  <meyering@ascend.com>
43100
43101         * m4/ls-mntd-fs.m4: New file.
43102         * m4/fstypename.m4: New file.
43103
43104         * m4/jm-macros.m4: Require the new macro.
43105         * m4/jm-glibc-io.m4: New file.
43106
43107 1998-05-19  Jim Meyering  <meyering@ascend.com>
43108
43109         * m4/jm-macros.m4: Add jm_FUNC_LCHOWN.
43110         * m4/lchown.m4: New file.
43111
43112         * m4/Makefile.am.in: New file.
43113         * m4/Makefile.am (Makefile.am): Depend on Makefile.am.in.
43114
43115 1998-05-14  Jim Meyering  <meyering@ascend.com>
43116
43117         * m4/Makefile.am (EXTRA_DIST): Add them.
43118         * m4/jm-macros.m4: New file.
43119         * m4/utimbuf.m4: New file.
43120
43121 1998-05-12  Jim Meyering  <meyering@ascend.com>
43122
43123         * m4/Makefile.am (EXTRA_DIST): Add isc-posix.m4.
43124
43125 1998-05-11  Jim Meyering  <meyering@ascend.com>
43126
43127         * m4/isc-posix.m4: New file.
43128
43129 1998-05-10  Jim Meyering  <meyering@ascend.com>
43130
43131         * m4/jm-mktime.m4: Use AM_FUNC_MKTIME, now that it's up to date.
43132
43133 1998-05-09  Jim Meyering  <meyering@ascend.com>
43134
43135         * m4/Makefile.am (EXTRA_DIST): Add ssize_t.m4.
43136         (EXTRA_DIST): Remove mktime.m4, now that the new version is included
43137         with automake.
43138
43139         * m4/ssize_t.m4: New file.
43140         * m4/mktime.m4: Remove file -- the new automake has this now.
43141
43142 1998-04-26  Jim Meyering  <meyering@ascend.com>
43143
43144         * m4/assert.m4: New file.
43145         * m4/Makefile.am (EXTRA_DIST): Add assert.m4.
43146
43147 1998-04-05  Jim Meyering  <meyering@ascend.com>
43148
43149         * m4/prereq.m4 (jm_PREREQ_REGEX): New macro.
43150         (jm_PREREQ): Use it here.
43151
43152 1998-03-23  Jim Meyering  <meyering@eng.ascend.com>
43153
43154         * m4/inttypes_h.m4: Kludges so I don't have to add HAVE_INTTYPES_H
43155         in acconfig.h.
43156
43157 1998-03-15  Jim Meyering  <meyering@eng.ascend.com>
43158
43159         * m4/prereq.m4: New file.
43160         * m4/error.m4: New file.
43161         * m4/Makefile.am (EXTRA_DIST): Add error.m4 and prereq.m4.
43162
43163 1998-02-07  Jim Meyering  <meyering@eng.ascend.com>
43164
43165         * m4/getline.m4: Don't set am_cv_func_working_getline before the
43166         cache-check for the same variable -- that defeated the purpose of
43167         the test; the test program was never run.  This was a problem only
43168         on systems with losing getline functions -- HP-UX 10.20 is one.
43169         Reported by Bjorn Helgaas.
43170
43171 1998-02-06  Jim Meyering  <meyering@eng.ascend.com>
43172
43173         * m4/Makefile.am (EXTRA_DIST): Add perl.m4.
43174
43175 1998-01-10  Jim Meyering  <meyering@na-net.ornl.gov>
43176
43177         * m4/Makefile.am (EXTRA_DIST): Add const.m4.
43178
43179         * m4/const.m4: New file.  Use an initializer in this declaration
43180         typedef int charset[2]; const charset x;
43181         Reported by Bob Glickstein.
43182
43183 1997-12-21  Jim Meyering  <meyering@na-net.ornl.gov>
43184
43185         * m4/chown.m4: Fix reversed types on -1 args to chown.
43186         From Kaveh Ghazi.
43187
43188 1997-12-14  Jim Meyering  <meyering@na-net.ornl.gov>
43189
43190         * m4/check-decl.m4: s/DECLARATION_/DECL_/g.
43191         Add lseek and memchr.
43192
43193         * m4/decl.m4: s/HAVE_DECLARATION_/HAVE_DECL_/g.
43194         T.E.Dickey <dickey@clark.net> said that some older preprocessors
43195         have a 20-character limit on names.
43196
43197 1997-11-30  Jim Meyering  <meyering@na-net.ornl.gov>
43198
43199         * m4/inttypes_h.m4: New file.
43200         * m4/uintmax_t.m4: New file.
43201         * m4/Makefile.am (EXTRA_DIST): Add inttypes_h.m4 and uintmax_t.m4.
43202
43203
43204         -----
43205
43206         Local Variables:
43207         coding: utf-8
43208         End:
43209
43210         Copyright (C) 1997-2008 Free Software Foundation, Inc.
43211
43212         Copying and distribution of this file, with or without
43213         modification, are permitted provided the copyright notice
43214         and this notice are preserved.